Sunteți pe pagina 1din 12

_______________________________________________________________________________________________

VII.Reglarea adaptivă a proceselor deterministe bazată pe metode predictive

1. Necesitatea utilizării reglării adaptiv-predictive


Algoritmii bazați pe metode de alocare poli-zerouri se dovedesc sensibili la erorile de
identificare ale modelului părții fixate în special în situația sistemelor de fază neminimă şi a
sistemelor pentru care timpul mort nu poate fi estimat cu exactitate sau este variant în timp.
Suplimentar, prezența timpului mort discret în funcția de transfer a sistemului automat
micşorează marginea de fază conducând la regimuri oscilante cu suprareglaje mari sau chiar
instabile, situație inacceptabil practic.
Considerând un proces caracterizat de modelul:
B (q 1 )
y (t )  q  d u( t )
(1) A(q 1 )
şi algoritmul de reglare cu un singur grad de libertate:
G (q 1 ) G ( q 1 )
u( t )  1  r ( t )  y (t )    (t )
(2) F (q ) F (q 1 )
modelul sistemului automat este:
B( q 1 )G ( q 1 )
y( t )  q  d 1 1 d 1 1
r( t )
(3) A( q )F ( q )  q B( q )G ( q )
Se observă, deci, că timpul mort discret prezent în modelul procesului se transferă în modelul
sistemului automat. Prin prezența acestui timp mort discret, în primele d perioade de eşantionare
considerate din momentul aplicării unui semnal treaptă (răspuns indicial) mărimea de ieşire are
valorile (fig.1)
(4) y(0)=y(1)=...=y(d)=0, y(d+1)0
iar eroarea are valoare maximă
(5) (t)=r(t)-y(t)=r(t)
conducând la comenzi violente (cu consum energetic mare şi saturarea elementului de execuție).
r(t);y(t)
y(t)  (t)=r(t)-y(t)
r(t)
r(t)

d t d t

Fig.1
Pentru a anula efectul dinamic introdus de elementul q-d, ar trebui utilizat un element de
compensare care să elimine această întârzierea (fig.2).
 (t  d )
r(t) + Compensator u(t+d) y(t)
 (t ) (predictor) G (q 1 ) B( q 1 )
qd
- C(q-1 ) F( q  1 ) A ( q 1 )

Fig.2
Dacă se poate construi acest compensator (predictor), atunci comanda predictivă
G( q 1 ) G ( q 1 ) G( q 1 )
u( t  d )   (t  d )  C ( q 1 )  ( t )  q d  (t ); C( q -1 )  q d
(6) F ( q 1 ) F ( q 1 ) F ( q 1 )
elimină, în buclă deschisă (pe cale directă), efectul de întârziere introdus de q-d , obținându-se:
(7)
B(q 1 ) B (q 1 ) G (q 1 ) B(q 1 ) G (q 1 ) B(q 1 ) G (q 1 )
y (t )  q  d u(t  d )  q  d  (t  d )  q  d C (q 1 ) (t )   (t )
A( q  1 ) A(q 1 ) F (q 1 ) A(q 1 ) F (q 1 ) A(q 1 ) F (q 1 )

______________________________________________________________________________________________
1
_______________________________________________________________________________________________

Deoarece
d
(8) q  (t )   (t  d )  r (t  d )  y(t  d )
reglarea predictivă utilizează o estimare a evoluției viitoare a ieşirii procesului şi necesită de
asemenea cunoaşterea sau anticiparea evoluției viitoare a referinței. Schema bloc, deci, presupune
utilizarea de predictori independenți, de ordinul d, atât pentru referință cât şi pentru mărimea
reglată.
Predicția referinței r(t)
Dacă mărimea de referință r(t) este cunoscută a priori (off-line) printr-o relație analitică de forma
r(t)=f(t), atunci rezultă r(t+d)=f(t+d). Acesta este cazul general al sistemelor de urmărire a unei
traiectorii dorite, dată prin f(t). Cazul uzual este când r(t) este semnal treaptă (r(t)=(t) -
amplitudine arbitrată), rampă (r(t)=vt) sau parabolă (r(t)=qt2).
Predicția mărimii reglate y(t). Ecuația predictorului de ordin d
Ieşirea estimată a procesului, y(t+d), se determină pe baza unui model. Mai mult, dacă procesul
este supus perturbațiilor, se poate adăuga modelul acestora pentru a putea fi luat în considerație şi
efectul perturbațiilor asupra ieşirii estimate a procesului. În acest fel legea de reglare predictivă
poate fi aplicată şi conducerii proceselor stohastice.
Considerând sistemul determinist descris de modelul (1)
B (q 1 )
y (t )  q  d 1
u( t )
(1) A(q )
valoarea ieşirii la momentul (t+d) este:
B (q 1 ) B (q 1 )
y (t  d )  q  d u( t  d )  u( t )
(9) A(q 1 ) A(q 1 )
sau
1 1
(10) A(q ) y (t  d )  B(q )u(t )
Calcularea valorii y(t+d) presupune cunoaşterea ultimelor nb valori ale comenzii precum şi a na
valori ale mărimii y, dintre care d valori cu caracter anticipativ:
(11) y (t  d )   a1 y (t  d  1) ... ad y (t )  ad 1 y (t  1) .. ana y (t  d  na )  b0u(t )  b1u(t  1) ...bnb u(t  nb)
Pentru a separa termenii anticipativi de cei regresori se poate descompune polinomul 1/A(q -1) în
două polinoame, prin împărțire până la ordinul d:
1 M ( q 1 )
 L(q 1 )  q  d
