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 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. q1 The behaviors and interactions of components are governed by models of computation (MOCs). Discrete Components u q2 q3 x xç = f (x) + g(x)u 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 q1 u q2 q3 x xç = f (x) + g(x)u 4 The Heterogeneity of Systems engine E State H Finite Machine C power train I Continuous Time fuel air Discrete Event embedded controller sensors An Engine Control System 5 Models of Computation Finite State Machine • states engine • transitions E H C I fuel air power train Continuous Time • continuous functions • continuous time • continuous signals Discrete Event • operations on events embedded controller • continuous time • discrete events sensors 6 The Hierarchical View of Systems controller car model engine power train 7 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. Embedded Software Operating System Board Support Packages Embedded Hardware Environment 8 Embedded Systems Embedded software refers to application software to process information to and fro between the information and physical worlds. q1 D/A u q2 Embedded Software Operating System q3 Board Support Packages Embedded Hardware A/D x Environment xç = f (x) + g(x)u 9 High-Confidence Embedded Software Embedded Computer Embedded Software From Design to Implementation u [k ] q1 u( t ) q2 q3 x (t ) Servos q1 q2 q3 x [k ] GPS Card INS How? xç = f (x) + g(x)u u( t ) x (t ) 1. Guaranteed closed-loop performance 2. Interaction between asynchronous and synchronous components 10 High-Confidence Embedded Software 10Hz Nav Data to Vision computer @10Hz PERIODIC VCOMM ULREAD 4±1Hz Ultrasonic sensors@4±1Hz APERIODIC Nav data Control output at 50Hz Relative Altitude PERIODIC 100Hz DQICONT INS Update Boeing DQI-NP RX values Yamaha Receiver (using HW INT & proxy) DGPS measurement Ground Station ANYTIME Ground computer Win 98 Processes running on QNX PRTK@ 5Hz PXY@1Hz PERIODIC DQIGPS GPS Update RS-232 Shared Memory Radio link NovAtel GPS RT-2 11 Why Hybrid Systems? Modeling abstraction of 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 Models of computation Communication models Discrete event systems Control of individual agents Continuous models Differential equations 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 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 iL + Vin - L sw1 2 sw2 C R 1 2 + Vout - Vout 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 iL 19 Two Output DC-DC Converter sw3 iL C3 + Vin sw1 1 iL VoutA 2 sw2 L 3 1 2 C2 R2 R3 + + VoutB VoutA - - 3 Want two DC output voltages Inductors are big and heavy, so only want to use one Similar to “two tank” problem VoutB 20 Circuit Operation 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 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 T Governing equations T Time domain, steady state Energy balance System dynamics i1 Discretization in time (1- )T Switched quantity only sampled at discrete instants Assumes a fixed clock i0 match! Averaging Switched quantity approximated by a moving average Assumes switching is much faster than system time constants i2 iL(t) iL(t) Control Linearize with duty () as input Use classical control techniques iL[k] 23 Outline Background on Power Electronics Hybrid Modeling of DC-DC Converters Controlled Invariant Balls Conclusions iL + Vin - L sw1 sw2 C R + Vout - 24 Problem Formulation 25 Problem Formulation Parallel Composition of Hybrid H1 Automata q1 û = û1 x 2 G12 x 2 G21 x2X q2 Given a collection of Modes û = û2 and Edges, design Guards H2 q1 xç(t ) = f q1(x(t )) x(t ) 2 I q1 û2 Î û = û2 û = û1 q2 xç(t ) = f q2(x(t )) x(t ) 2 I q2 26 Research Issues Modeling & Simulation Control: classify discrete phenomena, existence and uniqueness of execution, Zeno [Branicky, Brockett, van der Schaft, Astrom] Computer Science: composition and abstraction operations [AlurHenzinger, Lynch, Sifakis, Varaiya] Analysis & Verification Control: stability, Lyapunov techniques [Branicky, Michel], LMI techniques [Johansson-Rantzer] Computer Science: Algorithmic [Alur-Henzinger, Sifakis, PappasLafferrier-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, TomlinLygeros-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 Enabled Discrete Evolution Guard AB Q Reset AB Invariant set A X Invariant set B 30 Hybrid Systems Forced Discrete Evolution Guard AB Q Reset AB Invariant set A X Invariant set B 31 Hybrid Systems 32 Thermostat Non-deterministic Hybrid Automaton t 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 37 Computational Tools Simulation Masaccio CHARON Ptolemy II Dymola Modelica StateFlow/Simulink System Complexity ABACUSS SHIFT OmSim Models of Computation 38 Verification Deductive Methods Theorem-Proving techniques [Lynch, Manna, Pnuelli] Model Checking State-space exploration [Alur-Henzinger, Sifakis, Pappas-LafferrierSastry] Reachability Problem Check if Post ( X S) \ X F = ; ? XF XS Post ( X S) Forward Reachable Set Post ( P) = f x 2 X j 9x 0 2 P 9t õ 0 s:t: x = þ( t; r i ; x 0)g 39 Computational Tools – Hybrid Systems Reach Sets Computation Finite Automata COSPAN SMV VIS … Timed Automata Linear Automata xç = 1 Axç ô b xç = Ax HYTECH Requiem Timed COSPAN KRONOS Timed HSIS VERITI UPPAAL Linear Hybrid Systems Si (r i ) Nonlinear Hybrid Systems xç = f ( x ) d/dt CheckMate Sj (r j ) Pr ei (Sj (r j ); r i ) 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 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