Wprowadzenie do modelowania w Simulinku

background image

Modelowanie i Symulacja Komputerowa

M A T L A B – S i mu l i n k

Simulink

Wprowadzenie: http://me-www.colorado.edu/matlab/simulink/simulink.htm

– interaktywny pakiet przeznaczony do modelowania, symulacji, analizy dynamicznych układów ciągłych, dyskretnych,

dyskretno-ciągłych w czasie

zintegrowany z MATLAB-em (nie jest możliwe korzystanie z Simulink-a bez zainstalowania MATLAB-a)

– stosowany do projektowania i testowania urządzeń oraz systemów sterujących. Badanie układów metodami symulacyjnymi

znacznie zmniejsza koszty i czas, niezbędny do przygotowania lub modernizacji prototypów urządzeń i systemów sterowania

CEL ĆWICZEŃ LABORATORYJNYCH: zdefiniowanie modelu matematycznego rozważanego układu/procesu

dynamicznego poprzez opis za pomocą równań różniczkowych zwyczajnych, zbudowanie graficznego modelu (schematu

blokowego z wykorzystaniem bloków bibliotecznych Simulink-a), wykonanie eksperymentu symulacyjnego przy

zadanych parametrach symulacji, tworzenie graficznego interfejsu użytkownika umożliwiającego poprawne i wygodne

wprowadzanie danych oraz prezentację rezultatów obliczeń w postaci wykresów

Przykład modelowania 1

1)

Wahadło matematyczne - ciało wykonujące drgania pod wpływem siły grawitacji.

Zmienność kąta wychylenia wahadła przy uwzględnieniu oporów ośrodka,

siły grawitacji oraz działającej na nie siły wymuszającej opisuje równanie

postaci

2

2

2

sin

cos

d θ

ml

γ

mgl

θ

A

ωt

dt

dt

+

+

=

gdzie

θ ‒ kąt odchylenia wahadła od położenia w stanie równowagi

l ‒ długość wahadła
m ‒ masa wahadła
g ‒ przyspieszenie ziemskie (

2

9,80665

/

g

m s

=

)

A ‒ amplituda siły wymuszającej
ϖ ‒ częstotliwość siły wymuszającej, gdzie

2

;

2

g

π

l

ω

T

π

T

l

g

=

=

=

(ϖ jest częstością kołową drgań; T – okresem)

γ ‒ współczynnik oporu ośrodka

Z powyższego równania różniczkowego opisującego ruch wahadła wyprowadzić można następującą zależność

2

2

2

1

cos

sin

d θ

A

ωt

γ

mgl

θ

dt

dt

ml

=

Po podstawieniu za

g

ω

l

=

otrzymujemy

2

2

2

1

cos

sin

g

d θ

A

t

γ

mgl

θ

l

dt

dt

ml

=

θ

m

l

sinθ

y = l

cosθ

x = l

background image

Modelowanie i Symulacja Komputerowa

M A T L A B – S i mu l i n k

Schemat blokowy powyższego układu zbudowany w oparciu o równanie różniczkowe z wykorzystaniem bloków

bibliotecznych Simulink-a ma następującą postać:

To Workspace 3

d2theta

To Workspace2

t

To Workspace1

dtheta

To Workspace

theta

Sum

Integrator 1

1

s

Integrator

1

s

Gain 2

1/(m*(l^2))

Gain 1

gamma

Fcn1

A *cos(u*sqrt(g/l))

Fcn

m*g*l*sin(u)

Clock

Co można uczynić bardziej przejrzystym edytując teksty oraz wprowadzając odpowiednią kolorystykę

k

ą

t wychylenia

wahadła

d2theta

t

dtheta

theta

1

s

1

s

1/(m*(l^2))

gamma

A *cos(u*sqrt(g/l))

m *g*l*sin(u)

początkowe wychylenie wahadła :

początkowa prędkość wahadła :

background image

Modelowanie i Symulacja Komputerowa

M A T L A B – S i mu l i n k

Przykład modelowania 2

Rozważmy obiekt opisany za pomocą równania różniczkowego drugiego rzędu

( )

( )

( )

( )

2

2

1,5

2

2,5

d y t

dy t

y t

z t

dt

dt

+

+

=

(1)

gdzie y(t) oznacza wyjście układu (odpowiedź) na sygnał wejściowy (zadany)

z(t), przy warunkach początkowych określających stan układu w chwili

początkowej (rozpoczęcia procesu sterowania, t = 0)

( )

( )

' 0

2

0

1

y

y

= −

=

oraz zadanym sygnale wejściowym postaci

( )

(

)

2.3

sin

t

z t

t e

=

Z równania (1) należy wyznaczyć wzór na drugą pochodną

( )

( )

( )

( )

2

2

2,5

1,5

2

d y t

dy t

z t

y t

dt

dt

=

Na schemacie blokowym blok całkowania odpowiada uzyskaniu sygnałów będących pochodnymi niższego rzędu, co wynika z

odwrotności operacji całkowania względem różniczkowania, tj.

( )

( )

( )

( )

2

2

dy t

d y t

dy t

dt

y t

dt

dt

dt

dt

=

=

Schemat modelu układu w Simulinku

Sum

Scope 2

Scope 1

Scope

Integrator 1

1

s

Integrator

1

s

Gain 2

2.5

Gain 1

2

Gain

1.5

