background image

Minimalno czasowe sprowadzenie 

oscylatora idealnego do punktu 

równowagi za pomocą krzywej 

przełączeń

Henryk Zelek

2-MPS(s)

Prowadzący: prof. dr hab. inż. O. Petrov

Teoria sterowania

background image

Stabilność otwartych i zamkniętych

nieliniowych układów sterowania.

Bezpośrednia metoda Lapunowa

Wprowadzenie teoretyczne

background image

Wyjaśnienie różnych poleceń 

i zwrotów

Plot- rysuj wykres funkcji

PlotRange-opcja funkcji graficznych , która określa 
zakres współrzędnych

FrameLabel-opcja grafiki, która określa jak należy 
umieścić etykiety na krawędziach kadru.

GridLines-opcja dwuwymiarowej grafiki funkcji, która 
określa linie siatki.

True- symbol wartości logicznej

Automatic- reprezentuje opcję lub inną wartość, która 
ma być automatycznie wbudowana przez funkcję.

PlotStyle- jest opcją do wiązania i drukowania funkcji, 
określa styl , w którym obiekty mają być sporządzone.

background image
background image
background image

Definicja stabilności 

asymptotycznej w obszarze

background image

Definicja lokalnej 

stabilności asymptotycznej

background image

Definicja funkcji 

Lapunowa

background image

 

Definicja  antyfunkcji 

Lapunowa

background image

Twierdzenie Lapunowa o stabilności 

nieliniowych układów sterowania

background image

Definicja zbioru 

zwartego

background image

Twierdzenie Lapunowa o 

niestabilności nieliniowych 

układów sterowania

background image

Tłumaczenie funkcji

Thickness - Thickness[0.005] oznacza, ze linia wykresu będzie o grubości 0,5% długości całej 
grafiki

n=2 – przypisanie zmiennej wartości

vx=Table[x[i][t],{i,1,n}];  Tworzenie Tablicy zmiennych

x0 – mówi jaka jest wartość wyrażenia gdy x dąży do x_0

ff[t_] - dostaje nieco odpowiadającego współczynnika 2 ^ k w całkowitej n

a1 – daje częstotliwość uwagę w oktawę 

a11 – wskaźniki[list] daje kolejne wskaźniki elementów w liście

Module - określa że wydarzenia z symboli x, y powinny być traktowane jako lokalne

Flatten - spłaszczacz

NDsolve – znajdzie rozwiązanie numeryczne do równań różniczkowych zwyczajnych zmiennej y 
z zmiennej niezależnej x na określonym przedziale

Join – dołącz 

MaxSteps – jest to opcja do takich funkcji jak NDsolve, który określa maksymalną liczbę kroków 
do podjęcia w tworzeniu wyników

Plot – działka generuje wykres jako funkcje x od [x min] do [x max]

PlotRange ->  All– jest to opcja funkcji graficznych, która określa cały zakres współrzędnych 

FrameLabel – jest to opcja graficzna która określa etykiety jakie należy umieścić na 
krawędziach wykresu

GridLines – jest to opcja dwuwymiarowej grafiki funkcji która określa linie siatki

background image

Minimalno czasowe 

sprowadzenie oscylatora 

idealnego do punktu równowagi 

za pomocą krzywej przełączeń

Ćwiczenie nr.5

background image

Generowanie krzywej 

przełączeń

background image

Generowanie krzywej przełączeń

background image

Po zmianie parametru  na  

a=15

background image

Model oscylatora ze sterowaniem 
schodkowym i trygonometrycznym-
dokładna dyskretyzacja sterowania

Parametry początkowe:
n=2;
m=2;
a1=1;
a2=0;
b1=1;
b2=0;
liczba punktów dyskretyzacji czasu
ku=200;
krok dyskretyzacji czasu
delta=0.05;
vx=Table[x[i][t],{i,1,n}];
vu=Table[u[j][t],{i,1,m}];
x0={7,1};
ff[t_]:={x[2][t],-a1*x[1][t]-a2*x[2][t]+b1*u[1][t]+b2*u[2][t]};
zadanie sterowania z dużą liczbą parametrów dyskretyzacji o 

ustalonej wartości

