Software Defined Radio

cancel
Showing results for 
Search instead for 
Did you mean: 

ADS-B Decoder (Airplane Tracker)

Note: My images aren't working properly. I will get them fixed as soon as I can figure out what is wrong.

This set of VIs will allow you to detect aircraft in the surrouning airspace and decode their ID and locations by searching for ADS-B messages transmitted at 1090 MHz. 

Software Requirements:

     NI-LabVIEW 2011

     NI USRP Drivers

Hardware Requirements:

     NI USRP 292x

     Antenna tuned to 1090 MHz.

Antenna

     There are three requirements for the antenna.

    1. It must be tuned for 1090MHz.
    2. It must be vertically polarized.
    3. It must be omnidirectional.

     You can make a simple antenna with one piece of wire that is ~6.8 cm long (1/4 wavelength at 1090 MHz), with 4 more 6.8 cm wires radiating downward at a 45 degree angle to form a ground plane (see Figure 1).

Figure 1: Example Antenna

Detecting and Demodulating the Signal

     The messages we are trying to decode follow the ADS-B protocol. They are transmitted at a 1090MHz carrier and encoded using Pulse Position Modulation (PPM) at a rate of 1 Mb/s. Each 112 bit (112 microsecond) message is preceded by an 8 microsecond preamble which identifies the starting point of the message (See Figure 2). The decoder scans until it finds a valid preamble, then proceeds to decode the rest of the message.

Figure 2: ADS-B Message Format

The PPM Demodulator works as follows:

    1. The message is sampled at 4 MegaSamples/second (MS/s)
    2. The message is decimated by a factor of 2.
    3. The samples are compared to a threshold to convert them to a '1' or '0'.
    4. Each bit now consists of two samples, with '10' corresponding to a binary '1' and '01' corresponding to a binary '0'

Reading the Message's Data

     The message data is encoded following the ADS-B Protocol as outlined in the document RTCA DO-282B.

     The first 5 bits of the message contain the Downlink Format (DF), which specifies the structure of the rest of the message. Both the DF = 17 and DF = 18 formats are used for ADS-B messages, while DF = 19 is reserved for military applications, but can in some cases also contain ADS-B messages. Bits 6-8 contain either the CA (DF = 17), CF (DF = 18), or AF (DF = 19). For our purposes, this field is only important in DF = 18 and DF = 19 messages, since it serves to distinguish between ADS-B messages and other messages transmitted in those formats. All DF = 17 transmissions contain ADS-B messages.

     The following 24 bits contain the aircraft address information as registered with the International Civil Aviation Organization (ICAO). This unique identifier is what allows the tracking of a single aircraft across multiple messages. Bits 33-88 contain the message itself.

     The first 8 bits of the message contain the Type Code and Subtype Code, which state what information the following bits will contain. For this project, the type codes of interest are 0, 9-18, and 20-22, which contain Airborne Position Messages. In this message, bits 55-88 contain the latitude and longitude, encoded using Compact Position Reporting. The final 24 bits are a parity check, which is not used in this decoder.

Acknowledgements

     The state machine that forms the framework of the decoder and the PPM demodulator were designed by Erik Luther.

Comments
machin78
Member
Member
on

Is there any application based on ADS-B or the application are the examples?

Contributors