A Survey of IEC 61131-3 Programming Languages and Soft PLC Implementation Technologies

Authors

  • Zhenhao Gu University of Shanghai for Science and Technology, Shanghai 200093, China

DOI:

https://doi.org/10.54097/3808tz64

Keywords:

IEC 61131-3, Soft PLC, Programming language, Compilation, Formal verification, Real-time system, Runtime, Industrial control software

Abstract

Programmable logic controllers (PLCs) are the core control devices of industrial automation systems. With the growing capability of general-purpose computing platforms and the increasing demand for openness and intelligence in industrial control software, soft PLC technology, which reproduces PLC functions in software on general-purpose platforms, has attracted sustained attention from both academia and industry. Taking the programming language system defined by IEC 61131-3 as the main thread, this paper systematically surveys the state of the art of soft PLC implementation technologies. First, the five standard programming languages, the differences among their execution models, and the latest evolution introduced by Edition 4 (2025) of the standard are reviewed. Second, following the two technical routes of compilation and interpretation, the evolution of language transformation research is summarized in terms of structural representation, scope of semantic preservation, and verification means; the program verification toolchain formed by K-ST formal semantics, ESBMC-PLC model checking, and the PLCverif platform is analyzed. Furthermore, the open-source ecosystems of Beremiz and OpenPLC, the commercial system landscape, and real-time implementation techniques are reviewed, with attention to emerging directions including the mainline inclusion of real-time Linux, virtualized deployment, integration with time-sensitive networking (TSN), and large language model assisted programming. Finally, the major technical challenges and development trends are outlined. The survey shows that semantic-preserving language transformation and real-time determinism of the runtime are the two core problems of soft PLC technology, that verification practice is shifting from test-based comparison toward formal verification, and that virtualization and intelligence are becoming key directions of the next stage of soft PLC evolution.

Downloads

Download data is not yet available.

References

[1] Gaffurini, M., Bellagente, P., Depari, A., Ferrari, P., Flammini, A., & Sisinni, E. (2024). Virtual PLC in industrial edge platform: Performance evaluation of supervision and control communication. IEEE Transactions on Instrumentation and Measurement, 73, 1-10. https://doi.org/10.1109/TIM.2024.3370746

[2] Müller, J., Giani, M., Deubert, D., & Sauer, A. (2024). Virtualization in industrial production: A survey focusing on virtual and virtualized industrial controls. In 2024 IEEE 29th International Conference on Emerging Technologies and Factory Automation (ETFA) (pp. 1-7). IEEE. https://doi.org/10.1109/ETFA61755.2024.10710668

[3] International Electrotechnical Commission. (2013). Programmable controllers – Part 3: Programming languages (IEC 61131-3:2013, Edition 3.0). IEC.

[4] International Electrotechnical Commission. (2025). Programmable controllers – Part 3: Programming languages (IEC 61131-3:2025, Edition 4.0). IEC.

[5] Peng, Y., & He, Y. Q. (2009). IEC 61131-3 programming languages and application fundamentals [In Chinese]. China Machine Press.

[6] PLCopen. (2009). XML interchange format for IEC 61131-3 (Version 2.01). PLCopen Technical Committee 6.

[7] PLCopen. (n.d.). PLCopen Safety: Safety software specification. https://plcopen.org

[8] Shi, R., Zhou, L., & Yang, Z. Y. (2010). Research on a new conversion strategy from soft PLC ladder diagram to instruction list [In Chinese]. Computer Engineering and Applications, 46(18), 244-248.

[9] Huang, L. W., Liu, W., & Liu, Z. Q. (2009). Algorithm of transformation from PLC ladder diagram to structured text. In 2009 9th International Conference on Electronic Measurement & Instruments (ICEMI) (pp. 778-782). IEEE.

[10] Zhou, W. Q., He, T. N., & Chen, D. F. (2017). Ladder diagram to instruction list conversion algorithm based on multiway tree [In Chinese]. Computer Measurement and Control, 25(8), 191-194.

[11] Sun, D. Q., Yan, Y., & Wu, H. F. (2014). Data dependency analysis and parallel extraction of ladder diagram [In Chinese]. Computer Engineering, 40(2), 67-70, 76.

