An Empirical Study of Control Logic Specifications for Programmable Logic Controllers
Artikel i vetenskaplig tidskrift, 2014

This paper presents an empirical study of control logic specifications used to document real-world code in manufacturing applications. More than one hundred input/output related property specifications from ten different reusable function blocks were investigated. The main purpose of the study was to provide understanding of how the specifications are expressed by industrial practitioners. This study can be used to develop new tools and methods for specifying control logic software, as well as evaluating existing ones. In this paper, the studied specifications are used to evaluate linear temporal logic in general and the specification language ST-LTL, tailored for functions blocks, in particular. The study shows that most specifications are expressed as implications between input and output conditions, which should always be fulfilled. Many of these implications are rather complex since the input and output conditions may be mixed and involve sequences, timer issues and non-boolean variables. Using ST-LTL it was possible to represent all implications of this study. The remaining few specifications could be specified in ST-LTL as well after being altered to suit the specification language. The paper demonstrates some advantages of ST-LTL compared to standard linear temporal logic and discusses possible improvements such as support for automatic rewrite of complex specifications.

IEC 61131-3

industrial study

temporal logic

programmable logic controller (PLC)

software requirements and specification

formal specification


Oscar Ljungkrantz

Chalmers, Signaler och system, System- och reglerteknik

Knut Åkesson

Chalmers, Signaler och system, System- och reglerteknik

Martin Fabian

Chalmers, Signaler och system, System- och reglerteknik

Amir Hossein Ebrahimi

Chalmers, Signaler och system, System- och reglerteknik

Empirical Software Engineering

1382-3256 (ISSN) 1573-7616 (eISSN)

Vol. 19 3 655-677


Data- och informationsvetenskap





Mer information