Différences entre versions de « RASP-GPS-ULTIME-Utiliser »

De MCHobby - Wiki
Sauter à la navigation Sauter à la recherche
(Page créée avec « {{RASP-GPS-ULTIME-NAV}} {{bloc-etroit|text=Maintenant que avez un GPS et état de marche et '''gpsd''' fonctionnant avec lui, il est temps de faire quelque-chose avec ces do... »)
 
 
Ligne 16 : Ligne 16 :
 
     try:
 
     try:
 
         report = session.next()
 
         report = session.next()
         # Attendre après une information 'TPV' et afficher l'heure
+
         # Attendre après un rapport d'information 'TPV' et afficher l'heure
         # Pour voir toutes les données, décommentez la ligne ci-dessous
+
         # Pour voir toutes les données, dé-commentez la ligne ci-dessous
 
         # print report
 
         # print report
 
         if report['class'] == 'TPV':
 
         if report['class'] == 'TPV':
Ligne 34 : Ligne 34 :
 
[[Fichier:RASP-GPS-ULTIME-Utiliser-01.png]]
 
[[Fichier:RASP-GPS-ULTIME-Utiliser-01.png]]
  
Looking for position data rather than just the timestamp? Essentially, all you have to do is parse the 'report' data following the example above.
+
Vous êtes plus intéressé par les données de localisation? Ce que vous aurez à faire, pour l'essentiel, est de '''parser''' les informations du rapport en suivant l'exemple du code ci-dessus.
  
To see what data is available, you can uncomment the 'print report' line, and then just look at the different values and class names and pick and choose whatever you want.
+
Vous pouvez dé-commenter la logne 'print report' pour voir quelles sont les informations disponibles et ensuite regarder les différentes valeurs et nom de classe qui défilent. Ne vous restera plus, ensuite, qu'a sélectionner l'information qui vous intéresse.
  
For example, you could use the following code to get the current speed using the TPV class:  
+
Par exemple, vous pouvez utiliser le code suivant pour extraire la vitesse de la classe TPV:  
  
 
  <nowiki>        if report['class'] == 'TPV':
 
  <nowiki>        if report['class'] == 'TPV':
 
             if hasattr(report, 'speed'):
 
             if hasattr(report, 'speed'):
 
                 print report.speed * gps.MPS_TO_KPH</nowiki>
 
                 print report.speed * gps.MPS_TO_KPH</nowiki>
 +
Vous noterez au passage que la vitesse est fournie en Miles Per Hour (Mile par Heure) et qu'il faut la convertir en Kilomètre par heure en multipliant la vitesse avec la constante MPS_TO_KPH.
  
That's it! It's pretty painless, and now it's up to you to figure out what you want to do with you latitude, longitude, date and time, speed, altitude, etc.!  
+
Voila! Ce n'est vraiment pas compliqué... vous pouvez maintenant imaginer ce que vous pouvez réaliser à l'aide de la latitude, longitude, date et heure, vitesse, altitude, etc.!  
  
 
{{RASP-GPS-ULTIME-TRAILER}}
 
{{RASP-GPS-ULTIME-TRAILER}}

Version actuelle datée du 24 juillet 2013 à 20:23


MCHobby investit du temps et de l'argent dans la réalisation de traduction et/ou documentation. C'est un travail long et fastidieux réalisé dans l'esprit Open-Source... donc gratuit et librement accessible.
SI vous aimez nos traductions et documentations ALORS aidez nous à en produire plus en achetant vos produits chez MCHobby.

Maintenant que avez un GPS et état de marche et gpsd fonctionnant avec lui, il est temps de faire quelque-chose avec ces données!

Le plus facile pour démarrer est d'utiliser WebIDE et un peu de code Python pour accéder à gpsd.

Créez un nouveau fichier dans WebIDE, ajoutez et exécutez ensuite le code suivant:

import gps
     
# Ecouter sur le port 2947 (gpsd) de localhost
session = gps.gps("localhost", "2947")
session.stream(gps.WATCH_ENABLE | gps.WATCH_NEWSTYLE)
     
while True:
    try:
         report = session.next()
         # Attendre après un rapport d'information 'TPV' et afficher l'heure
         # Pour voir toutes les données, dé-commentez la ligne ci-dessous
         # print report
         if report['class'] == 'TPV':
             if hasattr(report, 'time'):
                 print report.time
    except KeyError:
       pass
    except KeyboardInterrupt:
       quit()
    except StopIteration:
       session = None
       print "GPSD est arrete (has terminated)"

Vous devriez voir quelque-chose de similaire à ceci (avec une mise-à-jour toutes les secondes):

RASP-GPS-ULTIME-Utiliser-01.png

Vous êtes plus intéressé par les données de localisation? Ce que vous aurez à faire, pour l'essentiel, est de parser les informations du rapport en suivant l'exemple du code ci-dessus.

Vous pouvez dé-commenter la logne 'print report' pour voir quelles sont les informations disponibles et ensuite regarder les différentes valeurs et nom de classe qui défilent. Ne vous restera plus, ensuite, qu'a sélectionner l'information qui vous intéresse.

Par exemple, vous pouvez utiliser le code suivant pour extraire la vitesse de la classe TPV:

        if report['class'] == 'TPV':
            if hasattr(report, 'speed'):
                print report.speed * gps.MPS_TO_KPH

Vous noterez au passage que la vitesse est fournie en Miles Per Hour (Mile par Heure) et qu'il faut la convertir en Kilomètre par heure en multipliant la vitesse avec la constante MPS_TO_KPH.

Voila! Ce n'est vraiment pas compliqué... vous pouvez maintenant imaginer ce que vous pouvez réaliser à l'aide de la latitude, longitude, date et heure, vitesse, altitude, etc.!


Source: Adafruit Ultimate GPS on the Raspberry Pi écrit par Kevin Townsend pour Adafruit Industrie
Traduction réalisée par Meurisse D pour MCHobby.be.

Créé par Kevin Townsend pour AdaFruit Industries.

Toute référence, mention ou extrait de cette traduction doit être explicitement accompagné du texte suivant : «  Traduction par MCHobby (www.MCHobby.be) - Vente de kit et composants » avec un lien vers la source (donc cette page) et ce quelque soit le média utilisé.

L'utilisation commercial de la traduction (texte) et/ou réalisation, même partielle, pourrait être soumis à redevance. Dans tous les cas de figures, vous devez également obtenir l'accord du(des) détenteur initial des droits. Celui de MC Hobby s'arrêtant au travail de traduction proprement dit.

Traduit avec l'autorisation d'AdaFruit Industries - Translated with the permission from Adafruit Industries - www.adafruit.com