Čau Habr!
V súčasnosti nie je veľa komunikačných štandardov, ktoré sú na jednej strane kuriózne a zaujímavé, na druhej strane ich popis nezaberie 500 strán vo formáte PDF. Jedným z takýchto signálov, ktoré sa dajú ľahko dekódovať, je signál VHF všesmerového rádiového majáku (VOR), ktorý sa používa v leteckej navigácii.
VOR Beacon (c) wikimedia.org
Najprv otázka pre čitateľov: ako vygenerovať signál, aby sa smer dal určiť pomocou všesmerovej prijímacej antény? Odpoveď je pod rezom.
Všeobecné informácie
Systém
Umiestnenie smerovej antény na lietadlo je konštrukčne nepohodlné a tak vznikol problém, ako zakódovať informáciu o smere k majáku do samotného signálu. Princíp činnosti „na prstoch“ možno vysvetliť nasledovne. Predstavme si, že máme obyčajný maják, ktorý vysiela úzky lúč zeleného svetla, ktorého lampa sa otáča 1 krát za minútu. Je zrejmé, že raz za minútu uvidíme záblesk svetla, ale jeden taký záblesk nenesie veľa informácií. Pridajme k majáku druhú nesmerové červená lampa, ktorá bliká v momente, keď lúč majáka „prejde“ smerom na sever. Pretože perióda zábleskov a súradnice majáku sú známe, vypočítaním oneskorenia medzi červeným a zeleným zábleskom môžete zistiť azimut na sever. Je to jednoduché. Zostáva urobiť to isté, ale pomocou rádia. Vyriešilo sa to zmenou fáz. Na prenos sa používajú dva signály: fáza prvého je konštantná (referenčná), fáza druhého (premenná) sa komplexne mení v závislosti od smeru žiarenia – každý uhol má svoj fázový posun. Každý prijímač teda dostane signál s „vlastným“ fázovým posunom, úmerným azimutu k majáku. Technológia „priestorovej modulácie“ sa vykonáva pomocou špeciálnej antény (Alford Loop, pozri KDPV) a špeciálnej, pomerne zložitej modulácie. Čo je vlastne témou tohto článku.
Predstavme si, že máme obyčajný starý maják, ktorý funguje od 50. rokov a vysiela signály v bežnej AM modulácii v Morseovej abecede. Pravdepodobne niekedy navigátor skutočne počúval tieto signály v slúchadlách a značil smery pomocou pravítka a kompasu na mape. Chceme do signálu pridať nové funkcie, ale tak, aby sme „nenarušili“ kompatibilitu so starými. Téma je známa, nič nové... Urobilo sa to nasledovne - k AM signálu bol pridaný nízkofrekvenčný tón 30 Hz, plniaci funkciu signálu referenčnej fázy, a vysokofrekvenčná zložka, zakódovaná frekvenciou modulácia na frekvencii 9.96 KHz, vysielajúca signál s premenlivou fázou. Výberom dvoch signálov a porovnaním fáz získame požadovaný uhol od 0 do 360 stupňov, čo je požadovaný azimut. To všetko zároveň nebude narúšať počúvanie majáku „bežným spôsobom“ a zostáva kompatibilné so staršími AM prijímačmi.
Prejdime od teórie k praxi. Spustíme prijímač SDR, zvolíme AM moduláciu a šírku pásma 12 kHz. Frekvencie majákov VOR sa dajú ľahko nájsť online. Na spektre vyzerá signál takto:
V tomto prípade je signál majáku vysielaný na frekvencii 113.950 MHz. V strede je vidieť ľahko rozpoznateľnú amplitúdovú modulačnú čiaru a signály Morseovej abecedy (.- - ... čo znamená AMS, Amsterdam, letisko Schiphol). Približne vo vzdialenosti 9.6 kHz od nosiča sú viditeľné dva vrcholy, ktoré vysielajú druhý signál.
Nahrajme signál vo formáte WAV (nie MP3 - stratová kompresia „zabije“ celú štruktúru signálu) a otvorme ho v GNU Radio.
Dekódovanie
Krok 1. Otvorme súbor so zaznamenaným signálom a aplikujme naň dolnopriepustný filter, aby sme získali prvý referenčný signál. Graf rádia GNU je znázornený na obrázku.
Výsledok: nízkofrekvenčný signál pri 30 Hz.
Krok 2: dekódovanie signálu s premenlivou fázou. Ako už bolo spomenuté vyššie, nachádza sa na frekvencii 9.96 KHz, musíme ju presunúť na nulovú frekvenciu a napájať na FM demodulátor.
Rádiový graf GNU:
To je všetko, problém vyriešený. Vidíme dva signály, ktorých fázový rozdiel udáva uhol medzi prijímačom a majákom VOR:
Signál je dosť zašumený a na konečný výpočet fázového rozdielu môže byť potrebné dodatočné filtrovanie, ale dúfam, že princíp je jasný. Pre tých, ktorí zabudli, ako sa určuje fázový rozdiel, obrázok z
Našťastie to všetko nemusíte robiť ručne: už existuje
Záujemcovia môžu spustiť program v konzole a získať hotový uhol v stupňoch z už zaznamenaného súboru:
Fanúšikovia letectva si dokonca môžu vyrobiť svoj vlastný prenosný prijímač pomocou RTL-SDR a Raspberry Pi. Mimochodom, v „skutočnej“ rovine tento indikátor vyzerá asi takto:
Obrázok ©
Záver
Takéto signály „z minulého storočia“ sú určite zaujímavé na analýzu. Po prvé, sú celkom jednoduché, moderné DRM alebo najmä GSM, už nie je možné dekódovať „na prstoch“. Sú otvorení akceptovaniu a nemajú žiadne kľúče ani kryptografiu. Po druhé, možno sa v budúcnosti stanú históriou a nahradia ich satelitná navigácia a modernejšie digitálne systémy. Po tretie, štúdium takýchto noriem vám umožňuje dozvedieť sa zaujímavé technické a historické podrobnosti o tom, ako sa problémy riešili pomocou iných obvodov a prvkov z minulého storočia. Vlastníkom prijímačov teda možno odporučiť, aby prijímali takéto signály, kým ešte pracujú.
Ako obvykle, šťastný experimentuje každý.
Zdroj: hab.com