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
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.
Sous ce standard, toutes les données sont transmises :
retour chariotet
saut de ligne.
Les données sont présentées sous forme de trames, transmises les unes à la suite des autres.
GP | Global Positioning System |
LC | Loran-C receiver |
OM | Omega Navigation receiver |
II | Integrated Instrumentation |
GGA | GPS Fix et Date |
GLL | Positionnement Géographique Longitude - Latitude |
GSA | DOP et satellites actifs |
GSV | Satellites visibles |
VTG | Cap et vitesse sol (en nœuds et km/h) |
RMC | Données minimales exploitables spécifiques |
Somme de contrôle (checksum), optionnel ou pas selon le cas, précédé du signe *, est la somme de contrôle générée par un OU exclusif des caractères situés entre $ et *.
retour chariotet
saut de ligne.
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
123519 | Acquisition à 12:35:19 UTC |
4807.038,N | Latitude 48° 07.038' nord |
01131.324,E | Longitude 11° 31.324' est |
1 | Type de positionnement : 0 = non valide, 1 = GPS, 2 = DGPS |
08 | Nombre de satellites en poursuite |
0.9 | DOP (Horizontal dilution of position) Dilution horizontale |
545.4,M | Altitude, en mètres, 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 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 |
*42 | Somme de contrôle (checksum) |
Cette trame fournit les coordonnées géographiques et l'heure. Exemple :
$GPGLL,4916.45,N,12311.12,W,225444,A
4916.45,N | Latitude 49° 16.45' nord |
12311.12,W | Longitude 123° 11,12' ouest |
225444 | Acquisition à 22:54:44 UTC |
A | Données valides |
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
A | Latitude 49° 16.45' nord |
3 | Longitude 123° 11,12' ouest |
04,05 | PRNs (N° d'Id) des satellites utilisés pour l'acquisition (maximum 12) |
2.5 | Dilution de précision (PDOP) |
1.3 | Dilution de précision horizontale(HDOP) |
2.1 | Dilution de précision verticale (VDOP) |
*39 | Somme de contrôle (checksum) |
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
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 |
01 | N° d'identification du 1er Satellite |
40 | Elévation en degrés du 1er Satellite |
083 | Azimut en degrés du 1er Satellite |
46 | Force du signal du 1er Satellite (Plus grand=meilleur) |
*75 | Somme 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).
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,T | Cap réel, en ° |
034.4,M | Cap vrai magnétique, en ° |
005.5,N | Vitesse de déplacement par rapport au sol, en nœuds |
010.2,K | Vitesse de déplacement par rapport au sol, en km/h |
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
225446 | Acquisition à 22:54:46 UTC |
A | Alerte du logiciel de navigation ( A = OK, V = warning (alerte)) |
4916.45,N | Latitude 49° 16,45' nord |
12311.12,W | Longitude 123° 11,12' ouest |
000.5 | Vitesse sol, en nœuds |
054.7 | Cap réel, en ° |
191194 | Date du point GPS, le 19 novembre 1994 |
020.3,E | Déclinaison magnétique de 20,3° est |
*68 | Somme de contrôle (checksum) |