Automatyka Laboratorium Nr 1 id 73181 (2)

background image

Laboratorium Podstaw Automatyki

1

Laboratorium nr 1

1. Cele

ć

wiczenia

zapoznanie si z metodami symbolicznego i numerycznego rozwi



zywania równa





niczkowych w

Matlabie,

wykorzystanie Simulinka do tworzenia modelu równania ró



niczkowego,

archiwizacja otrzymanych rozwi



za



2. Wprowadzenie teoretyczne

2.1.

Symboliczne rozwi



zywanie równa





niczkowych – funkcja dsolve()

Rozwi



zywanie

symboliczne

polega

na

obliczeniach

wykonywanych

na

wyra



eniach

matematycznych, a nie na liczbach (rozwi



zanie numeryczne), w wyniku czego dostajemy równie



wyra



enie matematyczne. Przy pomocy zmiennych symbolicznych oraz przy wykorzystaniu funkcji dsolve()

mo



liwe jest rozwi



zanie równania ró



niczkowego dowolnego rz du.

W rozwi



zywaniu symbolicznym równa





niczkowych najwa



niejsza jest zmienna D (du



e D), która

okre



la ró



niczk pierwszego stopnia (

dt

d

D

=

), podobnie D2 oznacza ró



niczk drugiego stopnia

(

2

2

2

dt

d

D

=

) itd. Funkcja dsolve() domy



lnie ró



niczkuje po czasie.


Za pomoc



funkcji dsolve() mo



liwe jest równie



rozwi



zywanie układu równa





niczkowych jak

i okre



lanie warunków pocz



tkowych. Kolejne równania podajemy po przecinkach, a po nich warunki

pocz



tkowe, równie



oddzielone przecinkami:

dsolve(‘rownanie1’ , ‘rownanie2’ , … , ‘warunek 1’ , ‘warunek 2’);


Przykład 1:

Rozwi



za



równanie ró



niczkowe

0

2

3

2

2

=

+

+

x

dt

dx

dt

x

d

przy war. pocz.

( )

0

0

=

x

,

2

)

0

(

=

dt

dx

wykorzystuj



c funkcj dsolve().


Rozwi



zanie: Tworzymy m-plik o nazwie rozw1.m

syms x y;

% definicja zmiennych symbolicznych ‘x’ i ‘y’

y = dsolve('D2x + 3*Dx + 2*x=0' , 'x(0)=0' , 'Dx(0)=2'); % równanie wraz z

% warunkami pocz



tkowymi

pretty(y);

% wypisanie rozwi



zania

t=0:0.01:9.99;

% definicja wektora czasu

w=subs(y);

% warto





liczbowa ‘y’ wyliczona poprzez podstawienie

% zdefiniowanego wcze



niej wektora ‘t’

plot(t,w,'r-');

% narysowanie wykresu

xlabel('czas[s]');
ylabel('amplituda sygnalu');
title('Wykres rozwiazania rownania rozniczkowego');
grid;

Rozwi



zanie równania ró



niczkowego w postaci wyra



enia matematycznego oraz wykresu otrzymujemy

wywołuj



c w oknie komend MATLABA funkcj >> rozw1

background image

Laboratorium Podstaw Automatyki

2

2.2.

Numeryczne rozwi



zywanie równa





niczkowych – funkcja ode()

MATLAB zawiera funkcje rozwi



zuj



ce zagadnienie pocz



tkowe dla równa





niczkowych

zwyczajnych za pomoc



np. par metod Rungego-Kutty rz du 2 i 3 (funkcja ode23) oraz rz du 4 i 5 (funkcja

ode45).

Funkcje te rozwi



zuj



zagadnienie pocz



tkowe dla układów równa



zwyczajnych postaci:

( )

0

0

)

