Verification of PLC Properties Based on Formal Semantics in Coq

@inproceedings{Blech2011VerificationOP,
  title={Verification of PLC Properties Based on Formal Semantics in Coq},
  author={Jan Olaf Blech and Sidi Ould Biha},
  booktitle={SEFM},
  year={2011}
}
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… 

On Formal Reasoning on the Semantics of PLC using Coq

TLDR
A framework for the formal treatment of PLC based on the IEC 61131-3 standard is proposed, work on a tool for automatically generating SFC representations from a graphical description is presented, and possible usages of this framework are sketched.

Applying Model Checking to Industrial-Sized PLC Programs

TLDR
This paper proposes a general methodology to perform automated model checking of complex properties expressed in temporal logics on PLC programs, based on an intermediate model (IM) meant to transform PL programs written in various standard languages to different modeling languages of verification tools.

Applying Model Checking to Industrial-Sized

TLDR
This paper proposes a general methodology to perform automated model checking of complex properties expressed in temporal logics (e.g., computa- tion tree logic (CTL) and linear temporal logic (LTL) on PLC programs.

KST: Executable Formal Semantics of IEC 61131-3 Structured Text for Verification

TLDR
This paper presents formal operational semantics ofstructured text, a widely used PLC programming language, based on the ST language specification provided by IEC 61131-3, a generally acknowledged international standard for PLCs.

A Tool for the Certification of Sequential Function Chart based System Specifications

TLDR
This paper describes a tool framework for certifying properties of sequential function chart (SFC) based system specifications: CERTPLC, and focuses on properties that can be described as inductive invariants.

Automated Generation of Formal Models from ST Control Programs for Verification Purposes

TLDR
The proposed methodology defines an automata-based formalism used as intermediate model (IM) to transform PLC programs written in ST language into different formal models for verification purposes.

A User-Friendly Verification Approach for IEC 61131-3 PLC Programs

TLDR
This paper presents a specification-mining-based verification approach for IEC 61131-3 PLC programs that only requires users to review specifications mined from the program behaviors instead of model checking for specified specifications, which can greatly improve the efficiency of safety verification and is much easier for control system engineers to use.

Testing and Verification of PLC Code for Process Control

TLDR
This paper presents the analysis of different mechanisms for testing PLC programs developed within the UNICOS (UNified Industrial COntrol System) framework and the advantages and limitations of both approaches are presented.

TESTING & VERIFICATION OF PLC CODE FOR PROCESS CONTROL

TLDR
This paper presents the analysis of different mechanisms for testing PLC programs developed within the UNICOS (UNified Industrial COntrol System) framework and the advantages and limitations of both approaches are presented.

A Comparison of Formal Verification Approaches for IEC 61499

TLDR
This paper presents two different approaches for formal verification of IEC 61499-based programs and provides two examples of ongoing work to exemplify the design and the runtime verification approaches.

References

SHOWING 1-10 OF 18 REFERENCES

A Formal Semantics of PLC Programs in Coq

  • Sidi Ould Biha
  • Computer Science
    2011 IEEE 35th Annual Computer Software and Applications Conference
  • 2011
TLDR
This work proposes a formal semantics of the Instruction List (IL) language, one of the five programing languages defined in the IEC 61131-3 standard for PLC programing, and formalized this semantics in the proof assistant Coq and used it to prove some safety properties on an example of PL program.

A Tool for the Certification of PLCs based on a Coq Semantics for Sequential Function Charts

TLDR
This document describes the tool framework: usage scenarios, the archi-tecture, semantics of PLCs and their realization in COQ, proof generation and the construction of certificates.

Verification of PLC Programs Given as Sequential Function Charts

TLDR
This contribution presents two different approaches to convert SFC programs algorithmically into automata models that are amenable to model checking and advocates the use of formal verification.

Towards the automatic verification of PLC programs written in Instruction List

  • G. CanetS. CouffinJ. LesageA. PetitP. Schnoebelen
  • Computer Science
    Smc 2000 conference proceedings. 2000 ieee international conference on systems, man and cybernetics. 'cybernetics evolving to systems, humans, organizations, and their complex interactions' (cat. no.0
  • 2000
TLDR
A formal semantics for a significant fragment of the IL language is proposed, and a direct coding of this semantics into a model checking tool is carried out to automatically verify rich behavioral properties written in linear temporal logic.

Timed automaton models for simple programmable logic controllers

  • A. MaderH. Wupper
  • Computer Science
    Proceedings of 11th Euromicro Conference on Real-Time Systems. Euromicro RTS'99
  • 1999
We give timed automaton models for a class of Programmable Logic Controller (PLC) applications, that are programmed in a simple fragment of the language Instruction Lists as defined in the standard

An Invariant Preserving Transformation for PLC Models

  • J. BlechA. HattendorfJia Huang
  • Computer Science
    2011 14th IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing Workshops
  • 2011
TLDR
This work reports on a transformation from Sequential Function Charts and Function Block Diagrams of the IEC 61131 -- 3 standard to BIP, and establishes a notion of invariant preservation between the two languages.

Formalization and Verification of PLC Timers in Coq

TLDR
This work presents a formalization of TON-timers of PLC programs in the theorem proving system Coq, and unveils the hardness of timer modeling in embedded systems.

VERIFICATION OF PLC PROGRAMS WRITTEN IN FBD WITH VIS

TLDR
This paper formally defined FBD semantics as a state-transition system, developed semantic-preserving translation rules from FBD to Verilog programs, and implemented a software tool to support the process.

Verification of Sequential Function Charts Using SMV

Sequential function charts (SFCs) are defined as a modeling language in the IEC 1131-3 standard [1] and can be used to structure and drive programmable logic controllers (PLCs). It includes