Binome2015-6
Le projet réalisé consiste à créer un terrain de foot sur lequel deux robots joueurs pourrons s'affronter. Un robot ramasseur devra récupérer le ballon après un but marqué et le remettre en jeu au centre du terrain.
Séance 1 (18 janvier 2016)
objetcifs: attribution et construction du robot.
Après la présentation du projet à réaliser et les instructions des professeurs, nous nous sommes tous regroupés afin de se repartir le boulot. Chaque groupe a choisit le robot qu'il voulait programmer. Nous avons choisit un robot ramasseur. Ensuite , nous avons du choisir le chassis de notre robot, un robot 2 ou 4 roues motrices. Nous avons pensé que 2 roues suffiraient pour notre robot ramasseur. De plus, il nous semblait qu'il serait plus simple de programmer deux moteurs plutôt que quatre. Nous avons ensuite commencé à monter le châssis (roues, moteurs, bloc d'alimentation, ...). Nous avons au préalable pris en photo les différentes pièces du chassis afin de connaître leurs dimensions et pouvoir les réutiliser ultérieurement si besoin, et cela sans être obligé de démonter le robot.
Nous avons ensuite soudé les fils de connections aux moteurs avant de fixer ces derniers au robot. Nous avons ainsi pu finir d'assembler les principaux composants du robot.
Cette étape terminé nous avons commencé des recherches sur internet notamment pour comprendre le fonctionnement des différents composant ainsi que de la programmation sur Arduino. En effet, c'est un Arduino Mega qui servira de "cerveau" à notre robot et qui coordonnera ses différentes actions. La partie que nous avons le plus de mal à appréhender étant la gestion des entrées/sorties pour communiquer avec les différents composant de notre robot (moteurs, capteurs couleurs, capteurs ultrason, ...). Nous ne sommes que novice en programmation (python et C) et n'avons étudié que des programmes et algorithmes qui fonctionnaient d'eux mêmes sans interagir avec autre chose que l'ordinateur. Ici la programmation est totalement dépendante des interactions avec les différents capteurs, moteurs, pince, ... Nous avons du mal à comprendre comment ces différents éléments seront intégrés et mis en action avec le code.
Séance 2 (21 janvier 2016)
objetcifs: Programmer un des composants du robot.
Lors de cette séance, notre but était de programmer le capteur ultrason.
Ce capteur permettra au robot de détecter un éventuel obstacle et de l'éviter. N'ayant quasi aucune notion de codage pour Arduino nous avons d'abord choisit de nous orienté vers une programmation à l'aide d'Ardublock qui est un environnement de programmation qui se veut plus simple et intuitif et fonctionne comme un puzzle. Cependant, nous ne comprenions pas la logique des différents "blocks" et nous sommes donc rabattu sur une programmation classique en langage C. Il a donc fallu faire des recherches internet. Nous nous sommes répartit les recherches, Nicolas cherchait comment programmer ce capteur ultrason et moi je m'occupais des recherches pour le brancher à l'Arduino. Les recherches ont abouti par l'obtention d'un programme tout fait pour faire fonctionner ce capteur. L'utilisation de ce programme nous à donc permis d'obtenir des valeurs de distances à l'obstacle plus ou moins précises. A défaut de pouvoir le modifier pour l'instant nous pouvons l'analyser pour comprendre comment il fonctionne et comment la communication Arduino<->Capteur est géré par le code. Cela nous permettra notamment de programmer les autres composants par nous même et modifier à terme celui-ci pour l'améliorer et le faire interagir avec les autres composants.
Séance 3 (25 janvier 2016)
objectifs: programmer un autre capteurs.
La semaine dernière, nous avions programmé le capteur ultrason.Il restait quelques modifications à apporter mais nous avons choisis de ne pas s'occuper de ça pour l'instant. En programmant le capteur ultrason nous nous étions rendu compte que le codage était notre point faible. C'est pourquoi nous avons choisis de commencer la séance par de la soudure. Nous avons soudés les différents capteurs et contrôleurs (capteur couleurs, contrôleur moteur..) afin de pouvoir les utiliser.
La fin de la séance a été consacrée à des recherches internet, pour programmer et brancher les capteurs couleurs. Mais nos recherches n'ont rien données.
séance 4 (28 janvier)
objectifs: Améliorer le capteur ultrason
Lors de cette séance nous voulions améliorer notre programme du capteur ultrason. Le problème est que nous l'avions coder sur un autre PC, et nous n'avons pas pu le récupérer. Il a fallu tout recommencer à zéro. Nous avons refait nos recherches sur les branchements et le code. Cela nous a pris toute la séance, nous n'avons pas été très productifs, mais à la fin, notre programme fonctionnait et les valeurs étaient plus précises que l'autre fois.
séance 5 (1er février)
objectifs: Insertion du capteur ultrason sur le robot.
Lors de la dernière séance, nous avions programmé le capteur ultrason sur une plaque à essai, donc au court de cette séance nous avons brancher le capteur ultrason sur le robot.
Ensuite, nous avons essayé de programmer le contrôleur des moteurs. A nouveau, nous nous sommes répartit les recherches comme l'autre fois. Pour ce contrôleur, nous l'avons directement fixé sur le robot pour le coder. A la fin de la séance, les roues du robot roulées correctement, nous avions réussis à le programmer.
séance 6 (4 février)
objectifs:Les capteurs couleurs.
Durant ces 2h de travail, notre but était de trouver et de comprendre comment brancher les capteurs couleurs sur le robot.
Nous avons débutés nos recherches sur internet, mais nous n'avons rien trouvé de très concluant. Nous avons donc demandé aux autres groupes utilisant les capteurs couleurs comment ils avaient fait. Le groupe de Simon et Maeva nous a donné le programme que le professeur leur avait donné. Nous l'avons modifier pour l'adapter à nos branchements. Après plusieurs tentatives, le programme à fonctionné.
Nous nous sommes ensuite penché sur le problème de la pince qui permettra à notre robot de ramasser la balle et de la déplacer.
séance 7 (8 février) Cette séance a été consacré à la réalisation du PCB sur le logiciel fritzing. Pendant que l'un travailler le PCB, l'autre réfléchissait avec un autre groupes sur la forme, la confection ainsi que sur la réalisation de la pince qui permettra au robot de récupérer la balle et de la déplacer. Avec l'autre groupe nous avons été voir au fabricariul, il y avait d'autre étudiant qui travaillaient sur le même type de pince que celle dont nous avions besoin. Ils nous ont proposé plusieurs prototypes ce qui nous a donné différentes idées sur la forme de notre pince.
séance 8 (11 février ) Installation des transistors infrarouge et commencement de la programmation. Nous avons également essayer d'optimiser l'emplacement des composants sur le robots. Nous avons réalisé un croquis pour la pince avec le groupe d'Erwan.
séance 9 (22 février) Lors de cette séance, nous avons améliorer notre PCB, afin de le rendre plus lisible et surtout plus fonctionnel.
séance 10 (25 février)
séance 11 (29 février) impression des pcb
séance 12 (3 mars) un des pcb n'etait pas correcte, branchement manquant. modification du pcb
séance 13 (7 mars)
modification Wiki
confection pince freecad
séance 14 (10 mars)
confection pince sur freecad
découpe du pcb des capteurs pour optimiser la place sur le robot
soudure des composantes sur pcb
Séance 15 (14 mars) test capteur couleur: positif branchements capteur ultrason pcb-arduino probleme de fonctionnement modification
Séance 16 (18 mars)
Ayant reçue le circuit imprimé modifié pour le SHIELD allant sur l'Arduino nous avons donc soudé les composants et connectiques dessus. Le problème que nous pensions régler en changeant le composant dans Fritzing (contrôleur moteur) n'a pas été résolu. Plutôt que de refaire une nouvelle fois le PCB nous avons préféré tordre les pattes de connections du contrôleur et le souder ainsi. Une fois ceci fait, nous avons soudé toutes les connectiques. Enfin nous avons voulu monter le SHIELD sur notre Arduino. Nous avons cependant rencontré un petit soucis. En effet le SHIELD est assez long et vient buter contre le port USB. De ce fait, le SHIELD ne s'emboîte pas totalement et nous espérons que cela n'engendrera pas de faux contact ou pas de contact du tout.
Séance 17 (21 mars)
Nous avons fini de souder les composants sur le SHIELD qui prendra place sur l'Arduino. Les PCB des capteurs a été fixé sur le robot et connecter au SHIELD. Une fois l'ensemble du montage réalisé nous avons connecté le tout à l'alimentation. Cependant ce dernier à fondu. Il est possible que ce soucis vienne du fait que les fils de connections étaient trop proches et que la chaleur qu'ils dégagent les aie fait fondre. En effet, en démontant le boîtier il s'est avéré que les fils avaient fondus.
Séance 18 (24 mars)
Objectifs: recherche du problème causant la surchauffe du boîtier à piles.
N'ayant pas de créneau de cours ce jeudi, nous sommes venus travailler en autonomie la journée afin de régler les problémes rencontrés lors de la dernière séance. pendant que Nicolas essayait de résoudre le problème, de mon côté je suis allée récupérée les pièces que j'avais imprimées en 3D. Nous avions besoin d'un support pour fixer nos phototransistors et le cerveau-moteur. Le résultat obtenu ne fut pas satisfaisant.
En effet, nous pouvons voir que les bords censés caler le cerveau moteur ne sont pas assez haut,et que la fente sur les supports des transistors n'est pas assez large. le soir même nous avons donc lancé une nouvelle impression après avoir modifié les fichiers. Pendant ce temps, Nicolas à fait part au prof de la surchauffe du boîtier. Ils ont essayés de trouver le problème. Nous nous sommes rendu compte,grâce au multimètre, qu'il resté du cuivre dans les circuits du PCB, ce qui a provoqué des courts-circuits. La question était, est- ce que nous réimprimons un nouveau PCB sans la masse au niveau des connection ? ou est-ce que nous grattons pour retirer le surplus de cuivre? le prof nous a dit que nous pouvons exceptionnellement réimprimer le pcb pour gagner du temps. Nicolas l'a donc remodifier et nous l'avons envoyé pour l'impression.
séance 19 (29 mars)
Objectifs: Souder sur le nouveau PCB
Nous sommes revenus ce mardi pour travailler de nouveau en autonomie. En arrivant les PCB n'étaient pas là. Nicolas a donc commencé par souder les phototransistors sur les petits PCB prévus à cet effet.
Pendant ce temps, j'ai récupéré les supports que nous avions réimprimés pour les tester.