Binome2016-4

De Wiki de bureau d'études PeiP
Révision datée du 27 mars 2017 à 16:31 par Cdanjou (discussion | contributions) (Séance 16 - 20 Mars 2017 - Conception des engrenages et suite programmation de la carte)

Introduction

Dans le cadre de ce bureau d'étude, le travail des binômes est de réaliser un jeu dans lequel deux robots s'affrontent.Les règles sont très simples, chaque robot doit envoyer une balle dans le but adverse.Il y a deux types de robots,le robot ramasseur qui doit récupérer la balle et la placer au centre du terrain après chaque but et le robot joueur qui doit être capable d'attraper la balle et de la propulser dans le but adverse.

Après avoir échangé nos opinions, notre binôme ,composé de Danjou Corentin et Morelle-Deloffre Quentin, a décidé de travailler sur le robot joueur qui sera télécommandé.

Cahier des charges

Le robot sera dirigé directement par un humain et ne sera donc pas autonome. Il est constitués des mêmes composants que le robot ramasseur mis à part les phototransistors car la balle et le but seront directement repéré par l'humain à l'aide d'une caméra placée sur le robot. Le contrôle du robot se fait via une Raspberry Pi dotée d'une interface WiFi transformée en point d'accès. L'opérateur contrôle le robot à l'aide d'un smartphone connecté sur le point d'accès. Le robot ne peut se mettre en marche qu'à partir d'un signal reçu de la part du robot ramasseur. L'opérateur peut diriger le robot comme il le souhaite cependant la présence de capteurs est nécessaire pour éviter au robot de sortir du terrain. La capture de la balle se fera à l'aide d'une pince que nous devrons réaliser. Cette pince devrai être solide et doit être également capable d'éjecter la balle.

En résumé, le robot doit être capable :

  • détecter les lignes au sol
  • d'éviter les collisions
  • de repérer la balle
  • de capturer la balle et de la lancer
  • de communiquer avec les autres éléments présent sur le terrain

Après avoir listé les objectifs du projet, nous avons donc réalisé un tableau récapitulatif du matériel nécessaire à la fabrication de notre robot joueur :

Structure Circuit embarqué Contrôle à distance
  • Des plaques de plexiglas pour le châssis
  • Deux roues motrices
  • roue libre (à bille)
  • Servo-moteur
  • Capteurs ultrasons
  • Capteurs lignes
  • FTDI
  • Régulateur 5V
  • Contrôleur moteurs TB6612FNG
  • Quartz
  • Adaptateur USB
  • Micro-contrôleur ATMega328p
  • Boîtier à Piles
  • Raspberry Pi
  • Caméra
  • Alimentation Raspberry

Journal de bord

Séance 1 - 16 Janvier 2017 - Le commencement

Notre première séance a principalement consisté à la découverte de notre projet. Nous avons eu une présentation orale du projet, ainsi que la découverte des différents robots à réaliser (robot joueur, robot ramasseur, élaboration des buts) ainsi que les éléments qui devront être intégrés à notre robot. Après avoir choisi notre binôme, nous avons décidé de réaliser un robot joueur télécommandé et peut-être compléter notre projet par l'élaboration d'un but si le temps nous le permet. Nous nous sommes donc ensuite attelés à la réalisation du cahier des charges permettant de définir les éléments nécessaires à l'élaboration de notre robot.


Séance 2 - 19 Janvier 2017 - Découverte des différents composants et création du châssis

Durant notre deuxième séance, nous avons fait une première prise en main des composants de notre robot tels que les roues, le Raspberry Pi etc. Nous avons choisi de commencer par l'élaboration de notre châssis. Pour cela, nous avons réfléchis sur la mise en place des différents composants. En fonction de leurs positions et leurs tailles , nous avons entrepris la réalisation d'un dessin avec le logiciel Inkscape qui par la suite, permettra de fabriquer notre châssis grâce à la découpeuse laser.

Séance 3 - 23 Janvier 2017 - Modélisation du châssis

