Home « ADS-B
 
 

ADS-B Empfangsanlage selbst gebaut



Grundlagen


ADS-B (Automatic Dependend Surveillance - Broadcast) heißt automatische bordabhängige Überwachung in Luftfahrzeugen sowie kontinuierliche Aussendung der überwachten Parameter. Verkehrsflugzeuge bestimmen selbständig über Satellitennavigationssysteme ihre Position und senden diese unaufgefordert und ungerichtet auf 1090 MHz aus. Das wird durch Kopplung eines Mode-S Transponders mit GPS erreicht. Sie können im Umkreis von ca. 150 nm (278km) empfangen werden.
Bei einem täglichen Aufkommen von über 9000 Flügen ist der deutsche Luftraum einer der verkehrsreichsten der Welt. ADS-B trägt zur Entlastung der Radarortung und des Kennungsverfahrens IFF bei. Insbesondere in Ländern, wo keine flächendeckende Radarabdeckung vorhanden ist, wird eine Erhöhung der Flugsicherheit erreicht.
Auch Empfangsanlagen befinden sich an Bord von Flugzeugen. Manche Ausführungen sind sogar mit 4 Mode-S Empfängern ausgestattet. Auf einem Sichtgerät werden den Piloten alle mit ADS-B ausgerüsteten Verkehrsteilnehmer angezeigt.
Der Großteil der Verkehrsflugzeuge ist heute für ADS-B gerüstet, aber für den Einsatzbereich der allgemeinen Luftfahrt ist der Ausrüstungsgrad noch relativ gering. So senden ältere Mode-S Transponder nur Kennung, ICAO-Code, Höhe und Squawk aus. Durch Feldstärkeauswertung des Mode-S Signals können aber kritischen Annäherungen registriert werden. Im Rahmen des Antikollisionssystems ACAS (Airborne Collisions Avoidance System) wird auf 1090 MHz auch ein Datenaustausch unter den Flugzeugen realisiert.
Datentelegramme im Mode-S werden in Pulse Positions Modulation (PPM) gesendet. Ihre Länge ist abhängig vom Format. DF0 ist z.B. das Format von ACAS und beinhaltet 56 Bit. Die Antwort auf Abfragen boden- und luftgestützter Sekundärradaranlagen erfolgt ebenfalls mit 56 Bit im Format DF4. ADS-B Sendungen im Format DF17 werden mit 112 Bit übertragen.
Die 112 Bit Datentelegramme enthalten Flugnummer, Herkunft, Flugzeugtyp, Flughöhe, Latitude, Longitude, Geschwindigkeit, Flugrichtung, Kennung, u.a. Die Daten werden unverschlüsselt übertragen.


ADS-B Telegramm

Jedes Wort beginnt mit einer 8µs langen Präamble, bestehend aus 4 Impulsen a 0,5µs . Die Länge der Pulse und deren Abstände ist festgelegt. Die Impulse des Datenblocks sind ebenfalls von 0,5µs Dauer. Sie befinden sich in einem Zeitfenster von 1µs. Bei PPM ist der Dateninhalt durch die Lage des Impulses innerhalb eines Zeitfensters codiert.
Die ersten 5 Bit des Datenblocks geben die Formatnummer an. Wie schon erwähnt, ist DF17 das Format für ADS-B. Die danach folgenden 27 Bit gehören zum Aufklärungs - und Steuerungsblock. Im Massage Field sind z.B. GPS Informationen enthalten, wie Longitude, Latitude, Höhe u.a. Das letzte Feld enthält Angaben zur Identifizierung des Flugzeuges, einschließlich eines Paritätsvergleichs.

ADS-B Empfänger Selbstbau


Der Empfang von Mode S-Transpondern unterliegt keinem Abhörverbot. Dazu gibt es einen Beschluss des Verwaltungsgerichts Köln vom 3.09.2008. Im Handel werden seit einigen Jahren Empfangssysteme inklusive Software für Jedermann angeboten. Z.B. die Radarbox von AirNav mit der sich User sogar weltweit über das Internet vernetzen können. Mit einem derzeitigen Preis von 499,- ist man dabei...

Auf der Suche nach Informationen findet man im Inernet ganz simple Lösungen zum Nachbauen, die preislich kaum ins Gewicht fallen. Dazu eine Freeware zur grafischen und tabellarischen Anzeige aller empfangenen Daten:


Programm zur Darstellung von sprut.de

