Meta-Modeling and Automatic Code Generation for Computer Aided Development of Logic Control Systems

This article discusses some aspects of the computer aided development of logic control systems, namely the creation of a meta-model, a domain specific language serving as a base for the system modeling, as well as the formal rules for automatic transformation of the models designed by the experts using this meta-model into simulation models, a source PLC code and the relevant documentation. The problem is defined and proved as important from the point of view of the contemporary industrial software development in order to achieve more readable designs, which are later easier to be modified, to shorten the system development time, to obtain a fast proof-ofconcept and to lessen the possibility of having errors in the design. Furthermore, some directions are pointed out regarding the possible future extension of the used techniques towards automatic testing and validation of the developed logic control systems.

[1]  Elisabet Estévez-Estévez,et al.  Model-Based Validation of Industrial Control Systems , 2012, IEEE Transactions on Industrial Informatics.

[2]  Juha-Pekka Tolvanen,et al.  Domain-Specific Modeling: Enabling Full Code Generation , 2008 .

[3]  Masanobu Koga,et al.  MDA development of Manufacturing Execution System based on automatic code generation , 2010, Proceedings of SICE Annual Conference 2010.

[4]  Stefan Baerisch Domain-specific model-driven testing , 2009 .

[5]  Momcilo Krunic,et al.  An approach to model driven development and automatic source code generation of GUI controls , 2013, 2013 IEEE 11th International Symposium on Intelligent Systems and Informatics (SISY).

[6]  André Rossi,et al.  Generation of control for conveying systems based on component approach , 2007, 2007 IEEE International Conference on Systems, Man and Cybernetics.

[7]  B. Vogel-Heuser,et al.  Automatic code generation from a UML model to IEC 61131-3 and system configuration tools , 2005, 2005 International Conference on Control and Automation.

[8]  Luciano Lavagno,et al.  A Framework for Modeling, Simulation and Automatic Code Generation of Sensor Network Application , 2008, 2008 5th Annual IEEE Communications Society Conference on Sensor, Mesh and Ad Hoc Communications and Networks.

[9]  B. Vogel-Heuser,et al.  Usability challenges in the design workflow of reusable PLC software for machine and plant automation , 2012, International Multi-Conference on Systems, Sygnals & Devices.

[10]  Diogo R. Ferreira,et al.  Specifying Dynamic Adaptations for Embedded Applications Using a DSL , 2014, IEEE Embedded Systems Letters.

[11]  B. Werner,et al.  Object-oriented extensions for iec 61131-3 , 2009, IEEE Industrial Electronics Magazine.

[12]  P.J. Mosterman Automatic Code Generation: Facilitating New Teaching Opportunities in Engineering Education , 2006, Proceedings. Frontiers in Education. 36th Annual Conference.

[13]  Luís Gomes,et al.  Rapid Prototyping of Graphical User Interfaces for Petri-Net-Based Controllers , 2010, IEEE Transactions on Industrial Electronics.

[14]  Enn Tyugu,et al.  Components in model-based software development , 2013, Ninth International Conference on Computer Science and Information Technologies Revised Selected Papers.

[15]  George Angelos Papadopoulos Automatic code generation: A practical approach , 2008, ITI 2008 - 30th International Conference on Information Technology Interfaces.

[16]  Don S. Batory,et al.  Automatic code generation for actuator interfacing from a declarative specification , 2005, 2005 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[17]  Alexander Fay,et al.  Automatic generation of PLC code beyond the nominal sequence , 2008, 2008 IEEE International Conference on Emerging Technologies and Factory Automation.

[18]  Rajib Mall,et al.  Automatic code generation from unified modelling language sequence diagrams , 2013, IET Softw..

[19]  Elisabet Estévez-Estévez,et al.  Automatic Generation of the Supervisor Code for Industrial Switched-Mode Systems , 2013, IEEE Transactions on Industrial Informatics.