Nmea protokol spracováva zdrojový kód. Popis protokolu NMEA

Potreboval som otestovať aplikáciu, ktorá využíva údaje GNSS cez protokol NMEA. Bolo to spôsobené tým, že som pracoval na projekte pre letecký navigačný program, testovanie vo vzduchu je prirodzene drahé, riadiť auto s GNSS prijímačom na zemi nie je obzvlášť pohodlné, takže som chcel mať údaje protokolu NMEA z údajného pohybu zariadenia na virtuálnom paralelnom porte, keď som sedel pri mojom stole. Najprv som hľadal iný softvér, myslel som, že nájdem niečo vhodné, ale väčšina je platená a ovládacie prvky emulácie dát nie sú príliš pohodlné, hoci emulujú takmer všetky parametre štandardu NMEA. Potreboval som však niečo jednoduché, čo by emulovalo súradnice, rýchlosť, v podstate nič viac, a potreboval som pomerne pohodlné a logické ovládanie. Takže som musel napísať aplikáciu tohto druhu v C#.

Fly_nmea


NMEA („National Marine Electronics Association“) – celý názov je „NMEA 0183“ – textový protokol na komunikáciu medzi námornými (zvyčajne navigačnými) zariadeniami.
Údaje sa prenášajú vo forme viet. Formát návrhu je nasledovný:
$AAAAA[,<данные>]*hh , Kde:
$ - symbol začiatku vety (kód 24h);
AAAAA - Päťznaková adresa (názov) ponuky;
[, <данные>] - zoznam dátových polí oddelených čiarkami (kód 2Сh);
* - znak kontrolného súčtu (kód 2Ah);
hh - kontrolný súčet.

Príklad vety:
GGA – údaje o polohe GPS
Čas, miesto a údaje súvisiace s pozorovaním.
$GPGGA,hhmmss.sss,llll.ll,a,yyyy.yy,a,x,xx,x.x,x.x,M,x.x,M,x.x,xxx*hh

Potreboval som napodobniť štyri riadky:

  • GLL – súradnice polohy
  • GSV – viditeľné satelity
  • RMC – Odporúčaný minimálny súbor údajov pre GPS a GLONASS
  • GSA - Faktor zníženia presnosti používaný pre navigačné satelity
