Software Defined Radio (SDR) ist eine Methode, die manuelle Arbeit mit Metall (was im Grunde genommen gesundheitlich vorteilhaft ist) durch das Kopfzerbrechen des Programmierens zu ersetzen. SDR wird eine große Zukunft vorausgesagt, und sein Hauptvorteil liegt darin, die Einschränkungen bei der Implementierung von Funkprotokollen zu beseitigen. Ein Beispiel dafür ist das OFDM-Modulationsverfahren (Orthogonal Frequency-Division Multiplexing), das nur durch SDR möglich wurde. Doch SDR bietet noch eine weitere, rein ingenieurtechnische Möglichkeit: die Kontrolle und Visualisierung des Signals an beliebigen Punkten mit minimalem Aufwand.
Einer der interessanten Kommunikationsstandards ist das terrestrische DVB-T2 Fernsehen.
Warum? Natürlich könnte man einfach aufstehen und den Fernseher einschalten, aber es gibt dort absolut nichts zu sehen, und das ist schon längst kein persönliches Gefühl mehr, sondern eine medizinische Tatsache.
Im Ernst, DVB-T2 wurde mit sehr umfangreichen Möglichkeiten entwickelt, darunter:
- Indoor-Anwendung
- Modulation von QPSK bis 256QAM
- Bandbreite von 1,7 MHz bis 8 MHz
Es gibt Erfahrungen mit dem Empfang von digitalem Fernsehen nach dem SDR-Prinzip. Der Standard DVB-T ist im bekannten Projekt GNURadio vorhanden. Es gibt ein Modul gr-dvbs2rx für den Standard DVB-T2 (ebenfalls für GNURadio), das jedoch eine vorherige Signal-Synchronisation erfordert und inspirierend ist (ein besonderes Dankeschön an Ron Economos).
Was haben wir.
Es gibt den Standard ETSI EN 302 755, der die Übertragung ausführlich beschreibt, jedoch nicht den Empfang.
Das Signal wird mit einer Abtastrate von 9,14285714285714285714 MHz ausgestrahlt, moduliert mit COFDM und 32.768 Trägersignalen in einem 8 MHz-Band.
Es wird empfohlen, solche Signale mit einer Verdopplung der Abtastrate zu empfangen (um nichts zu verlieren) und auf einer Zwischenfrequenz, die höher ist als die Bandbreite (Superhétérodine-Empfang), um DC-Verschiebungen und das "Durchdringen" des lokalen Oszillators (LO) am Eingang des Empfängers zu vermeiden. Geräte, die diesen Anforderungen entsprechen, sind für einfache Neugier zu teuer.
SdrPlay mit 10Msps 10bit oder AirSpy, die ähnliche Eigenschaften haben, sind deutlich günstiger. Hier geht es nicht um die doppelte Abtastrate, und der Empfang kann nur mit direkter Umwandlung (Zero IF) erfolgen. Daher wechseln wir (aus finanziellen Gründen) auf die Seite der Anhänger von „purem“ SDR mit minimaler Hardwareumwandlung.
Es mussten zwei Aufgaben gelöst werden:
- Synchronisation. Die genaue Abweichung der Frequenz bis zur Phase und die Abweichung der Abtastrate ermitteln.
- Den DVB-T2-Standard rückwärts neu schreiben.
Die zweite Aufgabe erfordert viel mehr Code, ist aber mit Geduld lösbar und kann leicht durch Testsignale überprüft werden.
Test-Signale sind auf dem Server der BBC verfügbar: ftp://ftp.kw.bbc.co.uk/t2refs/ mit einer ausführlichen Anleitung.
Die Lösung der ersten Aufgabe hängt stark von den Eigenschaften des SDR-Geräts und den Steuerungsmöglichkeiten ab. Die empfohlenen Steuerungsfunktionen zur Frequenznutzung waren, wie man sagt, nicht erfolgreich, aber sie boten viel Erfahrung im Lesen von technischen Dokumentationen, Programmierung, dem Ansehen von Serien und dem Lösen philosophischer Fragen… kurz gesagt, ich konnte das Projekt nicht aufgeben.
Der Glaube an „pure SDR“ ist nur gewachsen.
Wir nehmen das Signal so wie es ist, interpolieren es nahezu zu einem Äquivalent und extrahieren dann ein diskretes Signal, das jedoch dem echten ähnlich ist.
Synchronisationsdiagramm:

