Sterowanie optymalne przy kwadratowym wskaźniku jakości (LQR)



Podobne dokumenty
Projektowanie układów metodą sprzężenia od stanu - metoda przemieszczania biegunów

Tematyka egzaminu z Podstaw sterowania

Politechnika Wrocławska, Wydział Informatyki i Zarządzania. Modelowanie

Obserwatory stanu, zasada separowalności i regulator LQG

Metody Optymalizacji Laboratorium nr 4 Metoda najmniejszych kwadratów

Macierz A nazywamy macierzą systemu, a B macierzą wejścia.

Automatyka i robotyka

Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie. Sterowanie ciągłe. Teoria sterowania układów jednowymiarowych

Podstawy automatyki. Energetyka Sem. V Wykład 1. Sem /17 Hossein Ghaemi

1. Regulatory ciągłe liniowe.

Podstawy środowiska Matlab

WYDZIAŁ ELEKTROTECHNIKI, AUTOMATYKI I INFORMATYKI INSTYTUT AUTOMATYKI I INFORMATYKI KIERUNEK AUTOMATYKA I ROBOTYKA STUDIA STACJONARNE I STOPNIA

MATLAB ŚRODOWISKO MATLABA OPIS, PODSTAWY

Opis systemów dynamicznych w przestrzeni stanu. Wojciech Kurek , Gdańsk

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Sterowanie napędów maszyn i robotów

Laboratorium z podstaw automatyki

Rozwiązywanie równań różniczkowych z niezerowymi warunkami początkowymi

Inżynieria Systemów Dynamicznych (4)

Regulator liniowo kwadratowy na przykładzie wahadła odwróconego

Wprowadzenie do technik regulacji automatycznej. prof nzw. dr hab. inż. Krzysztof Patan

WYDZIAŁ ELEKTRYCZNY KATEDRA AUTOMATYKI I ELEKTRONIKI. Badanie układu regulacji dwustawnej

Laboratorium z podstaw automatyki

POLITECHNIKA ŚLĄSKA WYDZIAŁ GÓRNICTWA I GEOLOGII. Roman Kaula

Sreszczenie. Słowa kluczowe: sterowanie, poziom cieczy, regulator rozmyty

Podstawy Automatyki. Wykład 2 - podstawy matematyczne. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Rok akademicki: 2030/2031 Kod: RAR n Punkty ECTS: 7. Poziom studiów: Studia I stopnia Forma i tryb studiów: -

Przekształcanie równań stanu do postaci kanonicznej diagonalnej

Badanie wpływu parametrów korektora na własności dynamiczne układu regulacji automatycznej Ćwiczenia Laboratoryjne Podstawy Automatyki i Automatyzacji

WYDZIAŁ ELEKTROTECHNIKI, AUTOMATYKI I INFORMATYKI INSTYTUT AUTOMATYKI I INFORMATYKI KIERUNEK AUTOMATYKA I ROBOTYKA STUDIA STACJONARNE I STOPNIA

1. Podstawowe pojęcia

analogowego regulatora PID doboru jego nastaw i przetransformowanie go na cyfrowy regulator PID, postępując według następujących podpunktów:

1. Opis teoretyczny regulatora i obiektu z opóźnieniem.

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

PROGRAMOWANIE KWADRATOWE

ZASTOSOWANIE PROGRAMOWANIA LINIOWEGO W ZAGADNIENIACH WSPOMAGANIA PROCESU PODEJMOWANIA DECYZJI

ELEMENTY AUTOMATYKI PRACA W PROGRAMIE SIMULINK 2013

Podstawy Automatyki. Wykład 6 - Miejsce i rola regulatora w układzie regulacji. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Badanie właściwości dynamicznych obiektów I rzędu i korekcja dynamiczna

Systemy. Krzysztof Patan

Politechnika Warszawska Wydział Samochodów i Maszyn Roboczych Instytut Podstaw Budowy Maszyn Zakład Mechaniki

STEROWANIE TEMPERATURĄ W DRUKARCE 3D

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

PRZEWODNIK PO PRZEDMIOCIE

Inteligencja obliczeniowa

Automatyka i robotyka

Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie. Sterowanie ciągłe. Teoria sterowania układów jednowymiarowych