(

,

,

x

t

x

x

t

F

dt

dx

=

=

Składnia funkcji:

[T, X] = ode23 (‘F(t, x)’, [t0 tk], x0, tol, tr)

[T, X] = ode45 (‘F(t, x)’, [t0 tk], x0, tol, tr)


Kolejne parametry wej



ciowe oznaczaj



:

pierwszym parametrem musi by



ła



cuch zawieraj



cy nazw zdefiniowanej przez u



ytkownika funkcji

zwracaj



cej warto



ci F(t, x),

t0, tk - granice przedziału czasu, w którym poszukiwane jest rozwi



zanie,

x0 - okre



la warunek pocz



tkowy - wektor kolumnowy zawieraj



cy warto





rozwi



zania układu w

chwili pocz



tkowej,

tol - opcjonalny parametr okre



laj



cy wymagan



dokładno





; domy



lnie: 0.001,

tr - opcjonalny parametr, który je



li ma warto







n



od zera, to powoduje wypisanie kolejnych

kroków działania metody na ekranie.


Warto



ci



omawianych funkcji jest macierz X zawieraj



ca umieszczone wierszowo wektory reprezentuj



ce

warto



ci rozwi



zania w punktach okre



lonych odpowiednimi elementami wektora kolumnowego t, który jest

jedn



z warto



ci funkcji ode23 i ode45.


Przykład 2:

Rozwi



za



równanie ró



niczkowe z przykładu 1 wykorzystuj



c funkcj ode45.


Rozwi



zanie: Do rozwi



zania zadania przy pomocy funkcji ode45 wykorzystano dwa pliki. W pierwszym z

nich (funkcja.m) zapisujemy posta



równania – jako równania stanu:

function xdot=funkcja(t,x)


% Układ rownan rozniczkowych

xdot=zeros(2,1);
xdot(1)=x(2);
xdot(2)=(-2*x(1)-3*x(2));

a w drugim (rozw2.m) wprowadzamy parametry wej



ciowe, wywołujemy funkcj ode45 i rysujemy wykres

rozwi



zania:

function rozw2


t0=0;

clc
disp('Funkcja rozwiazuje rownanie rozniczkowe zwyczajne metoda ');
disp('Rungego - Kutty i podaje jego interpretacje graficzna:');
disp(' ');disp('Postac rownania:');disp(' ');
disp(' x``+ 3•x`+ 2•x = 0');

x01=input ('Podaj wartosc x01 = ');
x02=input ('Podaj wartosc x02 = ');
tk=input ('Podaj czas symulacji tk = ');

x0=[x01 x02];

[t,x]=ode45('funkcja',t0,tk,x0,0.001,0);

background image

Laboratorium Podstaw Automatyki

3

plot(t,x(:,1),'g-');
xlabel('czas [s]');ylabel('amplituda sygnalu');
title('Wykres rozwiazania rownania rozniczkowego');
grid;


Rozwi



zanie równania ró



niczkowego, w postaci wykresu, otrzymujemy wywołuj



c w oknie komend

MATLABA funkcj >> rozw2

2.3.

Rozwi



zywanie równa





niczkowych przy pomocy pakietu Simulink


Przykład 3:

Rozwi



za



równanie ró



niczkowe z przykładu 1 wykorzystuj



c model zbudowany w Simulinku.


Rozwi



zanie: Wprowadzaj



c zmienne:

=

=

=

1

2

1

x

x

x

x

x

&

&


otrzymujemy układ równa



:

=

=

=

=

1

2

2

2

1

2

3

2

3

x

x

x

x

x

x

x

x

&

&

&

&

&


na podstawie którego tworzymy poni



szy model:


Ustalaj



c warunki pocz



tkowe na obu integratorach (Int1 i Int2) oraz dobieraj



c odpowiednie parametry

symulacji, w wyniku otrzymujemy wykres rozwi



zania:

0

2

4

6

8

10

0

0.1

0.2

0.3

0.4

0.5

czas [s]

W ykres rozwiazania równania rózniczkowego


Takie same

wykresy rozwi zania równania ró



niczkowego mo



na uzyska



w punktach 2.1 i 2.2

1/s

Int2

1/s

Int1

x(t)

+
+

Sum

-3

a1

-2

a0

x

2

&

x

2

X

1

background image

Laboratorium Podstaw Automatyki

4

Przykład 4:

Skonstruowa



w Simulinku model równania ró



niczkowego

0

)

0

(

)

0

(

pocz.

war.

dla

,

3

2

6

5

2

2

=

=

+

=

+

+

y

y

u

dt

du

y

dt

dy

dt

y

d

&

w postaci transmitancji operatorowej oraz w postaci równa



stanu i równania wyj



cia. Znale



odpowied

skokow



układu, gdy sygnałem wej



ciowym u(t) jest sygnał o amplitudzie równej jedno



ci.


Rozwi



zanie: Równaniu ró



niczkowemu (zapisanemu jako transmitancja) odpowiada schemat blokowy

przedstawiony poni



ej:

Przyjmuj



c okre



lone parametry symulacji otrzymujemy rozwi



zanie w postaci wykresu.


Równaniu ró



niczkowemu zapisanemu jako

+

=

+

=

=

2

1

2

1

2

2

1

2

3

5

6

x

x

y

u

x

x

x

x

x

&

&

odpowiada poni



szy schemat blokowy:

Ustalaj



c zerowe warunki pocz



tkowe na integratorach oraz dobieraj



c odpowiednie parametry symulacji

otrzymujemy rozwi



zanie w postaci wykresu, jak poprzednio.

2.4.

Archiwizacja uzyskanych rozwi



za



równa





niczkowych na dysku


Dla równania z przykładu 4 tworzymy poni



szy schemat blokowy:

y

u

2

b1

3

b0

-5

a1

-6

a0

Sum1

Sum

1/s

Integrator1

1/s

Integrator

y1

u1

wynik

To Workspace

Mux

Mux1

Mux

Mux

2s+3

s +5s+6

2

G(s)

Clock

y1

u1

2s+3

s +5s+6

2

G(s)

background image

Laboratorium Podstaw Automatyki

5

W przestrzeni roboczej Matlaba utworzona zostanie macierz o nazwie wynik, zawieraj



ca trzy wektory

zmiennych: czas symulacji, wymuszenie oraz odpowied skokowa układu. Aby zapisa



t



macierz na dysku

nale



y wykona



instrukcj :

>> save wynik –ascii


Poleceniem clear czy



cimy przestrze



robocz



a nast pnie wprowadzamy macierz wynik ponownie do

przestrzeni roboczej z dysku:

>> load wynik –ascii


Ponowne wykre



lenie uzyskanego rozwi



zania równania z przykładu 4 mo



na uzyska



po wpisaniu

nast puj



cych instrukcji:

>> t = wyniki(:,1) % Wektor czasu
>> u = wyniki(:,2) % Wektor wymuszenia
>> y = wyniki(:,3) % Wektor odpowiedzi
>> plot( t, u, 'r', t, y, 'g')
>> grid

3. Przebieg

ć

wiczenia

Rozwi



za



równania ró



niczkowe:

a)

