Sterowalnosc liniowych uk ladów sterowania

Transkrypt

Sterowalnosc liniowych uk ladów sterowania
Sterowalność liniowych ukÃladów sterowania
W zadaniach sterowania docelowego należy przeprowadzić obiekt opisywany za pomoca̧ równania stanu
ẋ(t) = f (x(t), u(t), t), t ∈ [t0 , t1 ]
z zadanego stanu pocza̧tkowego
x(t0 ) = x0
do zadanego stanu końcowego
x(t1 ) = x1 .
W zwia̧zku z takim zadaniem nasuwa siȩ pytanie czy dla danego obiektu
istnieje sterowanie, które przeprowadzi obiekt z dowolnego stanu pocza̧tkowego
do dowolnego stanu końcowego w zadanym czasie lub w dowolnym lecz skończonym
czasie ?
W szczególności w zadaniach liniowego sterowania docelowego należy przeprowadzić
obiekt opisywany za pomoca̧ liniowego stacjonarnego równania stanu
ẋ(t) = Ax(t) + Bu(t), t ∈ [t0 , t1 ]
z zadanego stanu pocza̧tkowego
x(t0 ) = x0
do zadanego stanu końcowego
x(t1 ) = x1 .
W zwia̧zku z zadaniami liniowego sterowania docelowego nasuwa siȩ pytanie jakie warunki musza̧ speÃlniać macierze A i B aby istniaÃlo sterowanie,
które przeprowadzi obiekt z dowolnego stanu pocza̧tkowego do dowolnego stanu
końcowego w zadanym czasie lub w dowolnym lecz skończonym czasie ?
1
Definicja sterowalności ukÃladu sterowania z czasem cia̧gÃlym: Cia̧gÃly
ukÃlad sterowania nazywa siȩ ukÃladem sterowalnym, jeżeli stosuja̧c ograniczone
przedziaÃlami cia̧gÃle sterowanie można go przeprowadzić w skończonym czasie t1 z dowolnego stanu pocza̧tkowego x0 do zadanego stanu końcowego x1 .
Przyjmuja̧c x1 = 0 mówimy, że ukÃlad jest caÃlkowicie sterowalny sterowalny
do zera. ZaÃlożenie zerowego stanu końcowego moṅa zawsze speÃlnić dokonuja̧c
odpowiedniej liniowej transformacji wspóÃlrzȩdnych stanu.
Nastȩpuja̧ce twierdzenie określa warunki jakie musza̧ speÃlniać macierze A i
B, aby liniowy stacjonarny ukÃlad sterowania z czasem cia̧gÃlym byÃl sterowalny.
Twierdzenie: Liniowy stacjonarny ukÃlad sterowania z czasem cia̧gÃlym jest
sterowalny wtedy i tylko wtedy, gdy jego macierz sterowalności
.
S = [B AB A2 B ... An−1 B]
zawiera n liniowo niezależnych kolumn. Warunek ten można sformuÃlować
w równoważnej postaci: rza̧d macierzy sterowalności jest równy wymiarowi
przestrzeni stanu tj. rz(S) = n.
Dowód: Rozwia̧zanie liniowego stacjonarnego ukÃladu sterowania
ẋ(t) = Ax(t) + Bu(t), x(0) = x0
ma postać
¡
x(t) = e x0 +
Z
t
At
¢
e−At̃ Bu(t̃)dt̃ .
0
Sterowalność do zera oznacza, że dla pewnego t1 zachodzi równość
Z t1
¡
¢
At1
0=e
x0 +
e−At̃ Bu(t̃)dt̃ .
0
Warunek ten bȩdzie speÃlniony, jeśli
Z
x0 = −
t1
e−At̃ Bu(t̃)dt̃
0
Z
∞
t1 X
(−t̃)i
Bu(t̃)dt̃
i!
0
i=0
Z t1
∞
X
(−t̃)i
i
=
A Bui , ui = −
u(t̃)dt̃.
i!
0
i=1
=−
Ai
Korzystamy z tw. Cayleya-Hamiltona: każda macierz kwadratowa An×n
speÃlnia swoje równanie charakterystyczne
det(sI − A) = an sn + an−1 sn−1 + ... + a1 s + a0 = 0
2
⇒ an An + an−1 An−1 + ... + a1 A + a0 I = 0.
Ponieważ
A
n+1
n
= AA = A
n−1
X
i
ãi A =
i=1
n
X
ãi Ai
i=1
wiȩc macierze Ak , k ≥ n moga̧ być przedstawione w postaci kombinacji liniowych macierzy A0 , A1 , ..., An−1 . Oznacza to, że dla pewnych kombinacji liniowych ūi wspóÃlczynników ui zachodzi równość
x0 =
n−1
X
Ai B ūi
i=0
czyli
x0 = B ū0 + AB ū1 + A2 B ū2 + ... + An−1 B ūn−1
lub


