Platforms for distributed embedded real-time systems
The platform is the foundation for development and integration of component-based embedded systems. It consists of platform services, which serve as the baseline for the development of components. Using the platform services, the component developer establishes the local application services of a component. Component developers need a starting point for realizing components. The platform offers a foundation on top of which application-specific functionality can be established. This foundation consists of generic services, which are required to be useful in many specific components. Although most of these services could also be realized within the components, their availability in the platform simplifies the component development. As an example, consider a sensor component that periodically samples the lateral acceleration in a car and produces a message with this measurement. The local application service of this component would be ’acceleration measurement’. An example of a platform service that can be used to construct this application service would be a time service. Such a time service can provide the periodic sampling points (e.g., with respect to a global time base). Using platform services, recurring problems are solved once-and-for-all in the platform without the need to redevelop them in every component.
Besides serving as the baseline for the establishment of local application services of components, the platform services are an instrument for emergence. The platform services enable the emergence from local application services of the components to global application services of the system.
Therefore, the platform offers mechanisms to compose the overall system out of the independently developed components. These mechanisms include communication services enabling the exchange of information between components. In addition, other services can serve as a useful basis for integration, e.g., fault isolation services that prevent component failures from propagating between components or clock synchronization services to establish a common notion of time.
The expertise includes:
Real-time networks (e.g., Time-Triggered Ethernet, TSN, CAN, ...)
Real-time operating systems (e.g., FreeRTOS, Real-Time Linux, ...)
Real-time middleware (e.g., AUTOSAR, RabbitMQ, ...)
Processors and FPGAs (e.g., Xilinx ZYNQ SoC, ARM, ...)