Travailler sur RatBot
S’applique à : Simulation Robot réel
Modifier un réglage de navigation, ajouter un décor, corriger un programme : le chemin est toujours le même. On travaille sur le PC, on essaie en simulation, puis on met le robot à jour.
Le cycle d’une modification
1. modifier sur le PC, dans le dépôt
2. compiler ./scripts/ratbot build
3. essayer en simulation : ./scripts/ratbot up …
4. enregistrer git commit, puis git push
5. mettre à jour sur le robot : git pull, compiler, relancer
1. Modifier, sur le PC. Toutes les modifications se font sur le PC, dans le dépôt (voir Où sont les choses). Jamais directement sur le robot.
2. Compiler. Depuis la racine du dépôt :
./scripts/ratbot build # tout
./scripts/ratbot build --packages-select ratbot_nav # un seul paquet, plus rapide
Puis, dans les terminaux déjà ouverts : source ros2_ws/install/setup.bash.
3. Essayer en simulation. Les mêmes commandes qu’avec le robot réel (voir La simulation en détail). Un problème trouvé ici ne coûte rien.
4. Enregistrer. git commit puis git push : c’est ainsi que la
modification atteindra le robot.
5. Mettre le robot à jour. Robot au repos, depuis le PC :
ssh ratbot@192.168.1.171 # le robot 1
cd ~/ratbot_ws
git pull --ff-only
./scripts/ratbot build --packages-select ratbot_nav
sudo systemctl restart ratbot.service
Le redémarrage du service relance toute la pile du robot : il cesse de répondre quelques secondes. Ne le faites pas pendant qu’il roule.
Note
git pull --ff-only refuse de mélanger des modifications : c’est voulu.
S’il refuse, quelqu’un a modifié le dépôt du robot directement. Ne forcez
pas : demandez-vous d’abord pourquoi.
La carte du robot
Le programme de la carte (le firmware) se compile et se flashe depuis le PC, sonde ST-Link branchée. C’est une opération de développeur, décrite dans la documentation développeur. Une règle à retenir, même sans la faire soi-même :
Danger
Sauvegardez les réglages de la carte avant de la flasher, et rechargez-les après : une nouvelle version peut les effacer sans prévenir.
./scripts/ratbot config 1 save avant_flash.yaml
# ... flash ...
./scripts/ratbot config 1 load avant_flash.yaml
Voir Les paramètres du robot. Débranchez ensuite la sonde avant de faire rouler le robot.
Garder la trace
Une mesure — calibration, essai, panne : notez-la dans le cahier de labo, avec la date, le robot et les conditions (sol, batterie).
Un changement de comportement : mettez la documentation à jour en même temps que le code.
Les réglages d’un robot : sauvegardez-les dans
cahier_de_labo/config/après chaque calibration.