This repository contains the accompanying material to the paper Delta Modeling in IEC 61499: Expressing Control Software Variability of Cyber-Physical Product Systems.
IEC~61499 is a standard for developing industrial distributed control software. It supports the configurability of the control software as the application model is platform-independent and separated from the hardware configuration specification. It is thus a good basis to develop control software for highly configurable Cyber-Physical Production Systems (CPPSs). Systematically managing the control software variability in CPPSs would help to increase reuse and reduce the cost of developing and/or maintaining CPPSs.
In this paper, we propose an approach to systematically manage IEC 61499-based control software using a (textual) delta modeling approach. The delta modeling approach is a prominent concept in the Software Product Line (SPL) domain for expressing and maintaining software variability. We show how our delta modeling approach can express control software variability and provide a semi-automatic control software generator. The results confirm that our delta modeling approach can be helpful for implementing and maintaining IEC~61499-based control software variability.
The repository contains five use cases:
- Capping Station by courtesy of Alois Zoitl in his publication
- Truck by courtesy of Tu Prague
- Shift fork by courtesy of our industry partner
- Rocker switch by courtesy of our industry partner
- Waterfilter by courtesy of Askwar Hilonga
Each use case follows the following structures:
core
: This folder contains a 4diac project representing a base implementation for a production system in each case study.delta
: This folder contains one or more Delta Model to adjust the base implementation into a specific production system variant. This folder also contains aDeltaConfiguration
file which define a mapping between one or more delta models into a feature inside a FeatureIDE feature model.SPLConfig
: This folder contains multiple configuration setup for the Variability for 4diac (V4rdiac) tool.variabilityModels
: This folder contains one or more feature models describing the variability of a production system for each case study.