uu={Flatten[{Table[-1,{i,1,5}],Table[0,{i,6,200}]}],Table[0,{i,1,200}]}

background image
background image

sol11=Plot[Evaluate[x[1][t]/.solxx[uu,x0]],{t,0,0.25},PlotRange->All,
FrameLabel->{"t","x[1][t]"},Frame->True,GridLines->Automatic, 
PlotStyle->{Thickness[0.005]}]

0 .0 0

0 .0 5

0 .1 0

0 .1 5

0 .2 0

0 .2 5

6 .8 0

6 .8 5

6 .9 0

6 .9 5

7 .0 0

t

x

1



t

a1=2;
a2=3;
b1=2;
b2=4;

background image

Wynik badania oscylatora ze 

sterowaniem schodkowym  i 

trygonometrycznym.

Show[s11,s22,s33,s44,s55,s66,s77,s88,tra11,PlotRange->All]

 5

5

 1 .0

 0 .5

0 .5

1 .0

 

Show[s11,s33,s55,s77,tra11,PlotRange->All]

 6

 4

 2

2

4

6

 1 .0

 0 .5

0 .5

1 .0

background image

Zmiana dyskretyzacji 

sterowania.

Stan początkowy:

 

Generowanie sterowania w bazie schodkowej i trygonometrycznej

background image
background image

Zmiana liczby punktów dyskretyzacji 

sterowania schodkowego

ku=300;
uu={Flatten[{Table[-1,{i,1,5}],Table[1,{i,6,69}],
Table[1,{i,70,133}],Table[1,{i,134,194}],
Table[-1,{i,195,235}],Table[0,{i,236,300}]}],Table[0,{i,1,300}]}
soluu[uu_]:=Thread[{u[1]>Interpolation[Join[{{0,uu[[1,ku]]}},
Table[{k*delta, uu[[1,k]]},{k,1,ku}]],InterpolationOrder->0],
u[2][t] >Sum[uu[[2,k]]*Cos[2*Pi*(k-1)*t]+
Uu[[2,k+ku/2]]*Sin[2*Pi*(k-1)*t],{k,1,ku/2}]}];

Zmiana dlugości przedziału czasowego sterowania

solxx[uu_,x0_]:=Module[{rozuu},rozuu=soluu[uu];
Flatten[NDSolve[Join[Table[x[i]'[t]==ff[t][[i]]/.rozuu,{i,1,n}],
Table[x[i][0]==x0[[i]],{i,1,n}]],vx,{t,0,15},MaxSteps->Infinity]]];

background image

0

2

4

6

8

1 0

1 2

 4

 2

0

2

4

6

t

x

1



t

Po zmianie parametrów

3 .0

3 .2

3 .4

3 .6

3 .8

4 .0

 5 .0

 4 .8

 4 .6

 4 .4

 4 .2

 4 .0

 3 .8

 3 .6

t

x

1



t

background image

0

2

4

6

8

1 0

1 2

 6

 4

 2

0

2

4

t

x

2



t

background image

Wynik badania zmiany liczby 

punktów dyskretyzacji sterowania 

schodkowego.

background image

WNIOSKI

Aby 

określić 

dokładną 

wartość 

minimalnego 

czasu 

sprowadzania  oscylatora  do  położenia  równowagi  musimy 
zwiększyć  tzw.  dokładność  dyskretyzacji,  za  którą  w  temacie 
zadania odpowiedzialne są parametry k i delta.

Zmniejszenie  zarówno  wartości  k  -  odpowiadającej  za  ilość 
punktów  dyskretyzacji  czasu,  jak  i  d  -  będącej  krokiem 
dyskretyzacji  czasu  wpływa  niekorzystnie  na  wyszukiwanie 
wartości  minimalnego  czasu  sprowadzania  oscylatora  do 
położenia  równowagi,  gdyż  zakres  błędu,  bądź  jak  kto  woli 
ilość przeprowadzonych prób dyskretyzacji jest zbyt mała.

Zmieniając  wartość  stanu  początkowego  x0

 

i  przyjmując 

znacząco mniejszą wartość zarówno k jak i delty otrzymujemy 
wykres,  którego  stan  jest  daleki  od  określenia  minimalnego 
czasu sprowadzania oscylatora do położenia równowagi.


Document Outline