Google
  Web www.gpspassion.com


GpsPasSion LIVE!
www.flickr.com
This is a Flickr badge showing public photos from GpsPasSion Live !. Make your own badge here.

www.NaviBlog.com



Versions

Links/Liens




Portal/Portail
Rechercher

- -

Polls/Sondages
Sondage
Pour vous guider sur la Route :
GPS Mobile (SEM)
GPS Intégré
Smartphone
Autre
Voter  -  Résultat des votes
Votes : 1435




Club GpsPasSion
Soutenez le site!

USA: (US$)
EUROPE: (€)
Guide Paypal


GpsPasSion Forums
Home | Profile | Register/Enregist. | Active Topics | Search/Recherche | FAQ
Username:
Password:
Save Password
Forgot your Password?

 All Forums
 Forums "Autour du GPS"
 Discussions Techniques Générales
 *Tutoriel - Les Trames NMEA

Note: You must be registered in order to post a reply.
To register, click here. Registration is FREE!

Screensize:
UserName:
Password:
Format Mode:
Format: BoldItalicizedUnderlineStrikethrough Align LeftCenteredAlign Right Horizontal Rule Insert HyperlinkInsert EmailInsert Image Insert CodeInsert QuoteInsert List
   
Message:

* HTML is OFF
* Forum Code is ON
Smilies
Smile [:)] Big Smile [:D] Cool [8D] Blush [:I]
Tongue [:P] Evil [):] Wink [;)] Clown [:o)]
Black Eye [B)] Eight Ball [8] Frown [:(] Shy [8)]
Shocked [:0] Angry [:(!] Dead [xx(] Sleepy [|)]
Kisses [:X] Approve [^] Disapprove [V] Question [?]

  Check here to include your profile signature.
Check here to subscribe to this topic.
    

T O P I C    R E V I E W
etxegarraia Posted - 06 nov. 2004 : 13:07:57
Les Trames NMEA




  1. Préambule.
  2. Définition du Standard NMEA.
  3. La trame : GGA
  4. La trame : GLL
  5. La trame : GSA
  6. La trame : GSV
  7. La trame : VTG
  8. La trame : RMC
  9. Comment visualiser les trames.
  10. Liens utiles.


1 - PREAMBULE


NMEA - National Marine & Electronics Association, est une Association à but non lucratif fondée par un groupement de professionnels de l'industrie de l'électronique des périphériques marine, conjointement avec des fabricants, des distributeurs, des revendeurs, des institutions d'enseignements. Leur but entre autre, harmoniser et standardiser les équipements de la marine.

NMEA est à l'origine de nombreux standards et en particulier du Standard NMEA-0183 qui nous intêresse le plus.

Dans ce qui suit, le Standard NMEA est défini "simplement" et uniquement pour la compréhension de ce topo, comme étant le protocole de transmission des données entre les instruments et équipements électroniques liés au GPS.

La dernière version de ce standard nous précise "Habot", est la version 2000 (Hé oui, nous n'utilisons pas encore la dernière version). Celle ci, apporte surtout un nouveau média (les Bus CAN, que vous connaissez sans le savoir puisqu'ils équipent vos véhicules depuis plusieurs années déjà), mais pas de changements majeurs dans les dialogues. Nous nous intéresserons donc plus particulièrement à la version NMEA-0183, utilisée dans nos appareils actuels.

Les prochains développements seront basés sur la FAQ (en anglais de Peter Bennet), le développement de Glenn Baddeley et quelques autres sources citée en fin d'article). Citons immédiatement, le site de Christian Couderc : Voilelec qui est, à notre sens, une référence pour les aspects 'marins' & électroniques du protocole (et en français).


2 - DEFINITION DU STANDARD NMEA-0183


Sous ce standard, toutes les données sont transmises sous la forme des caractères ASCII, tous imprimables, ainsi que les caratères [CR] Retour Charriot et [LF] Retour à la ligne, à la vitesse de transmission de 4800 bauds.

Les données sont tranmises sous forme de trames (sentences, phrases).

Il y a une transmission de toutes les trames en paquet, toutes les secondes d'horloge interne du GPS soit une fréquence de 1Hz.

Chaque trame commence par le caractère $

Suivi par un groupe de 2 lettres pour l'identifiant du récepteur.(non limitatif) citons:

  • GP pour Global Positioning System.
  • LC Loran-C receiver.
  • OM Omega Navigation receiver.
  • II Integrated Instrumentation (eg. AutoHelm Seatalk system).




(Pour certains fabricants propriétaires comme par exemple : Garmin, l'indication P pour propriétaire est suivie du code 3 lettres du fabricant garmin = $PGRM, puis ensuite l'identifiant de trame et le format des données sont libres pour ce fabriquant). Des exemples complets sont proposés dans les liens ci-dessous.

Puis un groupe de 3 lettres pour l'indentifiant de la trame.
  • GGA : pour GPS Fix et Date.
  • GLL : pour Positionnement Géographique Longitude-Latitude.
  • GSA : pour DOP et satellites actifs.
  • GSV : pour Satellites visibles.
  • VTG : pour Direction (cap) et vitesse de déplacement (en noeuds et Km/h).
  • RMC: pour données minimales exploitables spécifiques.


Suivent ensuite un certain nombre de champs (fields) séparés par une "virgule". Le rôle de la virgule est d'être le séparateur de champs, qui permet la déconcaténation des données dans le programme de traitement des données, calculateur, navigateur.

Et enfin un champs optionnel dit checksum précédé du signe * , qui représente le OR exclusif de tous les caractères compris entre $ et * (sauf les bornes $ et *), certaines trames exigent le checksum.

Suit la fermeture de la séquence avec un [CR][LF].

Un total de 82 caractères maximum pour une trame.

Et on passe à la trame suivante.

Comme indiqué, le Standard NMEA ne se borne pas qu'à ces 5 trames ci-dessus, et dans les liens vous trouverez accès à la documentation complète du Standard.



3 -La trame : GGA


Données d'acquisition du FIX - GPS.


$GPGGA,123519,4807.038,N,01131.324,E,1,08,0.9,545.4,M,46.9,M, , *42

123519 = Acquisition du FIX à 12:35:19 UTC
4807.038,N = Latitude 48°07.038' N
01131.324,E = Longitude 11°31.324' E
1 = Fix qualification : (0 = non valide, 1 = Fix GPS, 2 = Fix DGPS)
08 = Nombre de satellites en pousuite.
0.9 = DOP (Horizontal dilution of position) Dilution horizontale.
545.4,M = Altitude, en Metres, au dessus du MSL (mean see level) niveau moyen des Océans.
46.9,M = Correction de la hauteur de la géoïde en Metres par raport à l'ellipsoîde WGS84 (MSL).
(Champ vide) = nombre de secondes écoulées depuis la dernière mise à jour DGPS.
(Champ vide) = Identification de la station DGPS.
*42 = Checksum
Non représentés CR et LF.


4 - La trame : GLL


Position Géographique - Longitude / Latitude - GPS

$GPGLL,4916.45,N,12311.12,W,225444,A


4916.46,N = Latitude 49°6.45' Nord.
12311.12,W = Longitude 123°11.12' West (ouest)
225444 = Acquisition du Fix à 22:54:44 UTC
A = Données valides
Pas de checksum
Non représentés CR et LF


5 - La Trame : GSA


Satellites actifs - DOP dilution de précision -GPS


$GPGSA,A,3,04,05,,09,12,,,24,,,,,2.5,1.3,2.1*39


A= Sélection Automatique 2D ou 3D du FIX (M=Manuel)
3 = Fix 3D
04,05... = PRNs (N° d'Id) des satellites utilisés pour le FIX (maximum 12 satellites)
2.5 = PDOP (dilution de précision)
1.3 = Dilution de précision horizontale(HDOP)
2.1 = Dilution de précision verticale (VDOP)
*39 = Checksum
Non représentés CR et LF

Note : La DOP, dilution de précision est une indication de l'effet de la géométrie des satellites sur la précision du Fix.


6 - La trame : GSV


Satellites en vue - GPS

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

2 = Nombre de trames GSV avec les données complètes.
1 = Trame 1 de 2 trames (jusqu'à 3 trames)
08 = Nombre de satellites visibles (SV).
01 = N° d'identification du 1er Satellite.
40 = Elevation en degrés du 1er Satellite.
083 = Azimuth en degrés du 1er Satellite.
46 = Force du signal du 1er Satellite (Plus grand=meilleur)

(Cette séquence se répète jusqu'à 4 satellites par trames.
On peut donc avoir jusqu'à 3 trames GSV dans une transmision (12 satellites).
)
*75 = cheksum
non représentés les CR et LF

Ce qui vous explique la limitation à 12 satellites de nos petits appareils.


7 -La trame : VTG


Cap (direction) et vitesse sol GPS

$GPVTG,054.7,T,034.4,M,005.5,N,010.2,K


054.7,T = cap réel en Degrés , T (True track made good)
034.4,M = cap vrai magnétique en Degrés (Magnetic track made good)
005.5,N = Vitesse du déplacement par rapport au sol en Noeuds (N)
010.2,K = Vitesse du déplacement par rapport au sol en Kilomètres heure. (K)
non représentés CR et LF


8 - La Trame RMC


Données minimales recommandées de spécification GPS

$GPRMC,225446,A,4916.45,N,12311.12,W,000.5,054.7,191194,020.3,E*68


225446 = Heure du Fix 22:54:46 UTC
A = Alerte du logigiel de navigation ( A = OK, V = warning (alerte)
4916.45,N = Latitude 49°16.45' North
12311.12,W = Longitude 123°11.12' West
000.5 = vitesse sol, Knots
054.7 = cap (vrai)
191194 = Date du fix 19 Novembre 1994
020.3,E = Déclinaison Magnetique 20.3 deg Est
*68 = checksum obligatoire
Non représentés CR et LF

Ces données "minimales" , sont le plus souvent utilisées dans les programmes de navigation-GPS simples.

9 - Comment visualiser les trames.



Quelques logiciels gratuits de traitement et visualisation.


VisualGPS-ce : Lien




VisualGPS PC : Lien .

NAVTEC NMEA Monitor : Lien




WDGPS : Lien

WDGPS pour PPC : Lien





TomTom : Dont le driver enregistre les trames NMEA, qu'il est possible de récupérer et de visualiser avec un éditeur.





10 - Liens Intéressants







Et la recherche avec Google en haut de page



_____________________________________
Team GpsPassion - Modérateur
PPC250 - SD 1024 Mo - GPS Royaltek RGM-2000
Navigon MN|4.2 - Poi-Edit - POI-Warner - Autoroute 2004

Où commencer ?- N'oubliez pas : La Charte
Urrundik ikhusten ditut
15   L A T E S T    R E P L I E S    (Newest First)
barbudor Posted - 13 nov. 2010 : 11:36:28
Bonjour,

Non les trames NMEA ne peuvent pas contenir les trames brutes. Seules la liste des satellite et le niveau de réception est disponible.
Il peut y avoir plusieurs raisons pour que ton récepteur ne s'accroche pas même si tu as l'impression que la réception est bonne.

Pour faire ces calculs, dont tu sembles sous-estimer la complexité, il faut connaitre la position exacte de chaque satellite à chaque instant. Pour cela il faut calculer les orbites des satellites à partir des donnes d'éphémérides que l'on reçoit des satellites eux-mêmes.
La réception de ces éphémérides est la condition clef au décodage des positions. Il peut arriver que malgré un niveau de signal apparemment suffisant, le signal soit perturbé et que donc le récepteur ne puisse par remplir entièrement ses tables d'éphémérides. Donc pas de décodage de position.

Dans ce cas précis, même si tu avais toi même accès aux données reçues du satellite, comme elle sont incomplètes, tu n'arriverais pas à mieux.

La seule solution est de disposer des éphémérides précalculées, tel que l'offre la solution Sirf-Instant-Fix.... Mais c'est un autre TOPIC

A+

Drebon Posted - 12 nov. 2010 : 23:24:36
J'ai une petite question sur les trames nmea :

Est-il possible de remonter aux informations suivantes pour chaque satellite :

* date d'émission
* position du satellite

J'oublie peut-être un ou deux champs, mais en gros, je voudrais pouvoir obtenir les infos nécessaires à faire "à la main" le calcul de position.

En effet sur de nombreux appareils bas de gamme, le fix se fait ultra lentement alors qu'un grand nombre de satellite est visible.

De plus la plus part de ces appareils utilises une référence de temps extérieure et font un calcul sur des sphères au lieu de faire un calcul sans référence externe sur des hyperboloïdes.

En vrai, j'aimerais presque remonté au signal brut, mais ceci semble impossible. Du coup si les trames nmea comme la gsv pouvait aussi contenir de manière précise les dates d’émission et de réception (en relatif sur deux satellites) on devrait pouvoir faire le calcul de position.

Merci
barbudor Posted - 02 mars 2010 : 11:00:02
[ed - team gpspassion]

Message posté par Chahine : je suis entrain de communiquer avec le module gps et312. J'ai utilisé le mikrobasic pour envoyer les trames
je veux savoir exactement la signification de cette trame ( $PSRF100,01,9600,10,1,0,*0C ) et si je veux recevoir la position geografique comment faire?[ed ? multiples], merci pour l'aide




Bonjour

Google est ton ami.
http://www.gpsinformation.org/dale/nmea.htm

C'est une commande spécifique aux chipsets SirfIII
Elle sert notamment a faire passer le chip du mode NMEA au mode binaire SIrfIII (a éviter)

Pour la position géographique, la trame la plus couramment utilisée est $GPRMC (Recommended Minimum Data for Navigation). Il y a la position, la date et l'heure, l'orientation.
La trame GLL est plus courte et ne contient que la position mais pas la date et l'heure.

A+
flette Posted - 29 janv. 2010 : 11:49:08
Salut à tous!

j'aurais besoin d'une confirmation à propos des trames NMEA: j'ai cru comprendre que toutes ne sont pas supportées par tous les récepteurs GPS (voir cette page: http://vancouver-webpages.com/peter/nmeafaq.txt).

Est-ce vrai?
Et si oui, est-ce que ça veut dire que certaines trames ne sont pas émises du tout, ou bien avec des champs vides?

Malheureusement, je n'ai pas la norme NMEA0183 (payante) pour confirmer...

Merci beaucoup!
Popol2 Posted - 02 juil. 2009 : 13:21:08
Oui, enlève, de tête, 50m.
Pour l'altitude, l'incertitude est plus grande que pour les coordonnées, et peut atteindre 25 à 30m (une quinzaine de m pour les coordonnées).
On n'est donc pas à quelques mètres près pour une correction.
Sylver31 Posted - 02 juil. 2009 : 10:49:20
Merci Popol et désolé de ne pas avoir été au courant pour Extegarraia, je suis tout nouveau sur GPSPassion. J'avais vu ton post sur la trame NMEA GGA, mais ce que je ne comprend pas c'est si la correction peut être faite en dur sur le GPS ou si il faut juste tenir compte de tes explications et faire le calcul mental.
Popol2 Posted - 02 juil. 2009 : 10:20:56
Notre ami Extegarraia n'est plus.
http://www.gpspassion.com/forumsen/topic.asp?topic_id=118093

Pour ton problème, voir ma réponse ici : http://www.gpspassion.com/forumsen/topic.asp?TOPIC_ID=127311&whichpage=3#878847
Sylver31 Posted - 02 juil. 2009 : 10:05:37
Bonjour,
etxegarraia
En clair, est-il possible de corriger le défaut des NAVIGON 8110 mis à jour en 8310 ou faut-il simplement se contenter de faire le calcul dans sa tête pour avoir la vraie altitude? Merci de ta réponse.
ALAIN.
Leslie-Anne Posted - 29 mai 2009 : 09:30:24
Je ne savais justement pas les unités!!
Je viens de comprendre merci Popol et merci gpspassion !

Sinon oui on sait qu'on avait pas les même coordonnée car quand on a voulu mettre les coordonées que je recevait sur VE, on se retrouvait dans un champ (alors qu'on fait sa dans un Lycée !!!) on en a donc conclu qu'il fallait faire une conversion et on a réussi ! mais je n'arrive jamais a me souvenir en quel unité sont mes donnée et je n'arrivais pas a comprendre pourquoi moi j'avais des DD.ddd et sous VE aussi mais que l'on avait pas les même chiffres.
Je sais pas si je suis claire mais merci !!
Popol2 Posted - 28 mai 2009 : 11:35:15
Et si tu mettais les unités ?

Dans la trame, et comme indiqué en page 1, la notation est abrégée.
Je cite :

$GPGGA,123519,4807.038,N,01131.324,E,1,08,0.9,545.4,M,46.9,M, , *42
123519 = Acquisition du FIX à 12:35:19 UTC
4807.038,N = Latitude 48°07.038' N


Dans ton cas :
4640.9875976= 46°40.9875976' (degrés et minutes décimales), ce qui est égal à 46.6831266° en degrés décimaux.
Maintenant, pour ton autre valeur, Virtual Earth donne les positions en Degrés décimaux soit : 46.409875976°

Ces deux valeurs ne sont pas alors équivalentes.
Leslie-Anne Posted - 27 mai 2009 : 22:40:27
Mais y a t'il une différence entre les deux notations que j'ai mis plus haut ?

Popol2 Posted - 27 mai 2009 : 21:48:24
En fait l'unité °(degré), ou ' (minute) est indiquée et sa place est également intéressante pour identifier l'unité finale.
Exemple :
  • degré décimal = DD,dddd°
  • Degré puis minutes décimales =DD°mm,mm'
  • etc

Leslie-Anne Posted - 27 mai 2009 : 20:52:37
Excuse moi mais je suis entrain de remarquer que les coordonnée sont 4640.9875976 (c'est un exemple) donc c'est toujours du degré décimal ?
Car Virtual Earth donne ses coordonnées 46.409875976 ? Je ne sais aps trop comment interpreter mes données !!
Désolé je ne m'exprime pas bien mais je suis moi même un peu perdu ^^
Popol2 Posted - 26 mai 2009 : 12:25:41
Voir http://www.gpspassion.com/FORUMSEN/topic.asp?TOPIC_ID=16593

Si tu hésites pour les conversions, utilise un calculateur : http://www.gpsvisualizer.com/calculators
Leslie-Anne Posted - 26 mai 2009 : 10:54:54
Merci pour ta réponse !
Sinon je voulais savoir, j'ai diviser la latitude et la longitude par 60, je trouve donc une longitude et une latitude donc en DD,mm.ddddd ?
Merci d'avance

GpsPasSion Forums © 2002-2013_GpsPasSion/Manzanite Go To Top Of Page
This page was generated in 0,44 seconds. Powered By: Snitz Forums 2000 Version 3.4.05