Modeling, Analysis and Control Radu Grosu Vienna University of - - PowerPoint PPT Presentation

modeling analysis and control
SMART_READER_LITE
LIVE PREVIEW

Modeling, Analysis and Control Radu Grosu Vienna University of - - PowerPoint PPT Presentation

Hybrid Systems Modeling, Analysis and Control Radu Grosu Vienna University of Technology Lecture 6 Continuous AND Discrete Systems Control Theory Computer Science Continuous systems Discrete systems approximation, stability abstraction,


slide-1
SLIDE 1

Radu Grosu Vienna University of Technology

Hybrid Systems Modeling, Analysis and Control

Lecture 6

slide-2
SLIDE 2

Continuous AND Discrete Systems

Hybrid Systems

Continuous systems approximation, stability control, robustness

Control Theory Computer Science

Discrete systems abstraction, composition concurrency, verification Software controlled systems Embedded real-time systems Multi-agent systems

slide-3
SLIDE 3

Models and Tools

Dynamic systems with continuous & discrete state variables Models

Continuous Part

Differential equations, transfer functions, Automata, Petri nets, Statecharts,

Discrete Part

Software Tools Analytical Tools

Lyapunov functions, eigenvalue analysis, Matlab, Matrixx, VisSim, Boolean algebra, formal logics, verification, Statemate, Rational Rose, SMV,

slide-4
SLIDE 4

Modeling a Hybrid System

Model of System

Model of Physics Model of Software

continuous dynamics discrete dynamics

slide-5
SLIDE 5

Hybrid Automaton (HA)

jump transformation edge guard continuous dynamics initial condition locations or modes (discrete states)

m x inv(m) x init(m) n x inv(n) action(x,  x ) e : guard(x)  0

invariant: HA may remain in m as long as x inv(m)

slide-6
SLIDE 6

Example: Bouncing Ball

Ball has mass m and position x Ball bounces when hitting ground at x  0 Ball initially at position x0 and at rest

slide-7
SLIDE 7

Bouncing Ball: Free Fall

Condition for free fall: x  0 Differential equations: First order

slide-8
SLIDE 8

Bouncing Ball: Bouncing

Condition for bouncing: x  0 Action for bouncing:  v  cv Coefficient c: deformation, friction

slide-9
SLIDE 9

Bouncing Ball: Hybrid Automaton

freeFall

x  0

location invariant flow

x  x0, v  0

initial condition

bounce:  v  cv

label guard action discrete transition

slide-10
SLIDE 10

Bouncing Ball: Associated Program

freeFall

location invariant flow initial condition

bounce:

 v  cv

label

guard action discrete transition

slide-11
SLIDE 11

Execution of Bouncing Ball

Position (x)

x (t)

1

x (t)

2

x (t)

3

x (t)

4

x (t) v (t)

1

v (t) 2 v (t)

3

v (t)

4

v (t)

Velocity (v) Time (t) Time (t)

T T

1

T

2

T

3 T 4

T T

1

T

2

T

3 T 4

slide-12
SLIDE 12

Boost DC-DC Converter

iL  i0 vc  v0 s  0 s0

slide-13
SLIDE 13

Boost DC-DC Converter

s1

s  1 s  1 s  0

s0

s  0 iL  i0 vc  v0

slide-14
SLIDE 14

Boost DC-DC Converter

s1 s  1 s  1 s  0 s0 s  0 iL  i0 vc  v0

float iL  i0, vc  v0, d  d0; bool s  0; while true {

while (s  0) { iL  iL  (

RL L  iL  1 L vS) d

vC  vC  1

C  1 RC  R0

vC d read(s) }

slide-15
SLIDE 15

Execution of Boost DC-DC Converter

4 8 12 16

Voltage uCþ , V

50 100 150 200

Current iL, mA

1 2 3

Time t, ms

Capacitor Voltage and Inductor Current

4 8 12 16

Voltage uR0, V

50 100 150 200

Current iL, mA

1 2 3

Time t, ms

Load Voltage

Parameters: Us = 20V L = 1mH C = 50nF R

L = 1kW

R

C = 10W

R

0 = 10kW

dt = 200ns Umax = 16V Umin = 14V

slide-16
SLIDE 16

Hybrid Automaton H

Variables: Continuous variables x  [ x1,..., xn ] Control Graph: Finite directed multigraph (V,E) Vertex labeling functions: for each v V

Initial states: init(v)(x) defines initial region Invariant: inv(v)(x) defines invariant region Finite set V of control modes Finite set E of control switches

Edge labeling functions: for each e E

Guard: guard(e)(x) defines enabling region Update: action(e)(x,  x ) defines the reset region Synchronization labels: label(e) defines communication

slide-17
SLIDE 17

Executions of a Hybrid Automaton

State: (m,x) such that x inv(m) Initialization: (m,x) such that x init(m) Two types of state updates:

Discrete switches: (m,x) a (  m ,  x ) if e  ( m,m') E  label(e)  a  Continuous flows: (m,x) f (m,  x ) if  f : [0,T]  Rn. f (0)  x  f (T)   x guard(e)(x)  0  action(e)(x,  x )