Funksignale können in einem sehr breiten Frequenzspektrum ausgesendet werden. Diese analogen Signale müssen für die Verarbeitung mittels eines Computers mit Hilfe der Techniken der digitalen Signalverarbeitung in sogenannte diskrete Signale umgewandelt werden.
Ein diskretes Signal ist dabei eine synchrone Abfolge von einzelnen Messungen z.B. der Amplitude oder Phase eines Signals.
Wie später noch genauer erläutert wird, kann ein analoges Signal dann vollständig als diskretes Signal abgebildet werden, wenn es mit der doppelten Frequenz abgetastet wird. D. h z.B. für ein 1000Hz Signal, dass alle 500ms ein Wert des Signals ermittelt werden muss. Pro Sekunde entstehen also mindestens 2000 Messpunkte.
Es ist leicht vorstellbar, dass eine Abtastung (Sampling) eines Signals im GHz Bereich die Kapazitäten der USB Schnittstelle und die der nachfolgenden Signalverarbeitung schnell überfordert.
Wie funktioniert ein SDR Empfänger
Der SDR Empfänger konvertiert das empfangene Funksignal in einen Bereich, der von seiner Hardware noch ausgewertet werden kann.
Der Frequenzbereich des Empfängers und dessen Bandbreite sind dabei wichtige Parameter.
Am Beispiel des NESDR SMArt RTL-SDR Sticks ergibt sich z.B. ein Frequenzbereich von 0,1 – 1750Mhz und eine maximale Echtzeit-Bandbreite von 3,2 MHz. Jede Frequenz, die analysiert werden soll muss daher in den Frequenzbereich zwischen 0 und 3,2MHz intern umgewandelt werden, damit eine Digitalisierung möglich wird. Frequenzen im Bereich von 0,1 bis 25MHz werden vom Stick direkt gesampled, müssen also nicht konvertiert werden. D.h., dass eine Sampling Rate von mindestens 50MHz ( 2x25MHz) technisch unterstützt werden kann.
Hier ist ein Prinzipschaltbild eines SDR Empfängers

Der R860 RF Tuner empfängt das HF Signal und wandelt es auf eine niedrige ZF-Frequenz herunter, die von der Kanalbandbreite
in verschiedenen Anwendungen abhängt.
Der folgende RTL8232 Chip ist in der Lage die Informationen entweder direkt oder auf der Zwischenfrequenz über einen Analog / Digitalwandler (A/D) mit einer Auflösung von 8 BIT zu bestimmen. und als komplexe Zahl (IQ) an die USB Schnittstelle zu übergeben.
Am Ende dieser Kette kann nun die Software aktiv werden und die einzelnen Werte weiter verarbeiten.
Digitale Signalverarbeitung (DSP)
DSP arbeitet mit digitalen Signalen, die zeitdiskrete Darstellungen von zeitkontinuierlichen Signalen sind. Analoge Signale werden in der Regel durch einen Prozess namens Analog-Digital-Wandlung (ADC) in die digitale Form umgewandelt, wobei das Signal in regelmäßigen Abständen abgetastet und in diskrete Werte quantisiert wird.
DSP basiert auf den Grundsätzen der Abtasttheorie, die besagt, dass ein zeitkontinuierliches Signal aus seinen diskreten Abtastwerten perfekt rekonstruiert werden kann, wenn die Abtastrate das Nyquist-Shannon-Kriterium erfüllt. Die Nyquist-Rate schreibt dabei vor, dass die Abtastrate mindestens das Doppelte der maximalen Frequenz des Signals betragen muss, um Aliasing zu vermeiden.
Die so erzeugten Daten bilden den Zeitbereich des Signals ab, also die Veränderung von Amplitude und Phase über die Zeit.
Mittels mathematischer Methoden kann das Signal in den Frequenzbereich umgerechnet werden. Ergebnis ist die Darstellung des Signals als Frequenzspektrum. Diese Methode ist als Fourier Transformation bekannt. In unserem Anwendungsfall kommt hier ein Algorithmus zur Diskreten Fourier Transformation zum Einsatz.
Abtastrate (Sampling Rate)
Die Abtastrate ist ein wesentlicher Parameter bei der Implementierung von SDR, da sie verschiedene Aspekte der Signalverarbeitung, wie Filterdesign, Modulation/Demodulation, Spektralanalyse und Datenübertragung, beeinflusst. Sie bestimmt die Bandbreite des verarbeiteten Signals und beeinflusst die Abwägung zwischen Genauigkeit und Rechenaufwand.
Die Abtastrate wird normalerweise in Samples pro Sekunde (Hz) angegeben. Sie bestimmt die Granularität oder Auflösung der digitalen Darstellung des Signals. Bei einer höheren Abtastrate werden mehr Abtastwerte pro Sekunde erfasst, was mehr Details liefert, aber auch mehr Rechen- und Speicherressourcen erfordert. Umgekehrt werden bei einer niedrigeren Abtastrate weniger Abtastwerte pro Sekunde erfasst, was zu weniger detaillierten Darstellungen führt, aber weniger Ressourcen erfordert.
Das genaue Verständnis der Auswirkungen der Abtastrate ist entscheidend für die korrekte Signalverarbeitung. Sie kann sich innerhalb des Funktionsablaufes auch ändern. Dazu stehen im GNU Companion Blöcke zur Verfügung, die diese Aufgabe übernehmen:
- Resampler
- Fractional Resampler
- Interpolator
- Dezimator
Quantisierung
Nach der Analog Digital Wandlung bleibt aufgrund der begrenzten Anzahl von Bits ein Fehler. Konvertiert man ein Signal in einen 16Bit Datenspeicher, dann bleiben 15 Bit für die Abbildung des Wertes und 1 Bit für das Vorzeichen.
Ermittelt man Werte zwischen 0 und 1, so beträgt die kleinste Auflösung 1/215. = 1/32768 = 0.0000305
32768 * 0.00003 = 0.98
32768 / 0.00004 = 1.31
Beide Werte ergeben bei der Speicherung 1.
Durch die Einbringung dieses “Fehlers” entsteht zusätzliches Rauschen im System.
Im Rahmen der Quantisierung gibt es auch Ansätze, den Fehler über mehrere Samplingzyklen hinweg zu reduzieren, indem man die Fehler “ausmittelt”. Üblicherwiese erfolgt die Quantifizierung in den entsprechenden Hardwarekomponenten, da die Software keine Information mehr über die Fehler hat.