Au cours de cette séance nous avons poursuivis l'élaboration du châssis. Cependant, nous nous sommes rendu compte qu'il y avait beaucoup de paramètres à prendre en compte lors de la réalisation de ce dernier, c'est donc pour cela que nous avons lister les différents problèmes que nous pourrions rencontrer lors du montage des différents composants de notre robot :

  • La fixation des moteurs était à réfléchir, ces derniers seront fixés sous le châssis à l'aide de deux entretoises pour chaque moteur.
  • La fixation des des diverses alimentation était également un problème. L'alimentation de la Raspberry étant un boîtier que nous ne pouvons pas percer, nous avons donc réfléchis à un système de cage qui nous permettrait donc de contenir l'alimentation. De plus, le boîtier de pile est composé lui de 6 piles dont 3 de chaque cotés, il a donc fallut réfléchir a un système qui permet fixer le boîtier et également de changer les piles facilement.
  • La position de la pince était aussi un élément à prendre en compte lors de la réalisation du châssis, nous avons donc réservé un emplacement pour le moteur de la pince.
  • Les nombres files de connexion est un facteur à prendre en compte. En effet, ces derniers étant nombreux, il faut donc pouvoir repérer à quel composants ils sont reliés et pouvoir intervenir facilement en cas de problème.

Nous avons donc modéliser un châssis permettant de résoudre ces problèmes et qu'il soit un maximum adaptable à n'importe quelle situation.

[photo Quentin qui travail]

Séance 4 - 26 Janvier 2017 - Début de la création de la carte électronique

Schematique


La modélisation du châssis étant bien avancée, nous avons donc décidé de nous répartir le travail.

Pendant que l'un s'occupe de terminer le châssis, l'autre commence la carte électronique. Cette partie sert à concevoir la carte qui permettra de contrôler les différents composants électroniques présents sur notre robot.

C'est donc avec le logiciel Fritzing que nous allons réaliser cette étape. Tout d'abord nous avons listé les différents composants qui seront présents sur notre carte, puis après une rapide prise en main du logiciel, nous nous sommes lancés dans la création du schématique qui sera utile lors du routage des différents composants.



Séance 5 - 30 Janvier 2017 - Début du routage

Partie inférieur du châssis
Partie supérieur du châssis


Durant ce week-end, nous en avons profité pour terminer le schématique de la carte électronique afin de consacrer la séance au routage. Cependant quelques problèmes ont été rencontrés lors de ce dernier, cela devrait donc nous prendre une séance supplémentaire.

De plus, durant cette séance, nous avons également fait les derniers réglages sur notre châssis. Il est donc maintenant terminé ! Nous avons hâte de voir ce que cela donne. La prochaine séance sera donc consacré à la découpe du châssis !







Séance 6 - 2 Février 2017 - Découpage du châssis

Pendant cette séance nous sommes allé au Fabricarium découper notre châssis à l'aide de la découpeuse laser sur une plaque de plexiglas. Nous avons cependant remarqué un problème au niveau de l'emplacement des entretoises pour fixer les moteurs. En effet, ces derniers sont mal positionnés sur notre châssis et ne se retrouvent pas face au vis de fixation des moteurs, nous allons donc devoir rectifier ce problème sur le dessin de notre châssis et imprimer une nouvelle pièce plus tard.

Après la constatation de ce problème au niveau de la fixation des moteurs, nous avons donc pris la décision de monter notre châssis et de positionner les pièces sur celui ci lors de la prochaine séance. Cela nous permettra de voir ses différents défauts que nous pourront corriger par la suite. Nous attaquerons donc ensuite la modélisation finale de notre châssis sur Inkscape.

Séance 7 - 6 Février 2017 - Montage du châssis et routage de la carte électronique

Comme nous l'avions prévu lors de la séance précédente, celle ci sera consacrée au montage de notre châssis. À l'aide de la visserie fournis par les professeurs, Quentin à fixé les deux parties du châssis ensemble. Il a ensuite fixé la roue à bille, le cerveau moteur pour la pince, l'interrupteur et également positionné les différents composants sur le châssis tel que la Raspberry pi, sa batterie et le boîtier à piles. Cela permet de rendre compte de l'espace occupé sur le châssis par les différents composants et également de voir quelles sont les choses à améliorer. Certaines choses étant donc à corriger telles que :

  • Charger l'emplacement des entretoises pour la fixation du moteur.
  • L'emplacement du cerveau moteur étant trop large, il faut donc le rétrécir et également rajouter des trous pour pouvoir le fixer correctement.
  • Revoir le système de fixation de la batterie pour la Raspberry Pi.


