Emulátor signálu navigacního systému GPS

| Kategorie: Diplomové, bakalářské práce  | Tento dokument chci!

Práce se zabývá principem satelitní navigace. Přibližuje problematiku určení polohy a nadmořské výšky na povrchu Země. Obsahuje rozbor navigačních zpráv a způsob zpracování navigačních signálů v GPS přijímačích. Dále jsou popsány návrh a realizace emulátoru navigačního signálu systému GPS v prostředí Matlab. Ten slouží kegenerování kompletních navigačních zpráv, které je možné vysílat pomocí univerzálního softwarového rádia. V poslední části práce je proveden rozbor těchto signálů zachycených pomocí druhého softwarového rádia.

Vydal: FEKT VUT Brno Autor: Jan Hofman

Strana 53 z 69

Vámi hledaný text obsahuje tato stránku dokumentu který není autorem určen k veřejnému šíření.

Jak získat tento dokument?






Poznámky redaktora
spektru projeví posunem minim kmitočtu 1,023 MHz, tak jak znázorněno obrázku 28. obrázku lze odečíst např. Jelikož kladný, bude celé spektrum posunuto doprava, tak jak znázorněno obrázku 28. Funkce timeseries přiřadí každému vzorku čas. Bez Dopplerova posunu by byl vektor času vytvořen takto: t 0:1/fvz:1e-3-1/fvz; kde fvz vzorkovací kmitočet C/A kódu, tedy 4,096 MHz. Nyní třeba posunou celé spektrum podle znaménka Dopplerova posunu. Při vzorkovacím kmitočtu 4,096 MHz však rozestup mezi vzorky 244,14 ns, proto zkrácení 91,903 na signálu nijak neprojeví. Tato operace vede „zkrácení“ nebo „prodloužení“ signálu, podle toho zda se družice přibližuje nebo vzdaluje. Tento jev je realizován při převzorkování signálu. Celý 12,5 minutový signál zkrácen 2775 vzorků, odpovídá při vzorkovacím kmitočtu MHz rozdílu délce signálu 0,6938 ms. . Pro převzorkování jsou použity funkce timeseries a resample. Místo 750 bude tento signál dlouhý jen 749,9993 Znamená zkrátit C/A posloupnost 0,6893/(750∙1000), 91,903 ns. Pokud označí změna délky jako počet vzorků C/A kódu jako delka, lze časový vektor vytvořit signál převzorkovat takto: t 0:(1/fvz)-(zm/fvz):((1/fvz)-(zm/fvz))*(delka-1); ts1 timeseries(CACode, 'Name', 'speed'); res_ts resample(ts1, 0:1/fvz1:max(t)); CACode res_ts. Takto upravený C/A kód však stále nelze použít pro rozprostření dat.Data; Proměnná CACode obsahuje nejdříve desetisekundový záznam C/A kódu o vzorkovacím kmitočtu 4,096 MHz, převzorkování kmitočet fvz1 MHz nemá výsledný vektor délku 40∙106 vzorků, ale kratší 9,1903 /250 ns, 37 vzorků. Rozdíl ve vzdálenosti, který vznikne zaokrouhlováním, je: 0,6893 0,6938 1349c .42 Jak bylo vysvětleno kapitole 2.3, při změně vzdálenosti mezi družicí a pozorovatelem dochází „natahování“ nebo „smršťování“ signálů. Předchozí operací došlo posunu těchto minim. Spektrum C/A kódu tvar funkce sinx minimy násobcích 1,023 MHz. V případě byla použitá kratší posloupnost C/A kódu než sekund, rostla by nepřesnost vzniklá zaokrouhlováním. Pro takto dlouhý signál změna jeho délky 9,1903 μs. Pro výše uvedenou družici SVN32 byl vypočítán Dopplerův posun 8564 Hz. Vlivem zaokrouhlování počtu vzorků celá čísla došlo zkrácení signálu jiný čas, než byl vypočítán. Dopplerův posun dále způsobí posun spektra mimo frekvenci nosné 1575,42 MHz. Délka sekvence sekund byla zvolena jako kompromis mezi výpočetní náročností a přesností výpočtu. pro družice SVN32, počátku vysílání zpoždění signálu 70,2236 na konci 69,5343 ms. Během vysílání navigační zprávy musí být tento signál zkrácen o 0,6893 ms. Delší sekvence dále snížila nepřesnost ve výsledku, ale pro převzorkování delšího signálu potřeba RAM paměť větší než GB. Do této chvíle byl signál zpracováván časové oblasti, nyní však vhodnější přejít do oblasti frekvenční. Pro odstranění problému krátkým časovým zpožděním C/A kódu před převzorkováním vytvořena desetisekundová posloupnost C/A kódu