Die Empfangsfrequenz von 1090 MHz liegt im Bereich handelsüblicher Satellitenreceiver. Was bietet sich da mehr an, als den Tuner einer ausgedienten Satanlage zu verwenden. Aber so einfach ist es dann doch nicht.
Nur bestimmte Tunertypen sind geeignet, am besten solche aus Digitalreceivern, wie den BSKE5-101A. Es sind aufwendige Modifikationen erforderlich und wer hat schon genau denselben Receiver wie er z.B. bei X.Fernard umgebaut wurde. Im Internet sind noch einige andere Varianten zu finden, man kann aber auch im Forum von mikrocontroller.net die Entstehung eines Empfängers miterleben, der ausschließlich für ADS-B konzipiert ist und mit wenigen SMD-Bauelementen auskommt. Er besteht im Wesentlichen aus 2 SAW-Filtern, MMIC-Vorverstärker und dem Logarithmic Decoder AD8313.




ADS-B Empfänger

Dieses "miniADSB-Frontend" wird als Bausatz bei www.miniadsb.web99.de angeboten. Auf der Seite ist auch eine ausführliche Aufbauanleitung vorhanden.
In die Spannungszuleitung von MMIC-Verstärker und ersten SAW-Filter kann man anstatt der Brücke eine Diode 1N4148 einsetzen. Bei 4,7V Spannungsversorgung funktionierte mein Empfänger am besten, d.h. optimales Signal/Rauschen Verhältnis. Zu viel Spannung zerstört den Empfänger !
Für erste Empfangsversuche reicht ein Draht von ca. 7cm Länge am Antenneneingang. Am Ausgang schließt man ein Oszilloskop an und sollte dann zum Rauschen immer mal ein paar Datentelegramme sehen. Die Rechteckimpulse haben die Frequenz von 1 MHz. Weit entfernte Flugzeuge haben nur geringe Feldstärke und erzeugen kleinere Amplituden als die im Nahfeld. Ein nachgeschalteter Komparator generiert alle Impulse auf denselben Level. Seine Referenzspannung sollte nur wenig über dem Rauschen liegen und variabel sein. Bei starken Signalen muss sie angehoben werden und für Schwache wieder an die Rauschgrenze gehen. Das lässt sich z.B. mit einem Analogkomparator realisieren. DL4MEA hat dazu eine sehr gut funktionierende Schaltung entworfen, die ich für erste Versuche übernommen habe.

Decoder



Analogkomparator (mit TTL-Treiber)


Vergleich von Eingangssignal (Mitte), Komparatorausgang (oben) und Referenzspannung (unten)

Anschließend müssen die Impulse decodiert und seriell zum PC geführt werden. Da ich mit PIC's keinerlei Erfahrungen habe, verwendete ich einen Atmega48 mit 20MHz Quarztakt, wie er auch im Projekt vom Edward Cardew zum Einsatz kommt. Das Sourcefile steht auf seiner Homepage zur Verfügung. Der erste Teil des Programms ist für die I2C Steuerung des Receivermoduls. Für das "miniADSB-Frontend" wird er nicht benötigt. Um ein Hängenbleiben in einer Programmschleife zu vermeiden, muss alles was mit I2C-Steuerung zutun hat, aus dem Programmcode entfernt werden.

Man entfernt ab "*** Set Freq Tuner to 1090 +/- offset into edge of SAW ***"
bis zwei Zeilen über "; MAIN LOOP, always return here"

Die Programmänderung wird mit dem "AVR-Studio" realisiert, das auf der ATMEL-Homepage kostenlos erhältlich ist. Das Brennen des geänderten Programmcodes kann ebenfalls damit erfolgen. Ich verwende "Ponyprog" und schließe dazu ein Programmierkabel (siehe "Testboard") am Parallelport an.
Damit müssen auch die Fuse-Bits für den externen Quarz gesetzt werden. Wichtig ist, dass der Frequenzteiler deaktiviert wird.
Der Ausgang des Analogkomparators wird mit Pin D.6 des Atmeldecoder verbunden.


Decoder mit Atmega 48

