Hybrid Control and Switched Systems Lecture 1 Hybrid
Hybrid Control and Switched Systems Lecture #1 Hybrid systems are everywhere: Examples João P. Hespanha University of California at Santa Barbara
Summary Examples of hybrid systems 1. Bouncing ball 2. Thermostat 3. Transmission 4. Inverted pendulum swing-up 5. Multiple-tank 6. Server 7. Supervisory control
Example #1: Bouncing ball Free fall ´ g Collision ´ y c 2 [0, 1] ´ energy “reflected” at impact Notation: given x : [0, 1)!Rn ´ piecewise continuous signal at points t where x is continuous x(t) = x-(t) = x+(t) By convention we will generally assume right continuity, i. e. , x(t) = x+(t) 8 t¸ 0 x x– x+
Example #1: Bouncing ball Free fall ´ x 1 y Collision ´ for any c < 1, there are infinitely many transitions in finite time (Zeno phenomena) t guard or jump condition x 1 = 0 & x 2 <0 ? transition state reset x 2 – c x 2 –
Example #2: Thermostat goal ´ regulate temperature around 75 o room x ´ mean temperature heater when heater is off: ( x ! 50 o) when heater is on: ( x ! 100 o) event-based control turn heater on 73 o turn heater off 77 o x
Example #2: Thermostat 77 73 turn heater off x turn heater on q = on off on guard condition x · 73 ? discrete state or mode off mode x(t) 2 R ´ continuous state q(t) 2 { off, on } ´ discrete state on t no reset on mode x ¸ 77 ? guard condition
Example #3: Transmission throttle u 2 [-1, 1] position q w g 2 {1, 2, 3, 4} gear velocity hk ´ efficiency of the kth gear h 1 h 2 h 3 h 4 w velocity [Hedlund, Rantzer 1999]
Example #3: Automatic transmission w ¸ w 2 ? w ¸ w 3 ? g=1 w ¸ w 4 ? g=2 g=4 g=3 w · 1 ? w · 2 ? w · 3 ? w 2 w 3 g=1 w 4 g=2 1 g=3 2 g=4 3
Example #3: Semi-automatic transmission v(t) 2 { up, down, keep } ´ drivers input (discrete) v = up or w ¸ w 2 ? g=1 v = up or w ¸ w 3 ? g=2 v = up or w ¸ w 4 ? g=4 g=3 v = down or w · 1 ? v = down or w · 2 ? v = down or w · 3 ? w 2 w 3 g=1 g=2 1 w 4 g=3 2 g=4 3
Example #4: Inverted pendulum swing-up u 2 [-1, 1] goal ´ drive q to 0 (upright position) q u 2 [-1, 1] ´ force applied to the cart Total system energy ´ potential kinetic normalized to be zero at stationary upright position Feedback linearization controller: try to make ) only in [-1, 1] close to upright position (q = w = 0) [Astrom, Furuta 1999]
Example #4: Inverted pendulum swing-up u 2 [-1, 1] q Hybrid controller: 1 st pump/remove energy into/from the system by applying maximum force, until E ¼ 0 (energy control) 2 nd wait until pendulum is close to the upright position 3 th next to upright position use feedback linearization controller remove energy E 2 [–e, e] ? E < –e ? wait stabilize E>e? pump energy |w| + |q| · d ? E 2 [–e, e] ? Question: can you figure out a way to solve the problem w(0) = 0, q(0) = p ?
Example #5: Tank system goal ´ prevent the tank from emptying or filling up pump-on inflow ´ l y constant outflow ´ m guard condition d ´ delay between command is sent to pump and the time it is executed t¸ pump off d? wait to off y · ymin ? t 0 state reset * t 0 wait to on pump on t¸ d? y ¸ ymax ? How to choose ymin and ymax for given m, l, d ?
Example #5: Multiple-tank system y 1 · y 1, min & y 2 ¸ y 2, max ? t ¸ dk ? t 0 Initialized rectangular hybrid automata • all differential equations have constant r. h. s. • all jump cond. are of the form: state var. 1 2 fixed interval 1 & state var. 2 2 fixed interval 2 & etc. • all resets have constant r. h. s. Most general class of hybrid systems for which there exist completely automated procedures to compute the set of reachable states
Example #6: Switched server r 0 r 1 r 2 rates of incoming parts buffers dij ´ setup time needed to move from buffer i to j server r > r 0 + r 1 + r 2 rate of service Scheduling algorithm (cyclic scheduling): 1. start in buffer 0 2. work on a buffer until empty 3. when buffer j is empty move to buffer j + 1 (mod 3) Often also an initialized rectangular hybrid automata …
Example #7: Server system with congestion control incoming rate r qmax Additive increase/multiplicative decrease congestion control (AIMD): • while q < qmax increase r linearly • when q reaches qmax instantaneously multiply r by g 2 (0, 1) guard condition q ¸ qmax ? q server r g r – q(t) state reset B rate of service (bandwidth) no longer an initialized rectangular hybrid automata … t
Example #8: Supervisory control logic that selects which controller to use supervisor bank of controllers controller 1 u process y controller 2 switching signal taking values in the set {1, 2} 2 1
E. g. #8 a): Vision-based control of a flexible manipulator bbase u qbase mtip qtip Ibase goal ´ drive qtip to zero, using feedback from qbase ! encoder at the base qtip ! machine vision (needed to increase the damping of the flexible modes in the presence of noise) To achieve high accuracy in the measurement of qtip the camera must have a small field of view output feedback output:
E. g. #8 a): Vision-based control of a flexible manipulator controller 1 u manipulator controller 2 controller 1 optimized for feedback from qbase and qtip and controller 2 optimized for feedback only from qbase E. g. , LQG controllers that minimize y
E. g. #8 a): Vision-based control of a flexible manipulator feedback connection with controller 1 (qbase and qtip available) feedback connection with controller 2 (only qbase available)
E. g. #8 a): Vision-based control of a flexible manipulator 5 no switching (feedback only from qbase) 0 qtip(t) -5 0 10 20 30 40 50 60 5 with switching (close to 0 feedback also from qtip) 0 qtip(t) -5 qmax = 1 0 10 20 30 40 50 60
Example #8 b): Adaptive supervisory control supervisor bank of controllers process can either be: controller 1 u process y controller 2 Goal: stabilize process, regardless of which is the actual process model Supervisor must • try to determine which is the correct process model by observing u and y • select the appropriate controller
Next class… 1. Formal models for hybrid systems: • Finite automata • Differential equations • Hybrid automata • Open hybrid automaton 2. Nondeterministic vs. stochastic systems • Non-deterministic automata and differential inclusions • Markov chains and stochastic processes
- Slides: 22