ORIGINAL ARTICLE Automatic generation of PLC automation projects from component-based models Elisabet Estévez & Marga Marcos & Darío Orive Received: 9 January 2007 / Accepted: 12 June 2007 / Published online: 18 July 2007 # Springer-Verlag London Limited 2007 Abstract Industrial process measurement and control sys- tems (IPMCS) are used in most of the industrial sectors to achieve production improvement, process optimization and time and cost reduction. Integration, reuse, flexibility and optimization are demanded to adapt to a rapidly changing and competitive market. In order to achieve these goals, the use of standards in the application field, methodologies for defining the application design and tools for supporting the develop- ment cycle are needed. This paper proposes a component- based model of the implementation of the control system under design (the hardware and software architectures). The software architecture is defined to follow the software model of the IEC 61131-3 standard for programming programmable logic controllers and the hardware architecture is composed by equipment characterised by vendor and range of product. The proposed modelling is implemented as a markup language that allows to describe models of industrial control systems (icsML). From the application model, described in the markup language, the automation project for every programmable logic controller (PLC) present in the applica- tion is automatically generated. Keywords Industrial control systems . Component-based modelling . Model-driven development . IEC 61131-3 . XML technologies 1 Introduction Industrial control systems are a special type of computer system that control physical devices by means of control logic and sequences. Besides, they usually have to respond to external events coming from the environment they control. They use programmable logic controllers (PLCs), industrial communication systems (fieldbus), and dedicated I/O devices to meet the operational requirements. As a computer system, its design deals with the definition of the software architecture, which implements the control strategies. Traditionally, each control equipment vendor offered a development system based on proprietary software architecture and programming languages. To promote the use of standards for this application field, international organisations are making a huge effort. PLCOpen [1] was founded in 1992 and it is a vendor- and product-independent worldwide association whose mission is to be the leading association resolving topics related to control programming to support the use of international standards in this field. The International Electrotechnical Commission (IEC) promotes open systems to be used in the industrial control field. The IEC 61131-3 standard [2, 3] proposes a software model and programming languages for industrial process measurement and control systems (IPMCS). Most of the PLC manufacturers are aiming to become IEC 61131-3 standard compliant. PLCopen has defined different compliance levels (base and conformity) and many companies are certified. For instance, Schneider Electric, Rockwell Automation ICS Triplex ISaGRAF, Infoteam, KW Software, Mitsubishi Electric, Panasonic, and Smart Software Solutions, among others. The Automa- tion Alliance [4] is constituted by companies of the automation industry such as ABB or WAGO, whose hardware devices are all programmed with the same IEC 61131-3 programming system [5]. Most of them, among other manufacturers, belong to the PLCopen organisation. Int J Adv Manuf Technol (2007) 35:527–540 DOI 10.1007/s00170-007-1127-4 E. Estévez (*) : M. Marcos : D. Orive Department of Automatic Control and Systems Engineering, University of the Basque Country, Alda Urquijo S/N, 48013 Bilbao, Spain e-mail: elisabet.estevez@ehu.es M. Marcos e-mail: marga.marcos@ehu.es D. Orive e-mail: dario.orive@ehu.es