CS683: Embedded and Cyber-Physical Systems

 

Credits: 3-0-0-0-9

 

Instructor:

Dr. Indranil Saha

 

· Major, Measurable Learning Objectives

 

A cyber-physical system is a collection of interconnected computing devices interacting with the physical world. The computing devices together constitute a cyber system that regulates the behavior of the physical world. The cyber system closely monitors the physical world through sensors, computes required control laws based on the current state of the physical world, and applies the computed control law to the physical world through actuators. The sensors, the controllers, and the actuators are developed on top of an embedded platform. Thus, the cyber component of a cyber-physical system is often termed as an embedded control system.

 

Developing an embedded control system requires the understanding of the physical world with which the system has to interact. The understanding of the physical world is captured in a faithful model that is used for synthesizing feedback control laws using control theoretic methods. Implementing the feedback control law on the embedded computing platform requires addressing the challenges of embedded computing, for example, the availability of limited resources in terms of computing power and memory, stringent timing requirements, and so on. Moreover, most cyber-physical systems are safety-critical. Thus, it is essential that the correctness of such systems is established through the use of formal verification techniques. 

 

The course will cover the modeling, implementation and verification issues related to developing a cyber-physical system. Through the discussion of the implementation of an embedded control system, the course will cover the basic design principles of an embedded system.

 

· Prerequisites and Co-requisites

 

The course does not have any formal prerequisites. The students are expected to have mathematical maturity of the level of an undergraduate degree in engineering.However, some familiarity with finite state machines and ordinary differential equations, and programming experience will be helpful.

 

· Texts and Special Teaching Aids

 

Course notes, lecture slides, man pages, and other documentations will be provided to students by

the instructor. Self-study would be an important component of this course. Useful video tutorials will also be provided to students for self-learning. Project component is very important in this course.   

 

· Syllabus

 

The students will be exposed to the following topics:

 

Modeling Dynamic Behaviors and Control: 

  • Continuous Dynamics
  • Feedback Control, 
  • Discrete Systems
  • Hybrid Systems, 
  • Composition of State Machines
  • Concurrent Models of Computation

 

Design and Implementation:

  • Sensors and Actuators
  • Embedded Processors
  • Memory Architectures
  • Input and Output Interface
  • Multitasking
  • Scheduling

 

Analysis and Verification: 

  • Invariants and Temporal Logic
  • Equivalence and Refinement
  • Rechability Analysis and Model Checking
  • Timing Analysis
  • Embedded Security

 

The course will consist of 3 hours of lectures per week, homework assignments, and a course project.

 

· Grading

 

Semester grades will be based on the following weights.

  • HomeWorks                     20% (4 at-home exercises)
  • Midterm Exam                 20%
  • Final Exam                         30%
  • Course Project                  30%

 

Semester grades will be determined after all work is completed and graded. Point ranges for letter grades will be based on several factors, including absolute and relative performance. Letter grades will not be based on a fixed, predetermined curve or point range.

 

Coverage of Topics 

Topics

Hours

Course Introduction

1

Continuous Dynamics

1

Feedback Control

2

Discrete Systems

1

Hybrid Systems

1

Composition of State Machines

1

Concurrent Models of Computations 

1

Sensors and Actuators

1

Embedded Processors

1

Memory Architectures

1

Input and Output Interface

1

Multi-tasking

1

Scheduling

1.5

Invariants and Temporal Logic

1

Equivalence and Refinement

1

Reachability Analysis and Model Checking

1

Timing Analysis

1

Embedded Security

1.5

Total

20 hours