10€ un GPS de randonnée ...

Un GPS pour les randonneurs, cavaliers, cyclistes, fondeurs, etc à moins de 10 €

Gps codeur3

 

Ce petit boîtier va vous éviter de vous perdre en forêt et de rencontrer le grand méchant loup ... Où que vous soyez, vous pourrez vous rapprocher du point mémorisé (en principe point de départ ) et savoir quelle distance, à vol d'oiseau, il vous reste à faire pour rejoindre le refuge ou votre sweet home; Tout cela sans cartographie embarquée et pour moins de 10€uros de matériel .

Que va-t-on pouvoir lire dessus :

  • L'heure ! adaptable au pays en fonction de GMT
  • La boussole ! avec, en plus de la valeur angulaire du pôle, la direction ...
  • La vitesse de progression instantanée en km/h
  • La distance parcourue, en kilomètres, depuis la dernière remise à zéro
  • Le temps de déplacement (oui de déplacement, pauses exclues) cumulé depuis l'allumage et la réception satellite .
  • La distance à vol d'oiseau et la position angulaire du point enregistré => point à rejoindre ... (On voit dans quelle direction aller et si l'on se rapproche ou si l'on s'éloigne du but à atteindre )

Et accessoirement:

  • La latitude / longitude de l'endroit où l'on se trouve .
  • La latitude / longitude du point enregistré  .
  • La tension de la batterie .
  • La distance enregistrée
  • Le temps enregistré depuis le dernier Reset 
  • Le décalage horaire par rapport à GMT
  • La page d'accueil ...
  • etc...

Un seul bouton pour naviguer dans les menus :

  • "Power Off" pour l'arrêt
  • "Lat-Long & WP" pour voir la latitude, la longitude et mémoriser ou non un nouveau point de référence !
  • "Eco Mode" pour économiser la batterie pendant les pauses et les arrêts; réduction du rétro-éclairage et désactivation de la sollicitation du module GPS .
  • "GMT set" Réglage du décalage horaire par rapport à GMT.
  • "Odomètre" pour la remise à zéro de la distance parcourue .

 

Exemple 1: Vitesse, Azimut (valeur angulaire et direction), Heure, Temps de déplacement !

Gps encodeur run1

 

Exemple 2: Vitesse, Azimut (valeur angulaire et direction), Heure, Distance parcourue !

Gps encodeur odo

 

Exemple 3: Vitesse, Azimut (valeur angulaire et direction), Heure, Distance à vol d'oiseau et Azimut à prendre pour se rapprocher du point mémorisé ou point de départ  !

Gps encodeur wp1

(il suffit de se déplacer en ayant les mêmes valeurs d'azimut sur la boussole et sur le point à rejoindre ! sur une distance vol d'oiseau de 13 Km dans ce cas )

Exemple 4: Latitude et Longitude ( avec possibilité de conserver comme point de référence )  !

Gps encodeur lat

Voilà, vous savez tout sur le mode d'emploi ...

Le boîtier est réalisé avec une imprimante 3D; le concentré d'électronique  est fourni par les Chinois pour un prix dérisoire (Chez Aliexpress ) et le tout est alimenté par des batteries de récupération de 3,7 volts (la capacité de la batterie définira l'autonomie: la mienne est petite, composée de 3 éléments de 850 mAh et me donne plus de 4 heures de fonctionnement ) En plus, il y a de la place dans le boîtier pour en mettre beaucoup plus ... 

 

Comment que ça marche ?

Le schéma électrique:

Gps encodeur sch

Commençons par l'alimentation: Comme je le disais plus haut, c'est une batterie de 3,7 volt qui va fournir l'énergie à tout les circuits . Un"chargeur" avec fiche micro USB (ref.:TP4056) va permettre la recharge ou le fonctionnement sur une source extérieure dont les deux leds, respectivement rouge et verte, nous renseignent si les accus sont en charge ou complètement chargés. La couleur des leds est visible par le trou de la fiche USB. Le temps de charge va dépendre de la capacité de la batterie et de son avancement dans la décharge ...

Gps encodeur charg

