Seminarski rad iz predmeta Sistemi upravljanja u mehatronici Upravljanje pozicijom inverznog klatna
Studenti:
Profesor:
Đorđe Mladenović 15u Jelena Cvetković 18u Vanja Ivačov 21u
Vlastimir Nikolić Asistenti:
Ivan Ćirić Miloš Simonović
Seminarski rad se sastoji od sledećih celina: 1. Određivanje matematičkog modela objekta upravljanja u obliku prenosne funkcije i modela u prostoru stanja 2. Projektovanje PID kontrolera 3. Projektovanje sistema upravljanja primenom GMK 4. Projektovanje digitalnog PID kontrolera 5. Projektovanje digitalnog sistema upravljanja metodom GMK
2
Objekat upravljanja i projektni zahtevi Ovaj primer se sastoji od inverznog klatna koje je učvršćeno na motornim kolicima. Primer inverznog klatna se često može naći u literaturi koja obrađuje sisteme automatskog upravljanja. Razlog leži u činjenici da je inverzno klatno nestabilno bez upravljanja, tj. da će klatno pasti ukoliko se kolica ne pomeraju da uspostave uspostave ravnotežu. Takođe, dinamika sistema je nelinearna. Cilj sistema upravljanja je uravnoteženje klatna primenom sile na kolica. U ovom primeru se treba usredsrediti usredsrediti na dvodimenzionalni problem gde je kretanje klatna ograničeno kao na slici br.1. Za system, upravljački izlaz je sila F koja pomera kolica horizontalno a izlazi su ugaona pozicija klatna θ i horizontalna horizontalna pozicija kolica x. x.
Slika.1. Dati su parametri:
(M)
masa kolica
0.5 kg
(m)
masa klatna
0.2 kg
(b)
koeficijent trenja za kolica
0.1 N/m/sec
(l)
dužina do centra mase klatna
0.3 m 3
(I)
moment inercije mase klatna
(F)
sila kojom se deluje na kolica
(x)
koordinata pozicije kolica
(θ)
ugao klatna
0.006 kg.m^2
Problem se svodi na upravljanje pozicijom klatna ali se može analizirati i uticaj kontrolera na poziciju kolica nakon njegovog projektovanja.
Projektni zahtevi su:
Vreme smirenja za θ manje od 5 sekundi Ugao klatna θ ne više od 0.05 radiana
Projektni zahtevi za primer sistema u prostoru stanja:
Vreme smirenja za x i θ manje od 5 sekundi Vreme uspona za x manje od 0.5 sekundi Ugao klatna θ ne više od 20 stepeni (0.35 radiana) Greška ustaljenog stanja manja od 2% za x i θ
4
Analiza sila i sistem jednačina Na slici su prikazana dva slobodna tela obrnutog klatna.
Slika.2. Sumirajći sile koje deluju na kolica u ravnotežnoj jednačini u x pravcu dobijamo:
̈ +̇ += =̈ + ̈ − ̇ (+)̈ + ̇ + ̈ − ̇ =
Sumirajući sile koje deluju na klatno u ravnotežnoj jednačini u x pravcu dobijamo:
Ako ovu jednačinu zamenimo u prvu dobićemo:
Da dobijemo drugu jednačinu kretanja za ovaj system sumiramo sile upravno na klatno:
+ − = ̈ +̈
Da bismo se oslobodili P i N oznake u prethodnoj jednačini, sumiramo trenutke u težištu klatna da dobijemo sledeću jednačinu:
− − = ̈
5
Kombinacijom dva poslednja izraza dobijamo drugu upravljačku jednačinu:
(+) ̈ + = −̈
S obzirom na to da se tehnike analize i upravljanja koje se koriste u ovom primeru primenjuju samo na linearne sisteme, ovaj skup jednačina mora biti linearizovan. Konkretno, linearizujemo jednačine oko vertikalnog ravnotežnog položaja, , uz pretpostavku da sistem ostaje u malom okruženju ravnoteže. Ova pretpostavka bi trebala da važi kada upravljanjem želimo da klatno ne odstupa više od 20 stepeni od ravnotežnog položaja. Neka φ predstavlja odstupanje pozicije klatna od ravnoteže, tj. . Opet pod pretpostavkom malih odstupanja (φ) od ravnoteže, možemo koristiti sledeće aproksimacije nelinearnih funkcija u našem sistemu jednačina:
=
=+φ
cos=cos(+φ) ≈ −1 =sin(+φ) ≈ −φ ̇ = φ̇ ≈ 0
Nakon zamene gornje aproksimacije u naše nelinearne upravljačke jednačine, dobijamo dve linearizovane jednačine kretanja:
(+)φ̈ −φ = ̈ (+)̈ + ̇ − φ̈ =
1. Prenosna funkcija Da bismo dobili prenosnu funkciju linearizovanog sistema jednačina, prvo moramo da primenimo Laplasovu transformaciju na sistem jednačina uz nulte početne uslove. Rezultati Laplasove transformacije su prikazani ispod. (1) (2)
(+)() −() =() (+) () +()−() =() () () () () + () = − Φ()
Prenosna funkcija predstavlja odnos između jednog ulaza i jednog izlaza u tom trenutku. Da bismo našli prvu prenosnu funkciju za izlaz i ulaz moramo eliminisati iz navedenih jednačina. Rešenje prve jednačine za :
6
Zamenimo u dugu jednačinu:
+ + (+) − Φ() +b − Φ()s−mlΦ() =U(s) Φ() = ) 3 (+) U(s) 4 + (+ − − = (+)(+) −()
Prenosna funkcija je:
gde je:
Iz prenosne funkcije iznad možemo videti da postoje polovi i nule. Oni mogu biti poništeni, a prenosna funkcija postaje:
Φ() () = () = 3 + (+) − (+) − []
Drugo, prenosna funkcija kolica sa X(s) kao izlaznom veličinom može se izvesti na sličan način:
) − ( + () = () = () (+) (+ ) 4 + 3 − −
7
2. Prostor stanja Linearizovane jednačine kretanja mogu se predstaviti modelom u prostoru stanja ako su preuređene u sistemu diferencijalnih jednačina prvog reda. Pošto su jednačine linearne mogu se napisati u matričnom obliku:
C matrica ima dva reda jer su položaj kolica i položaj klatna izlazi. Matlab
1. Prenosna funkcija
8
Rezultat:
2. Prostor stanja
9
Rezultat:
10
Prostor stanja takođe može da se konvertuje u prenosnu funkciju korišćenjem naredbe tf . Nasuprot tome prenosna funkcija može da se konvertuje u prostor stanja naredbom ss.
11
Projektovanje PID kontrolera U procesu projektovanja pretpostavićemo jedan ulaz i jedan izlaz i opisaćemo prenosnom funkcijom. Drugim rečima, pokušaćemo da upravljamo uglom klatna bez obzira na poziciju kolica.
Φ() () = () = 3 + (+) − (+) − [] = (+)(+) −()
gde je
Preciznije, kontroler će pokušati da održi klatno vertikalno naviše kada na kolica deluje impuls od 1 nsec. Pod ovim uslovima kriterijumi projektovanja su:
Vreme smirenja manje od 5 sekundi Klatno ne sme da se pomeri više od 0.05 radijana od vertik ale
Struktura sistema Struktura kontrolera za ovaj problem je malo drugačija od ostalih kontrolera koji se koriste. Pošto pokušava da upravlja pozicijom klatna, koje treba da se vrati u vertikalni položaj nakon poremećaja, referentni signal koji se prati treba da bude nula. Ovakva struktura se često naziva problem regulatora. Spoljašnje sile koje deluju na kolica mogu se smatrati kao impulsni poremećaji. Blok -dijagram za ovaj problem je prikazan ispod.
12
Ako uprostimo, dobićemo blok -dijagram koji je jednostavniji za analizu.
Dobijena prenosna funkcija zatvorenog kola T(s) sa silom F kao ulazom i pozicijom klatna Φ kao izlazom:
() () = Φ(s) = () 1+()
Projektovanje PID kontrolera u Matlab-u Kreiramo novi m-fajl sa parametrima:
Sledeće što ćemo definisati je PID kontroler.
13
PID upravljanje Prenosna funkcija zatvorenog kola može da se modelira u Matlabu kopiranjem sledećeg koda u m-fajlu (zavisno od toga da li koristimo model prenosne funkcije ili model u prostoru stanja). Konkretno, definišemo naš kontroler uz pomoć PID objekta u okviru matlaba. Zatim koristimo povratnu spregu da definišemo prenosnu funkciju zatvorenog kola T(s) kao što je prikazano na blok -dijagramu gde je ulaz poremećaj F a izlaz ugao odstupanja klatna Φ od vertikale.
Sada podešavamo naš kontroler. Prvo ispitamo reakciju sistema zatvorenog kola do impulsa poremećaja za ove početne vrednosti. Unesemo sledeći kod na kraju m-fajla u matlabu i dobijamo odziv sistema.
14
Ovaj odziv još nije stabilan. Modifikujemo odziv tako što povećavamo proporcionalno pojačanje da bismo videli kakav uticaj ima. Ako stavimo da je dobićemo sledeći odziv.
=100
Sa grafika vidimo da je vreme smirenja 1.6 sekundi, što je manje od zahteva od 5 sekundi. Pošto greška ustaljenog stanja teži nuli dovoljno brzo, nije potrebno podešavati integraciono dejstvo. Preskok možemo smanjiti povećanjem diferencijalnog dejstva . Za dobijamo sledeći odziv.
= 20
15
Kao što se vidi, preskok je smanjen, tako da se klatno ne kreće više od 0.05 rad od vertikale što zadovoljava početni zahtev.
Kolica
Početni blok -dijagram nije potpun jer se odnosi samo na upravjanje pozicijom klatna ne uzimajući u obzir položaj kolica. Blok koji predstavlja odziv položaja kolica x nije bio uključen jer se ovom promenljivom ne upravlja. Zanimljivo je da vidimo šta se dešava sa pozicijom kolica kad je kontroler za ugao klatna Φ na svom mestu. Da bismo to videli moramo uzeti u obzir ceo blok-dijagram. 16
Uprošćeni blok -dijagram izgleda ovako:
C (s) je kontroler za održavanje vertikalnog položaja klatna. Prenosna funkcija zatvorenog kola je sledeća:
()
() = () () = () 1+()()
17
() ) − (+ () ( ) = () = 4 + (+) 3 − (+) − = (+)(+)−()
Prenosna funkcija
se definiše kao:
gde je
Dodavanjem sledeće komande u našem m-fajlu dobićemo odziv pozicije kolica za isti impulsni poremećaj.
Sa grafika se vidi da se kolica kreću u negativnom smeru približno konstantnom brzinom. Zato, iako PID kontroler stabilizuje ugao klatna, ovaj model ne bi bilo moguće sprovesti na stvarne fizičke sisteme. 18
Projektovanje sistema upravljanja primenom GMK Koristimo naredbu rlocus u Matlabu za generisanje GMK grafika. Ovaj grafik prikazuje sve moguće zatvorene petlje kao jednostavnu proporcionalnu regulaciju pojačanja K od 0 do ∞. Dodavanjem sledeće naredbe u m-fajlu, Matlab će prikazati GMK grafik.
Kao što se može videti, jedna grana GMK je u potpunosti u desnoj poluravni kompleksne s-ravni. To znači da bez obzira na izbor vrednosti K, uvek će pol zatvorenog kola biti u desnoj poluravni, čime je impulsni odziv sistema nestabilan. Da bismo ovaj problem rešili moramo dodati pol u koordinatnom početku (integrator) preko kontrolera da anulira nulu funkcije u koordinatnom početku. Ovaj dodatak stvara dve zatvorene petlje u desnoj poluravni. Na taj način možemo menjati kontroler za crtanje polova u levoj poluravni čime stabilizujemo sistem zatvorenog kola. Izmenom m-fajla u Matlabu dobićemo sledeći grafik:
19
Polovi i nule sistema su:
20
Kao što se vidi, postoje četiri pola i samo jedna nula. To znači da geometrijsko mesto korena ima tri asimptote: jednu duž realne ose u negativnom smeru, a druge dve pod uglom od 120 stepeni u odnosu na ovu. Ova konfiguracija je takođe zadovoljavajuća, jer imamo još grane GMK koje su u potpunosti u desnoj poluravni kompleksne ravni. Grane našeg sistema možemo pomeriti u levo dodavanjem nula u sistemu. Dodavanjem nula, naš kontroler će smanjiti broj asimptota sa tri na dve. Ove dve asimptote će biti paralelne imaginarnoj osi i seći će realnu osu na mestu s koje se izračunava:
Na osnovu gore navedenog možemo povući aspimptote u levoj kompleksnoj poluravni. PID upravljanje U prethodnom delu smo pokazali da dodavanjem nula možemo grane GMK pomeriti u levo, ali nismo mogli dominantne grane povući dovoljno daleko. Moguće rešenje je dodavnje još jedne nule. Ako se stavi da su obe nule negativne na realnoj osi između dva pola, tada će dve grane biti povučene u levu poluravan i završiće u ove dve nule. Npr. stavimo da su nule -3 i -4.
21
Ispitivanje iznad može utvrditi da li ili ne mogu biti ispunjeni naši uslovi. S obzirom da je poželjno da vreme smirenja sistema bude man je od 5 sekundi, realni delovi naših dominantnih grana treba da budu manji od -4/5=-0.8. Drugim rečima naše grane treba da se u kompleksnoj s ravni sa leve strane od vetrikalne linije u s=-0.8. To je moguće. Budući da želimo da se klatno ne pomera više od 0.05 rad od vertikale, takođe želimo da sistem ima dovoljno prigušenja, koje se dobija postavljanjem grane blizu realne ose.
22
Da bismo pronašli vrednost koja odgovara određenoj tački na GMK koristimo naredbu rlocfind .
23
Onda možemo proveriti impulsni odziv našeg zatvorenog kola da vidimo da li zaista odgovara vrednost za K oko 20.
Grafik pokazuje da su svi od navedenih uslova ispunjeni.
Kolica
24
Sa grafika se vidi da je odziv kolica nestabilan. Iako PID kontroler u ovom slučaju stabilizuje poziciju klatna, ne bi mogao da se primeni na stvarne fizičke sisteme.
Digitalni kontroler U ovom primeru digitalnog upravljanja pozicijom inverznog klatna koristićemo model u prostoru stanja za projektovanje digitalnog kontrolera. Linearizovane jednačine su:
25
Diskretni prostor stanja Prvi korak u projektovanju digitalnog kontrolera je pretvaranje kontinualnih jednačina stanja i izlaza u diskretni oblik. To se u Matlabu obavlja pomoću naredbe c2d . Ova naredba zahteva tri argumenta: kontinualni model sistema, vremenski period, kao i “metod“. U ovom sličaju ćemo koristiti metod diskretizacije nultog reda (’Zox’). M-fajl izgleda ovako:
26
27
Sada smo dobili diskretni model u prostoru stanja koji izgleda ovako:
Upravljivost i rekonstruktibilnost
Sistem je upravljiv i rekonstruktibilan.
28
Projektovanje digitalnog kontrolera M-fajl u Matlabu izgleda ovako:
29
Odziv sistema je grafik:
Zelena kriva predstavlja ugao klatna u radijanima a plava kriva predstavlja položaj kolica u metrima. Kao što se vidi, grafik nije zadovoljavajući. Potrebno je smanjanje vremena odziva i uspona. To se vrši tako što u promenimo parametre matrice Q na sledeći način. Izmenjeni m-fajl izgleda ovako:
30
Promenili smo vrednosti elementa (1,1) i (1,3) da bismo dobili željeni odziv sistema.
31