Formal component-based modeling and synthesis for PLC systems

被引:10
作者
Zhou, M. [1 ,2 ]
Wan, H. [1 ,2 ]
Wang, R. [5 ]
Song, X. [3 ,4 ]
Su, C. [1 ,2 ]
Gu, M. [1 ,2 ]
Sun, J. [1 ,2 ]
机构
[1] Tsinghua Univ, Sch Software, Beijing 100084, Peoples R China
[2] Minist Educ, Key Lab Informat Syst Secur, Beijing, Peoples R China
[3] Guangxi Univ Nationalities, Guangxi Key Lab Hybrid Computat & IC Design Anal, Nanning 530006, Peoples R China
[4] Portland State Univ, Portland, OR 97207 USA
[5] Capital Normal Univ, Sch Informat Engn, Beijing, Peoples R China
关键词
Programmable Logic Controller; Modeling; Verification; Code Synthesis; CODE GENERATION; AUTOMATA;
D O I
10.1016/j.compind.2013.07.003
中图分类号
TP39 [计算机的应用];
学科分类号
081203 ; 0835 ;
摘要
Programmable Logic Controllers (PLCs) are widely used in industry. PLC systems are reactive systems which run cyclically. In each cycle, the system state is checked and the program is executed once to determine the system behavior for a single cycle. Development of PLC systems conventionally follows the V-model, but increasing demand for efficiency and reliability requires a new rigorous and rapid design flow. In this paper, we propose a component-based formal modeling and synthesis method for cyclic execution platforms and apply it to PLC. Our method consists of three main phases: modeling, verification and code synthesis. In the modeling phase, the BIP (Behavior-Interaction-Priority) framework which is flexible and expressive is used as the modeling language. Real-time behavior, which is intensely concerned in PLC systems, can be modeled as well. In the verification phase, the system model is translated to timed automata and checked by UPPAAL Verification helps to ensure correctness of the model and further increases reliability of the implementation. In the code synthesis phase, the software part of the system model is extracted and synthesized to cyclic code. Although the PLC software runs cyclically, the software model is not necessarily given in a cyclic manner. We propose an algorithm which can generate high-performance cyclic code from a model which describes the business work-flow. This feature significantly simplifies program development. A set of tools is implemented to support our design flow and they are applied to an industrial case study for a PLC system that controls dozens of physical devices in a huge palace. (C) 2013 Elsevier B.V. All rights reserved.
引用
收藏
页码:1022 / 1034
页数:13
相关论文
共 30 条
[1]   Designing safe, reliable systems using scade [J].
Abdulla, Parosh Aziz ;
Deneux, Johann ;
Stalmarck, Gunnar ;
Agren, Herman ;
Akerlund, Ove .
LEVERAGING APPLICATIONS OF FORMAL METHODS, 2006, 4313 :115-+
[2]  
ALUR R, 1990, LECT NOTES COMPUT SC, V443, P322, DOI 10.1007/BFb0032042
[3]  
Baresi L, 2000, IEEE SYS MAN CYBERN, P2437, DOI 10.1109/ICSMC.2000.884357
[4]  
Baresi L., 2002, ELECT NOTES THEORETI, V72, P79
[5]  
Basu A, 2006, I C SOFTW ENG FORM M, P3
[6]   Rigorous Component-Based System Design Using the BIP Framework [J].
Basu, Ananda ;
Bensalem, Saddek ;
Bozga, Marius ;
Combaz, Jacques ;
Jaber, Mohamad ;
Thanh-Hung Nguyen ;
Sifakis, Joseph .
IEEE SOFTWARE, 2011, 28 (03) :41-48
[7]   Source-to-Source Architecture Transformation for Performance Optimization in BIP [J].
Bozga, Marius ;
Jaber, Mohamad ;
Sifakis, Joseph .
IEEE TRANSACTIONS ON INDUSTRIAL INFORMATICS, 2010, 6 (04) :708-718
[8]  
C Su, 2013, TASE 2013 UNPUB
[9]  
Cavallo A., 1996, Using MATLAB, SIMULINK and Control System Toolbox: a practical approach
[10]  
Clarke E. M., 1997, Foundations of Software Technology and Theoretical Computer Science. 17th Conference. Proceedings, P54, DOI 10.1007/BFb0058022