Binome2016-7

De Wiki de bureau d'études PeiP
Révision datée du 18 avril 2017 à 17:26 par Jclaude (discussion | contributions) (Séance 16 (20/03))

Introduction

Présentation

Pour ce projet, notre binôme formé par Rémi Foucault et Julie Claude, travaillera sur le robot compétiteur.

Le BE consiste à concevoir différents robots participant à un "match de foot". Il y a des robots compétiteurs, robots ramasseurs de balles ainsi que des buts à concevoir. Le robot compétiteur que nous souhaitons réaliser est tout d'abord actionné par un message reçu par le robot ramasseur. Il doit suivre les lignes colorées du terrain (après être sorti de son garage), à l'aide de capteurs, dans le but de se repérer dans l'espace dédié puis de trouver la balle qui émet un signal infrarouge. Une fois repérée, le robot doit se diriger vers la balle et à l'aide de pinces l'attraper ( ces pinces doivent cacher son signal). Une fois la balle attrapée, le robot envoie un message aux buts afin qu'ils enclenchent un signal infrarouge à leur tour, ce qui lui permettra de se placer devant le but adverse et de marquer. Une fois le but marqué, le robot compétiteur rentre dans son garage afin de ne pas gêner le robot ramasseur (qui est chargé de replacer la balle au centre après un but).

Objectif du robot compétiteur

Etapes d'une partie

1* Reçoit signal du robot ramasseur.
2* Se positionne sur le terrain.
3* Se déplace jusqu'à la balle.
4* Attrape la balle.
5* Demande d'activer le but.
6* Trouve le but et s'en rapproche.
7* Tir dans le but.
8* Reçoit message du but pour savoir s'il y a eu but.
9* Rentre au garage.

Cahier des charges par étape

1* Savoir recevoir message du robot ramasseur pour savoir quand sortir du garage. 
2* Savoir détecter les lignes du terrain pour savoir vers où se diriger lors de la sortie du garage. 
3* Etre capable de recevoir et trouver le signal infrarouge provenant de la balle et de se diriger vers elle. 
4* Avoir un système de pinces permettant d'attraper la balle tout en cachant son signal. 
5* Pouvoir envoyer un message demandant l'activation du signal infrarouge du but lorsque la balle est attrapée. 
6* Etre capable de détecter le signal du but et de s'y diriger. 
7* Avoir un système de tir afin de pouvoir marquer un but. 
8* Pouvoir recevoir message du but pour savoir si fin du match. 
9* Pouvoir se diriger grâce au lignes du terrain pour pouvoir rentrer dans son garage.

Autres fontions

10* Doit pouvoir détecter les obstacles afin de ne pas percuter l'autre joueur, but. 
11* Doit savoir se déplacer pendant le début et la fin du match en détectant les lignes du terrain et en les suivant, et savoir distinguer les lignes extérieures du terrain à ne pas dépasser.

Compte Rendu des séances

Séance 1

Nous avons été introduit au projet via une présentation orale décrivant les objectifs du BE. Nous avons par la suite choisi d'orienter notre travail vers le robot compétiteur dont nous allons essayer de réaliser les fonctions suivantes :

  • Détecter, attraper puis mettre la balle dans le but (nécessite la conception de pinces)
  • Ne pas sortir des limites du terrain lors d'une partie
  • Eviter les éventuels obstacles
  • En fin de partie, quitter le terrain

Séance 2

Lors de cette séance nous avons précisé les composants dont nous avions besoin pour concevoir notre robot. Nous avons de plus choisi, afin d'augmenter la difficulté, d'ajouter un système de fourche optique à chacune des deux roues.

Ce système permettra aux roues de fonctionner à la même vitesse et d'éviter les incertitudes dues aux moteurs. En effet cette fourche est composée d'une led infrarouge et d'un phototransistor. Grâce à une roue trouée relié a chaque moteur et possédant donc la même vitesse de rotation que celui ci, nous allons pouvoir calculer la vitesse de rotation des deux moteurs (la roue trouée coupant la lumière reçue par le phototransistor). Ensuite nous pourrons récupérer avec l'arduino, les vitesses calculées, les comparer puis les ajuster au niveau des moteurs afin qu'elle soit les plus égales égales possibles, de façon à effectuer un asservissement de la vitesse.