Instrukcja do ćwiczenia laboratoryjnego nr 6a

Transmitancje układów ciągłych

Mechatronika i inteligentne systemy produkcyjne. Modelowanie systemów mechatronicznych Platformy przetwarzania danych

Algorytmy sztucznej inteligencji

SKRYPT STRONY LITERATURA STRONY: 48, 63

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

TEORIA OBWODÓW I SYGNAŁÓW LABORATORIUM

Analityczne metody detekcji uszkodzeń

WOJSKOWA AKADEMIA TECHNICZNA

Projektowanie układów regulacji w dziedzinie częstotliwości. dr hab. inż. Krzysztof Patan, prof. PWSZ

7.2.2 Zadania rozwiązane

Podstawy inżynierii sterowania Ćwiczenia laboratoryjne

PRZEWODNIK PO PRZEDMIOCIE

Laboratorium z automatyki

Zaawansowane metody numeryczne

Technika regulacji automatycznej

Model Predictive Control

Zaawansowane metody numeryczne

Regulacja dwupołożeniowa.

Definicje i przykłady

Przetworniki cyfrowo-analogowe C-A CELE ĆWICZEŃ PODSTAWY TEORETYCZNE

Komputerowa analiza zagadnień różniczkowych 10. Dwupunktowe problemy brzegowe (BVP, Boundary Value Problems)

Metody i analiza danych

Politechnika Warszawska Wydział Samochodów i Maszyn Roboczych Instytut Podstaw Budowy Maszyn Zakład Mechaniki

Tranzystory bipolarne. Właściwości wzmacniaczy w układzie wspólnego kolektora.

INSTRUKCJA Regulacja PID, badanie stabilności układów automatyki

Politechnika Wrocławska, Wydział Informatyki i Zarządzania. Modelowanie

WYDZIAŁ ELEKTROTECHNIKI, AUTOMATYKI I INFORMATYKI INSTYTUT AUTOMATYKI I INFORMATYKI KIERUNEK AUTOMATYKA I ROBOTYKA STUDIA STACJONARNE I STOPNIA

Symulacja pracy silnika prądu stałego

Instrukcja do ćwiczenia 6 REGULACJA TRÓJPOŁOŻENIOWA

WYDZIAŁ ELEKTROTECHNIKI, AUTOMATYKI I INFORMATYKI INSTYTUT AUTOMATYKI I INFORMATYKI KIERUNEK AUTOMATYKA I ROBOTYKA STUDIA STACJONARNE I STOPNIA

Uzupełnienie skryptów do laboratorium sterowania analogowego

ROBOTYKA. Odwrotne zadanie kinematyki - projekt.

Tranzystory w pracy impulsowej

Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie. Sterowanie ciągłe. Teoria sterowania układów jednowymiarowych

Instytut Politechniczny Państwowa Wyższa Szkoła Zawodowa. Diagnostyka i niezawodność robotów

Automatyka i robotyka ETP2005L. Laboratorium semestr zimowy

LABORATORIUM ELEKTRONIKI WZMACNIACZ OPERACYJNY

WYDZIAŁ PPT / KATEDRA INŻYNIERII BIOMEDYCZNEJ D-1 LABORATORIUM Z MIERNICTWA I AUTOMATYKI Ćwiczenie nr 7. Badanie jakości regulacji dwupołożeniowej.

Automatyka i pomiary wielkości fizykochemicznych. Instrukcja do ćwiczenia VI Dobór nastaw regulatora typu PID metodą Zieglera-Nicholsa.

Podstawy MATLABA, cd.

Układ regulacji automatycznej (URA) kryteria stabilności

Rys 1 Schemat modelu masa- sprężyna- tłumik

Informatyczne Systemy Sterowania

Cyfrowe algorytmy sterowania AR S1 semestr 4 Projekt 4

4. UKŁADY II RZĘDU. STABILNOŚĆ. Podstawowe wzory. Układ II rzędu ze sprzężeniem zwrotnym Standardowy schemat. Transmitancja układu zamkniętego

Wstęp do równań różniczkowych

WYDZIAŁ PPT / KATEDRA INŻYNIERII BIOMEDYCZNEJ D-1 LABORATORIUM Z AUTOMATYKI I ROBOTYKI Ćwiczenie nr 4. Badanie jakości regulacji dwupołożeniowej.

