IECE/ICSI 553/453: Cyber-Physical Systems - Fall 2021
Course Description

This course introduces students to the basics of design, model, analysis, and control for embedded systems operating in real time. Students learn how to combine physical processes with computation. The course has a strong laboratory component, with emphasis on a semester-long project.

Topics expected to be covered include the following:
1. Models of computation: finite state machines, threads, ordinary differential equations, hybrid systems, actors, discrete-events, data flow
2. Basic analysis, control, and systems simulation: Bisimulations, reachability analysis, controller synthesis, approximating continuous-time systems.
3. Interfacing with the physical world: sensor/actuator modeling and calibration, concurrency in dealing with multiple real-time streams, handling numerical imprecision in software
4. Mapping to embedded platforms: real-time operating systems, execution time analysis, scheduling, concurrency
5. Distributed embedded systems: Protocol design, predictable networking, security

Prerequisites:
I ECE 371: Signals and Systems and I ECE/CSI 333: Computer Organization
The students are expected to be comfortable in Unix/Linux environment.

Lecture:
         Time:
Monday and Wednesday, 1:10PM-2:30PM
         Location: Catskill 160


Lab:
         Time:
Friday, 11:40AM-02:30PM
         Location: ES 19


Office Hours:
         Time:
Tuesday and Thursday, 9:30-10:30AM and also by appointment
         Location: Virtual over Zoom, link posted in Blackboard



Instructor Teaching Assistant
Prof. Dola Saha
Prof. Dola Saha
Email: dsaha AT albany DOT edu
Xue Wei
Xue Wei
Email: xwei4 AT albany DOT edu

Blackboard: IECE 553/453: Cyber-Physical Systems
Books

Required: Edward A. Lee and Sanjit A. Seshia, "Introduction to Embedded Systems, A Cyber-Physical Systems Approach", Second Edition, MIT Press, ISBN 978-0-262-53381-2, 2017, available for download.

Highly Recommended: Derek Molloy, "Exploring Raspberry Pi: Interfacing to the Real World with Embedded Linux", Wiley, ISBN 978-1-119-18868-1, 2016.

Further Reference:

  1. Rajeev Alur, "Principles of Cyber-Physical Systems", MIT Press
  2. Danda B. Rawat, Joel J.P.C. Rodrigues, Ivan Stojmenovic, "Cyber-Physical Systems: From Theory to Practice", CRC Press
Grading Information
  1. Labs (Pre and post-completion) - 10%
  2. Homeworks - 15%
  3. Midterm - 25%
  4. Final Exam - 25%
  5. Project Proposal - 2%
  6. Midterm Project Assessment - 8%
  7. Final Project - 15% [Model: 20%, Design - 20%, Analysis - 20%, Written Report - 20%, Final Presentation - 20%]
Grading Scale
A: 100-95 points A-: 94-90 points
B+: 89-87 points B: 86-84 points B-: 83-80 points 
C+: 79-77 points C: 76-73 points C-: 72-70 points
D+: 69-67 points D: 66-63 points D-: 62-60 points
E: 59 points and below
Policies

Assignments: Assignments will be posted in Blackboard. No late assignments will be accepted. All assignments are due by 11:59PM on the due date in Blackboard (unless otherwise specified). Any re-grading requests will be considered up to 5 business days after posting the grades for the corresponding assignment. No re-grading requests will be entertained after the 5-day period has passed. You are not supposed to collaborate on homework assignments.


Academic Honesty and Overall Regulations: Every student has the responsibility to become familiar with the standards of academic integrity at the University. Plagiarism and any act of academic dishonesty will not be tolerated and will be reported to the Graduate/Undergraduate Education in UAlbany. Read the Standards of Academic Integrity and Policies in the Undergraduate Bulletin or Graduate Bulletin.


Lab
Hardware: We will use Raspberry Pi for the lab.
  1. Raspberry Pi Kit: You may loan the Raspberry Pi kit from the department.
  2. Sensor Kit: You will have to purchase this sensor kit either from Amazon or from Adeept) websites.
You will have to setup this kit before the lab starts.

Software: We will use C/C++, bash script and Python in Raspbian OS.


Lab Manual: Use Lab Manual in the lab. Use BCM2837 Datasheet for reference.


Project

The project is a semester long work based on the materials discussed in this course. Meet with the instructor to discuss the scope and milestones of the project during the office hours. The project constitutes 25% of your final grade, 2% for proposal submission, 8% for midterm project report and 15% for final submission. It is expected that you will use Raspberry Pi and a set of sensors and actuators for your project from the kit that you purchased. The project should have model, design and analysis component, showcasing a Cyber-Physical Systems. The final in-class presentation should clearly clarify your contribution in the project. Both the project proposal and final submission should be written in IEEE Conference format. Project proposal should not exceed 2 pages, while the final submission should not exceed 5 pages.
NOTE: Sample Project Report from last year and the Final Presentation.


Course Calendar

Subject to change as per travel schedule, material progresses and unforseen events

Week Date Lecture Topic Lab Topic Other Topic
1 Aug 23Introduction
Aug 25Input and Output
Use Lab Manual by yourself to setup the platform for the lab
Aug 27 Setup the Raspberry Pi in ES 19
2 Aug 30
Sep 1 Model Based Design
Sep 3 Lab 1: Basic I/O: Pseudo File System.
3 Sep 6 Labor Day, no classes
Sep 8 Dynamic Models Submit Project Title, Short Scope of Project
Sep 10 Lab 2: Analog Output (PWM)
4 Sep 13
Sep 15 Discrete Dynamics
Sep 17 Lab 3: Analog Input
DHT 11 Manual
5 Sep 20 Sensors and Actuators
Sep 22
Sep 24 Lab 4: Stepper Motor
6 Sep 27
Sep 29 Communication
Oct 1 Lab 5: Matrix Keyboard and 7-segment Display
7 Oct 4
Oct 6
Oct 8 Lab 6: I2C (ADXL 345)
8 Oct 11 Fall Break, no classes
Oct 13 Midterm - Closed Book, closed notes, in-class exam.
Oct 15 Work on the project for Midterm
9 Oct 18 Architecture
Oct 20
Oct 22 Midterm SHORT Project Presentation Lab Project Proposal Due
(use IEEE conference style in LaTeX, max 2 pages)
10 Oct 25
Oct 27 Feedback Control
Oct 29 Lab 8: LCD Display (Manual)
11 Nov 1 Multitasking
Nov 3
Nov 5 Lab 9: Servo Motor
12 Nov 8 Scheduling
Nov 10
Nov 12 Lab 10: Work on Final Project
13 Nov 15 Composite Models
Nov 17
Nov 19 Lab 11: Work on Final Project
13 Nov 22 Deadline-based Scheduling
Nov 24 Thanksgiving Break, no classes
Nov 26 Thanksgiving Break, no classes
13 Nov 29 Deadline-based Scheduling continued
Dec 1
Dec 3 Lab 12: Work on Final Project
14 Dec 6 Final Project Presentation
Dec 14Final Examination (1:00-3:00pm)
Closed Book, closed notes, in-class written exam.
Final Project Report Due
(use IEEE conference style in LaTeX, max 5 pages)