Robots serveurs parisiens : Différence entre versions

De Learning Lab Environnements Connectés
Sauter à la navigation Sauter à la recherche
Ligne 42 : Ligne 42 :
 
==Documentation technique==
 
==Documentation technique==
 
==Etapes de réalisation==  
 
==Etapes de réalisation==  
===Etape 1 : titre étape 1===
+
===Etape 1 : Mise en place du Grid Eye===
 
(Façon tuto)
 
(Façon tuto)
===Etape 2 : titre étape 2===
+
===Etape 2 : Test avec l'interface graphique (GUI)===
 +
===Etape 3 : Implémentation sur le robot===
 
==Robot opérationnel==
 
==Robot opérationnel==
  

Version du 27 avril 2016 à 16:12

Lors de l'option robotique de deuxième année de Télécom Saint Etienne, nous devons réaliser quatre robots. Le projet a été pensé par les professeurs d'électronique de notre école, M. Eric Verney et M. Thierry Bru, en association avec FABLABouffe. Il s'agit de robots serveurs parisiens, en effet c'est en se basant sur le comportement ingrat des serveurs parisiens que l'idée de ces quatre scénarios est née. Le premier robot est Pépé le porte-plateaux, le deuxième Le Gueulard, le troisième Chaud-Devant et enfin le dernier, Hermès. La description de chacun d'eux est donnée postérieurement.

Le workshop se tiendra sur deux semaines à la Préfabrique de l'innovation à l'ancienne manufacture de Saint Etienne, voir plan d'accès

Base robot Stinger et sa carte contrôleur

Partie commune aux robots

Déplacement du robot

  • Dans un premier temps on a installé l'environnement Teensy sous Arduino. Puis il suffit de compiler et téléverser le programme suivant :
 - Code Teensy asservissement vitesse moteurs ( en K ) : Fichier:TeensyVSL298AsservissementVitesse.zip

A ce stade, le robot fonctionne par l'intermédiaire d'ordres donnés directement via le moniteur série.

Suiveur de ligne

Pour notre projet, nos robots doivent suivre une ligne noire tracée au sol. Pour effectuer cette action, on choisit d'utiliser deux capteurs "suiveurs de ligne" QRE1113 composé chacun d'un émetteur IR et d'un photo-transistor.

Capteur QRE1113 embarqué sur la base robot


Capteur QRE1113


Après plusieurs tests et ajustements du code Arduino, on arrive à un résultat assez concluant que l'on vous présente dans cette vidéo :

Évitement des obstacles

Liaison Wifi

Datasheet synthétique de l'ESP8266 https://cdn.sparkfun.com/datasheets/Wireless/WiFi/ESP8266ModuleV1.pdf

Code Arduino pour communiquer avec l'ESP8266 :


Scénario 1 : Pépé le porte plateau

Présentation du scénario

Ce robot a pour but d’apporter quelque chose à une source de chaleur. L’idée première et idéale serait que ce robot disposerait d’un plateau avec un capteur ultrason. Celui-ci, à son point de départ, recevrait un objet. Le capteur le détecterait alors et il parcourrait la ligne noire formant son parcours à la recherche d’une source de chaleur, donc d’une personne, afin qu’elle lui prenne l’objet. Le robot ne détectant alors plus d’objet sur son plateau, retournerait à son point de départ dans l’attente d’un nouvel objet à servir.

Documentation technique

Etapes de réalisation

Etape 1 : Mise en place du Grid Eye

(Façon tuto)

Etape 2 : Test avec l'interface graphique (GUI)

Etape 3 : Implémentation sur le robot

Robot opérationnel

Scénario 2 : Le Gueulard

Présentation du scénario

Ce robot a pour objectif de faire taire les gens en leur « gueulant » dessus. Le robot se déplacera comme les autres le long du parcours tracé avec une ligne noire. Ses capteurs, au nombre de deux, seront placés sur les côtés. Lorsque le signal sonore dépassera un seuil donnée, il se stoppera alors et de dirigera vers la source de bruit. Une phrase préenregistrée sera émise via les haut-parleurs afin de faire taire le perturbateur. Il ne retournera alors sur son parcours que lorsque le bruit sera en dessous du seuil.