(12) A(q 1 ) A(q 1 )
unde:
 L( q 1 )  l0  l1q 1  ... lnl q  nl nl = d - 1

 M ( q 1 )  m0  m1q 1  ... mnm q  nm
nm  na  1
(13)
Polinoamele L(q-1) şi M(q-1) se determină rezolvând ecuația diophantică (12) scrisă sub forma:
1 1 d 1
(14) L(q ) A(q )  q M (q )  1
Odată determinate polinoamele L(q-1) şi M(q-1) relația (9) devine
1 B ( q 1 )
y ( t  d )  B ( q 1 ) u(t )  B(q 1 ) L(q 1 )u(t )  q  d M (q 1 )u(t )
(15) A(q 1 ) A(q 1 )
Termenul al doilea din partea dreaptă evidențiază modelul procesului, relația (1), prin
substituirea sa obținându-se:
(16) y (t  d )  B(q 1 ) L(q 1 )u(t )  M (q 1 ) y (t )
Introducând notația:
1 1 1 1  nn
(17) N ( q )  B( q ) L( q )  n0  n1q  ...nnn q nn = nb + nl = nb + d - 1
ecuația predictorului pentru d paşi devine:

______________________________________________________________________________________________
2
_______________________________________________________________________________________________
y (t  d )  M (q 1 ) y (t )  N (q 1 )u(t ) 
= m0 y (t )  m1 y (t  1) ... mna 1 y (t  na  1)  n0u(t )  n1u(t  1) .. nnb  d 1u(t  nb  d  1)
(18)
În acest fel predicția ieşirii y(t+d) devine posibilă prin memorarea regresorilor y(t-1)... ...y(t-
na+1) şi u(t-1)...u(t-nb-d+1), considerându-se că se cunosc mărimile y(t) şi u(t).
2. Principiile controlului predictiv. Legea de reglare “one-step-ahead”
Ecuația predictorului de ordin d, relația (18), poate fi utilizată în scopul asigurării unui control
performant. În acest caz, printr-o anticipare a valorii y(t+d) (egală cu referința dorită la momentul
t+d, y(t+d)=r(t+d)), se poate calcula valoarea curentă u(t) astfel încât, aplicată, această comandă să
asigure la momentul t+d, y(t+d)=r(t+d).
Se obține astfel un regulator cu eroare de predicție minimă (one-step-ahead), rezultat în urma
minimizării unui criteriu de performanță ce conține eroarea pătratică de predicție:
1 1
 
2
J1 
2
 r (t  d )  y (t  d )  r (t  d )  M (q 1 ) y (t )  N (q 1 )u(t )
2
2
(19)
Astfel, din condiția:
J1  2 J1
 0, 0
u( t ) u( t )2
(20)
se obține:

 n0 r (t  d )  M (q 1 ) y (t )  N (q 1 )u(t )  0  
1
u(t) =
n0
 r (t  d )  m0 y (t )  m1 y (t  1) ...mnm y(t  nm)  n1u(t  1)  n2u(t  2) .....nnnu(t  nn)
(21)
Cunoscându-se valoarea referinței r(t+d) şi a timpului mort, d, necesară descompunerii
polinomiale (13), se observă că printr-un astfel de control se poate compensa efectul acestuia.

3. Legea de reglare “one-step-ahead” ponderată (generalizarea criteriului pătratic J1)


Unul din dezavantajele legii de reglare “one-step-ahead” îl constituie efortul de reglare excesiv
cerut de regulator într-un singur interval de eşantionare pentru aducerea ieşirii reglate în momentul
t+d la valoarea impusă. Astfel pentru optimizarea comenzii, în sensul reducerii consumului
energetic, criteriul de performanță (19) se modifică fiind de forma:

(22)
J2 
1
2 
 r ( t  d )  y ( t  d )  2  u ( t ) 2 
