10
Tutoriál 3 –prednáška 3 Modelovanie fyzikálnych systémov popísaných lineárnymi diferenciálnymi rovnicami v prostredí MATLAB - Aplikácie na lineárnych dynamických systémoch - Nabíjanie kondenzátora - Vybíjanie kondenzátora - Vozík s tlmičom a pružinou 1. Lineárne diferenciálne rovnice Lineárne diferenciálne rovnice je možno riešiť niekoľkými spôsobmi napríklad v čase alebo pomocou Laplaceovej transformácie. Pre numerické riešenie systému DR pomocou metódy Runge – Kutta 2. rádu rieši funkcia , metódu Runge – Kutta 4.rádu využíva funkcia . PRÍKLAD 1 Vypočítajte a znázornite prúd a napätie RLC obvodu s parametrami , po pripojení na napätie . Systém je popísaný rovnicou: (1) Počiatočné podmienky riešenia: (2) prúd pretekajúci obvodom je vyjadrený rovnicou: (3) Úprava integrálu v rovnici (1), pričom získame výslednú diferenciálnu rovnicu popisujúcu nabíjanie kondenzátora: V prípade, že RLC obvod je pripojený na jednosmerné napätie pri nulových počiatočných podmienkach, potom stavové veličiny volíme Substitúcia Systém dvoch DR 1.rádu: (4) Poznámka UDC i(t) R C L Obr 1. Navíjanie kondenzátora cez technickú cievku

Modelovanie fyzikálnych systémov popísaných lineárnymi ...matlab.fei.tuke.sk/ss/doc/tutorialy/prednasky/T3... · Tutoriál 3 –prednáška 3 0 2 4 6 8 10 12 14 16 18 20-2-1

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Modelovanie fyzikálnych systémov popísaných lineárnymi ...matlab.fei.tuke.sk/ss/doc/tutorialy/prednasky/T3... · Tutoriál 3 –prednáška 3 0 2 4 6 8 10 12 14 16 18 20-2-1

Tutoriál 3 –prednáška 3

Modelovanie fyzikálnych systémov popísaných

lineárnymi diferenciálnymi rovnicami v prostredí

MATLAB

- Aplikácie na lineárnych dynamických systémoch

- Nabíjanie kondenzátora

- Vybíjanie kondenzátora

- Vozík s tlmičom a pružinou

1. Lineárne diferenciálne rovnice

Lineárne diferenciálne rovnice je možno riešiť niekoľkými spôsobmi napríklad v čase alebo

pomocou Laplaceovej transformácie.

Pre numerické riešenie systému DR pomocou metódy Runge – Kutta 2. rádu rieši funkcia

, metódu Runge – Kutta 4.rádu využíva funkcia .

PRÍKLAD 1

Vypočítajte a znázornite prúd a napätie RLC obvodu s parametrami ,

po pripojení na napätie .

Systém je popísaný rovnicou:

(1)

Počiatočné podmienky riešenia:

(2)

prúd pretekajúci obvodom je vyjadrený rovnicou:

(3)

Úprava integrálu v rovnici (1), pričom získame výslednú diferenciálnu rovnicu popisujúcu nabíjanie

kondenzátora:

V prípade, že RLC obvod je pripojený na jednosmerné napätie pri nulových počiatočných

podmienkach, potom stavové veličiny volíme

Substitúcia

Systém dvoch DR 1.rádu:

(4)

Poznámka

UDC

i(t)

R

C

L

Obr 1. Navíjanie kondenzátora cez technickú cievku

Page 2: Modelovanie fyzikálnych systémov popísaných lineárnymi ...matlab.fei.tuke.sk/ss/doc/tutorialy/prednasky/T3... · Tutoriál 3 –prednáška 3 0 2 4 6 8 10 12 14 16 18 20-2-1

Tutoriál 3 –prednáška 3

Riešenie v programovom prostredí MATLAB:

(5)

Page 3: Modelovanie fyzikálnych systémov popísaných lineárnymi ...matlab.fei.tuke.sk/ss/doc/tutorialy/prednasky/T3... · Tutoriál 3 –prednáška 3 0 2 4 6 8 10 12 14 16 18 20-2-1

