SuiveurRFID2012-1 : Différence entre versions

De Wiki de bureau d'études PeiP
(Construction du robot)
(Construction du robot)
Ligne 1 : Ligne 1 :
 
== Construction du robot ==
 
== Construction du robot ==
<include nopre noesc src="/home/pedago/ppeip/include/video-RFID-2012-iframe.html" />
+
<include nopre noesc src="/home/pedago/ppeip/include/video-RobotRFID-2012-iframe.html" />
 
<br style="clear: both;">
 
<br style="clear: both;">
 
''/* OK pour les photos, des coquilles à corriger */''
 
''/* OK pour les photos, des coquilles à corriger */''

Version du 13 avril 2013 à 07:34

Construction du robot


Vidéo HD


/* OK pour les photos, des coquilles à corriger */

Le robot suiveur RFID construit (sans mât)

Pour la construction de notre robot, nous avons suivi la notice pour avoir la base du robot, puis nous lui avons ajouté les différents capteurs dont nous avons besoin.

  • Le capteur de couleur pour détecter la feuille de couleur.
  • Le capteur RFID, pour lire les identifiants de chaque carte.
  • Le détecteur à Ultrason, qui permet au robot de détecter un obstacle.
  • Une boussole électronique permettant de suivre un cap.

Programmation du robot

Ajout du mât pour la boussole

La programmation

La seconde étape nous amène à utiliser le logiciel de programmation fournit, cependant il ne nous permet pas de programmer le robot exactement comme nous le voulons. La solution est d'utiliser un autre logiciel de programmation, Bricx Command Center, avec un langage proche du C. Il nous à permis de trouver plus facilement un algorithme et de le programmer plus facilement.

Le fonctionnement du robot est le suivant : /* partie à développer, on ne sait pas, par exemple, que vous utilisez la boussole pour vous guider */

Au début du parcours, le robot s'oriente grâce à la boussole vers la première carte (les directions sont connus à l'avance), il avance ensuite tout droit jusqu'à trouver un cercle de couleur. Il cherche la carte dans le cercle à vitesse réduite (la nécessité de baisser la vitesse vient du capteur RFID, a pleine vitesse le capteur ne lis pas les valeurs de la carte), si le capteur de couleur détecte un changement de couleur (c'est à dire quand le robot sort de la zone de couleur), le robot tourne pour se replacer dedans. Dès que la carte est trouvée, il se réoriente vers la prochaine carte (chaque carte à un identifiant et permet de trouver la direction à prendre), toujours avec la boussole. Le robot sort ensuite du cercle et avance pour suivre son parcours.

Difficulté rencontrées

Les différents problèmes rencontrés lors de la programmation sont:

  • La précision de la boussole ne permet pas de tomber à coup sûr sur la puce RFID. Il faut donc l'entourer d'un cercle de couleur pour permettre de dévier de la trajectoire.
  • Le capteur de couleur et la boussole sont très sensibles. Le capteur de couleur, dans le mode de fonctionnement que l'on a choisi, ne permet de différencier que six couleurs (blanc, jaune, rouge, vert, bleu et noir). Après quelques test, la couleur verte donne de bons résultats, les autres renvoyait des couleurs erronées. L'autre mode de fonctionnement permet de connaitre les composantes RGB de la couleur, plus précis mais trop lourd à mettre en place. Enfin la boussole est trop sensible aux champs émis par les moteurs, nous l'avons donc fixé sur un mât pour l'isoler.
  • Un problème de conversion renvoyait la valeur de la direction donné par la boussole en hexadécimal, alors que nous la comparions avec une valeur décimale. Le robot était alors bloqué.

Améliorations ajoutées

  • Une fois le robot fonctionnel, nous avons procédé à quelques améliorations de l'algorithme. Dans un premier temps le robot, une fois la carte RFID trouvé, tournait dans le sens des aiguilles d'une montre pour trouver la bonne direction, quel quelle soit. Pour optimiser ce passage, le robot procède à plusieurs test et opérations mathématiques. La boussole renvoie la différence entre l'orientation du robot et le nord (0 à 360°). En définissant la première moitié de ce cercle, on sait si le nouveau cap se trouve à droite ou à gauche du robot. Il tourne alors dans le sens adéquat.