ū0


 ū1 


 ū2 

³
´


x0 = B AB A2 B ... An−1 B  . 


 . 


 . 


ūn−1
Jeśli macierz sterowalności S zawiera n liniowo niezależnych kolumn, to na
tych kolumnach można rozpia̧ć n-wymiarowa̧ przestrzeń za pomoca̧ sterowań
ūi .
UkÃlad sterowania z wieloma sterowaniami nazywamy regularnie sterowalnym, jeżeli jest on sterowalny ze wzglȩdu na każde wejście oddzielnie. Liniowy stacjonarny ukÃlad sterowania jest sterowalny regularnie jeżeli macierze
sterowalności ze wzglȩdu na każde wejście sa̧ rzȩdu n tj. rz(Sj ) = n, gdzie
Sj = (Bj ABj A2 Bj ... An−1 Bj ), j = 1, ..., n.
Warunek dostateczny niesterowalności ukÃladu sterowania: Liniowy
stacjonarny ukÃlad sterowania opisywany równaniami stanu
!
à !
Ã
B1
A11 A12
u(t)
x(t) +
ẋ(t) =
O
O A22
3
Dowód: Ponieważ
Ã
Ã
!
!
k
k
A
A
A
B
k
11
11 1
Ak =
, k = 1, 2, ...; Ak B =
, k = 1, 2, ...,
O Ak22
O
to
2
S = (B AB A B ... A
n−1
Ã
!
n−1
B1
B1 A11 B1 A211 B1 ... A11
B) =
,
O
O
O
...
O
a wiȩc rz(S) < n.
Twierdzenie: Jeżeli liniowy stacjonarny ukÃlad sterowania
ẋ(t) = Ax(t) + Bu(t), t ∈ [t0 , t1 ], x(t0 ) = x0
jest sterowalny, to sterowanie
T (t−t
u(t) = −B T eA
0)
R−1 x0 (∗)
przeprowadza ukÃlad ze stanu pocza̧tkowego x(t0 ) = x0 do stanu końcowego
x(t1 ) = 0 w skończonym czasie t1 − t0 , przy czym R jest macierza̧ nieosobliwa̧
określona̧ jak nastȩpuje
Z t1
T
R=
eA(t0 −t̃) BB T eA (t0 −t̃) dt̃.
t0
Dowód: W chwili t1 powinna być speÃlniona zależność
Z t1
A(t1 −t0 )
x(t1 ) = 0 = e
x0 +
eA(t1 −t̃ )Bu(t̃)dt̃ / · e−A(t1 −t0 ) .
t0
Sta̧d
Z
t1
0 = x0 +
eA(t0 −t̃ Bu(t̃)dt̃
t0
i
Z
t1
x0 = −
eA(t0 −t̃ Bu(t̃)dt̃.
t0
Podstawiaja̧c sterowanie (∗) uzyskujemy
Z t1
T
x0 = −
eA(t0 −t̃) B(−B T eA (t−t0 ) R−1 x0 )dt̃
t0
tj.
Z
t1
x0 =
T (t−t
eA(t0 −t̃ BB T eA
t0
4
0)
R−1 x0 dt̃
ska̧d wynika tożsamość
x0 = RR−1 x0 .
Uzyskana tożsamość potwierdz tezȩ twierdzenia. Jednak należy jeszcze wykazać,
że istnieje odwrotność mzcierzy R. ZaÃlóżmy, że ukÃlad jest sterowalny i że
macierz eAt B ma liniowo zależne wiersze tj.
v T eAt B = 0, t ∈ [t0 , t1 ], v ∈ Rn .
Różniczkuja̧c (n−1)-krotnie powyższa̧ zależność wzglȩdem czasu otrzymujemy
równość
v T eAt [B AB A2 B ... An−1 B] = 0.
Oznacza to, że rza̧d macierzy
eAt [B AB A2 B ... An−1 B
jest mniejszy od n. Ponieważ rz(eAt ) = n, wiȩc rz(S) < n, a to jest sprzeczne z
zaÃlożeniem o sterowalności ukÃladu. Tak wiȩc dla ukÃladẃ sterowalnych wiersze
macierzy eAt B sa̧ liniowo niezależne tj.
v T eAt B 6= 0, t ∈ [t0 , t1 ].
T
.
Niech w(t) = B T eA (t0 −t) v. Wtedy
Z t1
wT (t)w(t)dt =
t0
Z
vT
t1
T (t
eA(t0 −t̃) BB T eA
0 −t̃)
dt̃v = v T Rv > 0.
t0
Macierz R jest symetryczna i dodatnio określona. W teorii macierzy dowodzi
siȩ, że taka macierz jest zawsze nieosobliwa. ZaÃlóżmy, że wartość wÃlasna si
macierzy R jest zespolona. Wtedy
RPi = si Pi ⇒ P̄iT RPi = si P̄iT Pi (∗)
i
¯ i = s̄i Pi ⇒ RP̄i = s̄i P̄i
RP
⇒ P̄iT R = s̄i P̄iT ⇒ P̄iT RPi = s̄i P̄iT Pi (∗∗)
. Odejmuja̧c stronami wyrażenia (*) i (**) uzyskujemy
(si − s̄i )|Pi |2 = 0.
5
Ponieważ Pi jest wektorem niezerowym, to musi być si = s̄i tj. wartości wÃlasne
macierzy symetrycznej sa̧ rzeczywiste. Niech si , sj bȩda̧ różnymi wartościami
wÃlasnymi macierzy R, a Pi , Pj niech bȩda̧ wektorami wÃlasnymi zwia̧zanymi z
tymi wartościami wÃlasnymi. Oznacza to, że
RPi = si Pi ⇒ PiT R = si PiT
PiT RPj = si PiT Pj (∗)
i
RPj = sj Pj ⇒ PiT RPj = sj PiT Pj (∗∗).
Odejmuja̧c stronami (*) i (**) uzyskujemy
(si − sj )PiT Pj = 0
czyli
PiT Pj = 0,
gdyż si 6= sj z zaÃlożenia. Oznacza to, że wektory wÃlasne macierzy R sa̧ ortogonalne. Wektory te określone sa̧ z dokÃladnościa̧ do staÃlej - moṅa je wiȩc wybrać
tak, aby PiT Pi = 1.
Wtedy
P T P = I ⇒ P −1 = P T .
Podstawmy w formie kwadratowej v T Rv wektor v jako v = P w. Mamy
Pn
2
wiȩc wT P T RP w = wT P −1 RP w = wT diag1≤i≤n (s1 , ..., sn )w =
i=1 si wi .
Wartości si musza̧ być dodatnie, gdyż badana forma kwadratowa jest dodatnio
określona.
Sta̧d
P −1 RP = S ⇒ R = P SP −1 ⇒
−1
−1
−1
,
R−1 P S −1 P −1 ⇒ R−1 = P diag(s−1
1 , s2 , ..., sn )P
a wiȩc R−1 istnieje. ¤
Definicja: UkÃlad sterowania nazywa siȩ sterowalnym ze wzglȩdu na wyjście
ukÃladu, jeżeli dla dowolnego stanu pocza̧tkowego w chwili t0 istnieje chwila
t1 > t0 i ograniczone, przedziaÃlami cia̧gÃle sterowanie określone w przedziale
[t0 , t1 ] i takie, że wyjście ukÃladu przyjmuje w chwili t1 dowolna̧ zadana̧ wartość
y t1 .
6
Warunek sterowalności ze wzglȩdu na wyjście ukÃladu dla liniowych stacjonarnych
ukÃladów sterowania przybiera postać rz(S) = p,gdzie
S = (CB CAB CA2 B ... CAn−1 B),
a p jest wymiarem przestrzeni wyjść ukÃladu (liczba̧ wyjść ukÃladu.
Sterowanie docelowe ze wzglȩdu na wyjście dla ukÃladu sterowania
ẋ(t) = Ax(t) + Bu(t), x(t0 ) = x0 , y(t) = Cx(t)
jest postaci
u(t) = −B T eA
gdzie
.
R̃ =
Z
t1
T (t
1 −t)
C T R̃−1 CeA(t1 −t0 ) x0 − y(t1 )),
T (t
CeA(t0 −t̃) BB T eA
0 −t̃)
C T dt̃.
t0
Sterowalność liniowych stacjonarnych ukÃladów sterowania z czasem dyskretnym
Definicja sterowalności ukÃladów sterowania z czasem dyskretnym:
Dyskretny ukÃlad sterowania nazywa siȩ ukÃladem sterowalnym, jeżeli stosuja̧c
ograniczone sterowanie dyskretne można go przeprowadzić w skończonym czasie k1 z dowolnego stanu pocza̧tkowego x0 do zadanego stanu końcowego x1 .
Przyjmuja̧c x1 = 0 mówimy, że ukÃlad dyskretny jest sterowalny do zera.
Rozważmy liniowy stacjonarny ukÃlad sterowania z czasem dyskretnym opisywany równaniami stanu
x(k + 1) = Ax(k) + Bu(k), k = 0, 1, ...; x(0) = x0 .
Twierdzenie: Liniowy stacjonarny ukÃlad sterowania z czasem dyskretnym
jest sterowalny wtedy, gdy jego macierz sterowalności
.
S = [B AB A2 B ... An−1 B]
zawiera n liniowo niezależnych kolumn. Warunek ten można sformuÃlować
w równoważnej postaci: rza̧d macierzy sterowalności jest równy wymiarowi
przestrzeni stanu tj. rz(S) = n.
Dowód: Rozwia̧zanie liniowego stacjonarnego ukÃladu ma postać
x(k) = Ak x0 +
k−1
X
j=0
7
Ak−j−1 Bu(j).
W chwili k1 mamy osia̧gna̧ć stan zerowy tj.
0 = Ak1 x0 +
kX
1 −1
Ak1 −j−1 Bu(j).
j=0
Przyjmuja̧c k1 = n uzyskujemy
n
−A x0 =
n−1
X
An−j−1 Bu(j)
j=0
czyli


u(n − 1)


u(n − 2)


u(n − 3)




−An x0 = [B AB A2 B ... An−1 B] 
.





.




.


u(0)
Jeśli macierz sterowalności S o wymiarach n × mn posiada nieosobliwa̧ podmacierz S0 o wmiarach n×n, to dowolny wektor lewej strony ostatniej równości
można wygenerować mnoża̧c macierz S0 przez podwektor zmiennych steruja̧cych
n
zwia̧zanych z kolumnami tej macierzy. Oznaczmy ten podwektor jako u.
Dyskretne sterowanie docelowe dla ukÃladu liniowego stacjonarnego wyrazi siȩ
wzorem
n
u = −S0−1 An x0 .
Wynika sta̧d, że warunkiem wystarczaja̧cym sterowalności ukÃladu dyskretnego
jest warunek rz(S) = n. ¤
Należy podkreślić, że, w odróżnieniu od ukÃladów z czasem cia̧gÃlym, warunek
rzȩdu macierzy S nie jest warunkiem koniecznym sterowalności ukÃladu dyskretnego. Nie obowia̧zuje on np. w przypadku tzw. nilpotentnej macierzy stanu.
Jest to niezerowa macierz A taka, że An = 0. Wtedy ukÃlad sprowadza do zera
dowolny stan pocza̧tkowy przy sterowaniu zerowym nawet jeśli warunek rzȩdu
macierzy S nie jest speÃlniony. Można powiedzieć, że taki ukÃlad dyskretny sam
sprowadza siȩ do zera.
PrzykÃlad: Dyskretny ukÃlad sterowania
Ã
!
à !
0 a
0
x(k + 1) =
x(k) +
u(k), k = 0, 1, 2, ...; x(0) = x0
0 0
1
8
sam sprowadza siȩ do zera, gdyż jego macierz stanu jest nilpotentna dla dowolnej wartości parametru a
Ã
!Ã
! Ã
!
0
a
0
a
0
0
A2 =
=
.
0 0
0 0
0 0
9