unde  este un parametru real de ponderare a efortului energetic depus de regulator pentru a
controla evoluția viitoare a procesului. În rezolvarea problemei de optimizare cele două obiective,
anularea rapidă a abaterii şi reducerea amplitudinii comenzii, impun soluții contradictorii.
Accentuarea unuia dintre obiective se realizează prin intermediul factorului de ponderare care astfel
devine parametru de acord al legii de reglare.
Soluția de minimizare a criteriului (22) se caută astfel încât:
J 2 2 J2
 0; 0
u( t ) u( t )2
(23)
Folosindu-se ecuația predictorului, (18), ecuația (23) devine:
J2  1
  
2
 r (t  d )  N (q 1 )u(t )  M (q 1 ) y (t )  u ( t ) 2  
u(t ) u(t ) 2  

(24)
 
= - r(t + d) - N(q -1 )u(t )  M (q 1 ) y (t ) n0  u(t )  0

Din relația (24) se obține:


(25)  n N (q
0
1
0 
)   u ( t )  n r ( t  d )  n M ( q 1 ) y ( t )
0

Pe de altă parte, legea de reglare cu două grade de libertate, prezentată în cadrul metodei de
proiectare prin metode de alocare are forma:
1 1 1
(26) F (q )u(t )  H (q )r (t )  G(q ) y(t )
Prin identificarea polinoamelor se obțin expresiile:
______________________________________________________________________________________________
3
_______________________________________________________________________________________________
  
F (q 1 )  n N (q 1 )    n B(q 1 ) L(q 1 )  
 0 0 
 1 1
G(q )  n0 M (q )
 1 d
 H (q )  q n0
(27) 
expresia polinomului H(q-1) impunând anticiparea valorii referinței, adică r(t+d) (ca de altfel şi în
expresia precedentă a comenzii, ecuația (21)).
Obs: În cazul în care anticiparea evoluției referinței nu este posibilă criteriul minimizat devine:

(22’)
J2 
1
2 
 r (t )  y(t  d ) 2  u(t )2 
Modelul buclei de reglare are forma:
B ( q 1 ) H ( q 1 ) ( 27 ) n0 B (q 1 )
y (t )  q  d r (t )  r (t )
(28)
A(q 1 ) F (q 1 )  q  d B(q 1 ) G(q 1 )  
A(q 1 ) n0 B(q 1 ) L(q 1 )    q  d B(q 1 )n0 M (q 1 )

Dacă se ține cont de factorizarea (14)


(14) L(q 1 ) A(q 1 )  q  d M (q 1 )  1
se obține:
n0 B (q 1 ) (14 ) n0 B(q 1 )
y (t )  r (t )  r (t )
(29)

A(q 1 )  n0 B(q 1 ) A(q 1 ) L(q 1 )  q  d M (q 1 )  A(q 1 )  n0 B(q 1 )

Modelul (29) arată că factorul de ponderare , strict pozitiv, elimină orice posibilitate de
simplificare a zerourilor procesului, permițând astfel aplicarea reglării predictive şi la procesele de
fază neminimă. De asemenea  este un parametru de acord al legii de reglare, de valoarea concretă
a acestuia depinzând amplasarea polilor sistemului automat în planul complex. Un dezavantaj al
metodei provine din faptul că, prin ponderarea criteriului de minimizare a abaterii, este afectată
precizia de reglare în regim staționar. Conform (29) anularea erorii staționare este posibilă fie
pentru =0, fie în situația în care A(1)=0 ceea ce corespunde unui proces instabil de tip integrator.
Deoarece anularea abaterii este prioritară, se exploatează avantajul conferit de structura de reglare
cu două grade de libertate, modificându-se factorul de amplificare al buclei automate, fără a afecta
amplasarea polilor, prin redimensionarea:
H (q 1 )  q d  n0   A(1) B(1)
(30)
obținându-se:
 A( 1)  1
 n0    B( z )
 B ( 1) 
lim G0 ( z 1 )  lim 1
z 1 z 1 A( z 1 )  n0 B( z 1 )
(30’)
4. Legea de reglare predictivă bazată pe principiul orizontului îndepărtat
Legea de reglare, bazată pe principul orizontului îndepărtat, extinde aplicabilitatea reglării
adaptiv-predictive la procesele de fază neminimă sau cu timp mort imprecis determinat, modificând
criteriul (19) prin folosirea unui orizont de predicție mai larg, de durată echivalentă de H p paşi de
eşantionare, ales suficient de larg pentru a acoperi valoarea timpului mort (Hpd). Obiectivul
urmărit în proiectarea legii de reglare este minimizarea criteriului:
1
 
