Určujeme směr k letišti pomocí RTL-SDR a GNU Radio

Ahoj, Habr!

V současnosti existuje jen několik standardů komunikace, které jsou na jedné straně zajímavé a fascinující, ale na druhé straně jejich popis nezabere 500 stran v PDF formátu. Jedním z takových, snadno dekódovatelných, je signál VHF Omni-directional Radio Beacon (VOR), používaný v letecké navigaci.

Určujeme směr k letišti pomocí RTL-SDR a GNU Radio
VOR Beacon (c) wikimedia.org

Nejprve otázka pro čtenáře - jak vytvořit signál tak, aby bylo možné pomocí nenamířené přijímací antény určovat směr? Odpověď uvnitř.

Obecné informace

Systém Very high frequency Omni-directional Range (VOR) se používá v letecké navigaci už od 50. let minulého století a skládá se z rádiových majáků relativně malé vzdálenosti (100-200 km), které pracují v rozsahu frekvencí VHF 108-117 MHz. Dnes, v éře gigahertzů, zní název very high frequency pro takové frekvence legračně a sám o sobě napovídá o stáří tohoto standardu, ale mimochodem, stále fungují majáky NDB, které pracují v rozsahu středních vln 400-900 kHz.

Umístění směrové antény na letadle je konstrukčně obtížné, proto vznikl úkol, jak zakódovat v samotném signálu informace o směru k majáku. Princip fungování lze „na prstech“ vysvětlit následujícím způsobem. Představme si, že máme běžný maják, který vysílá úzký paprsek zeleného světla, jehož lampa se otáčí jednou za minutu. Je očividné, že jednou za minutu uvidíme záblesk světla, ale jeden takový záblesk nesmí mnoho informací. Přidáme k majáku druhou nenamířenou červenou lampu, která se rozsvítí v okamžiku, kdy paprsek majáku "prochází" směrem na sever. Vzhledem k tomu, že je znám interval záblesků a souřadnice majáku, lze spočítat zpoždění mezi červenými a zelenými záblesky a zjistit azimut na sever. Je to jednoduché. Zbývá udělat to samé, ale pomocí rádia. To bylo vyřešeno pomocí změny fází. Pro přenos se používají dva signály: fáze prvního je konstantní (reference), fáze druhého (proměnlivá) se mění složitým způsobem v závislosti na směru vyzařování — každému úhlu odpovídá určitý posun fáze. Takto každý přijímač obdrží signál se "svým" posunem fáze, úměrným azimutu k majáku. Technologie "prostorové modulace" se realizuje pomocí speciální antény (Alford Loop, viz KDPV) a zvláštní, poměrně chytré modulace. Ta je vlastně tématem tohoto článku.

Představme si, že máme běžný legacy maják, který funguje od 50. let a vysílá signály v běžné AM modulaci Morseovou abecedou. Pravděpodobně si dávno navigátor opravdu tyto signály poslechl v sluchátkách a zaznamenal směry pravítkem a kružítkem na mapě. Chceme signálu přidat nové funkce, ale tak, aby "neporušily" kompatibilitu se starými. Téma je známé, nic není nové... Bylo to uděláno následujícím způsobem — k AM signálu byl přidán nízkofrekvenční tón 30 Hz, který plní funkci reference-fáze signálu, a vysokofrekvenční složka, zakódovaná frekvenční modulací na frekvenci 9,96 kHz, přenášející proměnlivou fázi signálu. Oddělením dvou signálů a porovnáním fází získáváme požadovaný úhel od 0 do 360 stupňů, který je požadovaným azimutem. Přitom, to vše nebrání poslouchat maják "obyčejným způsobem" a zůstává kompatibilní se starými AM přijímači.

Přejděme od teorie k praxi. Spusťme SDR přijímač, vyberme modulaci AM a šířku pásma 12 kHz. Frekvence majáků VOR lze snadno nalézt na internetu. Na spektru signál vypadá následovně:

Určujeme směr k letišti pomocí RTL-SDR a GNU Radio

V tomto případě je signál majáku přenášen na frekvenci 113,950 MHz. Uprostřed je snadno rozpoznatelná čára amplitudové modulace a signály Morseovou abecedou (.- — … což znamená AMS, Amsterdam, letiště Schiphol). Kolem na vzdálenosti 9,6 kHz od nosné jsou vidět dva vrcholy, které přenášejí druhý signál.

Zapíšeme signál do WAV (ne MP3 — ztráta při kompresi „zabije“ celou strukturu signálu) a otevřeme ho v GNU Radio.

Dekódování

Krok 1. Otevřeme soubor se zaznamenaným signálem a aplikujeme na něj dolní propust, abychom získali první referenční signál. Graf GNU Radio je zobrazen na obrázku.

Určujeme směr k letišti pomocí RTL-SDR a GNU Radio

Výsledek: nízkofrekvenční signál o frekvenci 30 Hz.

Určujeme směr k letišti pomocí RTL-SDR a GNU Radio

Krok 2: dekódujeme signál s proměnnou fází. Jak již bylo zmíněno, nachází se na frekvenci 9,96 kHz, musíme ho posunout na nulovou frekvenci a poslat na FM-demodulátor.

Graf GNU Radio:

Určujeme směr k letišti pomocí RTL-SDR a GNU Radio

Všechno, úloha je vyřešena. Vidíme dva signály, jejichž rozdíl fází ukazuje na úhel od přijímače k VOR majáku:

Určujeme směr k letišti pomocí RTL-SDR a GNU Radio

Signál je dost šumový a pro konečné výpočty rozdílu fází může být potřeba další filtrování, ale princip doufám, že je jasný. Pro ty, kteří zapomněli, jak se určuje rozdíl fází, obrázek z aviation.stackexchange.com:

Určujeme směr k letišti pomocí RTL-SDR a GNU Radio

Naštěstí to všechno není nutné dělat ručně: již existuje hotový projekt v Pythonu, který dekóduje VOR signály z WAV souborů. Vlastně, jeho studium mě inspirovalo k prozkoumání tohoto tématu.

Ti, kteří mají zájem, mohou spustit program v konzoli a získat hotový úhel ve stupních z již zaznamenaného souboru:

Určujeme směr k letišti pomocí RTL-SDR a GNU Radio

Fanoušci letectví si mohou dokonce vytvořit přenosný přijímač pomocí RTL-SDR a Raspberry Pi. Mimochodem, na „skutečném“ letadle vypadá tento ukazatel přibližně takto:

Určujeme směr k letišti pomocí RTL-SDR a GNU Radio
Obrázek © www.aopa.org

Závěr

Takové signály „z minulého století“ jsou jistě zajímavé pro analýzu. Za prvé, jsou dost jednoduché, moderní DRM nebo tím spíše GSM již takto „na prstech“ dekódovat nepůjde. Jsou otevřené pro příjem, neobsahují žádné klíče a kryptografii. Za druhé, je možné, že v budoucnu zmizí do historie a budou nahrazeny satelitní navigací a modernějšími digitálními systémy. Za třetí, studium takových standardů umožňuje zjistit zajímavé technické a historické podrobnosti o tom, jak byly úkoly řešeny na jiných schématech a elementární základně minulého století. Takže majitelům přijímačů lze doporučit, aby přijímali takové signály, dokud ještě fungují.

Jak obvykle, všem úspěšné experimenty.

Zdroj: habr.com

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster