Exception Handling in Programmable Controllers with Denotational Model
Jan Sadolewski, Bartosz Trybus
DOI: http://dx.doi.org/10.15439/2023F5651
Citation: Proceedings of the 18th Conference on Computer Science and Intelligence Systems, M. Ganzha, L. Maciaszek, M. Paprzycki, D. Ślęzak (eds). ACSIS, Vol. 35, pages 721–730 (2023)
Abstract. The paper introduces a customized approach to handle failures in IEC 61131-3 programmable controllers. The solution assumes the utilization of a virtual machine as a runtime environment to execute control code in an isolated manner. A formal model of the runtime is presented, employing denotational semantics. Subsequently, the model is expanded by incorporating new procedures that enable the handling of runtime exceptions using ST code constructs. This formal model serves as the foundation for implementing the exception infrastructure in the CPDev development environment. The research presented in the paper, driven by industry demands, aims to facilitate the development of more reliable and resilient control systems, capable of effectively dealing with failures.
References
- IEC 61131-3. Programmable Controllers. Part 3. Programming languages. International Standard: IEC, 2013.
- IEC 61499 — Function blocks. International Standard: IEC, 2015.
- M. Simros, M. Wollschlaeger, and S. Theurich, “Programming embedded devices in IEC 61131-languages with industrial PLC tools using PLCopen XML,” in Proceedings of the CONTROLO’2012 Portuguese Conference on Automatic Control, Funchal, Portugal, 2012. ISBN 9789729702532 pp. 51–56.
- T. Lindholm, F. Yellin, G. Bracha, and A. Buckley, The Java® Virtual Machine Specification. Oracle America, Inc., 2013. ISBN 9780133260441
- T. L. Thai and L. H., .NET Framework Essentials. O’Reilly Media, 2003. ISBN 9780596005054
- ECMA-335, Standard. Common Language Infrastructure (CLI). Geneva: Ecma, 2012.
- A. Blikle, “An experiment with denotational semantics,” SN Computer Science, vol. 15, no. 1, pp. 1–31, 2020. http://dx.doi.org/10.1007/s42979-019-0013-0
- D. Rzońca, J. Sadolewski, A. Stec, Z. Świder, B. Trybus, and L. Trybus, “Programming controllers in structured text language of IEC 61131-3 standard,” Journal of Applied Computer Science, vol. 16, no. 1, pp. 49–67, 2008.
- D. Rzońca, J. Sadolewski, A. Stec, Z. Świder, B. Trybus, and L. Trybus, “Open environment for programming small controllers according to IEC 61131-3 standard,” Scalable Computing: Practice and Experience, vol. Volume 10, no. 3, pp. 325–336, 2009.
- B. Trybus, “Development and Implementation of IEC 61131-3 Virtual Machine,” Theoretical and Applied Informatics, vol. 23, no. 1, pp. 21–35, 2011. http://dx.doi.org/10.2478/v10179-011-0002-z
- K. Cooper and L. Torczon, Engineering a Compiler. San Francisco: Morgan Kaufmann, 2022. ISBN 9780128154120
- K. Slonneger and B. L. Kurtz, Formal Syntax and Semantics of Programming Languages: A Laboratory-Based Approach. Addison-Wesley Publishing Company, Inc, 1995. ISBN 9780201656978
- D. Schmidt, Denotational Semantics: A Methodology for Language Development. Kansas State University, Manhattan: Department of Computing and Information Sciences, 1997.
- J. Sadolewski and B. Trybus, “Denotational model and implementation of scalable virtual machine in CPDev,” in Proceedings of the 17th Conference on Computer Science and Intelligence Systems, M. Ganzha, L. Maciaszek, M. Paprzycki, and D. Ślęzak, Eds., vol. 30, 2022. http://dx.doi.org/10.15439/2022F236 pp. 587–591.