CageBut2014-1

De Wiki de bureau d'études PeiP
Révision datée du 5 mars 2015 à 15:45 par Fsaiz (discussion | contributions) (Les programmes)

Introduction

Notre projet dans ce bureau d'étude IMA est de créer une cage de but capable d'interagir avec les autres robots ainsi qu'avec l'arbitre.

Notre cage devra, au terme du bureau d'étude, être en mesure de remplir plusieurs tâches.

Les robots doivent pouvoir localiser la cage, elle doit capturer la balle lorsqu'il y a un but, communiquer avec l'arbitre pour lui annoncer le but, et pour finir, elle doit renvoyer la balle au signal de celui-ci.

Le circuit électronique

Nous avons décider de commencer par la partie électronique, c'est à dire le circuit permettant aux robots de voir le but.

Nous avons construit le circuit suivant :

Circuit 1.jpg Circuit 2.jpg


Le circuit est composé de :

  • une LED verte qui permet de savoir si le circuit est alimenté et alumé (comme dans la première photo).
  • une arduino pour la programmation
  • quatre LED infrarouges
  • une LED rouge
  • un bouton

(Le reste est important pour le bon fonctionnement du circuit mais on ne le voit pas fonctionner lors de l'utilisation du programme)

Les programmes

Ensuite nous avons programmer la arduino avec différents programmes de plus en plus complexes pour atteindre le programme recherché.

Le programme final doit permettre à l'utilisateur de choisir le temps de clignotement des LED infrarouges grâce au bouton.

Nous nous sommes aider d'internet pour trouver les programmes simples pour mieux comprendre comment fonctionnent les programmes sur la arduino ainsi que pour apprendre la syntaxe des programmes.

Le premier programme que l'on a utilisé était très simple, faire clignoter une LED rouge avec une seconde d'intervalle. C'est à dire allumer et éteindre la LED. Avant de pouvoir faire clignoter la LED, il faut la mettre en sortie grâce à |||||||. Pour allumer et éteindre la LED on utilise la fonction DigitalWrite(X,Y). X est la patte de l'arduino à laquelle est connecté la LED, Y est l'état dans lequel est la LED : HIGH pour allumée et LOW pour éteinte. On met un délai entre l'allumage et l'extinction de la LED : Delay(Z), Z est le temps en miliseconde, Z=1000 dans ce programme.

Le programme s'écrit donc :

void loop{

|||||
DigitalWrite(2,HIGH);
Delay(1000);
DigitalWrite(2,LOW);
Delay(1000);

} { mpmp } Apprendre les fonctions et leurs utilités : if, while, milis, &&, void loop.

  • faire clignoter une LED
  • faire clignoter plusieurs LED infrarouge
  • allmuer une LED lorsque l'on appuie sur le bouton
  • faire clignoter les LED infrarouges lorsque l'on appuie sur le bouton
  • faire un compteur grâce au bouton
  • faire clignoter la LED rouge le temps souhaiter puis ensuite les LED infrarouges :> (programme : parfaitement parfait)


Problème : milis()

Le circuit imprimé

Dessin des différents composants et leurs connections:>>

Changements des dessins des composants pour d'autres plus adapter à nos composants, à leurs formes et à leurs tailles. Grossissements des pastilles autour des soudures.

Dessin du circuit imprimé:>>

Dessin représentant la position de chaque composant sur le circuit ainsi que des fils pour relier les composants. Grossissements des fils pour plus de facilité et fils avec angles à 45° pour une meilleur performance.

La fabrication

Nous avons choisi de commencer par créer la cage en 3D grâce au logiciel freeCAD :>>

Le système de la cage