Název školy: Autor: Anotace: PSK1-9 Vyšší odborná škola a Střední průmyslová škola, Božetěchova 3 Ing. Marek Nožka Princip funkce číslicové filtrace signálu Vzdělávací oblast: Informační a komunikační technologie Předmět: Tematická oblast: Výsledky vzdělávání: Klíčová slova: Druh učebního materiálu: Typ vzdělávání: Ověřeno: Zdroj: Počítačové sítě a komunikační technika (PSK) Principy přenosu informací Žák s pomocí obrázků ukazuje princip číslicové zpracování signálů FIR filter, číslicová filtrace Online vzdělávací materiál Střední vzdělávání, 3. ročník, technické lyceum VOŠ a SPŠE Olomouc; Třída: 3L Vlastní poznámky, Wikipedia, Wikimedia Commons Číslicové zpracování signálů Číslicový signál Číslicový signál je "pouhá" posloupnost vzorků, tedy posloupnost čísel. V našem příkladu označíme vstupní posloupnost x(n). n je pořadí vzorku. x=[ 1, 2, 1.4, 3.1, 1.1, 2, 1, 0, -3.1, -2, -0.9, -2.8, -1.5 ] Graficky znázornit vstupní posloupnost můžeme takto: 1
Číslicový filtr, systém Filtr obecně slouží ke změně časového průběhu nebo frekvenčního spektra signálu. Číslicovým filtr pracuje na následujícím principu: Filtr bere vstupní vzorky, jednotlivé vzorky váhuje (vynásobí je příslušnou konstantou) a sečte je. Výsledkem je výstupní posloupnost. y(n) Příslušné konstanty -- váhy jednoznačně určují vlastnosti filtru a jejich velikost je předmětem návrhu filtru. Obecné schéma číslicového filtru vidíme na následujícím obrázku. (Schéma je zjednodušené a nezahrnuje zpětné vazby.) z 1 označuje zpoždění o jeden vzorek (jeden takt). To znamená, že číslicový systém musí mít paměť a pracovat nejen s aktuálním vzorkem, ale i s několika vzorky předešlými. h(n) označuje konstantu (váhu), kterou je příslušný vstupní vzorek vynásoben. Právě tyto váhy příslušný filtr (systém) jednoznačně charakterizují a určují jeho chování. Říkáme jim impulzní charakteristika. h(n) Impulzní charakteristika Impulzní charakteristika h(n) je obecně odezva na tzv. jednotkový 2
impulz. Jednotkový impulz je jediný vzorek o hodnotě jedna. Mějme následující filtr: h(n) = [ 0.1, 0.2, 0.5, 0.3 ]... jeho vnitřní uspořádání, by se dalo nakreslit asi takto: Jestliže přivedeme na vstup tohoto systému jednotkový impulz tedy x(n) = δ(n) potom na výstupu dostáváme impulzní charakteristiku tedy y(n) = h(n) 3
v okamžiku v okamžiku v okamžiku v okamžiku n = 0 se uplatní pouze váha h(0) = 0.1 n = 1 se uplatní pouze váha h(1) = 0.2 n = 2 se uplatní pouze váha h(2) = 0.5 n = 3 se uplatní pouze váha h(3) = 0.3 (Ostatní váhy jsou vždy násobeny nulou.) Průchod signálu filtrem x(n) Nyní přivedeme na vstup filtru posloupnost. x=[ 1, 2, 1.4, 3.1, 1.1, 2, 1, 0, -3.1, -2, -0.9, -2.8, -1.5 ] Průchod filtru můžeme znázornit následujícím způsobem: Dáme pod sebe vstupní posloupnost x(n) a časově převrácenou impulzní charakteristiku h(n) a budeme násobit vždy vzorky, které jsou pod sebou. (Toto odpovídá matematické operaci konvoluce). 4
n = 0 y(0) = 0.1 1 + 0.2 0 + 0.5 0 + 0.3 0 = 0.1 n = 1 y(1) = 0.1 2 + 0.2 1 + 0.5 0 + 0.3 0 = 0.4 n = 2 y(2) = 0.1 1.4 + 0.2 2 + 0.5 1 + 0.3 0 = 1.04 5
n = 3 y(3) = 0.1 3.1 + 0.2 1.4 + 0.5 2 + 0.3 1 = 1.89 n = 4 y(4) = 0.1 1.1 + 0.2 3.1 + 0.5 1.4 + 0.3 2 = 2.03 6
n = 5 y(5) = 0.1 2 + 0.2 1.1 + 0.5 3.1 + 0.3 1.4 = 3.29 Výsledkem je posloupnost zobrazená na následujícím obrázku. Vidíme, že výstupní posloupnost připomíná funkci sinus. Filtr se tedy očividně chová jako dolní propust. y(n)=[ 0.1, 0.4, 1.04, 1.89, 2.03, 2.39, 1.98, 1.53, 0.79, -0.52, -2.04, -2.39, -1.76] 7
V této prezentaci se pokouším o prvotní přiblížení problematiky středoškolským studentům a proto zde záměrně opomíjím zpětné vazby a systémy s nekonečně dlouhou impulzní odezvou. Python kód, který vytvořil obrázky: Cislicovy_filtr 8