STANY NIEUSTALONE W OBWODACH ELEKTRYCZNYCH I

Transkrypt

STANY NIEUSTALONE W OBWODACH ELEKTRYCZNYCH I
STANY NIEUSTALONE W OBWODACH ELEKTRYCZNYCH
I. Wprowadzenie do ćwiczenia
1. Rozwiązywanie równań różniczkowych zwyczajnych
Dowolne równanie różniczkowe zwyczajne rzędu n
d (n) y
dy
d ( n −1) y
= f (t , y, ,..., ( n −1) )
(1)
dt
dt ( n )
dt
z warunkami początkowymi:
d ( n −1) y
dy
y (t 0 ) = y 0 ,
(t 0 ) = y 01 , …,
(t 0 ) = y 0( n −1)
(2)
dt
dt ( n−1)
można, za pomocą metody zmiennych stanu, przedstawić jako układ n równań
różniczkowych rzędu pierwszego. Najczęściej dobiera się je tak, aby każda kolejna zmienna
{y1,y2, …,yn} była pochodną po czasie poprzedniej:
 y1 = y

 y 2 = dy1
dt


dy 2
(3)
 y3 =
dt

....

( n −1)
y
 y = dy n−1 = d
n
(
n
−
1
)

dt
dt
Równanie (3) można zapisać w postaci:
 dy1
= y2

 dt
 dy 2
 dt = y 3

(4)
....
 d ( n −1) y

= yn
 dt ( n −1)
 d (n) y
 ( n ) = f (t , y1 , y 2 ,..., y n )
 dt
Równanie (4) można zapisać w postaci wektorowej:

 y1   y 2

y  y
d  2  3

(5)
=

dt ...  ...

  
 y n   f (t , y1, y 2 ,..., y n )
z wektorem warunków początkowych:

 y (t 0 )   y 0

 y (t )   y
 1 0  =  01 
(6)

...
 ...


 
 y n −1 (t 0 )  y 0( n−1) 
2. Rozwiązywanie układów równań różniczkowych zwyczajnych w MATLABie.
Rozwiązywanie układu równań różniczkowych zwyczajnych realizują w MATLABie funkcje
ODE (ordinary differential equations). W zależności od zastosowanego algorytmu
numerycznego rozróżnia się funkcje: ode45 i ode23 (metody Rungego-Kutty), ode113
(metoda Adamsa), ode15s (metoda Geara), itd.
Sposób wywołania każdej funkcji ODE jest jednakowy:
[t, y]=funkcja_ODE( plik_ODE, przedział czasu, warunek początkowy).
gdzie: plik_ODE nazwa m-pliku z definicją wybranego układu równań różniczkowych,
przedział czasu – wektor określający czas początkowy i końcowy [to tk],
warunek początkowy – wektor określający warunki początkowe funkcji i jej (n-1)
pochodnych.
Przykład 1
Równanie różniczkowe opisujące ruch masy m zawieszonej na idealnej sprężynie o
współczynniku sprężystości k ma postać:
d2y
m 2 + ky = 0
dt
dy
Wyznaczyć przebieg y(t) (czyli rozwiązać równanie różniczkowe) dla y0=1,
( 0) = 0 w
dt
czasie od 0 do 10s. Do obliczeń przyjąć m=1; k=1.
Rozwiązanie:
Zgodnie z (1) równanie to można przedstawić w postaci:
d2y
= −y .
dt 2
Wprowadzając zmienne stanu y1, y2 zgodnie z (3) otrzymujemy:
 y1 = y

dy1 ,

y
=
 2
dt
czyli zgodnie z (4)
 dy1
 dt = y 2
,

 dy 2 = − y
1
 dt
co w postaci wektorowej zgodnie z (5) można zapisać następująco:
d  y1   y 2 
.
=
dt  y 2  − y1 
Wektor wartości początkowych zgodnie z 6:
 y (t 0 )  1 

 =  .
 y1 (t 0 ) 0
