1 - Úvod
Michael Šebek Automatické řízení 2016
Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti
23-2-16
Základní názvosloví Automatické řízení - Kybernetika a robotika
• Objekt: konkrétní auto (tamto) • Systém: určitá část objektu, kterou se zabýváme, řídíme,… Motor, spojka, řízení směru (ESC), rychlosti (tempomat), brzdění (ABS,EBS), trakce (TCS), pérování (RSC), emise, spotřeba, HVAC, telematika, infotainment, … řízení kolony (AHS),… • Model: nějaký vhodný popis (rovnice, diagram, graf, program…)
• Různé modely stejného systému pro různé účely: simulace, návrh, … Michael Šebek
ARI-01-2016
2
Základní názvosloví Automatické řízení - Kybernetika a robotika
Systémy • • • •
d
obecné a zvláštní soustava regulátor, kompenzátor, zákon řízení, celkový systém, uzavřená smyčka
• nějaká fyzikální veličina (pozor: šipka není „drát“) • • • • • •
u
vstup, akční zásah, reference porucha, rušení: měřená, neměřená výstup: řízený, měřený vnitřní veličiny (stavy) šum měření regulační odchylka (míra kvality) Michael Šebek
n
vstup
Signály
ARI-01-2016
y
u
r
stav
y
yc ym
u
měřený výstup d
u
x
řízený výstup
vstup
vstup
výstup
porucha y
výstup 3
Základní názvosloví Automatické řízení - Kybernetika a robotika
Přímá vazba (PV, FF)
Zpětná vazba (ZV, FB)
ZV s poruchou a šumem měření
soustava
+ FF od měřené poruchy regulátor ZV
regulátor PV
+ FF od reference a poruchy
Dva stupně volnosti (TDF)
Michael Šebek
ARI-01-2015
4
Základní názvosloví Automatické řízení - Kybernetika a robotika
• spojitý (čas) - diskrétní (čas) - vzorkovaný k y (t )
u (t )
t
u (k )
t
y (t )
u (k )
u (k )
r (k )
k
k
t
y (k )
A/D
k
k
tvaro vač
D/A
r (t )
t
A/D
y (k )
• SISO - MIMO u
k
y
u1 u2 um
y1 y2 yl
• soustředěné - rozložené parametry, dopravní zpoždění • neproměnný - proměnný v čase • lineární - nelineární Michael Šebek
ARI-01-2016
5
Nelineární stavový model Automatické řízení - Kybernetika a robotika
x (t ) = f (x(t ), u(t ), t ) y (t ) = h(x(t ), u(t ), t )
•
Stavová rovnice - vektorová nelineární diferenciální rovnice prvního řádu Výstupní rovnice - není diferenciální
y1 ,f výstup, stav, vstup, čas - obecně vektory=y = yp − řešení závisí na vstupu a počátečním stavu 0
f1 = , x f n
x1 = , u xn
u1 um
x(t ) = x0 (a na poč. čase)
Zvláštní případy: − (t ) f= = x ( x ( t ), u ( t )), x (0 ) x0 • model nezávisí na posunu v čase, y (t ) = h(x(t ), u(t )) je v čase neproměnný (TI) = x f= (x), y h(x) • autonomní systém, neřízený y = h(u) • systém typu statická nelinearita Zvláštní typ řešení: • periodické, tzv. limitní cyklus • ekvilibrium, rovnovážný, u e (t ) = u e , xe (t ) = xe ⇒ 0 = x e (t ) = f (xe (t ), u e (t )) ustálený stav Michael Šebek
ARI-01-2016
6
Lineární stavový model Automatické řízení - Kybernetika a robotika
• Linearita (homogennost + aditivnost): obecný lineární systém y = S ( u ) je lineární vzhledem k vstupu a výstupu, právě když (při stejných pp.)
y1= S ( u1 ) , y2 = S ( u2 ) ⇒ y= S ( c1u1 + c2u2 )= c1 y1 + c2 y2
• Lineární systémy mají spoustu příjemných vlastností, které umožňují užívat mnoho užitečných nástrojů (frekvenční charakteristika, …) • Lineární stavový model má tvar = x (t ) A(t )x(t ) + B(t )u(t ) −
= y (t ) C(t )x(t ) + D(t )u(t )
x(t0 ) = x 0
LTV
• Je-li navíc časově neproměnný, pak
= x (t ) Ax(t ) + Bu(t ) = y (t ) Cx(t ) + Du(t )
x(t0− ) = x 0
LTI
• Co dělat, když náš systém takový není? Michael Šebek
ARI-01-2016
7
Modely vstup-výstup (vnější) Automatické řízení - Kybernetika a robotika
• Popisuje vstup, výstup a jejich vyšší derivace, vnitřní veličiny přímo ne • Předpokládá se, že příslušné derivace existují, alespoň ve smyslu distribucí • Obecné nelineární IO modely jsou dost divoké, kurz ARI vystačí s
D(y ( n ) (t ), , y (t ), y (t ), t ) = N(u( m ) (t ), , u (t ), u(t ), t ) • a jeho lineárním LTV případem (m) a n (t )y ( n ) (t ) + + a1 (t )y + a= t y t b t u ( ) ( ) ( ) (t ) + + b1 (t )u (t ) + b 0 (t )u(t ) m 0
jehož řešení závisí na vstupu (včetně jeho příslušných derivací) − ( n −1) − a na počátečních podmínkách y (t0 ), , y (t0 ), y (t ) • V LTI variantě je to (m) a n y ( n ) (t ) + + a1y (t ) + a= (t ) + + b1u (t ) + b 0u(t ) 0 y (t ) b m u
s počátečními podmínkami y ( n−1) (0− ), , y (0− ), y (0− ) Michael Šebek
ARI-01-2016
8
Lineární aproximace – tzv. linearizace Automatické řízení - Kybernetika a robotika
• Vybereme nějaké nominální řešení (trajektorii), ve kterém chceme systém provozovat. Například referenční trajektorie robota, limitní cyklus nebo, nejčastěji, ekvilibrium - tomu říkáme pracovní (operační) bod • V okolí nominálního řešení (pracovního bodu) nahradíme nelineární model jeho lineární odchylkovou aproximací - „tečnou dynamikou“ • Často tomu nepřesně říkáme linearizace, přesnější je lineární aproximace (neboť jsou ještě jiné linearizace, třeba tzv. přesná linearizace) Funguje to pokud 1) je systém (v provozovaných režimech) skoro lineární nebo 2) zůstává blízko pracovního bodu: malé odchylky, „malé signály“ V systémech ZV automatického řízení bývá 2) často splněno Pozor: aproximace je vždy vztažena k určitému pracovnímu bodu a platí jen pro malé odchylky od něj - nezapomeň! • Když 1) ani 2) neplatí, přepíná se někdy více regulátorů založených na aproximacích v různých pracovních bodech (tzv. gain scheduling) • V některých případech aproximace neexistuje nebo je k ničemu • Někdy aproximaci nechceme/nemůžeme použít (stabilizace kyvadla vs. vztyčení) Michael Šebek
ARI-01-2016
9
Lineární aproximace - „linearizace“ Automatické řízení - Kybernetika a robotika
V okolí nominálního řešení (pracovního bodu) platí
(t ) x p (t ) + ∆x= (t ) f (x p (t ) + ∆x(t ), u p (t ) + ∆u(t )) x=
x= (t ) x p (t ) + ∆x(t ) u= (t ) u p (t ) + ∆u(t ) y= (t ) y p (t ) + ∆y (t )
=
∂f ∂f = f (x p (t ), u p (t )) + ∆x(t ) + ∆u(t ) + členy vyšších řádů ∂x ( x p ,u p ) ∂u ( x p ,u p ) y= (t ) y p (t ) + ∆y= (t ) g (x p (t ) + ∆x(t ), u p (t ) + ∆u(t ))
= = h(x p (t ), u p (t )) +
∂h ∂h ∆x(t ) + ∆u(t ) + členy vyšších řádů ∂x ( x p ,u p ) ∂u ( x p ,u p )
• kde rozvíjíme nelineární funkce v Taylorovy řady v okolí nominálního řešení (pokud parciální derivace existují) • Pro malé odchylky tak dostáváme lineární aproximaci Michael Šebek
∆x= (t )
∂f ∂f ∆x(t ) + ∆u(t ) ∂x ( x p ,u p ) ∂u ( x p ,u p )
∂h ∂h ∆y= ∆x(t ) + ∆u(t ) (t ) ∂x ( x p ,u p ) ∂u ( x p ,u p )
ARI-01-2015
10
Lineární aproximace - shrnutí Automatické řízení - Kybernetika a robotika
Nelineární model v okolí nominálního řešení aproximujeme lineárním x (t ) = f (x(t ), u(t )) y (t ) = h(x(t ), u(t ))
x p (t ), u p (t )
∆x (t ) = A∆x(t ) + B∆u(t ) ∆y (t ) = C∆x(t ) + D∆u(t )
• kde jsou ∂f ∂f ∂h ∂h A = = ,B = ,C = ,D ∂x ( x p ,u p ) ∂u ( x p ,u p ) ∂x ( x p ,u p ) ∂u ( x p ,u p )
Pozor: platí pro odchylky, ale často se píše bez ∆ !
Jacobiho matice funkcí f , h vyčíslené v nominálním „bodě“ • Např. ∂f1 ∂f1 ∂x ∂x 1 2 ∂f A = ∂f 2 ∂f 2 , = ∂x ( x p ,u p ) ∂x1 ∂x2 x x= = p ,u u p
(x
p
(t ), u p (t ) )
• jde to i pro časově proměnné systémy, stačí všude připsat t a dostaneme A(t ), B(t ), C(t ), D(t ) Michael Šebek
ARI-01-2016
11
Lineární aproximace IO modelu Automatické řízení - Kybernetika a robotika
• V okolní nominálního řešení či pracovního bodu y p (t ), u p (t ) můžeme IO model aproximovat lineárním podobně jako stavový • Vyjádříme D(y ( n ) (t ), , y (t ), y (t ), t ) = N (u ( m ) (t ), , u (t ), u(t ), t ) ) pro y= (t ) y p (t ) + ∆y (t ), , y ( n= (t ) y (pn ) (t ) + ∆y ( n ) (t ), ) (t ) u p (t ) + ∆u(t ), , u ( m= (t ) u (pm ) (t ) + ∆u ( m ) (t ) u=
• Použitím Taylorových řad dostáváme postupně ∂D ∂D ∂D Dp+ ∆y + ∆y + + ( n ) ∆y ( n ) + členy vyšších řádů ∂y p ∂y p ∂y p =
Np+
∂N ∂N ∂N ∆u + ∆u + + ( m ) ∆u ( m ) + členy vyšších řádů ∂u p ∂u p ∂u p
∂D ∂D ∂D ∂N ∂N ∂N ∆y + ∆y + + ( n ) ∆y ( n ) ≅ ∆u + ∆u + + ( m ) ∆u ( m ) ∂y p ∂y p ∂y p ∂u p ∂u p ∂u p
• Lineární aproximace je Michael Šebek
a0 ∆y + a1∆y + + a n ∆y ( n ) = b 0 ∆u + b1∆u + + b m ∆u ( m ) ARI-01-2015
12
Diskrétní stavový model Automatické řízení - Kybernetika a robotika
Proměnný v čase
Neproměnný v čase
• Nelineární
x(k + 1) = f (x(k ), u(k )) y (k ) = h(x(k ), u(k ))
x(k + 1) = f (x(k ), u(k ), k ) y (k ) = h(x(k ), u(k ), k ) • Lineární
x(= k + 1) A(k )x(k ) + B(k )u(k ) = y (k ) C(k )x(k ) + D(k )u(k )
x(k += 1) Ax(k ) + Bu(k ) = y (k ) Cx(k ) + Du(k )
• Počáteční stav
x( k0 ) = x 0
x(0) = x 0
• Rovnovážný, ustálený stav - ekvilibrium
u e (k ) = u e , xe (k ) = xe ⇒ xe = f (xe , u e ) Michael Šebek
ARI-01-2015
13
Diskrétní model vstup-výstup (vnější) Automatické řízení - Kybernetika a robotika
• Nelineární
D(y (k + n), , y (k + 1), y (k ), k ) = N(u(k + m), , u(k + 1), u(k ), k ) • Lineární v čase proměnný (LTV)
a n (k )y (k + n) + + a1 (k )y (k + 1) + a0 (k )y (k ) = b m (k )u(k + m) + + b1 (k )u(k + 1) + b 0 (k )u(k ) s „počátečními“ podmínkami
y (k + n − 1),, y (k + 1), y (k )
• Lineární v čase neproměnný (LTI)
a n y (k + n) + + a1y (k + 1) + a0 y (k ) = b mu(k + m) + + b1u(k + 1) + b 0u(k ) s „počátečními“ podmínkami Michael Šebek
y (n − 1), , y (1), y (0) ARI-01-2015
14
Lineární aproximace diskrétních modelů Automatické řízení - Kybernetika a robotika
x(k + 1) = f (x(k ), u(k )) y (k ) = h(x(k ), u(k ))
x= (k ) x p (k ) + ∆x(k ) u= (k ) u p (k ) + ∆u(k ) y= (k ) y p (k ) + ∆y (k )
x( k + 1) x p (k + 1) + ∆x(k + 1) f (x p (k ) + ∆x(k ), u p (k ) + ∆u(k )) = = ∂f ∂f ≅ f (x p (k ), u p (k )) + ∆x(k ) + ∆u(k ) ∂x ( x p ,u p ) ∂u ( x p ,u p ) y= (k ) y p (k ) + ∆y= (k ) g (x p (k ) + ∆x(k ), u p (k ) + ∆u(k )) ∂h ∂h ≅ h(x p (k ), u p (k )) + ∆x(k ) + ∆u(k ) ∂x ( x p ,u p ) ∂u ( x p ,u p )
Je to jako u spojitých modelů: čas je sice diskrétní, ale hodnoty jsou spojité (kontinuum) Michael Šebek
∆x(k + 1) ≅
∂f ∂f ∆x(k ) + ∆u(k ) ∂x ( x p ,u p ) ∂u ( x p ,u p )
∆y (k ) ≅
∂h ∂h ∆x(k ) + ∆u(k ) ∂x ( x p ,u p ) ∂u ( x p ,u p )
ARI-01-2015
15