PROTOCOLE NMEA 0183

Présentation

Il existe plusieurs protocoles de communication pour les récepteurs GPS. Certains sont standardisés comme NMEA 0183 ou Sirf, d'autres propriétaires comme Garmin ou Delorme. Nous nous intéressons ici au protocole NMEA 0183

L'association NMEA

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, est d'harmoniser et de standardiser les équipements de la marine.

NMEA est à l'origine de nombreux standards et en particulier du Standard NMEA 0183. Dans ce qui suit, le Standard NMEA est défini "simplement" et uniquement comme étant le protocole de transmission des données entre les instruments et équipements électroniques liés au GPS.

Le standard NMEA 0183

Sous ce standard, toutes les données sont transmises :

Les données sont présentées sous forme de trames, transmises les unes à la suite des autres.

Trames NMEA 0183

GGA

Cette trame fournit l’heure du système GPS, les coordonnées géographiques, et toutes les informations relatives à la précision de mesure et au repère. Exemple :

$GPGGA,123519,4807.038,N,01131.324,E,1,08,0.9,545.4,M,46.9,M, , *42
123519Acquisition à 12:35:19 UTC
4807.038,NLatitude 48° 07.038' nord
01131.324,ELongitude 11° 31.324' est
1Type de positionnement : 0 = non valide, 1 = GPS, 2 = DGPS
08Nombre de satellites en poursuite
0.9DOP (Horizontal dilution of position) Dilution horizontale
545.4,MAltitude, en mètres, au dessus du MSL (mean see level) niveau moyen des Océans
46.9,MCorrection de la hauteur de la géoïde en Mètres par rapport à 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
*42Somme de contrôle (checksum)

GLL

Cette trame fournit les coordonnées géographiques et l'heure. Exemple :

$GPGLL,4916.45,N,12311.12,W,225444,A
4916.45,NLatitude 49° 16.45' nord
12311.12,WLongitude 123° 11,12' ouest
225444Acquisition à 22:54:44 UTC
ADonnées valides

GSA

Cette trame fournit les satellites actifs et des indications sur les précisions des mesures. Exemple :

$GPGSA,A,3,04,05,,09,12,,,24,,,,,2.5,1.3,2.1*39
ALatitude 49° 16.45' nord
3Longitude 123° 11,12' ouest
04,05PRNs (N° d'Id) des satellites utilisés pour l'acquisition (maximum 12)
2.5Dilution de précision (PDOP)
1.3Dilution de précision horizontale(HDOP)
2.1Dilution de précision verticale (VDOP)
*39Somme de contrôle (checksum)

GSV

Cette trame donne les caractéristiques des satellites visibles. Exemple :

$GPGSV,2,1,08,01,40,083,46,02,17,308,41,12,07,344,39,14,22,228,45*75
2Nombre de trames GSV avec les données complètes
1Trame 1 de 2 trames (jusqu'à 3 trames)
08Nombre de satellites visibles
01N° d'identification du 1er Satellite
40Elévation en degrés du 1er Satellite
083Azimut en degrés du 1er Satellite
46Force du signal du 1er Satellite (Plus grand=meilleur)
*75Somme de contrôle (checksum)

La séquence se répète jusqu'à 4 satellites par trames. On peut donc avoir jusqu'à 3 trames GSV dans une transmission (12 satellites).

GTV

Cette trame indique le cap et la vitesse sol. Exemple :

$GPVTG,054.7,T,034.4,M,005.5,N,010.2,K
054.7,TCap réel, en °
034.4,MCap vrai magnétique, en °
005.5,NVitesse de déplacement par rapport au sol, en nœuds
010.2,KVitesse de déplacement par rapport au sol, en km/h

RMC

Cette trame communique les données minimales. Exemple :

$GPRMC,225446,A,4916.45,N,12311.12,W,000.5,054.7,191194,020.3,E*68
225446Acquisition à 22:54:46 UTC
AAlerte du logiciel de navigation ( A = OK, V = warning (alerte))
4916.45,NLatitude 49° 16,45' nord
12311.12,WLongitude 123° 11,12' ouest
000.5Vitesse sol, en nœuds
054.7Cap réel, en °
191194Date du point GPS, le 19 novembre 1994
020.3,EDéclinaison magnétique de 20,3° est
*68Somme de contrôle (checksum)