Rozwiązywanie równań różniczkowych z niezerowymi warunkami początkowymi, AUTOMATYKA, LABORKI

[ Pobierz całość w formacie PDF ]
Laboratorium Podstaw Automatyki
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
matematycznych, a nie na liczbach (rozwi
zanie numeryczne), w wyniku czego dostajemy równie
Rozwi
zywanie symboliczne polega na obliczeniach wykonywanych na wyra
eniach
wyra
enie matematyczne. Przy pomocy zmiennych symbolicznych oraz przy wykorzystaniu funkcji
dsolve()
W rozwi
zywaniu symbolicznym równa

niczkowych najwa
niejsza jest zmienna
D
(du
e D), która
okre
la ró
niczk
pierwszego stopnia (
D
=
d
dt
), podobnie
D2
oznacza ró
niczk
drugiego stopnia
D
2
=
d
2
(
) itd. Funkcja dsolve() domy
lnie ró
niczkuje po czasie.
dt
2
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
d
2
x
dx
dx
+
3
+
2
x
=
0
przy war. pocz.
x
( )
0
=
0
,
(
0
=
2
dt
2
dt
dt
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
t=0:0.01:9.99; % definicja wektora czasu
w=subs(y); % warto
liczbowa ‘y’ wyliczona poprzez podstawienie
Rozwi
zanie równania ró
niczkowego w postaci wyra
enia matematycznego oraz wykresu otrzymujemy
wywołuj
c w oknie komend MATLABA funkcj
>> rozw1
1
2.1.
Symboliczne rozwi
zywanie równa

niczkowych – funkcja
dsolve()
mo
liwe jest rozwi
zanie równania ró
niczkowego dowolnego rz
du.
pretty(y); % wypisanie rozwi
zania
% zdefiniowanego wcze
niej wektora ‘t’
plot(t,w,'r-');% narysowanie wykresu
xlabel('czas[s]');
ylabel('amplituda sygnalu');
title('Wykres rozwiazania rownania rozniczkowego');
grid;
Laboratorium Podstaw Automatyki
zwyczajnych za pomoc
np. par metod
Rungego-Kutty
rz
du 2 i 3 (funkcja
ode23
) oraz rz
du 4 i 5 (funkcja
MATLAB zawiera funkcje rozwi
zuj
ce zagadnienie pocz
tkowe dla równa

niczkowych
Funkcje te rozwi
zuj
zagadnienie pocz
tkowe dla układów równa
zwyczajnych postaci:
dx
=
F
( )
,
x
,
x
(
t
0
)
=
x
dt
0
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)
·
pierwszym parametrem musi by
ła
cuch zawieraj
cy nazw
zdefiniowanej przez u
ytkownika funkcji
·
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
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
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:
% 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);
2
2.2.
Numeryczne rozwi
zywanie równa