Pendant ce temps, le schématique de la carte électronique étant terminé, je me suis donc attelé au routage de la carte électronique sur le PCB. Il fallait donc réfléchir à un routage simple, qui ne nécessite pas beaucoup de fils de connexions. Le routage étant presque terminé à la fin de cette séance, il faudra donc vérifier les connexions et faire les plans de masse avec le professeur lors de la séance suivante.

Séance 8 - 9 Février 2017 - Carte électronique enfin terminée

La carte électronique est enfin terminée, nous avons fait quelques derniers réglages à l'aide du professeur et nous avons ensuite envoyé la carte à l'impression. Pendant ce temps Quentin s'est occupé des modifications qu'il y avait à faire sur le châssis; en plus du problème des entretoises pour la fixation des roues, nous avons repensé à une meilleure fixation des éléments se trouvant sur la face inférieure tel que le moteur pour la pince ainsi que l'alimentation de la Rasberry Pi se trouvant derrière le servomoteur.

Séance 9 - 16 Février - Découverte OnShape et poste de soudure

Notre carte électronique est maintenant imprimé, nous pourrons par la suite effectuer les soudures des composants sur celle ci.

Nous avons brièvement réfléchis à la conception de notre pince. Et nous pensons utiliser les OnShape pour la modéliser. Onshape étant un logiciel de modélisation 3D en ligne assez professionnel, il dispose d’une version « étudiant » gratuite qui nous permet de l’utiliser. Nous nous sommes donc créé un compte puis ensuite nous avons regardé les différents tutoriels d’utilisation de se logiciel pour avoir une petite idée des différents possibilités que ce dernier offre.

Séance 10 - 16 Février 2017 - Tests OnShape et programmation Arduino

Cette dernière séance avant les vacances à été un peu compliquée. Nous n’avons pas énormément avancé sur le projet. Nous avons ensemble effectué quelques modifications sur notre châssis pour qu’il soit encore plus ergonomique. De plus, nous avons tenté de créer quelques pièces de notre pince à l’aide de OnShape mais sans succès. Enfin nous avons réfléchis à la programmation de notre carte électronique. Pour ce faire nous nous sommes d’abord entrainés et familiarisés avec le langage de programmation sur un Arduino uno. À l’aide de documentation sur Internet, notamment du site OpenClassRoom, nous avons réussi à faire clignoté une LED grâce à notre Arduino.

Nous n’avons malheureusement pas été productif durant cette séance. Lors de la rentrée nous allons devoir mieux nous répartir les rôles et bien fixer les réels objectifs à atteindre pour chaque séance.

Séance 11 - 27 Février 2017 - Réflexion sur la pince et début de la programmation

En ce retour de vacances, nous nous retrouvons avec à notre disposition des lignes de codes permettant la programmation de la Raspberry Pi. Durant cette séance nous nous sommes donc fortement intéressé à ce code. Cependant, notre pince n’étant ni conçue, ni réalisée, ainsi que notre carte électronique qui n’est toujours pas soudée et en état de fonctionnement, nous nous sommes rendu compte que la programmation n’était pas une priorité pour le moment.


Le poste de soudure étant occupé, nous avons donc réfléchis ensemble sur la conception de la pince. Plusieurs paramètres étaient à prendre en compte :

  • Premièrement, quelle sera la forme de la pince ? Nous avons opté pour une forme circulaire de pince avec 2 mâchoires de chaque côté qui pourront s’ouvrir ou se fermer afin d’attraper et relâcher la balle.
  • Deuxièmement, comment la balle sera t’elle propulsée ? Nous avons regardé quelques modèles sur internet, ainsi que les pinces des années précédentes pour nous donner une petite idée du type de poussoir que nous allons utiliser. Nous avons également eu l’idée d’ajouter un second cerveau moteur qui va faire tourner un engrenage qui lui va contrôler un poussoir à ressort afin d’avoir plus de puissance au moment de la propulsion.
  • Troisièmement, comment fonctionnera la pince ? C’est à l’aide d’un cerveau moteur et d’engrenages que nous feront fonctionner les mâchoires de la pince. Cependant nous n’avons pas réfléchis au nombre et à la taille des engrenages que nous allons réaliser.


