Skip to main content
Log in

A Temporal Logic for Programmable Logic Controllers

  • Published:
Automatic Control and Computer Sciences Aims and scope Submit manuscript

Abstract—

We investigate the formal verification of the control software of critical systems, i.e., the verification of the compliance of the designed system with the requirements. The most important class of control software consists of programs for programmable logic controllers (PLCs). A special feature of PLC programs is the scan cycle: (1) the inputs are read, (2) the PLC states are changed, and (3) the outputs are written. Therefore, for formal verification of PLC programs, for example by model checking, it is necessary to be able to describe transition systems that take into account this specificity. In addition, it is required to determine properties of systems that model PLC programs, both with respect to transitions within the cycle as well as larger transitions in accordance with the semantics of the scan cycle. In this paper, we introduce a formal model of a PLC program as a system of hyperprocess transitions and the temporal cycle-LTL logic based on the LTL logic for formalizing the properties of the PLC. A special feature of the cycle-LTL logic is the ability to consider the properties of control systems in two ways: as an impact of the environment on the control system and as an impact of the control system on the environment. We define modifications of the standard temporal operators of the LTL logic for each of these cases, as well as for properties inside the scan cycle. Examples of requirements defined in our logic are considered. The translation of cycle-LTL formulas into LTL formulas is described and its correctness is proved. Thereby we demonstrate the possibility of reducing the problem of verification by model checking for the requirements defined in the cycle-LTL logic to the model checking problem for the requirements defined in the standard LTL logic.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1.

Similar content being viewed by others

Notes

  1. The environment is considered slow enough to count the time of the I/O phases and the execution of the control cycle as zero.

REFERENCES

  1. Anureev, I., Operational semantics of annotated Reflex programs, Model. Anal. Inf. Sist., 2019, vol. 26, no. 6, pp. 181–192.

    Article  MathSciNet  Google Scholar 

  2. Anureev, I., Garanina, N., Liakh, T., Rozov, A., and Zyubin, V., Towards safe cyber-physical systems: The Reflex language and its transformational semantics, IEEE International Siberian Conference on Control and Communications, IEEE, 2019, pp. 18–20.

  3. Brinksma, E. and Mader, A., Verification and optimization of a PLC control schedule, SPIN 2000 – SPIN Model Checking and Software Verification, Springer, 2000, pp. 73–92.

    MATH  Google Scholar 

  4. Gourcuff, V., de Smet, O., and Faure, J.-M., Improving large-sized PLC programs verification using abstractions, IFAC Proc. Vol., 2008, vol. 41, no. 2, pp. 5101–5106.

  5. Mader, A., A classification of PLC models and applications, in Discrete Event Systems, Springer, 2000, pp. 239–246.

    Google Scholar 

  6. Wan, H., Chen, G., Song, X., and Gu, M., Formalization and verification of PLC timers in Coq, Proc. of 33rd Annual IEEE International Computer Software and Applications Conference, IEEE, 2009, pp. 315–323.

  7. Yoo, J., Cha, S., and Jee, E., A verification framework for FBD based software in nuclear power plants, Proc. of 15th Asia-Pacific Software Engineering Conference, IEEE, 2008, pp. 385–392.

  8. Bulavskij, D., Zyubin, V., Karlson, N., Krivoruchko, V., and Mironov, V., An automated control system for a silicon single-crystal growth furnace, Optoelectron., Instrum. Data Process., 1996, vol. 32, no. 2, pp. 25–30.

    Google Scholar 

  9. Kovadlo, P.G., Lubkov, A., Bevzov, A., et al., Automation system for the large solar vacuum telescope, Optoelectron., Instrum. Data Process., 2016, vol. 52, pp. 187–195.

    Article  Google Scholar 

  10. Gupta, A., Kahlon, V., Qadeer, S., and Touili, T., Handbook of Model Checking, Springer Int. Publ., 2018, ch. 18, pp. 573–577.

    MATH  Google Scholar 

  11. Clarke, E.M., Henzinger, T.A., and Veith, H., Handbook of Model Checking, Springer Int. Publ., 2018, ch. 1, pp. 1–13.

    Book  Google Scholar 

  12. Dierks, H., PLC-automata: A new class of implementable real-time automata, in International AMAST Workshop on Aspects of Real-Time Systems and Concurrent and Distributed Software, Springer, 1997, vol. 1231, pp. 111–125.

  13. Ovatman, T., An overview of model checking practices on verification of PLC software, Software Syst. Model., 2016, vol. 4, no. 15, pp. 937–960.

    Article  Google Scholar 

  14. Kuzmin, E., Ryabukhin, D., and Sokolov, V.A., On the expressiveness of the approach to constructing PLC-programs by LTL-specification, Autom. Control Comput. Sci., 2016, vol. 7, no. 50, pp. 510–519.

    Article  Google Scholar 

  15. Zhang, M., Towards automated safety vetting of PLC code in real-world plants, IEEE Symposium on Security and Privacy, IEEE, 2019, pp. 522–538.

  16. Rajeev, A. and Henzinger, T., A really temporal logic, J. ACM, 1994, vol. 41, no. 1, pp. 181–203.

    Article  MathSciNet  Google Scholar 

  17. Xiong, J., A user-friendly verification approach for IEC 61131-3 PLC programs, Electronics, 2020, vol. 4, no. 9.

  18. Beckert, B., Regression verification for programmable logic controller software, International Conference on Formal Engineering Methods, Springer, 2015, vol. 9407.

  19. Ljungkrantz, O., An empirical study of control logic specifications for programmable logic controllers, Empirical Software Eng., 2014, vol. 3, no. 19, pp. 655–677.

    Article  Google Scholar 

  20. Ljungkrantz, O., Åkesson, K., Fabian, M., and Yuan, C., A formal specification language for PLC-based control logic, 8th IEEE International Conference on Industrial Informatics, IEEE, 2010, pp. 1067–1072.

  21. Maler, O. and Nickovic, D., Monitoring temporal properties of continuous signals, in Formal Techniques, Modelling and Analysis of Timed and Fault-Tolerant Systems, Springer, 2004, pp. 152–166.

    MATH  Google Scholar 

  22. Garanina, N., Anureev, I., Zyubin, V., Rozov, A., Liakh, T., and Gorlatch, S., Reasoning about programmable logic controllers, Syst. Inf., 2020, vol. 17, pp. 33–42.

    Google Scholar 

  23. Holzmann, G., The SPIN Model Checker: Primer and Reference Manual, Addison-Wesley Professional, 2003.

    Google Scholar 

Download references

Funding

This work has been funded by the state budget of the Russian Federation (project no. AAAA-A19-119120290056-0 of the Institute of Automation and Electrometry).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to N. O. Garanina.

Ethics declarations

The authors declare that they have no conflicts of interest.

Additional information

Translated by T. N. Sokolova

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Garanina, N.O., Anureev, I.S., Zyubin, V.E. et al. A Temporal Logic for Programmable Logic Controllers. Aut. Control Comp. Sci. 55, 763–775 (2021). https://doi.org/10.3103/S0146411621070038

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.3103/S0146411621070038

Keywords:

Navigation