You are on page 1of 4

Postopki obdelave signalov

1. vaja – harmonični signali
Signal opisuje prostorsko/časovno spreminjanje stanja oziroma določene vrednosti, npr. temperature prostora, amplitude (jakosti) zvoka, pa tudi bolj kompleksnih, kot je npr. video. Pri digitalno obdelavi (spreminjanje, prilagajanje, izločevanje...) signalov uporabljamo številna orodja, ki so zasnovana na uporabi harmoničnih signalov. Namen vaje je spoznati nekatere osnovne lastnosti takih signalov. Splošno harmonični signal zapišemo kot: x(t ) = A ⋅ cos(ω ⋅ t + φ ) , ali x(t ) = A ⋅ sin(ω ⋅ t + φ ) . Kot vidimo, harmonični signal določajo trije parametri: A - amplituda harmoničnega signala, ω - krožna frekvenca, ki je z 'navadno' frekvenco povezana tako: ω = 2π ⋅ f , φ - faza harmoničnega signala. Navodila in krajši nasveti za delo z Matlab-om so na zadnji strani.

1.) Z uporabo Matlab-a simulirajte harmonični signal ( cos ) z naslednjimi parametri: A = 1 , f = 10 Hz , φ = 0

a) Zapišite harmonični signal kot funkcijo : b) Kolikšna je perioda harmoničnega signala : c) V Matlabu narišite ta signal in sicer tako, da bosta vidni dve periodi. Pri risanju uporabite vsaj sto točk. Skicirajte.
x(t)

t

2.) Signalu iz naloge 1.) spremenite amplitudo: A = 0,5 a) Zapišite harmonični signal kot funkcijo : b) V Matlabu narišite ta signal ter ga primerjajte s signalom iz naloge 1.). Skicirajte.
x(t)

t

3.) Signalu iz naloge 1.) spremenite frekvenco: f = 20 Hz a) Zapišite harmonični signal kot funkcijo : b) V Matlabu narišite ta signal ter ga primerjajte s signalom iz naloge 1.). Skicirajte.
x(t)

t

4.) Signalu iz naloge 1.) spremenite fazo: φ1 = − π

2

, φ2 = + π

2

a) Zapišite harmonični signal kot funkcijo (za oba primera) : b) V Matlabu narišite ta signal ter ga primerjajte s signalom iz naloge 1.). Skicirajte.
x(t)

t

c) Signal v primeru ko smo uporabili φ1 poznamo tudi kot neko drugo prav tako zelo znano funkcijo. Katero?

Matlab – navodila in nasveti za vajo
Matlab bomo pri vajah uporabili kot orodje za simulacijo. Pomembno je vedeti, da Matlab dela z diskretnimi signali. Prednosti Matlaba so v širokem naboru transformacij in vizualizaciji signalov. V nadaljevanju je predtavljenih nekaj postopkov in navodil za delo z Matlab-om, ki vam bodo v pomoč pri izvajanju vaje.
Vnašanje spremenljivk in nizov:

Spremenljivko določimo tako, da vpišemo njeno ime in ji priredimo vrednost: >> f=10 Na zavihku 'workspace' lahko vidimo spremenljivko, njeno vrednost in tip (int, double, float ...). Pozor: Matlab uporablja decimalno piko in ne decimalne vejice kot je sicer v naši navadi. Če spremenljivka predstavlja niz (ali vektor) ji vrednost priredimo na naslednji način: >> x=[3,2,1,2,3]

Če se vrednosti v nizu spreminjajo linearno (enakomerno padajo ali naraščajo), lahko niz sestavimo še hitreje: >> t=[0:0.1:2] kjer prvo število predstavlja začetno vrednost v nizu, zadnje število končno vrednost, število na sredi pa korak – za koliko se poveča/zmanjša vrednost v naslednjem koraku. Nizi so indeksirani tako, da ima prva vrednost indeks 1. Zato vrednost iz niza preberamo tako, da podamo njen indeks v nizu. Na primer, če želimo prebrati drugo vrednost, napišemo: >> x(2) Na podoben način lahko tudi spreminjamo posamezno vrednost v že obstoječem nizu: >> x(2)=5
Računske operacije

V začetku bomo potrebovali le osnovne operacije – seštevanje, odštevanje, množenje, deljenje. Bodite pozorni na to, da operacije nad nizom delujejo nad vsakim elelentom niza. Vedeti morate tudi, da Matlab množenje dveh nizov razume kot množenje vektorjev, zato je potrebno takrat, ko želimo množiti istoležne vrednosti pred operator dodati piko (pozor – pri takih operacijah morajo biti dolžine nizov enake). >> x+10 >> x-10 >> t.*t >> x/2
Risanje grafov

Osnovna funkcija za risanje grafov v Matlab-u je plot(...). Ima več načinov uporabe, odvisno od tega, kaj želimo doseči. >> plot(x) Izriše niz x, kjer so na vodoravni osi podani indeksi vrednosti iz niza x. Od leve proti desni se izrisuje črta, ki povezuje vrednosti podane v nizu. >> plot(t.*t, t) Izriše niz t.*t, kjer so na vodoravni osi podane vrednosti iz niza t. >> plot(t.*t, t, 'r') Izriše niz t.*t, kjer so na vodoravni osi podane vrednosti iz niza t. Črta, ki povezuje vrednosti je rdeče (r – red) barve. Modro barvo bi dosegli z vrednostjo 'b' (blue), zeleno pa 'g' (green).
Pomoč

Še več možnosti uporabe funkcije plot(...) in drugih funkcij v Matlab-u dobite z ukazom help, kateremu sledi ime funkcije: >> help plot