CAPITOLUL 3
Algoritmi de Control Predictiv Generalizat
3.1. Noiuni generale de control predictiv
Algoritmii de control predictiv au avut o dezvoltare considerabil n ultimii ani la
nivelul comunitii de cercetare, dar i n mediul industrial. Este posibil ca succesul s se
datoreze n primul rnd modului foarte general de rezolvare a problemelor de control n
domeniul timp. Foarte multe firme ce furnizeaz soluii hardware, dar i software, n
domeniul sistemelor de automatizare cum ar fi Honeywell, Siemens, National Instruments,
Matlab, etc. i-au inclus biblioteci consistente de algoritmi avansai printre care se regsesc i
algoritmi de tip Control Predictiv Bazat pe Model MCP (Model [Based] Predictive Control).
Un punct slab al acestui tip de algoritmi de control este faptul c implementarea presupune
prelucrri matematice complexe, care nu sunt foarte populare la nivelul inginerilor practicieni.
Totodat, prelucrrile complexe, ocup un timp de procesare semnificativ la nivelul unui
sistem cu microprocesor, ceea ce influeneaz respectarea ideii de timp real la nivelul unui
proces fizic. Totui, arhitecturile actuale de sisteme cu microprocesor, datorit unor
posibiliti de prelucrare multi-core, adic prelucrare paralel real, permit implementri ale
unor prelucrri matematice complexe ntr-un timp foarte scurt. Evoluia actual a sistemelor
cu microprocesoare a permis ca algoritmii de control predictiv s fie implementai cu succes
i pe procese rapide.
Controlul Predictiv Bazat pe Model face parte dintr-o clas de metode de proiectare
care folosesc modelul matematic al procesului pentru obinerea unui semnal de comand prin
minimizarea unei funcii obiectiv. De aici apare i principalul dezavantaj care este reprezentat
de necesitatea ca modelul matematic asociat procesului s fie foarte precis, lucru greu de
ndeplinit pentru procese complexe. Rezultatele algoritmului se bazeaz pe cunoaterea
modelului i interdependenele asociate, de unde este evident c rezultatele obinute vor fi
afectate n mod direct de diferenele ntre procesul real i modelul folosit.
Metodologia de funcionare[11], [12] pentru majoritatea algoritmilor de control
predictiv este ilustrat n Fig.3.1.
u(t+k | t)
u(t)
t
y (t k | t )
y(t)
t
t+1 .....
t+k .....
..
..
[Link] de funcionare MPC
t-1
t+N
Algoritmii MPC sunt caracterizai de urmtoarea strategie:
-Ieirea viitoare pe un orizont de timp N (exprimat ca numr de perioade de
eantionare) numit orizont de predicie, este prezis la fiecare moment de timp t folosind
modelul matematic al procesului. Aceste ieiri prezise y (t k | t ) pentru k 1.....N depind
de valorile cunoscute pn la momentul t (intrrile i ieirile trecute) i de semnalele de
30
comand viitoare u(t k | t ) cu k 1.....N 1 , care urmeaz a fi transmise sistemului dup ce
vor fi calculate.
-O secven de semnale de comand calculate prin optimizarea unui criteriu
determinat n ideea c procesul o s se apropie de o traiectorie de referin w(t k ) . Aceast
traiectorie de referin poate fi chiar referina nsi sau o aproximare a acesteia. Uzual,
criteriul este o form ptratic de eroare, calculat ca diferena dintre semnalul de ieire al
procesului i traiectoria de referin prezis. Efortul de control este inclus n funcia obiectiv
n cele mai multe cazuri.
-Din secvena de comand calculat pe un orizont de timp se aplic procesului doar
comanda de la momentul t , adic semnalul u(t | t ) , n timp ce restul secvenei va fi rejectat.
La urmtoarea perioad de eantionare se reia procesul de calcul, dup care se aplic
procesului doar prima component.
Structura de baz a implementrii este prezentat n Fig.3.2.
Traiectoria
de referin
Ieirea
Intrri i Ieiri anterioare
+
Model
prezis Intrri
Viitoare
Bloc de
optimizare
Funcie cost
Erori
viitoare
Constrngeri
[Link] de baz MPC
Modelul este utilizat pentru a prezice ieirea viitoare a instalaiei (rspunsul simulat), bazat pe
valorile curente i trecute i pe aciunile de control optim propuse a fi realizate. Aceste aciuni
sunt calculate n cadrul unui bloc de optimizare (algoritm) ce ine cont de o funcie cost.
Astfel, modelul matematic joac un rol important n proiectarea algoritmului de control ceea
ce nseamn c ar trebui s includ ct mai mult din dinamica procesului real.
La nivel intuitiv, strategia de control MPC este foarte asemntoare cu strategia
utilizat la conducerea unui autoturism [12]. Conductorul automobilului cunoate traiectoria
de referin (drumul) pe un orizont finit de control (este vorba de distana vizibil) i innd
cont de caracteristicile autoturismului (modelul mental al mainii), decide aciunea de control
acionnd asupra acceleraiei, frnei, direciei. La fiecare moment de timp, conductorul auto
aplic o comand, dup care creierul realizeaz o nou prelucrare a situaiei ntr-un nou
orizont de timp. Trebuie notat aici faptul c atunci cnd se utilizeaz o schem de control
clasic, bazat pe o lege de control de tip PID (Proporional, Integrator, Derivativ) aciunea
este bazat pe eroarea de la momentele anterioare. Acest lucru ar fi echivalent cu a conduce
maina uitndu-te doar n oglinda retrovizoare. MPC nseamn a conduce maina uitndu-te
pe parbrizul din fa, estimnd traiectoria drumului i acionnd volanul. Volanul reprezint
de fapt referina pentru algoritmul de control implementat de sistemul de servodirecie. Prin
acest exemplu se poate pune n eviden caracterul aciunii prin compensare al algoritmilor
MPC, comparativ cu algoritmii de tip PID cu aciune prin discordan.
Toi algoritmii MPC au trei elemente ce vor fi prelucrate pentru a obine n final
comanda ce se va aplica procesului real:
a. Modelul de predicie, este modelul matematic asociat procesului real;
b. Funcia cost, formularea funciei criteriu ce va fi minimizat;
c. Obinerea legii de control, obinerea comenzii efective ce se aplic procesului.
31
3.2. Control predictiv generalizat
n acest subcapitol se prezint cei mai populari algoritmi de control predictiv
generalizat GPC(Generalized Predictive Control) [11], [12]. Metoda este dezvoltat n detaliu
la nivel teoretic, ilustrndu-se procedura de obinere a legii de control. Aceti algoritmi
gestioneaz o multitudine de probleme de control pentru un domeniu mare de aplicaii
(procese), dar care au un numr rezonabil de variabile.
Ideea de baz n GPC const n calcularea unei secvene discrete n timp a semnalului
de comand, prin minimizarea unei funcii cost definit pe un orizont de predicie n timp (
timp viitor). Practic se obine o comand ce va minimiza o funcie cost ptratic format din
diferena ntre ieirea prezis a sistemului i o traiectorie de predicie. Controlul predictiv
generalizat are cteva idei n comun cu alte controlere predictive menionate anterior . Dup
cum se va vedea n continuare, acesta furnizeaz o soluie analitic (n absena
constrngerilor), care poate fi aplicat pentru procese instabile n bucl deschis sau conin
poli aproape de zona de instabilitate, procese caracterizate de modele de faz neminim,
procese caracterizate de timp mort necunoscut sau variabil, procese cu incertitudin structurale
sau parametrice. Aceasta incorporeaz conceptul de orizont de control lund n considerare o
anumit pondere a comenzii n funcia cost. n funcie de alegerea acestor ponderi disponibile
se vor obine o varietate de obiective de control.
Formularea ideii de control predictiv generalizat
Cele mai multe procese cu o intrare i o ieire, dup liniarizarea n jurul unui punct
staionar de funcionare, pot fi descrise numeric prin urmtoarea ecuaie:
A( z 1 ) y(t ) z d B( z 1 ) u(t 1) C ( z 1 ) e(t )
(3.1)
unde u (t ) i y (t ) sunt sunt secvenele de intrare i ieire a procesului; e(t ) este semnalul de
perturbaie ce acioneaz asupra procesului; d este timpul de ntrziere al procesului
considerat ca numr de perioade de eantionare; A( z 1 ) , B( z 1 ) , C ( z 1 ) sunt polinoame
scrise folosind operatorul de ntrziere z 1 .
A( z 1 ) 1 a1 z 1 a2 z 2 .... ana z na
B( z 1 ) b0 b1 z 1 b2 z 2 .... bnb z nb
(3.2)
C ( z 1 ) 1 c1 z 1 c2 z 2 .... cnc z nc
Acest model este cunoscut ca Controler Auto-Regresiv de Medie Alunectoare (CARMA,
Controller Auto-Regresive Moving Average). Pentru cele mai multe aplicaii industriale n
care perturbaiile sunt nestaionare un model cu intregrare de tip CARIMA(Controller AutoRegresive Integral Moving Average) este mult mai potrivit. Un astfel de model este descris
astfel:
e(t )
(3.3)
A( z 1 ) y(t ) z d B( z 1 ) u (t 1) C ( z 1 )
unde 1 z 1
Pentru simplificarea prelucrrii, vom considera polinomul C ( z 1 ) ca fiind constanta 1.
Oricum, prin mprirea relaiei (3.3) la polinomul C ( z 1 ) , acesta va fi coninut n noile
polinoame echivalente A( z 1 ) , B( z 1 ) .
Algoritmii de control predictiv generalizat GPC provin din gsirea unei secvene de
comand care minimizeaz n mai multe trepte o funcie cost de forma:
32
J ( N1 , N 2 , N u )
N2
Nu
( j ) y (t j | t ) w(t j ) ( j ) u(t j 1)
2
j N1
(3.4)
j N1
unde y (t j | t ) este ieirea procesului ca predicie pn la pasul j calculat dup momentul
curent t. Astfel obinem ieirea simulat cu ecuaiile procesului pe un orizont de timp de j pai
de eantionare nainte (n viitor) fa de momentul actual t. Valorile N1 , N 2 sunt nceputul i
sfritul intervalului de timp (ca numr de perioade de eantionare) ce constituie orizontul
funciei cost. Valoare N u este numrul de pai pentru orizontul de comand. Valorile ( j ) ,
( j ) sunt secvene de ponderare n funcia cost. Semnalul w(t j ) reprezint traiectoria de
referin ce se dorete a se realiza n viitor. Uzual se folosete o form de semnal care nu
trebuie s coincid cu referina real a sistemului. Aceast traiectorie se poate exprima sub
forma:
(3.5)
w(t k ) w(t k 1) (1 ) r (t k ) ; k 1, N
unde este un parametru de ponderare cu valori ntre 0 i 1, care constituie o valoare
ajustabil ce va influena dinamica evoluiei procesului. n Fig.3.3 forma traiectoriei este
prezentat pentru dou valori ale lui . Astfel valori mici vor conduce la o urmrire foarte
rapid ( w1 ), iar valori mari vor conduce la o urmrire mai lent ( w2 ). Pentru 1 avem cea
mai lin aproximaie.
u(t)
w2 (t k )
y(t)
w1 (t k )
t+1 .....
t+k .....
.. traiectoriei ..
[Link]
t-1
t
t+N
Obiectivele controlului predictiv constau in calculul unei secvene viitoare de control
u (t ) , u(t 1) ,.... astfel nct ieirea la momentul viitor t+j, y(t j ) al procesului, simulat
dup ecuaiile procesului, s se apropie (s fie egal) cu w(t j ) , traiectoria de referin.
Acest lucru se realizeaz prin minimizarea funciei cost din relaia (3.4). n scopul optimizrii
funciei cost se va folosi predicia optim (simulat) a secvenei de ieire y(t j ) pentru
j N1 i j N 2 .
Pornim de la triviala Teorem a mpririi cu Rest:
Demprit=mpritor * Ct + Rest
n acest context vom considera Demprit=1 i mpritor= A( z 1 ) . Astfel vom obine:
1 A( z 1 ) * Ct + Rest
Considerm urmtoarea ecuaie diofantic, obinut prin mprirea polinomului 1 la
polinomul A( z 1 ) :
1 A( z 1 ) * E j ( z 1 ) z j Fj ( z 1 )
(3.6)
Aceast ecuaie va trebui rezolvat, iar polinoamele Ct E j ( z 1 ) i Rest Fj ( z 1 ) sunt unic
definite cu gradele ( j 1) respectiv na . Acestea sunt obinute prin mprirea succesiv dintre
polinomul 1 i polinomul A( z 1 ) pn cnd restul poate fi factorizat sub forma
z j Fj ( z 1 ) , iar ctul rmas este E j ( z 1 ) .
Revenim la ecuaia (3.3) unde considerm polinomul C ( z 1 ) ca fiind constanta 1, pe care o
nmulim cu termenul E j ( z 1 ) z j
33
A( z 1 ) y(t ) z d B( z 1 ) u (t 1)
e(t )
E j ( z 1 ) z j
(3.7)
unde 1 z 1
e(t )
1
1
j
1
1
j d
1
j
A( z ) E j ( z ) z y(t ) E j ( z ) B( z ) z z u(t 1) E j ( z ) z e(t )
A( z 1 ) E j ( z 1 ) z j y(t ) E j ( z 1 ) B( z 1 ) z j z d u (t 1) E j ( z 1 ) z j
A( z 1 ) E j ( z 1 ) y(t j ) E j ( z 1 ) B( z 1 ) u(t j d 1) E j ( z 1 ) e(t j )
Din ecuaia (3.6) vom avea:
A( z 1 ) * E j ( z 1 ) 1 z j Fj ( z 1 )
Relaia (3.9) o introducem n relaia (3.8) i vom avea:
1 z
(3.8)
(3.9)
Fj ( z 1 ) y(t j ) E j ( z 1 ) B( z 1 ) u(t j d 1) E j ( z 1 ) e(t j )
y(t j ) z j Fj ( z 1 ) y(t j ) E j ( z 1 ) B( z 1 ) u(t j d 1) E j ( z 1 ) e(t j )
y(t j ) Fj ( z 1 ) z j y(t j ) E j ( z 1 ) B( z 1 ) u(t j d 1) E j ( z 1 ) e(t j )
inem cont c z j y(t j ) y(t ) , vom avea:
y(t j ) Fj ( z 1 ) y(t ) E j ( z 1 ) B( z 1 ) u(t j d 1) E j ( z 1 ) e(t j )
(3.10)
n ecuaia (3.10), dac gradul polinomului E j ( z 1 ) este ( j 1) intuitiv se poate spune
c termenii secvenei de zgomot e(t j ) sunt toi n viitor i astfel, cea mai bun predicie a
termenului y(t j ) din ecuaie este:
y(t j ) Fj ( z 1 ) y(t ) E j ( z 1 ) B( z 1 ) u(t j d 1)
(3.11)
Revenind la notaia raportat la momentul curent vom avea secvena de ieire sub forma:
y (t j | t ) Fj ( z 1 ) y(t ) E j ( z 1 ) B( z 1 ) u(t j d 1)
y (t j | t ) E j ( z 1 ) B( z 1 ) u(t j d 1) Fj ( z 1 ) y(t )
y (t j | t ) G j ( z 1 ) u(t j d 1) Fj ( z 1 ) y(t )
(3.12)
unde G j ( z 1 ) E j ( z 1 ) B( z 1 )
Se poate arta c polinoamele E j ( z 1 ) , Fj ( z 1 ) pot fi prelucrate software prin recursivitate.
Recursivitatea ecuaiei diofantice a fost demonstrat n [11], [12], [13]
n continuare considerm c polinoamele E j ( z 1 ) i Fj ( z 1 ) reprezint polinoamele
Ct i Rest de la mprirea succesiv a polinomului 1 la polinomul A( z 1 ) pn cnd
restul mpririi poate fi factorizat sub forma: z j Fj ( z 1 ) . Aceste polinoame pot fi
exprimate sub forma:
Fj ( z 1 ) f j ,0 f j ,1 z 1 f j , 2 z 2 .... f j , na z na
E j ( z 1 ) e j ,0 e j ,1 z 1 e j , 2 z 2 .... e j , j 1 z ( j 1)
(3.13)
Presupunem c aceeai procedur este folosit i pentru obinerea polinoamelor Ct i Rest
pentru (j+1) mpriri succesive a polinomului 1 la polinomul A( z 1 ) pn cnd restul
mpririi poate fi factorizat sub forma: z ( j 1) Fj 1 ( z 1 ) , cu exprimarea urmtoare:
Fj 1 ( z 1 ) f j 1,0 f j 1,1 z 1 f j 1, 2 z 2 .... f j 1, na z na
(3.14)
Restul mpririi se va modifica corespunztor sub forma z ( j 1) Fj 1 ( z 1 ) , iar ctul va fi
ctul de la pasul anterior la care se adug nc un termen al mpririi curente. Astfel avem:
34
E j 1 ( z 1 ) E j ( z 1 ) e j 1, j z j
Folosind o observaie de la mprirea de polinoame avem:
e j 1, j f j ,0
(3.15)
(3.16)
Coeficienii polinomului Fj 1 ( z 1 ) pot fi exprimai sub forma:
f
f
f a~ ; i 0,..., n 1
j 1, i
j , i 1
j ,0
i 1
(3.17)
Revenim la ecuaia (3.12)
y (t j | t ) G j ( z 1 ) u(t j d 1) Fj ( z 1 ) y(t ) unde G j ( z 1 ) E j ( z 1 ) B( z 1 )
Vom avea, pentru (j+1), innd cont de relaia (3.15) i (3.16):
G j 1 ( z 1 ) E j 1 ( z 1 ) B( z 1 ) E j ( z 1 ) e j 1, j z j B( z 1 ) E j ( z 1 ) f j ,0 z j B( z 1 )
G j 1 ( z ) E j ( z ) B( z ) f j ,0 z B( z )
innd cont de notaia G j ( z 1 ) E j ( z 1 ) B( z 1 ) , vom avea:
G j 1 ( z 1 ) G j ( z 1 ) f j ,0 z j B( z 1 )
(3.18)
Astfel termenii obinui sunt:
i 0,..., nb
g j 1, j i g j ,i i f j ,0 bi ;
Rezolvarea problemei controlului predictiv generalizat se reduce la gsirea unei secvene de
semnale de comand u (t ) , u(t 1) ,......, u(t N ) ce vor fi obinute prin optimizarea funciei
cost din relaia (3.4).
Dac vom considera c sistemul are un timp mort exprimat ntr-un numr de d perioade de
eantionare, ieirea sistemului va fi influenat de semnalul de intrare u (t ) dup un numr de
(d+1) perioade de eantionare. Valorile N1 , N 2 i N u care definesc orizontul de predicie
pot fi definite astfel: N1 d 1 , N 2 d N , N u N . Orizontul de predicie a ieirii este
influenat de timpul mort al procesului. Dac N1 (d 1) atunci termenii din funcia cost vor
depinde numai de semnalele de control anterioare(din trecut). Pe de alt parte, dac
N1 (d 1) , atunci nu se ine cont de primul punct din secvena traiectoriei de referin.
n continuare vom considera urmtorul set de predicii cu valorile lui j n intervalul
specificat:
y (t d 1 | t ) Gd 1 ( z 1 ) u(t ) Fd 1 ( z 1 ) y(t )
y (t d 2 | t ) Gd 2 ( z 1 ) u(t 1) Fd 2 ( z 1 ) y(t )
(3.19)
y(t d N | t ) Gd N ( z 1 ) u(t N 1) Fd N ( z 1 ) y(t )
Relaiile (3.19) pot fi scrise sub form vectorial astfel:
Y G U F ( z 1 ) y(t ) G| ( z 1 ) u(t 1)
(3.20)
unde
y (t d 1 | t )
y (t d 2 | t )
;
Y
y (t d N | t )
u (t )
u (t 1)
;
U
u (t N 1))
35
g0
g
G 1
g N 1
0
g0
g N 2
0
0
g0
(Gd 1 ( z 1 ) g 0 ) z
1
1
2
(Gd 2 ( z ) g 0 g1 z ) z
|
1
;
G (z )
1
1
( N 1)
N
) z
(Gd N ( z ) g 0 g1 z .... g N 1 z
Fd 1 ( z 1 )
Fd 2 ( z 1 )
1
F (z )
1
Fd N ( z )
Se poate observa c ultimii 2 termeni din ecuaia (3.20) depind numai de condiiile iniiale
(trecut) i pot fi grupai ca un rspuns liber n termenul f de mai jos:
(3.21)
Y G U f
Se poate considera c dac avem condiii iniiale nule, rspunsul liber f este zero. Dac
aplicm o intrare treapt unitate la intrare la momentul t, vom avea:
u(t ) 1 ;
u(t 1) 0 ; ........; u(t N 1) 0
Astfel secvena de ieire ateptat este [ y (t 1), y (t 2) ,...., y (t N )]T i coincide cu
prima coloan a matricii G. n acest context, prima coloan a matricii G poate fi calculat ca
rspuns la intrare treapt a procesului, atunci cnd o treapt unitar este aplicat.
Termenul de rspuns liber poate fi calculat recursiv prin:
f j 1 z (1 A( z 1 )) f j B( z 1 ) u(t d j )
(3.22)
cu f 0 y(t ) i u(t j ) 0 pentru j 0
n aceste condiii, funcia cost poate fi formulat sub forma:
(3.23)
J (G U f W )T (G U f W ) U T U
unde
W [w(t d 1) w(t d 2) .... w(t d N )]T
J U T G T G U ( f W )T G U U T G T ( f W ) ( f W )T ( f W ) U T U
J U T G T G U U T U 2 ( f W )T G U ( f W )T ( f W )
(3.24)
J U T (GT G I ) U 2 ( f W )T G U ( f W )T ( f W )
Realizm urmtoarele notaii n relaia (3.24)
H 2 (GT G I )
bT 2 ( f W ) T G
f 0 ( f W )T ( f W )
Vom avea:
1 T
U H U bT U f 0
2
Minimul funciei cost din relaia (3.25) n raport cu comanda U este:
dJ
0
dU
dJ
U H 1 bT
H U bT 0
dU
2 ( f W )T G
G T (W f )
U
2 (G T G I ) (G T G I )
J
U (GT G I ) 1 GT (W f )
(3.25)
(3.26)
(3.27)
36
Semnalul de control aplicat ca i comand procesului este primul element al vectorului
U i este exprimat sub forma:
(3.29)
u(t ) K (W f )
unde K este prima coloan a matricii (GT G I ) 1 GT .
Acest lucru arat ntr-o manier explicit, ceea ce se poate vedea i din Fig.3.4, c dac nu
avem erori de predicie, ceea ce nseamn (W f ) 0 , atunci comanda nu mai variaz i
astfel rmne evoluia liber a procesului[11], [12].
W +
Proces
Calcul rspuns
liber
[Link] de control GPC
Totodat, aceasta este o aciune de control de tip proporional (factorul K) n funcie de
viitoarele erori. Trebuie remarcat c aciunea de control este fcut cu respectarea erorilor
viitoare i nu n funcie de erorile trecute cum era cazul unui controler convenional de tip
feedback.
Trebuie reinut c numai primul element al secvenei de comenzi din vectorul U este
aplicat i procedura este repetat la urmtoarea perioad de eantionare. Soluia GPC
presupune calculul unei matrici de dimensiune N N , care poate necesita un timp de
prelucrare semnificativ, de care trebuie inut cont pentru a se ncadra n perioada de
eantionare. Datorit vitezei de prelucrare a sistemelor cu microprocesoare actuale, metoda de
control predictiv GPG este aplicabil i pentru procese rapide.
3.3. Implementarea unui algoritm de control predictiv din biblioteca de funcii
Matlab/Simulink
Foarte multe firme productoare de medii de dezvoltare software pun la dispoziie
biblioteci de funcii extrem de puternice ce implementeaz diveri algoritmi de control
avansai. n acest context s-a realizat i implementarea structurii de control predictiv pentru
sistemul Ball on Beam folosind blocul MPC Controller din Simulink. Mediul de simulare
Simulink ofer prin acest bloc un controler MPC parametrizabil printr-o interfa grafic
foarte intuitiv. n felul acesta, un inginer practician va realiza doar parametrizarea
controlerului, cunoscnd totui principiul de funcionare.
Un prim pas const n aducerea blocului MPC din biblioteca Simulink n fereastra de
editare grafic, dup care, realiznd dublu-click pe bloc, se deschide o fereastr n care se
selecteaz butonul Design.
37
[Link] obiectului
MPC Controller
Fereastra de configurare a modelului de proces pentru modelul matematic sub forma
ecuaiilor de stare ale procesului Ball on Beam este prezentat n Fig.3.7.
[Link] de
configurare controler MPC
Model
Structura implementat n Simulink este prezentat n Fig.3.8. unde se pot vedea
blocul BILA_MODEL ce reprezint modelul procesului importat de controlerul MPC. Blocul
EC_bila_PROCES reprezint tot ecuaiile procesului Ball on Beam, iar n cadrul structurii
reprezint procesul controlat. Subsistemul ce implementeaz ecuaiile liniarizate ale
procesului Ball on Beam este prezentat in Fig.3.9. Toi parametrii necesari programului
Simulink sunt furnizai de un fiier script rulat n prelabil n Matlab.
38
[Link] programului realizat n Simulink
[Link] ecuaiilor bilei in Simulink
Evoluia variabilei de ieire l - poziia bilei pe tij (variabila de stare x4 ) n funcie de
parametrii controlerului predictiv este prezentat grafic n continuare. Simularea a fost facut
pentru urmatorii parametrii de acordare a controlerului MPC, provenii din criteriul de
optimizare J ( N1 , N 2 , N u )
N2
( j ) y (t j | t ) w(t j )
j N1
39
Nu
( j ) u (t j 1)
j N1
Testul nr.1.
-perioada de eantionare Te 0.01 secunde.
- N1 1
- N2 45
- NU 2
-ponderea erorii de urmrire 1
-ponderea comenzii 0.1
Concluzie: Sistemul obinut este instabil.
[Link] sistemului cu controler MPC - Test 1
Testul nr.2.
-perioada de eantionare Te 0.01 secunde.
- N1 1
- N 2 50
- NU 2
-ponderea erorii de urmrire 1
-ponderea comenzii 0.1
Concluzie: Sistem stabil dar prezint oscilaii care se amortizeaz.
40
[Link] sistemului cu controler MPC - Test 2
Testul nr.3.
-perioada de eantionare Te 0.01 secunde.
- N1 1
- N2 70
- NU 2
-ponderea erorii de urmrire 1
-ponderea comenzii 0.1
Concluzie: Sistemul este tot stabil si oscilabilitatea comenzii scade
41
[Link] sistemului cu controler MPC - Test 3
42