Dieser Prozessoreingang wird auch im Komparatormode betrieben. Die Referenzspannung stellt man mit einem Spannungsteiler fest auf ca. 500 mV ein. Das Hauptprogramm sucht als erstes nach der Präamble 1010000101000000. Ist die erkannt wird eine an Port D.4 angeschlossene LED zum Leuchten gebracht und mit der Manchestercodeerkennung begonnen - der Decodierung des PPM-Signals. Der erkannte Code wird byteweise ins UART-Register geschrieben, bei Fehlern wird die Codeerkennung abgebrochen und ein Fehlercode "!0F;" ausgegeben. Dieser kann von einigen Programmen nicht verarbeitet werden und führt dort zu Fehrlermeldungen. Das lässt sich unterbinden indem man Pin C.1 auf Masse legt. Die Kommunikation mit dem PC läuft über die serielle Schnittstelle mit 115200 Baud. Ein MAX232 dient der Pegelanpassung. Mit einem Terminalprogramm sind nun die ankommenden Datenblöcke zu sehen. Sie können z.B. mit o.g. Programm von sprut.de oder mit Planeplotter grafisch dargestellt weren. Die Flugzeuge bewegen sich dann über einer Karte. Das Planeplotter kann als Testversion zwei Wochen kostenlos genutzt werden.

Nun verfügt heutzutage nicht mehr jeder PC über eine serielle Schnittstelle. Also einen USB-RS232-Wandler dazwischen schalten... warum nicht gleich einen USB-Decoder verwenden ? Die Decoder von DL4MEA und sprut.de haben den USB-Anschluss, allerdings verwenden sie PIC-Prozessoren...
Aber ! Im Vergleich zu Edwards Atmel hat der PIC von "sprut.de" nicht nur eine implementierte USB-Schnittstelle, die Referenzspannung seines Digital-Komparators ist ähnlich wie beim analogen Komparator von DL4MEA dynamisch. Abhängig von der Eingangsspannung wird die Höhe Referenzspannung automatisch geregelt. Die Schaltschwelle lässt sich per Software einstellen.
Es muss nur der Bootloader darauf gebrannt werden, die Firmware inklusive Updates lassen sich dann über USB nachladen. Alles und sogar eine Darstellungssoftware kann bei sprut.de kostenlos herunter geladen werden - für den Bastler ein Paradies.


Decoder mit PIC18F2550

Also wurde als nächstes der PIC 18F2550 beschafft und Dank eines hilfsbereiten Kollegen, mit 5 auf den Chip gelöteten Drähten und einem PIC-Programmiergerät der Bootloader darauf gebrannt. Ach ja, zwei Platinenlayouts im EAGLE-Format stehen bei "sprut.de" auch noch zum Download bereit, eins für bedrahtete- und eins für SMD-Bauelemente. Ich hab eine Mischlösung kreiert, weil bei Reichelt nur noch die SMD-Version des PIC's zu haben war, alle anderen Bauelemte aber bedrahtet in der Bastelkiste sind. Sprut.de hat anscheinend nicht alles bedacht :-)
Der Decoder funktionierte auf Anhieb. Ein weiterer Vorteil ist, dass die Spannungsversorgung ausschließlich über USB erfolgt und kein Netzteil mehr erforderlich ist. Am Decoder kann der Empfänger mit 3 Leitungen (Plus, Masse und Data) angeschlossen werden.

Gewinn bringende Rundstrahlantenne für 1090 MHz


Als nächstes kam die Antenne dran. Mein Draht funktionierte schon mal ganz gut. Er ist ungefähr Lambda viertel lang. Mit einem zweiten Draht derselben Länge hätte man einen Dipol mit ca. 2,2 dBi Gewinn und einer Gesamtlänge von nur 14cm. Da bietet sich doch eine vertikale Stockung mehrerer Dipole förmlich an. Die Rundstrahlcharakteristik bleibt erhalten, aber die vertikale Abstrahlung wird durch Bündelung verstärkt. Eine solche Antenne ist die kollineare Koaxialantenne, die bei einer vierfachen Stockung ca. 6dBi Gewinn bringt. Sie wird auf einigen Internetseiten vorgestellt, u.a. bei DJ4UF<



Ich verwende das Koaxialkabel RG58, Verkürzungsfaktor=0,66
Frequenz=1090 MHz

Berechnung der Wellenlänge:

Lambda = 300000000 m/s :1090000000 Hz
Lambda = 0,275m

Verkürzungsfaktor einberechnen: 0,275m * 0,66 = 0,181m

Lambda halbe: 0,181m : 2 = 9cm

Lambda viertel: 0,181m : 4 = 4,5cm

