A Generic Interface for x-in-the-Loop Simulations Based on Distributed Co-Simulation Protocol

Co-simulation is a key step in the development of today’s complex cyber-physical systems (CPS), specially in the integration and validation activities. However, performing a co-simulation involving models developed in different environments and possibly deployed in different platforms wit...

Full description

Bibliographic Details
Main Authors: Mikel Segura, Tomaso Poggi, Rafael Barcena
Format: Article
Language:English
Published: IEEE 2023-01-01
Series:IEEE Access
Subjects:
Online Access:https://ieeexplore.ieee.org/document/10017246/
_version_ 1797902248104165376
author Mikel Segura
Tomaso Poggi
Rafael Barcena
author_facet Mikel Segura
Tomaso Poggi
Rafael Barcena
author_sort Mikel Segura
collection DOAJ
description Co-simulation is a key step in the development of today’s complex cyber-physical systems (CPS), specially in the integration and validation activities. However, performing a co-simulation involving models developed in different environments and possibly deployed in different platforms with mixed real-time and non real-time constraints is a challenging engineering task. A promising technology that could help overcome communication and synchronisation difficulties is the non-proprietary standard Distributed Co-simulation Protocol (DCP). This standard defines an application-level communication protocol, independent of the platform and the communication medium, that regulates the exchange of information between the co-simulation entities. This paper presents a co-simulation interface based on the DCP standard. It offers a novel approach to apply the DCP standard. Instead of using it as a model encapsulation mechanism, having to develop an specific DCP slave for each application, it is proposed to use it as a generic co-simulation interface. To this end, a Simulink library has been developed, allowing to connect models developed in Simulink with the outside world in an standardised way. Moreover, by exploiting the code generation potential of Simulink, a wide variety of devices become accessible, thus enabling x-in-the-loop simulations, which are commonly used tests in the verification and validation process of CPSs. This library has been tested in a soft real-time co-simulation application between a Simulink instance and an application running on a Xilinx Zynq Ultrascale+ System-on-Chip. As an additional contribution, an analysis of DCP synchronisation problems when simulating closed-loop systems composed of two slaves is performed. Finding that the main causes are the occurrence of random delays and that the simulations of the two slaves start at an arbitrary time. A possible solution to this problem is also presented.
first_indexed 2024-04-10T09:14:41Z
format Article
id doaj.art-c4a6424f2f0e40aeac3b6dd20f9b826b
institution Directory Open Access Journal
issn 2169-3536
language English
last_indexed 2024-04-10T09:14:41Z
publishDate 2023-01-01
publisher IEEE
record_format Article
series IEEE Access
spelling doaj.art-c4a6424f2f0e40aeac3b6dd20f9b826b2023-02-21T00:02:15ZengIEEEIEEE Access2169-35362023-01-01115578559510.1109/ACCESS.2023.323707510017246A Generic Interface for x-in-the-Loop Simulations Based on Distributed Co-Simulation ProtocolMikel Segura0https://orcid.org/0000-0002-8782-5464Tomaso Poggi1https://orcid.org/0000-0003-3649-253XRafael Barcena2https://orcid.org/0000-0002-0799-5675Embedded Systems Group, IKERLAN, Arrasate, Basque Country, SpainMondragon Unibertsitatea, Arrasate, Basque Country, SpainDepartment of Electronic Technology, University of the Basque Country (UPV-EHU), Bilbao, Basque Country, SpainCo-simulation is a key step in the development of today’s complex cyber-physical systems (CPS), specially in the integration and validation activities. However, performing a co-simulation involving models developed in different environments and possibly deployed in different platforms with mixed real-time and non real-time constraints is a challenging engineering task. A promising technology that could help overcome communication and synchronisation difficulties is the non-proprietary standard Distributed Co-simulation Protocol (DCP). This standard defines an application-level communication protocol, independent of the platform and the communication medium, that regulates the exchange of information between the co-simulation entities. This paper presents a co-simulation interface based on the DCP standard. It offers a novel approach to apply the DCP standard. Instead of using it as a model encapsulation mechanism, having to develop an specific DCP slave for each application, it is proposed to use it as a generic co-simulation interface. To this end, a Simulink library has been developed, allowing to connect models developed in Simulink with the outside world in an standardised way. Moreover, by exploiting the code generation potential of Simulink, a wide variety of devices become accessible, thus enabling x-in-the-loop simulations, which are commonly used tests in the verification and validation process of CPSs. This library has been tested in a soft real-time co-simulation application between a Simulink instance and an application running on a Xilinx Zynq Ultrascale+ System-on-Chip. As an additional contribution, an analysis of DCP synchronisation problems when simulating closed-loop systems composed of two slaves is performed. Finding that the main causes are the occurrence of random delays and that the simulations of the two slaves start at an arbitrary time. A possible solution to this problem is also presented.https://ieeexplore.ieee.org/document/10017246/Control systemsco-simulation interfacedistributed co-simulation protocolmodel-based designmodel testingsimulink
spellingShingle Mikel Segura
Tomaso Poggi
Rafael Barcena
A Generic Interface for x-in-the-Loop Simulations Based on Distributed Co-Simulation Protocol
IEEE Access
Control systems
co-simulation interface
distributed co-simulation protocol
model-based design
model testing
simulink
title A Generic Interface for x-in-the-Loop Simulations Based on Distributed Co-Simulation Protocol
title_full A Generic Interface for x-in-the-Loop Simulations Based on Distributed Co-Simulation Protocol
title_fullStr A Generic Interface for x-in-the-Loop Simulations Based on Distributed Co-Simulation Protocol
title_full_unstemmed A Generic Interface for x-in-the-Loop Simulations Based on Distributed Co-Simulation Protocol
title_short A Generic Interface for x-in-the-Loop Simulations Based on Distributed Co-Simulation Protocol
title_sort generic interface for x in the loop simulations based on distributed co simulation protocol
topic Control systems
co-simulation interface
distributed co-simulation protocol
model-based design
model testing
simulink
url https://ieeexplore.ieee.org/document/10017246/
work_keys_str_mv AT mikelsegura agenericinterfaceforxintheloopsimulationsbasedondistributedcosimulationprotocol
AT tomasopoggi agenericinterfaceforxintheloopsimulationsbasedondistributedcosimulationprotocol
AT rafaelbarcena agenericinterfaceforxintheloopsimulationsbasedondistributedcosimulationprotocol
AT mikelsegura genericinterfaceforxintheloopsimulationsbasedondistributedcosimulationprotocol
AT tomasopoggi genericinterfaceforxintheloopsimulationsbasedondistributedcosimulationprotocol
AT rafaelbarcena genericinterfaceforxintheloopsimulationsbasedondistributedcosimulationprotocol