Archive pour la catégorie 'GPS'

Display NMEA from GPS directly to Google Maps

Wednesday 18 July 2007
[inline]
      
[/inline]

Conversions de formats de positions GPS

Monday 16 July 2007

Notations :

Les minuscules (d, m, s) font références aux nombres décimaux (exemple : 58.65375, 39.225, 13.5).
Les majuscules (D, M) font références aux nombres entiers (parties entières des nombres décimaux) (par exemple : 58, 39).
La fonction TRUNC renvoie la partie entière d'un nombre décimal (par exemple : TRUNC(58.65375) = 58, TRUNC(−58.65375) = −58).
Le signe est toujours conservé quelque soit la notation utilisée.

A partir de degrés en décimal (d) vers degrés minutes en décimal (D m) :

D = TRUNC(d)
m = (d − D) × 60
Exemple: d = 58.65375°
D = TRUNC(58.65375°) = 58°
m = (58.65375 − 58) × 60′ = 0.65375 × 60′ = 39.225′
Par conséquent : 58.65375° correspond à 58° 39.225′.

A partir de degrés en décimal (d) vers degrés minutes secondes (D M s):

D = TRUNC(d)
M = TRUNC((d − D) × 60)
s = (d − D − M/60) × 3600 = (d − D) × 3600 − M × 60
Exemple: d = 58.65375°
D = TRUNC(58.65375°) = 58°
M = TRUNC((58.65375 − 58) × 60′) = TRUNC(39.225′) = 39′
s = (58.65375 − 58 − 39/60) × 3600″ = 0.0375 × 3600″ = 13.5″
s = (58.65375 − 58) × 3600″ − 39 × 60″ = 2353.5″ − 2340″ = 13.5″
Par conséquent, 58.65375° correspond à 58° 39′ 13.5″.

A partir de degrés minutes en décimal (D m) vers degrés en décimal (d):

d = D + m/60
Exemple: D = 58°, m = 39.225′
d = 58° + 39.225°/60 = 58° + 0.65375° = 58.65375°
Par conséquent, 58° 39.225′ correspond à 58.65375°.

A partir de degrés minutes en décimal (D m) vers degrés minutes secondes en décimal (D M s):

D = D
M = TRUNC(m)
s = (m − M) × 60
Exemple: D = 58°, m = 39.225′
D = 58°
M = TRUNC(39.225′) = 39′
s = (39.225 − 39) × 60″ = 0.225 × 60″ = 13.5″
Par conséquent, 58° 39.225′ correspond à 58° 39′ 13.5″.

A partir de degrés minutes secondes en décimal (D M s) vers degrés en décimal (d) :

d = D + M/60 + s/3600
Exemple: D = 58°, M = 39′, s = 13.5″
d = 58° + 39°/60 + 13.5°/3600 = 58° + 0.65° + 0.00375° = 58.65375°
Par conséquent, 58° 39′ 13.5″ correspond à 58.65375°.

A partir de degrés minutes secondes en décimal (D M s) vers degrés minutes en décimal (D m) :

D = D
m = M + s/60
Exemple: D = 58°, M = 39′, s = 13.5″
D = 58°
m = 39′ + 13.5′/60 = 39′ + 0.225′ = 39.225′
Par conséquent, 58° 39′ 13.5″ correspond à 58° 39.225′.

A partir d'une trame en NMEA 0183 (Dm,H) vers degrés minutes en décimal hémisphère (D m H)
Les coordonnées en NMEA 0183 se présentent comme suit dans les trames : …,Dm,H,…
où H est l'hémisphère (N = nord, S = sud, E = est, W = ouest).
D = TRUNC(Dm/100)
m = Dm − 100 × D
H = H
Exemple: à partir d'une trame NMEA qui contient cette position : …,5839.225,N,00910.660,E,…
D = TRUNC(5839.225/100) = 58°
m = 5839.225 − 100 × 58 = 5839.225 − 5800 = 39.225′
H = N D = TRUNC(00910.660/100) = 009°
m = 00910.660 − 100 × 009 = 910.660 − 900 = 10.660′
H = E
Par conséquent, 5839.225,N,00910.660,E dans une trame NMEA 0183 équivaut à la position 58° 39.225′ N 009° 10.660′ E.