2
J3  r (t  H p )  y (t  H p ) , H p  d
(31) 2
Valoarea ieşirii la momentul t+Hp, calculată pe baza modelului (1), este:
H p d B ( q 1 )
y (t  H p )  q 1
u( t )
(32) A(q )
Similar cazului în care predicția ieşirii se făcea la un orizont viitor minim, pe d paşi, se determină
polinoamele L(q-1) şi M(q-1) ca soluții ale ecuației diophantice:
H
L(q 1 ) A(q 1 )  q p M (q 1 )  1
(33)
având:
______________________________________________________________________________________________
4
_______________________________________________________________________________________________
 L( q 1 )  l0  l1q 1  ... lnl q  nl nl = H p - 1

 M ( q 1 )  m0  m1q 1  ... mnm q  nm nm  na  1
(34) 
Exploatând factorizarea (33) împreună cu modelul (32), predicția y(t+Hp) se poate rescrie ca
fiind:
H p d  H M ( q 1 )  B ( q 1 )
y (t  H p )  q  L ( q 1 )  q p 1 
 B ( q 1 ) u( t )  L( q 1 ) B ( q 1 ) u( t  H p  d )  M ( q 1 ) q  d u( t ) 
 A( q )  A( q 1 )
(1)
1 1 1
= L ( q ) B ( q ) u( t  H p  d )  M ( q ) y ( t )
(35)
obținându-se ecuația unui predictor generalizat.
Se observă că, în acest caz, predicția depinde atât de secvența de comenzi cunoscute, anterioare
momentului t, cât şi de secvența viitoare u(t), u(t+1), ...u(t+H p-d). Pentru separarea celor două
secvențe de valori ale comenzii, polinomul L(q-1)B(q-1) se poate factoriza în forma:
1 1 1 1  ( H p  d 1 )
Q( q 1 ) nn = nb + nl = nb + H p - 1
(36) N ( q )  L( q )B( q )  P( q )  q
unde:
(37)
P( q 1 )  p  p q 1  ... p q  np
0 1 np p   np = H  d , nq  nn  1  np  nb  d  2
Folosind factorizarea (36), predicția ieşirii la momentul t+Hp, ecuația (35), devine:
(38) p p 
y (t  H )  P (q 1 )u(t  H  d )  Q(q 1 )u(t  1)  M (q 1 ) y (t ) 
Relația (38) pune în evidență termenii:
P(q 1 )u(t  H  d )  p u(t  H  d )  p u(t  H  d  1) .... p
p 0 p 1 p H p d u( t )
(I)
reprezentând o combinație liniară a valorilor viitoare ale comenzii, respectiv:
1 1
(II) Q(q )u(t  1)  M (q ) y (t )
care este un termen cunoscut, calculabil pe baza valorilor cunoscute ale lui y(t) şi u(t) la momentele
temporale anterioare momentului t.

Folosindu-se ecuația predictorului generalizat, (38), criteriul (31) are forma:


1
  1
  
2 2
J3  r (t  H p )  y (t  H p )  r (t  H p )  P(q 1 )u(t  H p  d )  Q(q 1 )u(t  1)  M (q 1 ) y (t )
(39) 2 2
Secvența comenzilor viitoare u(t), u(t+1),...u(t+Hp-d) care va asigura, la momentul t+Hp,
atingerea referinței impuse:
(40) y(t+Hp)=r(t+Hp)
se obține din relația (38):
 
( 40)
P(q 1 )u(t  H p  d )  r (t  H p )  Q(q 1 )u(t  1)  M (q 1 ) y (t )
(41)
Relația (41) permite determinarea unei combinații liniare a comenzilor viitoare, numai una dintre
acestea, anume u(t), fiind utilizată pentru controlul procesului. Pentru determinarea comenzii
P ( q 1 ) u ( t  H  d )
curente, u(t), din combinația liniară a valorilor viitoare ale comenzii, p , se pot
utiliza metoda comenzii viitoare constante, cea a optimizării comenzii sau combinații ale acestora.

Metoda comenzii viitoare constante


Ipoteza comenzii viitoare constante presupune că pe intervalul t,...t+H p-d se aplică o comandă
constantă:
u(t )  u(t  1) ...  u(t  H  d )
p
(42) .
În acest caz combinația liniară a comenzilor viitoare (41) poate fi exprimată funcție de valoarea
comenzii actuale:
( 38. I )
P(q 1 )u(t  H p  d )  ( p0  p1 .... pH p  d )u(t )  P (1)u(t )
(43)
Condiția de minimizare a criteriului (39) devine:

______________________________________________________________________________________________
5
_______________________________________________________________________________________________
J3 1 
  
2 ( 43)
 r (t  H p )  P (q 1 )u(t  H p  d )  Q(q 1 )u(t  1)  M (q 1 ) y (t ) 
u(t ) 2 u(t )
1 
  
2
 r (t  H p )  P (1)u(t )  Q(q 1 )u(t  1)  M (q 1 ) y (t ) 
2 u(t )

