RUS  ENG
Full version
JOURNALS // Modelirovanie i Analiz Informatsionnykh Sistem // Archive

Model. Anal. Inform. Sist., 2024 Volume 31, Number 1, Pages 32–53 (Mi mais814)

This article is cited in 1 paper

Theory of software

Model checking programs in process-oriented IEC 61131-3 Structured Text

N. O. Garanina, S. M. Staroletov, V. E. Zyubin, I. S. Anureev

Institute of Automation and Electrometry SB RAS, Novosibirsk, Russia

Abstract: The process-oriented programming is a paradigm based on the process concept where each process is a concurrent finite state machine inside. The paradigm is intended for PLC (programmable logic controllers) developers to write Industry 4.0-enabled software. The poST language is a promising process-oriented extension of the IEC 61131-3 Structured Text (ST) language designed to provide a conceptual consistency of the PLC source code with technological description of the process under control. This language combines the advantages of FSM-based programming with the standard syntax of the ST language. We propose transformational semantics of poST providing rules for translation of poST language statements to Promela — the input language of the SPIN model checker. Following these semantic rules, our Xtext-based translator outputs a Promela model for the poST program. Our contribution is the poST transformational semantics and the method for automatic generation of the Promela code from poST control programs. The resulting Promela program is ready to be verified with SPIN model checker against linear temporal logic requirements to the source poST program.
In the paper we provide an overview of related work, as well as a brief description of the poST and Promela languages. Further, the Promela poST translation rules cover control flow statements, process creation and state management constructs, and timeout management. Then we define service processes for modeling the external environment and managing high-level LTL specifications. Then we present the main ideas of implementing the translator poST to Promela. We also illustrate our approach using the example of a system for managing electricity consumption and production, including renewable sources.

Keywords: control software, model checking, process-oriented programming, LTL, SPIN, Structured Text.

UDC: 004.822+681.51

MSC: 68N30

Received: 17.01.2024
Revised: 06.02.2024
Accepted: 14.02.2024

DOI: 10.18255/1818-1015-2024-1-32-53



© Steklov Math. Inst. of RAS, 2025