niczkowych – funkcja
ode()
ode45
).
t
Kolejne parametry wej
ciowe oznaczaj
:
zwracaj
cej warto
ci F(t, x),
·
chwili pocz
tkowej,
kroków działania metody na ekranie.
function xdot=funkcja(t,x)
Laboratorium Podstaw Automatyki
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
=
x
1
x
2
=
x
#
=
x
1
otrzymujemy układ równa
:
1
=
x
2
x
2
=
x
=
-
3
x
-
2
x
=
-
3
x
2
-
2
x
1
na podstawie którego tworzymy poni
szy model:
+
+
Sum
x
2
x
2
X
1
1/s
Int2
1/s
Int1
x(t)
-3
a1
-2
a0
Ustalaj
c warunki pocz
tkowe na obu integratorach (Int1 i Int2) oraz dobieraj
c odpowiednie parametry
W ykres rozwiazania równania rózniczkowego
0.5
0.4
0.3
0.2
0.1
0
0
2
4
6
8
10
czas [s]
Takie same
wykresy rozwi
zania równania ró
niczkowego mo
na uzyska
w punktach 2.1 i 2.2
3
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:
x
#
#
x
#
#
#
symulacji, w wyniku otrzymujemy wykres rozwi
zania:
Laboratorium Podstaw Automatyki
Przykład 4:
Skonstruowa
w Simulinku model równania ró
niczkowego
2
y
dy
du
+
5
+
6
y
=
2
+
3
u
,
dla
war.
pocz.
y
(
0
=
#
(
0
=
0
dt
2
dt
dt
w postaci transmitancji operatorowej oraz w postaci równa
stanu i równania wyj
cia. Znale
odpowied
Rozwi
zanie: Równaniu ró
niczkowemu (zapisanemu jako transmitancja) odpowiada schemat blokowy
2s+3
s +5s+6
2
u1
G(s)
y1
Przyjmuj
c okre
lone parametry symulacji otrzymujemy rozwi
zanie w postaci wykresu.
Równaniu ró
niczkowemu zapisanemu jako
x
#
=
x
1
2
x
2
=
-
6
x
1
-
5
x
2
+
u
y
=
3
x
1
+
2
x
2
odpowiada poni
szy schemat blokowy:
2
u
b1
3
Sum1
1/s
Integrator
1/s
Integrator1
b0
Sum
-5
a1
y
-6
a0
Ustalaj
c zerowe warunki pocz
tkowe na integratorach oraz dobieraj
c odpowiednie parametry symulacji
Mux
u1
Mux1
y1
2s+3
s +5s+6
2
G(s)
Clock
Mux
wynik
Mux
To Workspace
4
d
y
skokow
układu, gdy sygnałem wej
ciowym
u(t)
jest sygnał o amplitudzie równej jedno
ci.
przedstawiony poni
ej:
#
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:
Laboratorium Podstaw Automatyki
W przestrzeni roboczej Matlaba
utworzona zostanie macierz o nazwie
wynik
, zawieraj
ca trzy wektory
Poleceniem
clear
czy
cimy przestrze
robocz
a nast
pnie wprowadzamy macierz
wynik
ponownie do
>> 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:
d
2
y
dy
a)
+
2
+
4
y
=
0
dla
war.
pocz.
y
(
=
0
y
(
=
-
1
dt
2
dt
d
2
y
dy
b)
2
+
3
+
y
=
6
dla
war.pocz.
y
0
=
1
i
y
(
=
-
2
dt
2
dt
d
2
y
dy
c)
+
+
3
y
=
0
dla
war.
pocz.
y
(
0
=
1
y
(
0
=
0
dt
2
dt
d
2
y
dy
d)
+
2
+
5
y
=
0
dla
war.
pocz.
y
(
0
=
3
#
(
=
0
dt
2
dt
d
2
y
dy
e)
+
+
2
y
=
4
dla
war.pocz.
y
(
0
=
1
i
y
0
=
0
dt
2
dt
d
2
y
dy
f)
+
4
+
13
y
=
0
dla
war.
pocz.
y
(
=
1
y
#
(
0
=
0
dt
2
dt
d
2
y
dy
g)
+
3
+
9
y
=
0
dla
war.
pocz.
y
(
=
0
y
(
0
=
1
dt
2
dt
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
4. Sprawozdanie z przebiegu Ćwiczenia
rozwi
zania wybranego równania ró
niczkowego z punktu 3, wykorzystuj
ce metod
symboliczn
,
Literatura
[1] Brzózka J.,
wiczenia
z Automatyki w MATLABIE i SIMULINKU
, Wydawnictwo Mikon, Warszawa 1997
[2] Tomera M.,
Wprowadzenie do MATLABA
,
, 2004
[3] Zalewski A., Cegieła R.,
MATLAB: obliczenia numeryczne i ich zastosowania
, Wydawnictwo Nakom,
Pozna
1996
5
zmiennych: czas symulacji, wymuszenie oraz odpowied
skokowa układu. Aby zapisa
t
macierz na dysku
nale
y wykona
instrukcj
:
>> save wynik –ascii
przestrzeni roboczej z dysku:
#
#
#
y
#
#
wykresie.
Na podstawie przeprowadzonych oblicze
nale
y przygotowa
sprawozdanie, które powinno zawiera
numeryczn
oraz model równania w Simulinku. Poda
wnioski ko
cowe.
[ Pobierz całość w formacie PDF ]

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • frania1320.xlx.pl
  • Tematy