(44)  
=  P (1) r (t  H p )  P(1)u(t )  Q(q 1 )u(t  1)  M (q 1 ) y (t )  0 
Se obține:
(45) 
P(1)u(t )  r (t  H )  Q(q 1 )u(t  1)  M (q 1 ) y (t )
p 
Plecând de la forma legii de reglare cu două grade de libertate (26)
1 1 1
(26) F (q )u(t )  H (q ) r (t )  G(q ) y (t )
prin identificarea polinoamelor din (26) şi (45) se obține:
F (q 1 )  P (1)  q 1Q(q 1 )
 1 1
G (q )  M ( q )
 1 H
 H (q )  q p
(46)

Pentru analiza performanțelor sistemului automat se utilizează modelul (28) al buclei de reglare
B (q 1 ) H (q 1 )
y (t )  q  d r(t )
(28) A(q 1 ) F (q 1 )  q  d B (q 1 ) G(q 1 )
care devine:
H p d B (q 1 )
y (t )  q r(t )
(47)
 
A(q 1 ) P (1)  q 1Q(q 1 )  q  d B(q 1 ) M (q 1 )

Ținând cont şi de relația (36)


( H d )
L(q 1 ) B (q 1 )  P (q 1 )  q p q 1Q(q 1 )
(36)
se obține:

(48)
q 1Q(q 1 )  q
( H p d )
 L(q 1
) B (q 1 )  P (q 1 ) 
Ecuația (47) devine:
H p d B (q 1 )
y (t )  q r (t ) 

A(q 1 ) P (1)  q
( H p d )
 
L(q 1 ) B (q 1 )  P(q 1 )  q  d B(q 1 ) M (q 1 )
1
B(q )
 r(t )

(49)
A(q 1 ) q ( H p d )

P (1)  P(q 1 )  A(q 1 ) L(q 1 ) B(q 1 )  q
Hp
B (q 1 ) M (q 1 )

Dacă se ține cont şi de ecuația (33)


1 1 Hp 1
(33) L(q ) A(q )  q M (q )  1
modelul sistemului automat (49) devine:
B ( q 1 )
y (t )  r (t )

(50)
A( q 1 ) q ( H p d )

P(1)  P (q 1 )  B (q 1 )

Din interpretarea modelului (50) asociat sistemului automat se remarcă posibilitatea de


manevrare a orizontului de predicție Hp ca parametru de acordare.
 În cazul folosirii unui orizont de predicție Hp de valoare mică, apropiat la limită de valoarea lui d,
se obține o forțare imediată a răspunsului sistemului prin impunerea, în mod ideal, a unui transfer
unitar pentru bucla automată. Astfel pentru Hp=d ecuația (37) devine:
np = H p  d  0
 1 1  np
 P( q )  p0  p1q  ... pnp q  p0 ; P( 1)  p0
(51)
iar ecuația (50) are forma:
______________________________________________________________________________________________
6
_______________________________________________________________________________________________
(52) y (t )  r ( t )
 Pentru orizonturi largi de predicție, dinamica sistemului automat tinde să devină similară
dinamicii părții fixate. În cazul Hp (Hp>>d), ecuațiile (33) şi 36) devin:
Hp Hp
L(q 1 ) A(q 1 )  q M (q 1 )  1  L(q 1 ) A(q 1 ); q M ( q 1 )  0
(53)
 ( H  d 1)  ( H p  d 1)
L(q 1 ) B (q 1 )  P (q 1 )  q p Q(q 1 )  P (q 1 ); q Q(q 1 )  0
(54)
Folosind aproximațiile (53) şi (54)
 L(q ) A(q )  1
1 1

 L(q 1 ) B(q 1 )  P(q 1 )
se deduce:
(55) A(q 1 ) P(q 1 )  B(q 1 )

Modelul sistemului automat (49) devine:


B (q 1 ) B(q 1 ) 1
y (t )  lim r (t )  r (t )

(56)
H p 
A( q ) q 1
 ( H p d ) 1

P(1)  P (q )  B(q ) 1 A(q 1 ) P(1)q  ( H p  d )

Sistemul automat devine o replică, cu câştig unitar, a procesului condus. Această “relaxare” a
dinamicii sistemului automat este justificată de îndepărtarea în timp a orizontului la care se impune
atingerea referinței. Inconvenientul unui răspuns lent este compensat însă de o evoluție lină, lipsită
de oscilații de mare amplitudine, a semnalului de comandă.

Metoda optimizării comenzii


În schemele de reglare industriale se doreşte, în afara urmăririi referinței (relația (40)), o
optimizare a comenzii în sensul reducerii consumului energetic. În această situație, selectarea
valorii u(t) din secvanța ponderată a valorilor viitoare determinată de (41) se face astfel încât să se
minimizeze suplimentar criteriul:
H p d

J4  u 2
(t  i )
(57) i 0

