Verification of PLC properties based on formal semantics in Coq

  • Authors:
  • Jan Olaf Blech;Sidi Ould Biha

  • Affiliations:
  • fortiss GmbH, Munich;INRIA and Tsinghua University, Beijing

  • Venue:
  • SEFM'11 Proceedings of the 9th international conference on Software engineering and formal methods
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

Programmable Logic Controllers (PLC) are widely used in embedded systems for the industrial automation domain. We propose a formal semantics of two languages defined in the IEC 61131-3 standard for PLC programming. The first one is the Instruction List (IL) language, an assembly like language. The second one is the Sequential Function Charts (SFC) language, a graphical high-level language that allows to describe the main control-flow of the system. A PLC system description may comprise SFC and IL code. We formalized the semantics in the proof assistant Coq. Furthermore, we present an associated tool for automatically generating SFC representations from a graphical description - the text based IL code can be handled in Coq directly - and its usage for verification purposes. We demonstrate our approach to prove safety properties of a PLC in a real industrial demonstrator.