Descărcați ca pdf sau txt
Descărcați ca pdf sau txt
Sunteți pe pagina 1din 12

Elevatia Aeronavei. Proiectarea controlerului in Simulink.

Statut -feedback-ul de control cu precompensatie.


In aceasta sectiune se va constri modelul dezvoltat in sectiunea Elevatia Aeronavei: Modelare in Simulink, pentru a dezvolta si analiza diverse modalitati de control. Modelul de la care se porneste poate fi descarcat accesand linkul pitch_control.mdl. Modelul complet se regaseste mai jos:

In modelul de mai sus blocul de stare-spatiu este definit cum se arata mai jos , unde matricea C este matricea de identitate. Aceasta rezulta in transformarea celor trei variabile de stare in valori de iesire astfel incat ele sa poata fi utilizate in legea de control a feddback-ului de stare.. Daca toate cele trei variabile nu pot fi masurate atunci trebuie sa se creeze un observator.

Raspunsul de tip circuit-inchis ce depinde de controlul feedback-ului de stare poate fi generat ruland modelul de simulare prezentat mai sus (apasati Ctrl-T sau selectati Start din meniul Simulation). Cand simularea ia sfarsit faceti dublu-click pe Scope si apasati butonul de autoscalare pentru a recreea urmatoarea figura.

Analizand figura de mai sus se demonstraza ca timpul de urcare, timpul de stabilizare si cerintele de abatere sunt indeplinite in totalitate. Cu toate acestea cerintele starii de echilibru nu sunt indeplinite deoarece rezultatul nu se incadreaza in valoarea de 2% din referinta ceruta de 0.2 radiani. In pagina Elevatia Aeronavei: Metode de Stare-Spatiu pentru Proiectarea Controlerului, aceasta abatere a fost luata in considerare prin adaugarea unei constante precompensatorii Nbar=7.0711, pentru a scala datele de iesire la nivelul dorit. Acest precompensator poate fi implementat adaugand un bloc Gain din libraria Simulink/Math Operations la modelul Simulink de mai sus. Inserati blocul intre blocul Step si blocul Sum. Apoi dublu clic pe blocul Gain si introduceti 7.0711 in campul Gain. Modelul rezultat este prezentat mai jos.:

Ruland simularea si autoscaland datele de iesire prezentate in fereastra Scope va genera un raspuns ca cel aratat mai jos:

Se observa ca adaugarea precompensatorului aduce la zero eroarea starii de echilibru astfel incat toate cerintele sa fie satisfacute.

Robustetea sistemului
Dezavantajul in folosirea unui precompensator ca cel implementat mai sus este ca acesta este calculat pe baza unui model si este localizat in afara buclei de feedback astfel incat datele de iesire din jonctiunea de insumare din modelul de mai sus nu mai constitue adevarata eroare. Asadar, daca sunt erori in model sau abateri necunoscute, precompensatorul nu le va corecta si vor fi erori ale stari de echilibru. Pentru a analiza acest fenomen se adauga modelului o abatere asa cum se arata in figura de mai jos. Abaterea este generata de o valoare finala stabilita la 0.2 si de un pas de timp stabilit la 3. Eroarea este modelata la intrarea in sistem ca in acelasi mod ca si intrarea de control . Blocul Summing suplimentar este localizat ca in figura si List of Signs se introduce prin ++ . Se observa deasemene intrarea de control . Pentru a face asta ,se apasa intai dublu-clic pe blocul Scop si apoi clic pe butonul Parameters. In fereastra care apare se introduce valoarea 2 din Number of axes. Apoi legati semnul la intrarea in blocul Scope. De asemenea verificati ca datele care intra in blocul Scope au denumire. Aceasta se face facand dublu-clic pe un semn si apoi tastand denumirea respectiva. Modelul rezultat ar trebui sa arate ca in figura de mai jos.

Ruland simularea si autoscaland datele de iesire prezentate va genera un raspuns ca cel de mai jos:

Analizand graficul de mai sus se observa ca eroarea de timp de 3 secunde duce starea de echilibru departe de valoarea de 0.2 radiani si prezenta constantei precompensatoare nu poate corecta efectul acestei erori. Se reaminteste ca adaugarea unei integrale de control poate corecta astfel de erori. Aceasta abordare alternativa de control este analizata in urmatoarea sectiune. Nesiguranta modelului este o alta sursa de eroare care ar trebui sa fie luata in considerare. De exemplu , daca modelul de sistem real are o matrice B egala cu [0.232*1.4 0.0203*0.6 0] atunci controlerul K folosit mai sus va duce la un sistem instabil. Aceasta poate fi verificat prin modificarea blocului stare-spatiu reprezentand aeronava si ruland simularea. Acest lucru se poate verifica deasemenea analizand polii circuitului inchis al sistemului (valoarea proprie a [ABK]). Acest tip de rezultate nu este necunoscut controlerilorproiectati folosind o tehnica ca metoda de tip Linear Quadratic Regulator. Rezulta ca coeficintul K a fost gandit doar sa minimizeze erorile rezultate , iar alte tinte precum robustetea modelului nu au fost luate in calcul. Exista, de asemenea, tehnici mai avansate de control robust care se adreseaza acestor considerente .

Reglarea Automata PID cu ajutorul Simulink


