Cyber-physical systems (CPS) combine physical and embedded information processing components such that the resulting system has novel capabilities that could not be achieved by either the physical or the computational entity alone (more information about CPS are at the Foundation side). In order to address this challenge, the System Analysis and Modeling Group at the Hasso Plattner Institute (HPI) has established a laboratory where cyber-physical systems can be studied for research as well as teaching purposes. The basic example for a cyber-physical system studied in the laboratory are autonomous vehicles, which need to interact with there environment in real-time, being able to cooperate in a coordinate fashion to solve a complex overall task, usually without a global coordinator. In the laboratory, a prototype system consisting of autonomous robots is employed to study the challenges of the model-driven development of CPS as a concrete instance for the more general case of autonomous vehicles.
The tight coupling of CPS enables new and more advanced solutions, e.g., the distance between autonomous vehicles (robots) could be reduced due to cooperation scenarios. However, the developers must provide dependability requirements even though the robots operate in a more interconnected way. Therefore, a development approach that completely separates the physical form the cyber world (information processing and networking) is no longer sufficient.
Laboratory and Case Studies
Based on the research prototypes, we currently address the following research areas:
Constructing systems from components is a fundamental engineering activity, and it is the hallmark of a mature engineering discipline. Component-based engineering of software systems is in industrial practice today, but its application in CPS is limited, where a key property is heterogeneity, i.e. the need for heterogeneous composition. Compositional theories that are applicable in CPS and the conflict between optimizations that can be realized due to the tighter coupling and the need for modularity are major challenges. System integration is an activity that is performed by the industry, but badly needs a scientific and computational foundation. For CPS the problem is especially difficult: physical system design and embedded information system design must yield and integrated product.
Advanced engineering tools made the unprecedented growth possible in complexity in the semiconductor industry, but no such tools exist yet for CPS. Model-based system development is a step in the right direction, but it has to be specialized for the needs of CPS, where physical and computational aspects must be co-designed. In the laboratory, we further study the model-driven development of cyber-physical systems taking the industry standard AUTOSAR for software architecture and runtime systems for automotive systems as starting point. For this purpose, we implemented a tool-chain allowing to develop software for a mobile robot according to the AUTOSAR standard. A set of professional tools have been integrated into this tool-chain as MATLAB/Simulink, SystemDesk or TargetLink for supporting the model-based development of software for mobile robots. The tool-chain supports typical development steps as MiL (Model-in-the- Loop) and SiL (Software-in-the-Loop) test phases. For more information about the different development steps compare our publications here. Furthermore, the setting of the Lab is used to evaluate ongoing research in the domain of embedded real-time systems but also for teaching students the development, validation and verification of such systems. Particular attention is given to so called non-functional system properties as in the case of timing.
Besides advanced modeling techniques to specify the cooperation of multiple individuals or subsystems, also the specification and execution of possible reconfiguration of the system architecture (e.g., in case of failures) of the individuals is studied. For the resulting models, automatic code generation as well as synthesis of optimized realizations are considered. Finally, we explore how the required dependability guarantees for the resulting complex and sometimes even emergent behavior can be provided by analyzing the models and testing the systems.
Due to the increasing range of applications of CPS more and more cases arise, where it is required or at least strongly desired to integrate software parts with varying timing requirements into one application being executed on the same HW node. As an example, consider a typical modern car where already a huge number of electronic control units (ECUs) is included (up to 100 and more ECUs per car), leading to several problems as increasing HW costs and high (electric) power consumption. Another example requires the closely combination of different software parts with varying real-time constraints as in our evaluation example of mobile and autonomous robotic systems. Such robotic systems often need to handle different tasks, as navigation and obstacle avoidance. While obstacle avoidance is an example, where real-time constraints need to be handled rigorously, navigation and related activities like map creation can often rarely be executed under hard real-time constraints. Nevertheless, both functionalities use common elements as sensors and actuators for measuring obstacles or setting the drive speed. In this context, we investigate how such hard and soft real-time software parts can be combined on the same ECU and integrated without jeopardizing crucial performance requirements and fullfilling timing behavior constraints. Furthermore, we investigate how this integration can be applied on existing frameworks like AUTOSAR. As a running example, we use the Robotino robot.
The System Analysis and Modeling group of Prof. Dr. Holger Giese at the Hasso-Plattner-Institute provides events on topics like embedded systems, where the Robotino robot is used as an application example for the development of complex embedded real-time systems. Lectures, seminars and projects are provided where students are able to gain practical experience concerning the development of such systems.
These former topics are further complicated by the fact that cyber-physical systems require that the engineers can give proper guarantees. CPS are often safety-critical (e.g., antilock braking systems, automated flight control systems, embedded medical devices). Therefore, they have to provide necessary dependability guarantees.
Behind this more practical research questions, there also exist a number of more fundamental and theoretical research questions that we want to address:
- What are theoretical foundations required for designing the CPS? What theories are needed for composing such systems from physical and computational components? What are the fundamental scientific principles for system integration and how can these be used in a disciplined engineering process?
- What are the design paradigms, design languages, and tools needed for CPS? How can models and multi- paradigm models foster the development of CPS?
- How can a CPS be certified or even verified with respect to safety requirements in an effective way? How to address security and privacy issues in CPS? How are traditional concepts of information security and privacy applied in CPS?
You find our publications for this research area at the official project website.