Documentation technique

Etapes de réalisation

Etape 1 : titre étape 1

(Façon tuto)

Etape 2 : titre étape 2

Robot opérationnel

Scénario 3 : Chaud-Devant

Présentation du scénario

Le robot parisien "Chaud-Devant" est un robot suiveur de ligne qui va suivre un itinéraire tracé sur le sol jusqu'à ce qu'il rencontre un obstacle. Le robot va alors s'arrêter et diffuser des messages audios pour qu'on lui libère le passage. Une fois le passage libéré, "Chaud-Devant" reprend sa route.

Documentation technique

Partie Motrice

Le déplacement du robot se base sur le code arduino présent au début du wiki. Les capteurs pour la détection de ligne sont des QRE1113.

Datasheet QRE1113 : https://www.sparkfun.com/datasheets/Robotics/QR_QRE1113.GR.pdf

Partie Audio

Pour la partie audio, la solution retenue pour le moment est l'utilisation d'une teensy munie d'un shield audio pour la lecture et la diffusion du message audio. Le message audio, de type .wave ou .mp3, sera récupéré sur un serveur web. La teensy récupérera le fichier audio à l'aide du module wifi ESP8266.

Datasheet ESP8266 : https://cdn.sparkfun.com/datasheets/Wireless/WiFi/ESP8266ModuleV1.pdf

Code pour lancer un message audio préalablement enregistré dans une carte SD : Fichier:Teensy audio.ino.zip

Etapes de réalisation

Etape 1 : titre étape 1

(Façon tuto)

Etape 2 : titre étape 2

Robot opérationnel

Scénario 4 : Hermès

Présentation du scénario

Ce dernier robot est un robot porteur de messages. Le robot, tout comme les autres, se déplacera le long du parcours avec dans celui-ci un point de départ. Les clients peuvent enregistrer un son et le charger via internet afin que le robot délivre ce message. Le robot parcourrait alors la ligne noire formant son parcours à la recherche d’une source de chaleur, donc une personne, afin de lui délivrer le message. Il repartirait alors sur la ligne et retournerait à son point de départ. On peut imaginer aussi que les clients passent leur commande via le robot et que celui-ci délivre leur message au point de départ étant les cuisines.

Documentation technique

Etapes de réalisation

Etape 1 : titre étape 1

(Façon tuto)

Etape 2 : titre étape 2

Robot opérationnel

- Pour l'organisation :


Après en avoir discuté un peu avec M. Verney, il faudrait séparer les différentes fonctions des robots. Pour cela, il propose d'utiliser plusieurs cartes.

Notre première idée à été de séparer le robot en 3 "parties" :

  • Une partie acquisition/activation de la tache (Interaction entre les capteurs et une première carte et/ou interaction avec un actionneur)
  • Une partie traitement et gestion (Carte qui récupère et traite les données pour ensuite donner des ordres)
  • Une partie commande moteur (Carte Teensy déjà sur le robot)

Cette arborescence est prévu pour éviter les problèmes de cadencement entre les commandes moteurs, l'acquisition et le traitement des données. En plus du fait de permettre d'être plutôt modulable et de ne pas devoir ré-adapter chaque robot en fonction de ce qu'il doit faire.


- Pour le Wiki :


On remplira le Wiki au fur et à mesure, on pensait faire un code couleur en fonction des groupes et donc des différentes taches avec une partie (une couleur pourquoi pas) qui serait réservé à la motorisation (Déplacement et évitement). En plus, le fonctionnement du wiki de l'année dernière nous semblait vraiment sympa (Avec une gestion au jour le jour), et donc on pensait reprendre la même organisation.


Évidement, tout est ouvert à discussion, n'hésitez pas à venir me frapper pour me dire que ça va pas du tout. :)

PS : Les robots vaincront !

Références

Projets du 1er Fablabouffe

  • Restube