Emulácia je usporiadaná v nasledujúcom poradí:
  • nastavíme počiatočné súradnice v systéme WGS-84
  • potom prejdeme na plochú projekciu, napríklad Mercator (na prevod súradníc som použil hotovú knižnicu v C#)
  • Pri znalosti rovinných súradníc x, y, h implementujeme fyziku pohybu lietadla pomocou premenných parametrov cez grafické rozhranie, ako sú: náklon, sklon, rýchlosť
  • previesť ploché súradnice na súradnice B, L, H systému WGS-84
  • z požadovaných štyroch riadkov vytvoríme balík štandardných správ NMEA
  • poslať ich na virtuálny paralelný port
Fly_nmea + Android Sensor
Pre pohodlnejšie testovanie som upravil aj príjem dát z Android senzorov (uhly náklonu). Android posiela dva riadky ako:
  • "Uhol:\t236.04152\t-1.0\t-3.0"
  • "Acc:\t-0.46309182\t-0.14982383\t-10.56939"
V emulačnej aplikácii ich akceptujem a na základe uhlov sklonu zmením parametre:
  • Smola
V emulačnej aplikácii môžete prejsť z ovládania cez rozhranie programu na Android Sensor.
Pripojenie Fly_nmea
Na emuláciu COM portov je tiež užitočný emulátor virtuálnych sériových portov, budete musieť nakonfigurovať pripojenie dvoch virtuálnych COM portov, napríklad: COM1<->COM6 a program Fly_nmea odošle dáta do COM6 a do COM1 ich prijme program využívajúci protokol NMEA.

Záver

Vo všeobecnosti som strávil viac času hľadaním takéhoto softvéru a nenašiel som niečo, čo by ma úplne uspokojilo, rýchlo som to napísal sám. Okrem projektu, na ktorom som pracoval, sa mi podarilo pomerne úspešne prepojiť emulátor aj s programami, ktoré si rozumejú s protokolom NMEA, ako sú 2Gis a SAS planet.



FlyNMEA a android senzor (projekt na prenos dát zo senzorov cez UDP)

NMEA 0183(od " Národná asociácia námornej elektroniky") - norma, ktorá definuje textový protokol na vzájomnú komunikáciu námorných (zvyčajne navigačných) zariadení (alebo zariadení používaných vo vlakoch). Obľúbeným sa stal najmä vďaka rozšíreniu GPS prijímačov využívajúcich tento štandard.

Celkový pohľad na čiary v NMEA 0183

  • symbol "$" alebo "!" (hex 24 alebo hex 21)
  • 5-písmenové ID správy. Prvé dve písmená sú identifikátor zdroja správy, ďalšie tri písmená sú identifikátor formátu správy podľa protokolu NMEA 0183 určitej verzie.
  • zoznam údajov (písmená, čísla a bodky) oddelené čiarkami. Ak chýbajú nejaké údaje vnútričiary sú stále umiestnené (napríklad „,“). Niektoré polia nakoniec riadky môžu úplne chýbať.
  • symbol "*".
  • osembitový XOR – súčet všetkých znakov (vrátane „,“ a „^“) v riadku medzi „$“ a „*“ prevedený na dve veľké ASCII znaky pre hexadecimálnu reprezentáciu bajtu (0–9, A –F).
  • (hex 0D, hex 0A).

Maximálna dĺžka správy je obmedzená na 82 znakov (NMEA 0183 rev 3.0)

Štandard popisuje viac ako 250 sekvenčných identifikátorov NMEA. Štandard definuje rýchlosť výmeny dát 4800 baudov. (Pre rýchlosti 38400 baudov a vyššie existuje rozšírený štandard NMEA-0183-HS).

Štandard umožňuje pridávať vlastné sekvenčné identifikátory, ktoré výrobcovia často používajú na sprostredkovanie dodatočných informácií o prevádzke zariadenia.

RMC reťazec (špeciálny príklad)

$GPRMC,hhmmss.sss,A,GGMM.MM,P,gggmm.mm,J,v.v, b.b, ddmmyy, x.x, n,m*hh

Hodnoty polí:

  • "GP" - identifikátor zdroja; v uvedenom príklade je to GPS, „GL“ – GLONASS, „GA“ – Galileo, „GN“ – GLONASS+GPS atď.
  • "RMC" - "Odporúčaná minimálna veta C"
  • „hhmmss.sss“ - čas určenia polohy podľa UTC: „hh“ - hodiny, „mm“ - minúty, „ss.sss“ - sekundy. Dĺžka zlomkových sekúnd je rôzna. Nie sú vynechané úvodné nuly.
  • "A" - stav: "A" - údaje sú spoľahlivé, "V" - nespoľahlivé.
  • "GGMM.MM" - zemepisná šírka. 2 číslice stupňov („GG“), 2 číslice celých minút, bodka a zlomková časť minút rôznej dĺžky. Nie sú vynechané úvodné nuly.
  • "P" - "N" pre severnú alebo "S" pre južnú šírku.
  • "gggmm.mm" - zemepisná dĺžka. 3 číslice stupňov (“ggg”), 2 číslice celých minút, bodka a zlomková časť minút premenlivej dĺžky. Nie sú vynechané úvodné nuly.
  • "J" - "E" pre východ alebo "W" pre západnú zemepisnú dĺžku.
  • "v.v" je horizontálna zložka rýchlosti vzhľadom na zem v uzloch. Číslo s pohyblivou rádovou čiarkou. Celé číslo a zlomkové časti premenlivej dĺžky.
  • "b.b" - uhol stopy (smer rýchlosti) v stupňoch. Číslo s pohyblivou rádovou čiarkou. Celé číslo a zlomkové časti premenlivej dĺžky. Hodnota 0 zodpovedá pohybu na sever, 90 na východ, 180 na juh, 270 na západ.
  • "ddmmyy" - dátum: deň v mesiaci, mesiac, posledné 2 číslice roka (vyžadujú sa úvodné nuly).
  • „x.x“ je magnetická deklinácia v stupňoch (často chýba), vypočítaná pomocou nejakého modelu. Číslo s pohyblivou rádovou čiarkou. Celé číslo a zlomkové časti premenlivej dĺžky.
  • „n“ - smer magnetickej deklinácie: na získanie magnetického kurzu musí byť magnetická deklinácia „E“ – odčítaná, „W“ – pridaná k skutočnému kurzu.
  • "m" - indikátor režimu: "A" - autonómny, "D" - diferenciál, "E" - aproximácia, "N" - nespoľahlivý údaj (často chýba, toto pole vrátane čiarky chýba v starších verziách NMEA).
  • "hh" - kontrolný súčet.
  • - bajt je 0x0D.
  • - bajt je 0x0A.

Príklady reťazcov RMC

Príklad 1

$GPRMC,125504,049,A,5542,2389,N,03741,6063,E,0,06,25,82,200906,*17

Hodnoty polí:

  • 12 hodín 55 minút 4,049 sekúnd UTC
  • "A" - spoľahlivé
  • 55° 42,2389", severnej zemepisnej šírky
  • dĺžka 37° 41,6063", vých
  • rýchlosť 0,06 uzla

NMEA (National Marine Electronics Association) 2000 je štandard prenosu údajov pre navigáciu, komunikáciu a iné zariadenia informačných sietí.

Vo väčšine prípadov sa NMEA2000 používa v námorných aplikáciách. Tento protokol je založený na protokole prenosu údajov MÔCŤ(Controller Area Network), používaná najmä v automatizácii lodí.

National Marine Electronics Association (NMEA) vyvinula špeciálny protokol na zabezpečenie kompatibility medzi námornými produktmi od rôznych výrobcov.

Protokol NMEA prešiel od svojho vzniku niekoľkými úpravami, aby zahŕňal nové polia a správy. Aktuálna verzia, ktorú väčšina prijímačov podporuje, je verzia 2.3, aj keď popis nového už bol zverejnený verzia 3.0.

správy NMEA

NMEA 2000 popisuje nielen získané údaje, ale aj merania , , barometre a iné navigačné zariadenia používané na lodiach. Rozhranie na výmenu údajov väčšiny prenosných prijímačov GPS je implementované v súlade so špecifikáciou NMEA. Väčšina navigačných programov, ktoré poskytujú podporu zobrazovania údajov v reálnom čase a „rozumie“ protokolu NMEA. Tieto údaje obsahujú kompletné navigačné merania GPS prijímača - polohu, rýchlosť a čas.

Kompletná špecifikácia správy NMEA nie je verejne dostupná a nemožno ju oficiálne stiahnuť elektronicky. Jeho jednotlivé časti, všeobecný popis protokolu NMEA a najobľúbenejšie správy nájdete na internete. Dokumentáciu NMEA si môžete oficiálne zakúpiť na webovej stránke //www.nmea.org/.

Odchádzajúce správy NMEA

Všetky správy NMEA pozostávajú zo sekvenčného súboru údajov oddelených čiarkami. Každá jednotlivá správa je nezávislá od ostatných a je úplne „kompletná“. Správa NMEA obsahuje:

  • titul,
  • množina údajov reprezentovaná znakmi ASCII,
  • pole „kontrolný súčet“ na kontrolu presnosti prenášaných informácií.

Smerovanie

Názov sa zvyčajne skladá z piatich znakov. Prvé dva znaky určujú typ správy a zvyšné tri označujú jej názov. Napríklad hlavička GPS NMEA správ začína na „GP“. Správy, ktoré nie sú opísané v špecifikácii NMEA, ale sú implementované v prijímačoch GPS podľa všeobecných pravidiel, majú predponu „P“, za ktorou nasledujú tri znaky jedinečné pre každú spoločnosť. Napríklad správy NMEA majú predponu „PGRM“, Magellan – „PMGN“.

Údaje

Každá správa NMEA začína „$“, končí „\n“ (riadkový posuv) a nemôže byť dlhšia ako 80 znakov. Všetky údaje sú uvedené na jednom riadku a oddelené čiarkami. Informácie sú prezentované vo forme ASCII textu a nevyžadujú špeciálne dekódovanie. Ak sa údaje nezmestia do pridelených 80 znakov, potom sa „rozdelia“ do niekoľkých správ. Tento formát umožňuje neobmedzovať presnosť a počet znakov v jednotlivých dátových poliach. Napríklad zlomková časť hodnoty súradnice môže byť vyjadrená tromi alebo štyrmi desatinnými miestami, ale to by nemalo žiadnym spôsobom ovplyvniť činnosť softvéru, ktorý zo správy extrahuje potrebné údaje podľa čísla poľa.

Pole „Kontrolný súčet“.

Na konci každého NMEA Správa obsahuje pole „kontrolný súčet“ oddelené od údajov symbolom „*“. V prípade potreby sa môže použiť na overenie integrity a platnosti každej prijatej správy.

Prichádzajúce správy NMEA

Protokol NMEA 2000 podporuje nielen odchádzajúce, ale aj prichádzajúce správy, pomocou ktorých môžete napríklad aktualizovať alebo pridávať body trasy. Tieto správy musia byť naformátované striktne vo formáte NMEA, inak budú ignorované.

zoznam správ

Protokol NMEA popisuje veľký zoznam rôznych správ, z ktorých sú dva tucty, ktoré sa aktívne používajú v navigačných zariadeniach. Pre veľkú obľubu a jednoduchú prezentáciu údajov našiel protokol NMEA uplatnenie nielen v námorných zariadeniach, ale aj v geodetických, domácich a leteckých GPS prijímačoch.

AAM - Príchod na Waypoint
ALM – údaje almanachu
APA – údaje autopilota „A“
APB – údaje autopilota „B“
BOD – smer do cieľa
DTM – Dátum sa používa
GGA – Fixed Solution Information
GLL – údaje o zemepisnej šírke a dĺžke
GSA – Všeobecné informácie o satelite
GSV – Podrobné informácie o satelite
MSK – Prenos riadenia na základný prijímač
MSS – Základný stav prijímača
RMA – Odporúčaný súbor údajov Loran
RMB – Odporúčaný súbor údajov navigácie GPS
RMC – Odporúčaný minimálny súbor údajov GPS
RTE – informácie o trase
VTG – Motion and Velocity Vector
WCV – údaje o rýchlosti blízko trasového bodu
WPL – údaje o trasových bodoch
XTC – Off Track Error
XTE – nameraná chyba mimo trasy
ZTG – čas UTC a zostávajúci čas do príchodu do cieľa
ZDA - Dátum a čas

Niektoré správy NMEA môžu obsahovať rovnaké dátové polia alebo môžu úplne obsahovať údaje iných menších správ NMEA.

1. GGA – informácia o pevnom riešení.

Najpopulárnejšia a najpoužívanejšia správa NMEA poskytuje informácie o aktuálnom pevnom riešení - horizontálne súradnice, hodnota nadmorskej výšky, počet použitých satelitov a typ riešenia.

$GPGGA, 123519,4807,038,N,01131,000,E,1,08,0,9,545,4,M,46,9,M,*47 Kde:

GGA – hlavička NMEA

123519 – čas UTC 12:35:19

4807,038, N – zemepisná šírka, 48 stupňov 7,038 minút severnej zemepisnej šírky

01131.000, E – zemepisná dĺžka, 11 stupňov 31.000 minút východnej zemepisnej dĺžky

1 – typ riešenia*, Samostatné riešenie

08 – počet použitých satelitov

0,9 – geometrický faktor, HDOP

545,4, M – nadmorská výška v metroch

46,9, M – výška geoidu nad elipsoidom WGS 84

[prázdne pole] – čas, ktorý uplynul od prijatia poslednej korekcie DGPS. Vyplní sa, keď je aktivovaný režim DGPS

[prázdne pole] – identifikačné číslo základňovej stanice. Vyplní sa, keď je aktivovaný režim DGPS.

*Typy riešení:

2. GSA - všeobecné informácie o satelitoch

Táto správa NMEA obsahuje zoznam satelitov použitých pri výpočte polohy a hodnoty geometrických DOP, ktoré určujú presnosť výpočtu polohy. Parametre DOP sú určené geometrickým usporiadaním satelitov na oblohe. Čím lepšie sú satelity „rozmiestnené“ na oblohe, tým nižšie je DOP a tým lepšia je presnosť polohy. Minimálna hodnota PDOP (= 1) zodpovedá situácii, keď je jeden satelit priamo nad používateľom a ďalšie 3 sú rovnomerne rozložené okolo na úrovni horizontu. Hodnota PDOP sa vypočíta ako druhá odmocnina súčtu druhých mocnín HDOP a VDOP.

$GPGSA,A,3,04,05,09,12,24,2,5,1,3,2,1*39 Kde:

GSA – hlavička NMEA

A – typ voľby medzi 2D a 3D riešením, automatický (A-auto, M-manuál)

3 – typ riešenia, 3D riešenie (1 – žiadne riešenie, 2 – 2D riešenie, 3 – 3D riešenie)

04.05… – PRN kódy používané pri výpočte satelitných pozícií (12 polí)

2,5 – priestorový geometrický faktor, PDOP

1,3 – horizontálny geometrický faktor, HDOP

2.1 – vertikálny geometrický faktor, VDOP

3. GSV – Podrobné informácie o satelitoch

Táto správa NMEA obsahuje podrobné informácie o všetkých satelitoch sledovaných navigátorom GPS. Na základe limitu 80 znakov môže jedna správa NMEA prenášať údaje len pre 4 satelity. Preto 12 satelitov vyžaduje 3 správy GSV. Pole SNR (Signal to Noise Ration) obsahuje hodnoty úrovní navigačných signálov prijímaných zo satelitov. Teoreticky sa jeho hodnota môže meniť od 0 do 99 a meria sa v dB. V skutočnosti je úroveň signálu v rozsahu 25 ... 35 dB. Tu je vhodné poznamenať, že tento parameter nie je absolútny a nie je vhodný na porovnávanie citlivosti prijímačov rôznych modelov a výrobcov. GPS navigátory môžu používať rôzne algoritmy na výpočet úrovne prijímaného signálu, čo vedie k rôznym výsledkom pri rovnakom stupni citlivosti prijímačov. Pre každý viditeľný satelit GPS sa prenáša súbor informácií vrátane sily signálu, elevačného uhla a azimutu satelitu. Počet týchto „súborov“ je určený celkovým počtom viditeľných satelitov, ktorých hodnota sa prenáša v samostatnom poli.

$GPGSV,2,1,08,01,40,083,46,02,17,308,41,12,07,344,39,14,22,228,45*75 Kde:

GSV – hlavička NMEA

2 – počet správ GSV v balíku

1 – číslo správy v balíku (od 1 do 3)

08 – počet viditeľných satelitov

01 – číslo satelitu

40 – elevačný uhol, v stupňoch

083 – azimut v stupňoch

46 – SNR, úroveň signálu

Táto správa NMEA obsahuje celý súbor takzvaných údajov „PVT“. "PVT" je bežná skratka pre "polohu, rýchlosť, čas".

$GPRMC,123519,A,4807,038,N,01131,000,E,022,4,084,4,230394,003,1,W*6A Kde:

RMC – hlavička NMEA 123419 – čas UTC, 12:34:59

A – stav (A – aktívny, V – ignorovať)

NMEA 0183– protokol textovej komunikácie používaný v prijímacích moduloch GPS. Tento štandard bol vytvorený pre komunikáciu námorných navigačných zariadení. Protokol zabezpečuje prenos textových príkazov a správ pomocou znakov ASCII. Na príjem správ teda stačí použiť sériové rozhranie UART, pričom všetky správy je možné prenášať priamo do počítača pomocou COM portu, no netreba zabúdať ani na nutnosť prevodu úrovní signálu.

Modul GPS prenáša správy rôznych formátov, ktoré obsahujú rôzne súbory údajov: zemepisnú šírku a dĺžku, rýchlosť, smer, čas, počet satelitov atď. Správy sa prenášajú postupne a sú rozdelené do niekoľkých typov, formát každého typu správy obsahuje presne definované informácie vo svojich poliach. Pozrime sa bližšie na všeobecnú štruktúru správ, ktoré modul GPS produkuje.

$ - každá správa začína týmto symbolom

Potom nasleduje identifikátor s 5 textovými znakmi. Prvé dve písmená označujú typ navigačného systému, napr. "GP" - GPS alebo " GL" - Glonass atď. Ďalšie 3 znaky sú identifikátor formátu správy, ktorý úplne určuje obsah následne prenášaných dát. Napríklad "RMC"- ide o odporúčaný minimálny údaj, ktorý obsahuje informácie o čase a dátume, zemepisnej šírke a dĺžke, rýchlosti, kurze a magnetickej odchýlke v stupňoch (môže chýbať). Alebo "GSA", budú sa tu prenášať satelitné dáta. Štruktúra hlavných typov správ bude diskutovaná nižšie.

Potom nasleduje «,» - čiarka, za ktorou hneď nasleduje telo správy s rôznymi údajmi, ktoré sú od seba oddelené rovnakou čiarkou. Ak prenášané číslo nie je celé číslo, potom je oddeľovač medzi celým číslom a zlomkovou časťou bodka «.» .

Koniec tela správy je označený symbolom «*» . Nasleduje kontrolný súčet všetkých znakov obsiahnutých medzi „$“ a „*“, teda celého tela správy, vrátane samotných údajov a identifikátorov na začiatku správy. Kontrolný súčet sa vypočíta XORingom všetkých hexadecimálnych ASCII kódov znakov správy.

A na samom konci každej správy musia byť znaky nového riadku

Pozrime sa na účel a štruktúru rôznych typov správ.

R.M.C.– odporúčané minimálne navigačné údaje. Správa obsahuje minimálne požadované množstvo informácií. Tieto údaje zahŕňajú zemepisnú šírku a dĺžku, dátum a čas a rýchlosť. Pri mnohých úlohách nie je potrebné viac, napríklad v module Quectel L50 Prenos všetkých ostatných typov správ som vypol, keďže informácie o satelitoch a úrovni ich signálov absolútne nepotrebujem. A príjem nepotrebných informácií si vyžaduje skomplikovanie programu na spracovanie týchto údajov. Štruktúra správy je nasledovná:

$GPRMC hhmmss.sss,A,ddmm.mmmm,N,ddmm. mmmm , E,v.v.c. c, ddmmyyyy,x.x,n,m*hh

Táto správa obsahuje nasledujúce informácie:

  • GPRMC– satelitný systém GPS, identifikátor správy RMC
  • hhmmss.sss– čas (Greenwich Mean Time), kde hh – hodiny, mm – minúty, ss.sss – sekundy
  • A– údaje sú spoľahlivé resp V– údaje sú nespoľahlivé. Symbol A správa bude za predpokladu, že existuje spoľahlivý príjem signálov zo satelitov potrebných na výpočet údajov o polohe. Symbol V nastane, keď prijímač nevidí satelity alebo keď počet nájdených satelitov nestačí na spoľahlivý výpočet súradníc. Ak napríklad zapnete GPS modul niekde v panelovom dome a ďaleko od okien, s najväčšou pravdepodobnosťou uvidíte symbol V v prijatej správe.
  • ddmm.mmmm– zemepisná šírka, stupne a minúty
  • N alebo S- sever alebo juh. Hemisféra, v ktorej sa nachádzate. Ak ste v Austrálii, ukáže sa to S. V Jekaterinburgu môj GPS modul dáva N.
  • ddmm.mmmm– zemepisná dĺžka, stupne a minúty
  • E alebo W– západná alebo východná pologuľa
  • v.v- rýchlosť v uzloch
  • c. c– smerovanie nad zemou v stupňoch. Pri pohybe na sever bude 0 stupňov.
  • ddmmyyyy- dátum
  • x.x– magnetická deklinácia
  • n– smer magnetickej deklinácie. O týchto dvoch posledných parametroch neviem nič vysvetliť. Napríklad môj modul GPS Quectel L50 pri recepcii v byte sa tento údaj na okne vôbec nezobrazoval, jednoducho sa preskočil.
  • m- režim navigácie: N- nepresné údaje, A- autonómny, D– diferenciál

Tu je príklad správy RMC:

$GPRMC,105954,000,A,3150,6731,N,11711,9399,E,0,00,96,10,250313,A*53

  • GMT 10h 59m 54s
  • A– údaje sú spoľahlivé
  • Zemepisná šírka 31 stupňov a 50,6371 minút
  • N– severný
  • Zemepisná dĺžka 117 stupňov 11,9399 minút
  • E- Východná
  • Rýchlosť 0,00 uzlov
  • Dobre 96,1 stupňov
  • dátum 25. marca 2013
  • Informácie o magnetická deklináciažiadny
  • režim - autonómny
  • Kontrolný súčet znakov správy 0×053

Tu je potrebné poznamenať jeden bod. Údaje o zemepisnej šírke a dĺžke obsahujú zlomkovú časť minút, čo vôbec nezodpovedá počtu „sekúnd“, keďže ide o desatinný zlomok. Programy GPS, ktoré som skúšal, zobrazujú súradnice na mape presne. Ak však tieto čísla zadáte do vyhľadávacieho panela máp Google, poloha na mape bude niekoľko kilometrov od skutočnej polohy. Pri zadávaní získaných súradníc musíte v tomto prípade rozdeliť zlomkovú časť zemepisnej šírky a dĺžky 60, aby ste tieto čísla previedli na „sekundy“. Keď som prvýkrát pripojil modul Quectel L50 a zadal získané súradnice zemepisnej šírky a dĺžky do vyhľadávacieho panela máp Google, dostal som polohu na mape s výraznou chybou, mapa označovala miesto niekde v oblasti Uralmašu.

Tu je niekoľko ďalších typov správ používaných v tomto protokole:

  • VTG- skutočný smer kurzu a pozemná rýchlosť
  • GGA- údaje o poslednej polohe
  • G.S.A.- údaje o aktívnych satelitoch
  • GSV- údaje o viditeľných satelitoch, ich polohe a číslach, ako aj sile signálu
  • GLL- zemepisná šírka, dĺžka a čas
  • ZDA- informácie o čase a dátume

Nezaoberal som sa podrobne o tom, z čoho pozostáva každá správa, odkaz na dokument popisujúci protokol je uvedený na konci článku. Špecifický typ modulu GPS nemusí prenášať všetky uvedené údaje. Môžete zakázať alebo povoliť prenos rôznych typov údajov a tiež nastaviť obdobie ich doručenia. Na konfiguráciu modulu existujú špeciálne príkazy, ktoré začínajú identifikátorom $PSRFxxx, Kde xxx určuje typ a formát príkazu, rovnako ako v odchádzajúcich správach.

Napríklad príkaz $PSRF100.0.9600.8.1.0*0C nastavuje komunikačný protokol a konfiguruje parametre sériového portu.

  • 100 $ PSRF – natívny identifikátor príkazu protokolu SIRF
  • 0 – binárny protokol SIRF, 1 – protokol NMEA
  • 9600 – rýchlosť bit/sec
  • 8 dátový bit
  • 1 zastaviť bit
  • 0 – kontrola parity vypnutá

Tím 103.00.00.02.01*26 $ PSRF konfiguruje výstupné parametre pre rôzne typy správ modulu:

  • 103 $ PSRF– Identifikátor príkazu natívneho protokolu SIRF
  • potom za desatinnou čiarkou sú dve číslice, ktoré určujú typ vlastnej správy: 00 - GGA
    01 - GLL
    02 – GSA
    03 - GSV
    04 - RMC
    05 - VTG
  • ďalšie dve číslice konfigurujú poradie, v ktorom sa správy vydávajú, napríklad: 00 - pravidelne
    01 - na vyžiadanie
  • Nasledujúce čísla nastavujú dobu trvania správy v sekundách: 00 = Vypnuté (správy sú vypnuté)
    1-255 – interval medzi správami tohto typu v sekundách
  • potom je povolený/deaktivovaný prenos kontrolného súčtu v správe NMEA prenášanej modulom: 00 – prenos kontrolného súčtu je zakázaný
    01 – odošle sa kontrolný súčet
  • po znaku „*“, ako v odchádzajúcej správe NMEA, sa prenesie kontrolný súčet a znaky pre posun riadkov.

To je všetko, čo som chcel stručne načrtnúť o protokole NMEA 0183 a príkazoch na ovládanie modulu na čipovej súprave SIRF. Podrobnejšie dekódovanie všetkých týchto správ a príkazov je uvedené napríklad v popise protokolu modulu Quectel L50, ktorý je možné stiahnuť z odkazu nižšie.

Popis protokolu NMEA.

Implementácia v prijímačoch Garmin a GlobalSat

Úvod

Národná asociácia námornej elektroniky (NMEA) vyvinula špeciálny protokol na zachovanie kompatibility medzi námornými navigačnými zariadeniami od rôznych výrobcov. Tento protokol NMEA popisuje nielen údaje prijaté z prijímačov GPS, ale aj merania zo sonarov, radarov, elektronických kompasov, barometrov a iných navigačných zariadení používaných na námorných plavidlách. Rozhranie na výmenu údajov väčšiny prenosných prijímačov GPS je implementované v súlade so špecifikáciou NMEA. Väčšina navigačných programov, ktoré poskytujú podporu zobrazovania údajov v reálnom čase a „rozumie“ protokolu NMEA. Tieto údaje obsahujú kompletné navigačné merania GPS prijímača - polohu, rýchlosť a čas. Všetky správy NMEA pozostávajú zo sekvenčného súboru údajov oddelených čiarkami. Každá jednotlivá správa je nezávislá od ostatných a je úplne „kompletná“. Správa NMEA obsahuje hlavičku, súbor údajov reprezentovaných znakmi ASCII a pole kontrolného súčtu na kontrolu platnosti prenášaných informácií. Hlavička štandardných správ NMEA pozostáva z 5 znakov, z ktorých prvé dva určujú typ správy a zvyšné tri označujú jej názov. Napríklad všetky správy GPS NMEA majú predponu „GP“. Správy, ktoré nie sú opísané v špecifikácii NMEA, ale sú implementované v prijímačoch GPS podľa všeobecných pravidiel, majú predponu „P“, za ktorou nasledujú tri znaky jedinečné pre každú spoločnosť. Napríklad „natívne“ správy NMEA od spoločnosti Garmin majú predponu „PGRM“, Magellan – „PMGN“ Každá správa NMEA začína „$“, končí „\n“ („line feed“) a nemôže byť dlhšia ako 80 znakov. . Všetky údaje sú uvedené na jednom riadku a navzájom oddelené čiarkami. Informácie sú prezentované vo forme ASCII textu a nevyžadujú špeciálne dekódovanie. Ak sa údaje nezmestia do pridelených 80 znakov, potom sa „rozdelia“ do niekoľkých správ NMEA. Tento formát umožňuje neobmedzovať presnosť a počet znakov v jednotlivých dátových poliach. Napríklad zlomková časť hodnoty súradnice môže byť vyjadrená na 3 alebo 4 desatinné miesta, ale to by nemalo nijako ovplyvniť činnosť softvéru, ktorý vyberá potrebné údaje zo správy podľa čísla poľa. Na konci každej správy NMEA je pole „kontrolný súčet“ oddelené od údajov znakom „*“. V prípade potreby sa môže použiť na overenie integrity a platnosti každej prijatej správy. Protokol NMEA podporuje nielen odchádzajúce, ale aj prichádzajúce správy, pomocou ktorých môžete napríklad aktualizovať alebo pridávať body trasy. Tieto správy musia byť generované v prísnom súlade s formátom NMEA, inak ich prijímač GPS jednoducho ignoruje. Stojí za zmienku, že nie všetky navigačné programy a modely prijímačov podporujú tento režim, pretože na načítanie bodov a trás používajú proprietárne protokoly výrobcov - Garmin, Magellan atď. Protokol NMEA od svojho vzniku prešiel niekoľkými úpravami spojenými s pridávaním nových polí a správ. Aktuálna verzia podporovaná väčšinou prijímačov je verzia 2.3, aj keď už bola zverejnená nová verzia 3.0. Kompletná špecifikácia správ NMEA nie je verejne dostupná a nie je možné ju oficiálne stiahnuť v elektronickej podobe. Jej jednotlivé časti, všeobecný popis protokolu NMEA a najobľúbenejšie správy nájdete na internete. Dokumentáciu NMEA si môžete oficiálne zakúpiť na http://www.nmea.org/.

zoznam správ

Protokol NMEA popisuje veľký zoznam rôznych správ, z ktorých možno identifikovať dve desiatky správ, ktoré sa aktívne používajú v navigačných zariadeniach. Pre veľkú obľubu a jednoduchú prezentáciu údajov našiel protokol NMEA uplatnenie nielen v námorných zariadeniach, ale aj v geodetických, domácich a leteckých GPS prijímačoch.

    AAM – Príchod na Waypoint

    ALM – údaje almanachu

    APA – údaje autopilota „A“

    APB – údaje autopilota „B“

    BOD – smer do cieľa

    DTM – Dátum sa používa

    GGA – Fixed Solution Information

    GLL – údaje o zemepisnej šírke a dĺžke

    GSA – Všeobecné informácie o satelite

    GSV – Podrobné informácie o satelite

    MSK – Prenos riadenia na základný prijímač

    MSS – Základný stav prijímača

    RTE – Informácie o trase VTG – Vektor pohybu a rýchlosti

    WCV - Údaje o rýchlosti blízko trasového bodu

    WPL – údaje o trasových bodoch

    XTC – Off-Track Error

    XTE – nameraná chyba mimo trasy

    ZTG – čas UTC a zostávajúci čas do príchodu do cieľa

    ZDA – Dátum a čas.

Niektoré správy NMEA môžu obsahovať rovnaké dátové polia alebo môžu úplne obsahovať údaje iných menších správ NMEA.

GGA - informácia o pevnom riešení.

Najpopulárnejšia a najpoužívanejšia správa NMEA poskytuje informácie o aktuálnom pevnom riešení - horizontálne súradnice, hodnota nadmorskej výšky, počet použitých satelitov a typ riešenia.

$GPGGA, 123519,4807,038,N,01131,000,E,1,08,0,9,545,4,M,46,9,M,*47

GGA – hlavička NMEA

123519 – čas UTC 12:35:19

4807,038, N – zemepisná šírka, 48 stupňov 7,038 minút severnej zemepisnej šírky

01131.000, E – zemepisná dĺžka, 11 stupňov 31.000 minút východnej zemepisnej dĺžky

1 - typové riešenie, Samostatné riešenie

08 – počet použitých satelitov

0,9 – geometrický faktor, HDOP

545,4, M – nadmorská výška v metroch

46,9, M – výška geoidu nad elipsoidom WGS 84

[prázdne pole] – čas, ktorý uplynul od prijatia poslednej korekcie DGPS. Vyplní sa, keď je aktivovaný režim DGPS

[prázdne pole] – identifikačné číslo základňovej stanice. Vyplní sa, keď je aktivovaný režim DGPS.

GSA – všeobecné informácie o satelitoch.

Táto správa NMEA obsahuje zoznam satelitov použitých pri výpočte polohy a hodnoty geometrických DOP, ktoré určujú presnosť výpočtu polohy. Parametre DOP sú určené geometrickým usporiadaním satelitov na oblohe. Čím lepšie sú satelity „rozmiestnené“ na oblohe, tým nižšie je DOP a tým lepšia je presnosť polohy. Minimálna hodnota PDOP (= 1) zodpovedá situácii, keď je jeden satelit priamo nad používateľom a ďalšie 3 sú rovnomerne rozložené okolo na úrovni horizontu. Hodnota PDOP sa vypočíta ako druhá odmocnina súčtu druhých mocnín HDOP a VDOP.

$GPGSA,A,3,04,05,09,12,24,2,5,1,3,2,1*39

    GSA – hlavička NMEA

    A – typ voľby medzi 2D a 3D riešením, automatický (A-auto, M-manuál)

    3 – typ riešenia, 3D riešenie (1 – žiadne riešenie, 2 – 2D riešenie, 3 – 3D riešenie)

    04.05... - PRN kódy používané pri výpočte satelitných pozícií (12 polí)

    2,5 – priestorový geometrický faktor, PDOP

    1,3 – horizontálny geometrický faktor, HDOP

    2.1 – vertikálny geometrický faktor, VDOP

GSV - Podrobné informácie o satelitoch

Táto správa NMEA obsahuje podrobné informácie o všetkých satelitoch sledovaných navigátorom GPS. Na základe limitu 80 znakov môže jedna správa NMEA prenášať údaje len pre 4 satelity. Preto 12 satelitov vyžaduje 3 správy GSV. Pole SNR (Signal to Noise Ration) obsahuje hodnoty úrovní navigačných signálov prijímaných zo satelitov. Teoreticky sa jeho hodnota môže meniť od 0 do 99 a meria sa v dB. V skutočnosti je úroveň signálu v rozsahu 25 ... 35 dB. Tu je vhodné poznamenať, že tento parameter nie je absolútny a nie je vhodný na porovnávanie citlivosti prijímačov rôznych modelov a výrobcov. GPS navigátory môžu používať rôzne algoritmy na výpočet úrovne prijímaného signálu, čo vedie k rôznym výsledkom pri rovnakom stupni citlivosti prijímačov. Pre každý viditeľný satelit GPS sa prenáša súbor informácií vrátane sily signálu, elevačného uhla a azimutu satelitu. Počet týchto „súborov“ je určený celkovým počtom viditeľných satelitov, ktorých hodnota sa prenáša v samostatnom poli.

$GPGSV,2,1,08,01,40,083,46,02,17,308,41,12,07,344,39,14,22,228,45*75

    GSV – hlavička NMEA

    2 – počet správ GSV v balíku

    1 – číslo správy v balíku (od 1 do 3)

    08 – počet viditeľných satelitov

    01 – číslo satelitu

    40 – elevačný uhol, v stupňoch

    083 – azimut v stupňoch

    46 – SNR, úroveň signálu

Táto správa NMEA obsahuje celý súbor takzvaných údajov „PVT“. "PVT" je bežná skratka pre "polohu, rýchlosť, čas".

$GPRMC,123519,A,4807,038,N,01131,000,E,022,4,084,4,230394,003,1,W*6A

    RMC – hlavička NMEA

    123419 – čas UTC, 12:34:59

    A – stav (A – aktívny, V – ignorovať)

    4807.038,N – zemepisná šírka, 48 stupňov 07.038 minút severnej zemepisnej šírky

    01131.000, E – zemepisná dĺžka, 11 stupňov 31.000 minút východnej zemepisnej dĺžky

    022.4 – Rýchlosť v uzloch

    003.1,W – Magnetické variácie

GLL – údaje o zemepisnej šírke a dĺžke

Správa NMEA so súradnicami zemepisnej šírky a dĺžky a časom, kedy bolo toto riešenie vypočítané.

$GPGLL,4916,45,N,12311,12,W,225444,A,*31

    GLL – hlavička NMEA

    4916,46,N – zemepisná šírka, 49 stupňov 16,45 minúty severne

    12311,12, západná dĺžka, 123 stupňov 11,12 minút západnej dĺžky

    225444 – Čas fixácie v časovej škále UTC, 22:54:44

BOD - Azimut do cieľa

Táto správa NMEA označuje azimut k cieľu v režime navigácie.

$GPBOD,045.,T,023.,M,DEST,START*01

    BOD – hlavička NMEA

    045.,T – skutočný smer k veci

    023.,M – magnetický smer do bodu

    DEST – identifikačné číslo koncového bodu

    ŠTART – identifikačné číslo miesta štartu

GPRMB,A,0,66,L,003,004,4917,24,N,12309,57,W,001,3,052,5,000,5,V*20

    RMB – hlavička NMEA

    A – Typ údajov, (A – aktívny, V – ignorovať)

    0,66,L – odchýlka od koľaje. Parameter je definovaný v námorných míľach. (L – vľavo, R – vpravo)

    003 - identifikačné číslo východiskového bodu

    004 - identifikačné číslo koncového bodu

    4917,24,N – hodnota zemepisnej šírky koncového bodu, 49 stupňov 17,24 minút severnej zemepisnej šírky

    12309,57,W – hodnota zemepisnej dĺžky koncového bodu, 123 stupňov 09,57 minúty západnej dĺžky

    001.3 – vzdialenosť k bodu v námorných míľach

    000,5 – rýchlosť, v uzloch

    V – informácie o príchode (A – príchod, V – bod ešte nedosiahnutý)

RTE – informácie o trase

Správa NMEA RTE zobrazuje zoznam trasových bodov na aktívnej trase. Existujú dva typy správ RTE. V prvom prípade sa zobrazia všetky body trasy. V druhom je už len zoznam zvyšných bodov, ktoré treba ešte počas pohybu po trase navštíviť. Vzhľadom na to, že protokol NMEA má obmedzenie, podľa ktorého by dĺžka správy nemala presiahnuť 80 znakov, správa RTE môže pozostávať z niekoľkých riadkov.

$GPRTE,2,1,c,0,W3IWI,DRIVWY,32CEDR,32-29,32BKLD,32-I95,32-US1,BW-32,BW-198*69

    RTE – hlavička NMEA

    2 – celkový počet správ pre zobrazenie kompletného zoznamu údajov

    1 – číslo správy zo všeobecného zoznamu

    с – typ správy RTE (с – úplný zoznam bodov trasy, w – zoznam bodov, ktoré ešte treba navštíviť)

    0 – identifikátor trasy

    W3IWI,DRIVWY,.. - zoznam trasových bodov

Funkcie Garmin

Prijímače Garmin podporujú väčšinu správ NMEA obsahujúcich GPS merania, polohy a čas – GGA, GLL, GSA, GSV, RMC. Rovnako ako navigačné správy - RMB, BOD

Pre zobrazenie týchto správ je potrebné zmeniť rozhranie v nastaveniach prijímača z „Garmin“ na „NMEA“ a prípadne nastaviť požadovanú rýchlosť. Rovnakú rýchlosť je potrebné nastaviť v navigačnom programe v nastaveniach sériového portu, ku ktorému je navigátor pripojený.

Žiaľ, prijímače s USB portom nepodporujú protokol NMEA a jeho nastavenie je obmedzené len na protokol Garmin.

Na zobrazenie informácií vstupujúcich do sériového portu počítača môžete použiť terminálový program Windows alebo niektorý z navigačných programov, ktorý túto funkciu podporuje.

Nižšie je uvedený zoznam správ NMEA prijímača Garmin eMap, ktoré sú obsiahnuté v jednej epoche.

$GPRMC,135412,A,5522,8973,N,03710,1401,E,0,0,0,0,190507,9,3,E,A*1F

$GPRMB,A,,A,A*0B

$GPGGA,135412,5522,8973,N,03710,1401,E,1,04,5,4,205,2,M,15,8,M,*4A

$GPGSA,A,3,08,13,23,25,5,7,5,4,1,0*3C

$GPGSV,3,1,11,02,15,267,00,03,11,085,45,04,05,236,00,08,39,233,00*77

$GPGSV,3,2,11,10,32,308,00,13,63,109,43,16,17,037,00,23,31,111,38*77

$GPGSV,3,3,11,24,09,343,00,25,66,077,44,27,69,229,00*46

$GPGLL,5522,8973,N,03710,1401,E,135412,A,A*43

$GPBOD,T,M,*47

$ PGRME, 19,1, M, 15,2, M, 25,3, M * 15

PGRMZ, 673 $, f, 3*19

$ PGRMM, WGS 84*06

Okrem štandardných správ NMEA implementujú prijímače Garmin svoju vlastnú sadu správ, z ktorých každá obsahuje predponu „GRM“ v hlavičke, identifikátor „M“ alebo „Z“ identifikujúci typ údajov a jeden znak pre názov.

PGRME – Odhad chyby polohy

$ PGRME, 15,0, M, 45,0, M, 25,0, M * 1C

    15,0,M – posúdenie chyby horizontálneho polohovania, v metroch

    45,0,M – odhad vertikálnej chyby, v metroch

    25,0,M – ekvivalentná sférická chyba polohovania

PGRMZ – výškové merania

$PGRMZ,93,f,3*21

    93,f – hodnota výšky v librách

    3 - podmienky merania polohy (2 - výška definovaná používateľom,

    3 – nadmorská výška vypočítaná pomocou GPS)

PGRMM – aktuálny údaj

$PGRMM,NAD27 Kanada*2F

    NAD27 Canada – názov aktuálneho horizontálneho dátumu

Vlastnosti Sirf

GPS čipy od Sirf sa používajú v rôznych zariadeniach GPS navigácie, od bežných dosiek až po prenosné a automobilové GPS navigácie. Ale na rozdiel od navigátorov podporujú len správy NMEA týkajúce sa GPS meraní, výpočtov polohy a času – GGA, GLL, GSA, GSV, RMC, VTG, ZDA.

„Sirf“ podporuje aj niekoľko „prichádzajúcich“ správ NMEA určených na konfiguráciu a úpravu rôznych parametrov. Sirf navyše implementuje vlastný binárny protokol, ktorý umožňuje zmeniť podstatne viac nastavení. Týchto 5 „prichádzajúcich“ správ NMEA podľa pravidiel začína predponou $PSFR. Všetky správy obsahujú pevnú množinu údajov a končia znakom „\n“ (riadkový posuv)

Na konfiguráciu parametrov „Sirf“ sa používa špeciálny program „SirfTech“. Parametre správy NMEA sa konfigurujú v samostatnej položke ponuky.

$GPGGA,100643,000,5522,9036,N,03710,1282,E,1,07,1,6,209,9,M,14,9,M,0000*52

$GPGSA,A,3,31,01,23,20,11,30,14,2.1,1.6,1.4*35

$GPGSV,3,1,12,20,84,187,41,01,49,067,46,23,46,238,45,31,45,073,50*7B

$GPGSV,3,2,12,11,25,194,34,13,16,240,04,15,319,30,17,14,273,21*7A

$GPGSV,3,3,12,30,10,026,33,14,05,063,22,05,04,009,25,25,03,195,*7F

$GPRMC,100643,000,A,5522,9036,N,03710,1282,E,0,16,119,11,200507,*0D

Ako môžete vidieť z vyššie uvedeného príkladu, výrobné nastavenia obsahujú menej správ NMEA v porovnaní s nastaveniami Garmin. V prípade potreby je možné túto množinu rozšíriť nastavením obdobia v chýbajúcich správach NMEA.

$GPGGA, 100833,000,5522,9076,N,03710,1270,E,1,07,1,3,222,4,M,14,9,M,0000*53

$ GPGLL, 5522,9076, N, 03710,1270, E, 100833,000, A*34

$GPGSA,A,3,31,01,23,20,11,30,17,2.1,1.3,1.6*31

$GPGSV,3,1,12,20,84,180,43,01,49,067,47,23,47,238,45,31,45,072,49*77

$GPGSV,3,2,12,11,24,193,26,13,16,240,26,04,15,319,24,17,13,273,31*78

$GPGSV,3,3,12,30,10,025,26,14,04,064,22,25,04,195,05,04,008,21*7C

GPRMC, 100 833 000, A, 5522,9076, N, 03710,1270, E, 0,18, 4,86, 200507, * 00

$GPVTG,4,86,T,M,0,18,N,0,3,K*60

GPZDA $, 1 008 34 000, 05/20/2007, * 5 A

PSFR100, PSFR102 – konfigurácia sériového portu

Správa NMEA číslo 100 slúži na nastavenie portu A, správa 102 - port B. Správa 100 má doplnkové pole, ktoré umožňuje prepnúť rozhranie na binárny protokol Sirf.

Preto v binárnom protokole existuje príkaz, ktorý prepne port späť do formátu NMEA. Pred prechodom na binárny protokol musíte pochopiť, či existuje program, ktorý vám v budúcnosti umožní obnoviť protokol NMEA.

$PSRF100.0.9600.8.1.0*0C

$PSRF102.9600.8.1.0*3C

    PSRF100 – hlavička NMEA

    0 – parameter označujúci, v akom režime bol protokol zmenený (0-Sirf, 1-NMEA)

    9600 – rýchlosť portu (4800, 9600, 19200, 38400)

    8 – dátové bity (7, 8)

    1 – stop bity (0,1)

    0 – párovanie (0 – žiadne, 1 – nepárne, 2 – párne)

PSFR101, PSFR104 – inicializácia parametrov prijímača

Správy NMEA s číslami 101 a 104 sú určené na inicializáciu parametrov určených na príjem GPS. Určenie týchto parametrov môže urýchliť čas získavania satelitov GPS. Správa 101 nastavuje aktuálne súradnice vo formáte XYZ, správa 104 – vo formáte BLH (zemepisná dĺžka, šírka).

$PSRF101,-2686700,-4304200,3851624,95000,497260,921,12,3*22

$PSRF104.37.3875111.-121.97232.0.95000.237759.922.12.3*3A

    PSRF101 – hlavička NMEA

    37,3875111 – zemepisná šírka v stupňoch

    121,97232 – zemepisná dĺžka v stupňoch

    0 – výška, v metroch

    95000 – hodinový posun

    237759 – čas GPS v sekundách

    922 – číslo týždňa GPS

    12 – počet kanálov

    3 – typ inicializácie dát (1 – horúci štart, 2 – teplý štart, 3 – inicializácia dát, 4 – studený štart s úplným vymazaním dát, 8 – studený štart s obnovením továrenských nastavení)

PSFR103 – konfigurácia generovania správ NMEA

Táto správa NMEA vám umožňuje nastaviť alebo dotazovať sa na obdobie generovania každej „odchádzajúcej“ správy NMEA.

103.05.00.01.01*20 $ PSRF

    PSRF103 – hlavička NMEA

    05 – názov správy

    01 – bodka, v sekundách (0-255)

    01 – prítomnosť kontrolného súčtu (0 – áno, 1 – nie)

Výsledky experimentu

V podmienkach normálnej satelitnej viditeľnosti vytvára prijímač Garmin eMap nasledujúci súbor správ NMEA:

$GPRMC,104644,A,5522,8965,N,03710,1389,E,0,0,0,0,200507,9,3,E,A*16

$GPRMB,A,,A,A*0B

$GPGGA,104644,5522,8965,N,03710,1389,E,1,07,1,2,186,6,M,15,8,M,*44

$GPGSA,A,3,01,04,13,16,20,23,31,2.1,1.2,1.7*35

$GPGSV,3,1,10,01,34,070,48,04,28,311,40,11,10,190,00,13,32,249,41*7E

$GPGSV,3,2,10,16,11,111,40,20,68,142,50,23,64,247,49,25,21,196,00*70

$GPGSV,3,3,10,30,05,012,00,31,36,055,52*7D

$GPGLL,5522,8965,N,03710,1389,E,104644,A,A*40

$GPBOD,T,M,*47

$ PGRME, 6,0, M, 7,7, M, 9,8, M * 29

$PGRMZ,612,f,3*1E

$ PGRMM, WGS 84*06

$GPRTE,1,1,c,*37

Z analýzy správ je zrejmé, že prijímač momentálne sleduje 10 (GSV) satelitov, z ktorých 7 (GGA) sa používa na výpočet polohy. Chyba horizontálneho polohovania sa rovná 6 metrom (RME) a ​​indikátor typu riešenia je 1 (GGA)

Ak vytvoríte podmienky, za ktorých nebude signál GPS prijímaný, správy GGA budú obsahovať „prázdne“ polia a indikátor typu rozhodnutia bude mať hodnotu 0 (GGA).

$GPGGA,0,00,M,M,*66

$GPGSA,A,1,,*1E

V „normálnom“ režime obsahujú správy RMB a BOD prázdne polia. Keď bol trasový bod Cesta vybratý ako konečný cieľ, tieto polia sa vyplnili údajmi. Ako vyplýva z analýzy správy, vzdialenosť k bodu je 1 620 míľ, azimut pohybu je 6,3 stupňa (BOD). Zároveň sa azimut správ BOD a RMB líši o 0,1 stupňa.

$GPRMB,A,0,00,R,Cesta,5524,501,N,03710,445,E,1,620,6,4,V,A*59

$GPBOD,6,3,T,357,0,M,Cesta,*74

Po výbere domácej trasy pre navigáciu sa v zozname správ RTE zobrazí zoznam všetkých trasových bodov na trase. A v správe RMB - identifikačné čísla východiskových a konečných (ďalších) bodov trasy.

$GPRTE,1,1,c,HOME,SLOBODA,IERUSALIM,INSTITUT*01

$GPRMB,A,9,99,R,SLOBOD,IERUSAL,5555,237,N,03649,976,E,34,346,340,6,V,A*1F

Záver

Vo väčšine prípadov používateľ nepotrebuje a ani nemá záujem vedieť, aké údaje a v akých oblastiach sa prenášajú. Väčšina navigačných programov „analyzuje“ dáta správ NMEA a prezentuje ich v užívateľsky príjemnej forme – grafy, diagramy, tabuľky atď.

Mimoriadne zaujímavé sú správy NMEA pre používateľov, ktorí by chceli vykonávať prieskum údajov GPS, počítať odhady získaných meraní alebo analyzovať správanie navigačných prijímačov v rôznych podmienkach. Existuje množstvo programov, pomocou ktorých môžete tieto problémy vyriešiť.

Formát NMEA však stále nie je určený na hĺbkovú analýzu údajov GPS, pretože neobsahuje takzvané „surové“ merania - pseudorozsahy, fázy, Doppler. Každý výrobca navigačného zariadenia má svoj vlastný „otvorený“ alebo „uzavretý“ protokol, ktorý zobrazuje tieto informácie

NMEA je jednoduchý a zrozumiteľný formát, ktorý umožňuje nielen výmenu údajov medzi prijímačmi GPS a navigačnými programami, ale poskytuje používateľom aj určitú predstavu o princípoch fungovania satelitných navigačných zariadení.

Pozor!

Článok z webu " GPS portál"



 

Môže byť užitočné prečítať si: