Adafruit GPS ULTIMATE

De MCHobby - Wiki
Sauter à la navigation Sauter à la recherche


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.

Introduction

GPS-Ultimate.jpg

http://ladyada.net/products/ultimategps/

Raccorder au PC

Les modules GPS sont vraiment merveilleux, dès qu'ils sont allumés ils essayent de se synchroniser (FIX) et produisent des données. Comme presques tous les GPS existants, Le GPS Ultimate d'Adafruit utilise une logique TTL sur sa sortie série pour envoyer ses données.

La meilleure façon de commencer à tester un GPS est de le brancher directement sur un ordinateur par l'intermédiaire du convertisseur Série TTL vers USB d'un Arduino.

Vous pouvez aussi utiliser un adaptateur FTDI ou tout autre adaptateur TTL mais dans cette démonstration nous allons utiliser un simple Arduino.

Le code

Pour commencer, charger un sketch "blanc" dans votre Arduino:

// Ce sketch vous permet de by-passer l'Atmega
// et de connecter des senseurs (comme un GPS ou lecteur d'empreinte) 
// directement sur le convertisseur USB/Série de votre carte
// Arduino.
 
// Connecter VIN au +5V
// Connecter GND à la masse/ground
// Connecter GPS RX (réception donnée dans le GPS) vers Arduino Pin 0 (digitiale)
// Connecter GPS TX (sortie de donnée du GPS) vers Arduino Pin 1 (digitiale)
 
void setup() {}
void loop() {}

Voici comment contourner la puce ATMega, vous vous raccordez directement sur le convertisseur USB/Serial.

Une fois que vous avez chargé le scketch, raccordez le GPS comme suit:

Le montage

GpsUltimatedirectwire.jpg

Messages GPS

Branchez ensuite le cable USB et ouvrez le moniteur Serie d'Arduino IDE. Veillez à sélectionner 9600 baud dans la liste déroulante.

Vous verrez alors apparaître un texte fort semblable à ce qui suit:

GpsUltimateFetch.jpg

Ce que vous voyez sont les "messages NMEA" brutes que le module produit.

Il y a différents types de messages NMEA, les messages les plus couramment utilisés sont:

  1. $GPRMC - Global Positioning Recommended Minimum Coordinates
  2. $GPGGA

Ces deux messages produisent les informations suivantes:

  • temps,
  • date,
  • latitude,
  • longitude,
  • altitude,
  • Vitesse estimé (au sol),
  • Type de FIX (synchronisation).

Le type de Fix indique si le GPS est synchronisé sur des satellites et s'il reçoit assez de données pour déterminer la position (2D fix) ou la position+altitude (3D fix).

Pour plus d'information sur les messages NMEA et ce qu'ils contiennent, vous pouvez vous documenter sur le site suivant www.gpsinformation.org/dale/nmea.htm

Si vous prenez attention au contenu de la capture présentée ci-dessus, vous pouvez constater qu'il y a beaucoup de virgules (sans données en elles).
C'est parce que le module est sur un bureau, à l'intérieur, et qu'il n'est pas synchronisé (pas de FIX).
Pour que le module se synchronise, il faut qu'il soit à l'extérieur.

GPS modules will always send data EVEN IF THEY DO NOT HAVE A FIX! 
In order to get 'valid' (not-blank) data you must have the GPS module directly outside, with the square ceramic antenna
pointing up with a clear sky view.
In ideal conditions, the module can get a fix in under 45 seconds. however depending on your location, satellite configuration, 
solar flares, tall buildings nearby, RF noise, etc it may take up to half an hour (or more) to get a fix!
This does not mean your GPS module is broken, the GPS module will always work as fast as it can to get a fix. 

Interprétation des résultats - Coordonnées - Google Maps

Look for the line that says $GPRMC,194509.000,A,4042.6142,N,07400.4168,W,2.03,221.11,160412,,,A*77

This line is called the RMC (Recommended Minimum) sentence and has pretty much all of the most useful data. Each chunk of data is seperated by a comma.

The first part 194509.000 is the current time GMT. The first two numbers 19 indicate the hour (1900h, otherwise known as 7pm) the next two are the minute, the next two are the seconds and finally the millseconds. So the time when this screenshot was taken is 7:45 pm and 9 seconds

The second part is the 'status code', a savoir:

  • V that means the data is Void (invalid).
  • A that means its Active (the GPS could get a lock/fix)

The next 4 pieces of data are the geolocation data. According to the GPS, my location is 4042.6142,N (Latitude 40 degrees, 42.3932 minutes North) & 07400.4168,W. (Longitude 74 degrees, 0.4680 minutes West)

To look at this location in Google maps, type +40° 42.6142', -74° 00.4168' into the google maps search box.
Unfortunately gmaps requires you to use +/- instead of NSWE notaion. N and E are postive, S and W are negative.

The next data is the ground speed in knots. We're going 2.03 knots

After that is the tracking angle, this is meant to approximate what 'compass' direction we're heading at based on our past travel

The one after that is 160412 which is the current date (16th of April, 2012).

Finally there is the *XX data which is used as a data transfer checksum

Once you get a fix using your GPS module, verify your location with google maps (or some other mapping software). Remember that GPS is often only accurate to 5-10 meters and worse if you're indoors or surrounded by tall buildings.

Raccordement Arduino

Once you've gotten the GPS module tested with direct wiring, we can go forward and wire it up to a microcontroller. We'll be using an Arduino but you can adapt our code to any other microcontroller that can receive TTL serial at 9600 baud

Connect VIN to +5V, GND to Ground, RX to digital 2 and TX to digital 3

GpsUltimateArduinowire.jpg

A POURSUIVRE!!! http://ladyada.net/products/ultimategps/

Outils

Où Acheter

Le module GPS Ultimate d'AdaFruit est disponible chez MC Hobby.

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

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.