Nous avons eu le châssis de notre robot que nous avons pu monter, puis nous avons aussi réfléchi a la disposition des éléments sur notre robot, et avons fait quelques schémas, à l'aide d'anciens robots créés par des élèves.


Pour la conception du robot nous avons besoin des composants suivants :

  • un bouclier XBee

  • un interrupteur pour démarrer et arrêter le robot

  • un châssis en kit comprenant la roue jockey

  • deux roues et leurs moteurs associées

  • un microcontrôleur Arduino Mega 2560

  • un contrôleur pour les moteurs

  • un capteur ultrason

  • trois détecteurs de lignes

  • cinq capteurs infrarouges

  • un servo moteur pour mouvoir les pinces

  • deux fourches optiques et deux engrenages à appliquer aux roues

Séance 3

Aujourd'hui nous avons obtenu les derniers composants qui nous manquaient. Nous avons donc pu appréhender le fonctionnement du contrôleur de moteurs (la connectique ainsi que la programmation) et avons réussi à faire rouler et tourner notre robot. Ensuite nous nous sommes fortement renseignés sur le capteur ultrason ainsi que sur la fourche optique afin de pouvoir, lors d'une prochaine séance, les connecter à notre Arduino et réaliser les programmes nécessaires.

Séance 4

Lors de cette séance nous avons relié le capteur ultrason à l'arduino. Après avoir compris le fonctionnement du capteur, nous avons réussi à programmer la détection d'obstacles puis l'arrêt des moteurs lorsque le robot se situe suffisamment proche d'un obstacle (nous pouvons choisir la distance que l'on souhaite). Ensuite nous avons programmé la rotation du robot face à un obstacle afin de l'esquiver. Nous avons donc un robot se déplaçant et évitant les obstacle face à lui.

  • photo robot avec ultrason

Séance Bonus

Pour cette séance, nous nous sommes attaqués à Fritzing afin de schématiser le circuit électronique de notre robot. Malheureusement nous avons passé du temps à chercher des composants, le logiciel étant difficilement approchable. Nous avons donc commencé à créer le circuit que nous n'avons pas fini. Nous reviendrons plus tard sur cette partie. Ensuite nous avons pu commencé la conception des plaques qui nous aiderons à faire tenir les différents composants sur notre robot. Nous avons alors imaginé les différentes plaques dont nous avons fait des schémas précis sur papier à l'aide de nombreuses mesures effectuées sur le châssis de notre robot.

Séance 5

Nous avons fini les mesures des plaques nécessaires pour fixer les composants sur le robot, puis nous avons appris à utiliser le logiciel Inkscape et avons modélisé les premières plaques.

Séance 6

Modélisation des plaques pour fixer les composants sur le châssis à l'aide d'Inkscape.

  • screen Inkscape

Séance 7

Aujourd'hui nous avons finalisé nos schémas sur Inkscape puis sommes allés au Fabricarium afin de découper nos plaques à la découpeuse laser. Nous avons alors découvert le fonctionnement de cette machine que nous n'avions encore jamais utilisé. Nos plaques ont été découpées dans du plexiglas d'épaisseur 3mm. Cependant nous avons découvert que certaines pièces étaient trop fragile où contenaient un défaut de conception de notre part et nous devrons donc en modifié quelques unes et les découper à nouveau.

  • photo plaques

Séance 8

Nous avons commencer à étudier le fonctionnement de la fourche optique et avons réaliser de rapides programmes dans ce but.

Séance 9 (13/02)

Aujourd'hui nous avons continué à programmer la fourche optique mais nous avons eu quelques difficultés et avons donc décider d'étudier la programmation de la fourche optique chez nous, en dehors des cours afin de pouvoir se concentrer sur d'autres choses.

Séance 10 (16/02)

  • Programmation mise de côté. Redesign de pièces sur Inkscape.

Séance 11 (27/02)

  • Travail à la BU : Conception du schéma des pinces, du support des pinces, engrenages, système de tir etc..

Séance 12 (03/03)

  • Apprivoisement du logiciel Freecad pour la conception 3D des pinces (ce qui prit beaucoup de temps).
  • Mesures en plus pour la création des systèmes de tenue et de tir de la pince.

Séance 13 (09/03)

  • Suite de la conception des pinces sur Freecad, nous comprenons à présent mieux le logiciel. La partie la plus dure fût la création des quart de sphères creux pour cacher le signal infrarouge de la balle.
  • Commencement du design des engrenages, barres, système de tir sur Inkscape.

Séance 14 (13/03)

  • Finition de la pince sur Freecad et sur Inkscape. Redesign des pièces qui n'allaient pas au premier découpage.
  • Commencement du PCB shield pour notre arduino.

Séance 15 (16/03)

  • Suite shield PCB : Le shield s'avère être très compliqué à concevoir, il faut penser à tous les composants, et à adapter les liaisons des composants les unes aux autres (sans parler des composants qu'il a fallu télécharger).