În acest caz avem de-a face cu o problemă de optimizare (a comenzii) cu restricții de tip
egalitate, restricția fiind impusă de condiția de asigurare a unei erori de predicție minimă. O metodă
de transformare a unei probleme de optimizare cu restricții de tip egalitate într-o problemă de
optimizare fără restricții este metoda multiplicatorilor Lagrange.

Folosirea multiplicatorilor Lagrange pentru rezolvarea problemelor de optimizare cu restricții


de tip egalitate
În cazul căutării extremului (de exemplu, a maximului) unei funcții criteriu de n variabile
f ( x )  f ( x1 , x2 ,...... xn )
(B1)
cu m restricții de tip egalitate
(B2) hi ( x )  hi ( x1 , x2 ,...... xn )  0, i = 1,2,...m, m < n
* * *
se poate demonstra că punctul x1 , x2 ,.... xn care maximizează funcția criteriu (B1), cu respectarea
restricțiilor (B2), poate fi obținută prin optimizarea (maximizarea) fără restricții a funcției:
m
L ( x ,  )  L ( x1 , x2 ,...... xn ,  1 ,  2 ,...  m )  f ( x1 , x2 ,...... xn )    i hi ( x1 , x2 ,...... xn )
(B3) i 1

Funcția L ( x1 , x2 ,...... xn ,  1 ,  2 ,...  m ) este denumită funcția Lagrange (sau lagrangean), iar scalarii
1 ,  2 ,...  m sunt numiți multiplicatorii Lagrange.
Extremul funcției Lagrange se obține din condițiile anulării gradientului acestei funcții, adică:

______________________________________________________________________________________________
7
_______________________________________________________________________________________________
 L
 x  0
 1
 L
 0
 x2
......

 L
 x  0
(B4)  n

În cadrul metodei optimizării comenzii funcția (B1) este definită de criteriul (57) iar restricțiile
(B2) sunt definite de condiția atingerii referinței după (t+Hp) perioade de eşantionare:
(40) y(t+Hp)=r(t+Hp)
Folosind relațiile (40) şi (41)
(41) 
P( q 1 )u(t  H  d )  r (t  H p )  Q( q 1 )u(t  1)  M ( q 1 ) y(t )
p 
se defineşte funcția Lagrange:
H p d
L  u (t  i )   r (t  H
2
p)  P ( q 1 )u(t  H p  d )  Q( q 1 )u(t  1)  M ( q 1 ) y(t ) 
(58) i 0

Aplicând criteriul de optimizare (B4) se obține:


 L
 u(t )  0  2u(t )  pH p  d

 L
 u(t  1)  0  2u(t  1)  pH p  d 1

......

 L
 0  2u(t  H p  d )  p0
 u(t  H  d )
(59)  p

Secvența de valori predictive, relația (38.I), devine:


  ( 41 )
Hp d
P( q )u( t  H p  d )  
1
2  
i 0



pi2   r ( t  H p )  Q( q 1 )u( t  1)  M ( q 1 )y( t ) 
(60)
Din relația (60) se obține:
1
 
H p d 

 
pi2 
2  i  0   r ( t  H )   Q( q
p
1
)u(t  1)  M ( q 1 ) y(t ) 
(61)
iar relația (59.1) devine:
1
 H p d 
u ( t )  pH p  d

2
 pH p  d 
 
 i0 
pi2 
  r ( t  H )   Q( q
p
1

)u(t  1)  M (q 1 ) y (t ) 

=

r (t  H p )  Q(q 1 )u(t  1)  M (q 1 ) y (t ) 
(62) 
H p d

p
i0
2
i

pH p  d
unde:
Considerând forma legii de reglare cu două grade de libertate (26):
1 1 1
(26) F (q )u(t )  H (q )r (t )  G(q ) y(t )
prin identificarea polinoamelor se obțin expresiile:

______________________________________________________________________________________________
8
_______________________________________________________________________________________________

F (q 1 )    q 1Q(q 1 )
 
 1 1
 G( q )  M ( q )
 1 Hp
 H (q )  q
(63) 
Modelul matematic al sistemului automat devine:
Hp
q B ( q 1 )
y (t )  q  d r (t )
(64)
 
A(q 1 )   q 1Q(q 1 )  q  d B(q 1 ) M (q 1 )

Dacă se ține cont şi de ecuațiile (33) şi (36)


Hp
L(q 1 ) A(q 1 )  q M ( q 1 )  1
(33)
 ( H  d 1)
L(q 1 ) B (q 1 )  P(q 1 )  q p Q(q 1 )
(36)
modelul sistemului automat (64) devine:
H p d B( q 1 ) ( 36 )
y( t )  q r( t ) 
A( q 1
)q
H p d
q ( H p  d )
q
 ( H p  d 1 )
Q( q 1

) q d
B( q 1
)M( q 1
)

B( q 1 )
 r( t ) 
A( q 1 ) q ( H p  d )
  L( q 1 )B( q 1 )  P( q 1 )  q  Hp
