BTick ouvre le débogage en direct des arbres de comportement ROS 2

Interface BTick affichant un arbre de comportement ROS 2 et l’état de ses nœuds
BTick affiche en direct l’état des nœuds et permet de rejouer une session de BehaviorTree.CPP.

BTick rassemble dans une même interface la supervision, le débogage et le rejeu des arbres de comportement utilisés avec ROS 2. Publié en open source le 26 octobre 2026, l’outil cible les développeurs qui s’appuient sur BehaviorTree.CPP et Nav2 pour orchestrer les actions d’un robot.

Un arbre de comportement découpe une mission en nœuds : naviguer vers une position, vérifier un capteur, attendre une condition ou déclencher une action. Cette structure facilite la composition de tâches complexes, mais son diagnostic devient difficile lorsque plusieurs sous-arbres s’exécutent en parallèle ou qu’un nœud échoue seulement sur le robot réel.

Observer plusieurs arbres et intervenir pendant l’exécution

BTick découvre automatiquement plusieurs arbres et leurs sous-arbres. Son interface affiche l’état des nœuds en direct et permet de poser des points d’arrêt, d’avancer étape par étape ou de suivre le chemin réellement emprunté pendant une mission.

L’outil peut aussi forcer temporairement le statut d’un nœud, injecter un délai et inspecter ou modifier les variables du Blackboard. Ces fonctions servent à reproduire un cas limite sans modifier puis recompiler toute l’application. Elles doivent toutefois rester cantonnées aux essais : changer un état pendant l’exécution peut produire un comportement imprévu sur une machine en mouvement.

BTick sait enregistrer une session, la rejouer sur une chronologie et exporter les journaux. Une vue d’analyse mesure le temps passé dans chaque partie de l’arbre. Un éditeur XML intégré permet enfin de créer ou de modifier les fichiers de BehaviorTree.CPP version 4 en conservant une représentation visuelle.

https://www.youtube.com/watch?v=vWS2W5u7-mE
La démonstration officielle montre le suivi, les points d’arrêt et le rejeu d’un arbre de comportement.

Trois voies d’intégration avec ROS 2

Le protocole natif de BTick donne accès à la supervision et aux fonctions interactives. Une compatibilité avec le protocole Groot2 est prévue pour les applications existantes. L’intégration Nav2 peut, elle, afficher les arbres à partir du sujet de journalisation utilisé par la pile de navigation ROS 2.

L’application existe sous forme d’interface web et de programme de bureau. Le code du cœur et celui de l’interface sont disponibles dans deux dépôts GitHub distincts. La documentation décrit l’installation et la connexion à une application BehaviorTree.CPP.

Un outil prometteur encore à éprouver sur le terrain

BTick répond à un besoin concret : comprendre pourquoi un robot a choisi une branche plutôt qu’une autre et retrouver le moment précis où la mission a divergé. Le rejeu et l’inspection du Blackboard peuvent réduire le temps passé à parcourir des journaux dispersés.

Le projet reste néanmoins jeune. Son annonce ne fournit pas encore de retour sur de longues sessions, de mesure de surcharge ni de validation sur une flotte en production. La sécurité des commandes à distance devra également être documentée avant un usage opérationnel. Pour l’instant, BTick se présente surtout comme un nouvel atelier de développement pour ROS 2, avec une base ouverte aux essais et aux contributions.

Sources : annonce sur Open Robotics Discourse, dépôt BTick et documentation officielle.

Le briefing RoboActu

L’essentiel de la robotique, une fois par semaine.

Une sélection courte des annonces, usages et robots à suivre.

Continuer sur ce sujet

Comparer les robots