Fcn

sin(u*exp(-2.3*u))

Clock

( )

2

2

d y t

dt

( )

dy t

dt

( )

''

y t

( )

'

y t

( )

dy t

dt

( )

y t

( )

'

y t

( )

y t

Równoważnym oznaczeniem pochodnych po
czasie

( ) ( )

( ) ( )

2

2

dy t

d y t

y t

y t

dt

dt

=

=

ɺ

ɺɺ


W fizyce najczęstszą interpretacją sygnału y(t)
jest położenie obserwowanego ciała, jego
pierwsza pochodna reprezentuje prędkość, zaś
druga pochodna – przyspieszenie.

background image

Modelowanie i Symulacja Komputerowa

M A T L A B – S i mu l i n k

Warunki początkowe

( )

( )

' 0

2

0

1

y

y

= −

=

są ustawiane w integratorach w polu „initial condition”

Przebiegi widoczne na oscyloskopach (po dwukrotnym kliknięciu na dany oscyloskop i wyborze ikony ozn. lornetką)

Schemat można uczynić bardziej przejrzystym edytując teksty oraz wprowadzając odpowiednią kolorystykę

(Menu podręczne: Format, Foreground Color, Bacground Color )

2.5z(t)

y(t)

dy(t)/dt

d2y(t)/dt2

z(t)

sin(u*exp(-2.3*u))

Suma

Scope 2

Scope 1

Scope

1

s

1

s

Clock

2.5

2 y(t)

2

1.5 dy (t)/dt

1.5

background image

Modelowanie i Symulacja Komputerowa

M A T L A B – S i mu l i n k

Oscyloskopy mona zastąpić blokami To workspace (kategoria Sinks w bibliotece Simulinka) (zapis wyników pomiarów do

przestrzeni roboczej w formacie tablicowym - Array)

2.5z(t)

y(t)

dy(t)/dt

d2y(t)/dt2

z(t)

sin(u*exp(-2.3*u))

t

d2y

dy

y

Suma

1

s

1

s

Clock

2.5

2 y(t)

2

1.5 dy (t)/dt

1.5

I wówczas na podstawie zgromadzonych danych zilustrować dynamikę obiektu sterowania - położenia, prędkości oraz

przyspieszenia (y(t), dy(t)/dt, d2y(t)/dt2)

Polecenia Matlaba wprowadzane w Command window

>> plot(t,y,’red’,t,dy,’blue’,t,d2y,’green’)
>>grid on
>> title('zmiana polozenia w czasie')
>> xlabel('czas t')
>> ylabel('y(t) dy(t)/dt d2y(t)/dt2')

>> plot(y,dy,'blue')

// tak zwany portret fazowy

>> grid
>> xlabel('polozenie')
>> ylabel('predkosc')

background image

Modelowanie i Symulacja Komputerowa

M A T L A B – S i mu l i n k

Polecenia Matlaba wprowadzane w Command window
(prezentacja uzyskanych wyników obliczeń w postaci wykresów umieszczonych w jednym oknie w układzie 3x1)

>> subplot(3,1,1)
>> plot(t,y)
>> grid on
>> title('zmiana polozenia w czasie')
>> xlabel('czas t')
>> ylabel('y(t)')

>> subplot(3,1,2)
>> plot(t,dy)
>> grid on
>> title('zmiana predkosci w czasie')
>> xlabel('czas t')
>> ylabel('dy'(t)/dt')

>> subplot(3,1,3)
>> plot(t,d2y)
>> grid on
>> title('zmiana przyspieszenia w czasie')
>> xlabel('czas t')
>> ylabel('d2y(t)/dt2')

background image

Modelowanie i Symulacja Komputerowa

M A T L A B – S i mu l i n k

Ogólnie o tworzeniu podwykresów w jednym oknie wykresu

Polecenie w oknie poleceń Matlab-a

>>subplot(liczba_wierszy, liczba_kolumn, numer pola_wykresu_liczone_od_lewej_do_prawej)

stanowi odwołanie do zadanego pola wykresu w oknie, w którym utworzona została określona liczba okien równa
liczbie_wierszy x liczba_kolumn , np. subplot(2,3,1). Dopiero wówczas poleceniem >>plot(t,y) można wykonać wykres w
tym właśnie oknie

1

2

3

4

5

6


Wyszukiwarka

Podobne podstrony:
MWB 1 Wprowadzenie do modelowania wymagań w bezpieczeństwie
MWB 2 Wprowadzenie do modelowania obiektowego funkcjonowania systemów bezpieczeństwa
MWB 1 Wprowadzenie do modelowania wymagań w bezpieczeństwie
SIZ 2 Wprowadzenie do modelowania obiektowego
Wykład 1 inżynierskie Wprowadzenie do zarządzania operacyjnego
Wprowadzenie do medycyny rozwojowej 1
PD W1 Wprowadzenie do PD(2010 10 02) 1 1
Wprowadzenie do psychologii
Wprowadzenie do filozofii
(1) Wprowadzenie do nauki o finansach 1id 778 ppt
wprowadzenie do systemu win i podst sieci
wprowadzenie do psychologii społecznej
Wprowadzenie do cw1A
1 Wprowadzenie do psychologii pracy (14)id 10045 ppt
Wprowadzenie do Kryptografii
Wprowadzenie do pomocy społecznej

więcej podobnych podstron