Wydział Fizyki i Informatyki Stosowanej

AKADEMIA MORSKA W SZCZECINIE WI-ET / IIT / ZTT. Instrukcja do zajęc laboratoryjnych nr 6 AUTOMATYKA

Związek między pojęciami transpozycji, podobieństwa i symetryzacji oraz równości macierzowe

Automatyka i sterowania

Automatyka i Regulacja Automatyczna SEIwE- sem.4

Transkrypt:

Uniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych Laboratorium Komputerowych Systemów Sterowania Sterowanie optymalne przy kwadratowym wskaźniku jakości (LQR) 1. Wprowadzenie (a) Problem sterowania optymalnego Zakładamy, że system liniowy znajduje się w stanie równowagi. Celem sterowania jest utrzymanie systemu w stanie równowagi - lub w zadanym punkcie pracy - pomimo oddziałujących na niego zakłóceń. Zakładamy ponadto, że znany jest opis systemu w przestrzeni stanów oraz jego stan początkowy: ẋ(t) =Ax(t) + Bu(t); x(0) = x 0 y(t) =Cx(t) Należy wyznaczyć sterowanie u = u(t), które minimalizuje kwadratowy wskaźnik jakości: J = 1 2 T 0 (1) ( x T (t)qx(t) + u T (t)ru(t) ) dt (2) gdzie Q jest macierzą symetryczną dodatnio półokreśloną, R jest macierzą symetryczną dodatnio określoną. (b) Dobór wartości elementów macierzy Q i R. W praktyce dobieramy jedynie wartości elementów na diagonali macierzy Q i R w następujący sposób: Q ii = 1/ max. akceptowalna wartość [x 2 i ] R ii = 1/ max. akceptowalna wartość [u 2 i ] (c) Instrukcje Matlab a. Rozwiązanie problemu możemy wyznaczyć przy użyciu poleceń lqr oraz lqry. Wywołujemy je w następujący sposób: [K, P, ev] = lqr(a, B, Q, R, N) [K, P, ev] = lqr(a, B, C, D, Q, R) gdzie K macierz wzmocnień sterownika P macierz Lapunowa ev jest wektorem wartości własnych układu zamkniętego; N jest dodatkową macierzą f. kosztu (opcjonalna) Polecenie lqry rozwiązuje przypadek specjalny gdzie ważone są wyjścia zamiast zmiennych stanu (czyli w funkcji kosztu mamy y T (T )Qy(t) + u T (t)ru(t)). Dyskretna wersja polecenia lqr to dlqr. Algebraiczne Równanie Riccati ego możemy rozwiązać przy pomocy polecenia are (dare dla wersji dyskretnej), równanie postaci: A T X + XA + XBX + C = 0 rozwiązujemy w Matlab ie tak: are(a,b,c). Należy jednak pamiętać że macierz B musi być symetryczna i nieujemnie określona, a macierz C symetryczna 2. Dane jest model wahadła odwróconego opisanego w przestrzeni stanów następującymi równaniami ẋ 0 1 0 0 x 0 ẍ θ = 0 0.1818 2.6727 0 ẋ 0 0 0 1 θ + 1.8182 0 u θ 0 0.4545 31.1818 0 θ 4.5455 gdzie: [ 1 0 0 0 y = 0 0 1 0 ] x ẋ θ θ (3) 1

