000962338 001__ 962338 000962338 005__ 20250630090203.0 000962338 0247_ $$2datacite_doi$$a10.18154/RWTH-2023-07342 000962338 037__ $$aRWTH-2023-07342 000962338 041__ $$aEnglish 000962338 1001_ $$0P:(DE-82)IDM05704$$aWiartalla, Marc Oliver$$b0$$urwth 000962338 245__ $$aA modular and verifiable software architecture for interconnected medical systems in intensive care 000962338 245__ $$honline 000962338 250__ $$a2.0 000962338 260__ $$c2023 000962338 3367_ $$06$$2EndNote$$aComputer Program 000962338 3367_ $$0PUB:(DE-HGF)33$$2PUB:(DE-HGF)$$aSoftware$$bsware$$msware$$s1690879026_28016 000962338 3367_ $$2BibTeX$$aMISC 000962338 3367_ $$2DCMI$$aSoftware 000962338 3367_ $$2DataCite$$aSoftware 000962338 3367_ $$2ORCID$$aOTHER 000962338 520__ $$aIn intensive care, an increasing number of therapies are based on interconnected medical devices, called medical cyber-physical systems or cyber-medical systems. These types of systems enable new therapies and the automation of existing ones. However, in the clinic, medical devices from different manufacturers with various protocols and interfaces are used and thus interoperability often requires auxiliary hardware and software. Additionally, medical systems are safety-critical and therefore the verification and validation of these systems are essential. However, the complexity of cyber-medical systems scales with the number of connected devices. Many state-of-the-art medical software platforms neglect verifiability. In this publication, we present the ASMO software platform, a service-oriented software architecture, as a decentralized and verifiable interoperability platform in intensive care. The abbreviation ASMO comes from the Greek expression for safe translation (άσϕαλής μετασχηματίζω). The ASMO software architecture allows for the creation of modular cyber-medical systems consisting of networked embedded nodes. In this software architecture, the system is distributed across multiple smaller nodes to reduce the complexity of each node without reducing the overall processing capabilities. The software architecture is based on a low-level real-time operating system, which improves the verifiability. The implementation of the software architecture provided with this publication is written in C and based on the real-time operating system ChibiOS. The main part of the architecture is the data provisioning layer, which includes a safety layer, a communication layer, and a data retention layer. The code for the data provisioning layer is generated from a communication matrix, which is a global listing of all possible measurements and internally generated values in the system and information about them. For communication between nodes, we use the Controller Area Network (CAN) bus or Ethernet with the Data Distribution Service (DDS). For the development of applications, the architecture supports model-based development using Matlab/Simulink. The publication repository contains the implementation of the ASMO software architecture and related tools. The repository contains the ASMO data provisioning layer, a Simulink model template and Matlab wrapper functions for model-based development, a Python code generator for the data provisioning layer and TOML files for the definition of the communication matrix. In addition, a slave-only implementation of the Precision Time Protocol (PTP) for microcontrollers is included and the built-on libraries are integrated as submodules. The first version of the software architecture was presented in the dissertation of André Stollenwerk and used the CAN bus for communication. In 2020, the real-time operating system and other used libraries were updated to version 2 of the software architecture. In addition, the architecture was extended for communication over Ethernet using DDS. During this time, the format of the communication matrix and code generator were also changed. 000962338 536__ $$0G:(GEPRIS)224967929$$aDFG project 224967929 - Kooperierende Regelung von extrakorporaler Lungenunterstützung und Beatmung für die Therapie des Lungenversagens (ECLA-VENT) (224967929)$$c224967929$$x0 000962338 536__ $$0G:(DE-82)BMBF-031L0134B$$aBMBF 031L0134B - Alternativmethoden - Verbund: AutoMock - Entwicklung eines vollautomatisierten in vitro Teststands (Mock Loop) - Ein künstlicher Kreislauf als Ersatzmethode zur Biokompatibilitätstestung von Membranoxygenatoren und zur Transplantationssimulation (BMBF-031L0134B)$$cBMBF-031L0134B$$fAA0285 Ersatzmethoden zum Tierversuch$$x1 000962338 536__ $$0G:(GEPRIS)447729163$$aDFG project G:(GEPRIS)447729163 - Sicherheits- und Automatisierungskonzepte für künstliche implantierbare Lungen - SmartLungControl (447729163)$$c447729163$$x2 000962338 536__ $$0G:(GEPRIS)313779459$$aDFG project G:(GEPRIS)313779459 - SPP 2014: Auf dem Weg zur implantierbaren Lunge (313779459)$$c313779459$$x3 000962338 7001_ $$0P:(DE-82)IDM05697$$aBerg, Frederik Julius$$b1$$urwth 000962338 7001_ $$0P:(DE-588)1201210097$$aOttersbach, Florian$$b2 000962338 7001_ $$0P:(DE-82)187210$$aKühn, Jan$$b3 000962338 7001_ $$0P:(DE-82)IDM04437$$aBuglowski, Mateusz$$b4$$urwth 000962338 7001_ $$0P:(DE-82)IDM06137$$aKowalewski, Stefan$$b5$$urwth 000962338 7001_ $$0P:(DE-82)IDM01350$$aStollenwerk, André$$b6$$urwth 000962338 7870_ $$0RWTH-2023-00139$$aStollenwerk, André et.al.$$b2.1$$dAachen, 2023$$iRelatedTo$$tASMO: a decentralized and verifiable interoperability platform in intensive care 000962338 7870_ $$0RWTH-CONV-144193$$aStollenwerk, André et.al.$$dAachen : Shaker, 2013$$iRelatedTo$$tEin modellbasiertes Sicherheitskonzept für die extrakorporale Lungenunterstützung 000962338 8564_ $$uhttps://git.rwth-aachen.de/informatik11/asmo-software/-/tags/V2.0 000962338 8564_ $$uhttps://publications.rwth-aachen.de/record/962338/files/Rechteeinraeumung_962338.pdf 000962338 8564_ $$uhttps://publications.rwth-aachen.de/record/962338/files/ASMO_Software.zip$$yOpenAccess 000962338 909CO $$ooai:publications.rwth-aachen.de:962338$$popenaire$$popen_access$$pdriver$$pVDB 000962338 9101_ $$0I:(DE-588b)36225-6$$6P:(DE-82)IDM05704$$aRWTH Aachen$$b0$$kRWTH 000962338 9101_ $$0I:(DE-588b)36225-6$$6P:(DE-82)IDM05697$$aRWTH Aachen$$b1$$kRWTH 000962338 9101_ $$0I:(DE-588b)36225-6$$6P:(DE-82)IDM04437$$aRWTH Aachen$$b4$$kRWTH 000962338 9101_ $$0I:(DE-588b)36225-6$$6P:(DE-82)IDM06137$$aRWTH Aachen$$b5$$kRWTH 000962338 9101_ $$0I:(DE-588b)36225-6$$6P:(DE-82)IDM01350$$aRWTH Aachen$$b6$$kRWTH 000962338 9141_ $$y2023 000962338 915__ $$0LIC:(DE-HGF)CCBYNC3$$2HGFVOC$$aCreative Commons Attribution-NonCommercial CC BY-NC 3.0 000962338 915__ $$0StatID:(DE-HGF)0510$$2StatID$$aOpenAccess 000962338 9201_ $$0I:(DE-82)122810_20140620$$k122810$$lLehrstuhl für Informatik 11 (Embedded Software)$$x0 000962338 9201_ $$0I:(DE-82)120000_20140620$$k120000$$lFachgruppe Informatik$$x1 000962338 961__ $$c2023-08-01T11:37:12.187851$$x2023-07-27T12:38:54.390483$$z2023-08-01T11:37:12.187851 000962338 9801_ $$aFullTexts 000962338 980__ $$aI:(DE-82)120000_20140620 000962338 980__ $$aI:(DE-82)122810_20140620 000962338 980__ $$aUNRESTRICTED 000962338 980__ $$aVDB 000962338 980__ $$asware