Tutoriál 3 –prednáška 3

Ak uvádzame tol a trace potom bude mať funkcie ode45 nasledovný zápis:

PRÍKLAD 2

Vypočítajte a znázornite prúd a napätia RLC obvodu s parametrami ,

ak na kondenzátore bolo v čase napätie .

Diferenciálna rovnica 2. rádu:

Počiatočná podmienka:

stavová premenná:

Prepis do substitučného kanonického tvaru:

Riešenie v programovom prostredí MATLAB:

UDC

i(t) R

C

L

Obr 2. Vybíjanie kondenzátora cez technickú cievku

Page 4: Modelovanie fyzikálnych systémov popísaných lineárnymi ...matlab.fei.tuke.sk/ss/doc/tutorialy/prednasky/T3... · Tutoriál 3 –prednáška 3 0 2 4 6 8 10 12 14 16 18 20-2-1

Tutoriál 3 –prednáška 3

Vykresliť ‘xprim’ → xprim

[t,x]=ode23(‘xprim’,[t0,tf],x0)

PRÍKLAD 3

Mechanický systém s tlmičom a pružinou

- budiaca sila

– direktívna sila pružiny

– sila viskózneho trenia

- sila zotrvačnosti

– poloha vozíka

Zákon rovnováhy síl:

Substitúcia: ;

Prepis do kanonického tvaru:

Hodnoty pre výpočet:

m=30kg

po dosadení LDR 2.rádu s konštantnými

koeficientmi

Ft

kp Fp

kt

Fz

m y(t)

u(t)

Page 5: Modelovanie fyzikálnych systémov popísaných lineárnymi ...matlab.fei.tuke.sk/ss/doc/tutorialy/prednasky/T3... · Tutoriál 3 –prednáška 3 0 2 4 6 8 10 12 14 16 18 20-2-1

Tutoriál 3 –prednáška 3

0 2 4 6 8 10 12 14 16 18 20-0.1

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7vozík s tlmičom a pružinou

y

dy/dt

Riešenie v programovom prostredí MATLAB:

Každá funkcia v simulačnom jazyku Matlab definovaná ako m-file má svoje vlastné lokálne

premenné, ktoré sú oddelené od ostatných funkcií.

Pre počiatočné

podmienky y´(0) = 0

a y(0) = 0

Page 6: Modelovanie fyzikálnych systémov popísaných lineárnymi ...matlab.fei.tuke.sk/ss/doc/tutorialy/prednasky/T3... · Tutoriál 3 –prednáška 3 0 2 4 6 8 10 12 14 16 18 20-2-1

Tutoriál 3 –prednáška 3

0 2 4 6 8 10 12 14 16 18 20-2

-1

0

1

2

3

4

5vozík s tlmičom a pružinou

poloha

rýchlosť

Ak chceme, aby premenné bola dostupná (známa) aj mimo funkcie, musíme ju deklarovať ako

Dva vozíky v interakcií

Vozová súprava → model dynamického správania sa vozovej súpravy patrí medzi rozšírenú aplikáciu

TLMIČA A PRUŽINY PRI SPOJENÍ DVOCH HMOTNÝCH TELIES

1. Vstup do systému:

– sila pôsobiaca na vozík s hmotnosťou

Výstup zo systému:

- vzdialenosť medzi vozíkmi:

Prvá popisuje sily pôsobiace na vozík s hmotnosťou :

Druhá popisuje pôsobenie síl na vozík s hmotnosťou :

Pre počiatočné

podmienky y´(0) = 2

a y(0) = 0

y2(t)

y1(t)

m2 m1

k

b

Fext(t)

Page 7: Modelovanie fyzikálnych systémov popísaných lineárnymi ...matlab.fei.tuke.sk/ss/doc/tutorialy/prednasky/T3... · Tutoriál 3 –prednáška 3 0 2 4 6 8 10 12 14 16 18 20-2-1

