An Evaluation of Erlang for Implementing Standby Redundancy in a Manufacturing Station Controller
Standby redundancy for controllers is used to improve the availability of many manufacturing systems. The software redundancy features offered by typical programmable logic controllers (PLCs) are reviewed. An equivalent Erlang-based standby redundancy solution is presented in this paper. Erlang is a functional programming language designed for the development of fault-tolerant soft real-time control systems. The Erlang software redundancy solution employs various features in Erlang (and its associated library, OTP) that greatly simplify achieving standby redundancy. This paper describes an Erlang and OTP approach that facilitates implementing standby controller redundancy at a software level for devices which do not provide such mechanisms at a hardware level, similar to that provided by typical PLCs.
KeywordsErlang Standby redundancy Manufacturing control PLC
Funding: The financial assistance of the National Research Foundation (NRF) towards this research (through funding a bursary, with reference number 103260, for the first author) is hereby acknowledged. Opinions expressed, and conclusions reached are those of the authors and are not necessarily to be attributed to the NRF.
- 1.Brettel, M., Friederichsen, N., Keller, M., Rosenberg, M.: How virtualization, decentralization and network building change the manufacturing landscape: an industry 4.0 perspective. Int. J. Mech. Ind. Sci. Eng. 8(1), 37–44 (2014)Google Scholar
- 3.Jazdi, N.: Cyber physical systems in the context of Industry 4.0. In: 2014 IEEE International Conference on Proceedings of Automation, Quality Testing and Robotics, Cluj-Napoca, IEEE Xplore Digital Library, pp. 1–4 (2014). https://doi.org/10.1109/aqtr.2014.6857843
- 4.Armstrong, J.: Erlang—a survey of the language and its industrial applications. In: Proceedings of INAP, vol. 96 (1996)Google Scholar
- 6.Academic and Historical Questions. http://erlang.org/faq/academic.html. Accessed 04 Sept 2017
- 8.“What is Erlang”. http://erlang.org/faq/introduction.html. Accessed 29 Aug 2017
- 10.National Instruments: Redundant system basic concepts (White Paper) (2008). http://www.ni.com/white-paper/6874/en/. Accessed 04 Sept 2017
- 11.Siemens: SIMATIC S7-300/S7-400 Software redundancy for SIMATIC S7 (2010). http://support.automation.siemens.com/WW/view/en/1137637. Accessed 14 July 2016
- 12.Erlang STDLIB 3.4.2, Ericsson AB. http://erlang.org/doc/apps/stdlib/stdlib.pdf. Accessed 6 Oct 2017
- 13.Erlang Kernel 5.4, Ericsson AB. http://erlang.org/doc/apps/kernel/kernel.pdf. Accessed 6 Oct 2017