Functional verification of distributed automation systems
- 89 Downloads
- 1 Citations
Abstract
The demand of customer-specific products leads to a fundamental change to manufacturing facilities. To adapt the facilities to new product types, frequently occurring functionality changes in industrial automation systems are expected. Functionality changes are primarily implemented by software changes. These software changes within the operation phase can be implemented, for instance, by over-the-air software updates or ad hoc integration of new components. The effects of these changes are often difficult to estimate, especially in distributed automation systems. This mainly poses a challenge on production line operators, who are required to validate their automation systems after functionality changes have been executed. The goal of this contribution is to assist production line operators in the validation process of their automation systems after software changes. Formal verification methods can support the operators, due to its fully automated execution. However, the creation process of the behavior models needed for the formal verification is complex and error-prone. This is why formal verification is usually not used. Hence, a model-based technique is presented to automate this creation process. By means of this, the subsystem affected by the software change is automatically identified and subsequently a suitable input to a model-based verification tool is generated. The concept is based on the generation of a system model by composing the Petri net models of components within the automation system. In order to identify affected components, an impact analysis is performed, starting from the component in which a modification occurred. Followingly, a tailored subsystem is composed using the component models necessary for verification. This subsystem is applied to verify the system requirements for the affected components. To evaluate the applicability of the concept in the field of industrial automation, a distributed automation system was implemented. A service-oriented, OPC-UA-based, control network is thereby used to implement a technical process. Furthermore, a configuration interface enables change of the components at runtime. This emulates over-the-air updates and ad hoc networking. The concept is implemented with the demonstrator “TestIAS.” This test device detects software changes within the automation system and verifies them automatically according to the model-based approach presented. An empirical evaluation was performed with ten different reconfiguration scenarios showing functional changes. In addition, based on the time measurements of the time saving due to the impact analysis, the efficiency enhancement is substantiated.
Keywords
Modeling Model composition Software changes Software modification Impact analysis Verification Test Smart factory Industry 4.0 IIOT Line production operatorNotes
References
- 1.Bortolini M, Faccio M, Manzini R, Pilati F (2016) Stochastic timed Petri nets to dynamically design and simulate industrial production processes. Int J Logist Syst Manag 25(1):20–43CrossRefGoogle Scholar
- 2.Vogel-Heuser B, Fay A (2015) Evolution of software in automated production systems: challenges and research directions. J Syst Softw 110:54–84CrossRefGoogle Scholar
- 3.Forschungsunion (2013) Acatech: recommendations for implementing the strategic initiative INDUSTRIE 4.0Google Scholar
- 4.Fay A, Vogel-Heuser B, Frank T, Eckert K, Hadlich T, Diedrich C (2015) Enhancing a model-based engineering approach for distributed manufacturing automation systems with characteristics and design patterns. J Syst Softw 101:221–235CrossRefGoogle Scholar
- 5.Vogel-Heuser B, Göhner P, Lüder A (2015) Agent-based control of production systems—and its architectural. In: Industrial agents - emerging applications of software agents in industry, pp 153– 170CrossRefGoogle Scholar
- 6.Zeller A, Weyrich M (2016) Challenges for functional testing of reconfigurable production systems. In: 21st IEEE International Conference on Emerging Technologies and Factory Automation, BerlinGoogle Scholar
- 7.Zeller A, Weyrich M Industry 4.0 with networked and flexible production needs new test methods (german title: Industrie 4.0 mit vernetzter und flexibler Produktion erfordert neue Testmethodiken), atp edition, S. 16–18, 10/2015Google Scholar
- 8.Legat C, Steden F, Feldmann S, Weyrich M, Vogel-Heuser B (2014) Co-evolution and reuse of automation control and simulation software. In: IECON 2014-40th Annual Conference of the IEEEGoogle Scholar
- 9.ISTQB—International Software Testing Board (2011) Certified tester foundation level syllabus, Version 2011.10.1, published by: Austrian Testing Board, German Testing Board e.V. & Swiss Testing BoardGoogle Scholar
- 10.Krause J (2012) Test case generation by model-based system specifications based on Petri net unfoldings, (german title: Testfallgenerierung aus modellbasierten Systemspezifikationen auf Basis von Petrinetzentfaltungen). Shaker Verlag AachenGoogle Scholar
- 11.Khlifi O, Mosbahi O, Khalgui M, Frey G (2017) New verification approach for reconfigurable distributed systems: ICSOFT-2017-12th International Conference on Software Technologies. MadridGoogle Scholar
- 12.Schlich B, Brauer J, Wernerus J, Kowalewski S (2009) Direct model checking of PLC programs in IL. In: 2nd IFAC Workshop on Dependable Control of Discrete Systems DCDS’09Google Scholar
- 13.Blech J O, Lindgren P, Pereira D, Vyatkin V, Zoitl A (2016) A comparison of formal verification approaches for IEC 61499. In: IEEE International Conference on Emerging Technologies and Factory Automation, BerlinGoogle Scholar
- 14.Broy M, Fox J, Hölzl F, Koss D, Kuhrmann M, Meisinger M, Penzenstadler B, Rittmann S, Schätz B, Spichkova M, Wild D (2008) Service-oriented modeling of CoCoME with focus and AutoFocus, The Common Component Modeling Example, Springer, BerlinGoogle Scholar
- 15.Spichkova Maria (2008) Focus on Isabelle: from specification to verification, Technical Report Department of Electrical and Computer Engineering, Concordia UniversityGoogle Scholar
- 16.Legat C, Mund J, Campetelli A, Hackenberg G, Folmer J, Schütz D, Broy M, Vogel-Heuser B (2015) Interface behavior modeling for automatic verification of industrial automation systems’ functional conformance. Automatisierungstechnik (at) 62(11):815—825Google Scholar
- 17.Ladiges J, Haubeck C, Fay A, Lamersdorf W (2015) Evolution management of production facilities by semi-automated requirement verification. Automatisierungstechnik (at) 62(11):781–793Google Scholar
- 18.Lochau M, Mennicke S, Baller H, Ribbeck L (2016) Incremental model checking of delta-oriented software product lines. J Log Algebr Methods Program 85:245–267MathSciNetCrossRefGoogle Scholar
- 19.https://www.3ds.com/products-services/catia/products/dymola, abgerufen am:2017.03.03
- 20.Behrmann G, David A, Larsen K (2004) A tutorial on UPPAAL. In: Formal methods for the design of real-time systems, Lecture Notes in Computer Science, published by Bernardo Marco. Springer, BerlinGoogle Scholar
- 21.Bortolino M, Ferrari E, Gamberi M, Pilati F, Faccio M (2017) Assembly system design in the Industry 4.0 era: a general framework. IFAC-PapersOnLine 50(1):5700–5705CrossRefGoogle Scholar
- 22.Vogel-Heuser B, Folmer J, Frey G, Liu L, Hermanns H, Hartmanns A (2012) Modeling of networked automation systems for simulation and model checking of time behavior. In: 9th International Multi-conference on Systems Signals and Devices. ChemnitzGoogle Scholar
- 23.ISO/IEC 15909-1: 2004-12, System and software engineering - high-level Petri nets - part 1: concepts, definitions and graphical notation.Google Scholar
- 24.ISO/IEC 15909-2:2011-02, Systems and software engineering—high-level Petri nets—part 2: transfer formatGoogle Scholar
- 25.Rausch M, Hanisch H-M (1995) Netz condition/event system with multiple condition outputs. In: Symposium on Emerging Technologies and Factory Automation, vol 1, pp 592–600Google Scholar
- 26.Khalgui M (2010) NCES-based modeling and CTL-based verification of reconfigurable embedded control systems. Comput Ind 61:198–212CrossRefGoogle Scholar
- 27.Hanisch H-M, Vyatkin V (2003) Verification of distributed control systems in intelligent manufacturing. J Intell Manuf 14:123– 136CrossRefGoogle Scholar
- 28.Aalst W, Lohmann N, Massuthe P, Stahl C, Wolf K (2010) Multiparty contracts: agreeing and implementing interorganizational processes. Comput J 53(1):90–106CrossRefGoogle Scholar
- 29.Frey G (2003) Hierarchical design of logic controllers using signal interpreted Petri nets. IFAC Proc 36(6):361–366CrossRefGoogle Scholar
- 30.IEC 61131-3:2013-03, Programmable controllers - part 3: programming languagesGoogle Scholar
- 31.Biallas S (2016) Verification of programmable logic code using model checking and static analysis. Dissertation RWTH Aachen Department of Computer Science, Technical ReportGoogle Scholar
- 32.Rösch S, Ulewicz S, Provost J, Vogel-Heuser B (2015) Review of model-based testing approaches in production automation and adjacent domains - current challenges and research gaps. J Softw Eng Appl 8:499–519CrossRefGoogle Scholar
- 33.Vogel-Heuser B, Schütz D, Frank T, Legat C (2014) Model-driven engineering of manufacturing automation software projects—a SysML-based approach. Mechatronics 24(7):883–897CrossRefGoogle Scholar
- 34.Zeller A, Jazdi N, Weyrich M (2018) Component based verification of distributed automation systems based on model composition. In: The 51st CIRP Conference on Manufacturing Systems, StockholmCrossRefGoogle Scholar