Tutoriál 3 –prednáška 3

Prepis do substitučného kanonického tvaru:

Výstup je popísaný ako rozdiel vzdialenosti jednotlivých vozíkov od zvislej osi:

→ rovnica pre výstup

function xder=voziky(t,x) global m1 b k F m2

xder=[x(2); (-k/m1)*x(1)+(k/m1)*x(3)(b/m1)*x(2)+(b/m1)*x(4)+(1/m1)*F;

x(4); (k/m2)*x(1)-(k/m2)*x(3)+(b/m2)*x(2)-(b/m2)*x(4)]

return

global m1 b k F m2

m1=1000; m2=1000; b=5000; k=25000; F=1;

[t,y]=ode45('voziky',[0 2],[0 0])

plot(t,y(:,1)) grid on; title('dva vozíky v interakcii') legend('m1=1000, m2=1000, k=25000, b=5000, Fext=1')

Page 8: Modelovanie fyzikálnych systémov popísaných lineárnymi ...matlab.fei.tuke.sk/ss/doc/tutorialy/prednasky/T3... · Tutoriál 3 –prednáška 3 0 2 4 6 8 10 12 14 16 18 20-2-1

Tutoriál 3 –prednáška 3

Hydraulika – dve spojené nádoby

Uvažujeme hydraulický systém pozostávajúci z dvoch vodorovne prepojených nádob

s prítokom aj odtokom v dvojrozmernom súradnicovom systéme.

Hydrostaticky tlak v jednotlivých nádobách a potrubí je popísaný rovnicou [Pa].

Linearizovaná závislosť prietoku v prietokovej trubici z nádrže 1. do nádrže 2. Je popísaná:

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 20

0.5

1

1.5

2

2.5x 10

-5 dva vozíky v interakcii

m1=1000, m2=1000, k=25000, b=5000, Fext=1

p2(t)

q2(t)

F2

h2(t)

p3(t)

R2

q3(t)

p4(t)=0

q1(t)

F1

p1(t)

h1(t)

R1

h(t)

Page 9: Modelovanie fyzikálnych systémov popísaných lineárnymi ...matlab.fei.tuke.sk/ss/doc/tutorialy/prednasky/T3... · Tutoriál 3 –prednáška 3 0 2 4 6 8 10 12 14 16 18 20-2-1

Tutoriál 3 –prednáška 3

a linearizovaná závislosť prietoku v odtokovej trubici z nádrže 2. Je popísaná rovnicou:

Diferenciálne rovnice opisujúce dynamiku, t. j. zmenu objemu kvapaliny v každej nádobe v

závislosti od vstupného a výstupného prietoku z konkrétnej nádoby majú tvar:

Úpravou týchto rovníc získame výslednú diferenciálnu rovnicu:

Pre jej jednoduchší zápis použijeme substitúciu:

Lineárna diferenciálna rovnica popisujúca odtok z druhej nádoby:

Prepis do substitučného kanonického tvaru:

Hodnoty pre výpočet:

Počiatočné podmienky:

Page 10: Modelovanie fyzikálnych systémov popísaných lineárnymi ...matlab.fei.tuke.sk/ss/doc/tutorialy/prednasky/T3... · Tutoriál 3 –prednáška 3 0 2 4 6 8 10 12 14 16 18 20-2-1

Tutoriál 3 –prednáška 3

0 1 2 3 4 5 6 7 8

x 10-3

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1hydraulika - dve spojené nadoby

čas(t)

odto

k z

dru

hej nádoby

ro= 998, g=9.81, R1=R2=20, F1=0.25, F2=0.2

Riešenie modelu hydrauliky v prostredí MATLAB:

function xdot=hydraulika(t,x) global T1 T2 T3 q1;

xdot=[x(2); (q1-x(1)-(T1+T2+T3)*x(2))/(T1*T2)];

T1=(F1*R1)/(ro*g); T2=(F2*R2)/(ro*g); T3=(F1*R2)/(ro*g);

[t,y]=ode45('hydraulika',[t0 tfin],[pp1 pp2]);