This content is not included in
your SAE MOBILUS subscription, or you are not logged in.
Modelify: Semi-Automatic Conversion of Control Systems C Code to Simulink Models
Technical Paper
2016-01-0020
ISSN: 0148-7191, e-ISSN: 2688-3627
Annotation ability available
Sector:
Language:
English
Abstract
Over the last decade, the automotive industry has embraced model-based development for control systems. Many of these companies have chosen Simulink from MathWorks to design and simulate these models. However, a remaining issue is the fact that many control systems were initially written in C and are still being used. Some companies have attempted to manually convert these C systems to Simulink models but have found this method to be too costly, error-prone, and time consuming.
EnSoft decided to tackle this problem by providing a semi-automated conversion using our Atlas for C tool. Atlas is a tool that maps software and creates a relation map for all parts of the program. It then offers the developer tools to query and visualize this graph. We have developed Modelify, a tool built on this framework that performs the necessary queries on a C project and creates equivalent Simulink models and subsystems.
In this paper, we will discuss some of the difficulties in such a conversion, including handling conditional logic and global variables. We will then discuss how Modelify can improve on the model generated from the C source, in order to meet customer expectations. We will also discuss how Atlas can be extended to create custom tools for visualizing, understanding, and validating C source code.
Recommended Content
Authors
Citation
Woestman, E. and Sauceda, J., "Modelify: Semi-Automatic Conversion of Control Systems C Code to Simulink Models," SAE Technical Paper 2016-01-0020, 2016, https://doi.org/10.4271/2016-01-0020.Also In
References
- Thate , J. , Kendrick , L. , and Nadarajah , S. Caterpillar Automatic Code Generation SAE Technical Paper 2004-01-0894 2004 10.4271/2004-01-0894
- Aho , A. , Lam , M. , Sethi , R. , and Ullman , J. Compilers: Principles, Techniques, and Tools Addison Wesley 2nd 2006
- APAC http://www.darpa.mil/program/automated-program-analysis-for-cybersecurity
- Dillaber , E. , Kendrick , L. , Jin , W. , and Reddy , V. Pragmatic Strategies for Adopting Model-Based Design for Embedded Applications SAE Technical Paper 2010-01-0935 2010 10.4271/2010-01-0935
- Ueda , K. , Uematsu , Y. , and Baloh , M. Converting Legacy Embedded Control Software to Executable Specifications. MathWorks International Automotive Conference. MathWorks 2006
- Baloh , M. , Raghav , G. , and Sivashankar , S. Key Considerations in the Translation of Legacy Embedded Control Software to Model Based Executable Specifications Computer Aided Control System Design, IEEE International Conference on Control Applications 2006
- Kizhakkae Palakkal , S. , Ranadive , P. , Boggarapu , N. , Rao , R et al. Automatic C to Simulink Model Converter (C2M) Tool SAE Int. J. Passeng. Cars - Electron. Electr. Syst. 8 2 255 263 2015 10.4271/2015-01-0164
- Saha , I. , Chakraborty , K. , Roy , S. , Reddy , V.B et al. An approach to reverse engineering of c programs to Simulink models with conformance testing 2nd India software engineering conference (ISEC '09) ACM New York, NY, USA 137 138
- Deering , T. , Kothari , S. , Sauceda , J. , and Mathews , J. Atlas: A New Way to Explore Software, Build Analysis Tools 36th International Conference on Software Engineering (ICSE Companion 2014). ACM New York, NY, USA 588 591
- eXtensible Common Software Graph on the Atlas Wiki http://ensoftatlas.com/wiki/Extensible_Common_Software_Graph
- Kothari , S.C. , Bishop , L. , Sauceda , J. , and Daugherty , G. Knowledge-centric and language independent framework for safety analysis tools Eighth IEEE international conference on High assurance systems engineering (HASE'04). IEEE Computer Society Washington, DC, USA 45 55
- Software http://archive.darpa.mil/darpatech99/Presentations/itopdf/itosec.pdf
- Tamrawi , S. K. A. , and Kang , G. Event Flow Graphs to Verify Absence of Vulnerabilities and Malicious Behaviors IEEE Trans. Softw. Eng. 2013
- Reactis from Reactive Systems, Inc. http://www.reactive-systems.com/