Cette batterie va être reliée à un relais dont la bobine sera collée par l'appui sur le bouton/contact de l'encodeur rotatif; en appuyant dessus on vient fermer le circuit, via la diode D1 1N4148, en tirant à la masse. Le relais s'actionne, fermant son contact, et permettant l'alimentation de tous les circuits; on garde le doigt sur le bouton jusqu'à ce que l'Arduino prenne vie et assure, via son programme et sa sortie D12 (PWR), l'auto-maintient du relais par la mise en conduction du transistor T1 2N2222, à travers la résistance de limitation R4 de 2K2,  pour confirmer la mise à la masse de la bobine jusqu'à ........ ce qu'on lui dise d'arrêter (on ne va pas garder le doigt en permanence sur le bouton tout de même !) . Une diode de roue-libre D2 1N4148 est placée aux bornes de la bobine du relais pour absorber les courants de self rupture.

J'ai prévu deux types de relais pour que chacun puisse y mettre ce qu'il a dans ses stocks ! la sérigraphie du circuit est prévue à cette fin . Le relais sera de type miniature en 5 volts mais ça fonctionne très bien avec 3,7 volt, jusqu'à 2,8 volt (là la batterie est bien déchargée !) Attention de choisir un relais avec un pouvoir de coupure assez conséquent, car lors de la mise sous tension, il y a un appel de courant non négligeable par l'onduleur d'élévation de tension qui risque de souder le contact ...( pas de relais DIL, j'en ai fait l'expérience ...Grrr).

Pour générer du 5 volts, à partir du 3,7 volts, je confie la tâche à un circuit convertisseur DC/DC 3,6 -->5v Boost converter qui va me monter, redresser et filtrer la tension à 5 volts pour l'alimentation de tous les composants; Une led bleue sur le circuit nous renseigne sur son bon état de fonctionnement lorsque le contact du relais est fermé . 

Gps encodeur conver

La résistance R5 prend la tension de la batterie et la transmet, juste pour information, à une entrée analogique (A3) de l'Arduino Nano dans le but de l'afficher lors du démarrage. De toutes façons, si elle n'a pas la valeur suffisante, le relais ne pourra pas coller, et le GPS s'arrêtera au relâché du bouton .

Vous l'avez sans doute compris, un Arduino Nano va gérer toutes les fonctions des éléments qui lui sont attachés; A commencer par le module GPS du type NEO-6M, dont l'alimentation est "raffraichie" par l'électro-chimique C1 de 25µF. La communication est assurée à 9600 bauds par les lignes D2/D3, dédiées à cet effet sut le microcontrôleur. Une led rouge nous indique que le GPS est correctement alimenté et une led verte clignotante nous indiquera que des satellites sont "en vue" ! Attention il faut parfois un certain temps avant que les premières données soient interprétées ... Et tant que la réception n'est pas effective, on ne peut arrêter le GPS que par coupure la batterie .

Gps encodeur gps1

Le GPS et son antenne ...

 

Un codeur incrémental va permettre de se déplacer dans les différents menus par rotation avant ou arrière et validation par appui sur l'axe ! Pas de résistances de 'pull up' physiques, car Arduino permet de les déclarer dans le programme; profitons de cette aubaine ... Les entrées analogiques A0 à A2 ont été traitées en digitale pour ce cas. La pin A3, elle reste en analogique afin d'exploiter la mesure de tension de batterie et pour l'afficher dans les présentations au démarrage .

Un afficheur 2x16 caractères nous permet de visualiser toutes ces données ... Le rétro éclairage, dans un soucis de prolonger l'autonomie, est piloté par une sortie PWM qui va ajuster la luminosité suivant le besoin et la réduire si le mode "Eco" est validé . Un transistor CMS 2N2222 interface la sortie à travers une résistance de base de 22K (R2) et une limitation de courant de 100 (R1) . Le contraste du LCD peut être réglé par un ajustable de 10K; personnellement je le prérègle par deux résistances SMD de 8K2 (R3) et 1K (R7) : c'est moins cher et ça simplifie bien le tracé du circuit imprimé ... Le pilotage est fait dans la facilité de 4 lignes de données (D4..D7) et deux pour la commande (E) & (RS) ... Classic !

 

Le circuit Imprimé:

Gps encodeur pcb2  Gps encodeur mtge

Le circuit câblé sans l'afficheur ...

Le circuit imprimé est 'simple face' réalisé suivant ma méthode habituelle expliquée ​ICI ! Le typon et tous les fichiers nécessaires à la réalisation sont dans le ZIP plus bas .

