Robot - Concours Vierzon GEII 2014 : Différence entre versions

De troyesGEII
Aller à : navigation, rechercher
(Assemblage Robot et programmation)
(Capteurs postion)
Ligne 95 : Ligne 95 :
  
 
====Capteurs postion====
 
====Capteurs postion====
:Les deux moteurs utilisés étant à courant continu, il nous est impossible de connaître l'angle de rotation, la position exacte du rotor contrairement à des moteurs pas à pas ou servomoteurs. C'est pour cette raison qu'il nous est nécessaire d'ajouter des détecteurs de rotation, afin de pouvoir éviter les obstacles au mieux.
+
:Les deux moteurs utilisés étant à courant continu, il nous est impossible de connaître l'angle de rotation, la position exacte du rotor contrairement à des moteurs pas à pas ou servomoteurs. C'est pour cette raison qu'il nous est nécessaire d'ajouter des détecteurs de rotation, de position afin de pouvoir éviter les obstacles au mieux,et arriver dans un court lap de temps à l'arrivée.
 
*Solutions proposées:
 
*Solutions proposées:
 
**Capteurs à fourches + roues codeuses sur moteurs(Principe d'une LED et d'un photo-transistor avec une route dentée qui coupe le faisceau de la LED).
 
**Capteurs à fourches + roues codeuses sur moteurs(Principe d'une LED et d'un photo-transistor avec une route dentée qui coupe le faisceau de la LED).
 
**Boussole.
 
**Boussole.
*Solution retenue.
+
*Solution retenue:
 +
Pour connaître l'angle de rotation des moteurs, nous utiliserons deux roues codeuses accompagnées de leur opto-coupleur, appelé aussi fourche optique. Elle consiste à émettre un faisceau lumineux grâce à une LED qui se trouve être coupé ou non par le disque en rotation. Chaque coupure est alors réceptionnée par un photo-transistor, qui à chaque impulsion d'onde lumineuse se bloque ou non, ce qui correspond à une impulsion TTL. De ce fait et notamment grâce à la division précise en degrés de la roue codeuse, il est très facile de se repérer dans l'espace.
 
<br />
 
<br />
  

Version du 29 octobre 2013 à 06:32

Introduction

Dans le cadre de notre projet d’Étude et Réalisation de deuxième année de GEII, et en vue du concours de robotique des IUT GEII se déroulant à Vierzon le 00/00/2014, nous avons pour objectif de réaliser un robot autonome. Autrement dit, concevoir un robot totalement indépendant devant partir d'une zone A vers une zone B tout en évitant les obstacles parsemés sur le terrain, avec pour mission de percé un ballon à l'arrivé.
Le site officiel du concours est disponible à l'adresse suivante : http://www.gesi.asso.fr/coupe_robotique_des_iut/
Une étude menée par DEMYTTENAERE Justin et PECORARO Arnaud, étudiants en 2ème année de GEII à l'Institut Universitaire de Troyes.


Synthèse Règlement

Le règlement officielle est disponible à l'adresse suivante : http://www.gesi.asso.fr/coupe_robotique_des_iut/images/2014/reglement_Vierzon_2014_V002.pdf

Règles générales

La compétition se déroulera à Vierzon et opposera 4 robots différents. L'objectif est de traverser le terrain pour rallier la base d'arrivée, située en diagonale du point de départ et ce dans un temps imparti de 90 secondes. Le terrain comprend de multiples obstacles à la position variable entre les différentes étapes de qualifications, que le robot doit éviter.
Le départ des robots se fait par le retrait d'un connecteur Jack et l'arrivée est matérialisée par l'arrêt complet dans la zone prévue à cette effet puis par l'explosion du ballon transporté.
Les robots sont totalement autonomes, et peuvent uniquement se guider à l'aide d'une balise présente dans la zone d'arrivée.
Un nombre de point est attribué en fonction des performances de chaque concurrent.
Les collisions sont à éviter entre les concurrents et les obstacles ne doivent pas être altérés ou déplacés.
La rencontre se composera d'une présentation orale, d'une phase d'homologation et d'une phase de qualification à l'issue de laquelle commenceront les phases d'élimination.


Caractéristiques du robot

