Teaching Embedded Systems to Berkeley Undergraduates EECS124 at UC Berkeley co-developed by Edward A. Lee Sanjit A. Seshia Claire J. Tomlin

Slides:



Advertisements
Similar presentations
Corso di Sistemi in Tempo Reale Laurea in Ingegneria dell‘Automazione a.a Paolo Pagano
Advertisements

Real-time Systems Lab, Computer Science and Engineering, ASU Please Standby Galileo Tech Talk at ASU Will Begin Shortly.
LabVIEW 7.1 Tutorial. Measurement Lab. MECH262-MECH261 Imran Haider Malik January 16, 2006.
Towards Lab-Based MOOCs: Cyber-Physical Systems, Robotics, and Beyond Garvit Juniwal, Alexandre Donzé, Sanjit A. Seshia UC Berkeley Jeff C. Jensen National.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
February 21, 2008 Center for Hybrid and Embedded Software Systems Cyber-Physical Systems (CPS): Orchestrating networked.
MotoHawk Training Model-Based Design of Embedded Systems.
Presenters: Adam Andy Andy Rachel
Introducing Embedded Systems: A Cyber- Physical Approach Edward A. Lee Robert S. Pepper Distinguished Professor UC Berkeley Invited Keynote Talk Workshop.
Overview of PTIDES Project
2/11/2010 BEARS 2010 On PTIDES Programming Model John Eidson Jeff C. Jensen Edward A. Lee Slobodan Matic Jia Zou PtidyOS.
Ee392n - Spring 2011 Stanford University Intelligent Energy Systems 1 Lecture 3 Intelligent Energy Systems: Control and Monitoring Basics Dimitry Gorinevsky.
PTIDES: Programming Temporally Integrated Distributed Embedded Systems Yang Zhao, EECS, UC Berkeley Edward A. Lee, EECS, UC Berkeley Jie Liu, Microsoft.
Berkeley, CA, March 12, 2002 Modal Models in Vehicle-Vehicle Coordination Control Xiaojun Liu The Ptolemy Group EECS Department, UC Berkeley.
Integrated Design and Analysis Tools for Software-Based Control Systems Shankar Sastry (PI) Tom Henzinger Edward Lee University of California, Berkeley.
NSF Foundations of Hybrid and Embedded Software Systems UC Berkeley: Chess Vanderbilt University: ISIS University of Memphis: MSI A New System Science.
Chess Review October 4, 2006 Alexandria, VA Edited and presented by Educating a New Generation of Students in Embedded Systems Edward A. Lee Chair of EECS,
National Instruments LabVIEW and Data Acquisition: Applications for FIRST Danny Diaz, National Instruments.
February 21, 2008 Center for Hybrid and Embedded Software Systems Organization Board of Directors Edward A. Lee, UC Berkeley.
February 11, 2010 Center for Hybrid and Embedded Software Systems Ptolemy II - Heterogeneous Concurrent Modeling and Design.
April 16, 2009 Center for Hybrid and Embedded Software Systems PtidyOS: An Operating System based on the PTIDES Programming.
Causality Interface  Declares the dependency that output events have on input events.  D is an ordered set associated with the min ( ) and plus ( ) operators.
Component-Based Design of Embedded Control Systems Luca Dealfaro Chamberlain Fong Tom Henzinger Christopher Hylands John Koo Edward A. Lee Jie Liu Xiaojun.
Chess Review November 21, 2005 Berkeley, CA Edited and presented by A New Course in Hybrid and Embedded Systems Claire J. Tomlin UC Berkeley.
Heterogeneous Modeling and Design in Ptolemy II Johan Eker UC Berkeley with material courtesy of Edward Lee and the Ptolemy group ECE Seminar Series, Carnegie.
Chess Review May 11, 2005 Berkeley, CA Composable Code Generation for Distributed Giotto Tom Henzinger Christoph Kirsch Slobodan Matic.
February 23, 2012 Center for Hybrid and Embedded Software Systems Organization Board of Directors Edward A. Lee, EECS Thomas.
REAL-TIME SOFTWARE SYSTEMS DEVELOPMENT Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
February 11, 2010 Center for Hybrid and Embedded Software Systems Cyber-Physical Systems (CPS): Orchestrating networked.
February 21, 2008 Center for Hybrid and Embedded Software Systems Mapping A Timed Functional Specification to a Precision.
NSF Foundations of Hybrid and Embedded Software Systems UC Berkeley: Chess Vanderbilt University: ISIS University of Memphis: MSI A New System Science.
SEC PI Meeting Annapolis, May 8-9, 2001 Component-Based Design of Embedded Control Systems Edward A. Lee & Jie Liu UC Berkeley with thanks to the entire.
7th Biennial Ptolemy Miniconference Berkeley, CA February 13, 2007 PTIDES: A Programming Model for Time- Synchronized Distributed Real-time Systems Yang.
Center for Hybrid and Embedded Software Systems Jonathan Sprinkle Executive Director, CHESS Center for Hybrid and Embedded Software Systems UC Berkeley.
Chess Review October 4, 2006 Alexandria, VA Embedded Systems Education: Vanderbilt Edited and Presented by Janos Sztipanovits ISIS, Vanderbilt University.
MOBIES Project Progress Report Engine Throttle Controller Design Using Multiple Models of Computation Edward Lee Haiyang Zheng with thanks to Ptolemy Group.
Department of Electrical Engineering and Computer Sciences University of California at Berkeley The Ptolemy II Framework for Visual Languages Xiaojun Liu.
EMBEDDED SOFTWARE Team victorious Team Victorious.
© Siemens AG, CT SE 1, Dr. A. Ulrich C O R P O R A T E T E C H N O L O G Y Research at Siemens CT SE Software & Engineering Development Techniques.
On the relation between software development and control function development in automotive embedded systems Stefan Kowalewski Embedded Software Laboratory.
REAL-TIME SOFTWARE SYSTEMS DEVELOPMENT Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Designing a Multi-Disciplinary Hybrid Vehicle Systems Course Curriculum Suitable for Multiple Departments Dr. Vincent Winstead Assistant Professor Minnesota.
CS4730 Real-Time Systems and Modeling Fall 2010 José M. Garrido Department of Computer Science & Information Systems Kennesaw State University.
Hybrid Systems Concurrent Models of Computation EEN 417 Fall 2013.
Presenters: Adam Andy Andy
Tufts University School Of Engineering Tufts Wireless Laboratory TWL Direction Almir Davis 09/28/20091.
Motions for Permanent Undergraduate Course Numbers Brian L. Evans On Behalf of the ECE Curriculum Committee September 21, 2015.
University of Catania Computer Engineering Department 1 Educational tools for complex topics: a case study for Network Based Control Systems Prof. Orazio.
ISU Science Center : Phase 3 : Dec Speedometer Station This station matches two areas of study into one cohesive system. Current will be induced.
REAL-TIME SOFTWARE SYSTEMS DEVELOPMENT Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Haptic Interfaces and Force-Control Robotic Application in Medical and Industrial Contexts Applicants Prof. Doo Yong Lee, KAIST Prof. Rolf Johansson,
A Multidisciplinary Approach for Using Robotics in Engineering Education Jerry Weinberg Gary Mayer Department of Computer Science Southern Illinois University.
The 14 th IEEE Real-Time and Embedded Technology and Applications Symposium, April 2008 Real-Time Distributed Discrete-Event Execution with Fault Tolerance.
CS4730 Real-Time Systems and Modeling Fall 2010 José M. Garrido Department of Computer Science & Information Systems Kennesaw State University.
Required and Elective Courses in Power Area. Required Power Courses u ECE 320/321 Energy Systems I/Energy Systems I lab: Covers single-phase AC measurements,
February 12, 2009 Center for Hybrid and Embedded Software Systems Timing-aware Exceptions for a Precision Timed (PRET)
February 11, 2016 Center for Hybrid and Embedded Software Systems Organization Faculty Edward A. Lee, EECS Alberto Sangiovanni-Vincentelli,
February 14, 2013 Center for Hybrid and Embedded Software Systems Organization Faculty Edward A. Lee, EECS Alberto Sangiovanni-Vincentelli,
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Chapter 5:Architectural Design l Establishing the overall structure of a software.
Industrial Automation Part I Real Time Control Embedded Systems.
EE 249 Embedded Systems Design
An overview of the CHESS Center
Ptolemy II - Heterogeneous Concurrent Modeling and Design in Java
Retargetable Model-Based Code Generation in Ptolemy II
Journey: Introduction to Embedded Systems
Timing-aware Exceptions for a Precision Timed (PRET) Target
CSCI1600: Embedded and Real Time Software
An overview of the CHESS Center
An overview of the CHESS Center
Presentation transcript:

Teaching Embedded Systems to Berkeley Undergraduates EECS124 at UC Berkeley co-developed by Edward A. Lee Sanjit A. Seshia Claire J. Tomlin CPSWeek CHESS Workshop April 21, 2008

Lee, Seshia, Tomlin, UC Berkeley 2 From Research to Education at Berkeley Graduate courses: Core and Advanced EECS 249: Embedded System Design: Modeling, Validation and Synthesis EECS 291E: Hybrid Systems EECS 290N: Concurrent Models of Computation for Embedded Systems Research projects and centers E.g. CHESS, GSRC, PATH Undergraduate courses: lower and upper division EECS 20: Structure and Interpretation of Signals and Systems, EECS 124: Introduction to Embedded Systems

Lee, Seshia, Tomlin, UC Berkeley 3 New Course (Spring 2008) Introduction to Embedded Systems This course is intended to introduce students to the design and analysis of computational systems that interact with physical processes. Applications of such systems include medical devices and systems, consumer electronics, toys and games, assisted living, traffic control and safety, automotive systems, process control, energy management and conservation, environmental control, aircraft control systems, communications systems, instrumentation, critical infrastructure control (electric power, water resources, and communications systems for example), robotics and distributed robotics (telepresence, telemedicine), defense systems, manufacturing, and smart structures. A major theme of this course will be on the interplay of practical design with formal models of systems, including both software components and physical dynamics. A major emphasis will be on building high confidence systems with real-time and concurrent behaviors. Cyber-Physical Systems Model-Based Design Sensors and Actuators Interfacing to Sensors and Actuators Actors, Dataflow Modeling Modal Behavior Concurrency: Threads and Interrupts Hybrid Systems Simulation Specification; Temporal Logic Reachability Analysis Controller Synthesis Control Design for FSMs and ODEs Real-Time Operating Systems (RTOS) Scheduling: Rate-Monotonic and EDF Concurrency Models Execution Time Analysis Localization and Mapping Real-Time Networking Sensor Networks, Security, …

