Synchronize2012-1 : Différence entre versions

De Wiki de bureau d'études PeiP
(Mode Autonome)
(Mode Autonome)
Ligne 69 : Ligne 69 :
 
Après avoir pris connaissance et s'être familiarisés avec le logiciel de programmation, nous avons débuté la programmation par la réalisation d'un premier programme qui permettra au robot de circulait tout en évitant les obstacles. On peut voir ci-contre le code du programme :
 
Après avoir pris connaissance et s'être familiarisés avec le logiciel de programmation, nous avons débuté la programmation par la réalisation d'un premier programme qui permettra au robot de circulait tout en évitant les obstacles. On peut voir ci-contre le code du programme :
 
[[Fichier:Programme évitement.png|thumb|upright=1.25|Programme pour éviter les obstacles]]
 
[[Fichier:Programme évitement.png|thumb|upright=1.25|Programme pour éviter les obstacles]]
 +
 +
Ici, le principe est simple : Le robot commence à avancer. S'il rencontre un obstacle, il s'arrête et commence à tourner jusqu'à ce qu'il ne détecte plus d'obstacle, pour pouvoir se remettre à avancer.
 +
Voici une petite vidéo de démonstration :
 +
Même si le robot semble rapide, il existe un inconvénient : on voit que le robot favorise une direction, qui est la gauche. Mais comme ce programme n'est pas d'une extrême importance, nous avons choisi d'ignorer cet inconvénient et de passer à la suite.

Version du 4 mars 2013 à 12:07

Le but du Bureau d'Etude

A travers ce Bureau d'Etude, nous allons concevoir un robot patrouilleur semi-autonome, c'est-à-dire qu'il sera capable d’interagir avec son environnement en accumulant des données sur celui-ci (des images par exemple) sans une intervention humaine. Dans un premier temps, le robot devra remplir une fonction précise (suivi d'une ligne, d'un parcours RFID ...). Dans notre cas, il s'agira de concevoir un robot étant synchronisé en bluetooth avec un autre. Dans un second temps, le robot devra intégrer un certain nombre de fonctionnalités étudiées par les autres binômes. Une vidéo de présentation et de démonstration du robot finale clôturera ce projet.


Buts de la première partie :

/* Partie à expliciter et à préciser*/

  • Concevoir un robot basique intégrant le capteur ultrason et le boîtier NXT.
  • Le robot avance tout droit et s'arrête dès qu'il détecte un obstacle avec son sonar. Il effectue une rotation sur place et redémarre lorsqu'aucun objet n'est détecté.
  • Les deux robots doivent communiquer par bluetooth pour mutuellement s'envoyer et recevoir des messages par rapport aux informations obtenues sur l’environnement pendant leur navigation.
  • Dans le mode couplé, les robots avancent en même temps, mais si un obstacle est détecté par le sonar d'un des robots, le couple tourne dans la direction où aucun obstacle n'est détecté.

Buts de la seconde partie :

Le robot doit maintenant intégrer les fonctions suivantes :

  • Suivi d'une ligne de couleur discontinue
  • Capter une carte RFID et enregistrer et renvoyer sa valeur
  • Indiquer sa position exacte avec l'outil boussole
  • Se synchroniser avec d'autres robots et communiquer
  • Circulation auto en évitant les obstacles ou pilotage via téléphone ou tablette.

Construction du Robot : WALL_E

Construction de la base du robot

Robot base de la notice Lego


Pour cette première séance, nous avons réalisé la base du robot : Nous avons suivi le montage proposé par la notice Lego Mindstorms, qui comporte 3 moteurs et le boitier NXT. Mais le 3ème moteur étant superflue, et étant le seul groupe a travailler sur les robots synchronisé, nous avons décidé de réaliser un robot plus basique en utilisant le moins de pièces Lego possibles pour pouvoir réaliser un 2ème robot identique.




Base motrice du nouveau Robot


Nous avons donc utilisé 2 moteurs reliés simplement par des barres Lego pour former un socle destiné à recevoir le boitier NXT comme on peut le voir sur la photo ci-contre. Par la suite, nous avons fixé les 4 roues, dont 2 sur les moteurs qui, lors de leur activation permettent au robot d'avancer, ainsi que le capteur infrarouge, nécessaire pour entreprendre la première partie, puisqu'il permet de détecter les obstacles. Une première version du robot ayant été réalisée, nous avons pu nous familiariser avec les fonctionnalités du robot grâce à la fonction "Try Me" intégrée dans le boitier NXT. Nous avons ainsi rencontré un premier problème : l'utilisation des roues n'était pas très adaptée, puisque lors des rotations et de l'avancée du robot, la conduite n'était pas très fluide. Nous avons donc opté pour les chenilles.






Nous avons ainsi obtenu la première version de WALL_E :

Première version de WALL_E

Modification de WALL_E

Suite à l'utilisation de notre robot, nous nous sommes rendu compte que le capteur à ultrasons était installé un peu trop haut par rapport aux obstacles présents dans la pièce, comme les pieds de chaises ou de tables par exemple. Nous avons donc effectuer plusieurs test pour trouver la bonne hauteur pour mettre en place le capteur. Entre temps, un autre groupe nous a rejoint sur le projet. Nous n'avons donc pas du construire un deuxième robot, puisque c'est le second groupe qui s'en est chargé.

C'est ainsi que sont nés WALL_E et EVE :
WALL_E et EVE


Première Partie

Mode Autonome

Après avoir pris connaissance et s'être familiarisés avec le logiciel de programmation, nous avons débuté la programmation par la réalisation d'un premier programme qui permettra au robot de circulait tout en évitant les obstacles. On peut voir ci-contre le code du programme :

Programme pour éviter les obstacles

Ici, le principe est simple : Le robot commence à avancer. S'il rencontre un obstacle, il s'arrête et commence à tourner jusqu'à ce qu'il ne détecte plus d'obstacle, pour pouvoir se remettre à avancer. Voici une petite vidéo de démonstration : Même si le robot semble rapide, il existe un inconvénient : on voit que le robot favorise une direction, qui est la gauche. Mais comme ce programme n'est pas d'une extrême importance, nous avons choisi d'ignorer cet inconvénient et de passer à la suite.