Hier ist alles nach Lehrbuch. Es wird nachfolgend etwas komplexer. Abweichungen müssen berechnet werden. Es gibt zahlreiche Literatur und Forschungsartikel, die die Vor- und Nachteile verschiedener Methoden vergleichen. Ein Klassiker ist – „Michael Speth, Stefan Fechtel, Gunnar Fock, Heinrich Meyr, Optimum Receiver Design for OFDM-Based Broadband Transmission – Teil I und II“. Allerdings habe ich keinen Ingenieur getroffen, der bereit und fähig ist, solche Berechnungen anzustellen, weshalb ein ingenieurtechnischer Ansatz verfolgt wurde. Mit demselben Synchronisationsverfahren wurden Störungen in das Testsignal eingebracht. Durch den Vergleich verschiedener Metriken mit bekannten Abweichungen (die ich selbst eingebracht habe) wurden die besten für Leistung und einfache Umsetzung ausgewählt. Die Empfangsfrequenzabweichung wird durch den Vergleich des Schutzintervalls und seines sich wiederholenden Teils berechnet. Die Phase der Empfangsfrequenz und die Abtastfrequenz werden anhand der Abweichung der Phasen der Pilotsignale geschätzt und werden in einem einfachen, linearen Equalizer des OFDM-Signals verwendet.
Charakteristik des Equalizers:

Und all das funktioniert gut, wenn man weiß, wann ein DVB-T2-Rahmen beginnt. Dazu wird im Signal das P1-Preambel-Symbol übertragen. Die Methode zur Erkennung und Dekodierung des P1-Symbols ist in der technischen Spezifikation ETSI TS 102 831 beschrieben (dort gibt es auch viele nützliche Empfehlungen zum Empfang).
Autokorrelation des P1-Signals (der höchste Punkt ist der Beginn des Rahmens):

Das erste Bild (nur noch sechs Monate bis zum bewegten Bild…):

Hier erfahren wir, was IQ-Imbalance, DC-Offset und LO-Leckage sind. In der Regel wird die Kompensation dieser direkt umwandlungs-spezifischen Verzerrungen im Treiber des SDR-Geräts implementiert. Es hat daher viel Zeit in Anspruch genommen, zu verstehen: Das Herausziehen der Sterne aus dem harmonischen QAM64-Sternenbild ist die Arbeit der Kompensationsfunktionen. Ich musste alles ausschalten und mein eigenes Fahrrad entwickeln.
Und nun bewegt sich das Bild:

QAM64-Modulation mit spezifischer Sternenbilderdrehung im DVB-T2-Standard:

Kurz gesagt, dies ist das Ergebnis, das Hackfleisch durch den Fleischwolf zurückzulassen.
- Bit-Interleaving (bitweises Interleaving mit gedrehten Spalten)
- Cell-Interleaving (Interleaving von Zellen im Codierungsblock)
- Zeitinterleave (auch in der Gruppe der Kodierungsblöcke)
- Frequenzinterleave (Interleaving der Frequenzen im OFDM-Symbol)
Am Ende haben wir folgendes Signal an der Eingangsstelle:

All dies ist ein Kampf um die Störfestigkeit des codierten Signals.
Zusammenfassung
Jetzt können wir nicht nur das Signal und seine Form sehen, sondern auch die Steuerinformationen.
In der Luft sind zwei Multiplexe. In jedem davon zwei physische Kanäle (PLP).
Eine Eigenheit im ersten Multiplex – der erste PLP hat das Label „multiple“, was logisch ist, da er nicht der einzige im Multiplex ist, während der zweite PLP das Label „single“ hat, und das wirft Fragen auf.
Noch interessanter ist die zweite Eigenheit im zweiten Multiplex – alle Programme sind im ersten PLP, während im zweiten PLP ein Signal unbekannter Natur mit niedriger Geschwindigkeit präsent ist. Zumindest der VLC-Player, der etwa fünfzig Videoformate und ebenso viele Audioformate versteht, kann es nicht erkennen.
.
Das Projekt wurde ins Leben gerufen, um die Möglichkeit zu bestimmen, DVB-T2 mit SdrPlay (und jetzt auch AirSpy) zu dekodieren, deshalb ist dies nicht einmal eine Alpha-Version.
P.S. Während der Schwierigkeiten beim Schreiben des Artikels ist es gelungen, PlutoSDR in das Projekt zu integrieren.
Einige werden sofort sagen, dass dort nur 6 Msps für das IQ-Signal über USB 2.0 verfügbar sind, aber man benötigt mindestens 9,2 Msps – das ist jedoch ein anderes Thema.
Quelle: habr.com
