
UKW-FM mit GNU Radio
Eine der
ersten Übungen mit Gnu-Radio ist der Bau eines UKW-FM-Empfängers. Auch
die Videos zum HackRF One zeigen dieses Thema zuerst. Ein Grund dafür
ist vermutlich, dass man fast überall starke UKW-Stationen empfangen
kann und mit einer einfachen Antenne auskommt.
für meinen eigenen Versuch habe ich den HackRF One mit einer Bandbreite
von 10 MHz betreiben, weil dabei die geringsten Störungen bei einem
Test mit SDR# auftraten. Das ergibt eine Bandbreite von ebenfalls 10
MHz. Weil ich die Mittenfrequenz 103 MHz gewählt habe, reicht mein
Abstimmbereich nun von 98 MHz bis 108 MHz. Zusätzlich gibt es einen
IQ-Oszillator (Signal Source) der von -5 MHz bis +5 MHz abgestimmt
werden kann. Ein Multiplier dient als Mischer, der die gewünschte
Station auf 0 Hz heruntermischt. Es folgt ein Low Pass Filter bis 75
kHz, das für die ZF-Selektion sorgt.
Bis hierhin liefen
alle Blöcke mit der global festgelegten Abtastrate von 10 MHz. Aber das
Low Pass Filter verwendet eine Decimation von 50, sodass am Ausgang
eine 50-fach kleinere Abtastrate von 200 kHz steht. Diese soll nun auf
480 kHz gebracht werden. Dazu dient der Rational Resampler. Er bildet
zuerst durch Interpolation eine 12-fach höhere Abtastrate und dezimiert
sie dann um den Faktor 5, was 480 kHz ergibt. Dieses Signal wird dann
sowohl an die FFT-Anzeige als auch an den WBFM Receiver, also den
FM_Demodulator geschickt. Dieser reduziert die Abtastrate um den Faktor
10, sodass die Soundkate (Audio Sink) mit 48 kHz arbeitet.
Wichtig ist, dass die Datenströme genauso schnell reinkommen wie sie
verarbeitet werden und am Ende ausgegeben werden. Die Abtastrate wird
mehrfach umgerechnet: 10 MHz / 50 * 12 / 5 / 10 = 48 kHz. Anfangs hatte
ich noch Probleme mit den richtigen Einstellungen, da kam es zu einem
lauten Geknatter aus dem Lautsprecher. Jetzt funktioniert das Radio
wunderbar. Auch eine besonders schwache Station in größerer Entfernung
(DLF auf 102,8 MHz) wird sauber empfangen. Die Frequenz wird über den
Schieberegler QT GUI Range eingestellt. Mit den beiden Pfeilen kann man
auch schrittweise um jeweils 100 kHz abstimmen.
Genau bei 103 MHz,
der eingestellten CH0-Freqeunz des HackRF One, sieht man einen Träger,
der nicht von der Antenne kommt, sondern aus dem Gerät selbst. Das ist
die Stelle, bei der auf die Ausgangsfrequenz Null gemischt wird.
Der Hersteller nennt das CD Spike, wobei mit Spike kein Impuls gemeint
ist, sondern diese Nullstelle im Spektrum. Wenn sie genau ein
Empfangssignal trifft, führt das zu Störungen. Das ist der Grund, warum
in diesem Programm einmal mehr gemischt wird.