Dimensions du robot
  • Le kit mécanique imposé par le comité d’organisation doit être obligatoirement utilisé :
    • 1 Châssis (support métallique en U),
    • 2 Moteurs DC,
    • 2 Roues,
    • 4 Engrenages,
    • 1 Batterie 12V 1.2Ah au plomb gélifié (pouvant être remplacé à l’identique).
  • La batterie est obligatoirement utilisée pour la partie motorisation. Alimentation totalement libre pour la partie commande, « ordinateur ».
  • Un connecteur jack 3.5 doit être prévu afin de pouvoir y accueillir sa prise qui au top départ sera déconnecté par un étudiant pour que le robot s’élance.
  • Design libre, mais doit respecter les dimensions imposées (coque plastique blanc non obligatoire):
    • Le gabarit du robot de doit pas excéder 30cm H*40cm L*30cm l,
    • Un tube vertical doit être équipé sur le robot et dont l’extrémité haute est située entre 30 et 31 cm du sol,
    • Le ballon mesurera au moins 10 cm de diamètre lorsqu’il sera donné. Il doit être accroché dans les 5 derniers centimètres du tube vertical et doit donc disposé d’un système d’accrochage.
  • Une balise peut être disposé dans le coin d’arrivé. Celle-ci ne doit pas excéder un cube de 20cm de côtés. Une prise de 240V est mise à disposition.
  • Les dispositifs actifs (ondes etc.) doivent être totalement inoffensifs et respecter la règlementation française.


Caractéristiques du terrain

Terrain 2014
  • Carré de dimension totale 9m*9m, la piste mesurant 8mx8m.
  • Revêtement moquette bleu.
  • Éclairage important, environ égale à 3000lux.
  • Obstacles :
    • Au nombre de 15, leur position évolue selon les parties. Disposition simpliste au départ puis difficulté d'évitement croissante,
    • Dimensions maximum : 15cm*20cm*40cm,
    • Toujours répartis de façon symétriques,
    • Leur couleur est unie, mais peut varier selon les obstacles.
  • Zones de départs et d'arrivées :
    • Quatre quarts de disque blanc,
    • Dimension : 70cm de rayon au minimum.
  • Quatre zones de balise 20cm*20cm disposées dans les coins externes d'arrivée.


Conception du Robot

Logigramme général

Logigramme général.jpg

Choix des composants du Robot

Carte Mère

Notre choix s'est porté vers la plateforme Arduino pour contrôler notre robot. Cette dernière étant l'équivalent d'un petit ordinateur capable de réaliser divers calculs, communiquer avec le monde extérieur... En effet, tout comme un PC, celle-ci est architecturée autour d'un processeur, ici le microcontrôleur Atmel ATmega. Mais est aussi accompagné de mémoire morte, de mémoire vive, de RAM, d'interfaces diverses de communication externes ainsi que de toute la circuiterie électronique pour le bon fonctionnement du tout. Elle offre une gestion des entrées/sorties relativement aisée et se programme facilement (langage proche du C) à l'aide d'un IDE simple, mais très efficace. De plus, il existe déjà de nombreuses bibliothèques et de programmes préconçus sur le net, notamment pour les écrans, moteurs, capteurs, l'ethernet, le wifi...
Pour ce projet, nous avons hésité entre l'Arduino UNO rev3 et l'Arduino Mega 2560 rev3.
Comparatif
Arduino Processeur Flash ko EEPROM ko SRAM ko Broches d'E/S numériques ...avec PWM Broches d'entrée analogique Courant E/S mA Dimensions mm Prix
ArduinoUno R3.jpg
UNO
ATmega328 32 1 2 14 6 6 40 68,6*53,3 ≈20,00€
ArduinoMega2560.jpg
Mega2560
ATmega2560 256 4 8 54 15 16 40 101,6*53,3 ≈36,00€
Au final, bien qu'elle dispose de moins d'entrées/sorties nous avons opté pour la carte UNO sachant qu'il nous est possible de multiplier les entrées sorties notamment avec des multiplexeurs de type 74HC595.



Alimentation

Partie Commande
  • Solutions proposées:
    • Batterie 12V 1.2Ah au plomb gélifié. Utiliser la même que celle pour la partie motorisation forcément présente (avantage moins de poids).
    • Ajouter une autre batterie.
  • Solution retenue.
Partie Motorisation
  • Solution retenue: Batterie 12V 1.2Ah au plomb gélifié (imposé).


Moteurs

Eh oui, il faut bien que notre robot puisse se mouvoir, pour cela nous utiliserons les 2 Moteurs DC imposés.
Ces moteurs à courant continue ont l'avantage de pouvoir êtres facilement raccordables à une batterie, facilement contrôlables en vitesse et en sens de rotation grâce à un petit dispositif supplémentaire.


Capteurs postion

Les deux moteurs utilisés étant à courant continu, il nous est impossible de connaître l'angle de rotation, la position exacte du rotor contrairement à des moteurs pas à pas ou servomoteurs. C'est pour cette raison qu'il nous est nécessaire d'ajouter des détecteurs de rotation, de position afin de pouvoir éviter les obstacles au mieux,et arriver dans un court lap de temps à l'arrivée.
  • Solutions proposées:
    • Capteurs à fourches + roues codeuses sur moteurs(Principe d'une LED et d'un photo-transistor avec une route dentée qui coupe le faisceau de la LED).
    • Boussole.
  • Solution retenue:

Pour connaître l'angle de rotation des moteurs, nous utiliserons deux roues codeuses accompagnées de leur opto-coupleur, appelé aussi fourche optique. Elle consiste à émettre un faisceau lumineux grâce à une LED qui se trouve être coupé ou non par le disque en rotation. Chaque coupure est alors réceptionnée par un photo-transistor, qui à chaque impulsion d'onde lumineuse se bloque ou non, ce qui correspond à une impulsion TTL. De ce fait et notamment grâce à la division précise en degrés de la roue codeuse, il est très facile de se repérer dans l'espace.

Commande moteurs

Afin de commander les deux moteurs DC, nous avons choisis d'utiliser le shield Ardumoto - Motor Driver Shield de chez Sparkfun, qui est basé sur le circuit L298 et deux ponts en H. Celle-ci a pour avantage de pouvoir piloter deux moteurs à courant continue, consommant jusqu'à un maximum de 2 ampères sous une tension pouvant atteindre 48 volts. Le sens des moteurs étant piloté par des signaux logiques et la vitesse étant régulé par le rapport cyclique des entrées PWM de l'arduino, ça en fait une carte de choix pour piloter une base robotique.

Capteur de proximités

Ces capteurs nous servirons à détecter la présence d'obstacles, d'autres robot, bords du terrain. Ces derniers étant en matériaux non conducteurs et non magnétiques, par conséquent les capteurs de type inductif et à effet Hall sont donc naturellement éliminés.

  • Solutions proposées:
Comparatif
Capteur infrarouge.jpg
Capteur infrarouges
Capteur ultrason.jpg
Capteur ultrasons
Capteur capacitif.jpg
Capteur capacitif
Capteur fin de course.jpg
Capteur fin de course
- Aucun contact physique avec l'obstacle. Av
- Sensible couleur et nature matériaux. Inc
- Sensible fortes sources lumineuses/autres infrarouges/poussières. Inc
- Cône d'environ 5°. Av/Inc
- Détection ≈ 1cm à 80cm. Av
- Conso: quelques milliampères et quelques volts. Av
- Peu cher. Av
- Aucun contact physique avec l'obstacle. Av
- Répercution ultrasons sur tout matériaux. Av
- Sensibilité pression, température, même fréquences utilisées. Inc
- Cône d'environ 30°. Av/Inc
- Détection ≈ 1cm à quelques mètres. Av
- Conso: quelques milliampères et quelques volts. Av
- Peu cher. Av
- Aucun contact physique avec l'obstacle. Av
- Détecter tout type d'objet. Av



- Détection ≈ 1cm à 3cm. Inc


- Cher. Inc
- Contact physique avec l'obstacle. Inc
- Détecter tout type d'objet. Av



- Détection 0cm. Inc
- Mise en œuvre simple (semblable interrupteur). Av
- Peu cher. Av


Capteur arrivée

Le robot devant être totalement arrêté et entièrement dans la zone d'arrivée pour pouvoir percer le ballon, il nous est donc nécessaire d'ajouter au minimum un capteur au dessous du robot qui détecte la zone blanche.
  • Solutions proposées:
    • Photocoupleur.
    • LED + photo-transistor.
  • Solution retenue.

Pour réaliser cette fonction, nous pensons utiliser un ou plusieurs photocoupleur(s) CNY70. Semblable à un optocoupleur, il est composé en interne d'une diode émettrice et d'un photo-transistor qui a été notamment utilisé en première année pour un robot suiveur de ligne. La LED émet une onde lumineuse qui une fois réfracter par la surface (rayon plus ou moins dissipé suivant la couleur de la surface) est capté par la base du photo-transistor et qui bloque donc plus ou moins le transistor. Permettant ainsi de connaître la couleur de la surface. Nous pensons le fixer à l'arrière du robot, afin que celui-ci soit totalement à l’intérieur de la zone blanche pour s'arrêter. Ou, le fixer à l'avant et ajouter un timer avant l’arrêt complet.
Datasheet_CNY70

Perçage Ballon

  • Solutions proposées:
    • Décharge d'un condensateur qui mit en court-circuit provoque une étincelle.
    • Levage d'une pointe grâce à un servomoteur.
  • Solution retenue:


Balise

  • Solutions proposées:
    • Envoie de code par IR.
    • Émissions ultrasons.
  • Solution retenue:


Assemblage Robot et programmation

Connecteur jack

Tests

Coût de revient

Justin pec (discussion) 18 octobre 2013 à 02:49 (CEST)