Sterowanie Napedów Maszyn i Robotów - Wykład 5

Transkrypt

Sterowanie Napedów Maszyn i Robotów - Wykład 5
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
dr inż. Jakub Możaryn
Sterowanie Napędów Maszyn i Robotów
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) =
km
ωs
=
Us (s)
Lw Js 2 + (Rw J + Lw B)s + (km ke + Rw B)
Tak więc otrzymujemy układ liniowy, stacjonarny, mający charakter
układu oscylacyjnego.
dr inż. Jakub Możaryn
Sterowanie Napędów Maszyn i Robotów
(2)
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 Ω,
kg ṁ2
,
s2
Lw = 0.1 H,
J = 0.1
Nmṡ
,
rad
V ṡ
ke = 0.1
,
rad
Nm
,
km = 0.1
A
B = 0.5
dr inż. Jakub Możaryn
Sterowanie Napędów Maszyn i Robotów
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
Ẋ (t) = Amc X (t) + Bmc U(t)
(3)
y (t) = Cmc X (t) + Dmc U(t)
gdzie: X (t) ∈ R n - wektor stanu, U(t) ∈ R m - wektor sygnałów
sterujących, y (t) ∈ R p - sygnał wyjściowy wyjście / wektor sygnałów
wyjściowych, Amc ∈ R n×n - macierz stanu Bmc ∈ R n×m - macierz
sterowania, Cmc ∈ R p×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,
ciągłego układu dynamicznego.
dr inż. Jakub Możaryn
Sterowanie Napędów Maszyn i Robotów
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 = Rw iw + Lw diw + ke ωs
dt
(4)
dω

 km iw = J s + Bωs + Mobc
dt
po przekształceniu

k
R
1
di

 w = − e ωs − w iw +
Uz
dt
Lw
Lw
Lw

 dωs = − B ωs + km iw − 1 Mobc
dt
J
J
J
można przyjąć następujący wektor stanu i sterowań
iw
Uz
Xfiz =
, Ufiz =
ωs
Mobc
dr inż. Jakub Możaryn
Sterowanie Napędów Maszyn i Robotów
(5)
(6)
Opis w przestrzeni zmiennych stanu - zmienne fizykalne
Model zmiennych stanu z wykorzystaniem zmiennych fizykalnych, z
wykorzystaniem wektora stanu i sterowań:
iw
Uz
Xfiz =
, Ufiz =
ωs
Mobc
jest następujący


ke
Rw



 − Lw − Lw

Ẋfiz = 
km
B
−



J
J

Y = 0 1 Xfiz +
1

 Lw
 Xfiz + 
0
0 0 Ufiz



0 
1  Ufiz
−
J
Ẋfiz = Afiz Xfiz + Bfiz Ufiz
Y = Cfiz Xfiz + Dfiz Ufiz
dr inż. Jakub Możaryn
(7)
Sterowanie Napędów Maszyn i Robotów
(8)
(9)
Opis w przestrzeni zmiennych stanu - zmienne fazowe
Mając transmitancję operatorową postaci
G (s) =
ωs
km
=
2
Us (s)
Lw Js + (Rw J + Lw B)s + (km ke + Rw B)
(10)
stosując następujące podstawienia
kω02 =
Rw J + Lw B
km ke + Rw B
km
, 2ξω0 =
, ω02 =
Lw J
Lw J
Lw J
(11)
można ją zapisać w postaci transmitancji układu oscylacyjnego
G (s) =
Y (s)
k
= 2 2
U(s)
T s + 2ξTs + 1
(12)
G (s) =
Y (s)
kω02
= 2
U(s)
s + 2ξω0 s + ω02
(13)
gdzie: 0 < ξ < 1 - współczynnik tłumienia, ω0 - pulsacja drgań
nietłumionych.
dr inż. Jakub Możaryn
Sterowanie Napędów Maszyn i Robotów
Opis w przestrzeni zmiennych stanu - zmienne fazowe
Opis elementu oscylacyjnego w postaci transmitancji operatorowej
G (s) =
kω02
s 2 + 2ξω0 s + ω02
(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
ẋ1 (t) = x2 (t)
ẋ2 (t) = −ω02 x1 (t) − 2ξω0 x2 (t) + u(t)
(15)
y (t) = kω0 x1 (t)
(16)
równanie wyjścia
dr inż. Jakub Możaryn
Sterowanie Napędów Maszyn i Robotów
Opis w przestrzeni zmiennych stanu - zmienne fazowe
Model zmiennych stanu z wykorzystaniem zmiennych fazowych:
x1
Xfaz =
, Ufaz = Uz
x2
jest następujący

0
1
0

Ẋfaz =
Xfaz +
Ufaz
2
−ω
−2ξω
1
0
0 
Y = kω02 0 Xfaz + [0] Ufaz
˙ = Afaz (t)Xfaz + Bfaz (t)Ufaz (t)
Xfaz
Y = Cfaz Xfaz + Dfaz Ufaz
dr inż. Jakub Możaryn
Sterowanie Napędów Maszyn i Robotów
(17)
(18)
(19)
Równania stanu - zmienne fazowe
Model z czasem ciągłym stanu procesu ruchu jako człon
oscylacyjny zachowań prędkościowych




0
1
0
0
 X (t) +  0  U(t)
0
1
Ẋ (t) =  0
2
0 −ω0 −2ξω0
1
y (t) = [1
0
0] X (t)
Fazowe zmienne stanu są następujące

 x1 (t) = s(t)
x2 (t) = v (t)

x3 (t) = a(t)
dr inż. Jakub Możaryn
Sterowanie Napędów Maszyn i Robotów
(20)
(21)
(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.
dr inż. Jakub Możaryn
Sterowanie Napędów Maszyn i Robotów
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) = Amd X (k) + Bmd U(k)
(23)
y (k) = Cmd X (k)
gdzie: X (k) ∈ R n - wektor stanu, U(k) ∈ R m - wektor sygnałów
sterujących, y (k) ∈ R p - sygnał wyjściowy wyjście / wektor sygnałów
wyjściowych, Amd ∈ R n×n - macierz stanu Bmd ∈ R n×m - macierz
sterowania, Cmd ∈ R p×m - macierz wyjścia.
dr inż. Jakub Możaryn
Sterowanie Napędów Maszyn i Robotów
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)Tp i
(24)
oraz dla modelu fazowych zmiennych stanu oznaczając:
Amc = Afaz , Bmc = Bfaz , Cmc = Cfaz
dr inż. Jakub Możaryn
Sterowanie Napędów Maszyn i Robotów
(25)
Równania stanu - dyskretyzacja modeli
Równanie stanu modelu przekształca się, zgodnie z zasadami
dyskretyzacji w postać:


