FM demodulálás RTL-SDR és GNU Rádió segítségével
Egy ideje már foglalkozgatok a digitális jelfeldolgozással, így rendeltem magamnak egy RTL-SDR V3 rádióvevőt. A GNU rádió pedig nagyszerű eszköz a rádiós dolgok kipróbálásához, egy sor kódot se kell írnunk, nagyszerűen kipróbálható minden elméleti dolog a gyakorlatban mindössze néhány kattintással.
FM műsorszórás
A FM demodulálás után után a spektrum a következő összetevőből áll:
- 0-15kHz-ig a jobb és bal csatorna összege
- 19kHz vivőfrekvencia a sztereo hang és az RDS demodulálásához
- 23-53kHz között a bal és jobb csatorna különbsége elnyomott vivőjű AM modulációval
- 57kHz-n az RDS információ sáv BPSK modulációval
Mono FM Demodulálás
Mono demoduláláshoz mindössze a 15kHz-s sávra lesz szükségünk:
Szetereo FM demodulálás
A sztereo jelhez szét kell választanunk a demodulált jelet a modulálásban ismertetett sávokra. A 19kHz-es pilot jelet önmagával szorozva megkapjuk a 38kHz-es vivőfrekvenciát az AM demoduláláshoz. Ezt a vivőt szorozva a kiszűrt AM modulált jellel megkapjuk felső keveréssel a bal és jobb csatorna különbségét. Ezután nincs más hátra, mint elvégezni az összeadást és a kivonást a bal és jobb csatornához, majd a megfelelő mintavételezési sebességre alakítani a jelet.
Pre- és De-emphasis szűrők
Magasabb frekvenciákon a zaj könnyebben elnyomja a hangokat, ezért FM modulálás előtt felerősítik a magasabb frekvenciájú hangokat. Ez a Pre-emphasis szűrő. Vételi oldalon az ellenkezőjét kell megcsinálni, tehát a magas hangokat kicsibb lejjebb vesszük. A szűrőnek régebben egyszerű RC szűrőt használtak, innen ered az időállandó, mely európában 50uS, az USA-ban 75uS.
A sztereo demodulátor githubról letölthető.