Wykład 6 - odtwarzanie zmiennych stanu przez obserwację Instytut Automatyki i Robotyki Warszawa, 2014
Odtwarzanie zmiennych stanu Wykorzystanie układów sterowania od zmiennych stanu wymaga uzyskania dodatkowych informacji o stanie obiektu. W układach pozycjonowania są to najczęściej: położenie - d(t), prędkość - v(t)), przyspieszenie - a(t). Informacje te mogą być dostępne dzięki użyciu dodatkowych przetworników pomiarowych. Wiąże się to jednak między innymi z dodatkowym kosztem.
Odtwarzanie zmiennych stanu - sposoby odtwarzania sygnałów Sterowanie dyskretne i technika cyfrowa pozwalają uzyskiwać dodatkowe informacje o stanie obiektu poprzez odtwarzanie zmiennych stanu. Korzyści jakie wynikają z eliminacji dodatkowych czujników to: obniżenie kosztów, zmniejszenie wymiarów maszyny napędzającej, eliminacja połączeń kablowych od czujników prędkości, większa niezawodność. Istnieją 2 podstawowe sposoby odtwarzania sygnałów przez różniczkowanie, przez obserwację (wykorzystanie obserwatorów).
Odtwarzanie zmiennych stanu przez różniczkowanie
Odtwarzanie zmiennych stanu przez różniczkowanie metodą bezpośrednią Odtwarzanie prędkości i przyspieszenia - metody dwu- i wielopunktowe ˆv(k) = [s(k) s(k i)] it p, (1) [ˆv(k) ˆv(k i)] [s(k) s(k i) s(k j) + s(k i j)] â(k) = = jt p ijtp 2, (2) gdzie: i, j = 1, 2, 3,... oznacza liczbę okresów próbkowania T p wykorzystywanych w dyskretnej procedurze odtwarzania (i = 1 realizacja dwupunktowa itd.) Przy odtwarzaniu zmiennych metodą siecznej możliwe jest wybranie realizacji różniczkowania od dwu- do wielopunktowej, które różnią się liczbą punktów s użytych do różniczkowania (parametry i, j). Zwiększenie liczby punktów użytych do różniczkowania zwiększa przesunięcie fazowe odtwarzanych sygnałów prędkości i przyspieszenia oraz zwiększeniu ulegają błędy amplitudy odtwarzanych sygnałów, ale jednocześnie zmniejsza się wpływ zniekształceń sygnału pomiaru położenia na jakość odtwarzania sygnałów v i a (lepsze filtrowanie).
Odtwarzanie zmiennych stanu przez różniczkowanie metodą bezpośrednią Rysunek : Odtwarzanie przez różniczkowanie (sieczna wielopunktowa); v, a - sygnały wzorcowe, sygnały odtworzone procedurą: v 1, a 1 - trójpunktową, v 2, a 2 - pięciopunktową.
Odtwarzanie zmiennych stanu przez różniczkowanie metodą wielomianu interpolacyjnego Metoda opiera się na zastąpieniu zbioru dyskretnych wartości s(k) ciągłą funkcją f (t), a następnie wyliczenie wartości jej pochodnych, tzn. odtworzenie sygnału prędkości i przyspieszenia, w dowolnej chwili czasowej przedziału < k a, k b >. ˆv(k) = df (t) dt â(k) = d 2 f (t) dt 2 (3) t=k (4) t=k spośród wielu możliwych do wykorzystania funkcji interpolacyjnych: algebraicznych, trygonometrycznych, ekspotencjalnych, sklejanych itp., wygodnie jest się posługiwać wielomianem Newtona w postaci: f (t) = n a r w r (t) (5) r=0
Odtwarzanie zmiennych stanu przez różniczkowanie metodą wielomianu interpolacyjnego Wielomian Newtona f (t) = n a r w r (t) (6) posiada wielomiany bazowe w r (t) rzędu nie wyższego niż n, tzn. r=0 w 0 (t) = 1, w r (t) = (t k 0 )(t k 1 )...(t k r 1 ), r = 1, 2,..., n, (7) gdzie: k 0, k 1,..., k n są zadanymi punktami węzłowymi (w rozpatrywanej aplikacji kolejnymi chwilami czasu dyskretnego k z uwzględnianego przedziału pomiaru położenia s(k))
Odtwarzanie zmiennych stanu przez różniczkowanie metodą wielomianu interpolacyjnego Postać wielomianowa pozwala na przedstawienie pochodnych funkcji interpolacyjnej jako liniowej kombinacji jej wartości: umożliwia to wyznaczenie wartości odtwarzanych sygnałów tylko na podstawie odłożonych w pamięci procesora wartości s(k) z kontrolowanego przedziału czasu < k a, k b > oraz okresu próbkowania T p. Współczynniki wielomianu a r, r = 1, 2...n można określić na dwa sposoby: METODA 1 - rozwiązując układ równań f (k 0 ) = a 0 = s(k 0 ) f (k 1 ) = a 0 + a 1 (k 1 k 0 ) = s(k 1 )... f (k n ) = a 0 +... + a n (k n k 1 )...(k n k n 1 ) = s(k n ) (8)
Odtwarzanie zmiennych stanu przez różniczkowanie metodą wielomianu interpolacyjnego Współczynniki wielomianu a r, r = 1, 2...n można określić na dwa sposoby: METODA 2 - rekurencyjnie, za pomocą ilorazów różnicowych o postaci b ij = s(k i) s(k j ) k i k j (9) opartej na węzłach k i, k j, co pozwala obliczać iloraz różnicowy oparty na węzłach k i, k i+1,..., k i+m (iloraz rzędu m) za pomocą ilorazów wykorzystujących węzły k i, k i+1,..., k i+m 1 oraz k i+1, k i+2,..., k i+m b i,i+1,...,i+m = b i,i+1,...,i+m 1 b i+1,i+1,...,i+m k i k i+m. (10) Współczynniki wielomianu przyjmują wtedy wartości a 0 = b 0, a 1 = b 0,1,..., a n = b 0,1,2,...,n (11)
Odtwarzanie zmiennych stanu przez różniczkowanie metodą wielomianu interpolacyjnego Rysunek : Odtwarzanie przez różniczkowanie z wykorzystaniem wielomianu interpolacyjnego (procedura czteropunktową): sygnały v, a - wzorcowe, v 1, a 1 - w aktualnej chwili czasowej, v 2, a 2 - w środku przedziału czasowego Wadą metody interpolacyjnej są zniekształcenia wartości sygnałów w przypadku niskiego rzędu wielomianu - zbliżenie do wartości rzeczywistych, szczególnie dobre dla prędkości, uzyskuje się dopiero od procedury czteropunktowej
Odtwarzanie zmiennych stanu przez różniczkowanie metodą wielomianu aproksymacyjnego Wielomian aproksymacyjny rozszerzenie wielomianu interpolacyjnego Dla wielomianu rzędu wyższego, m > n, nie ma jednoznacznego rozwiązania ale możliwe są dwie drogi określenia wartości współczynników wielomianu aproksymacyjnego ˆf (k) = m a r (k)(kt p ) r = ˆF (k)w(k) (12) r=0 gdzie ˆF (k) = [a 0, a 1,..., a m ] T, w k = [1, kt p,..., kt m p ], F, w R m 1 oznaczają wektory współczynników i rozwinięć potęgowych wielomianu.
Odtwarzanie zmiennych stanu przez różniczkowanie metodą wielomianu aproksymacyjnego Współczynniki wielomianu a r, r = 1, 2...m można określić na dwa sposoby: METODA 1 - metodą aproksymacji średniokwadratowej dyskretnej, poszukując wartości minimalnej liniowo-kwadratowego wskaźnika jakości I L K ˆf (k) = n [s(k i) ˆf ( it p )] 2 tzn. i=0 Prowadzi to do układu m + 1 równań m r=0( 1) r+1 a r [ n i=0 (n + 1 i) 2m r q T r p q = 0,..., m I L K ˆf (k) = 0 dla r = 0,..., m a r (k) ] = (13) n i m q s(k i) i=0 (14)
Odtwarzanie zmiennych stanu przez różniczkowanie metodą wielomianu aproksymacyjnego Współczynniki wielomianu a r, r = 1, 2...m można określić na dwa sposoby: METODA 2 - metodą szacowania współczynników wielomianu optymalnegoocenianego przez kryterium najmniejszych kwadratów I LS ˆf (k) = 1 n + 1 n λ n 1 [s(k i) ˆf ( it p )] 2 = min (15) i=0 w wersji podstawowej (LS) lub - co korzystniejsze ze względu na pożądane ograniczenia obliczeniowe procedury - w wersji rekurencyjnej (RLS), gdzie λ < 1 - tzw. współczynnik zapominania.
Odtwarzanie zmiennych stanu przez różniczkowanie metodą wielomianu aproksymacyjnego Analityczne różniczkowanie wielomianu aproksymacyjnego prowadzi do wyrażeń opisujących - ogólnie - odtwarzane sygnały, np. prędkości i przyspieszenia w funkcji czasu i oszacowanych współczynników a i (k), odpowiednio jako: prędkość przyspieszenie ˆv(k) = a 1 (k) + a 2 (k)2kt p +... + a m (k)m(kt p ) m 1 (16) â(k) = a 2 (k)2 + a 3 (k)6kt p +... + a m (k)m(m 1)(kT p ) m 2 (17)
Odtwarzanie zmiennych stanu przez różniczkowanie metodą wielomianu aproksymacyjnego Rysunek : Odtwarzanie przez różniczkowanie z wykorzystaniem wielomianu aproksymującego: v, a - sygnały wzorcowe, odtwarzanie z zastosowaniem wielomianu 3 rzędu, procedury ośmiopunktowej i współczynnika zapominania estymacji λ o wartości: v 1, a 1, λ = 0, 8, v 2, a 2, λ = 0, 6, v 3, a 3, λ = 0, 15
Odtwarzanie zmiennych stanu przez różniczkowanie W praktyce preferowane jest odtwarzanie przez różniczkowanie. Ma ono szereg zalet w stosunku do odtwarzania przez obserwację. Ograniczona moc obliczeniowa wykorzystywanych w produktach przemysłowych (ze względu na niski koszt) układów mikroprocesorowych (8-bitowe, 16- i 32-bitowe, jednokartowe sterowniki procesorowe) i kompatybilna z ich możliwościami obliczeniowymi prostota implementacji, Bezmodelowa, a więc odporna na zmiany warunków pracy napędu, procedura odtwarzania sygnałów - w porównaniu z potrzebą wiarygodnego modelu zachowań dynamicznych napędu w przypadku obserwacji i złożoność identyfikacyjna i implementacyjna tego modelu, Zawodność liniowego obserwatora w obszarze silnie nieliniowych zachowań napędu, a więc przede wszystkim w obszarze małych prędkości ruchu.
Odtwarzanie zmiennych stanu przez różniczkowanie Główne wady odtwarzania przez różniczkowanie są następujące Podniesienie szumu pomiarowego przez wzmocnienie wysokoczęstotliwościowych sygnałów zakłóceń; problematyczne w przypadku bezdotykowych, indukcyjnych i magnetostrykcyjnych, przetworników położenia, odpornych na warunki pracy i tanich, ale obarczonych dużym szumem pomiarowym - nawet kilkukrotnie przewyższającym rozdzielczość właściwego pomiaru. Przesunięcie czasowe (opóźnienie fazowe) odtwarzanych sygnałów: do odtworzenia sygnałów ˆv i â w chwili k potrzebne są, oprócz sygnału d(k), sygnały z poprzednich chwil d(k i) i d(k j). Zredukowanie wartości liczbowych reprezentujących sygnał odtwarzany w stosunku do rozdzielczości zastosowanego przetwornika położenia (kwantyzacja sygnałów) - szczególnie widoczne przy wielokrotnym różniczkowaniu. Pogorszenie stabilności zmuszające do ograniczenia wartości wzmocnień w układzie sterowania i przez to zmniejszenie wpływu na zachowania dynamiczne napędu.
Odtwarzanie zmiennych stanu przez obserwację
Odtwarzanie zmiennych stanu przez obserwację - realizacja obserwatora Proces ruchu realizowany przez układ napędowy jest przyjmowany jako wielowymiarowy, jednowyjściowy obiekt sterowania, opisany w uproszczonej postaci dyskretnej przez następujące macierze stanu, sterowania i wyjścia A md R n n (18) B md R n r (19) C md R 1 n (20) oraz przez opóźnienie d. Obserwator według Luenbergera to układ o postaci ˆx(k + 1) = A md x(k) + B md u(k d) + k ob e ob (k), e ob (k) = [y(k) C md ˆx(k)] (21) estymujący - przy odpowiednim doborze macierzy obserwacji k ob R n 1 stan procesu ˆx(k).
Odtwarzanie zmiennych stanu przez obserwację - realizacja obserwatora Narzucenie dyskretnemu układowi wartości własnych z 1, z 2,..., z n określa macierz obserwacji k ob zgodnie z zależnością det(zi A md + k ob C md ) = (z z 1 )(z z 2 )...(z z n ) (22) oraz określa dynamikę zanikania odchyłki odtwarzania e ob (k). Zbieżność estymacji zapewniają wartości własne z i leżące wewnątrz okręgu jednostkowego na płaszczyźnie zmiennej zespolonej z z i < 1, i = 1, 2,..., n (23) co oznacza spełnienie warunku stabilności asymptotycznej obserwatora.
Odtwarzanie zmiennych stanu przez obserwację Rysunek : Sterowanie pozycyjne pneumatycznego układu napędowego z obserwatorem.
Odtwarzanie zmiennych stanu przez obserwację Przykład: Macierz obserwacji dla dyskretnego modelu procesu ruchu 1 T p 0 0 x(k + 1) = 0 1 αt p βt p x(k) + C m T p α 0 2αβ 1 αt p 2β(1 β) 2C m αβ (24) y(k) = [1 0 0]x(k) (25) gdzie α = 0.5ω 2 omt p, β = 1 D m ω om T p (26) Równanie stanu dane jest w postaci (n = 3, r = 1) x(k + 1) = 1 a 12 0 0 a 22 a 23 x(k) + 0 b 21 0 a 32 a 33 b 31 (27) Macierz wzmocnień obserwatora wyznacza się więc wg zależności 1 a 12 0 k ob1 det Iz 0 a 22 a 23 + k ob2 [1 0 0] = (z z 1 )(z z2)(z z3) 0 a 32 a 33 k ob3 (28)
Odtwarzanie zmiennych stanu przez obserwację Korzystając z (28) otrzymuje się następujące zależności określające składowe macierzy obserwacji k ob1 = 1 + a 22 + a 33 γ 1 (29) k ob2 = γ 2 [a 22 a 33 a 23 a 32 + a 22 + a 33 k(a 22 + a 33 )] a 12 (30) k ob3 = a 22a 33 a 23 a 32 k ob1 (a 22 a 33 + a 23 a 32 ) + k ob2 a 12 a 33 γ 3 a 12 a 23 (31) gdzie: γ 1 = z 1 + z 2 + z 3, γ2 = z 1 z 2 + z 1 z 3 + z 2 z 3, γ 3 = z 1 z 2 z 3. UWAGA: głównym problemem realizacyjnym obserwatora pozostaje wybór wartości własnych (z 1, z 2, z 3 ) - oprócz teoretycznych uwarunkowań brakuje innych, konkretnych przesłanek wyboru: powodzenie, ograniczone zresztą, zapewniają 2 metody.
Odtwarzanie zmiennych stanu przez obserwację metody dobory wartości własnych METODA 1: Narzucenie wartości własnych w płaszczyźnie zmiennej zespolonej s w funkcji pulsacji drgań swobodnych ω om wybranego do realizacji obserwatora modelu procesu ruchu. z warunkiem s 1,2 = αω om (1 ± jβ), s 3 = αχω om (32) α(ω om ) = { α ω ogr ω om gdy ω om < ω ogr α gdy ω om ω ogr (33) następnie transformacji wartości własnych na płaszczyznę z wg z 1,2 = e αωomtp cos(αβω om T p ) ± je αωomtp sin(αβω om T p ) (34) gdzie współczynniki α, β i γ, dobrane są dla typowych rozwiązań i warunków pracy napędów, tzn. zapewniają dostatecznie szybkie dążenie zmiennych odtwarzanych do odpowiednich zmiennych stanu procesu ruchu.
Odtwarzanie zmiennych stanu przez obserwację METODA 2: powiązanie problemu syntezy obserwatora i sterowania pozycyjnego napędu przez narzucenie dopuszczalnych wartości odchyłek zmiennych stanu: powodowanych przez odtwarzanie (δ ob x) i sterowanie pozycyjne (δx). Względne wartości tych odchyłek można powiązać ze sobą wychodząc z równań pracy układu po wprowadzeniu zakłócenia skokowego u(t) = U o 1(t), (35) jako δ x = k x δ obx U o (36) k ob1 = δ x2k x1, k ob2 = δ x3k x1, k ob3 = C mωomk 2 x1 2D m ω om k ob2 ω δ x1 k x2 δ x1 k omk 2 ob1 x3 δ x1 (37)
Odtwarzanie zmiennych stanu przez obserwację METODA 2 cd: Uwzględnienie wartości odchyłek prowadzi, dla modelu zachowań oscylacyjnych procesu ruchu, do zależności { s1,2 = Re s 1,2 ± jim s 1,2 s 3 = Res 3 (38) oraz Res 3 [(Res 1,2 ) 2 + (Ims 1,2 ) 2 ] = C mω om k x1 δ x1 (39) określających położenie wartości własnych s 1,2 po narzuceniu wartości odchyłki położenia δ x1, wzmocnienia położeniowego k x1 i części rzeczywistej s 3.
Odtwarzanie zmiennych stanu przez obserwację Rysunek : Odtwarzanie przez obserwację, gdzie: v, a - sygnały wzorcowe, odtwarzanie przy pomocy obserwatorów wykorzystujących modele o parametrach: v 1, a 1 - obliczanych analitycznie oraz szacowanych: v 2, a 2 - w trakcie eksperymentu uruchomieniowego (off-line), v 3, a 3 - w trakcie normalnej pracy układu napędowego (on-line).
Obserwator obliczeniowy lub uruchomieniowy Ze względu na nieadekwatności modelu obliczeniowego lub identyfikowanego w procedurze uruchomieniowej w odniesieniu do bieżącego zachowania układu napędowego, odtwarzanie dla potrzeb sterowania przez deterministyczny (stały) obserwator prowadzi do pogorszenia jakości sterowania nawet w stosunku do układów korzystających z różniczkowania metodą siecznej. Nie satysfakcjonują również próby rozbudowy struktury obserwatora o wybrane elementy nieliniowe próby wzmacniania sprzężenia zwrotnego w powiązaniu z odchyłką odtwarzania (ze względu na podniesienie poziomu szumu wprowadzanego z sygnału położenia).
Obserwator obliczeniowy lub uruchomieniowy Stosunkowo dobrą metodą poprawy jakości odtwarzania jest wprowadzenie mechanizmu samostrojenia, zakładającego uzmiennienie modelu dynamiki napędu w stosunku do wartości obliczanych lub szacowanych; przyjmując np. stałą wartość wzmocnienia prędkościowego C m - pulsacja drgań swobodnych ω om oraz tłumienie D m modelu wykorzystywanego w obserwatorze mogą być w tym mechanizmie wyliczane: bezpośrednio pośrednio, przez uproszczoną aproksymację przebiegu wartości uwzględnianych parametrów: odcinkami linii prostych wychodzących od znanej wartości (np. od wartości minimalnej), schodkowo, stałymi wartościami w tak dobranych zakresach wartości określanego parametru, np. pulsacji, aby spełnić określone warunki
Obserwator obliczeniowy lub uruchomieniowy Przy obliczaniu pośrednio - schodkowo, stałymi wartościami w tak dobranych zakresach wartości określanego parametru, np. pulsacji, aby spełnić określone warunki, przyjmuje się ω om (s) ω omob (s) ω om min δ ωom, orazω omob (s) = c ωom (s)ω om min (40) gdzie: ω om odpowiada wartości wyliczonej, ω om min - wartości minimalnej, ω omob - wartości wykorzystywanej w mechanizmie samostrojenia, δω o m - względnej, akceptowanej odchyłce aproksymacji i c ωom - współczynnikowi aproksymacji.
Obserwator identyfikowany w trakcie normalnej pracy napędu Odtwarzanie z wykorzystaniem modelu odtwarzanego, uwzględniając problematykę szacowania współczynników modelu, realizacji obserwatora oraz optymalizacji nakładu obliczeniowego i dostępu do pamięci procesora, przebiegu w następujących krokach obliczeniowych: odtworzenie wartości parametrów ruchu, np. prędkości i przyspieszenia, jedną z metod zapewniających możliwie wierny wartościowo i gładki przebieg sygnałów, określenie współczynników modeli zachowań procesu ruchu np. prędkościowych i przyspieszeniowych procesu ruchu: ˆv(k) = ˆθ v1ˆv(k 1) + ˆθ v2 â(k 1) + ˆθ v3 u(k d 1) â(k) = ˆθ a1ˆv(k 1) + ˆθ a2 â(k 1) + ˆθ a3 u(k d 1) (41) przez oszacowanie w trakcie normalnej pracy napędu zgodnie ze schematem rekurencyjnym RLS,
Obserwator identyfikowany w trakcie normalnej pracy napędu wyznaczenie odchyłki obserwacji (odtwarzania) ê ob (k) w postaci ê ob (k) = s(k) ŝ(k) (42) wyliczenie aktualnych wartości składowych macierzy obserwacji k ob1, k ob2 ik ob3 wybraną metodą, odtworzenie przyrostu przemieszczenia s p (k + 1), sygnału prędkości ˆv(k + 1) i przyspieszenia â(k + 1) ˆv(k) s p (k + 1) a 12 (k) a 13 (k) b 1 (k) k ob1 (k) ˆv(k + 1) = a 22 (k) a 23 (k) b 2 (k) k ob2 (k) â(k) u(k + d) â(k + 1) a 32 (k) a 33 (k) b 3 (k) k ob3 (k) ê ob (k) (43) estymację sygnału położenia, na podstawie otrzymanej wartości przyrostu ŝ(k + 1) = ŝ(k) + s p (k + 1) (44)
Obserwator identyfikowany w trakcie normalnej pracy napędu W porównaniu z obserwatorem wykorzystującym model obliczeniowy lub identyfikowany w eksperymencie uruchomieniowym obserwator identyfikowany w trakcie normalnej pracy napędu zapewnia najlepszą jakość odtwarzania - nie jest jednak wolny od wad związanych ze stosowaniem modelu szacowaniem modelu, trudnością identyfikacji modelu (np. w trakcie małych przemieszczeń), zaniżaniem wartości szacowanej pulsacji w skrajnych położeniach (np. napędów płynowych), wrażliwością na błąd punktu zerowego wysterowania.