Obserwator stanu

Z Wikipedii, wolnej encyklopedii

Obserwator stanu (estymator stanu) – w teorii sterowania obserwator stanu to model układu rzeczywistego, który wykorzystując pomiary wejść i wyjść tego układu dostarcza estymaty (wewnętrznego) stanu układu. Zwykle jest to model matematyczny zaimplementowany na komputerze.

Wstęp[edytuj | edytuj kod]

Znajomość stanu układu jest niezbędna przy rozwiązaniu wielu problemów teorii sterowania; na przykład, problemu stabilizacji układu z użyciem lokowania biegunów układu zamkniętego. W większości praktycznych przypadków, nie można poprzez bezpośrednią obserwację ustalić jaki jest stan fizyczny układu. Zamiast tego na wyjściu systemu obserwuje się pośrednie skutki jakie wywołuje stan wewnętrzny układu. Można to zilustrować przykładem z pojazdami w tunelu: częstość i prędkości z jakimi pojazdy wjeżdżają do tunelu i opuszczają go podlegają bezpośredniej obserwacji, ale dokładny stan wnętrza tunelu może być tylko estymowany. Jeśli system jest obserwowalny, można, z użyciem obserwatora stanu, na podstawie pomiarów, w pełni zrekonstruować stan układu.

Typowy model obserwatora[edytuj | edytuj kod]

Można założyć, że stan dyskretnego układu fizycznego spełnia poniższe równania stanu:

gdzie to stan obiektu w chwili to wejścia systemu a to jego wyjścia. Z równań tych wynika, ze zarówno aktualne wyjścia układu i ich przyszły stan określone są jedynie przez bieżący stan układu i bieżące wejścia układu. (Podane wyżej równania odnoszą się do przypadku układu dyskretnego (czyli przyjmują dyskretny krok czasowy), podobne równania stanu określa się również dla przypadku układu ciągłego). Jeśli układ ten jest obserwowalny to wyjście obiektu można wykorzystać do sterowania stanem obserwatora stanu.

Model obserwatora stanu dla systemu fizycznego wyprowadza się zwykle korzystając z powyższych równań. Można w nich ująć dodatkowe wyrażenia by zapewnić zbieżność stanu modelu do stanu fizycznego systemu po otrzymaniu kolejnych pomierzonych wartości wejść i wyjść obiektu.

W szczególności wyjście obserwatora można odjąć od wyjścia obiektu i wówczas pomnożyć przez macierz wyrażenie to następnie jest dodawane do równań stanu obserwatora w wyniku czego otrzymuje się tak zwany obserwator Luenbergera (zaproponowany po raz pierwszy przez Davida Luenbergera), określony przez poniższe równania:

Wyrażenie bywa nazywane częścią korekcyjną, a macierz macierzą wzmocnienia błędu zbieżności.

Należy przy tym zauważyć, że zmienne stanu obserwatora zwykle oznacza się „daszkiem”: i – tak by można je odróżnić od zmiennych równań opisujących system fizyczny.

Obserwator jest stabilny asymptotycznie, jeśli błąd obserwatora zmierza do zera gdy W przypadku obserwatora Luenbergera, błąd obserwatora spełnia następujące równanie Obserwator Luenbergera dla rozważanego układu dyskretnego jest więc stabilny asymptotycznie jeśli macierz posiada wszystkie wartości własne wewnątrz okręgu jednostkowego.

Do celów sterowania (zob. przesuwanie biegunów i regulator liniowo-kwadratowy) wyjście obserwatora układu jest sprzężone z wejściem zarówno obserwatora, jak i obiektu poprzez tzw. macierz wzmocnienia

Równania obserwatora przyjmują wówczas postać:

lub, po uproszczeniu:

Z uwagi na zasadę separacji, macierze i mogą być dobrane niezależnie, bez negatywnego wpływu na ogólną stabilność układu. W praktyce bieguny obserwatora dobiera się zwykle tak by były zbieżne 10 razy szybciej niż bieguny układu

Przypadek układu liniowego z czasem ciągłym[edytuj | edytuj kod]

Podany powyżej przykład obserwatora dotyczy stacjonarnego, dyskretnego układu liniowego. Podobnie wygląda przypadek dla układu czasu ciągłego: wzmocnienie obserwatora dobiera się tak aby błąd był asympotycznie zbieżny do zera (to znaczy gdy jest macierzą Hurwitza).

W przypadku układu liniowego z czasem ciągłym:

gdzie obserwator wygląda podobnie jak w przypadku dyskretnym opisanym powyżej:

Błąd obserwatora spełnia równanie:

Wartości własne macierzy można arbitralnie dobrać poprzez właściwy wybór wzmocnienia obserwatora gdzie para jest obserwowalna to znaczy zachowany jest warunek obserwowalności. W szczególności, może to być macierz Hurwitza, tak że błąd obserwatora gdy

Szczytowanie i inne metody związane z obserwatorami[edytuj | edytuj kod]

Gdy wzmocnienie obserwatora jest duże to liniowy obserwator Luenbergera jest bardzo szybko zbieżny do stanu układu. Jednakże duże wzmocnienie obserwatora prowadzi do zjawiska szczytowania, które polega na tym, że początkowy błąd estymatora może się stać niewspółmiernie duży (to znaczy, niepraktyczny lub niebezpieczny w użyciu).

Teorię (zamkniętego) obserwatora Luenbergera rozwija teoria filtru Kalmana. Filtr Kalmana jest optymalnym obserwatorem stanu układu dlatego pozwala na wyznaczenie optymalnego wzmocnienia obserwatora.

Opracowano też inne nieliniowe metody obserwatorów z dużym wzmocnieniem. Na przykład sterowanie ślizgowe może być stosowane do projektowania obserwatorów, które w skończonym czasie doprowadzają błąd estymowanej zmiennej stanu do zera, nawet w obecności błędów pomiarowych; inne zmienne stanu mają błąd, który zachowuje się podobnie do błędu w obserwatorze Luenbergera gdy ustanie szczytowanie. Obserwatory z przesuwnym trybem mają również pożądane własności radzenia sobie z szumem, podobne do tych jakie wykazuje filtr Kalmana.

Obserwator pełnego rzędu a obserwator zredukowany[edytuj | edytuj kod]

Obserwator pełnego rzędu to taki obserwator, który odtwarza wszystkie składowe wektora stanu W przypadku, gdy część tych składowych jest mierzalna nie ma potrzeby ich odtwarzania i można się ograniczyć do odtwarzania jedynie grupy składowych niemierzalnych wektora stanu. Obserwatory tego typu noszą nazwę obserwatorów zredukowanych (lub obserwatorów zredukowanego rzędu). Ich konstruowanie opiera się na metodzie stosowanej dla obserwatorów odtwarzających cały wektor stanu (takie obserwatory nazywa się czasami obserwatorami rzędu gdzie jest wymiarem wektora stanu obiektu).

Zobacz też[edytuj | edytuj kod]