16 - Pozorovatel a výstupní ZV Automatické řízení 2015 14-4-15
Hlavní problém stavové ZV Stavová zpětná vazba se zdá být nejúčinnějším nástrojem řízení, důvodem je síla pojmu stav, který v sobě obsahuje veškerou informaci o minulosti soustavy. Stavová zpětná vazba se snadno užívá tam, kde všechny stavové veličiny můžeme snadno měřit, např. pro letecké a kosmické dopravní prostředky, kde jsou typickými veličinami poloha, rychlost, zrychlení. Dokonce už tam často jsou senzory měřící tyto veličiny pro jiné účely o když ale některé stavy měřit nechceme (cena a spolehlivost senzorů), nebo ani nemůžeme (jaderný reaktor, sklářská pec)? Často měříme jen některé stavové veličiny a těm pak říkáme měřený výstup Je potom užití stavové ZV nemožné? Ne tak docela! Když některé stavy nemůžeme měřit, zkusíme je rekonstruovat 2
Estimátor stavu neboli Pozorovatel Pozorovatel, estimátor stavu, někdy také rekonstruktor (anglicky observer, state estimator, reconstructor) Je to systém, který má stejný vstup jako soustava, často do něj vedeme i výstup má stejný řád jako soustava jeho stavy můžeme všechny měřit a jeho stav ˆx je odhadem stavu soustavy x r u kdyby bylo xˆ(0) = x(0), + y + tak i budoucí xˆ( t) = x(), t t > 0 obecně jen xˆ( t) x(), t t > 0 pozorovatel x ˆ = fuy (, ) Úkol pozorovatele vytváří odhad stavu soustavy, který pak použijeme pro ZV místo skutečného stavu soustavy jež bohužel neznáme regulátor u soustava x = Ax + Bu = x + Du K y ˆx y ARI-16-2014 3
Nestačil by model soustavy? Automatické řízení - Kybernetika a robotika Zkusme přímovazební (open-loop) strukturu s modelem soustavy = Ax + Bu soustava = ˆ u x Ax + Bu = Ax + Bu vypočteme odchylku odhadu e= x xˆ, e(0) = x(0) xˆ(0) e = Ae model = Aˆx+ Bu ˆx y ŷ Dynamika odchylky je tedy dána dynamikou soustavy pokud vyhovuje (stabilita, rychlost konvergence), tak to stačí, ale pak vůbec nemusíme řídit pokud nevyhovuje, nemůžeme to napravit ato struktura není dobrá Jak ji můžeme vylepšit? Zpětnou vazbou! Využijme rozdíl mezi měřeným a odhadovaným výstupem y yˆ 4
Pozorovatel plného řádu Automatické řízení - Kybernetika a robotika odhaduje všechny stavy soustavy skládá se z modelu soustavy ˆ = Axˆ + Bu+ L( y yˆ) yˆ = xˆ a injekce z výstupu odečtením rovnic = Ax + Bu = Axˆ + Bu + L( x xˆ) Dostaneme pro odchylku odhadování e= x xˆ e = ( A L) e e= A e poz = Ax + Buy, = x = Ax + Bu to už je lepší: volbou vektoru L můžeme měnit matici A, a tak nastavit dynamiku odhadování (konvergenci a její rychlost) u soustava model = Axˆ + Bu + L( y yˆ ) pozorovatel x ˆx L ŷ y + 5
Vlastnosti pozorovatele plného řádu Protože je ˆ = Axˆ + Bu+ Ly Lxˆ = ( A L) xˆ + Bu+ Ly má pozorovatel rovnice kde je matice ˆ = A xˆ + Bu+ Ly A = pozorovatele je yˆ = x poz poz A L ˆ a a a l 11 12 1n 1 Její vlastní čísla (tzv. póly pozorovatele) a21 a22 a 2n l 2 Apoz = c1 c2 c se dají vhodnou volbou L nastavit libovolně an1 an2 ann ln když je systém pozorovatelný Ne náhodou to připomíná vztahy pro matici stavové ZV Póly pozorovatele obvykle je volíme 2 až 6 rychlejší než póly regulátoru aby póly regulátoru byly dominantní a pozorovatel nezpomaloval dyn. Jen když je šum senzoru tak silný, že je hlavním problémem volíme póly pozorovatele 2 pomalejší než póly regulátoru tím zmenšíme šířku pásma a vyhladíme šum v ZV systému [ ] n ARI-16-2014 6
Dualita Při návrhu pozorovatele pro dané A, hledáme L tak, aby matice A = A L poz měla požadovaná vlastní čísla Při návrhu stavové ZV jsme podobně pro dané A, B hledali K tak, aby A = A BK reg měla požadovaná vlastní čísla Má to nějakou souvislost? Ano! Protože transpozice matice nemění vlastní čísla, transponujme problém na ( ) poz = = A A L A L Zřejmě jsou oba problémy duální Proto můžeme navrhnout pozorovatele (matici výstupní injekce) tak, že Budeme navrhovat matici stavové ZV pro duální (tedy transponovaný ) systém řízení stavová ZV A B K odhad stavu výst. injekce A B L ARI-16-2014 7
Dualita pozorovatelnosti a řiditelnosti Dualita je ještě hlubší: i pojmy řiditelnost a pozorovatelnost jsou duální Systém je (úplně) pozorovatelný, právě když lze k němu navrhnout pozorovatele s libovolnými vlastními čísly (póly pozorovatele) Matice pozorovatelnosti je duální k matici řiditelnosti O A A n 1 = = n 1 A ( A) kanonický tvar pozorovatelnosti je duální ke kanonickému tvaru řiditelnosti řízení stavová ZV A B K odhad stavu výst. injekce A B L an 1 1 0 0 an 2 0 0 0 A = a1 0 0 1 a0 0 0 0 = [ 1 0 0 0] 8
Návrh pozorovatele - 3 metody Využít přímo dualitu: převést úlohu na návrh stavové ZV pro duální systém, vyřešit ho a výsledné K převést na L podle L = K Převodem na normální tvar pozorovatelnosti: 1 k čemuž použijeme transformační matici = OnewO old snadno an 1 l1 vyřešit ( an 1+ l1) a n 2 l v tomto 2 ( an 2 + l2) F tvaru [ 1 0 0 0] a1 ln 1 ( a1 ln 1) výsledek + a0 l n ( a0 + ln) převést zpět do n n 1 původních souřadnic det ( I ( A L) ) ( ) ( ) Pomocí modifikovaného Ackermannova vzorce pro pozorovatele 1 0 0 1 0 0 0 0 0 0 0 0 = = 0 0 1 0 0 1 0 0 0 0 0 0 s = s + a 1+ l1 s + + a1+ l 1 s+ a0 + l n n 1 det ( si A) = s + a s + + as+ a n n n n 1 1 0 p ( ) L= 0 0 1 poz A O 1 [ ] 9
Kombinace: ZV a pozorovatel Stavovými metodami navržená ZV z výstupu: navrhneme zvlášť stavovou ZV a zvlášť pozorovatele ale pak ZV vedeme od stavů pozorovatele u = Kxˆ + r = Ax + Buy, = x soustava r u = Axˆ + Bu+ L( y xˆ) = Ax + Bu + + u = Kxˆ + r = ( A L) xˆ + Bu+ Ly = ( A L BK) xˆ + Ly+ Br rovnice regulátoru tedy jsou = A L BK xˆ + Ly+ Br ( ) u = Kxˆ + r a jeho přenos je regulátor K ˆx x ˆ = Axˆ + B + L( y xˆ u ) ( ) ( ) ( ) 1 1 us () = K si A + L + BK Lys () + 1 K si A + L + BK B rs () y 10
Separace Automatické řízení - Kybernetika a robotika Výsledný systém (soustava + pozorovatel + ZV) má rovnice = Ax BKxˆ + Br u = Kxˆ + r ˆ = Lx + ( A L BK) xˆ + Br Abychom lépe určili jeho póly, r u vyjádříme ho se stavy xe, = x xˆ + = ( ) x + BKe + Br + A BK e = ( A L) e neboli blokově = + A BK BK x B K = + r e 0 A L e 0 regulátor soustava x Ax Bu póly výsledného systému jsou zřejmě póly ZV bez pozorovatele + póly pozorovatele bez ZV teprve z toho plyne, že smíme obě části navrhovat zvlášť: tzv. princip separace ˆx x ˆ = Axˆ + B + L( y xˆ u ) y 11
Další použití pozorovatele Pozorovatel se používá i k řešení jiných úloh: Jako náhrada měření veličiny, které není možné či snadné V případě chyb, selhání, poruch (fault, fauilure) k jejich detekci = že došlo k selhání (fault detection) izolaci = kde přesně došlo k selhání (fault isolation) V případě selhání senzoru a/nebo aktuátoru k rekonfiguraci např. se při selhání senzoru použije pro řízení místo skutečně naměřených hodnot výstupu použijí hodnoty odhadnuté pozorovatelem v případě selhání aktuátoru se použije tzv. virtuální aktuátor, což je modifikace pozorovatele (Podobně) v případě změny vlastností senzoru/aktuátoru 12