Documente Academic
Documente Profesional
Documente Cultură
dt
x(t) y(t)
u(t) x t
B C
A
Reprezentarea de stare a SLIT (1) (D = 0)
Reglarea după stare presupune o reacţie după starea reală a sistemului, reacţie care poate plasa
oriunde în semiplanul complex stâng polii matricei de stare cu reacţie dacă sunt îndeplinite
următoarele condiţii:
Ipoteza 1: Sistemul este complet controlabil.
Un sistem este complet controlabil dacă starea sa iniţială poate fi adusă în origine într-un interval de
timp finit.
Pentru (1), condiţia de controlabilitate completă se traduce prin:
rk B, A B, A 2 B,..., A n 1 B n , (2)
unde n este dimensiunea vectorului de stare, adică
x1 t
x t
x t 2
...
x n t
Ipoteza 2: vectorul de stare x(t) este complet accesibil, adică măsurabil (toate componentele
vectorului de stare se pot măsura.
În cazul în care ipotezele 1 sau 2 nu sunt îndeplinite, se vor face consideraţiuni ulterioare.
Schema de reglare după stare arată astfel
dt
v(t)
x(t) y(t)
u(t) x t
B C
-
Sistemul
A condus
K
Schema de reglare cu reacţie după stare
Cu alte cuvinte, reacţia după stare stabileşte intrarea originală u(t) ca fiind:
u t v t K x t (3)
Înlocuind (3) în (1), se obţine:
x ( t ) A B K x t B v t
t C x t D v t
y
(4)
Principala deosebire între (1) şi (4) este reprezentată de valorile proprii ale matricilor de stare.
Sistemul (1) are valorile proprii eig A iar sistemul (4) are valorile proprii (ale sistemului cu
reacţie după stare) date de eig A B K .
Dacă SLIT (1) este complet controlabil (vezi ipoteza 1), atunci teoria spune că, pentru orice set de
valori proprii impuse sistemului cu reacţie după stare, se poate găsi o matrice K de reacţie după
stare care asigure valorile proprii dorite.
Procesul de proiectare constă în parcurgerea următorilor paşi, implementaţi cu comenzi MATLAB:
Pas 1: Se reprezintă în spaţiul stărilor sistemul (1), deci se obţine cvadruplul (A, B, C, D)
Pas 2: Se studiază completa controlabilitate
>> rank(ctrb(a,b))
Dacă valoarea returnată de comanda de mai sus este „n”, dimensiunea vectorului de stare, atunci
sistemul este complet controlabil.
Pas 3: Se alege o dispoziţie convenabilă a valorilor proprii ale sistemului cu reacţie după stare:
VP 1 , 2 ,..., n
Pas 4: se calculează matricea de reacţie după stare cu comanda „place”
>> K=place(a,b,VP)
80 * 360 / pi Y s grade o
H MCC s (5)
s 2 45s U s [ volti V]
80 * 360 / pi U s s 2
45s Y s
80 * 360 / pi u t y t 45 y t
y t 45 y t 80 * 360 / pi u t (6)
Se aleg drept componente ale vectorului de stare toate mărimile care apar derivate, deci:
x t x t y t
x t 1 1 (7)
x 2 t x 2 t y t
Folosind (6) şi (7), se poate scrie:
x1 t y t x 2 t
(6)
x 2 t y t 45x 2 t 80 * 360 / pi u t
Reunind cele de mai sus, putem scrie:
x
1 t x2 t
x 2 t 45 x 2 t 80 * 360 / pi u t
y x
1 t
x 1 t 0 1 x1 t 0 u t
(8)
0 45 x 2 t 80 * 360 / pi
x 2 t
x 1 t
y 1 0 0 u t
x 2 t
2
a* u
2
Gain
2
k* u
Gain 3
Srv02_model_state.mdl
Y s H*MCC s U s
u t 1 t U s Y s c s I a b k b
1 1 1 (9)
s s
Teorema valorii finale spune că valoarea de regim staţionar se calculează cu formula:
1
(9)
y lim c a b k b
1 1
y t lim s Y s lim s c s I a b k b (10)
t s0 s0
s
1
1/factor * u b* u c* u
s
Pulse Gain 1 Integrator Gain 2 Scope
Gain 10
Generator
a* u
Gain
k* u
Gain 3
% Hmcc(s) (intrare volti [V], iesire radiani [rad])
num=80;
den=[1,45,0];
% Hmcc(s) (intrare volti [V], iesire grade [o])
num=80*(360/pi);
a=[0,1;0,-45];
b=[0;80*360/pi];
c=[1,0];
d=0;
rank(ctrb(a,b))
vp=[-10,-20];
k=place(a,b,vp)
factor=-c*inv(a-b*k)*b;
factor1=-c*inv(a-b*k)*b*k*[1;0];
2 Gain
k* u
Gain 3
2 2 1 2
b* u c* u
s 2
Gain 5
1/factor 1* u
num (s)
den (s)
Transfer Fcn Scope 2
Sistem real
2 2 1 2
1/factor * u b* u c* u
s 2
2 Gain
k* u
Gain 3
num (s)
den (s)
Transfer Fcn Scope 3
Sistem real 1
2 2 1 2
b* u c* u
s 2
Gain 5
1/factor 1* u
Dacă starea iniţială a modelului este identică cu starea iniţială a sistemului real, atunci răspunsurile
vor fi identice, cum este exemplificat mai jos:
Răspunsuri identice: starea iniţială model este identică cu cea a sistemului real
Dacă starea iniţială a modelului este diferită de cea a sistemului real (de exemplu [-10,1]), atunci
cele 2 răspunsuri sunt diferite.
Răspunsuri diferite: starea iniţială model ([-10,1]) este diferită de cea a sistemului real ([0,0])
Mai mult, în realitate un sistem real are răspunsul afectat de anumite perturbaţii, lucru evidenţiat de
introducerea în modelul Simulink al unui semnal perturbator modelat aditiv la ieşirea sistemului
real. Modelul nu va putea reproduce răspunsul sistemului real deoarece nu poate cunoaşte apriori
evoluţia perturbaţiilor.
Din cele de mai sus rezultă evident că modelul individual, fără alte informaţii din sistemul real, nu
poate fi folosit pentru o reacţie de stare, deoarece starea modelului nu poate reconstitui exact starea
sistemului real.
Arhitectura unui sistem de reglare cu reacţie după starea observerului (starea estimată) este
următoarea:
perturbatie
v(t) u(t) Sistem real
x(t) y(t)
-
Observer de
stare
x̂ ( t )
K
Arhitectura de reglare cu reacţie după starea estimată
Menirea principală a observerului de stare este aceea de a furniza o estimare x̂ t cât mai exactă a
stării x(t) a sistemului real. La limită, dacă x̂ t x t , atunci arhitectura de mai sus implementează
schema de reglare cu reacţie după starea reală.
Se observă din figura de mai sus cum observerul de stare foloseşte un feedback din sistem, şi
anume ieşirea sistemului real, afectată în mod normal de perturbaţii.
Arhitectura observerului de stare este reprezentată mai jos:
y(t)
L
-
x̂ t ŷ t
dt
u(t) x̂ t
B C
Observer de
A stare
x̂ t
Arhitectura observerului de stare
Observerul de stare se bazează pe modelul liniar exact al sistemului real şi corectează dinamica
stării estimate cu o reacţie după diferenţa dintre ieşirea estimată ŷ t şi ieşirea sistemului real y(t).
Sistemul de reglare global cu reacţie după starea estimată (starea observerului) este redată mai jos.
perturbatie
v(t) u(t) Sistem real
x(t)
- y(t) y(t)
L
-
x̂ t ŷ t
dt
u(t) x̂ t
B C
Model Observer de
A Sistem real stare
x̂ t
K
Sistemul de reglare global cu reacţie după starea estimată
Ecuaţiile care descriu sistemul de reglare global sunt:
x t A x t B u t
SR :
y t C x t
x̂ t A x̂ t B u t L y t ŷ t
Obs :
ŷ t C x̂ t
u t v t K x̂ t
(12)
x t A B K B K x t B
v t
et 0 A LC e t 0
y t C 0 x t
e t
(13)
x t
x t
Dacă se notează starea extinsă ~ , atunci (13) se poate scrie:
~ ~ ~
e t
x t A
~ x t B v t
~ ~
y t C x t
(14)
~ A B K BK ~ B ~
A , B , C C 0
0 A LC
0
Din (12) se observă cum eroarea de estimare are o evoluţie autonomă, din starea iniţială e 0 e 0 .
Dacă sistemul real (1) este observabil, atunci este întotdeauna posibil să se găsească o matrice
L astfel încât valorile proprii ale matricei de observabilitate A L C să aibe valorile proprii
plasate oriunde în semiplanul stâng.
~
Din (13) sau (14) se observă că matricea de evoluţie a stării A are valorile proprii date de
reuniunea dintre valorile proprii ale matricei de reglare după stare A BK şi ale matricei de
observabilitate (A-LC).
Mai mult, proiectarea unui sistem de reglare după starea estimată constă în găsirea matricilor
de controlabilitate K şi de observabilitate L, proces care se poate desfăşura în etape separate şi
independente.
Proiectarea matricei L se face folosind funcţia place cu care se făcea plasamentul polilor
pentru matricea (A-BK).
A L C T
A T CT LT
Se va face plasamentul polilor pentru perechea A , C , obţinându-se matricea LT .
T T
Matrice observer L
1
c* u
1/factor * u b* u s x
Integrator C Iesire model
Pulse Corectie I /O B
Generator
a* u
A
k* u
a* u
a
1/factor 1* u
Din figura de mai sus se observă cum perturbaţiile de la ieşirea sistemului real sunt rejectate de către
sistemul de reglare, perturbaţiile manifestându-se scurt timp faţă de valorile impuse (0 sau 1).
2 y t y t 0 C x t
2 2 2
x 1 t A11 A12 x1 t B1
u t
x 2 t A 21 A 22 x 2 t B2
SR :
y t y1 t I 0 x1 t
y t 0 C x t
2 2 2
(15)
t A
x̂ t A 22 x̂ 2 t B 2 u t L 2 y 2 t ŷ 2 t
21 x 1
Obs redus : 2
ŷ 2 t C 2 x̂ 2 t
(16)
y 2 t ŷ 2 t C 2 e 2 t
e 2 t A 22 e2 t L2 C2 e2 t A 22 L 2 C2 e2 t
u t v t K x1 t x1 t
K2 v t K1 K 2 x t e t v t K x t K 2 e 2 t
x̂ 2 t
1
2 2
x t A B K x t B K 2 e 2 t B v t
e 2 t A 22 L 2 C 2 e 2 t
y t I 0 x1 t
0
C2 x 2 t
(17)
x t
x t
Dacă se notează starea extinsă ~ , atunci (17) se poate scrie:
e 2 t
~ ~
t A ~
x
~ x t B v t
~ ~
y t C x t
(18)
~ A B K B K2 ~ B ~
A , B , C C 0
0 A L 2C2
0
Din (17) se observă cum eroarea de estimare are o evoluţie autonomă, din starea iniţială e 20 e 2 0 .
22
Dacă sistemul real (15) este observabil, atunci este întotdeauna posibil să se găsească o matrice
L2 astfel încât valorile proprii ale matricei reduse de observabilitate A 22 L 2 C 2 să aibe
valorile proprii plasate oriunde în semiplanul stâng.
Condiţia de observabilitate a întregului sistem (15) este suficientă dar nu necesară. Trebuie ca
numai starea x 2 să fie observabilă.
În cazul SRV-02 de la Quanser, avem o situaţie mai specială, în care
x t
y t 1 0 x t
1
x t
1
2
Se vede cum starea x 2 t este neobservabilă. În cazul relaţiilor de mai sus, C 2 0 şi relaţia (16)
care implementează observerul redus se scrie
Obs redus : x̂ 2 t A 21 x1 t A 22 x̂ 2 t B2 u t
Modelul simplificat este
Semnal perturbator num (s)
y =x1
den (s)
Add Iesire sistem real
Transfer Fcn a(2,1)* u
Sistem real
A1
1
1/factor * u b(2)* u s x2^
Integrator Iesire model
Pulse Corectie I /O B
Generator
a(2,2)* u
A
k* u
den (s)
Add 1 Iesire sistem real 1
Transfer Fcn a(2,1)* u
Sistem real 1
1 A2
b(2)* u s x2^
Integrator 1 Iesire model 1
b
a(2,2)* u
1/factor 1* u
-k* u
Corectie I /O1 Pulse
Matrice reactie K
Generator 1
Semnal perturbator
num (s)
1/factor * u y =x1
den (s)
Add Iesire sistem real
Pulse Corectie I /O Transfer Fcn
x2 20 s
Generator Sistem real
s+20
Derivator real Iesire model
k* u
1/factor 1* u
-k* u
Corectie I /O1 Pulse
Matrice reactie K
Generator 1