A partir de degrés minutes en décimal hémisphère (D m H) vers NMEA 0183 (Dm,H) voir ci-dessus :

Dm,H = 100 × D + m, H
Exemple: D = 58°, m = 39.225′, H = N
Dm,H = 100 × 58 + 39.225, N = 5800 + 39.225, N = 5839.225,N
Par conséquent, 58° 39.225′ N équivaut à 5839.225,N dans une trame NMEA 0183.

Exemple de position :
Les coordonnées 58.65375° N 009.17767° E
58° 39.225′ N 009° 10.660′ E
58° 39′ 13.5″ N 009° 10′ 39.6″ E représentent la même position.

Source : http://home.online.no/~sigurdhu/Deg_formats.htm

Standard NMEA 0183 du GPS

Saturday 14 July 2007

Le protocole est à la base propriétaire et a été obtenu par ingénierie inverse... Vous trouverez toute la documentation sur ce site web en anglais malheureusement : http://www.gpsinformation.org/dale/nmea.htm

Créer un lien qui renvoie un position dans Google Earth (url vers kml)

Tuesday 29 May 2007

Introduisez votre latitude et longitude (en format degrés puis en décimal après la virgule) dans l'url suivante :
http://maps.google.com/maps?q=@latitude,longitude&output=kml

Exemple :
http://maps.google.com/maps?q= @50.235657,4.765789&output=kml

Trames NMEA pour débugger vos programmes sur les 4 parties de la terre

Thursday 28 December 2006
CODE:
  1. $GPGGA,232420.59,3513.8385,S,14900.7851,E,1,05,3.4,00519,M,,,,*3F
  2. $GPGGA,231713.0,3910.413,N,07641.994,W,1,05,1.35,00044,M,-033,M,,*68
  3. $GPGGA,162617.0,4548.339,N,00837.719,E,1,07,0.97,00262,M,048,M,,*5D
  4. $GPGGA,225426,3442.837,S,05822.150,W,1,7001.2,07,M,015,M,,*7B

CODE:
  1. $GPRMC,111329,V,3355.0661,S,15108.5337,E,000.0,080.8,170706,,,N*75
  2. $GPRMC,164608,A,4017.704,N,11836.347,W,3887.7,-286.4,1901104,0.000,E*4F
  3. $GPRMC,123519,A,4807.038,N,01131.000,E,022.4,084.4,230394,003.1,W*6A
  4. $GPRMC,122040.481,A,5538.4237,S,01238.2698,W,0.000000,214.43,010806,,*0F

Petite astuce : si vous voulez en trouver d'autres, utilisez Google Code Search avec comme mot clefs de recherche ceci : GPRMC,.*(,S,).*(,W,) ou GPGGA,.*(,S,).*(,W,).

Calcul en ligne du checksum d’une commande en NMEA

Wednesday 6 December 2006

Le checksum d'une commande en NMEA est obtenu en réalisant un OR exclusif entre tous les caractères compris entre $ et * non inclus. Encodez votre commande et appuyez sur tab une fois fini.

Exemple : vous devez obtenir 79 pour la comme suivante GPGGA,155537,6006.718,N,02426.290,E,1,05,2.4,50.5,M,19.7,M,,. Commande complète telle qu'elle est envoyée par le module GPS : $GPGGA,155537,6006.718,N,02426.290,E,1,05,2.4,50.5,M,19.7,M,,*79

Commande :

Somme de contrôle :

Visualiser les données envoyées par un GPS en NMEA

Wednesday 15 November 2006

J'ai trouvé un petit logiciel gratuit (VisualGPS) qui permet d'afficher visuellement les positions, vitesses, altitudes, les informations concernant les satellites, etc...