• Ei tuloksia

Johdatus signaalinkäsittelyyn (syksy 2008) Matlab harjoituksen 2 ohje:

N/A
N/A
Info
Lataa
Protected

Academic year: 2022

Jaa "Johdatus signaalinkäsittelyyn (syksy 2008) Matlab harjoituksen 2 ohje:"

Copied!
2
0
0

Kokoteksti

(1)

Johdatus signaalinkäsittelyyn (syksy 2008)

Matlab harjoituksen 2 ohje:

Tausta ja tavoite

Kerrataan matlabin käyttötaitoa ja tutustutaan konvoluution ominaisuuksiin.

Tehtävät

1. Tee yksikkönäyte näytejono ja tulosta se stem –komennolla (help stem). Tulosta yksikkönäytteen arvot välillä -11 < n < 11, kun n saa vain kokonaislukuarvoja. Palauta siis mieleesi, miten Matlabissa alustetaan vektori.

2. Hae opettajan kotisivulta mustalaatikko1.m tiedosto ja tallenna se vaikka d:/data hakemistoon.

Muuta Matlab ohjelman Current Directory = d:/data, jotta Matlab “näkee” tiedoston.

Mustalaatikko1 on Matlab funktio (out = mustalaatikko1(in)), joka ottaa sisäänsä input

parametrinaan vektorin ja tulostaa funktion laskentatuloksen toiseen vektoriin. Mittaa mustan laatikon impulssivaste h (luentomoniste kappale 2.3.1)

3. Muodosta yksikköaskel näytejono, kun n = 0, 1, 2, ..15 (help ones). Anna muodostamallesi näytejonovektorille nimeksi yksikko. Laske mustanlaatikon vaste ajamalla muodostamasi vektori yksikko mustanlaatikon läpi ja laskemalla vaste edellisessä tehtävässä mittaamasi impulssivasteen avulla. Konvoluution voi Matlabissa laskea helposti conv –komennolla.

4. Tutkitaan mustanlaatikon ominaisuuksia. Päättele määrittelemäsi impulssivasteen perusteella. Onko mustalaatikko stabiili? Onko se kausaalinen järjestelmä? (luentomoniste, kappale 2.3.2)

5. Tutkitaan konvoluution ominaisuuksia. ”Mittaa” yksikköaskel näytejonoa käyttämällä mustan laatikon kaskadikytkennän vaste (eli kun ajat yksikköaskel input signaalin järjestelmään, joka koostuu kahdesta peräkkäisestä mustalaatikko järjestelmästä). Todista kokeilemalla, että kaskadikytkennälle on voimassa h = conv(h1,h2), missä h1 on ensimmäisen järjestelmän impulssivaste ja h2 on

kaskadikytkennän toisen järjestelmän impulssivaste.

Lisätehtäviä nopeille:

6. Muodosta Matlabin työtilassa ensin signaalit t=(1:100) ja y=sin(2*pi/50*t)+sin(2*pi/10*t). Kirjoita sen jälkeen funktio keskiarvosuodatus, joka toteuttaa liukuvasti keskiarvoistavan suodattimen (keskiarvon voit laskea mean -komennolla ja signaalin pituuden saat selville length –komennolla).

Suodattimelle annetaan parametreina suodatettava signaali ja ikkunan pituus. Tuloksena funktio

(2)

palauttaa suodatetun signaalin. Testaa suodatintasi signaalilla y pyrkien suodattamaan pois nopeammin vaihtelevan sini komponentin. Millä ikkunan pituudella suodatus toimii parhaiten?

7. Muodosta vektori b = ones(1,ikkunan_pituus), missä ikkunan pituus on edellisessä tehtävässä löydetty paras arvo. Vertaile oman suodattimesi ja Matlabin filter –komennolla saatavaa tulosta plot(filter(b,1,y)). Mistä johtuu suodatetun signaalin siirtyminen = viivästyminen? Kuinka pitkä viive on alkuperäiseen y signaaliin verrattuna (= montako näytettä)?

Viittaukset

LIITTYVÄT TIEDOSTOT

Käytä tätä suodatustulosta vertailudatana toteuttaessasi alla olevan kuvan mukaiset IIR

Piirrä samaan kuvaan alkuperäinen signaali, kvantisoitusignaali ja virhesignaali Matlabin stem funktiolla.. Laske sitten lopuksi virhesignaalin varianssi Matlabin var komennnolla

”Mittaa” yksikköaskel näytejonoa käyttämällä mustan laatikon kaskadikytkennän vaste (eli kun ajat yksikköaskel input signaalin järjestelmään, joka koostuu

Tutustu Matlabin firpm funktioon ja toteuta sitä hyväksikäyttäen oma Matlab funktiosi, jolla voit suunnitella suodatinpankin, joka jakaa taajuudella Fs=8192 näytteistetyn

Kirjoita sen jälkeen funktio keskiarvosuodatus, joka toteuttaa liukuvasti keskiarvoistavan suodattimen (keskiarvon voit laskea mean -komennolla ja signaalin pituuden saat

suodattimen (keskiarvon voit laskea mean -komennolla ja signaalin pituuden saat selville length – komennolla).. Suodattimelle annetaan parametreina suodatettava signaali ja

”Mittaa” yksikköaskel näytejonoa käyttämällä mustan laatikon kaskadikytkennän vaste (eli kun ajat yksikköaskel input signaalin järjestelmään, joka koostuu

”Irroita” ( signaalin_pätkä = signaali(ensimäinen_näyte:viimeinen_näyte), esim p1=c1(1:100) ) ensimmäisessä tehtävässä muodostamastasi signaalista 100, 101, 500,501 ja