Teaching Embedded Systems to Berkeley Undergraduates

Similar documents
Center for Hybrid and Embedded Software Systems (CHESS)

Center for Hybrid and Embedded Software Systems. Hybrid & Embedded Software Systems

Smart-M3-Based Robot Interaction in Cyber-Physical Systems

ECE 511: MICROPROCESSORS

WiFinder, a Wifi Signal Intensity Mapping Robot

Autonomous and Mobile Robotics Prof. Giuseppe Oriolo. Introduction: Applications, Problems, Architectures

EECS 219C: Computer-Aided Verification Introduction & Overview. Sanjit A. Seshia EECS, UC Berkeley

BS in. Electrical Engineering

Introduction to Embedded Systems

ExCAPE. Rajeev Alur, Ras Bodik, Jeff Foster, Bjorn Hartmann, Lydia Kavraki,

Mechatronics Engineering and Automation Faculty of Engineering, Ain Shams University MCT-151, Spring 2015 Lab-4: Electric Actuators

Introduction to Real-Time Systems

GE 320: Introduction to Control Systems

Ontology-Based Robots Self-Organization in Cyber-Physical Systems

CSC C85 Embedded Systems Project # 1 Robot Localization

Cyber-Physical Systems, Power Grid, and Engineering Education NSF Perspective

GE423 Laboratory Assignment 6 Robot Sensors and Wall-Following

Sensors and Sensing Motors, Encoders and Motor Control

Demand Response: Passive Proximity Electric Sensing EECS Department and the Berkeley Sensor & Actuator Center (BSAC)

Overview of the NSF Programs

Administrative Notes. DC Motors; Torque and Gearing; Encoders; Motor Control. Today. Early DC Motors. Friday 1pm: Communications lecture

ME 487 Mechatronics. Office: JH 515, Tel.: (505)

Sensors and Sensing Motors, Encoders and Motor Control

Embedded Robust Control of Self-balancing Two-wheeled Robot

SELF-BALANCING MOBILE ROBOT TILTER

Building a comprehensive lab sequence for an undergraduate mechatronics program

Executive Summary. Chapter 1. Overview of Control

2. Introduction to Computer Haptics

AC : A STUDENT-ORIENTED CONTROL LABORATORY US- ING PROGRAM CC

HACETTEPE ÜNİVERSİTESİ COMPUTER ENGINEERING DEPARTMENT BACHELOR S DEGREE INFORMATION OF DEGREE PROGRAM 2012

EECS150 - Digital Design Lecture 28 Course Wrap Up. Recap 1

THE USE OF LEGO MINDSTORMS NXT ROBOTS IN THE TEACHING OF INTRODUCTORY JAVA PROGRAMMING TO UNDERGRADUATE STUDENTS

Proseminar Roboter und Aktivmedien. Outline of today s lecture. Acknowledgments. Educational robots achievements and challenging

William Milam Ford Motor Co

Cyber Physical Systems: Next Generation of Embedded Systems

Introduction to co-simulation. What is HW-SW co-simulation?

UNIT1. Keywords page 13-14

DIGF 6B21 Ubiquitous Computing

Introducing 32-bit microcontroller technologies to a technology teacher training programme

DESIGN TECHNOLOGY FOR THE TRILLION-DEVICE FUTURE

ME 461 Laboratory #5 Characterization and Control of PMDC Motors

Closed-Loop Transportation Simulation. Outlines

TigreSAT 2010 &2011 June Monthly Report

WifiBotics. An Arduino Based Robotics Workshop

CS 730/830: Intro AI. Prof. Wheeler Ruml. TA Bence Cserna. Thinking inside the box. 5 handouts: course info, project info, schedule, slides, asst 1

ICTCM 28th International Conference on Technology in Collegiate Mathematics

Page 1. Relays. Poles and Throws. Relay Types. Common embedded system problem CS/ECE 6780/5780. Al Davis. Terminology used for switches


NSF. Hybrid Systems: From Models to Code. Tom Henzinger. UC Berkeley. French Guyana, June 4, 1996 $800 million embedded software failure

Synthesis for Robotics

Timed Games UPPAAL-TIGA. Alexandre David

