Navigation comme les fourmis
top-view-last.jpg
size="square"
size="square"
size="square"

Navigation comme les fourmis

par Francesco

Fait avec 1 Thymio

Mots-clés:

Robotique et algorithmes

Aucune

Concept de base

La navigation, pour un robot, consiste à aller d'un point à un autre. Par exemple on peut parler de navigation pour un robot qui va d'une base située dans le désert à une source d'eau qu'il doit pomper, pour ensuite la ramener à la base. Admettons que le robot peut en tout temps rentrer à la base car celle-ci émet un signal qu'il peut recevoir. Comment chercher l'eau et trouver le chemin de la base vers l'eau? En robotique, on crée une carte dans la mémoire du robot, mais cela demande des capteurs assez sophistiqués. Dans cet exemple nous n'allons pas faire de carte dans la mémoire du robot, mais faire une carte directement sur le terrain. C'est ce que font les fourmis pour créer une piste entre leur fourmillière et une source de nourriture. Une fois trouvée la nourriture elles rentrent au nid en déposant au sol une trace chimique qu'elles peuvent ensuite suivre pour retrouver la nourriture.

Comment réaliser des robots qui naviguent comme les fourmis

On va donc reproduire le comportement qui consiste à laisser une trace par terre en retrant à la base une fois trouvé l'eau, pour ensuite pouvoir suivre la trace à l'envers pour retrouver l'eau à partir de la base.

Idéalement il faudrait un robot qui peut déposer au sol une substance quant il le veut. Or nous disposons d'un robot qui peut écrire au sol, avec un feutre. Il ne peut pas lever le feutre, il écrit continuellement. Donc on va renforcer l'écriture quand il restre au nid. Ensuite, si la trace est assez forte, on va la suivre pour trouver l'eau.

Comment rentrer au nid? Avec Thymio on peut le faire au moins de deux façons:

  • En ayant une source de lumière en dessus de la base et en la suivant. Cette méthode a été testée et, dans la configuration utilisée, était peu précise.
  • En mettant le tout sur une pente et en suivant la pente pour trouver la base. C'est ce qui est fait dans cet exemple. Cela marche assez bien.

Voici quelques images de la configuration de test et du résultat final.

Configuration sur une table inclinée:

video-final-setup-700.jpg

Résultat en vidéo:

Petite explication de la vidéo:

  • Le robot commence par se déplacer aléatoirement (Thymio de couleur blanche)
  • S'il trouve la cible (au centre, rond noir) il se tourne vers la base (Thymio devient de couleur rouge) et y retourne, en faisant des déplacement avant-arrière pour marquer plus fortement le sol.
  • La marque au sol doit être assez forte pour être suivie. Donc au début le Thymio continue à chercher aléatoirement et marquer le retour, jusqu'à quand il commence à détecter la trace qu'il a laissé. Dans ce cas il essaye de la suivre (Thymio prend la couleur verte).
  • Une fois la marque assez forte, le Thymio peut aller de la base à la cible directement et faire des aller-retour par le chemin le plus court.

Télécharger le code

| Cliquez ici

Lien vers plus d'infos

*

Commentez cette création !

Add a New Comment
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License