Arduino c'est quoi ce machin là?
- Une carte d’interface programmable capable de piloter des capteurs et des actionneurs afin de simuler ou créer des systèmes automatisés.
- Un logiciel de programmation qui permet de programmer la carte en fonction du comportement désiré.
- Le tout, logiciel comme matériel, est sous licence libre. Une grande communauté d’amateurs et de passionnés contribuent à développer des applications et à les partager.
Source : http://blog.crdp-versailles.fr/technogalois
Que des bons points pour Arduino alors je me suis dit pourquoi je ne me lancerai pas en commençant par «The Arduino Starter Kit» (Le kit coute entre 80 et 100€ suivant les sites).
Pour commencer, j’ai suivi quelques un des exemples proposés dans le kit et très vite j’ai réalisé que cette petite carte pouvait être d’un grand intérêt car très «flexible». En effet, il est possible d'y rajouter des extensions (shield) ou des composants directement. Par exemple, rajouter un clavier, un écran LCD, un lecteur de carte SD, une diode, un moteur… suivant le besoin que l’on a et ce qu'on souhaite développer. Pour faire simple y a une brique principale obligatoire (Arduino) qui peut contrôler des briques secondaires (shield ou composants) que l’on souhaite rajouter. C’est un peu comme des Lego avec la programmation en plus!
Les premiers tests réalisés, j’ai rapidement eu envie de passer à l’étape supérieure afin de créer mon propre GPS data logger à l’aide d’un shield GPS. Je me suis renseigné sur Internet et le shield qui me paraissait le plus complet car :
- disposant d’un GPS
- d’un emplacement pour carte SD
- adapté à ma carte Arduino Uno (livré avec le kit)
était le shield créé par la société Adafruit (fabriquant et créateur de nombreux shield pour Arduino) : Adafruit Ultimate GPS Logger Shield.
Une fois reçu, j'ai suivi les instructions du Wiki d'Adafruit qui explique comment brancher le shield et les bases de développement qui vont avec (Je vais pas ré-expliquer toutes les étapes ici car le Wiki est vraiment très bien fait).
Ensuite après avoir suivi les éléments indiqués, j'ai alors obtenu des données NMEA (National Marine Electronics Association) dans un fichier TXT sur la carte micro SD. Ces données NMEA étant très brutes :
$GPGGA,093024.000,4337.9276,N,00350.7873,E,1,5,1.40,-10.4,M,49.7,M,,*46
$GPRMC,093024.000,A,4337.9276,N,00350.7873,E,0.37,197.15,131013,,,A*68
J'ai cherché à rendre le fichier en sortie plus lisible (en ayant pour idée de charger le fichier TXT comme un fichier texte délimité dans QGIS) mais pour cela ill a fallu déchiffrer les trames NMEA disponibles (GGA et RMC).
Puis en creusant sur internet, j'ai décidé de ne garder que la trame GGA qui m'a paru plus complète pour mon utilisation et voilà comment ça se traduit :
$GPGGA : Type de trame
064036.289 : Trame envoyée à 06h40m36,289s (heure UTC)
4836.5375,N : Latitude 48,608958° Nord = 48°36'32.25" Nord
00740.9373,E : Longitude 7,682288° Est = 7°40'56.238" Est
1 : Type de positionnement
- 0 = invalid
- 1 = GPS fix (SPS)
- 2 = DGPS fix
- 3 = PPS fix
- 4 = Real Time Kinematic
- 5 = Float RTK
- 6 = estimated (dead reckoning) (2.3 feature)
- 7 = Manual input mode
- 8 = Simulation mode
04 : Nombre de satellites utilisés pour calculer les coordonnées
3.2 : Précision horizontale ou HDOP (Horizontal dilution of precision)
200.2,M : Altitude 200,2, en mètres
46.9,M : Height of geoid (mean sea level) above WGS84 ellipsoid
,,,,,0000 : D'autres informations peuvent être inscrites dans ces champs
*0E : Somme de contrôle de parité, un simple XOR sur les caractères précédents
Après avoir déchiffré cette trame GGA, j'ai adapté le code que vous trouverez ici pour obtenir : DATE; HEURE; LATITUDE; LONGITUDE; ALTITUDE; NOMBRE DE SATELITTES; HDOP (Le code se charge sur la carte Arduino via l'application dédiée : http://arduino.cc/en/main/software)
Une fois le fichier TXT créé et structuré, il suffit d'ouvrir QGIS pour visualiser les points relevés en important le fichier comme une couche de texte délimité :
- choisir le point-virgule comme délimiteur
- sélectionner le champ X et Y (longitude/latitude)
Faire ok et voilà le résultat :
Le tracé va du jaune au rouge.
Bilan : J'ai créé un GPS Data logger que je peux adapter à mes besoins et d'une précision de 10m en XY pour environ 90€
- Arduino Uno : 20€
- Shield GPS Adafruit : 60€
- Pile 9 volt : 5€
- Carte SD 4Go : 5€
1 mai 2014 — 11 h 25 min
Bonjour Florian,
Je suis encore un débutant en Arduino et je voudrait obtenir des informations sur comment procéder.
Serait-il possible d'obtenir votre adresse e-mail pour pouvoir obtenir plus d'informations.
Merci.
1 mai 2014 — 21 h 16 min
Bonjour Arnaud,
Je débute aussi mais n’hésitez pas à me contacter via le mail qui se trouve sur la page « L’équipe GIS-Blog.fr ».
Flø.
20 mai 2014 — 20 h 17 min
Bonjour
En terme d’autonomie avec une pile 9V; qu’est ce que cela donne ?
Merci d’avance
25 mai 2014 — 9 h 13 min
Bonjour,
Bonne question mais étant donné que je me sers très rarement de la pile 9V, je ne pourrai pas vous dire. Sorry.
Généralement, je me connecte à mon portable pour faire du positionnement temps réel avec log : http://www.gis-blog.fr/2014/01/13/utiliser-ladafruit-ultimate-gps-logger-shield-pour-faire-du-suivi-gps-sur-qgis/
Cependant si vous faites des tests n’hésitez pas à revenir par ici!
Florian
10 juin 2014 — 21 h 21 min
Merci pour ce retour.
Sans cette information, je ne ferrais pas l'acquisition du module.
Magellan
2 mars 2015 — 15 h 12 min
Bonjour, tout d'abord merci pour ce très bon sujet qui m'a beaucoup aidé,
j'aurais en revanche une question, y'a t'il un moyen, un outil/plugin sur QGIS qui permet de relier directement les points obtenus avec le fichier CSV par ordre chronologique (et ainsi avoir une couche avec le tracé) ?
Merci d'avance,
4 mars 2015 — 9 h 01 min
Bonjour,
Oui, ça doit être possible, je vous invite à regarder ces liens :
– Convert XY points to a line?
– Draw lines from points in QGIS
Flo
8 mars 2015 — 10 h 05 min
J'aimerais avoir l'affichage de l'azimut du soleil, es-ce possible avec ce montage ?
merci.
8 mars 2015 — 10 h 21 min
Bonjour,
Sincèrement je ne peux pas vous dire. Comment s’obtient l’azimut du soleil?, il est calculé?
8 mars 2015 — 12 h 56 min
Oui il est calculé. Sur certain GPS ( garmin) la position du soleil est représenté par un petit graphique.
Je pense qu'il est calculé car l'azimut du soleil donne le Nord vrai.
D'autre part est-il possible d'avoir ce montage en l'achetant tout fait ? et si oui ou dois-je m'adresser ?
Merci pour les réponses !!!
8 mars 2015 — 13 h 15 min
Normallement on trouve l'azimut su soleil dans les données NMEA.
En fait ce que je souhaite avoir c'est un écran affichant :
1 – L'heure satellite.
2- La position : Long. et Lat.
3 – L'azimut soleil.
Merci.
20 avril 2015 — 16 h 36 min
Bonjour, Je suis débutante, et vous m'avez donner une bonne idée d'un petit projet de fin d'étude ! comment je peux vous contacter en cas de besoin ? Merci
20 avril 2015 — 20 h 02 min
Bonsoir,
Et on peut connaitre la bonne idée?!
Vous trouverez tous les éléments pour me contacter sur : http://www.igeo.fr
Flo
30 avril 2015 — 9 h 14 min
Bonjour, je suis actuellement un éléve de Terminale S option sciences de l'ingenieur. Je réalise un projet de fin d'année qui est un traceur de ligne automatique pour terrain de sport. Nous avons choisis de guider notre robot par GPS. C'est moi meme qui m'occupe de cette partie. Pour commencer j'ai acheté une carte arduino uno et un module GPS. Je dispose du logiciel Arduino 1.0.30. J'ai commencé par trouver un programme qui permet de déclencher une trame GPS. Ensuite j'ai téléchargé les bibliothéques néessaires pour que le logiciel comprenne le programme. J'ai copié le programme dans le logiciel et je l'ai vérifié: le programme marche ! Ensuite j'ai relié ma carte arduino+module GPS a l'ordinateur grace a un cable USB. J'ai téléversé le programme sur la carte et je suis allez dans "Outils" puis " Moniteur serie" pour voir la reception des informations faites par le module. En naviguant sur internet j'ai compris que le module recherchait des satellites ( 4 je crois) pour definir sa position. Pour cela il faut mettre le module 1 ou 2 minutes a l'exterieur. Le probléme c'est que mon module ne trouve pas de satellites, par conséquent, toutes les informations ( longitude,latitude, vitesse…) sont nuls et je ne trouve pas le probleme. Pouvez vous m'aider a comprendre pourquoi le module GPS ne trouve pas de satellites ?
14 septembre 2016 — 14 h 13 min
Bonjour Florian,
Je voudrais savoir les dimensions approximative du GPS?
Merci.
18 septembre 2016 — 15 h 29 min
Bonjour Quentin,
L’ensemble fait 5cm de largeur, 7cm de longueur et 3,5cm de hauteur.
11 novembre 2016 — 20 h 04 min
Bonsoir Florian,
merci beaucoup pour ce super travail, peux-tu me dire quelle(s) bibliothèque(s) tu as téléchargé pour ton programme ?
Merci d’avance
geoffroy
9 mai 2017 — 21 h 06 min
bsr Mr
je suis un etudiant en genie electrique et je suis interesser de votre aarticle sur le gps et Qgis .
ma question ou plutot mon but c est de brancher le gps avec une lampe a deharge , est c k je peux la commander en temps reel via se gps et cet carte Qsig ?
si oui je veux installer cet gps avec un relais pour ouvrire ou fermer la circuit ain d allumer cet lampes ou l éteindre ?
merci Mr en avance pour votre aide
9 juillet 2017 — 11 h 12 min
Bonjour,
Serait-il possible, au lieu de stocker les positions GPS dans une carte SD, de les envoyées vers un smartphone pour pouvoir les visualiser en temps réel ?
30 août 2017 — 13 h 24 min
Bonjour,
C’est possible de stocker la position GPS sur la carte SD après pour le lien avec le smartphone, je vous conseille d’orienter vos recherches vers : Android/Bluetooth
Flo
25 août 2017 — 12 h 11 min
Bonjour Flo,
Trés bon post et complet merci.
Moi ce que j’aimerais c’est utiliser la carte Arduino ( qui va se comporter comme un GPS ) et recueillir sa position en temps réel à l’aide d’une application sur Android par exemple. Est ce possible ?
Merci d’avance
30 août 2017 — 11 h 54 min
Bonjour Tony,
Merci pour ton retour.
Je n’ai jamais testé la connexion entre Arduino et Android mais à priori c’est possible en Bluetooth. Voici un exemple trouvé sur le net : https://www.youtube.com/watch?v=NDblXDrxYSc
N’hésites à nous laisser un message en fonction de l’avancement de travaux.
Bonne journée,
Flo
5 novembre 2017 — 18 h 48 min
Bonjour,
je voudrais créer un GPS comme le vôtre avec ma carte arduino et le shield correspondant pour pouvoir faire mon TPE de première S. Malheureusement, je débute complètement en programmation Arduino. Du coup j’aimerais bien que vous m’expliquiez, s’il vous plaît, quel programme je dois écrire.
Merci d’avance