UML-Based Cyber-Physical Production Systems on Low-Cost Devices under IEC-61499
Abstract
:1. Introduction
2. Related Work
3. State of the Art
3.1. IEC-61499
- Portability: Software components and configurations of distributed applications can be interpreted and supported by different development environments.
- Configurability: The configuration of any device along with its control software can be executed by development tools from several IEC 61499 software suppliers.
- Interoperability: The control applications under IEC 61499 can be executed by several hardware platforms with embedded operating systems to work together and reach the aim of distributed application.
3.2. UML for Modelling Control Systems
4. Case Study
4.1. Hardware Platform
4.2. Software Platform
4.3. Use of UML for Designing FB and CPPS Control Systems
4.4. Generation of a SIFBs Set for IEC-61499 Following a UML Class Diagram
- FBs for I/Os manipulation.This group of FBs was designed to use the GPIO ports of each card allowing them to interact with the outside process according to the control actions required by the implemented controllers. With the purpose of working with the commonly used regulations in the current industry and easing its implementation, a configuration XML file was generated to map I/Os for each card. The XML file contained information about: (1) access name to the variable; (2) name of the pin corresponding to the GPIOs in each card; (3) port function; and (4) a brief comment (Figure 6).
- (a)
- DO_BBB and DO_RSP FBs. They are used to configure the GPIO ports required as digital outputs, by writing on them a logic value TRUE or FALSE. As with the standard FBs, these FBs receive the INIT and REQ events to start their operations, and they generate the INITO and CNF events. These FBs work with the following I/O variables (see Figure 7a,b):
- CONFIG_FILE (Input, STRING): XML filename with the information of each card’s mapping.
- TAG (Input, STRING): Output port name to manipulate.
- OUTPUT_VALUE (Input, BOOL): Boolean value to be written on the GPIO port.
- STATUS (Output, WSTRING): Error description code whenever there is one.
- (b)
- DI_BBB and DI_RSP FBs. Their function is to configure the GPIO of the corresponding card as data entry, and when invoked, they read the input digital value in the port. As with the standard FBs, these handle the INIT and REQ events to start their operations and they generate the INITO and CNF events. These FBs work with the following I/O variables (see Figure 8a,b):
- CONFIG_FILE (Input, STRING): XML filename with the information of each card’s mapping.
- TAG (Input, STRING): Output port name to manipulate.
- INPUT_VALUE (Output, BOOL): Boolean value read on the GPIO port.
- STATUS (Output, WSTRING): Error description code whenever there is one.
- FBs for batch control.This kind of FB uses control algorithms based on the meta-model developed in Figure 4a,b, which belong to the Distribution and Sorting stations. These FBs allow the algorithms’execution as long as the necessary conditions are met for each action to execute. As a first step, the scenario that the control algorithm must implement was designed. For this, the UML sequence diagram was used. In this diagram, the iteration of the FBs inputs with the control algorithm and the outputs that it could generate are shown. The sequence diagram contains the control algorithm’s implementation details, including the classes and diagrams designed in the previous steps and finally it indicates the responses of each of the classes involved in the control.
- (a)
- DISTRIBUTING FB. Inside this FB, the control algorithm corresponding to the process of the Distribution station is encapsulated. Figure 9 specifies the identified phases when analyzing the functioning of this station. The phases analyzed according to the UML sequence diagram allow determination of the number of inputs and outputs of the FB and its possible behavior.As with standard FBs, this receives the INIT and REQ events to start its operations and it generates the INITO and CNF events. There is also a set of channels to manage the I/O data, which are described in Figure 10.
- (b)
- SORTING FB. Inside this FB, the control algorithm corresponding to the process of the Storing station is encapsulated. Figure 11 specifies the identified phases when analyzing the functioning of this station.As with standard FBs, this receives the INIT and REQ events to start its operations and it generates the INITO and CNF events. There is also a set of channels to manage the I/O data, which are described in Figure 12.
- IEC-61499 Network FBs.With all the core I/O and control SIFBs generated, in order to create the control applications for each module, it is necessary to interconnect them to follow the operation structure of: reading of inputs, data processing, and writing of outputs. All of the generated SIFBs work under the execution of the events INIT and REQ. The algorithms codified inside the respective INIT events of the FBs contain the operations in charge of configuring the logical resources which allow the development boards to interact with the physical environment, to be properly used all along the execution of the FORTE runtime environment. A continuous generation of the INIT events represents a waste of time in unnecessary reconfigurations of resources. This is why this process needs to be done only once in the first cycle of execution.On the other hand, the REQ events contain the programming related to the manipulation of the resources pre-configured in the INIT event (read of inputs and write of outputs) and the calculations of control actions based on the system inputs.Figure 13 and Figure 14 show the block connections done in order to obtain the desired operation structure. An execution control FB is used to periodically generate the trigger signals in charge of starting the activation of the REQ events sequence. With the REQ event activation, the I/O FBs start their continuous process consisting of: obtaining the file location of the XML document generated for each board, relating the specified input or output name with the variables inside the file, returning the value of the physical magnitude at the selected GPIO pin (reading functions), and modifying the output value at the selected GPIO to match the logical input variable (writing functions). Similarly, the control FBs generate the respective control actions according to the received input values when the REQ event is triggered, in response to the algorithms developed based on the specific work of each module.
5. Conclusions and Ongoing Work
Author Contributions
Funding
Conflicts of Interest
References
- Dai, W.; Vyatkin, V. On migration from PLCs to IEC 61499: Addressing the data handling issues. In Proceedings of the 2010 8th IEEE International Conference on Industrial Informatics, Osaka, Japan, 13–16 July 2010; pp. 1142–1147. [Google Scholar]
- Vyatkin, V. The IEC 61499 standard and its semantics. IEEE Ind. Electron. Mag. 2009, 3, 40–48. [Google Scholar] [CrossRef]
- Ivanova, D.; Batchkova, I.; Panjaitan, S.; Wagner, F.; Frey, G. Combining IEC 61499 and ISA S88 for Batch Control. IFAC Proc. Vol. 2009, 42, 187–192. [Google Scholar] [CrossRef]
- Yoong, L.H.; Roop, P.S.; Salcic, Z. Implementing constrained cyber-physical systems with IEC 61499. ACM Trans. Embed. Comput. Syst. 2012, 11, 1–22. [Google Scholar] [CrossRef]
- Lee, J.; Bagheri, B.; Kao, H.A. A Cyber-Physical Systems architecture for Industry 4.0-based manufacturing systems. Manuf. Lett. 2015, 3, 18–23. [Google Scholar] [CrossRef]
- Hussain, T.; Frey, G. UML-based Development Process for IEC 61499 with Automatic Test-case Generation. In Proceedings of the 2006 IEEE Conference on Emerging Technologies and Factory Automation, Prague, Czech Republic, 20–22 September 2006; pp. 1277–1284. [Google Scholar]
- Panjaitan, S.; Frey, G. Combination of UML modeling and the IEC 61499 function block concept for the development of distributed automation systems. In Proceedings of the IEEE International Conference on Emerging Technologies and Factory Automation, Prague, Czech Republic, 20–22 September 2006; pp. 766–773. [Google Scholar]
- Dai, W.; Vyatkin, V.; Christensen, J.H.; Dubinin, V.N. Bridging Service-Oriented Architecture and IEC 61499 for Flexibility and Interoperability. IEEE Trans. Ind. Inform. 2015, 11, 771–781. [Google Scholar] [CrossRef]
- Hussain, T.; Frey, G. Migration of a PLC Controller to an IEC 61499 Compliant Distributed Control System: Hands-on Experiences. In Proceedings of the 2005 IEEE International Conference on Robotics and Automation, Barcelona, Spain, 18–22 April 2005; pp. 3984–3989. [Google Scholar]
- Wang, L.; Song, Y.; Gao, Q. Designing function blocks for distributed process planning and adaptive control. Eng. Appl. Artif. Intell. 2009, 22, 1127–1138. [Google Scholar] [CrossRef]
- Thramboulidis, K. IEC 61499: Back to the well proven practice of IEC 61131? In Proceedings of the 2012 IEEE 17th International Conference on Emerging Technologies & Factory Automation (ETFA 2012), Krakow, Poland, 17–21 September 2012; pp. 1–8. [Google Scholar]
- Olsen, S.; Wang, J.; Ramirez-Serrano, A.; Brennan, R.W. Contingencies-based reconfiguration of distributed factory automation. Robot. Comput.-Integr. Manuf. 2005, 21, 379–390. [Google Scholar] [CrossRef]
- Hussain, T.; Frey, G. Defining IEC 61499 Compliance Profiles using UML and OCL. In Proceedings of the 2007 5th IEEE International Conference on Industrial Informatics, Vienna, Austria, 23–27 June 2007; pp. 1157–1162. [Google Scholar]
- Thramboulidis, K.; Tranoris, C. An architecture for the development of function block oriented engineering support systems. In Proceedings of the 2001 IEEE International Symposium on Computational Intelligence in Robotics and Automation (Cat. No.01EX515), Banff, AB, Canada, 29 July–1 August 2001; pp. 536–542. [Google Scholar]
- Schwab, C.; Tangermann, M.; Ferrarini, L. Web based methodology for engineering and maintenance of distributed control systems: the TORERO approach. In Proceedings of the INDIN’05 2005 3rd IEEE International Conference on Industrial Informatics, Perth, Australia, 10–12 August 2005; pp. 32–37. [Google Scholar]
- Garcia, M.V.; Perez, F.; Calvo, I.; Moran, G. Building industrial CPS with the IEC 61499 standard on low-cost hardware platforms. In Proceedings of the 2014 IEEE Emerging Technology and Factory Automation (ETFA), Barcelona, Spain, 16–19 September 2014; pp. 1–4. [Google Scholar]
- Jammes, F.; Smit, H. Service-Oriented Paradigms in Industrial Automation. IEEE Trans. Ind. Inform. 2005, 1, 62–70. [Google Scholar] [CrossRef]
- García, M.V.; Irisarri, E.; Pérez, F.; Estévez, E.; Marcos, M. An Open CPPS Automation Architecture based on IEC-61499 over OPC-UA for flexible manufacturing in Oil & Gas Industry. IFAC-PapersOnLine 2007, 50, 1231–1238. [Google Scholar]
- GmbH, D.C.P. Framework for Distributed Industrial Automation and Control (4DIAC). Available online: https://projects.eclipse.org/proposals/4diac-framework-distributed-industrial-automation-and-control (accessed on 26 May 2018).
- International Electrotechnical Commission. International Electrotechnical Commission Std. (2005) IEC 61499: Function Blocks, Part 1–4; International Electrotechnical Commission: Geneva, Switzerland, 2014. [Google Scholar]
- Panjaitan, S.; Hussain, T.; Frey, G. Development of re-configurable distributed controllers in 61499 based on task schedules described by UML diagrams or gantt charts. In Proceedings of the INDIN’05 2005 3rd IEEE International Conference on Industrial Informatics, Perth, Australia, 10–12 August 2005; pp. 44–49. [Google Scholar]
- Brusaferri, A.; Ballarino, A.; Carpanzano, E. Enabling agile manufacturing through reconfigurable control solutions. In Proceedings of the 2009 IEEE Conference on Emerging Technologies & Factory Automation, Mallorca, Spain, 22–25 September 2009; pp. 1–8. [Google Scholar]
- Zoitl, A.; Strasser, T.; Ebenhofer, G. Developing modular reusable IEC 61499 control applications with 4DIAC. In Proceedings of the 2013 11th IEEE International Conference on Industrial Informatics (INDIN), Bochum, Germany, 29–31 July 2013; pp. 358–363. [Google Scholar]
- García, C.A.; Esteban, X.; García, M.V. Desingning Automation Distributed Systems based on IEC-61499 and UML. In Proceedings of the 2017 5th International Conference in Software Engineering Research and Innovation (CONISOFT 2017), Mèrida, Mexico, 25–27 October 2017; pp. 61–68. [Google Scholar]
Raspberry Pi3 B+ | BeagleBone Black | |
---|---|---|
System on a Chip (SoC) | Broadcom BCM2835 | OMAP3530 |
CPU | ARM 1176JZFS a 700 MHz | ARM Cortex-A8 |
RAM | 512 MB | 512 MB DDR3 |
GPIOs | 8 × GPIO, SPI, I2C, UART | 67 × GPIO |
USB | 2 × USB 2.0 | 1 × USB 2.0 |
Networks | Ethernet 10/100 | Ethernet 10/100 |
© 2018 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).
Share and Cite
García, C.A.; Castellanos, E.X.; García, M.V. UML-Based Cyber-Physical Production Systems on Low-Cost Devices under IEC-61499. Machines 2018, 6, 22. https://doi.org/10.3390/machines6020022
García CA, Castellanos EX, García MV. UML-Based Cyber-Physical Production Systems on Low-Cost Devices under IEC-61499. Machines. 2018; 6(2):22. https://doi.org/10.3390/machines6020022
Chicago/Turabian StyleGarcía, Carlos A., Exteban X. Castellanos, and Marcelo V. García. 2018. "UML-Based Cyber-Physical Production Systems on Low-Cost Devices under IEC-61499" Machines 6, no. 2: 22. https://doi.org/10.3390/machines6020022
APA StyleGarcía, C. A., Castellanos, E. X., & García, M. V. (2018). UML-Based Cyber-Physical Production Systems on Low-Cost Devices under IEC-61499. Machines, 6(2), 22. https://doi.org/10.3390/machines6020022