CPS-Ed 2014 Cyber-Physical Systems Education Workshop at UC Berkeley

Electrical and Automation Engineering, Fall 2018 Spring 2019, modules and courses inside modules.

Effective Teaching Learning Process for PID Controller Based on Experimental Setup with LabVIEW

Foundations of Hybrid and Embedded Software and Systems: Project Overview

6.081, Fall Semester, 2006 Assignment for Week 6 1

Human Factors in Control

Preparing the Leaders for Mechatronics Education

Fuzzy Logic Controlled Miniature LEGO Robot for Undergraduate Training System

Fundamental Algorithms for System Modeling, Analysis, and Optimization

MOST real-time software is structured either as threads

Lab 23 Microcomputer-Based Motor Controller

PC s and Micro-Controllers in Mechatronics Education. Santosh Devasia and Sanford Meek

ROBOTICS & IOT. Workshop Module

ROBOTICS & IOT. Workshop Module

Laurea Specialistica in Ingegneria. Ingegneria dell'automazione: Sistemi in Tempo Reale

AC : INTEGRATED HANDS-ON MECHANICAL SYSTEMS LAB- ORATORIES

Using Magnetic Sensors for Absolute Position Detection and Feedback. Kevin Claycomb University of Evansville

DC motor control using arduino

Teaching Mechanical Students to Build and Analyze Motor Controllers

Organized by the Computing Community Consortium Honorary Co-Sponsors: Congressman Bart Gordon (D-TN) Congressman Ralph Hall (R-TX) Congressman Daniel

Introduction to Real-time software systems Draft Edition

Real-time Real-life Oriented DSP Lab Modules

Robotics II DESCRIPTION. EXAM INFORMATION Items

MICROCONTROLLERS Stepper motor control with Sequential Logic Circuits

A Do-and-See Approach for Learning Mechatronics Concepts

Lecture 26 ANNOUNCEMENTS OUTLINE. Self-biased current sources BJT MOSFET Guest lecturer Prof. Niknejad

Passive Bilateral Teleoperation

Robotics for Engineering Education

Laboratory Seven Stepper Motor and Feedback Control

Increasing the precision of mobile sensing systems through super-sampling

Formal Methods for Semi-Autonomous Driving

Prototyping Automotive Cyber- Physical Systems

Integrated Safety Envelopes

AC : THE UBIQUITOUS MICROCONTROLLER IN MECHANICAL ENGINEERING: MEASUREMENT SYSTEMS

MathWorks Announces Built-in Simulink Support for Arduino, BeagleBoard, and LEGO MINDSTORMS NXT

COS 402 Machine Learning and Artificial Intelligence Fall Lecture 1: Intro

Penn State University ESM Ultrasonics R&D Laboratory Joseph L. Rose Research Activities

IMGD 3xxx - HCI for Real, Virtual, and Teleoperated Environments: Introduction. by Robert W. Lindeman

Introducing the Quadrotor Flying Robot

Lab Exercise 9: Stepper and Servo Motors

RUNNYMEDE COLLEGE & TECHTALENTS

I.1 Smart Machines. Unit Overview:

Robotics Education in Emerging Technology Regions

National Instruments Accelerating Innovation and Discovery

Chapter 1. Robots and Programs

Future battery technologies FET Flagship

Physical Etoys: Freedom beyond the digital world

6.111 Lecture # 19. Controlling Position. Some General Features of Servos: Servomechanisms are of this form:

University of Technology. Control and Systems Eng. Dept. Curriculum Vitae (C.V.)

Transcription:

Teaching Embedded Systems to Berkeley Undergraduates EECS124 at UC Berkeley co-developed by Edward A. Lee Sanjit A. Seshia Claire J. Tomlin http://chess.eecs.berkeley.edu/eecs124 CPSWeek CHESS Workshop April 21, 2008

From Research to Education at Berkeley Research projects and centers E.g. CHESS, GSRC, PATH 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 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 2

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 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

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 5

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 6

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 7

Demo Lee, Seshia, Tomlin, UC Berkeley 8

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 9

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 10

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

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

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 13

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

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 15

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 16

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 17

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 http://chess.eecs.berkeley.edu/eecs124 Lee, Seshia, Tomlin, UC Berkeley 18