Séance 16 (20/03)

  • Finition du shield.
  • Nous avons décidé de faire 2 PCB en plus : pour les phototransistors et pour les détecteurs de ligne


Fichier:.jpg

Séance 17 (27/03)

  • Nos 3 PCB finis, nous avons demandé à nos professeurs de corriger nos erreurs. Nos liaisons n'étaient pas parfaites du tout et nous avions oublié quelques étapes importantes comme la création du schéma propre du circuit pour une meilleur compréhension de celui-ci par les concepteurs des PCB.
  • Les 3 PCB étant corrigés et finis nous avons pu les envoyer à la conception. (Le shield a du être refait entièrement à cause de grosses erreurs que nous avions faites, nous avons donc du le finir à la maison).
  • Impression des pinces remise à plus tard pour cause de panne de l'imprimante 3D.

Séance 18 (03/04)

  • PCB non-reçus, soudage impossible (on aurait dû les recevoir, on a donc demandé aux professeurs de vérifier..)
  • Découpage des pièces faites sur Inskape : Nous avons encore eu des problèmes de découpage sur certaines pièces nous serons donc obligés d'y retourner.

Conception mécanique : résumé

Conception pinces

Nous avons choisi de faire la création de la pince sur freecad. Nous avons tout d'abord du faire plusieurs schémas et avons du réfléchir aux contraintes : cacher la lumière, pinces assez hautes et pas trop lourdes afin qu'elles ne tombent pas. Nous avons donc choisi un modèle de pinces qui cachent la lumière infrarouge (de la balle) des phototransistors avec deux quarts de sphère de ce côté et deux petites barres de l'autre pour retenir la balle. PHOTO SCHEMA PINCES

Freecad fût très difficile a comprendre, plus que certains logiciels comme solidworks que nous avions déjà pu utiliser. Mais après avoir parcouru le logiciel nous avons réussi a produire ce que nous voulions. Il a ensuite fallu faire les barres et les engrenages qui reliaient le tout, la conception nous avait paru simple au premier abord mais il fallait réfléchir a un système qui retienne les pinces de tomber et un système de tir de balle quand le robot se trouve devant un but. Nous avons donc trouvé un schéma concret de tout le système de pinces mais ne savions pas vraiment si ça fonctionnerait, nous avons quand même fait les pièces sur Inkscape pour tester le tout.

Conception PCB

Pour avoir le moins de fils possibles, nous avons choisi de faire trois PCB. Un pour les détecteurs de lignes, pour les phototransistors et le shield (controleur moteur, capteur ultrason, servo-moteur, fourches optiques). La prise en main fût compliquée et longue

Mise au point avant les vacances

La conception des pinces est terminée, il ne reste plus qu'à lancer l'impression 3D au Fabricarium Certaines plaques que nous avions découpées à la découpeuse laser n'étant pas tout a fait adaptées nous les avons reconçues puis découpées à nouveau.

La conception des PCB fut compliquée : La prise en main de Fritzing fut difficile notamment pour le Shield qui regroupe de nombreux composants. Ce fut difficile de placer tous les composants sur le PCB de façon à ce que les liaisons puissent être optimisées. De plus il y a de nombreux détails dans la conception du PCB qui ont été compliqués : Modification de certains composants, création des plans de masses, ... Les différents PCB sont terminés et ont été envoyés à la fabrication.