An Empirical Study of Control Logic Specifications for Programmable Logic Controllers
Journal article, 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, Signals and Systems, Systems and control, Automation

Knut Åkesson

Chalmers, Signals and Systems, Systems and control, Automation

Martin Fabian

Chalmers, Signals and Systems, Systems and control, Automation

Amir Hossein Ebrahimi

Chalmers, Signals and Systems, Systems and control, Automation

Empirical Software Engineering

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

Vol. 19 3 655-677

Subject Categories

Computer and Information Science

Areas of Advance




More information