Uzyskany układ równań można zapisać w m-pliku wahadlo.m na trzy sposoby:
- pierwszy
function wah = wahadlo(t,y)
wah=[y(2); -y(1)];
- drugi
function wah=wahadlo(t,y);
wah=zeros(2,1);
wah(1)=y(2);
wah(2)=-y(1);
- trzeci
Korzystając z równania stanu
d
x = Ax + Bu , dla u=0 otrzymujemy w naszym przykładzie:
dt
...0..1 
y 
oraz x =  1  . Wobec tego m-plik funkcyjny ma postać:
A=

− 1...0
 y2 
function wah=wahadlo(t,y)
A=[0 1; -1 0];
wah=A*y;
Rozwiązanie równania różniczkowego uzyskujemy wywołując funkcję ODE w przestrzeni
roboczej MATLABa:
<< [t,y]=ode45(‘wahadlo’,[0 10],[1;0]);
Aby narysować przebieg y(t) należy podać polecenie:
<< plot(t,y(:,1));
Wywołanie funkcji ode i wykres y(t) można zrealizować jednocześnie w m-pliku
np.: wyk_wah.m
[t,y]=ode45(‘wahadlo’,[0 10],[1;0]);
plot(t,y(:,1));
grid;
xlabel(‘t [s]’);
ylabel(‘y’);
Realizacja tego zagadnienia przedstawiona jest na rys. 1.
1
0.8
0.6
0.4
y
0.2
0
-0.2
-0.4
-0.6
-0.8
-1
0
1
2
3
4
5
t[s]
6
7
8
9
10
Rys. 1. Ruch masy zawieszonej na idealnej sprężynie (położenie początkowe y0=1)
II. Opis zadania laboratoryjnego
W obwodzie przedstawionym na rys.2 w chwili t=0 zamknięto wyłącznik. Wyznaczyć
przebieg prądu płynącego przez cewkę i napięcia na kondensatorze jeżeli e(t) = Emsinωt.
Przeprowadzić analizę stanu nieustalonego.
R1
t=0
R2
e(t)
C
L
Rys. 2. Schemat układu RLC
Rozpatrywany układ opisany jest za pomocą następujących równań:
e(t ) = iR1 + u c
di1
= uc
dt
i = i1 + i2
du
i2 = C c
dt
i1 R2 + L
Po przekształceniach otrzymujemy:
d
- postać równań stanu
x = Ax + Bu
dt
 R2 1 
−
...
0 
i
d  1   L L  i1  
   + 1  e(t ) ,
u  =  1

1  u c  
dt  c  
− .. −
CR

 1 
 C
CR1 
- drugiego stopnia równanie różniczkowe względem Uc
d 2uc
du
de
+ a1 c + a0 u c = b1
+ b0 e
2
dt
dt
dt
R
RR C+L
R + R2
L
gdzie: a1 = 1 2
; a0 = 1
; b1 =
; b0 = 2 .
L
R1CL
R1CL
R1CL
Przebieg ćwiczenia
Należy napisać m-plik funkcyjny pozwalający rozwiązać układ równań różniczkowych.
Można wybrać dowolny sposób opisu funkcyjnego omawianego układu. Należy pamiętać, że
nazwa m-pliku musi być taka sama jaka nazwa funkcji. W pliku wykonawczym należ y
zastosować procedurę ode45. Pliki należy zapisać w utworzonym, innym dla każdego
studenta, katalogu.
Dla parametrów obwodu, podanych przez prowadzącego, należy przeprowadzić:
- analizę stanu nieustalonego układu,
- analizę układu przy różnych wartościach pulsacji ω sygnału wymuszającego,
- analizę dla różnych parametrów: R, L, C.
W sprawozdaniu należy przedstawić między innymi:
-
najważniejszą część skryptu m-pliku funkcyjnego, w której zamodelowano analizowany
obwód elektryczny,
wykresy przebiegów napięcia na kondensatorze i prądu płynącego przez cewkę (dla
wybranych przypadków),
wnioski końcowe z przeprowadzonego ćwiczenia.

Podobne dokumenty