EECE 396-1 Hybrid and Embedded Systems: Computation T. John Koo Institute for Software Integrated Systems Department of Electrical Engineering and Computer Science Vanderbilt University 300 Featheringill Hall January 14, 2004 john.koo@vanderbilt.edu http://www.vuse.vanderbilt.edu/~kootj
Hybrid Systems UC Berkeley Stanford University Spring 2002 by T. John Koo, S. Shankar Sastry http://robotics.eecs.berkeley.edu/~koo/Sp02/ Spring 2001 by T. John Koo, S. Shankar Sastry http://robotics.eecs.berkeley.edu/~koo/Sp01/ Spring 2000 by Karl. H. Johansson, Luca de Alfaro, Thomas A. Henzinger http://www.s3.kth.se/~kallej/eecs291e/ Spring 1999 by John Lygeros, S. Shankar Sastry http://robotics.eecs.berkeley.edu/~lygeros/Teaching/ee291E.html Spring 1998 by Thomas A. Henzinger, S. Shankar Sastry Stanford University Spring 2002 by Claire Tomlin http://www.stanford.edu/class/aa278a/ University of Pennsylvania Fall 2000 by Rajeev Alur, George J. Pappas http://www.seas.upenn.edu/~pappasg/EE601/ 2
Hybrid System A system built from atomic discrete components and continuous components by parallel and serial composition, arbitrarily nested. The behaviors and interactions of components are governed by models of computation (MOCs). Discrete Components Finite State Machine (FSM) Discrete Event (DE) Synchronous Data Flow (SDF) Continuous Components Ordinary Differential Equation (ODE) Partial Differential Equation (PDE) 3
Hybrid System Continuous systems with phased operations Bouncing ball Circuits with diodes Switching circuits Continuous systems controlled by discrete inputs Thermostat Water tank Engine control systems Multi-modal systems Embedded control systems 4
The Heterogeneity of Systems power train Discrete Event Continuous Time Finite State Machine engine E H C I (I)Intake - (C) Compression – (E) Ignition – (H) Exhaust fuel air embedded controller sensors An Engine Control System 5
Models of Computation power train E H C I fuel air embedded controller Finite State Machine states transitions engine E H C I Continuous Time continuous functions continuous time continuous signals fuel air Discrete Event operations on events continuous time discrete events embedded controller sensors 6
The Hierarchical View of Systems controller car model engine power train I C H E 7
Board Support Packages Embedded Systems Embedded systems composed of hardware and software components are designed to interact with a physical environment in real-time in order to fulfill control objectives and design specifications. Environment Embedded Hardware Board Support Packages Operating System Embedded Software This is the kind of embedded system we are interested. (You may want to close the loop, according to Shankar) Environment refers to the collection of objects which cannot be designed Platform refers to Embedded hardware, board support packages and operating system which can be selected for constructing the system. Commercial off-the-shelf are commonly used. Use of the middleware helps isolate application software components from the underlying hardware and operating systems in the embedded computing platform 8
Board Support Packages Embedded Systems Embedded software refers to application software to process information to and fro between the information and physical worlds. Environment Embedded Hardware Board Support Packages Operating System Embedded Software D/A A/D (You may want to close the LOOP, according to Shankar) Environment refers to the collection of objects which cannot be designed Platform refers to Embedded hardware, board support packages and operating system which can be selected for constructing the system. Commercial off-the-shelf are commonly used. Use of the middleware helps isolate application software components from the underlying hardware and operating systems in the embedded computing platform 9
High-Confidence Embedded Software Embedded Computer From Design to Implementation Embedded Software How? Servos GPS Card INS 1. Guaranteed closed-loop performance 2. Interaction between asynchronous and synchronous components 10
High-Confidence Embedded Software 4±1Hz 10Hz Nav Data to Vision computer @10Hz PERIODIC VCOMM ULREAD Ultrasonic sensors@4±1Hz APERIODIC Relative Altitude Nav data Processes running on QNX Control output at 50Hz DQICONT PERIODIC 100Hz INS Update Boeing DQI-NP Flight Status Command RX values Yamaha Receiver (using HW INT & proxy) Ground Station Concurrent processes Explain: current configuration We would like to show the case of integrating different legancy system componensts Rather than synthesizing them all at once. Is all about integration!! DGPS measurement RS-232 PRTK@ 5Hz PXY@1Hz DQIGPS Shared Memory ANYTIME PERIODIC Radio link GPS Update Ground computer Win 98 NovAtel GPS RT-2 11
Why Hybrid Systems? Modeling abstraction of Important in applications Continuous systems with phased operation (e.g. walking robots, mechanical systems with collisions, circuits with diodes) Continuous systems controlled by discrete inputs (e.g. switches, valves, digital computers) Coordinating processes (multi-agent systems) Important in applications Hardware verification/CAD, real time software Manufacturing, communication networks, multimedia Large scale, multi-agent systems Automated Highway Systems (AHS) Air Traffic Management Systems (ATM) Uninhabited Aerial Vehicles (UAV) Power Networks 12
Different Approaches 13
Research Directions 14
What Are Hybrid Systems? Dynamical systems with interacting continuous and discrete dynamics 15
Proposed Framework Control Theory Computer Science Hybrid Systems Control of individual agents Continuous models Differential equations Computer Science Models of computation Communication models Discrete event systems Hybrid Systems 16
Power Electronics Power electronics found in: DC-DC converters Power supplies Electric machine drives Circuits can be defined as networks of: Voltage and current sources (DC or AC) Linear elements (R, L, C) Semiconductors used as switches (diodes, transistors) ENNA GmbH 17
Power Electronics Discrete dynamics Continuous dynamics + + N switches, (up to) 2N discrete states Only discrete inputs (switching): some discrete transitions under control, others not Continuous dynamics Linear or affine dynamics at each discrete state ENNA GmbH + + 23=8 possible configurations 18
Power Electronics : DC-DC Converters Vin L C R sw1 sw2 + - Vout iL iL Vout 2 1 Have a DC supply (e.g. battery), but need a different DC voltage Different configurations depending on whether Vin<Vout or Vin>Vout Control switching to maintain Vout with changes in load (R), and Vin 19
Two Output DC-DC Converter Vin L C2 R2 sw1 sw2 + - VoutA iL VoutB sw3 C3 R3 iL VoutA VoutB 1 2 3 US Patent since it can reduce the number of inductors used by having extra switches!! Want two DC output voltages Inductors are big and heavy, so only want to use one Similar to “two tank” problem 20
Circuit Operation sw1: iL, VoutA, VoutB sw2: iL , VoutA , VoutB One and only one switch closed at any time Each switch state has a continuous dynamics sw1: iL, VoutA, VoutB sw2: iL , VoutA , VoutB sw3: iL , VoutA, VoutB 21
Design Objective iL , VoutA, VoutB iL, VoutA, VoutB Objective: Regulate two output voltages and limit current by switching between three discrete states with continuous dynamics. 22
Typical Circuit Analysis/Control match! Governing equations Time domain, steady state Energy balance System dynamics Discretization in time Switched quantity only sampled at discrete instants Assumes a fixed clock Averaging Switched quantity approximated by a moving average Assumes switching is much faster than system time constants Control Linearize with duty () as input Use classical control techniques iL(t) iL(t) iL[k] 23
Outline Background on Power Electronics Hybrid Modeling of DC-DC Converters Controlled Invariant Balls Conclusions Vin L C R sw1 sw2 + - Vout iL 24
Problem Formulation Connectivity between each pair of modes defines an edge 25
Problem Formulation Parallel Composition of Hybrid Automata Given a collection of Modes and Edges, design Guards Given a design of DC-DC converter, one can model it as a hybrid automaton. State-feedback is used. But the control is a discrete symbol which corresponds to a specific switch configuration. Notice that the design is event-triggered and exact. While using duty cycle, the controller is based on time domain analysis on a discrete-time averaged system model. 26
Research Issues Modeling & Simulation Analysis & Verification Control: classify discrete phenomena, existence and uniqueness of execution, Zeno [Branicky, Brockett, van der Schaft, Astrom] Computer Science: composition and abstraction operations [Alur-Henzinger, Lynch, Sifakis, Varaiya] Analysis & Verification Control: stability, Lyapunov techniques [Branicky, Michel], LMI techniques [Johansson-Rantzer] Computer Science: Algorithmic [Alur-Henzinger, Sifakis, Pappas-Lafferrier-Sastry] or deductive methods [Lynch, Manna, Pnuelli], Abstraction [Pappas-Tabuada, Koo-Sastry] Controller Synthesis Control: optimal control [Branicky-Mitter, Bensoussan-Menaldi], hierarchical control [Caines, Pappas-Sastry], supervisory control [Lemmon-Antsaklis], safety specifications [Lygeros-Sastry, Tomlin-Lygeros-Sastry], control mode switching [Koo-Pappas-Sastry] Computer Science: algorithmic synthesis [Maler et.al., Wong-Toi], synthesis based on HJB [Mitchell-Tomlin] 27
Hybrid Systems 28
Hybrid Systems Hybrid Automata (Lygeros-Tomlin-Sastry, 2001) Ref: J. Lygeros, C. Tomlin, and S. Sastry, The Art of Hybrid Systems, July 2001. 29
Hybrid Systems Q X Enabled Discrete Evolution Guard AB Reset AB Invariant set A X Invariant set B 30
Hybrid Systems Q X Forced Discrete Evolution Guard AB Reset AB Invariant set A X Invariant set B 31
Hybrid Systems 32
Motivating Examples: Thermostat Non-deterministic Hybrid Automaton 33
Motivating Examples:Two Tanks 34
Zeno—infinitely many jumps in finite time If Water Tank Automaton 35
Motivating Examples: Bouncing Ball Zeno Hybrid Autamaton 36
Computational Tools Simulation Ptolemy II: ptolemy.eecs.berkeley.edu Modelica: www.modelica.org SHIFT: www.path.berkeley.edu/shift Dymola: www.dynasim.se OmSim: www.control.lth.se/~cace/omsim.html ABACUSS: yoric.mit.edu/abacuss/abacuss.html Stateflow: www.mathworks.com/products/stateflow CHARON: http://www.cis.upenn.edu/mobies/charon/ Masaccio: http://www-cad.eecs.berkeley.edu/~tah/Publications/masaccio.html Omola is an object-oriented language for modelling of continuous time and discrete event dynamical systems. OmSim is an environment for modelling and simulation based on Omola. The object-oriented modeling language Modelica is designed to allow convenient, component-oriented modeling of complex physical systems, e.g., systems containing mechanical, electrical, electronic, hydraulic, thermal, control, electric power or process-oriented subcomponents. ABACUSS II is the next generation open modeling environment and simulator. Dynasim has developed Dymola with a new technology for multi-enginering modeling and simulation for use within automotive, aerospace, robotics, process and other applications. Dymola allows simulation of the dynamic behavior and complex interactions between, for example, mechanical, electrical, thermodynamic, hydraulic and control systems. 37
Computational Tools Simulation Masaccio CHARON Ptolemy II Dymola Modelica StateFlow/Simulink System Complexity Omola is an object-oriented language for modelling of continuous time and discrete event dynamical systems. OmSim is an environment for modelling and simulation based on Omola. The object-oriented modeling language Modelica is designed to allow convenient, component-oriented modeling of complex physical systems, e.g., systems containing mechanical, electrical, electronic, hydraulic, thermal, control, electric power or process-oriented subcomponents. ABACUSS II is the next generation open modeling environment and simulator. Dynasim has developed Dymola with a new technology for multi-enginering modeling and simulation for use within automotive, aerospace, robotics, process and other applications. Dymola allows simulation of the dynamic behavior and complex interactions between, for example, mechanical, electrical, thermodynamic, hydraulic and control systems. ABACUSS SHIFT OmSim Models of Computation 38
Verification Deductive Methods Model Checking Theorem-Proving techniques [Lynch, Manna, Pnuelli] Model Checking State-space exploration [Alur-Henzinger, Sifakis, Pappas-Lafferrier-Sastry] Reachability Problem Forward Reachable Set 39
Computational Tools – Hybrid Systems Reach Sets Computation Finite Automata Timed Automata Linear Automata Linear Hybrid Systems Nonlinear Hybrid Systems COSPAN SMV VIS … Timed COSPAN KRONOS Timed HSIS VERITI UPPAAL HYTECH Requiem d/dt CheckMate Verification tools One thing that I would like to do here is to develop reachability tools for Nonlinear Hybrid Systems 40
Research Directions Development of formal methods for the design of high-confidence embedded software based on hybrid system theory with applications to distributed, network-centric, embedded systems such as sensor networks, power electronics circuits, and cooperative UAV systems the development of formal methods for the design of high-confidence embedded software based on hybrid system theory with applications to distributed, network-centric, embedded systems such as sensor networks, power electronics, and cooperative UAV systems. Hybrid Systems Embedded Software High-Confidence Embedded Systems Network-Centric Distributed Systems 41
Research Collaboration Institutions Center for Hybrid and Embedded Systems and Software (CHESS), University of California at Berkeley GRASP Laboratory, University of Pennsylvania Hybrid Systems Laboratory, Stanford University Control Group, Cambridge University INRIA, France KTH, Sweden Honeywell Laboratories Cadence Berkeley Laboratory Conferences Workshop on Hybrid Systems: Computation and Control (HSCC) Workshop on Embedded Software (EMSOFT) IEEE Conference on Decision and Control (CDC) IEEE Conference on Robotics and Automation (ICRA) … 42
International Workshop on Hybrid Systems: Computation and Control University of Pennsylvania March, 2004 http://www.seas.upenn.edu/hybrid/HSCC04/
End 44