Séance 12 - 2 Mars 2017 - Soudure de la carte et élaboration de la pince sur sketchup

Durant cette séance, Quentin à téléchargé Sketchup qui est un logiciel de modélisation 3D gratuit grâce auquel il modélisera notre pince. Pour lui cette séance à donc été une découverte du logiciel. Il a essayé de se familiariser avec ce dernier et d’explorer les différentes possibilités qu’il offre en matière de conception.


Pendant ce temps, j’ai débuté la soudure des composants sur notre carte électronique. Étant la première fois que je soude une carte électronique j’ai eu dû mal à savoir par quoi commencer. Par ailleurs, je me suis rendu compte que certains plans de masses n’étaient pas connectés entre eux il va donc falloir percer un trou dans la carte et rajouter des fils de connexions. De plus, au niveau des connexions du TB6612FNG et du ATMEGA328P certaines pistes étant trop rapprochées, la séparation ne s’est pas faite lors de l’impression de la carte. J’ai donc dû faire les séparations manuellement à l’aide d’un cutter.

La soudure de l’ATMEGA328P, du TB6612FNG et de 2 capacités ont été réalisé lors de cette séance.

Séance 13 - 6 Mars 2017 - Soudure des composants et conception des mâchoires de la pince

Durant cette séance, Quentin à commencé la modélisation des mâchoires pour notre pince. Après plusieurs essais, il a réussi à réaliser des mâchoires circulaires, ainsi que les trous qui serviront de fixation pour ces dernières. Lors de la prochaine séance il devra rajouter deux petits emplacements sur les mâchoires qui serviront à fixer le poussoir.

Pour ma part cette séance à été consacré à la suite de la soudure. J’ai soudé le reste des capacités sur la carte électronique ainsi que deux résistances. Puis à l’aide du professeur j’ai soudé les broches qui serviront à connecter la Raspberry Pi. Il ne me reste donc plus qu’à souder les fils de connections, le Quartz et les broches pour la programmation du micro-contrôleur.

Séance 14 - 13 Mars 2017 - Soudure terminée

Durant cette séance, Quentin à continuer la conception des mâchoires de la pince sur Sketchup.

Pendant ce temps j’ai terminé la soudure de la carte électronique. J’ai soudé les broches qui serviront à la programmation du micro-controleur ainsi que le Quartz. Enfin j’ai soudé les 5 fils qui étaient sur le dessus de notre carte électronique. J’ai rencontré des difficultés lorsque j’ai dû dénuder les fils électriques. De plus, lors de certaines soudures, les fils se sont cassés du fait de leur petit diamètre, j’ai donc recommencé l’opérations à plusieurs reprises.

Séance 15 - 16 Mars 2017 - Programmation de la carte et conception du poussoir

Durant cette séance Quentin à continué de modéliser la pince sur Sketchup. Il a terminé les mâchoires de la pince, il va donc s’attaquer à la partie poussoir de notre pince qui servira à propulser la balle.

Pour cela nous nous sommes inspirés d’un modèle de poussoir déjà réalisé par un groupe de l’année précédente qui nous semblait assez simple au niveau de la conception et qui ne nécessitait pas de gros aménagements sur notre châssis comme par exemple l’ajout d’un second cerveau moteur qui servirait à contrôler la propulsion de la pince. En effet, nous n’avons pas opté pour cette solution car l’utilisation d’un second cerveau moteur engendrerais une programmation plus complexe pour notre carte électronique, l’aménagement d’un nouvel emplacement pour le cerveau moteur sur notre châssis et il aurait fallut une synchronisation parfaite entre le moment où le premier cerveau moteur ouvre les mâchoires de la pince et le second qui lui expulse la balle, ce qui est source d’erreur selon nous.


Pendant que Quentin continue la modélisation, j’ai alors essayé de tester notre carte électronique à l’aide d’un arduino uno.

