SuiveurRFID2011-1 : Différence entre versions

De Wiki de bureau d'études PeiP
Ligne 13 : Ligne 13 :
  
  
[[Fichier:Lecture-d-une-puce-RFID.JPG|Lecture d'une puce RFID|200px|thumb|left]]
 
  
  
Ligne 54 : Ligne 53 :
 
  Fin de la boucle
 
  Fin de la boucle
 
<br/>
 
<br/>
[[Fichier:Lecture-de-la-carte-RFID-et-comparaison.png|Lecture de la carte RFID, stockage de son nom dans une variable qui sera comparée afin de connaitre la destination à prendre|500px|thumb|left]]
+
{| border="0"
[[Fichier:Réorientation.png|Réorientation du robot s'il dévie trop|400px|thumb]]
+
|[[Fichier:Lecture-de-la-carte-RFID-et-comparaison.png|Lecture de la carte RFID, stockage de son nom dans une variable qui sera comparée afin de connaitre la destination à prendre|500px|thumb]]
 +
|[[Fichier:Réorientation.png|Réorientation du robot s'il dévie trop|400px|thumb]]
 +
|}
 +
<br/>
 +
 
 +
== Problème rencontré ==
 +
[[Fichier:Lecture-d-une-puce-RFID.JPG|Lecture d'une puce RFID|200px|thumb|left]]
 +
<br/>
 +
=== Comment passer à coup sûr sur la carte RFID ? ===
 +
Lors des premières séances, nos puces RFID étaient petites (de la taille d'une pièce de 2€) et le capteur RFID passait donc rarement dessus, même si le robot était envoyé dans la bonne direction. Pour corriger ce problème, nous avons par la suite pu utiliser des cartes RFID (de la taille d'une carte bleue) : plus fines et occupant une surface bien plus importante, le robot a davantage de chances de passer dessus.
 +
Prochainement, les cartes RFID seront au centre d'un cercle de couleur. Le robot passera forcément sur le cercle de couleur, il n'aura alors plus qu'à trouver la carte RFID au centre de celui-ci.

Version du 15 mars 2012 à 01:12

Introduction

Il s'agit ici de modifier la direction du robot en fonction de la puce RFID au dessus de laquelle il passe. Pour ce faire, le robot est équipé d'un capteur RFID afin de lire les puces et d'une boussole pour de le diriger. Lorsque le robot détectera une carte RFID, celle-ci lui indiquera la direction dans laquelle il doit aller, puis il devra avancer et maintenir son cap afin de tomber sur la carte suivante, et ainsi de suite.

La construction du robot

Le robot en cours de construction

La première fabrication

Il s'agit initialement de construire le robot en y incluant les différents composants nécessaires à notre projet, en particulier le capteur RFID et la boussole.


Notre robot dans l'état actuel (sans les cables)





Les modifications apportées

Lors de l'essai de la boussole, nous nous sommes rendus compte que notre robot n'effectuait pas la tâche souhaitée. Nous avons d'abord pensé à une erreur de programmation, puis avons fini par penser à un problème matériel. En effet, pour fonctionner la boussole a besoin d'être installée à l'horizontale, or nous l'avions placée à la verticale à côté du capteur RFID. Une fois ce changement effectué, l'installation fonctionnait.




La programmation

Les débuts

Faire avancer le robot jusqu'à ce qu'il passe sur une carte RFID dont le nom est donné en paramètre

Lors de nos premières séances, nous nous sommes d'abord familiarisés avec le logiciel Mindstorms NXT utilisé pour programmer notre robot. Les premiers essais ont eu pour but de faire avancer le robot puis de l'arrêter lorsqu'il passe sur une puce RFID avant de le faire redémarrer quelques secondes plus tard.

Au bout de quelques séances, le programme marchait assez bien, mais il était extrêmement répétitif. En effet, nous avions fait un bloc pour chaque puce : les cartes devaient donc être dans un ordre bien précis, et rien ne changeait dans nos différents blocs si ce n'est le nom de la puce et la plage du cap vers lequel se diriger. Par la suite, et avec le conseil de l'un des professeurs, nous avons donc trouvé plus judicieux de tout réunir en un seul bloc puis de sélectionner la direction grâce au nom de la carte RFID stockée dans une variable.

A noter que pour pouvoir créer notre programmes, nous avons dû ajouter deux modules téléchargés sur internet : celui du lecteur RFID et celui de la boussole. Ils n'étaient pas intégrés par défaut à l'interface.


L'algorithme de programmation

Faire avancer le robot

Lorsque le capteur détecte une puce RFID, stocker son nom dans la variable "Texte 1"
Comparer la variable "Texte 1" avec les différents noms de puces RFID répertoriés Selon le nom de la puce, une valeur va être attribuée à la variable "Nombre 1" et une valeur à la variable "plage_bas"
Boucle tant que "on ne passe pas au dessus d'une autre puce RFID" Si le cap actuel est compris dans la plage allant de "Nombre 1" à "plage_bas" alors Avancer tout droit Sinon Si le cap actuel est inférieur à "Nombre 1" alors Tourner à droite Sinon Tourner à gauche Fin si Fin si Fin de la boucle


Lecture de la carte RFID, stockage de son nom dans une variable qui sera comparée afin de connaitre la destination à prendre
Réorientation du robot s'il dévie trop


Problème rencontré

Lecture d'une puce RFID


Comment passer à coup sûr sur la carte RFID ?

Lors des premières séances, nos puces RFID étaient petites (de la taille d'une pièce de 2€) et le capteur RFID passait donc rarement dessus, même si le robot était envoyé dans la bonne direction. Pour corriger ce problème, nous avons par la suite pu utiliser des cartes RFID (de la taille d'une carte bleue) : plus fines et occupant une surface bien plus importante, le robot a davantage de chances de passer dessus. Prochainement, les cartes RFID seront au centre d'un cercle de couleur. Le robot passera forcément sur le cercle de couleur, il n'aura alors plus qu'à trouver la carte RFID au centre de celui-ci.