Le Rover RTK
Présentation
Le Rover RTK est un boitier qui permet d’améliorer la précision de géolocalisation de son smartphone de l’orde du centimètre. Le boitier se connecte en bluetooth au smartphone. Le smartphone doit être connecté à Internet.
Introduction
1. La géolocalisation
La technologie de géolocalisation classique (GPS, Galileo, etc.) permet à chacun de se positionner sur terre via des satellites, sans abonnement ! La précision est d’une 10aine de mètre : en effet, les ondes issues des satellites en orbite autour de la terre traversent plus de 20 000km et sont parfois déviées. La moindre déviation entraîne une erreur de position…
2. Le RTK
Le RTK est une technologie de géolocalisation permettant d’obtenir une précision centimétrique. Le RTK nécessite une base fixe dont la position très exacte est connue, et qui permet de calculer l’erreur de position en temps réel (« en ce moment, les satellites me positionnent 1 mètre trop à droite de là où je suis réellement »). Cette base renvoie cette information sur internet (sur un caster). A partir de là, n’importe quel objet (appelé rover) peut se connecter au caster pour récupérer l’information et appliquer un correctif ! Plus on est proche d’une base, plus la précision est bonne : on perd 1cm tous les 10km de la base. A noter que la base et le rover doivent avoir accès à internet.
3. Centipede RTK
L’accès au caster est parfois coûteux : certains services proposent un réseau de bases sur tout le territoire, ce qui entraîne des coûts de maintenance. Le projet Centipède RTK est un projet de l’INRAE qui permet à n’importe qui d’installer sa propre base RTK sur son toit, et de diffuser gratuitement les données de correction sur un caster. La couverture est observable sur ce site : elle est quasi-nationale. Tous ceux qui sont à proximité d’une base peuvent alors bénéficier du RTK !
4. Se repérer dans ce tutoriel
Vous pouvez suivre ce tutoriel de deux manières. Soit vous voulez apprendre à assembler un rover en entier et vous devez suivre toutes les étapes. Soit avez déjà un rover RTK assemblé ou bien du commerce comme le Sparkfun RTK Survey et vous pouvez passer directement à l’étape 5 pour paramétrer votre smartphone.
Etapes du tutoriel
Ce tutoriel est découpé en plusieurs étapes :
- Achats des composants
- Paramétrage de la puce F9P
- Configuration du module Bluetooth
- Assemblage des composants
- Définir une application de position fictive
- Paramétrer Lefebure NTRIP Client
- Signification des LEDs
- Utiliser Mergin Maps pour visualiser la précision
1. Achat des composants
La liste des composants est proposée sur le site officiel ou un revendeur français (fiable, plus cher) et l’équivalent sur le Site AliExpress (moins fiable, moins cher). Si vous décidez d’acheter sur AliExpress, nous vous recommandons de lire notre article sur les achats au préalable.
Le système est constitué de :
- Un Module F9P : Drotek (203.88 – réduction de 5% avec le code CENTIPEDERTK)
- Une antenne DA233 : Drotek (83.88€)
- Un cordon de connexion JST-Dupont : Drotek (3.58€)
- Un module Bluetooth HC05 : AZ-Delivery (8.99€) ou AliExpress (2€). Attention : il existe parfois des modules similaires nommés HC06 qui ne fonctionneront pas ! Le module doit avoir un petit bouton en bas à droite, visible dans l’image ci-dessous :
- Une batterie externe de dimension 90*63*12.5mm : Mouser (25€ – d’autres batteries peuvent fonctionner, mais ne rentreront peut-être pas dans le boitier)
- Un boitier imprimé en 3D, les fichiers suivants sont adaptés à la power bank achetée chez Mouser. Fichier .stl du côté F9P et Fichier .stl du côté « batterie »
- Des vis de fixation pour la carte F9P chez CergyVis. Faites vos fonds de tiroirs, vous devriez bien trouver des petites vis (ici c’est du 2,5mm x 6 mm)
- Un câble USB-USB micro DATA : AZ-Delivery (5.99€). Vous pouvez en trouver ailleurs. Attention a bien vérifier qu’il est DATA, et pas juste un chargeur… Le fournisseur doit parler dans les spécification de vitesse de transfert (mbits/sec), pas uniquement de puissance (Watts, Ampères).
- Un FTDI : AZ-Delivery (13.99€)
- Des câbles Dupont Femelle-Femelle (vendus parfois avec le FTDI), sinon sur AZ-Delivery (4.49€)
- Un câble USB-USB mini : AZ-Delivery (4.49€)
Une fois tous le matériel à disposition, on attaque le vif du sujet.
2. Paramétrage de la puce F9P
Le F9P, c’est cette carte noire et métallique qui permet d’obtenir une précision centimétrique. Elle est livrée avec des paramètres de sortie d’usine, il est donc nécessaire de la mettre à jour avant de commencer.
Etape 1 : On télécharge le logiciel u-center, disponible ICI. Une fois téléchargé, dézippez le fichier, puis lancez-le : suivez toutes les étapes pour l’installer.
Téléchargez le fichier de mise à jour nommé firmware.bin, disponible ICI. La encore, il faudra dézipper le fichier.
Enfin, on ouvre le logiciel U-center. Une fenêtre s’ouvre. Ce logiciel est très complet pour interagir avec la carte F9P et faire pleins de paramétrage fins. Nous on va s’en servir simplement pour mettre la carte à jour et lui envoyer quelques configuration
Etape 2 : On connecte la carte F9P à l’ordinateur via le câble micro-USB (normalement, on entend un bruit de connexion).
Dans U-blox, on clique sur le bouton de connexion en haut à gauche (cf image ci-contre), puis on choisit COM-X (X étant un chiffre).
Le récépteur est bien connecté si l’icône tout en bas clignote, à côté de COM-X
Etape 3 : On met à jour la carte ! En effet elle sort d’usine avec un Firmware (logiciel contenu dans une puce) qui ne nous convient pas.
- Cliquer sur Tools > Firmware update
- Choisir le fichier firmware.bin précédemment téléchargé dans Firmware image
- Cocher Use this baudrate for update et choisir 9600 (c’est la vitesse à laquelle on va communiquer avec la carte, 9600 bits/sec.)
- Décocher les 4 autres cases ( Enter safeboot, …)
Cliquer sur GO (en bas à gauche de la fenêtre). La fenêtre peut s’agrandir si vous ne voyez pas tout. La procédure doit durer 5min et se terminer par « Firmware Update Utility Complete ».
Etape 3.bis : Il se peut que l’opération précédente a échoué, avec un bug n° (pour le voir, il faut agrandir la fenêtre). Dans ce cas, il faut télécharger le fichier ftd2xx, le dézipper, et le coller dans le dossier d’emplacement de u-center (normalement C://Programmes (x86)/u-blox/u-center)
Si vous n’avez pas tous les droits d’administrateur sur votre ordinateur, un autre bug peut arriver. Dans ce cas, il vous est conseiller de coller le fichier firmware.bin dans le dossier d’emplacemenent de U-Center. (normalement C://Programmes (x86)/u-blox/u-center)
Etape 4 : La carte est flashée si le « Firmware Update Utility completed succesfully » apparait, comme le montre l’image ci-contre. Pensez à ouvrir la fenêtre en grand pour que le message apparaisse.
Etape 5 : On envoie maintenant d’autres configurations :
● Toujours dans U-Center, aller dans Tools > Receiver Configuration
● Sélectionner u-blox Generation 9
● Sélectionner le fichier de configuration, disponible ICI (si vous ne le voyez pas, copiez le dans C://Programmes (x86)/u-blox/u-center d’abord)
● Cliquer sur Transfert file -> GNSS (et pas GNSS -> FILE !).
● Si un message apparaît, cliquez sur Yes, et attendez que le transfert se réalise.
Etape 6 : On s’assure que les configurations sont bien envoyées et on enregistre dans la mémoire de la F9P les paramètres qu’on a envoyé dans le .txt (si on ne fait pas cette étape, les configurations ne seront pas sauvegardé en éteignant et rallumant la F9P)
● Cliquer sur View > Configuration View
● Sur le bandeau de gauche, cliquer sur CFG (Configuration)
● Cliquer sur Send tout en bas à droite de la fenêtre :
Vous pouvez maintenant débrancher le récepteur et quitter U-Center. Le F9P est configuré, on passe à la configuration du module Bluetooth.
3. Configuration du module Bluetooth
Le module Bluetooth HC-05 (BT) est livré avec les configurations d’origine : il est nécessaire de les modifier (notamment son nom, mot de passe, ainsi que la vitesse de transmission de données). Afin de le configurer, il faut télécharger le logiciel Arduino.
Etape 1 : On réalise le montage pour connecter la carte Bluetooth via l’ordinateur. Ce paramétrage se fait avec une carte FTDI (rouge), reliée par les câbles Femelle-Femelle. Chaque broche possède un nom (marqué au verso de la carte), elles sont à relier via 4 câbles, de la façon suivante :
Etape 2 : On va maintenant brancher la carte FTDI à l’ordinateur par câble USB. Avant de le brancher, il faut repérer sur le module BT un petit bouton en bas à droite de la carte. Ce bouton permet d’activer le mode configuration : il faut donc appuyer dessus et tout en le maintenant enfoncé, connecter le FTDI au PC.
Si la fréquence de clignotement est d’environ 3 sec, le module BT est bien prêt à être configuré.
S’il clignote plusieurs fois par secondes, il n’est pas en mode configuration : il faut déconnecter, bien appuyer sur le bouton, et reconnecter.
Etape 3 : Pour configurer le module Bluetooth, on télécharg le logiciel Terminal, disponible via ce lien
On dézippe le fichier (Clic droit > Dézipper > Extraire ici…) et on ouvre terminal.exe. Une page comme ci-contre devrait s’ouvrir
Etape 4 : Votre PC a du trouver le module bluetooth et lui attribuer un port COM. Il devrait s’afficher en haut à gauche. S’il ne s’affiche pas, cliquez sur « ReScan ». Si plusieurs port COM vous sont proposés, débranchez et rebranchez le FTDI pour voir quel port COM disparait puis réapparait : c’est votre FTDI.
Ensuite, cliquez sur « Connect » en haut à gauche. Puis assurez vous que les options suivantes sont cochées :
- Baud rate : 38400
- CR=CR+LF
- +CR
Etape 5 :
En bas de la fenêtre il y a une zone où on peut saisir des commandes avec le bouton « Send » à droite.
- Tapez « AT » et cliquez sur « Send »
- La carte doit renvoyer « OK », cela va s’afficher dans la partie Receive juste au dessus. Cela veut dire que vous communiquez bien avec le module Bluetooth.
Si une « Error (0) » est renvoyée, vous pouvez réessayer d’envoyer la commande « AT »
Etape 6 :
- Écrire la commande AT+UART=115200,1,0 et appuyer sur entrée : le moniteur doit renvoyer OK, la vitesse de transmission a été modifiée.
- Écrire la commande (pensez à remplacer « VOS_INITIALES » par vos initiales)
AT+NAME= CENTIPEDE_VOS_INITIALES
et appuyer sur entrée: le moniteur doit renvoyer OK, le nom du module a été changé
Vous pouvez maintenant débrancher le module bluetooth : tout est configuré, le plus dur est fait ! On passe maintenant à l’assemblage du matériel.
4. Assemblage des composants
Vous pouvez maintenant assembler tous les composants. Pour que tout se passe bien on vous recommande de suivre ces étapes.
Etape 1 : Brancher le module Bluetooth et la carte F9P (sur le connecteur B) à l’aide du connecteur JST 6 pins de chez Drotek. Pour savoir quoi brancher à quel endroit, aidez vous de la table de correspondance ci-dessous et de la numérotation des pins sur l’image de la carte F9P.
Etape 2 : Placer les éléments dans le boîtier. La nappe de câble gênera moins en passant sous la puce F9P comme on peut le voir sur la photo.
Le module bluetooth se glisse (avec un peu de force) dans l’encoche prévue à cet effet. Si cela « coince », vous pouvez toujours essayer de limer l’entrée de l’encoche ou bien en dernier recours de retirer la gaine en plastique transparente autour du module
Etape 3 : Vissez la puce F9P à l’aide de petites vis autoforeuses pour plastique.
Vous pourrez en trouvez en démontant de vieux équipements électroniques ou dans un Fablab ou RepairCafé. Sinon on vous fournit une référence en début de tutoriel. Idéalement les vis sont entre 2,5 et 3mm de diamètre et entre 6 et 10 mm de longueur.
Etape 4 : Vissez l’antenne et branchez l’alimentation électrique. Vous pouvez utilisez le cordon micro-USB fourni avec la batterie qui n’est pas un cable DATA. Soyez délicat lorsque vous branchez le connecteur micro-USB à la carte F9P, il y a un risque d’abimer le connecteur de la carte et ceux du module Bluetooth.
Le module Bluetooth a une LED rouge qui clignontte rapidement, il est à la recherche d’un appareil. La carte F9P a sa LED bleue allumée, c’est qu’elle est bien sous tension.
Votre Rover est prêt, il ne reste plus qu’à paramétrer votre smartphone.
5. Définir une application de position fictive
On va maintenant faire quelques paramétrages et installations d’applications sur votre téléphone pour pouvoir interagir avec le Rover et récupérer des données de positionnement centimétrique.
Lefébure est l’application qui va calculer la position centimétrique du rover. C’est donc elle que votre smartphone devra écouter, et non plus la puce GPS interne du smartphone ! Cette partie consiste donc à donner une autorisation spécifique pour pouvoir court-circuiter la puce GPS interne du smartphone, et pour que Lefebure soit l’application qui donne la position au téléphone.
Etape 1 : Installez l’application Lefebure NTRIP Client disponible sur le playstore.
Une fois installée elle s’appelera par défaut uniquement « NTRIP Client » dans la liste de vos application
Etape 2 : Activez les options pour développeur. Pour cela :
- Allez dans les paramètres du téléphone
- Dans la section « A propos »
- Puis cliquez 7 fois sur le « numéro de build » sur un Google Pixel mais sur d’autres téléphone ce sera sur la version de l’OS ou d’Android par exemple.
- Avec un Samsung : Allez dans paramètres > À propos du téléphone > Informations sur le logiciel > Tapotez 7 fois sur « Numéro de version ».
- Avec un Xiaomi : Allez dans paramètres > À propos du téléphone > Tapotez 7 fois sur « Version MIUI ».
- Avec un Huawei : Allez dans paramètres > Paramètres Système > À propos du téléphone > Tapotez 7 fois sur « Numéro de build ».
Etape 3 : Le mode Développeur est désormais activé. Revenez sur la page de vos paramètres pour accéder aux outils de développeur (dans l’onglet “système”, ou “paramètres supplémentaires”.
Trouver « Sélectionner l’application de position fictive” parmi toutes les options, et choisir « Lefébure NTRIP client”. La liste des options pour développeur est longue, pour aller plus vite vous pouvez utiliser la barre de recherche et taper « fictive ».
Attention ! Un bug a été signalé avec d’autres applications de géolocalisation comme SWMaps ou RTKGPS+ : il est alors impossible de changer l’application de position fictive. Dans ce cas, il faut désinstaller SWMaps ou RTKGPS+.
6. Paramétrer Lefebure NTRIP Client
Pour la configuration de Lefébure, il faut alimenter le rover RTK via la batterie (si ce n’est pas encore fait !). Normalement, la LED du module Bluetooth clignote rapidement.
Etape 1 : Dans les paramètres Bluetooth du téléphone, cliquez sur “Associer un appareil” puis attendez de voir CENTIPEDE_X (X étant les initiales de votre rover) .
Attention ! Le rover peut mettre une dizaine de secondes avant d’être visible. Sur certains smartphones comme les Huawei, il faut bien attendre la fin de la recherche (environ 20 secondes), PUIS cliquer sur ‘appareils rarement connectés’
Le code pour appairage par défaut est “1234”. Une fois validé, il ne se passe rien de particulier : La LED rouge du rover clignote toujours aussi vite.
Etape 2 : Ouvrez l’application Lefebure :
- En haut à droite, cliquer sur l’engrenage
- Puis choisir NTRIP Settings. Les paramètres à modifier sont les suivants
- Network protocol : NTRIP Rev 1
- Caster IP : caster.centipede.fr
- Caster port : 2101
Etape 3 : Retourner en arrière pour aller cette fois dans les « Receiver Settings »
- Receiver connection : External via Bluetooth
- Bluetooth Device : “Votre_nom_de_rover” (ici, Centipede_4)
- /!\ GPS Mock Locations doit être coché !
Etape 4 : Retourner sur la page d’accueil de Lefebure, et cliquer sur le gros bouton Connect. une page apparaît : il faut choisir la base la plus proche de notre position afin de bénéficier d’une correction adaptée (ici, AGTIC).
Si l’on souhaite changer de base, en cours d’utilisation, il suffit de cliquer sur le bouton ressemblant à une tour d’ordinateur en haut à droite.
Etape 5: Une fois la base choisie, le clignotement de la LED rouge du module Bluetooth ralentit. On peut voir que les données de correction arrivent bien au téléphone (via la barre jaune). La console Lefebure peut indiquer plusieurs informations :
- Bluetooth Device Connected indique que la connexion se fait bien avec le rover
- NTRIP : Connected to caster indique que la connexion avec le caster a été établie.
- Fix Type : ces lignes donnent des informations sur la qualité du positionnement.
- Fix Type is DGPS (approx. 1m)
- Fix Type is now FloatRTK (précision approx. 10cm)
- Fix Type is now RTK (précision centimétrique)
7. Signification des LEDs
Les LEDs de la puce F9P :
- LED 1 “TIMER” :
- Eteint : pas de satellites en vue
- Vert clignotant : reçoit les informations des satellites
- LED 2 “POWER” :
- Eteint : non branché
- Bleu : allumé
- LED 3 “RTK” :
- Eteint : pas de précision RTK
- Vert clignotant : FloatRTK (précision de 10 cm)
- Vert = fix RTK (précision de 1 cm)
La LED du module bluetooth :
- Rouge clignotant rapidement : pas d’appairage avec le téléphone
- Rouge clignotant 2 fois toutes les 3 secondes : appairé avec le téléphone
8. Utiliser Mergin Maps pour visualiser la précision
On vous propose d’utiliser l’application Mergin Maps qui permet de faire des acquisitions d’observations sur le terrain et qui offre une interface intéressante pour l’utilisation du RTK. L’application est gratuite pour une utilisation en « local » mais à partir du moment où vous souhaitez vous créer un compte pour enregistrer vos données sur le Cloud il y a un abonnement à payer pour ce service. Il y a toutefois une version d’essai gratuite du service pendant 28 jours.
Etape 1 : Téléchargez l’application Mergin Maps depuis le Play Store.
Etape 2 : Vous pouvez maintenant :
- Créer un projet
- Ajouter et supprimer des champs à votre formulaire de saisie. Pour des observation terrain simple, on va garder un champ Date (de type date&time) et un champ Commentaire (de type text)
- Valider le projet
Etape 3 : Vous visualisez maintenant votre projet dans la liste des projets.
- Ouvrez le en cliquant dessus
- Constatez la précision en bas à gauche de l’écran
- Si tout a bien fonctionné vous devriez voir la précision chuter à 0.01 cm
Il est possible que tout fonctionne bien dans Lefebure mais que dans Mergin Maps il y ait des soucis. Pensez à bien autoriser l’application Mergin Maps à accéder à la géolocalisation. Aussi, pensez à bien activer la géolocalisation de l’appareil. En effet même si on utilise une puce externe, Mergin ne va pas comprendre qu’il peut utiliser la géolocalisation si elle n’est pas activée.
Au programme :
Toggle