[12] Li, Z. C. (2021). ST language code generation and verification based on a soft PLC model [Master's thesis, East China Normal University] [In Chinese].

[13] Xie, L. N. (2024). Research on the conversion algorithm from ST language to C language [In Chinese]. Computer Programming Skills and Maintenance, (4), 35-37.

[14] Li, H. L. (2014). Design and implementation of an IL language compiler based on the IEC 61131-3 standard [Master's thesis, Xidian University] [In Chinese].

[15] Wang, K., Wang, J., Poskitt, C. M., Chen, L., & Xu, Z. (2023). K-ST: A formal executable semantics of the structured text language for PLCs. IEEE Transactions on Software Engineering, 49(10), 4796-4813. https://doi.org/10.1109/TSE.2023.3300762

[16] Dantas, P., Cordeiro, L., & Junior, W. (2026). ESBMC-PLC: Formal verification of IEC 61131-3 ladder diagram programs using SMT-based model checking. arXiv, arXiv:2606.15461. https://arxiv.org/abs/2606.15461

[17] Dantas, P., Cordeiro, L., & Junior, W. (2026). ESBMC-PLC+: A unified IEC 61131-3 formal verification framework as a PLCverif successor. arXiv, arXiv:2606.23870. https://arxiv.org/abs/2606.23870

[18] CERN. (n.d.). PLCverif: Open-source framework for the verification of PLC programs. https://github.com/cern-logs/PLCverif

[19] Sadolewski, J., & Trybus, B. (2022). Compiler and virtual machine of a multiplatform control environment. Bulletin of the Polish Academy of Sciences: Technical Sciences, 70(2), Article e140554. https://doi.org/10.24425/bpasts.2022.140554

[20] CODESYS. (n.d.). CODESYS: IEC 61131-3 development environment [Product documentation]. https://www.codesys.com

[21] Li, X., Chen, H. J., Zeng, K., Wang, Y., & Liu, Z. (2023). Design of runtime system software for programmable logic controllers [In Chinese]. Application of Microcontrollers and Embedded Systems, 23(7), 41-43, 75.

[22] Qiao, Z. G., Bu, L. W., Ye, Y., Zhang, H., & Li, W. (2025). Research and application of integrated embedded soft PLC [In Chinese]. Automation Application, 66(11).

[23] OSCAT. (n.d.). Open source community for automation technology. https://www.oscat.de

[24] Beremiz. (n.d.). Beremiz: Open source PLC IDE. https://github.com/beremiz/beremiz

[25] Liu, W. Y., Zhu, Z. H., Lyu, X. F., Wang, H., & Chen, L. (2022). Safety PLC software system for CNC systems based on PLCopen Safety [In Chinese]. Manufacturing Technology and Machine Tool, (4), 114-117.

[26] Alves, T. R., Buratto, M., Souza, F. M., & Rodrigues, T. V. (2014). OpenPLC: An open source alternative to automation. In 2014 IEEE Global Humanitarian Technology Conference (GHTC) (pp. 585-589). IEEE. https://doi.org/10.1109/GHTC.2014.6970342

[27] Alves, T., & Morris, T. (2018). OpenPLC: An IEC 61131-3 compliant open source industrial controller for cyber security research. Computers & Security, 78, 364-379. https://doi.org/10.1016/j.cose.2018.07.007

[28] Beckhoff Automation. (n.d.). TwinCAT/BSD: PC-based control platform [Product documentation]. https://www.beckhoff.com

[29] Larabel, M. (2024, September 20). Real-time "PREEMPT_RT" support merged for Linux 6.12. Phoronix. https://www.phoronix.com/news/Linux-6.12-PREEMPT-RT

[30] Perez, D. J., Waltl, J., Prenzel, L., & Kaiser, J. (2022). How real (time) are virtual PLCs? In 2022 IEEE 27th International Conference on Emerging Technologies and Factory Automation (ETFA) (pp. 1-8). IEEE.

[31] IoT Analytics. (2024, December 11). Virtual PLC and soft PLC market report 2024–2030. https://iot-analytics.com/virtual-plcs

[32] 5G-ACIA. (2021, May 4). Integration of 5G with time-sensitive networking for industrial communication [White paper]. https://5g-acia.org

[33] Liu, Z., Zeng, R., Wang, D., Zhang, Y., & Li, J. (2026). Agents4PLC: Automating closed-loop PLC code generation and verification in industrial control systems using LLM-based agents. IEEE Transactions on Software Engineering, 52(5), 1672-1687. https://doi.org/10.1109/TSE.2026.3667895

[34] Yang, D., Wu, A., Zhang, T., & Li, H. (2024). AutoPLC: Generating vendor-aware structured text for programmable logic controllers. arXiv, arXiv:2412.02410. https://arxiv.org/abs/2412.02410

Downloads

Published

19-10-2026

Issue

Section

Articles