Building a Hybrid Systems Modeler on Synchronous Languages Principles

被引:6
作者
Benveniste, Albert [1 ]
Bourke, Timothy [1 ,2 ]
Caillaud, Benoit [1 ]
Colaco, Jean-Louis [3 ]
Pasteur, Cedric [3 ]
Pouzet, Marc [1 ,2 ]
机构
[1] Inria, F-35042 Rennes, France
[2] PSL Univ, Ecole Normale Super, F-75230 Paris, France
[3] ANSYS Esterel Technol, F-31100 Toulouse, France
关键词
Cyber-physical systems; differential equations; nonlinear dynamical systems; systems modeling; CAUSALITY; SEMANTICS;
D O I
10.1109/JPROC.2018.2858016
中图分类号
TM [电工技术]; TN [电子技术、通信技术];
学科分类号
0808 ; 0809 ;
摘要
Hybrid systems modeling languages that mix discrete and continuous time signals and systems are widely used to develop cyber-physical systems where control software interacts with physical devices. Compilers play a central role, statically checking source models, generating intermediate representations for testing and verification, and producing sequential code for simulation and execution on target platforms. This paper presents a novel approach to the design and implementation of a hybrid systems language, built on synchronous language principles and their proven compilation techniques. The result is a hybrid systems modeling language in which synchronous programming constructs can be mixed with ordinary differential equations (ODEs) and zero-crossing events, and a runtime that delegates their approximation to an off-the-shelf numerical solver. We propose an ideal semantics based on nonstandard analysis, which defines the execution of a hybrid model as an infinite sequence of infinitesimally small time steps. It is used to specify and prove correct three essential compilation steps: 1) a type system that guarantees that a continuous-time signal is never used where a discrete-time one is expected and conversely; 2) a type system that ensures the absence of combinatorial loops; and 3) the generation of statically scheduled code for efficient execution. Our approach has been evaluated in two implementations: the academic language Zelus, which extends a language reminiscent of Lustre with ODEs and zero-crossing events, and the industrial prototype Scade Hybrid, a conservative extension of Scade 6.
引用
收藏
页码:1568 / 1592
页数:25
相关论文
共 62 条
[1]  
Acary V., 2010, LECT NOTES ELECT ENG, V69
[2]  
AMAGBEGNON P, 1995, SIGPLAN NOTICES, V30, P163, DOI 10.1145/223428.207134
[3]  
[Anonymous], 1999, STRUCT AN DES US MAT
[4]  
[Anonymous], 2017, SIM DEV S FUNCT
[5]  
[Anonymous], 2010, SIMULINK 7 USERS GUI
[6]  
[Anonymous], 2008, NUMERICAL METHODS SC
[7]  
[Anonymous], 1999, SYSTEM IDENTIFICATIO
[8]  
[Anonymous], 2017, STATEFLOW USERS GUID
[9]  
[Anonymous], 2010, FUNCTIONAL MOCK INTE
[10]  
[Anonymous], 2001, CONTR STYL GUID PROD