You are on page 1of 18

Elektrini strojevi LV 1

2015. / 2016.

SVEUILITE JOSIPA JURJA STROSSMAYERA U OSIJEKU


ELEKTROTEHNIKI FAKULTET

Sveuilini studij

LV1:
Uvod u MATLAB;
MATLAB - Simulink:Modeliranje i simulacija 1

Osijek, 9.11. 2015.

Laboratorijske vjebe iz Elektrinih strojeva,

1.poljari
UVOD
; 2008/2009.

Z. Valter / K. Mikloevi / .

Izvjee se sastoji od dva dijela, odnosno dvije vjebe.


Prvi dio tie se uvoda u Matlab program, a cilj je upoznavanje s osnovnim operacijama
programskog sustava Matlab. To podrazumjeva: definiranje varijabli ( skalara, vektora, matrica ), te
aritmetike operacije nad ti mvarijablama. Upoznat emo se i sa osnovama prikazivanja grafikog rezultata.
Drugi dio, odnosno druga vjeba je upoznavanje sa osnovama modeliranja i simuliranja u MatlabSimulinku.

2.

UVOD U MATLAB

Osnova Matlab-a je pojam matrice, o emu govori i samo ime Matlab - MATrix LABoratory.
Matrica je jednostavan matematiki objekt, pravokutna tablica brojeva, koja se prirodno javlja u
najrazliitijim podrujima i situacijama, dok jezgru Matlaba ini skup funkcija za jednostavno, prirodno i
efikasno manipuliranje matricama.
Upravo iz tog razloga Matlab se sve vie iri i u specijalizirana podruja.

2.1.

Matlab - radni prostor

Rad u Matlab u odvija se putem radnog prozora, a unutar radnog prostora. Radni prozor slui za
unos naredbi, te ispis rezultata i najvaniji je dio korisnikog suelja. Radni prostor zamiljamo kao dio
radne memorije dodijeljen Matlabu prilikom pokretanja, koji sadri korisnikove varijable.

Slika 1. Radni prostor Matlab-a


Osnovni prozor Matlaba sadri i zbornik, redak s alatima ( toolbar ) i pet moguih pod prozora.
Odgovarajui prozor aktivira se u izborniku View.

Laboratori
jebe iz osnovnu
Elektrini
h strojev
a, Workspace
Z. Val
/ K.koji
Mikl
oevi /
. u
Launchjske
Pad vprikazuje
strukturu
Matlaba.
je ter
prozor
omoguuje
uvid
poljari; 2008/2009.
memorijski prostor, odnosno u tekui direktorij. Pod prozor Command History sadri popis svih do sada
upotrebljenih naredbi. U Command Window se upisuju naredbe Matlaba iz kojih se dobivaju numeriki
rezultati. Redak teksta upuuje na Help , odnosno pomo koju korisnik moe zatraiti od programa. Znak
>> predstavlja prompt Matlaba. Oznaava da je Matlab spreman za prihvat naredbi od korisnika. Iza
prompta mogue je upisivati naredbe Matlaba, pokretati funkcije i izvravati matematike operacije.

2.2. MATLAB - struktura i varijable


MATLAB koristi slijedee elementarne operacije i funkcije: aritmetike, logike i operacije
izmjene podataka te matematike i grafike funkcije. One se izvode na objektima odreenog tipa podataka,
a to su matrice. Iz tog se razloga matricama ovdje pridodaje naziv MATLAB varijable. One mogu
sadravati realne i kompleksne brojeve te ASCII znakove. Funkcije rade nad varijablama koje se trenutno
nalaze u radnom prostoru ili kreiraju nove varijable. Po izvrenju funkcije sve varijable ostaju u radnom
prostoru i moe ih se pregledati, crtati, te dalje koristiti.
Cjelokupni rad s Matlabom zasniva se na radu s varijablama. Na definirane ulazne varijable
primjenjuju se matematike operacije i funkcije, a kao rezultat dobiju se izlazne varijable. Varijabla se
definira i unosi u komandni prozor preko tipkovnice uz slobodni izbor njenog naziva, kao na primjer:
x = 7.25
x=
7.2500

