Amélioration des comportements des Thymios 2

Les Thymios 2 Wifi achetés par le département d’informatique de la faculté des sciences et technologies de l’université de Lorraine sont fournis avec des comportements perfectibles. Pour l’instant, trois comportements (sur les six proposés par défaut) ont été améliorés : l’exploration, la commande et le suivi. Quatre autres comportements font encore partie des perspectives.

Exploration

Parmi les comportements fournis pour le Thymio 2, le mode d’exploration (de couleur jaune) a l’avantage de détecter lorsqu’il n’a plus de support (bord de table, par exemple) et de stopper pour éviter de tomber. Malheureusement, il est du coup assez lent. Il est aussi très craintif, et adopte un mouvement assez saccadé, comme le montre la vidéo 1 ci-dessous.

Vidéo 1 (MP4 H264, 610 x 540, 1,9 Mo) : comportement d’exploration fourni.

Du coup, j’ai développé deux comportements (solutions des séances de TP de master) plus rapides et téméraires : un basé sur une subsomption (liste de cas) et un sur un Braitenberg (commandes dépendant linéairement des perceptions). Les vidéos 2 & 3 ci-dessous montrent les résultats.

Vidéo 2 (MP4 H264, 960 x 540, 3 Mo) : comportement d’exploration cas par cas.

Vidéo 3 (MP4 H264, 960 x 540, 2,2 Mo) : comportement d’exploration linéaire.

Voici enfin un dernier exemple du second comportement (basé sur un Braitenberg) dans un labyrinthe plus grand (vidéo 4).

Vidéo 4 (MP4 H264, 960 x 540, 3,5 Mo) : exploration linéaire d’un grand labyrinthe.

Le seul défaut de ces deux comportements est qu’ils sont trop rapides (c’était un des objectifs) pour éviter de tomber lorsqu’ils atteignent le bord d’une table : le temps que l’absence de sol soit détecté, le robot a déjà basculé. Je vais sans doute proposer une version plus prudente (moins rapide).

Commande

Pour commander un Thymio, il existe deux modes fournis :

  • dans le mode obéissant (mauve), le Thymio suit les consignes données en appuyant sur les flèches de son dos ;
  • dans le mode attentif (bleu), le Thymio réagit aux claquements de mains.

Chaque mode a des inconvénients : le premier n’est pas pratique car il faut rester près du Thymio, et le second n’est pas efficace car seuls quelques réactions sont prévues.

Pour améliorer cela, je me suis inspiré de la création « Thymio télécommandé » pour contrôler un Thymio avec un autre (qui sert de télécommande). Comme dans cette création, j’ai utilisé les boutons « haut », « bas » et « central » du Thymio télécommande pour respectivement accélérer, freiner ou arrêter le Thymio contrôlé, et l’accéléromètre du Thymio télécommande pour faire tourner le Thymio contrôlé (il suffit de pencher le Thymio télécommande d’un coté ou de l’autre).

En attendant une vidéo montrant la coordination entre les deux robots, vous pouvez regarder la vidéo de la création. Sinon, le résultat au niveau du Thymio contrôlé peut être visualisé dans les vidéos 5 à 7, ci-dessous.

Suivi

Pour le suivi, le problème est similaire à celui de l’exploration : le mode amical (de couleur vert) a l’inconvénient d’être à la fois lent et saccadé, comme le mode d’exploration (mais ce dernier a au moins une excuse). Pour illustrer cela (et tester mon amélioration), j’ai utilisé la commande de la section précédente pour contrôler un Thymio avec un autre (qui sert de télécommande), et je l’ai fait suivre par un troisième. La vidéo 5 ci-dessous montre comme le comportement fourni n’est pas satisfaisant (le Thymio « suiveur » perd deux fois le « télécommandé »). Cela est dû selon moi au fait que la distance qu’il cherche à maintenir entre les deux Thymios est trop proche de sa portée limite.

Vidéo 5 (MP4 H264, 960 x 540, 2,2 Mo) : comportement de suivi fourni.

Du coup, j’ai proposé un comportement plus robuste, en maintenant une distance plus faible (et en tournant vers le plus proche objet détecté), illustré dans la vidéo 6 suivante.

Vidéo 6 (MP4 H264, 960 x 540, 4,4 Mo) : suivi amélioré.

Ce comportement permet de former un convoi de Thymio, chacun suivant le précédent. La vidéo 7 ci-dessous utilise les 10 Thymios, 8 d’entre eux utilisant ce comportement de suivi, le premier du convoi étant télécommandé par le dernier Thymio. Notez qu’aucun Thymio n’a perdu son prédécesseur pendant la durée de la vidéo (2 minutes 30).

Vidéo 7 (MP4 H264, 960 x 540, 8,3 Mo) : suivi en convoi.

Perspectives

Voici quatre idées de comportements, par ordre de complexité croissante :

  1. le plus simple est une variante des comportements d’exploration, dans laquelle la vitesse est réduite afin de leur permettre de stopper lorsqu’ils arrivent en bord de table ;
  2. il est aussi assez facile d’améliorer le mode peureux (rouge), en proposant une combinaison des comportements d’exploration et de commande couplée à des effets de sons et lumière ;
  3. en s’inspirant du comportement inspecteur (bleu clair) qui suit une piste tracée au sol, je pense proposer un comportement pour sortir d’un labyrinthe, en suivant un mur sur la droite ou la gauche du Thymio (l’absence de capteurs sur les cotés complique la réalisation de ce comportement) ;
  4. enfin, le plus difficile (encore du fait de l’absence de capteurs sur les cotés) serait un comportement de volée, formant au lieu d’un convoi linéaire (comme à la fin de la section sur le suivi) un V inversé derrière un Thymio contrôlé.