B( q 1 ) M ( q 1 )

B( q 1 ) ( 33 )
 r( t ) 
A( q 1 ) q ( H p  d )
 
  P( q 1 )  B( q 1 ) A( q 1 ) L( q 1 )  q
Hp
M ( q 1 ) 
B( q 1 )
 r( t )

(65)
A( q 1 ) q ( H p  d )

  P( q 1 )  B( q 1 )

Modelul (65) este asemănător cu cel obținut la metoda comenzii viitoare constante, (50),
B ( q 1 )
y (t )  r (t )

(50)
A( q 1 ) q  ( H p d )
P(1)  P (q 1 )  B (q 1 ) 
cu excepția faptului că valoarea P(1) a fost înlocuită cu .
De aceea, similar cazului precedent, se obține pentru Hp crescător de la valoarea d la , o
deplasare a polilor sistemului automat din origine către polii procesului reglat.
H p d

p
i 0
2
i
p02
   p0 ; P(1) = p0
pH p  d p0
 Pentru Hp=d, modelul (65) devine:
B(q 1 )
y (t )  r ( t )  r (t )
A(q 1 ) p0  P(1)   B (q 1 )
(66)
 Pentru Hp:
B( q 1 ) B(q 1 ) 1
y( t )  lim r(t)  r(t)

(67)
H p 
A(q ) q 1
 (H p d) 1
  P(q )  B(q )  1 1
A (q ) q ( H p d)

în deducerea expresiei (67) ținându-se cont de relația (55)


(55) A(q 1 ) P(q 1 )  B(q 1 )

5. Reglarea adaprivă autoacordabilă folosind algoritmi de reglare predictivă


Folosirea algoritmilor de reglare predictivi în cazul sistemelor adaptive prezintă dezavantajul
imposibilității exprimării modelului părții fixate prin reparametrizare în termenii parametrilor
regulatorului. Astfel, în acest caz nu se pot folosi scheme de adaptare directă.
Schema bloc principială a structurii de reglare adaptivă este prezentată în fig.3.

______________________________________________________________________________________________
9
_______________________________________________________________________________________________
^ ^
coef [A ( q 1 ),B(q 1 )]

Criteriul de optimizare Proiectare Estimator recursiv


regulator prin de tipul
J 1; J 2 ; J 3(& J 4 ) metode predictive CMMP Nivel adaptare
*
^ ^ ^  (t )
1 1 1
coef [ F ( q ) , G ( q ), H ( q )]
H ( q 1 ) + B(q 1 ) + y (t )
r (t ) u (t ) qd
F( q  1 ) - A ( q 1 ) + Nivel reglare
Proces

G ( q 1 )
F( q  1 )

Fig.3
Funcționarea regulatorului adaptiv constă în execuția, succesivă, la fiecare moment de
eşantionare, a următoarelor acțiuni:
(A) - Achiziția de date: conversia A/D a ieşirii procesului şi achiziția referinței r(t) de la consolă,
fişier de date sau intrare serială.
^ ^
1 1
(B) - Estimarea recursivă a modelului sistemului condus: A (q ), B(q ), .
^ ^ ^
1 1 1
(C) - Sinteza regulatorului prin metode predictive: se vor calcula F(q ), G (q ), H (q ) pe baza
estimației modelului sistemului condus.
(D) - Calculul comenzii u(t): se va folosi legea de reglare având parametrii reactualizați în cadrul
acțiunii anterioare.
(E) - Trimiterea comenzii către proces prin conversia D/A.

Acțiunile de detaliu implicate în procedura de sinteză a legii de reglare sunt:


(C1) - Calculul polinoamelor L(q-1) şi M(q-1) prin rezolvarea on line a ecuației diophantice (33) ;
1 1 Hp 1
(33) L(q ) A(q )  q M (q )  1
(C2) - Calculul polinomului N(q-1) (relația (17))
1 1 1 1  nn
(17) N ( q )  B( q ) L( q )  n0  n1q ... nnn q
(C3) - Determinarea polinoamelor P(q-1) şi Q(q-1) prin factorizarea (36);
1 1 1  ( H p  d 1)
Q(q 1 )
(36) L(q ) B(q )  P(q )  q

În funcție de metoda aleasă, comanda va fi calculată cu una din relațiile:

(D1) One-step-ahead:
1
u(t) =
n0
 r( t  d )  m0 y( t )  m1 y( t  1)...mnm y( t  nm )  n1u( t  1 )  n2u( t  2 ).....nnnu( t  nn ) 
 F ( q 1 )  N ( q 1 )

u( t ) N ( q 1 )  q d r ( t )  M ( q 1 ) y( t )  G( q 1 )  M ( q 1 )
 1 d
 H ( q )  q
(21)

(D2) One-step-ahead ponderată:

______________________________________________________________________________________________
10
_______________________________________________________________________________________________
  
 F ( q 1 )  n N ( q 1 )    n B( q 1 ) L( q 1 )  
 0 0 
 1
 1
n0 N ( q )   u( t )  n0r ( t  d )  n0 M ( q ) y( t )
 1
 G( q )  n0 M ( q )

1

1 d
 H ( q )  q n0
(25) 
(D3) Predicția ieşirii pe un orizont îndepărtat - metoda comenzii constante:

F (q 1 )  P (1)  q 1Q(q 1 )


P(1)u(t )  r (t  H p )  Q(q 1 )u(t  1)  M (q 1 ) y (t )   G(q 1 )  M (q 1 )
 H
1
 H (q )  q p
(45)
(D4) Predicția ieşirii pe un orizont îndepărtat - metoda optimizării comenzii:

H p d


r (t  H p )  Q(q 1 )u(t  1)  M (q 1 ) y (t ) ; p 2
i
i 0
u( t )  
 pH p  d
(62)

F ( q 1 )    q 1Q( q 1 )
 

 G(q 1 )  M (q 1 )
 1 Hp
 H (q )  q

6. Partea experimentală

I. Fie procesul continuu supus automatizării având modelul:


s4
H f (s)  e 2 s
2s 2  3s  1
1. Să se aleagă perioada de eşantionare adecvată necesară obținerii modelului discret.
2. Să se precizeze parametri de configurare necesari algoritmului de estimare recursivă de tipul
CMMP:
- ordinul modelului (na,nb);
- timpul mort evaluat în multipli ai perioadei de eşantionare (d=/Te);
3. Să se determine prin simulare numerică parametrii optimi de acord ai algoritmului de estimare
recursivă de tipul CMMP (,) precizându-se şi durata regimului său tranzitoriu.

II. Să se analizeze prin simulare numerică performanțele sistemului automat cu autoacordare ce


foloseşte procedura de proiectare on-line a legii de reglare de tip “one-step-ahead”.
Configurați procedura de proiectare a legii de reglare astfel încât să fie folosită o lege de reglare
de tip “one-step-ahead” ponderată ( = 0.5  1). Comparați performanțele obținute precum şi
efortul energetic de reglare cu cele ale structurii precedente.
Pentru legea de reglare “one-step-ahead” subevaluați timpul mort. Ce se întâmplă ? Ce soluție
trebuie adoptată ?
Introduceți o perturbație de sarcină în sistemul automat studiat. Ce se întâmplă ? Ce soluție
trebuie adoptată ?

Indicație
1. Se vor utiliza blocurile Simulink din biblioteca SAR_adaptive_lib:
- rls_lm – realizează estimarea recursivă în sensul celor mai mici pătrate a coeficienților
modelului discret de timp al sistemului (2 porturi de intrare la care se cuplează ieşirea şi
intrare procesului, respectiv; 1 port de ieşire care furnizează vectorul parametrilor estimați)
______________________________________________________________________________________________
11
_______________________________________________________________________________________________
 parametri: Na, Nb, d, λ, A_Type = 0, P0, φ0, θ0, Te;
- propred_lm – calculează coeficienții polinoamelor F, G şi H ai legii de reglare printr-o
metodă predictivă (1 port de intrare prin care se furnizează parametrii modelului discret; 1
port de ieşire care furnizează un vector ce conține coeficienții polinoamelor F, G şi H)
 parametri: Na, Nb, d, Noriz, Ro, Te, S_Type, A_Type = 1 (include integrator)
- Noriz (Noriz>=d) = orizontul de predictie iesire;
- Ro = factor de ponderare a comenzii;
- Te = perioada de esantionare.
- S_TYPE = tipul algoritmului:
0-comanda constanta
1-comanda optimizata
2-comanda ponderata
Observație:
Pentru S_TYPE = 0 sau 1 se va specifica Noriz  d;
Pentru Noriz = d se obține algoritmul “one-step-ahead”;
Pentru S_TYPE = 2 şi Noriz = d se obține algoritmul one-step-ahead ponderat.
- dof2_lm – calculează comanda generată de regulatorul cu două grade de libertate proiectat
printr-o metodă de alocare, în baza polinoamelor F, G şi H (3 porturi de intrare prin care se
furnizează vectorul coeficienților polinoamelor F, G şi H, referința şi ieşirea procesului
reglat; 1 port de ieşire prin care se furnizează comanda)
 parametri: Nf, Ng, Nh, Us_min = -2, Us_max = 2, Te ;
(Nf = Nb + d , Ng = Na, Nh = 0 pentru A_Type = 1);
(Nf = Nb + d -1 , Ng = Na -1, Nh = 0 pentru A_Type = 0).

Modelul de simulare se prezintă mai jos.

______________________________________________________________________________________________
12

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