Format ispisa rezultata ostvaruje se preko podeavanja odgovarajue postavke iz menija


File/Preferences/Command Window/numeric format; ili iz komandnog prozora naredbom format. Temeljni
je format short koji ispisuje 4 znaajna decimalna mjesta. To se moe promijeniti odabirom opcije long ili
naredbom format long.
U nastavku je prikazano nekoliko tipinih primjera unosa varijabli:
vektor = [4 2 -3]
vektor =
4 2 -3

uz odgovor:

matrica = [3 1+2*i 7; 4 0 -5]


uz odgovor:
matrica =
3.0000
4.0000

1.0000 + 2.0000i
0

7.0000
-5.0000

jednostupcanamatrica = [3; 5; 7; 1-3i] uz odgovor


jednostupcanamatrica = 3.0000 5.0000 7.0000
1.0000 - 3.0000i
2

Laboratorijske vjebe iz Elektrinih strojeva,


poljari; 2008/2009.

Z. Valter / K. Mikloevi / .

[2, -4, 5; -8, 3, -2]uz odgovor


ans =
2

-4 5

-8

-2

Potrebno je razlikovati uporabu velikih i malih slova.

2.3. Matlab - grafike funkcije


Osim matrinog koncepta, druga uporina toka Matlab-a je izvrstan grafiki podsustav. Interne
grafike funkcije koje su odmah dostupne omoguavaju relativno lako crtanje slikovnih prikaza. S druge
pak strane mogue je detaljno upravljanje svim aspektima prikaza kao to su veliina i poloaj slike na
papiru, poloaj oznaavanja osi itd.
Za dvodimenzionalni prikaz potrebna su dva vektora iste duljine, a za trodimenzionalni tri. Kad se
eli istovremeni prikaz zavisnosti vie funkcija o jednoj varijabli, onda je varijabla vektor a funkcije se
prikazuju matricom. Uz to se linije grafa mogu prikazati na razliite naine.
Najvaniju funkciju ima nalog plot, a unosom naloga help plot dobivaju se sve potrebne
informacije o ovojfunkciji.
U svrhu grafikog prikaza neka se varijabla x moe, kao vektor odnosno jednoredna matrica,
definirati i unijeti i na slijedei nain
t=(0:2:10)
t=
0 2 4 6 8 10
gdje je t vremenski vektor, prva znamenka u zagradi oznauje prvu vrijednost varijable, srednja razmak
pojedinanih vrijednosti a zadnja konanu vrijednost. One su meusobno odvojene dvotokom. Zada li se
ta varijabla na slijedei nain:
t=(0:2:10);
nalog se ne izvrava odmah, nego tek iza naloga koji ne sadri toku - zarez, to je za izvoenje simulacija
veoma bitno. elimo li prikazati graf sin t, onda unos naloga ima izgled
t=(0:2:10);
s=sin(t);
plot(t,s)
3

Laboratorijske vjebe iz Elektrinih strojeva,


nakon
se otvara
polega
jari;
2008/prozor
2009.s grafom kao u slici 2.

Z. Valter / K. Mikloevi / .

Slika 2. Prikaz grafa


Ovakav malo udan izgled grafa pojavljuje se onda, ako su vrijednost na apscisi meusobno dosta
razmaknute. Numerike oznake u osima se pojavljuju automatski, a pomone linije, oznaavanje osi i naziv
grafa moraju se unijeti dodatnim nalozima.

U iduem primjeru treba za vremenski vektor t=(0:0.01:2) izraunati i prikazati u jednom


dijagramu graf sinusa amplitude 1 i frekvencije 5 Hz, graf kosinusa amplitude 2 i frekvencije 3 Hzte graf
eksponencijalne funkcije e-2t.
t=(0:0.01:2);
sinfkt=sin(2*pi*5*t);
cosfkt=2*cos(2*pi*3*t);
expfkt=exp(-2*t);
plot(t ,[sinfkt ; cosfkt ; expfkt])

