Teaching cyber-physical systems: a programming approach

  • Authors:
  • Kerstin Bauer;Klaus Schneider

  • Affiliations:
  • University of Kaiserslautern, Germany;University of Kaiserslautern, Germany

  • Venue:
  • Proceedings of the Workshop on Embedded and Cyber-Physical Systems Education
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

One major problem for the design of cyber-physical systems is the understanding of problems that can arise from the interaction of discrete and continuous behaviors, i.e., the behaviors of hybrid systems whose discrete states enable attached differential equations. Tools like Simulink, Labview, Scicos, and Dymola are powerful choices for the simulation of such systems. However, the modeling capabilities of these tools are limited to a composition of given blackbox modules, so that they miss the notion of typical programs. To make use of algorithmic models, we recently proposed an extension of the synchronous programming language Quartz to model, simulate, and verify cyber-physical systems. We developed an operational semantics of this language that formally specifies a simulator, and we also defined a translation to hybrid state transition systems for the formal verification of these systems. In this paper, we describe how our Quartz language and the related Averest toolset can be used for teaching cyber-physical systems. We present the concept of an introductory course for modeling, simulation, and verification of these systems in a Master program in Computer Science. The goal of the lecture is to provide a broad overview to introduce the students to the main research areas in this field. Besides a theoretical foundation, we emphasize the combination of lecture courses with practical exercises using our Averest tools for simulation and verification. This way, we show our students several effects that may occur in the design of cyber-physical systems like zeno behaviors, urgent transitions, real-time requirements, etc.