Sterowanie Napędów Maszyn i Robotów
Wykład 5 - Model silnika DC w przestrzeni zmiennych stanu z czasem ciągłym i z czasem dyskretnym
dr inż. Jakub Możaryn
Instytut Automatyki i Robotyki
Warszawa, 2016
Równanie dynamiki silnika DC
Do wyznaczenia transmitancji silnika elektrycznego prądu stałego z magnesem trwałym, należy przyjąć zerowe obciążenie, czyli:
Mobc= 0 (1)
co daje transmitancję operatorową postaci G (s) = ωs
Us(s) = km
LwJs2+ (RwJ + LwB)s + (kmke+ RwB) (2) Tak więc otrzymujemy układ liniowy, stacjonarny, mający charakter układu oscylacyjnego.
Parametry silnika elektrycznego DC
Do przeprowadzenia numerycznej symulacji działania silnika należy zdefiniować jego parametry (współczynniki i stałe).
Załóżmy, że:
Rw = 2 Ω, J = 0.1 kg ˙m2
s2 , Lw= 0.1 H, B = 0.5 Nm ˙s
rad , ke = 0.1 V ˙s
rad, km = 0.1 Nm A ,
Opis w przestrzeni zmiennych stanu - zmienne fizykalne
Do zaprojektowania układu regulacji pozycji / prędkości
serwomechanizmu, poszukiwany jest model dynamiki układu w postaci modelu w przestrzeni stanów z czasem ciągłym
X (t) = A˙ mcX (t) + BmcU(t)
y (t) = CmcX (t) + DmcU(t) (3) gdzie: X (t) ∈ Rn- wektor stanu, U(t) ∈ Rm - wektor sygnałów
sterujących, y (t) ∈ Rp - sygnał wyjściowy wyjście / wektor sygnałów wyjściowych, Amc ∈ Rn×n - macierz stanu Bmc∈ Rn×m - macierz sterowania, Cmc∈ Rp×m - macierz wyjścia.
Fizykalne zmienne stanu: minimalna liczba niezależnych zmiennych fizycznych.
Fazowe zmienne stanu: Zmienne stanu określone w ten sposób, że kolejna zmienna jest równa pochodnej poprzedniej. Wyznaczane przy założeniu jednowymiarowego, liniowego, stacjonarnego,
Opis w przestrzeni zmiennych stanu - zmienne fizykalne
Model fizykalnych zmiennych stanu, można wyznaczyć, na podstawie układu równań wiążących zależności elektryczne i mechaniczne silnika DC
Uz = Rwiw+ Lwdiw dt + keωs kmiw = Jd ωs
dt + Bωs+ Mobc
(4)
po przekształceniu
diw
dt = −ke Lw
ωs−Rw Lw
iw+ 1 Lw
Uz
d ωs dt = −B
Jωs+km J iw−1
JMobc
(5)
można przyjąć następujący wektor stanu i sterowań Xfiz =
iw ωs
, Ufiz=
Uz Mobc
(6)
Opis w przestrzeni zmiennych stanu - zmienne fizykalne
Model zmiennych stanu z wykorzystaniem zmiennych fizykalnych, z wykorzystaniem wektora stanu i sterowań:
Xfiz =
iw
ωs
, Ufiz=
Uz
Mobc
(7) jest następujący
X˙fiz=
−Rw
Lw
−ke
Lw
km
J −B
J
Xfiz+
1 Lw
0 0 −1
J
Ufiz
Y =
0 1 Xfiz+
0 0 Ufiz
(8)
X˙fiz= AfizXfiz+ BfizUfiz
Y = CfizXfiz+ DfizUfiz (9)
Opis w przestrzeni zmiennych stanu - zmienne fazowe
Mając transmitancję operatorową postaci G (s) = ωs
Us(s)= km
LwJs2+ (RwJ + LwB)s + (kmke+ RwB) (10) stosując następujące podstawienia
kω20= km
LwJ, 2ξω0= RwJ + LwB
LwJ , ω20=kmke+ RwB
LwJ (11)
można ją zapisać w postaci transmitancji układu oscylacyjnego G (s) = Y (s)
U(s) = k
T2s2+ 2ξTs + 1 (12) G (s) = Y (s)
U(s) = kω02
s2+ 2ξω0s + ω02 (13) gdzie: 0 < ξ < 1 - współczynnik tłumienia, ω0- pulsacja drgań
nietłumionych.
Opis w przestrzeni zmiennych stanu - zmienne fazowe
Opis elementu oscylacyjnego w postaci transmitancji operatorowej G (s) = kω20
s2+ 2ξω0s + ω20 (14) Układ ten jest opisany równaniem 2-go rzędu, więc wymaga q = 2 zmiennych stanu, definiujących stan układu w dowolnej chwili czasu.
Korzystając z metody bezpośredniej otrzymuje się następujące równania stanu
˙
x1(t) = x2(t)
˙
x2(t) = −ω20x1(t) − 2ξω0x2(t) + u(t) (15) równanie wyjścia
y (t) = kω0x1(t) (16)
Opis w przestrzeni zmiennych stanu - zmienne fazowe
Model zmiennych stanu z wykorzystaniem zmiennych fazowych:
Xfaz=
x1 x2
, Ufaz = Uz (17)
jest następujący
X˙faz=
0 1
−ω02 −2ξω0
Xfaz+
0 1
Ufaz Y =
kω20 0 Xfaz+ [0] Ufaz
(18)
Xfaz˙ = Afaz(t)Xfaz+ Bfaz(t)Ufaz(t) Y = CfazXfaz+ DfazUfaz
(19)
Równania stanu - zmienne fazowe
Model z czasem ciągłym stanu procesu ruchu jako człon oscylacyjny zachowań prędkościowych
X (t) =˙
0 1 0
0 0 1
0 −ω02 −2ξω0
X (t) +
0 0 1
U(t) (20)
y (t) = [1 0 0] X (t) (21)
Fazowe zmienne stanu są następujące
x1(t) = s(t) x2(t) = v (t) x3(t) = a(t)
(22)
Równania stanu - zmienne fazowe
Podany model obliczeniowy z czasem ciągłym procesu ruchu w układzie napędowym ma następujące 4 zalety:
1 pojęcia typu wzmocnienie prędkościowe, pulsacja drgań, tłumienie są dla inżynierów zrozumiałe, a wartości parametrów - intuicyjne i inżyniersko weryfikowalne,
2 jakościowo poprawnie modeluje zależność dynamiki napędu od położenia elementu ruchomego, obciążenia masowego i warunków pracy,
3 spełnia warunki sterowalności i obserwowalności układu w sensie Kalmana oraz istotny w przypadku układu napędowego warunek sterowalności wyjściowej,
4 przekłada się w implementacyjnie prosty sposób w algorytm wyboru macierzy sprzężeń zwrotnych, uwzględniając założone właściwości statyczne i dynamiczne układu pozycyjnego.
Równania stanu - dyskretyzacja modeli
Chcąc zaprojektować układ regulacji w technice mikroprocesorowej, poszukiwany jest model dynamiki układu w postaci modelu w przestrzeni stanów z czasem dyskretnym
X (k + 1) = AmdX (k) + BmdU(k)
y (k) = CmdX (k) (23)
gdzie: X (k) ∈ Rn- wektor stanu, U(k) ∈ Rm - wektor sygnałów sterujących, y (k) ∈ Rp - sygnał wyjściowy wyjście / wektor sygnałów wyjściowych, Amd ∈ Rn×n - macierz stanu Bmd∈ Rn×m - macierz sterowania, Cmd∈ Rp×m - macierz wyjścia.
Równania stanu - dyskretyzacja modeli
Transformacja ciągłych równań różniczkowych do dyskretnych równań różnicowych.
Uwzględniając : czas dyskretny k,
okres próbkowania (dyskretyzacji) Tp
sterowanie sygnałami odcinkowo - stałymi zmienianymi wyłącznie w chwili próbkowania (sygnałami schodkowymi) , czyli:
U(t) = U(kTp) dla t ∈ hkTp, (k + 1)Tpi (24) oraz dla modelu fazowych zmiennych stanu oznaczając:
Amc = Afaz, Bmc = Bfaz, Cmc= Cfaz (25)
Równania stanu - dyskretyzacja modeli
Równanie stanu modelu przekształca się, zgodnie z zasadami dyskretyzacji w postać:
X (k + 1) = exp(AmcTp)X (k) +
Tp
Z
0
exp (Amct)Bmcdt
U(k) (26)
gdzie
Amd= exp (AmcTp) = L−1[(sI − Amc)−1]; (27)
Bmd =
Tp
Z
0
exp (Amct)Bmcdt = A−1mc[exp (AmcTp) − I ]Bmc, det A 6= 0 (28)
Równania stanu - dyskretyzacja modeli
W przypadku modelu opisanego pulsacją drgań swobodnych ω0 i tłumieniem ξ – macierz Amd wyznaczana może być zgodnie z definicją
Amd= eAmcTp = L−1[(sI − Amc)−1] t=T
p (29)
Amd = L−1
1 s
2ξω02+ s s(2ξω20s + ω20+ s2)
1
s(2ξω02s + ω20+ s2) 0 (2ξω02+ s)
(2ξω02s + ω02+ s2)
1
(2ξω20s + ω02+ s2)
0 −ω02
(2ξω02s + ω02+ s2)
s
(2ξω20s + ω02+ s2)
t=Tp
(30) gdzie L−1 - odwrotne przekształcenie Laplace’a.
Bmd = A−1mc(Amd− I )Bmc, det Amc 6= 0 (31)
Równania stanu - dyskretyzacja modeli
Ostatecznie otrzymuje się model z czasem dyskretnym:
X (k + 1) = AmdX (k) + BmdU(k)
y (k) = CmdX (k) (32)
UWAGA: W praktyce do realizacji w czasie rzeczywistym procedur iden- tyfikacji i sterowania przy użyciu formalnie uzyskanych macierzy modelu dyskretnego zaleca się stosować przybliżony sposób transformacji opisu modelu ciągłego w dyskretny.
Równania stanu - dyskretyzacja modeli (uproszczenia)
szereg Taylora
Jeśli funkcja f : D → Y , gdzie D ⊆ R oraz Y jest przestrzenią unormowaną i ma w punkcie x0∈ D pochodne dowolnego rzędu, to można rozważać szereg
∞
X
n=0
1
n!f(n)(x0)(x − x0)n, (33) gdzie przyjęto f(0)(x0) = f (x0).
Jeżeli x0= 0, to szereg ten nazywamy szeregiem Maclaurina. Rozwinięcie funkcji w szereg Maclaurina ma następującą postać
f (x ) = f (0) +
∞
X
n=1
f(n)(0)
n! xn (34)
Dla funkcji wykładniczej, szereg Maclaurina ma postać ex =
∞
X
n=1
xn
n! (35)
Równania stanu - dyskretyzacja modeli (uproszczenia)
W praktyce do realizacji w czasie rzeczywistym procedur identyfikacji i sterowania przy użyciu formalnie uzyskanych macierzy modelu
dyskretnego zaleca się stosować przybliżony sposób transformacji opisu modelu ciągłego w dyskretny polegający na:
Krok 1: zastąpieniu funkcji exp (AmcTp) szeregiem funkcyjnym MacLaurina,
Krok 2: zapisie macierzy Amd i Bmd w postaci
Amd =
∞
X
i =0
Aimc
i ! Tpi; Bmd= Tp
∞
X
i =0
Aimc
(i + 1)!TpiBmc (36)
Krok 3: uwzględnieniu tylko kilku pierwszych (lub pierwszego) wyrazów tego rozwinięcia.
Równania stanu - dyskretyzacja modeli (uproszczenia)
Postępowanie to odwołuje się do transformacji Tustina polegającej na ograniczeniu rozwinięcia potęgowego operatora s do jednego wyrazu przy wyznaczaniu transmitancji dyskretnej.
Transformacja Tustina polega na aproksymacji Pad´e funkcji eksponencjalnej
z = esT (37)
Przekształcenie metodą Tustina polega na wykorzystaniu następujących podstawień przy transformacji z przestrzeni ’s’ Laplace’a (okład z czasem ciągłym) do przestrzeni ’z’ (układ z czasem dyskretnym):
s = 2 T
(z − 1)
(z + 1) (38)
Równania stanu - dyskretyzacja modeli (uproszczenia)
Model z czasem ciągłym
X (t) =˙
0 1 0
0 0 1
0 −ω02 −2ξω0
X (t) +
0 0 1
U(t)
y (t) = [1 0 0] x1(t)
Doprowadzany jest przez usunięcie z zależności wyrazów z czynnikiem Tpwyższym niż kwadratowy, do postaci modelu z czasem dyskretnym
X (k + 1) =
1 Tp 0
0 1 − αTp βTp
0 −2αβ 1 − αTp− 2β(1 − β)
X (k) +
0 0 1
U(k)
y (k) = [1 0 0] X (k) gdzie
α = 1
ω2Tp; β = 1 − 2ξω0Tp
Równania stanu - dyskretyzacja modeli (uproszczenia)
Prawidłowość doboru okresu próbkowania i przeprowadzenia powyższej aproksymacji wynika z twierdzenia Kotielnikowa- Shannona, określa- jącego pod jakim warunkiem z sygnału dyskretnego x (k) złożonego z pró- bek danego sygnału ciągłego x (t), można wiernie odtworzyć sygnał x (t).
Częstotliwość próbkowania musi być większa niż dwukrotność naj- wyższej składowej częstotliwości w mierzonym sygnale.
ωp= 2π Tp
; ωp 2ω0⇒ Tp¬ π ω0
(39) Taka aproksymacja znajduje swe uzasadnienie w stwierdzeniu skali róż- nic wartości pomiędzy pulsacją próbkowania ωp wynikająca z okresu Tp a pulsacją ω0.
Przy milisekundowym okresie próbkowania, np. Tp ∈< 0.8, 2 > ms, otrzy- muje się pulsację próbkowania ωp∈< 7850, 3140 > rd /s która jest o rzędy wielkości większa od pulsacji drgań swobodnych ω0∈< 10, 60 > rd /s za- chowań ruchowych (siłowych) napędu: takie częstotliwości charakteryzują nawet szybkie napędy pozycyjne.
Sterowanie Napędów Maszyn i Robotów
Wykład 5 - Model silnika DC w przestrzeni zmiennych stanu z czasem ciągłym i z czasem dyskretnym
dr inż. Jakub Możaryn
Instytut Automatyki i Robotyki
Warszawa, 2016