BE 2011-2012 : Différence entre versions
(→Robot suiveur RFID) |
(→Robot naviguant aux instruments) |
||
Ligne 105 : | Ligne 105 : | ||
</gallery> | </gallery> | ||
− | Matériel | + | |
+ | <table border="1"> | ||
+ | <tr> <th>Elèves</th> <th>Matériel</th> <th>Page</th> </tr> | ||
+ | <tr> | ||
+ | <td> Prenom Nom, Prenom Nom </td> | ||
+ | <td> <span style="color: green;">boite lego MindStorm</span>, <span style="color: green;">module boussole</span> </td> | ||
+ | <td> [[Boussole2011-1|Robot boussole 1]] </td> | ||
+ | </tr> | ||
== Robot téléguidé avec système embarqué == | == Robot téléguidé avec système embarqué == |
Version du 29 janvier 2012 à 18:03
Sommaire
But à atteindre
Ce bureau d'étude a comme finalité la construction de robots patrouilleurs. Ces robots doivent parcourir de façon semi-autonome un espace en accumulant des données. Ces données peuvent être, par exemple, des images de leur environnement ou le résultat d'écoutes WiFi. Un robot semi-autonome est un robot capable de se déplacer dans son espace sans intervention humaine en suivant un balisage quelconque (marquage au sol, tags RFID, sons particuliers, etc). Un humain doit cependant pouvoir prendre le contrôle partiel ou total d'un robot. Le contrôle partiel consiste à faire varier la vitesse du robot, le sens du parcours du robot, etc. Le contrôle total consiste à gérer complétement le déplacement du robot, même si ce dernier évite encore les collisions (que le contrôleur pourrait ne pas avoir pu prévoir). Les robots doivent aussi pouvoir communiquer entre eux pour s'échanger des informations de positionnement, pour pouvoir s'éviter ou pour pouvoir se regrouper (par exemple pour pouvoir explorer en détail un lieu particulier). A ce propos il est fondamental que les robots sachent se positionner pour pouvoir annoter les informations envoyées ou stockées (images ou données).
Matériel à votre disposition
Les couches basses du robot seront réalisées à l'aide de Lego MindStorm. Le Lego va permettre de réaliser le chassis avec sa motorisation et d'y installer divers capteurs. Il est même possible d'assurer une certaine communication entre robots grâce à la technologie bluetooth intégrée au micro-contrôleur MindStorm. Pour aller plus loin, il est nécessaire d'embarquer un micro-PC de type FoxBoard sur le robot. C'est ce micro-PC qui fera faire les acquisitions d'images ou les analyses WiFi et c'est à lui que le micro-contrôleur du MindStorm pourra envoyer ses données de localisation.
Répartition des tâches
Chaque binôme va se voir affecter une des problématiques décrites dans les sous-sections suivantes. Par la suite les résultats devront être incorporés dans chaque robot pour obtenir un robot tel que décrit plus haut. Notez que tous les robots doivent savoir s'arrêter quand un obstacle se présente devant eux (utilisation du sonar MindStorm).
Robot suiveur de ligne
Vous devez créer un robot capable de suivre une courbe discontinue au sol. Le robot doit être capable de réaliser les actions ci-dessous.
- en cas de perte du marquage, tourner dans un sens puis dans l'autre pour tenter de le retrouver avec des angles de plus en plus grands ;
- si le marquage ne peut pas être retrouvé, se remettre dans la position de la perte initiale et partir tout droit ;
- se remettre dans l'axe du marquage lorsque ce marquage est retrouvé ;
- s'arrêter quand un obstacle se présente devant lui et repartir si l'obstacle disparait ;
- changer de parcours sur commande, c'est à dire emprunter un parcours d'une couleur différente dès qu'il est rencontré ;
- inverser son sens de parcours.
Voici des exemples de parcours discontinus pouvant être suivis dans les deux sens.
Elèves | Matériel | Page |
---|---|---|
Prenom Nom, Prenom Nom | Boite lego MindStorm, Scotch de couleur | Robot suiveur de ligne 1 |
Robots synchronisés
Cette étude sera menée par deux binômes. Vos deux robots doivent être capables de se synchroniser. Il vous est demandé de réaliser le comportement suivant :
- séparés, les robots avancent tout droit et s'arrêtent dès qu'ils détectent un obstacle avec leur sonar ;
- les deux robots doivent pouvoir être couplés côte à côte ;
- dans le mode couplé, les robots avancent quand aucun obstacle n'est détecté par leurs sonars ;
- dans le mode couplé, si un robot détecte un obstacle et l'autre non le couple tourne dans la direction où aucun obstacle n'est détecté.
La communication entre les deux robots se fait par bluetooth.
Elèves | Matériel | Page |
---|---|---|
Prenom Nom, Prenom Nom | Boite lego MindStorm | Robot communicant 1 |
Prenom Nom, Prenom Nom | Boite lego MindStorm | Robot communicant 2 |
Robot suiveur RFID
Vous doterez votre robot d'un lecteur RFID et d'une boussole. Votre robot doit être capable de réaliser les opérations ci-après :
- trouver sous une marque de couleur précise (feuille A4, disque, ...) une carte RFID ;
- partir dans une direction donnée ; le robot s'oriente avec la boussole puis se lance avec ses deux moteurs sans tenter de corriger la trajectoire ;
- mémoriser des caps en fonction des identifiants des cartes RFID.
Par la suite vous intégrez ces trois fonctionnalités pour obtenir un robot capable de suivre une trajectoire matérialisée par des marques sous lesquelles une carte RFID est dissimulée. Quand le robot détecte une marque via son capteur de couleur, il se met à chercher l'emplacement exact de la carte RFID. Une fois la carte localisée, le robot trouve le prochain cap à suivre en fonction de l'identifiant de la carte RFID. Le robot s'oriente sur ce cap avec sa boussole puis se lance vers la marque suivante. Et ainsi de suite.
Voici un exemple de parcours en suivant des marques RFID.
Elèves | Matériel | Page |
---|---|---|
Prenom Nom, Prenom Nom | boite lego MindStorm, module RFID, cartes RFID, module boussole, marques de couleur | Robot suiveur RFID 1 |
Vous doterez votre robot d'une boussole pour lui permettre de connaitre précisement sa direction. Vous devez réaliser les actions décrites dans la suite.
- Vous commencerez par faire en sorte que votre robot sache avancer en ligne droite, pour cela vous utiliserez le contrôle PID décrit sur la page WikiPedia. Pour simplifier ce qui est dit sur cette page, sachez le principe appliqué à votre robot va être d'effectuer des corrections sur la trajectoire en utilisant des rotations. L'angle de ces rotations va être calculé en fonction de l'erreur de trajectoire indiqué par la boussole. Plus exactement par la somme d'une constante multipliée par l'erreur instantanée, d'une autre constante multipliée par l'intégrale de l'erreur et enfin d'une dernière constante multipliée par la dérivée de l'erreur. A vous de trouver les valeurs adaptées des trois constantes.
- Par la suite faites en sorte que votre robot sache contourner les obstacles au plus juste. Au plus juste signifiant qu'il tournera vers la droite ou vers la gauche en jugeant d'où se trouve le chemin le plus libre. L'algorithme a appliquer consiste à tourner le robot d'un angle faible dans un sens puis dans l'autre et de lire les resultats du sonar. Si les deux mesures indiquent un obstacle trop proche, l'angle est augmenté et le procédé répété. Dès qu'une trajectoire indique un chemin libre ou du moins un obstacle à distance suffisante, le robot avance en ligne droite suivant cette trajectoire. La boussole doit être utilisée ici pour vérifier que le robot effectue précisement des rotations des angles souhaités et qu'il sache revenir en position initiale pour éventuellement recommencer avec un angle plus grand.
- Pour permettre de suivre le comportement du robot, faites afficher sur la brique de contrôle MindStorm l'angle de rotation pour le dernier contournement et la distance parcourue le long de la dernière ligne droite.
Intégrez les comportements pour obtenir un robot capable de contourner les obstacles avec un minimum d'intelligence.
Voici un exemple de contournement d'obstacle avec l'algorithme décrit.
Elèves | Matériel | Page |
---|---|---|
Prenom Nom, Prenom Nom | boite lego MindStorm, module boussole | Robot boussole 1 |