Internet of Things (IoT) devices are usually advanced embedded systems that require functionalities monitoring and control. The design, development and validation of these devices is complex, even more when communication capabilities need to be included. In industrial environments, where safety is of critical importance, reducing this complexity can help to achieve the vision of Industry 4.0 by reducing development time and costs as well as increasing quality.
To this end, the use of Model-Driven Engineering (MDE) methodology and the Software Product Line (SPL) paradigm is becoming increasingly important as they help to accelerate and ease the development of software, while reducing bugs and errors. Thus, in this work we present TRILATERAL, an SPL (Software Product Line) Model Based tool that uses a Domain Specific Language (DSL) to allow users to graphically define the IEC 61850 information model of the Industrial Cyber-Physical System (ICPS).
TRILATERAL automatically generates the source code for communicating devices with the monitoring framework, also supporting a variety of communication protocols, namely HTTP-REST, WS-SOAP and CoAP in order to control/monitor any ICPS. In addition, the solution was evaluated deploying it in different industrial domains (Wind Farm, Smart Elevator, Catenary-free Tram) from which we gained important lessons.
TRILATERAL is divided into two parts: 1) the server model definition and 2) the data model definition (see the featured image at the top of this post). Both of them are configured by the user using the DSL (e.g., Figure 4). The former one, i.e., server model definition, is used for configuring the IoT communications for data transition. The latter one is for configuring the data model based on IEC 61850 with the main objective to represent a ICPS.
Trilateral is distributed as an Eclipse plugin developed with EMF.
Thanks to this work, among other lessons learnt, we realized how beneficial the SPL paradigm can be in industrial domains. Because even though many domains exist they share similar requirements and many commonalities. In addition we also noticed the benefits a DSL can achieve. Although its development was complex, once it was well designed and developed, the configuration of an IoT communication protocol becomes much simpler, mainly due to the use of a visual environment. That is why thanks to the union of SPL and DSL, the development time decreases considerably. We have therefore learned the significance of using SPL and DSL in industry, considering both beneficial.
You can read all the details of this work in this Modelsward 2019 paper.