Sandsynligvis har enhver, der har hilst på eller sagt farvel til slægtninge eller venner på en flyvning, brugt den gratis tjeneste Flightradar24. Det er en meget praktisk måde at spore flyets placering i realtid på.

Som en undersøgelse blandt venner viste, er der meget få, der ved, at denne tjeneste kun understøttes af entusiaster, der sender data til serveren. Endnu færre ved, at enhver, der ønsker det, kan deltage i projektet.
Lad os udfylde dette hul. Hvordan det fungerer, vil vi fortsætte med under indlægget.
Hardware
Det første spørgsmål er — hvor kommer dataene fra.
Hvert civilfly er udstyret med en speciel transponder, også kaldet ADS-B transponder:

(billede fra Garmin's hjemmeside)
Denne enhed sender på frekvensen 1090 MHz specielle pakker, der indeholder de vigtigste parametre for flyvningen, typen af luftfartøj, dets koordinater, destination og så videre.
Signalet i spektret ser cirka sådan her ud:

Og hvad der er vigtigst for os, er, at det ikke er svært at afkode disse data; det kræver blot en RTL-SDR-modtager, der koster omkring 8 $, tilsluttet en computer. Idéen er allerede formentlig klar — hvis man indsamler data fra mange modtagere, får man et billede, der ser nogenlunde sådan her ud:

Men det er ikke alt. Nogle fly sender datapakker, men disse indeholder ikke GPS-koordinater. Hvis man modtager data samtidig fra mange modtagere, hvis koordinater er kendt, kan man ved at analysere forsinkelserne på de forskellige modtagere finde luftfartøjernes placering. Denne teknologi kaldes multilateration (MLAT), og man kan læse mere om den. .
Og endelig, det sidste spørgsmål — hvordan modtages dataene. Svaret er enkelt; enhver, der ønsker det, kan placere en modtager hos sig selv, og prisen for at gøre det ligger mellem 0 og 50 $. For eksempel ser kortet over modtagere fra Flightaware sådan her ud:

Som man kan se, er dækningen i den russiske del ikke den bedste, så nogle har helt klart chancen for at være de første.
For at modtage data kræves:
— Raspberry Pi 2/3 med internetforbindelse (pris fra 20 $)
— RTL-SDR-dongle (pris fra 10 $)
— mindst en simpel antenne lavet af 2 stykker ledning på 6,8 cm hver (1/4 dipol ved 1090 MHz)
Det er også ønskeligt at have et sted med en nogenlunde åben udsigt til dele af himlen, da signaler i gigahertzfrekvenser bliver absorberet af forhindringer som bygninger eller træer.
Jeg havde både en Raspberry Pi og en RTL-SDR, så jeg havde ikke brug for at købe noget. Men enhver kan gratis prøve at få en færdig modtager — både Flightradar og Flightaware sender gratis sæt til brugere i de områder, hvor dækningen lige nu er utilstrækkelig. Du kan sende en anmodning via linket ( eller ), selvfølgelig er det fornuftigt at prøve for dem, der bor i tilstrækkeligt afsides områder.
Jeg brugte et sæt med RTL-SDR V3, som sammen med en antenne og et mini-stativ kostede 27$ med gratis levering fra Kina:

Forresten, som et andet bonus, giver både Flightradar24 og Flightaware alle, der sender data til serveren, ubegrænset adgang til premium-kontoen og alle serverens funktioner (adgang til sådan en koster normalt omkring 50$ i måneden). Så hvis nogen er interesseret i luftfart og ønsker udvidet adgang til en sådan konto, er installationen af en RTLSDR-modtager en ret billig løsning.
Testning
Installation er ganske enkel, på Raspberry Pi skal du blot tilslutte modtageren og køre en kommando:
sudo bash -c "$(wget -O - http://repo.feed.flightradar24.com/install_fr24_rpi.sh)"Scriptet vil anmode om de nødvendige oplysninger (koordinater og type modtager, e-mailadresse), herefter vil softwaren køre automatisk, og brugeren skal ikke længere være opmærksom. Du kan samtidig aktivere premium-kontoen (for FR24 via linket ) og straks bruge alle dets funktioner (flyspor osv.).
Du kan gå til IP-adressen på Raspberry Pi og se den nuværende status:

Meget mere information kan ses på Flightradar24-kontoen:

Jeg bor på 6. sal relativt tæt på lufthavnen, så antallet af observerede fly om dagen var mere end 1000, selv med en simpel antenne på vinduet. Det er interessant, at selv med en sådan antenne var den maksimale rækkevidde til det modtagne fly 215 miles. Forskellige antennevarianter kan findes på ebay ved at søge på ads-b antenne.
Alternativ
Bonus til dem, der har haft tålmodighed til at læse til her. Nogle læsere måtte måske spørge: kan man undvære tredjeparts tjenester som Flightradar? Selvfølgelig kan man, man kan starte en dekoder på Raspberry Pi direkte. Kildekoderne kan downloades på adressen .
Bare skriv 3 kommandoer på Raspberry Pi:
git clone https://github.com/antirez/dump1090.git
cd dump1090/
makeDerefter kan dekoderen startes med kommandoen:
.\/dump1090 --interactive --netDekoderen begynder at arbejde, og vi ser "rå data" — en liste over synlige "fly":

Nu kan man gå ind i browseren på Raspberry Pi og beundre sit eget, lokale Flightradar, billedet kan se nogenlunde sådan ud:

Hvorfor kunne dette være nødvendigt? For det første ud af ren interesse, for det andet filtrerer Flightradar24 desværre en del data og viser ikke alle fly (for eksempel kan militære, regerings- eller business-jets være usynlige). Ved at starte en egen lokal tjeneste ser vi alt, "som det er", uden nogen former for censur. Dog er datamængden naturligvis begrænset af vores lokale placering og kvaliteten af antennen, og teknologien MLAT vil desuden ikke være tilgængelig. Dump1090 er tilgængelig i kildekoden, så interesserede kan endda lave deres egen version af Flightradar, med blackjack og andre lækkerier.
Konklusioner
Som man kan se, er alt ikke så kompliceret, og det er faktisk ganske interessant og billigt. For at forstå prisniveauet: for 10 år siden kostede Airnav RadarBox-modtageren omkring 1000$, nu kan man få RTL-SDR, som gør det samme, for 10$.
I mit tilfælde var modtageren kun startet for testformål, der er ikke praktisk mening i at holde den konstant tændt, da dækningsgraden i den europæiske del allerede når 100%. For beboere i de russiske dybder kan dette derimod være ganske interessant — der åbner sig muligheden for både at gøre en nyttig tjeneste for flyrejsefanatikere over hele verden ved at udvide dækningsområdet, og for at få adgang til et Premium-abonnement på de ovennævnte websteder.
Jeg ønsker alle held og lykke med eksperimenterne.
Kilde: habr.com
