Course syllabus for Model-based development of cyber-physical systems

Course syllabus adopted 2023-02-10 by Head of Programme (or corresponding).

Overview

  • Swedish nameModellbaserad utveckling av cyberfysiska system
  • CodeSSY191
  • Credits7.5 Credits
  • OwnerMPSYS
  • Education cycleSecond-cycle
  • Main field of studyAutomation and Mechatronics Engineering, Electrical Engineering
  • DepartmentELECTRICAL ENGINEERING
  • GradingTH - Pass with distinction (5), Pass with credit (4), Pass (3), Fail

Course round 1

  • Teaching language English
  • Application code 35131
  • Block schedule
  • Open for exchange studentsYes

Credit distribution

0118 Project 4 c
Grading: TH
0 c0 c0 c4 c0 c0 c
0218 Written and oral assignments 2 c
Grading: UG
0 c0 c0 c2 c0 c0 c
0318 Project 1.5 c
Grading: TH
0 c0 c0 c1.5 c0 c0 c

In programmes

Examiner

Go to coursepage (Opens in new tab)

Eligibility

General entry requirements for Master's level (second cycle)
Applicants enrolled in a programme at Chalmers where the course is included in the study programme are exempted from fulfilling the requirements above.

Specific entry requirements

English 6 (or by other approved means with the equivalent proficiency level)
Applicants enrolled in a programme at Chalmers where the course is included in the study programme are exempted from fulfilling the requirements above.

Course specific prerequisites

  • Requirements: Linear Control System Design (SSY285) or similar and Modeling and Simulation (ESS101) or similar.
  • Recommended: Discrete Event Systems (SSY165) or similar.

Aim

The overall aim is to introduce the principles of design, specification, modelling, analysis and implementation of embedded control systems. Embedded control systems consist of distributed computing devices that interact with each other and the physical world via sensors and actuators. Such systems are everywhere from vehicles to medical devices, to factories and smart houses. These systems are increasingly complex, and structured approaches for developing these systems are needed. The systems are often safety critical, and thus it is desirable to establish that the system works correctly already in the design phases. A model-based approach together with formal methods is increasingly adopted by industry to catch errors as early as possible and consequently ensure higher reliability. In this course, we introduce a structured approach to design, specify, model and analyse based on mathematically well-defined models and algorithms. The course also covers realisation of control functions by using microprocessors and real-time operating systems.

Learning outcomes (after completion of the course the student should be able to)

Introduction

  • Describe what characterize a cyber-physical systems.
  • Describe the development process for cyber-physical systems

Modeling and simulation

  • Describe how differential-algebraic equations can be used to build models of mechanical and electrical systems.
  • Demonstrate how to build mathematical models of systems that involve both continuous and discrete dynamics, i.e. hybrid systems.
  • Describe systems where neither continuous dynamics nor discrete dynamics are sufficient to accurately describe the behavior.
  • Demonstrate how to build models of hybrid systems using the Modelica/Simscape language that can be used to simulate the system behavior.
  • Describe how Zeno-behavior might occur and how it might affect the simulation of hybrid systems.
  • Describe how simulation models can be modified to avoid Zeno-behavior.
  • Describe challenges with analyzing stability of hybrid systems.
  • Demonstrate the skills by applying the ability to model and simulate the dynamics of a hybrid electro-mechanical system.

Control system design

  • Demonstrate the ability to build discrete-time dynamic models from continuous-time dynamic models.
  • Demonstrate the ability to design PID-controllers and Linear-Quadratic Controllers for electro-mechanical systems.
  • Describe how anti-windup techniques can be used to handle actuator saturation.
  • Describe how bumpless-transfer can be used to switch between manual and automatic modes.

Realization of controllers

  • Demonstrate how C can be used to interact with hardware using interrupts.
  • Demonstrate how memory management is handled in C.
  • Demonstrate the ability to implement PID-and state-feedback controllers in C.
  • Demonstrate the ability to implement state-machines in C.
  • Demonstrate the ability to implement hybrid controllers in C.

Real-Time Operating Systems

  • Describe the general concepts of a real-time operating system.
  • Describe what characterize a process.
  • Describe what characterize a thread.
  • Describe why mutual exclusion between multiple threads is necessary to avoid race conditions and how it can be achieved using mutual exclusion locks.
  • Explain how mutual exclusion might lead to deadlock situations.
  • Explain how to structure access to mutual exclusion locks in multi-threaded programs such that deadlocks might be avoided.
  • Describe the differences between off-line and on-line schedulers and situations where it might be appropriate to use them.
  • Describe how a static order scheduler works and when it might be appropriate to use it.
  • Define what characterize a preemptive scheduler.
  • Describe how the priority of a task influences the decisions taken by the scheduler.
  • Define times (release time, response time, finish time, and deadline) associated with the execution of a task.
  • Ability to apply and analyze behavior of schedules set by the rate and deadline monotonic principle. Explain under which conditions is the schedule optimal. Apply the sufficient and exact condition for schedulability and calculation of response times.
  • Explain under what conditions priority inversion might happen. Explain how the priority inheritance protocol and the priority ceiling protocol can solve the priority inversion problem.
  • Ability to apply and analyze the earliest deadline first principle.
  • Evaluate the relative merits of using a synchronous-reactive paradigm vs. a thread-based approach to model concurrent problems.

Specification, Testing and Verification

  • Able to implement specifications using linear temporal logic.
  • Able to implement specifications using signal temporal logic.
  • Describe how model-based testing can be used to test hybrid systems.
  • Describe the limitations of model-checking approaches
Ethics
  • Describe and analyze possibilities, threats and ethical issues of cyber-physical systems to the public society. 
  • Show ability to do judgements with respect to relevant ethical aspects.
  • Show awareness of ethical aspects of research and development:
  • Understand what is expected in the professional role in terms of attitude, ethics, integrity, and responsibility;
  • Reflect on the opportunities and challenges of working in groups based on equality, diversity, and inclusion.

Content

See learning outcomes.

Organisation

Teaching is in the form of projects, lectures and assignments.

Literature

  1. Rajeev Alur. Principles of Cyber-Physical Systems. MIT Press, 2015. ISBN: 9780262029117 
  2. Peter Corke, Robotics, Vision and Control, Springer, 2011. ISBN: 978-3-642-20144-8
  3. C for Java Programmers, J. Maassen. 
  4. Distributed articles

Examination including compulsory elements

1. Project in model-based development of cyber-physical systems.
2. Shorter on/off-line exams (In Swedish: Duggor) on theory behind model-based development of cyber-physical systems.
2. Project work on ethics and the engineers role in society.

The course examiner may assess individual students in other ways than what is stated above if there are special reasons for doing so, for example if a student has a decision from Chalmers on educational support due to disability.