Trois straps permettent de s'affranchir de la double face. J'ai également fait une double empreinte pour le relais: le but étant de mettre ce que l'on a dans les stocks sans courrir chez le revendeur de composants; un relais de 5 volts, avec une bonne valeur ohmique de bobine (pour la consommation) fonctionne très bien sous 3 volts et reste collé jusqu'à 2,8 volts (là, la batterie est bien à plat; de plus, ça la préserve pour ne pas la vider jusqu'à la moelle ) . Après réalisation et perçage du circuit imprimé, on commence par souder les résistances, diodes et transistor CMS puis les straps et enfin les composants traversants, avec une attention particulière pour les connecteurs femelles en barrettes  sécables, à monter bien perpendiculairement . Le chargeur et le convertisseur sont soudés sur des picots mâle/mâle . j'ai monté mon relais à l'horizontale sur des pinuches coudées à 90° pour une question de longueur d'entretoises de l'afficheur; les miennes étaient si petites que le relais entrait en conflit avec les sertissages de l'écran. Le codeur incrémental est juste à la bonne hauteur et son corps métallique sert de pont de continuité de masse. Le connecteur de la batterie dispose volontairement  de 3 pins pour ne pas faire de dégâts, si par étourderie, on le branche à l'envers . 

 

Le programme ou sketch :

Comme d'habitude, on ne change pas une équipe qui gagne et puisque c'est un Arduino Nano le coeur du projet,  pour le développement et chargement, j'ai utilisé l'IDE Arduino; ce qui m'a permis d'importer et d'adapter certaines parties qui avaient le privilège d'exister sur un appareil de navigation maritime. Pour faciliter la  compréhension de ce que j'ai fait, j'ai ajouté de nombreux commentaires sur chaque ligne (ou presque !) La version complète se trouve dans le fichier .ZIP plus bas !

Gps codeur skt

 

 

On est bien plus beau avec de beaux habits !

Le Boîtier : 

La boîte est réalisée à l'imprimante 3D aux dimensions du circuit batterie incluse bien sûr . En deux pièces: une partie haute  et un couvercle en partie basse qui s'emboîte et se fixe par vis Parker.  La fenêtre de l'afficheur est ajustée sur le périmètre extérieur du LCD et une ouverture latérale a été aménagée pour introduire la fiche micro-usb pour la recharge de(s) la batterie(s) . La fixation du circuit dans sa box est faite par des vis de 2,5 mm en empilage condition, sur les vis de maintien de l'afficheur, séparée de celui-ci par deux rondelles de 3 mm d'épaisseur. Le boitier est créé avec DesignSpark Mechanical  puis exporté en .STL pour le modéliser pour l'imprimante 3D .

Gps codeur box

Attention à la fragilité des pattes de fixation du couvercle extérieur ... Suivant le degré de remplissage demandé à l'imprimante, il peut y avoir une certaine faiblesse lors de l'opération de vissage . Ce boîtier est bien loin de l'étanchéité "WaterProof" ... En utilisation extérieure, puisque c'est le rôle premier de mon GPS, il est prudent de l'emballer dans un film ou sac pastique transparent si la météo n'est pas des plus sûre ! Suivant les utilisateurs, rien n'empêche de compléter la fixation sur l'équipement utilisé, par des pattes ou brides, pour un maintient adapté de la boîte sur le guidon du vélo, par exemple  ...

 

Et pour la réalisation :

Vous trouverez dans le fichier ZIP ci-dessous tout ce qui est nécessaire pour reproduire ce GPS et vous pouvez modifier à votre gré, pour adapter chacun à vos besoins et particularités .

Gps codeurGps codeur (174.75 Ko)

  • Le schéma format Eagles Cadsoft
  • Le tracé du circuit format Eagles et accepté par toutes les unités de production et de prototypage
  • Le sketch pour l'IDE Arduino
  • Les fichiers du boitier au format STL standard 
  • Les fichiers du boitier pour retravaille sur DesignSpark Mechanical 

 

Et pour conclure:

Un petit montage sans prétention mais qui a surtout un rôle pédagogique par la réception des signaux GPS et l'utilisation d'un encodeur incrémental... Et sans être prétentieux, la précision est souvent meilleure que celle des applications pour Smartphones ... 

Pour les plus curieux, un lien vers la Datasheet du module GPS.

Commentaires (2)

francois
  • 1. francois | 09/03/2019
Merci d'avoir partagé ce très joli montage, pratique et bien conçu.
C'est inspirant et bien expliqué.
amazing-vacuum-tubes
  • amazing-vacuum-tubes (site web) | 10/03/2019
Merci François ... Si ça peut servir et donner des idées le but est atteint ... J'aime bien, également lire les publications des autres personnes et m'en inspirer ; c'est les joies du partage ...

Ajouter un commentaire