Laboratorijske vjebe iz Elektrinih strojeva,


poljari; 2008/2009.

Z. Valter / K. Mikloevi / .

Slika 3. Graf sinusa, kosinusa i eksponencijalne funkcije

Na sljedee dvije slike prikazani su dijagrami sa opisima. Za opise slue nalozi xlabel, ylabel i title,
za mreu pomonih linija nalog grid, a za poveanje isjeka nalozi zoom i axis.

Slika 4. Prikaz grafa sa nalozima xlabel, ylabel i title

Laboratorijske vjebe iz Elektrinih strojeva,


poljari; 2008/2009.

Z. Valter / K. Mikloevi / .

Slika 6. Prikaz grafa sa nalozima xlabel, ylabel i title

2.4. Parametriranje dijagrama


Dijagrami definirani nalozima u radnoj povrini mogu se dodatno doraditi. Za primjer uzmimo ve
prikazani dijagram kosinusnog napona frekvencije 1 Hz, prethodno ga prikaimo na jedan drugi nain i
zatim doradimo. Prikaimo ga u obliku tipinom za diskretne signale, koritenjem naloga stem.

t=(0:0.05:2);
cosfkt=2*cos(2*pi*t);
stem(t,cosfkt)
Dobiveni dijagram se, isto kao i oni ranije, pojavljuje u Matlab grafikom prozoru (slika dolje lijevo). U
slici se vidi traka s nalozima koji omoguavaju grafiku doradu dijagrama, a ispod nje i traka sa simbolima
od kojih je posebno zanimljiv zadnji desno koji omoguuje rotaciju trodimenzionalnih dijagrama.
Doradimo prikazani dijagram.

Laboratorijske vjebe iz Elektrinih strojeva,


poljari; 2008/2009.

Z. Valter / K. Mikloevi / .

Slika 7. Dijagram prikazan u obliku tipinom za diskretne signale

Slika 8. Doraeni dijagram diskretnog signala

Naredbom subplot mogue je na jednom grafikom prozoru napraviti vie dijagrama.


7

Laboratorijske vjebe iz Elektrinih strojeva,


Pogledajmo jedan primjer:
poljari; 2008/2009.

Z. Valter / K. Mikloevi / .

t=(0:0.01:2);
cosfkt=2*cos(2*pi*3*t);
expfkt=exp(-2*t);
subplot(211)
plot(t,expfkt)
subplot(212)
plot(t,cosfkt)

% ucrtati lijevi
graf
% ucrtati desni
graf

Slika 9. Dva dijagrama prikazana na istom grafikom prozoru

Poloaj osi drugog grafa usklauje se s poloajem osi prvog preko naloga subplot, a za prikaz obaju
grafova odgovoran je nalog plot.
Parametri naloga subplot kau koliko grafova odnosno polja okomito sadri prikaz (prva znamenka
u nalogu) i koliko vodoravno (druga znamenka). Trea znamenka kae koliko grafova je predvieno,
brojei od lijevo gore prema desno dolje. Primjerice nalog subplot (325)znai da se radi o petom grafu
smjetenom u prikazu s poljima 3x2. Pogledajmo jedan primjer u kojem treba u jednoj slici prikazati etiri
grafa, dva gore i dva dolje.

Laboratorijske vjebe iz Elektrinih strojeva,


poljari; 2008/2009.

Z. Valter / K. Mikloevi / .

Slika 10. Prikaz etiri grafa na istom grafikom prozoru

Druga je mogunost samo okomiti prikaz grafova, jedan ispod drugog. U tu svrhu slui nalog hold.

Laboratorijske vjebe iz Elektrinih strojeva,


poljari; 2008/2009.

3.

Z. Valter / K. Mikloevi / .

MATLAB - Simulink: Modeliranje i simulacija 1

3.1. to je MATLAB - Simulink