Rysunek 1: Schemat układu regulacji x - położenie wózka na którym zamocowane jest wahadło θ - kąt odchylenia wahadła od pozycji horyzontalnej (a) Zakładając dostępność pomiarową stanu, zaprojektuj sterownik minimalizujący kwadratowy wskaźnik jakości, przyjmując R = 1 i Q = C T C czyli z 0 0 0 Q = 0 0 0 0 0 0 y 0 0 0 0 0 gdzie z = 1 i y = 1. Następnie przeprowadź symulacje układu wahadła (polecenie lsim) gdy sygnałem wejściowym jest sygnał stały = 0.2 (czyli ustawienie pozycji wahadła na pozycji 0.2m). Sprawdź czy wózek wahadła ustawi się na założonej pozycji. Co więcej, na wykresie charakterystykę kąta odchylenia wahadła (czyli θ, które jest jedna ze zmiennych stanu). Co zaobserwowałeś? (b) Zbadaj wpływ zmian wartości parametrów z i y i sprawdź czy można polepszyć jakość sterowania (ponownie wykreśl przebiegi symulacji układu) (c) Wyznacz takie z i y tak aby zostały spełnione nastepujące wymagania czas ustalania dla x i θ mniejszy niż 5 sec. czas narastania dla x mniejszy niż 1 sec. Przeregulowanie dla θ mniejsze niż 20 stopni (0.35 rad). Uchyb w stanie ustalonym mniejszy niż 2. (d) W celu uzyskania odpowiedniej wartości wyjściowej (a dzięki temu uzyskanie pożądanej wartości uchybu regulacji) musimy dokonać rekonfiguracji rozpatrywanego układu regulacji do postaci przedstawionej na rysunku 1. Poszukiwana macierz N może być wyznaczona przy użyciu funkcji rscale (jej kod znajduje się w ostatniej sekcji tej instrukcji). Można to zrobić wykorzystując poniższy fragment kodu Cn=[1 0 0 0]; Nbar=rscale(A,B,Cn,0,K); Bcn=[Nbar*B]; [Y,X]=lsim(Ac,Bcn,Cc,Dc,U,T); plot(t,y) legend( Wózek, Wahadło ) (e) Zakładając, że stan układu nie jest dostępny pomiarowo należy zaprojektować układ regulacji z obserwatorem stanu - patrz rysunek 2. Sprawdź położenie biegunów układu zamkniętego i zaprojektuj obserwator stanu tak jego bieguny były 4 razy szybsze niż bieguny sterownika. Pamiętaj, że używamy obu wyjść (kąt odchylenia wahadła i pozycja wózka) przy projektowaniu obserwatora Jednak układ nie jest obserwowalny tylko w przypadku obserwacji kąta odchylenia wahadła (możesz to sprawdzić poleceniem rank(obsv(a,c(2,:)))). Ma to oczywiście praktyczną interpretacje: w przypadku pomiaru kąta odchylenia wahadła nie możemy mierzyć położenia wózka i odwrotnie Zbuduj układ regulacji z obserwatorem. narysuj wykresy położenia wózka i kąta odchylenia wahadła. Skorzystaj z następującego fragmentu kodu Ace = [A-B*K B*K; zeros(size(a)) (A-L*C)]; 2

Rysunek 2: Schemat układu regulacji z obserwatorem stanu Rysunek 3: Schemat układu Bce = [ B*Nbar; zeros(size(b))]; Cce = [Cc zeros(size(cc))]; Dce = [0;0]; T = 0:0.01:5; U = 0.2*ones(size(T)); [Y,X] = lsim(ace,bce,cce,dce,u,t); plot(t,y) legend( Wózek, Wahadło ) 3. Projektowanie układu zamkniętego z regulatorem optymalnym (a) Przeanalizować program lqopt projektowania optymalnego układu regulacji. Przed uruchomieniem programu należy wprowadzić do przestrzeni roboczej macierze A,B,C,D. Po każdorazowym uruchomieniu programu syntezy układu sterowania optymalnego lqopt uruchomić program symulacji układu slqopt (schemat blokowy układu przedstawiono na Rys. 3, a poniżej podano parametry symulacji). (b) Zbadać wpływ zmian wartości elementów diagonalnych macierzy R (parametr r programu) na wyniki regulacji. (c) Zbadać wpływ zmian wartości elementów diagonalnych macierzy Q (parametr dq(5) programu) na wyniki regulacji. (d) Zbadać wpływ uwzględnienia czynnika zapewniającego zadany zapas stabilności układu na przebiegi regulacji. Sprawozdanie Sprawozdanie z przeprowadzonego laboratorium powinno zawierać: Wyznaczone macierze regulatorów i obserwatorów 3

