SuiveurLigne2012-1
Sommaire
Introduction
A travers cette page, je vais vous présenter les étapes successives de mon travail dans le cadre des bureaux d’études PEIP. L’objectif est tout d’abord de réaliser un robot en Lego Mindstorm capable de suivre une ligne continue ou non au sol et s’arrêter lorsqu’il perçoit un obstacle. C’est le robot suiveur de ligne.
Les premiers pas …
… de la construction
Avant toute chose, il a fallu concevoir le robot. La base de la structure a été réalisée avec le modèle de construction du manuel Lego; intégrant 3 cerveaux /* Ils ne réfléchissent pas trop tout de même*/ moteurs et un boîtier NXT. Enfin, pour que le robot puisse s’imprégner de son environnement il est nécessaire d’y rajouter des capteurs. Pour débuter, seul deux capteurs m’ont paru les plus appropriés : le capteur de couleur particulièrement utile pour suivre un marquage et le capteur à ultrason pour détecter les obstacles.
(photos à venir) /* oui, en effet */
Du travail est encore à faire concernant la conception du robot, l’emplacement pour la fox board est prévu mais celle-ci n’est pas encore parfaitement bien stable (voir photo). Concernant les capteurs, il sera surement utile d’en rajouter d’autres. Par contre, la base du robot comprend 3 cerveaux-moteurs hors seul deux suffiraient. En outre, à l’usage j’ai pu constater qu’il n’était pas aisé de changer les piles du boîtier NXT.
… de la programmation
Une fois les deux capteurs et le boîtier NXT mis en place, j’ai tenté de faire rouler le robot avec le logiciel Lego Mindstorm. Les premiers essais ont été concluants puisse que j’ai réussi à mettre en mouvement le robot dans différentes directions et à faire fonctionner les capteurs. Par exemple, je lui imposais de s’arrêter s’il détecte un objet à 10 cm ou reculer s’il détectait du bleu. Cependant le logiciel ne me semblait pas facile à manipuler pour faire des programmes plus compliqués avec plusieurs boucles notamment. J’ai donc essayé avec le logiciel Bricx Command Center où il est possible de coder avec un langage proche du C dont j’ai quelques bases. Malheureusement, j’ai beaucoup de difficultés à trouver les fonctions du logiciel et je ne suis pas parvenue à faire fonctionner les capteurs. Finalement, j’ai pris conscience que j’en avais effectué plus avec le logiciel Lego Mindstrom. Les séances de cours passant rapidement, il m’a donc fallu retourner sur ce logiciel. Même si je ne le maîtrise pas encore très bien, j’ai décidé de commencer mes programmes pour atteindre les objectifs en espérant apprendre plus efficacement.
Comment lui faire suivre un marquage continu ?
S’il a toutefois était simple de faire prendre un marquage droit continu au robot, il en est pour moi beaucoup moins de lui faire prendre un virage. Deux idées me sont venues : la première qui est d’utiliser deux capteurs de couleurs un droit et un gauche. Dés que la couleur n’est plus détectée par l’un des deux capteurs il va falloir tourner d’un certain angle jusqu’à ce que le capteur qui avait perdu la ligne la perçoive de nouveau. Ceci impose un capteur supplémentaire et des contraintes importantes sur la largeur de la ligne à suivre. La deuxième idée est de lui faire retrouver le marquage qu’il a perdu en effectuant des rotations dans un sens puis dans l’autre. Celle-ci est préférable puisqu’elle peut servir pour les lignes discontinues.
… à suivre