Asa cum s-a mentionat mai sus , adaugand control integral compensatorului poate rezulta in reducerea erorii starii de echilibru care poate aparea datorita turbulentelor sau incertitudinii modelului. Este posibil sa se extinda vectorul de stare astfel sa includa si starea de eroare integrala si apoi sa se reaplice tehnicile stare-spatiu ca si mai sus. Se va implementa si un control PID numai daca valoare datei de iesire se poate masura. Totodata vom folosi se foloseste capacitatea de constructive a Simulink pentru a regla automat controlarul PID . Aceasta reglare automata necesita toolbox-ul Simulink Control Design. Se urmeaza pasii de mai jos pentru a crea un controler PID pentru sistem. Se inlatura blocurile Gain pentru reglajul feedback-ului de stare K si precompensatorul Nbar. Deasemenea se sterge semnalul de feedback debransat de la vectorul de stare x si se reconecteaza de la iesirea . Se insereaza un bloc de control PID din biblioteca Simulink/Continuous si se plaseaza imediat dupa blocul de feedback negative Sum.

Modelul care rezulta este prezentat in figura de mai jos

In continuare ,dublu click pe blocul de contro PID. Va aparea urmatoarea fereastra:

Presupunem parametrii impliciti aratati mai sus ce corespund unui controler PID cu filtru lowpass pe termenul derivativ. Structura controlerului este prezentata mai explicit mai jos, unde coeficientul de filtru (N) defineste constanta de timp (egala cu 1/N) a filtrului low-pass de grad intai din termenul derivativ. (1) Valorile implicite ale controlerului PID sunt prezentate in fereasta de mai sus si pot fi modificate manual. Se vor detecta reglajele controlerului folosind functia de reglare automata. Aceasta se face apasand butonul Tune..., moment in care modelul se liniarizeaza pana la un punct de operare implicit si reglarea controlerului echilibreaza atat performantele sistemului cat si robustetea. In exemplul de fata, modeluleste deja liniar. Figura de mai jos prezinta fereastra care va aparea.

Initial, raspunsul sistemului la reglarile curente ale controlerului este marcat cu culoarea gri si raspunsul sistemului la parametrii reglati propusi este marcat cu albastru. Pentru clarificarea

figurii bifati Automatically update block parameters pentru a aplica parametrii reglati modelului Simulink. Cu aceasta setare se poate debifa Show response from block deoarece controlerul actual este identic cu cel propus. Pentru a finaliza faceti dublu-click pe plotare pentru a adauga caracteristici raspunsului de pas pentru a analiza daca daca cerintele au fost indeplinite. Verificarea plotarii de mai sus indica faptul ca raspunsul generat de reglarea controlerilor este greoi. Putem grabi raspunsul tragand spre dreapta de bara Response time. Daca limitele barei sunt insuficiente puteti apasa butonul marcat cu doua sageti din capatul din dreapta a barii pentru rescalarea timpilor de raspuns disponibili. In general, se doreste ca sistemul sa fie suficient de rapid incat sa indeplinesca cerintele cu o marja de eroare, dar nu mai rapid. Motivul din spatele acestei alegeri consta in faptul ca un raspuns rapid se obtine in detrimentul unui efort de control crescut. Comportamentul sistemului pentru un timp de raspuns setat la 0.0894 secunde este mai mult decat satisfacator pentru indeplinirea scopului propus. Se alege un timp de raspuns mai rapid decat cel necesar pentru ca timpul de solutionare sa se incadreze in limitele propuse chiar si cu bruiaje.

Se poate selecta sageata Show parameters pentru a vedea reglajele de control si performantele. Pentru a vedea performantele controlerului (incluzand efortul de control cerut), rulati simularea si scalati iesirile aratate cu scopul de a genera o figura ca cea de mai jos.

Din figura de mai sus ies in evidenta cateva aspecte. Perturbatia este corectata pentru starea stabila deoarece controlerul PID folosit include un termen integral. Aditional, efortul de control necesar pentru acest controler este mult mai mare decat cel cerut pentru controlerul de feedback de stare. Aceste aspecte apar deoarece algoritmul folosit pentru reglarea automata nu ia in considerare efortul de control, si daca tine cont, efortul de control nu are atat de multa importanta ca in functia de cost definita pentru Regulatorul Quadratic. In practica, este posibil ca unghiul de ridicare al aeronavei sa fie limitat in jurul valorii de -25 grade (-0.4363 rad) pana la +25 grade (0.4363 rad). Pentru a nu depasi aceasta limita, controlerul poate fi setat la saturatie. Aceasta se face din tab-ul PID Advanced din fereasta setarilor blocului controlerului PID, bifand casuta Limit output si introducand valoarea 0.4363 pentru Upper saturation limit si -0.4363 pentru Lower saturation limit asa cum este prezentat in figura de mai jos.

O problema cu controlul PID care intervine cand actionarea ajunge la saturatie este aceea ca termenul integrator poate continua integrarea erorii, cerand din ce in ce mai mult control chiar daca efortul de control a atins punctul de saturatie. Aceasta este o problema deoarece chiar si atunci cand eroarea incepe sa scada, efortul de control va fi in continuare saturat deoarece integratorul a ajuns la o valoare atat de ridicata. Sistemul incetineste deoarece dureaza mult ca integratorul sa se descalceasca. Acest bloc de control PID poate ajuta cu aceasta problema prin aplicarea unei strategii anti-incalcire pentru integrator. Aceasta optiune se regaseste in tab-ul PID Advanced. Se alege optiune clamping pentru metoda Anti-windup. Aceasta trategie, in esenta, opreste integratorul cand actuatorul ajunge la saturatie si il reporneste cand valorile de iesire din controler se incadreaza in limitele de saturatie. Dupa selectarea acestor optiuni, aplicarea reglajelor si rularea simularii genereaza urmatoarele rezultate ce par sa intruneasca cerintele, chiar si luand in calcul bruiajele asa cum se arata mai jos. Remarcam ca efortul de conttrol se mentine in limitele de -0.4363 pana la 0.4363 radiani si are efectul de a reduce supramodulatia sistemului.

S-ar putea să vă placă și