Groupe d'Utilisateurs de Logiciels Libres
de Nancy et ses environs

MirabellugWiki

GpsMan

PagePrincipale :: DerniersChangements :: ParametresUtilisateur :: Vous êtes 38.107.191.91

En cours de rédaction


Utilisation d'une antenne gps externe USB avec gpsman


Cette documentation à été réalisée dans le cadre de la cartograhie de Vandoeuvre pour l'arrivée des RMLL

Le but étant de récupérer des traces GPS et de les importer sur le site de Un point c'est tout

Principe de base

Les données GPS peuvent être recueillies de 2 manières : par un GPS autonome ou par une antenne reliée à un ordinateur. Dans les deux cas, on importe la trace dans GPS Manager (=gpsman) pour ensuite l'enregistrer dans un format compatible avec Un point c'est tout. On peut également modifier la trace dans gpsman par exemple pour retirer des points aberrants.

Choix de l'antenne gps usb

Pour que gpsman puisse utiliser une antenne, il faut qu'elle soit compatible sur le plan matériel et logiciel. Soit l'antenne se connecte sur port série auquel cas la communication ne pose pas de problème, soit elle se connecte sur un port USB. Dans ce cas, il est probable qu'un convertisseur série/usb soit intégré dans l'antenne et nécessite le module noyau kivabien. Dans la configuration du noyau, les modules convertisseurs série/usb sont situés là :

Devices -> Usb support -> usb serial converter support -> le module kivabien

Comme on ne sait lequel prendre, on les compile tous en module :-).

Avant de se jetter sur la compil du noyau comme un our sur une pastèque, on peut vérifier par simple connexion du cable de l'antenne si le noyau supporte bien le convertisseur série/usb. Le support effectif se traduit par un message du type :

pl2303 1-1:1.0: PL-2303 converter detected
usb 1-1: PL-2303 converter now attached to ttyUSB0
usbcore: registered new driver pl2303
drivers/usb/serial/pl2303.c: Prolific PL2303 USB to serial adaptor driver v0.11

Ici, le convertisseur est un prolific pl2303. On s'en gratte le nombril avec un fémur de homard. En revanche, on voit que la bestiole est accessible par le device créé pour l'occasion : ttyUSB0. A noter pour le point suivant.

Configuration de gpsman avec une antenne USB

Au premier lancement de gpsman on doit le configurer :
premier démarrage
On va commencer par passer l'interface en français en cliquant sur "User Interface" et en choisissant... ....français. Puis on choisit le port série sur "Serial port and files" :
choix_port
Comme indiqué au point précédent, on entre /dev/ttyUSB0 sur la ligne du haut (Attention : USB0 en majuscule !)
Aprés confirmation, on revient sur la première fenêtre et on choisit "Receiver parameters" :
choix_nmea
On choisit le protocole NMEA O183 et on peut augmenter le nombre maxi de points pour une trace. Avec 86400, on peut tracer pendant une journée non-stop.
On quitte tout et on relance gpsman.

Trace temps réel

On a maintenant une fenêtre de plus :
lancement
On active successivement "Récepteur GPS -> Tracage en temps réel -> Charger le journal " puis "Récepteur GPS -> Tracage en temps réel -> Enregistrement"
Gpsman mémorise alors les points envoyés par le GPS et le montre dans la fenêtre de tracking :
tracking
Dans cette fenêtre, on peut régler, la période d'acquisition de 1 point par seconde à 1 point toutes les 1mn30 environ. Si vous vous déplacez à pieds, un point toutes les 5 secondes est suffisant. En revanche, si vous roulez normalement en Ducati, calez-vous à 1 point par seconde ...
Avec le bouton "Faire une route", vous mémorisez dans le journal de gpsman la trace que vous venez de faire.
route
Vous pouvez mémoriser plusieurs traces dans le même journal.

Sauvegarde

On doit ensuite sauvegarder cette trace pour pouvoir l'envoyer sur le site de Un point c'est tout. Il suffit de cliquer sur "Sauvegarde" dans la fenêtre de liste des traces :
sauvegarde
Dans le dialogue qui s'ouvre, vous donnez un nom à votre fichier de sauvegarde que vous chargererez sur Un point c'est tout.

Utilisation d'une antenne gps externe USB avec gpsd

Gpsd est un server de GPS qui rend accessible les données transmises par l'antenne à des clients, éventuellement distants. Tout ce passe en ligne de commande, ce qui permet de recycler une vieille trapanelle en machine d'acquisition : pas b'zoin de serveur X ! En contrepartie, vous n'avez pas le dessin temps réel sur l'écran.

L'installation sous debian du serveur gpsd et du client

On suppose que l'antenne est bien reconnue par le noyau et correspond au device /dev/tty/USB0.
Sous Debian, on installe tout ça comme d'habitude :
$apt-get install gpsd gpsd-clients
Je tourne en sid et il se peut qu'en stable ou testing, les fonctionnalités soient différentes. En particulier gpspipe ne semble pas présent dans la version stable.

Lancement du server

Hyper compliqué : $ gpsd /dev/ttyUSB0

Lancement du client

Là encore, ruineux : $ gpspipe -r

Par défaut, l'option -r sort les données en NMEA sur la sortie standart (l'ecran). Pour faire un fichier avec cette sortie, il suffit de rediriger la sortie de la commande :
$ gpspipe -r > matrace

Le fichier "matrace" est écrit en permanence avec le flux NMEA; Pour suivre ce fichier ... ...à la trace (sic !) , on peut ouvrir une deuxième console et faire :
$ tail -f matrace
On interrompt cette commande par un ctrl-C et on peut la relancer à loisir, l'intérêt étant de pouvoir faire autre chose pendant que l'acquisition se fait en arrière plan. Un ctrl-C dans la première console arrête l'enregistrement. Le fichiers de données NMEA n'est pas directement exportable sur Un point c'est tout. On l'importe dans gpsman pour le sauvegarder ensuite au format kivabien, comme expliqué dans la section Sauvegarde précédente.
Le flux issu de l'antennes contient de nombreuses données. Ce sont 4 ou 5 lignes qui sont écrites à chaque seconde dans le fichier. On peut filtrer pour n'avoir que la ligne qui contient les coordonnées dans le deuxième console :
$ tail -f matrace | grep GGA

Importation des données dans gpsman

Après avoir lancé gpsman, on importe le fichier "matrace" comme indiqué sur le skrinechôt ci-dessous.
import_nmea
Il n'y a pas de commentaire sur cette page. [Afficher commentaires/formulaire]