Simulink je programski alat razvijen u Matlab grafikom okruju koji omoguuje modeliranje,
simulaciju i analizu raznih kontinuiranih i diskretnih dinamikih sustava. Za razliku od Matlaba oblik
opisivanja sustava nije tekstualan nego grafiki. Promatrani sustav razlae se u pojedinane blokove
koji se zatim povezuje tokovima signala u jednu funkcionalnu cjelinu. U sutini predstavlja
numeriki rjeava diferencijalni jednadbi.

Slika 11. Primjer Simulink modela

3.2. Konstruiranje jednostavnog simulacijskog blok dijagrama


elimo li pomou blokovske biblioteke konstruirati vlastiti simulacijski sustav, moramo najprije
otvoriti Simulink prozor nalogom File/New/Model.
Primjer
Otvorimo blok Sources, pronaimo u njegovom sadraju blok Sine Wave, prevuemo ga klikom
mia u prozor Simulinka i pozicioniramo. Promijenit emo mu ime u Izvor signala.
Sljedeim blokom elimo dobiveni signal integrirati, to radimo tako da u osnovnom bloku
Continuous naemo blok Integrator. Zatim spojimo dva bloka i dobijemo prikaz kao na slici 12.
1
0

Laboratorijske vjebe iz Elektrinih strojeva,


poljari; 2008/2009.

Z. Valter / K. Mikloevi / .

Slika 12. Primjer sinusnog signala i integratora

U iduem koraku dodajemo blok Mux, iz bloka Signals&Systems. Blok Mux je viepolni prekida
ili multiplekser, ija je zadaa povezivanje vie signala u jedan vektorski signal. Zatim u biblioteci
izaberemo blok Scope. Konaan prikaz dan je na slici 13.
Prije simulacije, potrebno je podesiti parametre blokova, kao i parametre simulacije ( npr. vrijeme
trajanja, postupak numerikog rjeavanja itd).

Slika 13. Konaan izgled blokovskog prikaza

1
1

Laboratorijske vjebe iz Elektrinih strojeva,


poljari; 2008/2009.

Z. Valter / K. Mikloevi / .

Slika 14. Parametri Izvora signala

Simulacijski parametri podeavaju se nalogom Simulation/Simulation parameters u traci s


nalozima. Aktiviranjem naloga otvara se prozor kao na slici.
U obzir dolaze nalozi upravljanja sa i bez promjene duljine koraka, a utvruju se izborom Variablestep ili Fixed-step. Izborom naloga Variable-step, duljina koraka numerikog postupka rjeavanja
diferencijalne jednadbe mijenjala bi se s dinamikim ponaanjem rjeenja. Izborom naloga Fixed-step
smanjio bi se opseg unosa predvienih parametara.
Odabire se nalog Fixed-step, postupak ode3, a parametar Fixed step size na 0.01. Nakon toga, sve
je spremno za izvoenje simulacije, koja se pokree nalogom Simulation/Start u traci sa nalozima, ili
klikom na simbol trokuta u traci sa simbolima.
Rezultat simulacije prikazan je u bloku Scope, otvara se dvostrukim klikom na taj blok. Izgled
signala prikazan je na slici 14.

1
2

Laboratorijske vjebe iz Elektrinih strojeva,


poljari; 2008/2009.

Z. Valter / K. Mikloevi / .

Slika 14. Signal nakon provedene simulacije

Budui da smo signale u bloku Scope pohranili i u Matlabu, dijagram se moe pogledati i tamo.
Naredbom whos ispisuje se sadraj Workspace-a.
>> whos
Name

Size

Vjezba1_signali

1001x3

Bytes Class

24024 double

cosfkt

1x201

1608 double

expfkt

1x201

1608 double

expfkt1

1x201

1608 double

expfkt2

1x201

1608 double

1x6

sinfkt

1x201

1x201

tout

1000x1

Attributes

48 double
1608 double
1608 double
8000 double

Naredbom >> Vjezba1_signali pozivamo izraun vrijednosti signala, no to nas ne zanima.


Piemo sljedee:
>> plot(Vjezba1_signali(:,1),[Vjezba1_signali(:,2),Vjezba1_signali(:,3)])
>> grid
1
3

jske
vjebevjebe1
iz Elektri
nih strojeva,
>>Laboratori
title('Rezultat
simulacije
s ode3')
poljari; 2008/2009.
>> xlabel('Vrijeme/s')

Z. Valter / K. Mikloevi / .

>> ylabel('Vrijednosti funkcija')


Dijagram koji se dobije prikazan je na slici 15.

Slika 15. Dijagram dobiven u Matlabu preko podataka iz Simulinka

Budui da Simulink sustavi mogu sadravati puno blokova i biti nepregledni, nudi se mogunost
grupiranja vie blokova u jedan blok ( ti blokovi onda ine podsustav).
Prva mogunost je primjena Fcn bloka koja omoguuje sprezanje cijelih jednadbi u jednu cjelinu
tako da se ne moraju unositi pojedinani koraci ili pojedinani blokovi nie razine, ve se u prostor za
parametriranje upisuje ili cjelokupna jednadba ili naziv m-datoteke s jednadbama pisanim u Matlabu.
Blok Fcn nalazi se u grupi User-Defined Functions, a spomenuta jednadba ili naziv upisuje se u prozoru
za parametriranje pod Expression.
Kod sloenijih sluajeva rjeenje je vlastito definiranje blokova koji se daju povezati u jednu
cjelinu.

Drei tipku Shift kliknemo na dva bloka u sredini; kad smo ih odabrali, kliknemo na nalog
Edit/Create Subsystem u traci sa nalozima. Dobili smo jedan podsustav koji ima jedan ulaz i jedan izlaz.

1
4

Laboratorijske vjebe iz Elektrinih strojeva,


poljari; 2008/2009.

Z. Valter / K. Mikloevi / .

Slika 16. Pojednostavljeni blok prikaz

Dvostrukim klikom na blok Subsystem otvara se prozor u kojem moemo vidjeti njegov sadraj.

Slika 17. Detaljan prikaz bloka Subsystem

3.3. Prikazivanje karakteristika


esto se javlja potreba za prikazivanjem funkcionalnih ovisnosti meu diskretno izmjerenim
parametrima koje se ne daju izraziti jednadbom. Ove se ovisnosti u Simulinku daju grafiki prikazati u
pomou blokova Look-Up Table i Look-Up Table (2-D) u bibiloteci Functions&Tables.
U cilju definiranja jedne karakteristike moraju se zadati dva jednako duga vektora, vektor ulaznih i
vektor izlaznih vrijednosti. Ako jedna ulazna vrijednost nije sadrana u ulaznom vektoru, ona e biti
linearno interpolirana ili ekstrapolirana.
Odaberimo ovisnost I=f(U) jednog PTC otpornika, iji su parovi izmjerenih vrijednosti svrstani u
donju tablicu:
U/V
I/mA

0
0

4
100

5
7
10
20
30
103
100
79
55
42
Tablica 1. U/I ovisnost PTC otpornika

50
25

70
18

100
10

Za bolji grafiki prikaz primjenit emo nalog interp1, koji interpolira vrijednosti u razmacima od
0.1V; Izgled i redosljed naloga u Matlab-u je sljedei:

1
5

Laboratorijske vjebe iz Elektrinih strojeva,


poljari; 2008/2009.

Z. Valter / K. Mikloevi / .

Na slici ispod prikazana je krivulja ovisnosti PTC otpornika.

Slika 18. Krivulja U/I ovisnosti PTC otpornika

4.

ZAKLJUAK

U ove dvije vjebe dane su nekakve osnove Matlaba i Simulinka. Ponovili smo unos vektora,
brojanih vrijednosti, pisanje matrica, plotanje signala, ureivanje grafova dobivenih u matlabu, kao i
jednostavne blok sheme u Simulinku.
Nisam uspio obaviti unos karakteristike u Simulnk putem Look-Up Table bloka,dok je ostatak
vjebe uspjeno odraen.

1
6

You might also like