Diagrams and programming languages for programmable controllers

  • Stuart Anderson
  • Konstantinos Tourlas
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1313)


In many domain specific languages diagrammatic notation is used because it conforms to notations used by domain specialists before the deployment of programmable components. The aim is to lessen the possibility of error by changing as little as possible. However the switch to programmable components often means a radical change in the details of the implementation. Such changes can mean that the domain experts' interpretation of the notation diverges significantly from the actual implementation.

We explore this problem, taking programmable controllers as a specific example. The IEC 1131-3 international standard has a diagrammatic notation and a textual language for the description of “function blocks” which are the basic components of controller programs. We take an idealised version of the textual language and its diagrammatic counterpart and show that the diagrams capture equivalence of textual programs under a collection of equational laws.

This result establishes that diagrams relieve the programmer of the need to consider non-significant variants of programs and the match between program texts, their corresponding diagrams and their intended interpretation.


Output Port Input Port Programmable Component Function Block Textual Language 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    G. Egger, A. Fett, P. Pepper. Formal Specification of a Safe PLC Language and Its Compiler. Proceedings of the SafeComp'94 13th International Conference on Computer Safety, Reliability and Security. ISA, 1994.Google Scholar
  2. 2.
    W. Halang, S. Jung, B. Krämer, J. Scheepstra. A Safety Licensable Computing Architecture, World Scientific, 1993Google Scholar
  3. 3.
    IEC International Standard 1131-3, Programmable Controllers, Part 3, Programming Languages., 1993.Google Scholar
  4. 4.
    R. Milner. Flowgraphs and Flow Algebras. Journal of the ACM, Vol. 26, No. 4, October 1979, pp. 794–818.Google Scholar
  5. 5.
    R. Milner. Communication and Concurrency. Prentice Hall International, 1989.Google Scholar
  6. 6.
    E. Parr. Programmable Controllers, An Engineer's Guide. Newnes, 1993Google Scholar
  7. 7.
    F. Swainston. A Systems Approach to Programmable Controllers. Newnes, 1991Google Scholar
  8. 8.
    K. Tourlas. Semantic Analysis and Design of Languages for PLCs. M.Sc. Project Report, Dept. of Computer Science, The University of Edinburgh, 1996.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1997

Authors and Affiliations

  • Stuart Anderson
    • 1
  • Konstantinos Tourlas
    • 1
  1. 1.Laboratory for the Foundations of Computer ScienceDepartment of Computer Science The Kings BuildingsUK

Personalised recommendations