Lee, Seshia, Tomlin, UC Berkeley 4 New Course (Spring 2008) Introduction to Embedded Systems This course is intended to introduce students to the design and analysis of computational systems that interact with physical processes. Applications of such systems include medical devices and systems, consumer electronics, toys and games, assisted living, traffic control and safety, automotive systems, process control, energy management and conservation, environmental control, aircraft control systems, communications systems, instrumentation, critical infrastructure control (electric power, water resources, and communications systems for example), robotics and distributed robotics (telepresence, telemedicine), defense systems, manufacturing, and smart structures. A major theme of this course will be on the interplay of practical design with formal models of systems, including both software components and physical dynamics. A major emphasis will be on building high confidence systems with real-time and concurrent behaviors. Cyber-Physical Systems Model-Based Design Sensors and Actuators Interfacing to Sensors and Actuators Actors, Dataflow Modeling Modal Behavior Concurrency: Threads and Interrupts Hybrid Systems Simulation Specification; Temporal Logic Reachability Analysis Controller Synthesis Control Design for FSMs and ODEs Real-Time Operating Systems (RTOS) Scheduling: Rate-Monotonic and EDF Concurrency Models Execution Time Analysis Localization and Mapping Real-Time Networking Sensor Networks, Security, …

Lee, Seshia, Tomlin, UC Berkeley 5 Outline Course Organization & Enrollment Course project forms main component Lab Exercise Video of lab demo at Cal Day Sampling of Topics Physical dynamics Modal modeling; verification and control