1

)

0

(

,

0

)

0

(

pocz.

war.

dla

,

0

4

2

2

2

=

=

=

+

+

y

y

y

dt

dy

dt

y

d

&

b)

2

)

0

(

y

i

1

)

0

(

y

war.pocz.

dla

,

6

3

2

2

2

=

=

=

+

+

&

y

dt

dy

dt

y

d

c)

0

)

0

(

,

1

)

0

(

pocz.

war.

dla

,

0

3

2

2

=

=

=

+

+

y

y

y

dt

dy

dt

y

d

&

d)

0

)

0

(

,

3

)

0

(

pocz.

war.

dla

,

0

5

2

2

2

=

=

=

+

+

y

y

y

dt

dy

dt

y

d

&

e)

0

)

0

(

y

i

1

)

0

(

y

war.pocz.

dla

,

4

2

2

2

=

=

=

+

+

&

y

dt

dy

dt

y

d

f)

0

)

0

(

,

1

)

0

(

pocz.

war.

dla

,

0

13

4

2

2

=

=

=

+

+

y

y

y

dt

dy

dt

y

d

&

g)

1

)

0

(

,

0

)

0

(

pocz.

war.

dla

,

0

9

3

2

2

=

=

=

+

+

y

y

y

dt

dy

dt

y

d

&

wykorzystuj



c funkcj dsolve, funkcj ode45 oraz model równania przygotowany w Simulinku. Wykre



li



przebieg funkcji y(t) otrzymanej w ka



dym z trzech rozwi



za



i porówna



otrzymane wyniki na jednym

wykresie.

4. Sprawozdanie z przebiegu

ć

wiczenia

Na podstawie przeprowadzonych oblicze



nale



y przygotowa



sprawozdanie, które powinno zawiera



rozwi



zania wybranego równania ró



niczkowego z punktu 3, wykorzystuj



ce metod symboliczn



,

numeryczn



oraz model równania w Simulinku. Poda



wnioski ko



cowe.


Literatura

[1] Brzózka J., wiczenia z Automatyki w MATLABIE i SIMULINKU, Wydawnictwo Mikon, Warszawa 1997
[2] Tomera M., Wprowadzenie do MATLABA,

http://www.am.gdynia.pl/~tomera/teoria_ster.htm

, 2004

[3] Zalewski A., Cegieła R., MATLAB: obliczenia numeryczne i ich zastosowania, Wydawnictwo Nakom,

Pozna



1996


Wyszukiwarka

Podobne podstrony:
Automatyka Laboratorium Nr 3 id 73182 (2)
Podstawy Automatyki Laborator Opracowanie id 72970
Laboratorium nr 4 funkcje cd id Nieznany
sprawozdanie automaty nr 3(2), Uczelnia, Semestr 5, Automatyka, Sprawozdanie 3 Podstawy Automatyki L
Laboratorium nr 3 funkcje id 26 Nieznany
Laboratorium nr 2 tablice id 26 Nieznany
Sprawozdanie z cwiczenia nr 2moje, Szkoła, Semestr 5, Podstawy Automatyki - laboratoria, Automaty la
Laboratorium nr 6 klasy id 2617 Nieznany
Geografia nr 2 id 188772 Nieznany
5 2 3a CCNA1 Laboratorium pl id Nieznany (2)
Z2, Szkoła, Semestr 5, Podstawy Automatyki - laboratoria, Automaty lab, Automaty, Zestawy
automaty, PWr W9 Energetyka stopień inż, IV Semestr, Podstawy automatyki - laboratorium, Podsatwy au
ćwiczenia laboratoryjne nr 2
Cwiczenie nr 8 id 99953 Nieznany
BHP Laboratorium Chemiczne id 84325
Prezentacja laboratorium nr 2

więcej podobnych podstron