Snad každý, kdo alespoň jednou doprovázel nebo vyprovázel příbuzné či přátele na letiště, použil bezplatnou službu Flightradar24. Je to velmi pohodlný způsob, jak sledovat polohu letadla v reálném čase.

Jak ukázal průzkum mezi známými, velmi málo kdo ví, že tuto službu podporují pouze nadšenci, kteří posílají data na server. Ještě méně lidí ví, že se může připojit k projektu kdokoliv.
Vyplníme tuto mezeru. O tom, jak to funguje, budeme pokračovat níže.
Hardware
Nejdůležitější otázka — odkud pocházejí data.
Každé civilní letadlo je vybaveno speciálním vysílačem, takzvaným ADS-B transponderem:

(foto z webu Garmin)
Toto zařízení vysílá na frekvenci 1090 MHz speciální zprávy, které obsahují základní údaje o letu, typ letadla, jeho souřadnice, cílové místo a další.
Signál na spektru vypadá přibližně takto:

A co je pro nás nejdůležitější, dekódování těchto dat není složité, stačí RTL-SDR přijímač za přibližně 8 $, připojený k počítači. Vlastně je už asi jasné, že pokud shromáždíme data z mnoha přijímačů, získáme obrázek, přibližně takovýto:

Ale to ještě není všechno. Některá letadla přenášejí datové pakety, ale chybí v nich GPS souřadnice. Pokud přijímáme data současně z mnoha přijímačů, jejichž souřadnice známe, pak analýzou zpoždění na různých přijímačích můžeme zjistit polohu vzdušného plavidla. Tato technologie se nazývá multilaterace (MLAT), o které si můžete přečíst více. .
A konečně poslední otázka — jak se data přijímají. Odpověď je jednoduchá, přijímač si může umístit kdokoliv, cena se pohybuje od 0 do 50 $. Pro příklad, takto vypadá mapa přijímačů služby Flightaware:

Jak je vidět, pokrytí ruské části není příliš dobré, takže někteří mohou mít šanci být první.
Pro přijímání dat jsou potřebné:
— Raspberry Pi2/3 s připojeným internetem (cena od 20 $)
— RTL-SDR dongle (cena od 10 $)
— alespoň základní anténa z 2 kusů drátu o délce 6,8 cm každý (1/4 dipól na 1090 MHz)
Také je žádoucí mít místo s více méně otevřeným výhledem na část oblohy, protože signály gigahertzových frekvencí jsou absorbovány překážkami jako jsou domy nebo stromy.
Mám Raspberry Pi a RTL-SDR, takže jsem nic nemusel kupovat. Ale kdokoli si může zdarma vyzkoušet hotový přijímač — jak Flightradar, tak Flightaware nabízejí sady zdarma uživatelům z oblastí, kde momentálně není dostatečné pokrytí. Žádost můžete poslat pomocí odkazu ( nebo ), samozřejmě to zkoušet má smysl, pokud žijete v dostatečně odlehlé oblasti.
Používal jsem sadu od RTL-SDR V3, která spolu s anténou a mini-stativem stála 27 $ s bezplatnou dopravou z Číny:

Mimochodem, jako druhý bonus, všem, kteří posílají data na server, Flightradar24 a Flightaware poskytují neomezený přístup k prémiovému účtu a ke všem funkcím serveru (takový přístup obvykle stojí kolem 50 $/měsíc). Takže pokud někdo má zájem o letectví a chce mít rozšířený přístup k takovému účtu, instalace RTLSDR přijímače je celkem levná alternativa.
Testování
Instalace je velmi jednoduchá, na Raspberry Pi stačí připojit přijímač a spustit jeden příkaz:
sudo bash -c "$(wget -O - http://repo.feed.flightradar24.com/install_fr24_rpi.sh)"Skript požádá o potřebné údaje (souřadnice a typ přijímače, e-mailovou adresu), poté bude software fungovat automaticky, pozornost uživatele není více vyžadována. Současně můžete aktivovat prémiový účet (pro FR24 pomocí odkazu ) a hned využívat všechny jeho možnosti (sledování letů atd.).
Můžete přejít na stránku s IP adresou Raspberry Pi a vidět aktuální stav:

Další informace můžete vidět na stránce účtu Flightradar24:

Bydlím ve 6. patře relativně nedaleko letiště, takže počet pozorovaných letadel za den přesáhl 1000, dokonce i s jednoduchou anténou na okenním parapetu. Zajímavé je, že i s takovou anténou byla maximální vzdálenost přijatého letadla 215 mil. Různé varianty antén můžete najít na ebay, když do vyhledávání zadáte ads-b antenna.
Alternativa
Bonus pro ty, kteří měli dost trpělivosti, aby dočetli až sem. Někteří čtenáři se mohou ptát: lze se obejít bez externích služeb jako Flightradar? Samozřejmě, můžete spustit dekodér na Raspberry Pi i přímo. Zdrojové kódy si můžete stáhnout na adrese .
Stačí na Raspberry Pi zadat 3 příkazy:
git clone https://github.com/antirez/dump1090.git
cd dump1090/
makePoté lze dekodér spustit příkazem:
.\/dump1090 --interactive --netDekodér začne pracovat a my uvidíme "surová data" — seznam viditelných "letadel":

Nyní se můžeme připojit přes prohlížeč na Raspberry Pi a obdivovat vlastní, lokální Flightradar, obrázek může vypadat přibližně takto:

Proč by to mohlo být užitečné? Zaprvé, prostě ze zvědavosti, a zadruhé, Flightradar24 bohužel filtruje část dat a zobrazuje ne všechna letadla (například vojenská, vládní nebo business jet). Spuštěním vlastního lokálního servisu vidíme vše "tak, jak to je", bez jakékoli cenzury. Nicméně, objem dat je samozřejmě omezen naši lokální polohou a kvalitou antény, a technologie MLAT nebude také dostupná. Dump1090 je k dispozici v исходниках, takže ti, kteří chtějí, mohou dokonce vytvořit vlastní verzi Flightradar, s blackjackem a dalšími vychytávkami.
Závěry
Jak vidíte, nic není tak složité a zároveň je to docela zajímavé a levné. Pro pochopení cenového rozmezí: před 10 lety stál přijímač Airnav RadarBox přibližně 1000$, nyní RTL-SDR, který dělá to samé, lze pořídit za 10$.
V mém případě byl přijímač spuštěn pouze pro testování, nemá smysl jej mít trvale zapnutý, hustota pokrytí evropské části už nyní dosahuje 100%. Pro lidi ve vzdálených oblastech Ruska, naopak, to může být docela zajímavé — objevuje se příležitost jak udělat užitečnou práci pro letecké cestovatele po celém světě, rozšířením zóny pokrytí, tak i získat přístup k prémiovému účtu výše zmíněných webů.
Všem přeji úspěšné experimenty.
Zdroj: habr.com
