Architectural Software-Hardware Co-Modeling a Real-World Cyber-Physical System: Arduino-Based ArduPilot Case

The study of good practices of architectural organization software systems for real-world cyber-physical systems (CPS) is possible to conduct on solutions with open-source code, which are developed by large communities of enthusiasts. Such solutions have tested many times on real devices in various...

Descripción completa

Guardado en:
Detalles Bibliográficos
Autor principal: Sergey Staroletov
Formato: article
Lenguaje:EN
Publicado: FRUCT 2021
Materias:
apm
cps
Acceso en línea:https://doaj.org/article/ed59bbdf5ba64b098ee12544faeee524
Etiquetas: Agregar Etiqueta
Sin Etiquetas, Sea el primero en etiquetar este registro!
id oai:doaj.org-article:ed59bbdf5ba64b098ee12544faeee524
record_format dspace
spelling oai:doaj.org-article:ed59bbdf5ba64b098ee12544faeee5242021-11-20T15:59:33ZArchitectural Software-Hardware Co-Modeling a Real-World Cyber-Physical System: Arduino-Based ArduPilot Case2305-72542343-073710.23919/FRUCT53335.2021.9599962https://doaj.org/article/ed59bbdf5ba64b098ee12544faeee5242021-10-01T00:00:00Zhttps://www.fruct.org/publications/fruct30/files/Sta.pdfhttps://doaj.org/toc/2305-7254https://doaj.org/toc/2343-0737The study of good practices of architectural organization software systems for real-world cyber-physical systems (CPS) is possible to conduct on solutions with open-source code, which are developed by large communities of enthusiasts. Such solutions have tested many times on real devices in various natural environments. The construction of various models using the program code allows us to understand stable architectural solutions, to present them in a graphical form and take a regard on proper organization. While UML models are suitable to represent relations between classes and show software design patters, to create reliable software for CPS one should study patterns on organization such systems that take into account both software and hardware parts. AADL (Architecture Analysis & Design Language) aims to establish a clear, generally accepted semantics to express architectural models of interconnected hardware components as well as system software structure. Using the semantics, we can easily obtain graphical representations of the models to apply in the hardware design process. Also, having a formal architectural description, we can validate some valuable system properties. In this paper, we create extended models for hardware parts and software components of a cheap reprogrammable controller for RC-based DIY systems based on the ArduPilot Mega board. The models are fully based on the actual open-source code, existing sample models and reference datasheets. We review most of the hardware and software parts, discuss the scheduler, all running tasks and their relations. Then we discuss our solution with interconnected distributed controllers using SPI and CAN bus connection.Sergey StaroletovFRUCTarticleapmarduinoschedulingaadlcpsTelecommunicationTK5101-6720ENProceedings of the XXth Conference of Open Innovations Association FRUCT, Vol 30, Iss 1, Pp 267-278 (2021)
institution DOAJ
collection DOAJ
language EN
topic apm
arduino
scheduling
aadl
cps
Telecommunication
TK5101-6720
spellingShingle apm
arduino
scheduling
aadl
cps
Telecommunication
TK5101-6720
Sergey Staroletov
Architectural Software-Hardware Co-Modeling a Real-World Cyber-Physical System: Arduino-Based ArduPilot Case
description The study of good practices of architectural organization software systems for real-world cyber-physical systems (CPS) is possible to conduct on solutions with open-source code, which are developed by large communities of enthusiasts. Such solutions have tested many times on real devices in various natural environments. The construction of various models using the program code allows us to understand stable architectural solutions, to present them in a graphical form and take a regard on proper organization. While UML models are suitable to represent relations between classes and show software design patters, to create reliable software for CPS one should study patterns on organization such systems that take into account both software and hardware parts. AADL (Architecture Analysis & Design Language) aims to establish a clear, generally accepted semantics to express architectural models of interconnected hardware components as well as system software structure. Using the semantics, we can easily obtain graphical representations of the models to apply in the hardware design process. Also, having a formal architectural description, we can validate some valuable system properties. In this paper, we create extended models for hardware parts and software components of a cheap reprogrammable controller for RC-based DIY systems based on the ArduPilot Mega board. The models are fully based on the actual open-source code, existing sample models and reference datasheets. We review most of the hardware and software parts, discuss the scheduler, all running tasks and their relations. Then we discuss our solution with interconnected distributed controllers using SPI and CAN bus connection.
format article
author Sergey Staroletov
author_facet Sergey Staroletov
author_sort Sergey Staroletov
title Architectural Software-Hardware Co-Modeling a Real-World Cyber-Physical System: Arduino-Based ArduPilot Case
title_short Architectural Software-Hardware Co-Modeling a Real-World Cyber-Physical System: Arduino-Based ArduPilot Case
title_full Architectural Software-Hardware Co-Modeling a Real-World Cyber-Physical System: Arduino-Based ArduPilot Case
title_fullStr Architectural Software-Hardware Co-Modeling a Real-World Cyber-Physical System: Arduino-Based ArduPilot Case
title_full_unstemmed Architectural Software-Hardware Co-Modeling a Real-World Cyber-Physical System: Arduino-Based ArduPilot Case
title_sort architectural software-hardware co-modeling a real-world cyber-physical system: arduino-based ardupilot case
publisher FRUCT
publishDate 2021
url https://doaj.org/article/ed59bbdf5ba64b098ee12544faeee524
work_keys_str_mv AT sergeystaroletov architecturalsoftwarehardwarecomodelingarealworldcyberphysicalsystemarduinobasedardupilotcase
_version_ 1718419457995440128