Sterowaniem – nazywamy celowe oddziaływanie na przebieg proces

Transkrypt

Sterowaniem – nazywamy celowe oddziaływanie na przebieg proces
Dwiczenia 2 Automatyka i robotyka
Wstęp
Podstawowe pojęcia:
Sterowaniem – nazywamy celowe oddziaływanie na przebieg procesów. Można wyróżnid
ręczne oraz automatyczne.
Układ – wyodrębniony ze środowiska układ fizyczny lub jego częśd. Środowisko i układ
fizyczny są pojęciami pierwotnymi.
Omówid przykład sterowania :



Kierowanie samochodem
Sterowanie kotłem grzewczym
Autopilot samolotu
Google self-driving car :


http://www.youtube.com/watch?v=S_eVE6KQ4Jg
http://www.youtube.com/results?search_query=google+self+car+driving&aq=f
Wymuszenie (sygnał wejściowy) – oddziaływanie środowiska na wyodrębniony układ.
Wymuszenia dzielimy na :


Wielkości sterujące (sterowania) – wielkości które dla osiągnięcia pożądanych
zachowao układu są zmieniane celowo
Zakłócenia – podlegają zmianom losowym
Co może byd wielkościami sterującymi a co zakłóceniami w przypadku automatycznego
samochodu.
Odpowiedź układu (wyjścia układu) – oddziaływanie układu na środowisko.
Stan układu – najmniejszy liczebnie zbiór wielkości, którego znajomośd w chwili początkowej
t0 oraz znajomośd wymuszeo w przedziale (y0,yt+ pozwala wyznaczyd stan i odpowiedź
układu w dowolnej chwili t>t0.
Obiekt regulacji – proces technologiczny lub urządzenie, w którym zachodzi proces
podlegający regulacji. Przykłady obiektów: samochód, proces technologiczny, maszyna,
robot.
Regulator (urządzenie sterujące) – urządzenie, które wykorzystując różnice między
odpowiednimi wielkościami zadanymi i mierzonymi, tak oddziałuje – za pomocą wielkości
sterujących – na obiekt, aby wielkości regulowane miały pożądany przebieg.
Sterowanie w układzie otwartym i zamkniętym (regulacja) czyli z sprzężeniem zwrotnym
w(t) – wartośd zadana
v(t) – wartośd rzeczywista zwana też sprzężeniem zwrotnym
e(t) – błąd regulacji, uchyb
u(t) – wartośd regulacji zwana też punktem pracy, sterowanie
z(t) – zakłócenia
Równanie stanu i równanie wyjścia
Rozważmy układ elektryczny jak na rysunku poniżej
Wymuszeniami będą wartości siły elektromotorycznej e1 i e2, zmiennymi stanu będą Uc –
napięcie na kondensatorze i IL – prąd w cewce. Odpowiedzią układu będzie napięcie U na
oporniku o rezystancji R3.
Spróbujmy utworzyd model tego układu. Korzystając z pierwszego i drugiego prawa
Kirchhoffa dla obwodu, możemy napisad równania:
1)
2)
3)
Podstawiając za
i rugując z powyższych równao prądy „Ic” i „I3”
4)
5)
Porządkując równanie 5) mamy:
6)
Podstawiając zależnośd z równania 6) do 4) otrzymamy
7)
Zapisując 6) i 7) w postaci równania macierzowego mamy:
Upraszczając równanie ma postad
Nazywamy je równaniem stanu. Macierz A nazywamy macierzą systemu, a B macierzą
wejścia.
Pamiętajmy iż mamy wyznaczyd wartośd odpowiedź układu czyli w naszym przypadku „U”,
na podstawie drugiego prawa Kirchhoffa dla oczka, możemy napisad
8)
Podstawiając ponownie 6) do równania 8) otrzymamy
Zapisując macierzowo
Upraszczając równanie ma postad ogólną
Równanie to nazywamy równaniem wyjścia. Do opisu układu możemy użyd jednocześnie
równania stanu i równania wyjścia jest to opis układu w przestrzeni stanów.
Charakterystyki układu skokowa i impulsowa
Charakterystyką skokową układu dynamicznego nazywamy odpowiedź układu na
wymuszenie w postaci skoku jednostkowego przy zerowych warunkach początkowych.
Charakterystyka impulsową układu dynamicznego nazywamy odpowiedź układu na
wymuszenie w postaci impulsu Diraca przy zerowych warunkach początkowych
Operacje przydatne do ćwiczeo:
SS ( state-space ) układ opisany za pomocą równao stanu.
SYS = SS(A,B,C,D) tworzy układ ciągły.
SYS = SS(A,B,C,D,T) tworzy układ dyskretny z czasem próbkowania T.
INITIAL wyznacza odpowiedź układu na zadane warunki początkowe.
INITIAL(SYS,X0) wywołanie to kreśli odpowiedź układu na zadany warunek początkowy X0,
odpowiedź jest opisana przez następujące równanie:
Układ ciągły:
Układ dyskretny:
x[k+1] = A x[k], y[k] = C x[k], x[0] = x0
Przedział czasu i liczba punktów są dobierane automatycznie.
INITIAL(SYS,X0,TFINAL) wywołanie to symuluje odpowiedź dla podanego czasu, dla układu
dyskretnego TFINAL określa liczbę kroków.
INITIAL(SYS,X0,T) wywołanie to wektor T określa czas symulacji odpowiedzi, dla układu
dyskretnego T ma postad Ti:Ts:Tf gdzie Ts określa czas próbkowania, dla układu ciągłego T
ma postad Ti:dt:Tf gdzie dt określa odstęp między kolejnym próbkowaniem.
INITIAL(SYS1,SYS2,...,X0,T) wywołanie to kreśli odpowiedź impulsową dla wielu układów na
jednym wykresie z opcjonalnie użytym wektorem T, można też określid kolor oraz styl linii dla
każdego z układów np. initial(sys1,'r',sys2,'y--',sys3,'gx').
*Y,T,X+ = INITIAL(SYS,X0,...) wywołanie to dla układu przestrzeni stanu zwraca również wektor
stanu X z kolejnych chwil symulacji.
STEP wyznacza odpowiedź układu na skok jednostkowy.
STEP(SYS) wywołanie to kreśli odpowiedź układu na skok jednostkowy podany na wejście,
przedział czasu i liczba punktów dobierane są automatycznie.
STEP(SYS,TFINAL) wywołanie to symuluje odpowiedź skokową dla zadanego czasu TFINAL,
natomiast dla układu dyskretnego bez ustalonego czasu próbkowania TFINAL jest
interpretowany jako liczba próbkowao.
STEP(SYS,T) wywołanie to wektor T określa czas symulacji odpowiedzi skokowej,dla układu
dyskretnego T ma postad Ti:Ts:Tf gdzie Ts określa czas próbkowania, dla układu ciągłego T
ma postad Ti:dt:Tf gdzie dt jest czasem próbkowania z dyskretnej aproksymacji na układ
ciągły.
STEP(SYS1,SYS2,...,T) wywołanie to kreśli odpowiedź skokową dla wielu układów na jednym
wykresie z opcjonalnie użytym wektorem T, można też określid kolor oraz styl linii dla
każdego z układów np. (sys1,'r',sys2,'y--',sys3,'gx').
*Y,T+ = STEP(SYS,...) wywołanie to zwraca wyniki symulacji w postaci wektora odpowiedzi
skokowej Y oraz wektora czasu trwania symulacji T.
*Y,T,X+ = STEP(SYS,...) wywołanie to dla układu przestrzeni stanu zwraca również wektor
stanu X z kolejnych chwil symulacji.
IMPULSE wyznacza odpowiedź układu na impuls jednostkowy.
IMPULSE(SYS) wywołanie to kreśli odpowiedź układu na impuls jednostkowy podany na
wejście, przedział czasu i liczba punktów dobierane są automatycznie.
IMPULSE(SYS,TFINAL) wywołanie to symuluje odpowiedź impulsową dla zadanego czasu
TFINAL, natomiast dla układu dyskretnego bez ustalonego czasu próbkowania TFINAL jest
interpretowany jako liczba próbkowao.
IMPULSE(SYS,T) wywołanie to wektor T określa czas symulacji odpowiedzi impulsowej, dla
układu dyskretnego T ma postad Ti:Ts:Tf gdzie Ts określa czas próbkowania, dla układu
ciągłego T ma postad Ti:dt:Tf gdzie dt jest czasem próbkowania z dyskretnej aproksymacji na
układ ciągły.
IMPULSE(SYS1,SYS2,...,T) wywołanie to kreśli odpowiedź impulsową dla wielu układów na
jednym wykresie z opcjonalnie użytym wektorem T, można też określid kolor oraz styl linii dla
każdego z układów np. (sys1,'r',sys2,'y--',sys3,'gx').
*Y,T+ = IMPULSE(SYS,T) wywołanie to zwraca wyniki symulacji w postaci wektora
odpowiedzi skokowej Y oraz wektora czasu trwania symulacji T.
*Y,T,X+ = IMPULSE(SYS, ...) wywołanie to dla układu przestrzeni stanu zwraca również
wektor stanu X z kolejnych chwil symulacji.
LTIVIEW udostępnia interakcyjny graficzny interfejs użytkownika dla porównao czasowych
i częstotliwościowych odpowiedzi układów.
LTIVIEW(PLOTTYPE) wywołanie to generuje przypadkowy układ dla którego kreśli
odpowiedź. PLOTTYPE określa rodzaj odpowiedzi. W pole PLOTTYPE można wstawid:
1)
2)
3)
4)
5)
6)
7)
8)
'step’
'impulse'
'bode'
'nyquist'
'nichols'
'sigma'
'lsim'
'initial'
LTIVIEW(PLOTTYPE,SYS) wywołanie to kreśli zadany rodzaj odpowiedzi dlazadanego
układu.
LTIVIEW(PLOTTYPE,SYS1,SYS2,...SYSN) wywołanie to kreśli odpowiedzi wielu układów na
jednym wykresie.
LSIM symuluje odpowiedź czasową układu na zadany sygnał wejściowy.
LSIM(SYS,U,T) wywołanie to kreśli odpowiedź czasową układu na sygnał wejściowy
określony przez U i T przy zerowych warunkach początkowych, parametr U powinien
zawierad wierszami wektory sterowao dla kolejnych chwil czasu określonych w wektorze T,
stąd liczba wierszy macierzy U musi byd równa liczbie elementów wektora czasu T np. T =
0:0.01:5; U = cos(t); lsim(sys,u,t) symuluje odpowiedź układu na sygnał wejściowy U przez
5 sekund.
LSIM(SYS,U,T,X0) wywołanie to dla układu opisanego równaniami stanu można określid
warunki początkowe X0.
LSIM(SYS1,SYS2,...,U,T,X0) wywołanie to symuluje odpowiedź kilku układów na jednym
wykresie przy czym warunki początkowe mogą ale nie muszą byd określone, każdemu
układowi można przypisad odpowiedni kolor i rodzaj linii np.
lsim(sys1,'r',sys2,'y--',sys3,'gx',u,t).
*Y,T+ = LSIM(SYS,U,...) wywołanie to zapamiętuje przebieg symulacji zapisując przebieg
wyjścia Y dla danych chwil czasu zapisanych w wektorze T, przy czym macierz Y ma tyle samo
wierszy co liczba elementów wektora T oraz tyle kolumn ile jest wyjśd układu.
*Y,T,X+ = LSIM(SYS,U,...) wywołanie to dla układu opisanego równaniami stanu zwraca też
macierz stanów X, która ma tyle rzędów co liczba elementów wektora T i tyle kolumn ile jest
stanów układu.
GENSIG tworzy sygnały wejściowe dla LSIM.
*U,T+ = GENSIG(TYPE,TAU) wywołanie to tworzy skalarny sygnał U z pola TYPE o okresie
TAU. Generowane sygnały mogą byd funkcjami typu:
TYPE = 'sin' --- sinusoidalna
TYPE = 'square' --- prostokątna
TYPE = 'pulse' --- okresowo-impulsowa
GENSIG zwraca wektor T z czasem próbkowania i wektor U z wartościami sygnału dla tych
próbkowao, wszystkie generowane sygnały mają amplitudę równą jeden.
*U,T+ = GENSIG(TYPE,TAU,TF,TS) wywołanie to dodatkowo można określid długośd trwania
sygnału TF oraz czas próbkowania TS.
Zadania
1. Utwórz w matlabie model w przestrzeni stanów
2. Wyznacz odpowiedź układu na zadane warunki początkowe
3. Wyznacz charakterystykę skokową, impulsową układu
Do narysowania charakterystyki skokowej wykorzystaj funkcję STEP, a impulsowej
IMPULSE. Do umieszczenia wykresów na jednym obrazku można użyd funkcji
„subplot”.
4. Zbudowad model jak w dwiczeniu 3 zbadad odpowiedź na wymuszenia wykorzystując
matlabową funkcję LITVIEW.
5. Zbudowad model jak w dwiczeniu 3 narysowad odpowiedź modelu na sinusoidalne
wymuszenie U określone w chwilach T.
6. Wyznacz przebieg odpowiedzi układu o wielu wejściach i wielu wyjściach na
wymuszenie sinusoidalne oraz wymuszenie zmieniające się skokowo. Układ dyskretny
opisany jest modelem
Został poddany działaniu dyskretnego wymuszenie sinusoidalnego o okresie Pi w
wejściu u1 oraz wymuszenia zmieniającego się skokowo na wejściu u2. Okres
próbkowania wynosi 0,1s. Do utworzenia odpowiednich wymuszeo użyj funkcji
„gensig”