Lee, Seshia, Tomlin, UC Berkeley 6 Course Organization and Enrollment 20 students enrolled currently ~50% seniors, rest mostly juniors 75% taken upper-division signals & systems, 50% taken digital systems design Course components: Project – 35% 4 Homeworks – 20% Midterm – 25% Labs – 20%

Lee, Seshia, Tomlin, UC Berkeley 7 Lab Exercise Train a robot to climb a hill. We use the iRobot Create (the platform for the Roomba vacuum cleaner) with a pluggable Command Module containing an 8-bit Atmel microcontroller. Students have to extend it with sensors, construct models of its behavior, design a control system, and implement the control system in C.

Lee, Seshia, Tomlin, UC Berkeley 8 Demo

Lee, Seshia, Tomlin, UC Berkeley 9 Modeling Physical Dynamics: Feedback Control Problem A helicopter without a tail rotor, like the one below, will spin uncontrollably due to the torque induced by friction in the rotor shaft. Control system problem: Apply torque using the tail rotor to counterbalance the torque of the top rotor.

Lee, Seshia, Tomlin, UC Berkeley 10 Actor Model of Systems A system is a function that accepts an input signal and yields an output signal. The domain and range of the system function are sets of signals, which themselves are functions. Parameters may affect the definition of the function S.

Lee, Seshia, Tomlin, UC Berkeley 11 Proportional controller desired angular velocity error signal net torque

Lee, Seshia, Tomlin, UC Berkeley 12 Model-Based Design Solution

Lee, Seshia, Tomlin, UC Berkeley 13 Modal Modeling: FSMs & Hybrid Systems, Analysis, Control  start Synthesize strategy for a robot to get from start location to  with stationary/moving obstacles Modeling with FSMs: Discretize the room into a grid, finite set of moves for robot/environment, extensions to HS Specifying the goal: Using temporal logic, F  Reachability Analysis: Finding path to  against stationary obstacles Controller Synthesis: Finding (continuous) path to  against moving obstacles, link to game-playing

Lee, Seshia, Tomlin, UC Berkeley 14 Modal Modeling by Students for Lab

Lee, Seshia, Tomlin, UC Berkeley 15 Some Student Feedback on the Lab Exercises and Link to Class Material Modeling a-priori as State Machines was useful “We […] learned how implementing states made our code simpler and our strategies easier to program.” Debugging was difficult due to limited observability “It was […] difficult to debug […] since we were flying in the dark when it came to matching up unwanted behavior to the corresponding code.” Students came up with innovative ways of debugging SOUND: make the robot play different tunes to signal various events BLUETOOTH: interface a bluetooth card to the iRobot and view events transmitted to a laptop Sensor calibration was also challenging

Lee, Seshia, Tomlin, UC Berkeley 16 Other Topics Covered in Class Simulation of Discrete-Event and Continuous Systems Concurrency: threads and interrupts Real-time operating systems Scheduling algorithms & anomalies Concurrent models of computation Execution time analysis

Lee, Seshia, Tomlin, UC Berkeley 17 Concluding Remarks Positive feedback (there’s interest in the course for next year!) Ongoing course projects Localization & mapping with cooperating iRobots Finger-mounted infra-red “glove” that replaces mouse (to play pong ) “SegBot”: Segway built with Lego Mindstorms Challenge: Need to better mesh the theoretical topics with the labs

Lee, Seshia, Tomlin, UC Berkeley 18 Acknowledgments TA: Isaac Liu Labs: Ferenc Kovac, Winthrop Williams LabView Help & Suggestions: Dr. Hugo Andrade (NI) Guest Lecturers: Prof. Kris Pister, Dr. Jeff Bier (BDTI), Gabe Hoffman (Stanford) Infrastructure & Projects: Christopher Brooks The many Berkeley EECS faculty who gave their inputs and advice in the critical stages of devising this course