Diagrams and programming languages for programmable controllers

Stuart Anderson, Konstantinos Tourlas

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

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.
Original languageEnglish
Title of host publicationFME '97: Industrial Applications and Strengthened Foundations of Formal Methods
Subtitle of host publication4th International Symposium of Formal Methods Europe Graz, Austria, September 15–19, 1997 Proceedings
EditorsJohn Fitzgerald, CliffB. Jones, Peter Lucas
PublisherSpringer Berlin Heidelberg
Pages1-19
Number of pages19
ISBN (Electronic)978-3-540-69593-6
ISBN (Print)978-3-540-63533-8
DOIs
Publication statusPublished - 1997

Publication series

NameLecture Notes in Computer Science
PublisherSpringer Berlin Heidelberg
Name
Volume1313

Fingerprint

Dive into the research topics of 'Diagrams and programming languages for programmable controllers'. Together they form a unique fingerprint.

Cite this