J’ai tout d’abord observé le professeur manipuler l’arduino uno et la carte électronique d’un camarade. Après avoir mit le bootloader sur le micro-contrôleur, il a ensuite téléchargé le programme « Blind » qui sert à faire clignoter une LED sur le micro-contrôleur. Après quelques manipulations et branchements sur la breadboard, nous avons pu constater le fonctionnement de la carte électronique.

Pour ma part, j’ai téléchargé un programme sur l’arduino puis ensuite j’ai essayé de mettre le bootloader sur le micro-contrôleur mais cela sans succès. Durant la prochaine séance il faudra donc que je vérifie si le courant passe dans notre partie programmation et si il n’y pas de problème de connexion ou de soudure sur la carte à l’aide de l’ohmmètre.


Séance 16 - 20 Mars 2017 - Conception des engrenages et suite programmation de la carte

Durant cette séance Quentin à poursuivit la conception de notre pince. Pendant la séance précédente il a terminé de modéliser le poussoir qui propulsera la balle. Il a donc poursuivis la conception en modélisant les engrenages qui seront reliés au cerveau moteur et qui permettrons d’actionner cette dernière. De plus il en a profité pour peaufiner les derniers réglages sur les dimensions du poussoir. Les différents éléments constituant notre pince sont désormais modélisés, il ne nous reste plus qu’a réserver l’imprimante 3D au Fabricarium pour les imprimer.

De mon côté, suite aux problèmes rencontrés lors de la programmation de la carte électronique durant la séance précédente; j’ai vérifié toutes les connexions sur la carte à l’aide de l’ohmmètre et j’ai dû ressouder un fil électrique. J’ai donc ensuite, effectué la même procédure afin d’essayer à nouveau de programmer ma carte électronique mais cela sans succès. Nous avons donc cherché quel pourrait être le problème. Nous avons essayé de connecter le reset sur une breadbord en ajoutant une capacité de 10 mF mais le bootloader ne se fait toujours pas.

Lors de la prochaine séance il faudra donc déconnecter l’ATMEGA328P de la carte électronique et le tester sur une breadbord. Cela nous renseignera sur la nature du problème :

  • Si l’ATMEGA328P fonctionne sur la breadbord l’erreur vient de la carte électronique et des soudures.
  • Si l’ATMEGA328P ne fonctionne pas sur la breabord le composant est surement grillé, il faudra donc le remplacer.


Séance 17 - 27 Mars 2017 - Réglages châssis et pince, résolution de problème carte électronique

Comme nous allons bientôt imprimer un nouveau châssis, Quentin à vérifié les modifications apportées lors des séances précédentes. De plus, il vérifié le dessin des cales que nous allons ajouter à notre châssis pour les différents éléments tels que le moteur, la batterie de la Raspberry Pi ou le boitier de piles. Enfin, lors de la semaine précédente nous en avons profité pour commencer à imprimer notre pince, nous avons réussi à imprimer 2 engrenages. Il a donc vérifié les différentes pièces de constituant la pince pour continuer l'impression dans le courant de la semaine.


De mon côté, le combat contre la programmation de la carte électronique a encore été rude. J'ai d'abord testé mon ATMEGA328P sur la breadboard en faisant le bootloader et essayant de lui injecter le programme "Blink", mais cela sans succès. Nous avons donc décidé de tester le micro-contrôleur de l'Arduino sur la breadboard afin de déceler le problème, cela à encore été un échec. En fin de séance, nous avons vérifié toutes les connections et les différents composants, nous nous sommes rendu compte que le problème de la breadboard venait du Quartz qui était seulement de 8 Méga au lieu de 16. Nous avons donc réessayé avec un nouveau Quartz et nous avons réussi à mettre a faire le bootloader et mettre le programme "Blink" sur l'ATMEGA328P de la carte électronique. Des vérifications sont donc à faire au niveau de la carte électronique pour pouvoir programmer directement sur celle ci. Un solution alternative est envisageable, c'est à dire, programmer sur une breadboard mais à force d'enlever et de remettre l'ATMEGA328P celui ci risque de se casser, je vais donc devoir résoudre le problème sur la carte électronique lors de la prochaine séance et essayer de commencer la programmation de l'ATMEGA32P.