Formal verification of PLC programs using the B method

We pusblish this report which is related to safety critical industrial automation systems.

  • Author: Haniel Moreira Barbosa
  • Advisor: David Déharbe
  • Date: October 2012
  • Nature: Submitted for the Graduate “Systems and Computer” Program Department of Computer Applied Mathematics and Informatics of the Federal University Rio Grande do Norte (Natal – Brazil). 
  • Summary:  PLCs (acronym for Programmable Logic Controllers) perform control operations, receiving information from the environment, processing it and modifying this same environment according to the results produced. They are commonly used in industry in several applications, from mass transport to petroleum industry. As the complexity of these applications increase, and as various are safety critical, a necessity for ensuring that they are reliable arouses. Testing and simulation are the de-facto methods used in the industry to do so, but they can leave flaws undiscovered. Formal methods can provide more confidence in an application’s safety, once they permit their mathematical verification. We make use of the B Method, which has been successfully applied in the formal verification of industrial systems, is supported by several tools and can handle decomposition, refinement, and verification of correctness according to the specification. The method we developed and present in this work automatically generates B models from PLC programs and verify them in terms of safety constraints, manually derived from the system requirements. The scope of our method is the PLC programming languages presented in the IEC 61131-3 standard, although we are also able to verify programs not fully compliant with the standard. Our approach aims to ease the integration of formal methods in the industry through the abbreviation of the effort to perform formal verification in PLCs.

You will also like:

Copy link
Powered by Social Snap