Nach diesen Maßen wurde die Antenne von DJ4UF nachgebaut. Am unteren Ende lötete ich noch ein 2m langes Anschlusskabel (RG58) mit BNC-Stecker. Das Ganze schiebt man in ein PVC-Rohr, das oben und unten wasserdicht verschlossen wird. Zur Befestigung wird das Rohr etwas länger ausgelegt, als die wirksame Strahlerlänge.

abgesetztes Empfangssystem


Um größtmögliche Reichweiten zu erzielen muss die Antenne hoch und frei stehen. Wie kann man das realisieren? Um die Verluste zwischen Antenne, Empfänger und Decoder so gering wie möglich zu halten, müssen die Verbindungsleitung dazwischen kurz sein. Also Empfänger und Decoder auf's Dach zur Antenne bringen und dann mit RS232 oder USB runter gehen ? RS232-und USB-Kabel sind nur für geringe Längen ausgelegt. Bei USB sind maximal 5m möglich, die man zwar mit Hubs verlängern kann, wodurch aber zusätzliche Fehlerquellen entstehen - ganz abgesehen von der Störstrahlung, die den Empfang auf den AFu-Bändern beeinträchtigt. Bei Windows kommt es auch immer mal vor, dass ein USB-Port ausfällt und der Decoder erst wieder nach erneuten Verbinden anläuft. Also baute ich Empfänger und Analogkomparator in ein wetterfestes Gehäuse.


Empfänger, Komparator und TTL-Treiber (siehe Schaltung oben)

Bevor alles auf's Dach kam, musste es abgeglichen werden. Mit R10 (siehe Schaltung des Analogkomparators) stellt man zuerst die Spannung ein, die dann auch am Empfänger anliegt (bei mir 4,7V). Mit dem Spindeltrimmer R9 wurde die optimale Schaltschwelle des Komparators eingestellt


Messaufbau zur Einstellung von Uref

Wenn man den Atmeldecoder verwendet, ist die einfachste Methode zur Einstellung von Uref die mit dem Terminalprogramm. Man entfernt dazu die Masse von Pin C.1 (Jumper) und stellt R9 so ein, dass die größtmögliche Anzahl von Datenböcken über den Bildschirm läuft und dabei am wenigsten "!0F;" Fehlermeldungen zu sehen sind. Noch besser wäre ein Programm, das diese Auswertung übernimmt.

ungeahnte Probleme


20m Koaxialkabel und eine Leitung zur Spannungsversorgung stellten zunächst die Verbindung vom Komparatorausgang zum Decoder her. Es kam aber nichts verwertbares an - nichts von dem, was direkt am Ausgang des Komparators gemessen wurde - verformt durch induktive und kapazitive Anteile des Kabels. Das Signal war total verzerrt und alles andere als rechteckförmig. Das Abschließen der Leitung mit 50 Ohm zog dann die Spannung auf wenige Millivolt runter.
Ein TTL Treiber mit dem 78LS128 wurde zur Schaltung ergänzt. Er formt das Signal in saubere und belastbare Rechteckimpulse um, die an 3 Ausgänge zur Verfügung stehen. Man kann einen davon z.B. zum Betreiben einer LED verwenden, die zur Funktionskontrolle und als Abgleichindikator dient.


Ua Empfänger, Ua Komparator, Ua TTL-Treiber (v.o.n.u.)

Auch mit TTL-Treiber muss die 20m lange Leitung abgeschlossen werden. Jedoch ist die Spannung am Ende immerhin noch 1,6V an 50 Ohm.

Erweiterungen


Ein weiterer Versuch bestand darin, die Empfangsanlage zu Testzwecken über mehrere hundert Meter abzusetzen und z.B. auf einem Turm zu betreiben. Lichtwellenleiter und Modem stellen eine sichere Verbindung über große Distanzen her. Das verwendeten LWL-Modem ist normalerweise für ein Videosignal mit 7 MHz Bandbreite und maximal 1 Vss ausgelegt. Deshalb musste die Ausgangsspannung des TTL-Treibers auf 1 Vss verringert werden. Die Übertragung funktionierte tadellos und brachte eine ungewohnt große Anzahl von Flugzeugen auf den Bildschirm.
Möglich ist auch die Beobachtung des Luftraumes mit dem heimischen Laptop. Man sieht genau, wer die Kondensstreifen am Himmel verursacht hat:-)


Antenne und Komparator Außenmontage

Für die Inspiration und Unterstützung möchte ich mich bei Dietrich Meissner bedanken !

Manching, 20.10.2010
DL8WIG


nach oben