ZTp


X (k + 1) = exp(Amc Tp )X (k) +  exp (Amc t)Bmc dt  U(k)
(26)
0
gdzie
Amd = exp (Amc Tp ) = L−1 [(sI − Amc )−1 ];
ZTp
Bmd =
exp (Amc t)Bmc dt = A−1
mc [exp (Amc Tp ) − I ]Bmc ,
(27)
det A 6= 0
0
(28)
dr inż. Jakub Możaryn
Sterowanie Napędów Maszyn i Robotów
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 = e Amc Tp = L−1 [(sI − Amc )−1 ]t=Tp
(29)

Amd = L−1
1
 s


 0



0
2ξω02 + s
s(2ξω02 s + ω02 + s 2 )
(2ξω02 + s)
(2ξω02 s + ω02 + s 2 )
−ω02
2
(2ξω0 s + ω02 + s 2 )
1
s(2ξω02 s + ω02 + s 2 )
1
(2ξω02 s + ω02 + s 2 )
s
(2ξω02 s + ω02 + s 2 )








t=Tp
(30)
gdzie L−1 - odwrotne przekształcenie Laplace’a.
Bmd = A−1
mc (Amd − I )Bmc ,
dr inż. Jakub Możaryn
det Amc 6= 0
Sterowanie Napędów Maszyn i Robotów
(31)
Równania stanu - dyskretyzacja modeli
Ostatecznie otrzymuje się model z czasem dyskretnym:
X (k + 1) = Amd X (k) + Bmd U(k)
y (k) = Cmd X (k)
(32)
UWAGA: 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.
dr inż. Jakub Możaryn
Sterowanie Napędów Maszyn i Robotów
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
1 (n)
f (x0 )(x − x0 )n ,
n!
n=0
(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ć
∞
X
f (n) (0) n
x
(34)
f (x) = f (0) +
n!
n=1
Dla funkcji wykładniczej, szereg Maclaurina ma postać
∞
X
xn
ex =
n!
n=1
dr inż. Jakub Możaryn
Sterowanie Napędów Maszyn i Robotów
(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 (Amc Tp ) szeregiem funkcyjnym
MacLaurina,
Krok 2: zapisie macierzy Amd i Bmd w postaci
Amd =
∞
X
Ai
mc
i=0
i!
Tpi ; Bmd = Tp
∞
X
i=0
Aimc
T i Bmc
(i + 1)! p
Krok 3: uwzględnieniu tylko kilku pierwszych (lub pierwszego)
wyrazów tego rozwinięcia.
dr inż. Jakub Możaryn
Sterowanie Napędów Maszyn i Robotów
(36)
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é funkcji
eksponencjalnej
z = e sT
(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 (z − 1)
T (z + 1)
dr inż. Jakub Możaryn
Sterowanie Napędów Maszyn i Robotów
(38)
Równania stanu - dyskretyzacja modeli (uproszczenia)
Model z czasem ciągłym

0
1
0
Ẋ (t) =  0
0 −ω02



0
0
 X (t) +  0  U(t)
1
−2ξω0
1
y (t) = [1
0
0] x1 (t)
Doprowadzany jest przez usunięcie z zależności wyrazów z czynnikiem
Tp wyższym niż kwadratowy, do postaci modelu z czasem dyskretnym




1
Tp
0
0
 X (k) +  0  U(k)
βTp
X (k + 1) =  0 1 − αTp
0 −2αβ
1 − αTp − 2β(1 − β)
1
y (k) = [1
0
0] X (k)
gdzie
α=
1 2
ω Tp ;
2 0
dr inż. Jakub Możaryn
β = 1 − 2ξω0 Tp
Sterowanie Napędów Maszyn i Robotów
Równania stanu - dyskretyzacja modeli (uproszczenia)
Prawidłowość doboru okresu próbkowania i przeprowadzenia powyższej
aproksymacji wynika z twierdzenia Kotielnikowa- Shannona, określają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ść najwyższej składowej częstotliwości w mierzonym sygnale.
ωp =
π
2π
; ωp ­ 2ω0 ⇒ Tp ¬
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, otrzymuje 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 zachowań ruchowych (siłowych) napędu: takie częstotliwości charakteryzują
nawet szybkie napędy pozycyjne.
dr inż. Jakub Możaryn
Sterowanie Napędów Maszyn i Robotów
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
dr inż. Jakub Możaryn
Sterowanie Napędów Maszyn i Robotów