Hei Habr!
În prezent, nu există multe standarde de comunicare care, pe de o parte, sunt curioase și interesante, pe de altă parte, descrierea lor nu ocupă 500 de pagini în format PDF. Un astfel de semnal care este ușor de decodat este semnalul VHF Omni-directional Radio Beacon (VOR) utilizat în navigația aeriană.
VOR Beacon (c) wikimedia.org
În primul rând, o întrebare pentru cititori: cum se generează un semnal, astfel încât direcția să poată fi determinată folosind o antenă de recepție omnidirecțională? Răspunsul este sub tăietură.
Informații generale
Sistem
Plasarea unei antene direcționale pe un avion este incomod din punct de vedere structural, așa că a apărut problema modului de codificare a informațiilor despre direcția către far în semnalul în sine. Principiul de funcționare „pe degete” poate fi explicat după cum urmează. Să ne imaginăm că avem un far obișnuit care emite un fascicul îngust de lumină verde, a cărui lampă se rotește o dată pe minut. Evident, o dată pe minut vom vedea un fulger de lumină, dar un astfel de bliț nu poartă prea multe informații. Să adăugăm un al doilea la far nedirectional o lampă roșie care clipește în momentul în care fasciculul farului „trece” direcția spre nord. Deoarece se cunoaște perioada fulgerelor și coordonatele farului; calculând întârzierea dintre fulgerările roșii și verzi, puteți afla azimutul spre nord. E simplu. Rămâne să faci același lucru, dar folosind radioul. S-a rezolvat prin schimbarea fazelor. Pentru transmisie sunt folosite două semnale: faza primului este constantă (de referință), faza celui de-al doilea (variabilă) se modifică într-un mod complex în funcție de direcția radiației - fiecare unghi are propriul său defazaj. Astfel, fiecare receptor va primi un semnal cu „propriul” defazaj, proporțional cu azimutul farului. Tehnologia „modulației spațiale” este realizată folosind o antenă specială (Alford Loop, vezi KDPV) și o modulare specială, destul de complicată. Care este de fapt subiectul acestui articol.
Să ne imaginăm că avem un far obișnuit, care funcționează din anii 50 și care transmite semnale în modulație AM obișnuită în cod Morse. Probabil că, pe vremuri, navigatorul a ascultat efectiv aceste semnale în căști și a marcat direcțiile cu o riglă și o busolă pe hartă. Dorim să adăugăm noi funcții semnalului, dar în așa fel încât să nu „rupem” compatibilitatea cu cele vechi. Subiectul este familiar, nimic nou... S-a făcut în felul următor - semnalului AM a fost adăugat un ton de joasă frecvență de 30 Hz, îndeplinind funcția de semnal de fază de referință, și o componentă de înaltă frecvență, codificată după frecvență. modulație la o frecvență de 9.96 KHz, transmitând un semnal de fază variabilă. Selectând două semnale și comparând fazele, obținem unghiul dorit de la 0 la 360 de grade, care este azimutul dorit. În același timp, toate acestea nu vor interfera cu ascultarea farului „în mod obișnuit” și rămân compatibile cu receptoarele AM mai vechi.
Să trecem de la teorie la practică. Să lansăm receptorul SDR, să selectăm modulația AM și lățimea de bandă de 12 KHz. Frecvențele balizelor VOR pot fi găsite cu ușurință online. Pe spectru, semnalul arată astfel:
În acest caz, semnalul de baliză este transmis la o frecvență de 113.950 MHz. În centru puteți vedea linia de modulație a amplitudinii ușor de recunoscut și semnalele de cod Morse (.- - ... ceea ce înseamnă AMS, Amsterdam, Aeroportul Schiphol). În jurul valorii de la o distanță de 9.6 KHz de purtător, sunt vizibile două vârfuri care transmit al doilea semnal.
Să înregistrăm semnalul în WAV (nu MP3 - compresia cu pierderi va „ucide” întreaga structură a semnalului) și să-l deschidem în GNU Radio.
Decodare
Pasul 1. Să deschidem fișierul cu semnalul înregistrat și să îi aplicăm un filtru trece jos pentru a obține primul semnal de referință. Graficul GNU Radio este prezentat în figură.
Rezultat: semnal de joasă frecvență la 30 Hz.
Pasul 2: decodifică semnalul de fază variabilă. După cum s-a menționat mai sus, este situat la o frecvență de 9.96 KHz, trebuie să-l mutăm la frecvența zero și să-l transmitem demodulatorului FM.
Graficul GNU Radio:
Gata, problema rezolvata. Vedem două semnale, a căror diferență de fază indică unghiul de la receptor la farul VOR:
Semnalul este destul de zgomotos și poate fi necesară o filtrare suplimentară pentru a calcula în final diferența de fază, dar sper că principiul este clar. Pentru cei care au uitat cum se determină diferența de fază, o poză din
Din fericire, nu trebuie să faceți toate acestea manual: există deja
Cei interesați pot rula programul în consolă și pot obține unghiul final în grade din fișierul deja înregistrat:
Fanii aviației își pot crea chiar și propriul receptor portabil folosind un RTL-SDR și un Raspberry Pi. Apropo, pe un plan „real” acest indicator arată cam așa:
Imagine ©
Concluzie
Astfel de semnale „din secolul trecut” sunt cu siguranță interesante pentru analiză. În primul rând, sunt destul de simple, moderne DRM sau, mai ales, GSM, nu se mai poate decoda „pe degete”. Sunt deschise acceptării și nu au chei sau criptografie. În al doilea rând, poate că în viitor vor deveni istorie și vor fi înlocuite de navigație prin satelit și sisteme digitale mai moderne. În al treilea rând, studierea unor astfel de standarde vă permite să aflați detalii tehnice și istorice interesante despre cum au fost rezolvate problemele folosind alte circuite și elemente de bază ale secolului trecut. Astfel, proprietarii de receptori pot fi sfătuiți să primească astfel de semnale în timp ce încă lucrează.
Ca de obicei, experimente fericite tuturor.
Sursa: www.habr.com