Cargando…
Translation of PLC Programs to x86 for Simulation and Verification
PLC programs are written in special languages, variants of the languages defined in the IEC 61131 standard. These programs cannot be directly executed on personal computers (on x86 architecture). To perform simulation of the PLC program or diagnostics during development, either a real PLC or a PLC s...
Autor principal: | |
---|---|
Lenguaje: | eng |
Publicado: |
2017
|
Materias: | |
Acceso en línea: | http://cds.cern.ch/record/2282938 |
_version_ | 1780955681486012416 |
---|---|
author | Sallai, Gyula |
author_facet | Sallai, Gyula |
author_sort | Sallai, Gyula |
collection | CERN |
description | PLC programs are written in special languages, variants of the languages defined in the IEC 61131 standard. These programs cannot be directly executed on personal computers (on x86 architecture). To perform simulation of the PLC program or diagnostics during development, either a real PLC or a PLC simulator has to be used. However, these solutions are often inflexible and they do not provide appropriate performance. By generating x86-representations (semantically equivalent programs which can be executed on PCs, e.g. written in C, C++ or Java) of the PLC programs, some of these challenges could be met. PLCverif is a PLC program verification tool developed at CERN which includes a parser for Siemens PLC programs. In this work, we describe a code generator based on this parser of PLCverif. This work explores the possibilities and challenges of generating programs in widely-used general purpose languages from PLC programs, and provides a proof-of-concept code generation implementation. The presented solution demonstrates that code generation may aid the PLC developers by providing simulation, visualisation, automated unit testing and assertion checking with formal verification methods. |
id | cern-2282938 |
institution | Organización Europea para la Investigación Nuclear |
language | eng |
publishDate | 2017 |
record_format | invenio |
spelling | cern-22829382019-09-30T06:29:59Zhttp://cds.cern.ch/record/2282938engSallai, GyulaTranslation of PLC Programs to x86 for Simulation and VerificationComputing and ComputersPLC programs are written in special languages, variants of the languages defined in the IEC 61131 standard. These programs cannot be directly executed on personal computers (on x86 architecture). To perform simulation of the PLC program or diagnostics during development, either a real PLC or a PLC simulator has to be used. However, these solutions are often inflexible and they do not provide appropriate performance. By generating x86-representations (semantically equivalent programs which can be executed on PCs, e.g. written in C, C++ or Java) of the PLC programs, some of these challenges could be met. PLCverif is a PLC program verification tool developed at CERN which includes a parser for Siemens PLC programs. In this work, we describe a code generator based on this parser of PLCverif. This work explores the possibilities and challenges of generating programs in widely-used general purpose languages from PLC programs, and provides a proof-of-concept code generation implementation. The presented solution demonstrates that code generation may aid the PLC developers by providing simulation, visualisation, automated unit testing and assertion checking with formal verification methods.CERN-STUDENTS-Note-2017-186oai:cds.cern.ch:22829382017-09-11 |
spellingShingle | Computing and Computers Sallai, Gyula Translation of PLC Programs to x86 for Simulation and Verification |
title | Translation of PLC Programs to x86 for Simulation and Verification |
title_full | Translation of PLC Programs to x86 for Simulation and Verification |
title_fullStr | Translation of PLC Programs to x86 for Simulation and Verification |
title_full_unstemmed | Translation of PLC Programs to x86 for Simulation and Verification |
title_short | Translation of PLC Programs to x86 for Simulation and Verification |
title_sort | translation of plc programs to x86 for simulation and verification |
topic | Computing and Computers |
url | http://cds.cern.ch/record/2282938 |
work_keys_str_mv | AT sallaigyula translationofplcprogramstox86forsimulationandverification |