NOV
14
Lecture de données GPS depuis un pocket PC
14.11.2007 | | Auteur : Ayashi | Catégorie : Programmation


Connecter un GPS bluetooth à son PDA et lire les données reçues? Pas si compliqué que ça! Nous allons parler ici sommairement du protocole NMEA ( National Marine Electronics Association ) introduit par la marine et qui est utilisé par les récepteurs GPS pour transmettre des données via le port série à un ordinateur. Ce protocole de type ASCII ( tous les messages sont envoyés au format texte ) définit un certain nombre de codes ( GPGGA / GPGSA / GPRMC / .. ) qui permettent d'identifier la position actuelle, l'angle et la vitesse de déplacement, le nombre de satellites,.. Les trames provenant d'un récepteur GPS commencent toujours par les deux lettres GP. ( GPS Receiver )

Un GPS ( bluetooth ou filaire ) dialogue via le protocole de transmission RS232 le standard étant 4800b/s, 8Bits, 1 bit de stop, pas de parité. Cette vitesse limite le nombre de phrases NMEA que le GPS peut transmettre à 530 caractères par seconde ( 4800 / ( 8 + 1 )) soit en moyene 5-6 trames.

Exemple de trame NMEA :
$GPGGA,130442.000,4344.6476,N,00123.5622,E,1,05,9.6,187.5,M,,,,0000*09
$GPGSA,A,3,30,05,07,24,06,,,,,,,,9.6,9.6,1.0*32
$GPRMC,130442.000,A,4344.6476,N,00123.5622,E,0.20,75.15,141107,,*32
$GPVTG,75.15,T,,M,0.20,N,0.4,K*50

Le protocole NMEA est donc constitué de phrases, celles-ci commencent par le caractère $ et se terminent par un retour chariot ( code ASCII 13 ). Chaque éléments de cette phrase est délimité par une virgule. Le premier élément définit le type de phrase :
  • GPGGA : Position actuelle.
  • GPGSA : Information sur la précision.
  • GPGSV : Information sur les satellites.
  • GPRMC : Trame minimum de positionnement.
  • GPVTG : Vitesse / Direction.
  • ...
Nous allons dans un premier temps nous intéresser à la trame GPGGA. La trame de l'exemple ci-dessus contient les informations :
  • Temps universel : 130442.000
  • Latitude : 4344.6476 N
  • Longitude : 00123.5622 E
  • Satellites : 05
  • Altitude : 187.5 M
L'exemple suivant en VisualBasic .NET permet de créer une application très simple pouvant s'exécuter sur un PDA permettant de se connecter au port série et extraire quelques données ( Latitude, Longitude, Altitude, Satellites ) dans une structure. Cet exemple peut servir de base pour réaliser des applications plus complexes de positionnement ou de tracking.
L'ouverture du port série COM7 ( à vous d'identifier le bon! ) en lecture donne : ..la lecture des données provennant du port série se fait au travers de cette fonction : ..nous allons ensuite stocker les données dans une nouvelle structure que nous allons créer : ..ne reste plus qu'à parser les phrases NMEA reçues et les stocker dans notre structure : Liens Complémentaires

Tags : gps, pda, .net | Digg!
Commentaires  | Ajouter un commentaire
Rencontres
21.12.09 / 12:49
Salut,Merci pour ce bon boulot. ça un un bon bout de temps que je chercher ce tuto sur internet mais aujourd'hui ma recherche se termine ici. Merci et bravo le bon boulot
Rechercher sur internet  ?  | Rechercher!
Trackback
Utilisez le lien http://www.sunyday.net/trackback-Lecture-de-donnees-GPS-depuis-un-pocket-PC pour faire un trackback vers cette article depuis votre site web. Les trackbacks sont soumis à une approbation mutuelle et susceptibles d'être supprimés si jugés indésirables.
Retrieve RSS feed. Get notified by eMail. Meteo Parser.
Computing widgets...
Jean-Damien POGOLOTTI© 2k6-2k7 | Design // Code

Qui suis-je?

Touche à tout restant bouche bée devant la complexité et la cohérence de ce monde je m'évertue à essayer d'en comprendre les rouages. En passant par la météorologie, la physique ou bien l'informatique, tout est une raison d'apprendre!
Comment les gens arrivent-il ici?
 en  +  active  nuls  terrestre  menu  des  www.sunyday.net  de  trou  ldap  sunyday.net  image  regex  authentification  regexp  google  magn%C3%A9tique  module  line  protocole  map  latitude  longitude  web  browser  resize  d%27ozone  fading  mercator  conversion  et  convertir  la  snmp  synop  explication  dans  sunyday  lldp  url  script  SUR  anim%C3%A9  PAGE  php  adresse  javascript  fade  gd  metar  photovoltaique  html  couche  convertisseur  ntfs  pour  une  CODE  le  coordonn%C3%A9es  gps  un  cli  ad  les  avec  directory  ajax  champ  

Sunyday.net