Literatura: Wartości wskaźnika kwadratowego jakości Zawartość utworzonych podczas laboratorium skryptów Matlab a wraz z komentarzem Spostrzeżenia dotyczące doboru elementów macierzy R i Q (patrz wzór(2)) Wykresy charakterystyki (patrz podpunkty (a)-(e) zadania 2) wraz z ich opisem. Uwagi i wnioski 1. http://www.engin.umich.edu/group/ctm/index.html 2. Gene F. Franklin, J. D. Powell, A. Emami-Naeini. - Feedback Control of Dynamic Systems. Prentice Hall, 4 edition, 2002 3. Kaczorek T. - Teoria sterowania, T.1, WNT Warszawa 1977. 4. Shahian B., Hassul M. -Control System Design Using MALAB. Prentice Hall, New Jersey,1993 5. Control System Toolbox for Use with MATLAB. User s Guide. MathWorks, 1992. Skrypty Matlab a model wahadła odwóconego 5 M = 0.5; m = 0.2; b = 0.1; i = 0.006; g = 9.8; l = 0.3; masa wózka masa wahadła współczynnik tarcia przyspieszenie ziemskie długość wahadła p = i*(m+m)+m*m*l^2; A = [0 1 0 0; 0 -(i+m*l^2)*b/p (m^2*g*l^2)/p 0; 0 0 0 1; 0 -(m*l*b)/p m*g*l*(m+m)/p 0]; B = [0; (i+m*l^2)/p; 0; m*l/p]; C = [1 0 0 0; 0 0 1 0]; D = [0;0]; mianownik funkcja rscale function[nbar]=rscale(a,b,c,d,k) Dla danego układu liniowego:. x = Ax + Bu y = Cx + Du i macierzy sterownika do stanu K, funkacja rscale(a,b,c,d,k) znaduje wspolczynnik N który wyeliminuje uchyb w stanie ustalonym wywołany sygnałem skokowym na wejściu (np. skok jednostkowy) korzystajac z nastepujacego schematu blokowego: /---------\ R + u. ---> N --->() ----> X=Ax+Bu --> y=cx ---> y - \---------/ <---- K <---- 8/21/96 Yanjie Sun of the University of Michigan under the supervision of Prof. D. Tilbury s = size(a,1); 4

Z = [zeros([1,s]) 1]; N = inv([a,b;c,d])*z ; Nx = N(1:s); Nu = N(1+s); Nbar=Nu + K*Nx; program lqopt.m nb=size(b); ni=nb(2); nc=size(c); no=nc(1); r=1; dq=[1 10 100 1000 0.00001]; elem. diag. macierzy R i Q R=r*eye(ni); t=linspace(0,10,500); w=logspace(0,3,200); clear hh; clear GG; clear pp; clear GGc; clear ppc; for i=1:5, q=dq(i); Q=q*eye(size(A)); Ae=A+0.4*eye(size(A)); czynnik zwiększ. zapas stabilności Ae=A; bez zwiększ. zapasu stabilności [K,P]=lqr(Ae,B,Q,R); obliczenie wektora sprz. zwrotnego Co=K; Do=zeros(ni); macierze układu otwartego Ac=A-B*K; Bc=B; Cc=C; Dc=zeros(no,ni); macierze układu zamkniętego h1=step(ac,bc,cc,dc,1,t); odp. skok. układu zamkniętego h=h1/h1(length(h1)); normalizacja odpowiedzi skokowej [G,p]=bode(A,B,Co,Do,1,w); ch-ki czestotl. układu otwartego [Gc,pc]=bode(Ac,Bc,Cc,Dc,1,w); ch-ki czestotl. układu zamkniętego KK(i,:)=K; CLP(:,i)=eig(Ac); wart. własne macierzy układu zamkniętego hh(:,i)=h; GG(:,i)=G; pp(:,i)=p; GGc(:,i)=Gc; ppc(:,i)=pc; end; figure(1); plot(t,hh); title( Odpowiedzi skokowe układu zamkniętego ); xlabel( t ); ylabel( h(t) ); figure(2); subplot(2,1,1); loglog(w,gg); title( Układ otwarty ); xlabel( w ); ylabel( G ); subplot(2,1,2); semilogx(w,pp); xlabel( w ); ylabel( Faza ); figure(3); subplot(2,1,1); loglog(w,ggc); title( Układ zamknięty ); xlabel( w ); ylabel( Gc ); subplot(2,1,2); semilogx(w,ppc); xlabel( w ); ylabel( Faza ); 5