Green Lantern

Transcription

Green Lantern
Dossier Technique
Vierzon 2011
Green Lantern
Responsables IUT: GUERIN François – PELVILLAIN Hervé
ZHAO Min
PAILLER Louis
KODJONOU Kodjo
Green Lantern
1
IUT Le Havre - GEII
Sommaire
- I - Présentation générale ____________________________________ 3
- II - Carte alimentation ______________________________________ 4
- III - Carte microcontrôleur PIC 16F877A _______________________ 5
- IV – Carte variateur de vitesse ________________________________ 7
- V - Cartes télémètres _______________________________________10
- VI – Balise _______________________________________________ 11
- VII - Évitement d'obstacles __________________________________ 12
Green Lantern
2
IUT Le Havre - GEII
- I - Présentation générale
Introduction:
Nous sommes trois étudiants de première année du département Génie Electrique et Informatique
Industrielle de l'IUT du Havre. Nous étions volontaires pour ce projet dont le but était de concevoir
un robot qui évite des obstacles, tout en respectant un cahier des charges défini. La finalité de ce
projet étant pour nous, de participer à la coupe de France de Robotique des IUT à Vierzon. Ce projet
nous a permis de réaliser un travail d’équipe, d’acquérir une plus grande maîtrise du langage C sur
microcontrôleur (PIC16f877A) et de concevoir les parties matérielles (électronique et mécanique).
Structure générale du robot:
Notre robot est autonome, il est constitué de 5 cartes électroniques (carte mère + alimentation, carte
moteur, carte microcontrôleur, carte récepteur balise et carte télémètres) qui lui permettent de
prendre en compte les données extérieures au robot, tel que la présence d'un autre robot, d'un
obstacle, ou encore de se positionner en direction de la balise qui matérialise la position finale à
atteindre. De plus notre robot est soumis à certaines contraintes imposées par le cahier des charges
du concours, telle que la présence de deux voyants rouge et vert sur le robot, et des dimensions
imposées (hauteur 30cm, largeur 30cm et longueur 40cm). Le robot doit aussi avoir un tube portedrapeau, un jack de départ ainsi qu'un arrêt d'urgence. Le robot est alimenté par une batterie unique
12V 1.2Ah.
Green Lantern
3
IUT Le Havre - GEII
II - Carte alimentation
+12V pui
TRACO POWER
IN 12V OUT +/-15V
Emergen
1
Fusible
2
Interru
3
C1
100µF
C2
100µF
+15V
-15V
Batterie 12 V 1,2AH
Vdd +5V
7805
C4
C3
100µF 100µF
C5
10µF
L'alimentation du robot est assurée en autonomie par une battérie
de 12v. La tension délivrée par cette source est distribuée aux 4
compartiments cruciaux qui sont repérés comme suit :
-Du 12v non transformé fournit directement au moteur à courant continu.
-Du 12v transformé par un TRACO POWER (convertisseur DC/DC) en +/-15v
pour les circuits analogiques (amplificateurs opérationnels).
-Du 12v transformé en +5v à l'aide d'un semi-conducteur référencé VA78T05
-Le bouton d'arrêt d'urgence , l'interrupteur (qui commande la mise sous tension des
différentes cartes et le fusible ont pour mission d' interrompre l'alimentation du robot en cas de
défaut.
Green Lantern
4
IUT Le Havre - GEII
- III - Carte microcontrôleur PIC 16F877A
1.Les broches utilisées dans PIC16F877A
Entrées des Télémètres
à infrarouges
Sorties des signaux
PWM
Sorties des Leds
de Sens
Entrées des
détecteurs de
balise et de la
position finale
Sorties des Sens
de moteur
2.Les caractéristiques principales du PIC16F877A
« Peripheral Features » utilisées :
Green Lantern
5
IUT Le Havre - GEII
3.Les outils utilisés pour la programmation sur micro-processeur
Nous programmons notre microcontroleur 16f877 en language C (MPLAB HITECH C) et
nous télechargons le programme dans le composant avec le boitier ICD2
MPLAB
Le logiciel de MICROCHIP est MPLAB
IDE.
HI-TECH C
Le HI-TECH C est un système complet de développement pour le
langage C et le code Assembleur. Il intègre un compilateur C très
puissant, produisant du code assembleur, du macro-Assembleur
quand il est absolument nécessaire de programmer une seule
instruction à la fois, un débogueur pour exécuter et déboguer le
code en hardware, tout ceci rassemblé dans un flexible
environnement de programmation.
ICD 2
Le module MPLAB ICD 2 est un débogueur en temps réel et un
programmateur pour les Microcontrôleurs PIC. Utilisant la
technologie Microchip, les programmes peuvent être chargé dans
le PIC, puis exécuté en temps réel et examiné dans le détail grâce à
la fonction de déboguage de MPLAB.
Green Lantern
6
IUT Le Havre - GEII
- IV - Variation de vitesse
1.3- Schéma du circuit
1.1.Partie JACK :
Quand le JACK n’est pas retiré, les 74LS244s sont en mode ‘Unable’, soit NONEN = 0 ;
Donc, le signal PWM et le signal SENS ne peuvent pas commander les transistors IRF740 et
2N2222 .
1.2.Partie Arrêt d’Urgence :
Quand le bouton d’arrêt est appuyé, la batterie est isolée de la partie d’alimentation. Donc,
tout va s'arrêter .
1.3.Partie Inversion du Sens de Rotation (ST=0 et NONEN=1) :
Selon l'état de sens (1/0) le transistor 2N2222 est bloqué ou passant ce qui modifie l'état du
relais
Green Lantern
7
IUT Le Havre - GEII
1.4.Partie Variation de Vitesse
(ST=0 et NONEN=1) :
Le signal PWM est appliqué au transistor de puissance IRF740 par le biais d'un
optocoupleur HCPL3180.
1.Production du signal PWM par micro-processeur
2.1.Schéma de l'interface PWM intégré dans PIC16F877A
Le module TIMER2 va imposer la période du
signal PWM :
Le CCPRxL va modifier le rapport cyclique
du signal PWM :
(TM2 prescale value = 1 :1)
Timer2 module
2.2.Schéma pour la variation de vitesse
Signal PWM
Vert  passant
Rouge  bloqué
IRF740
Umoteur
Vitesse moteur Reliée à la partie mécanique du moteur et la valeur moyenne de Umoteur
Green Lantern
8
IUT Le Havre - GEII
- V - Carte Télémètres
5V
+V
5V
+V
R3
10k
+
ADI 1
+
R2
220k 40%
Télémètre infrarouge
ADI 2
R6
1k
PIC16F877A
R4
10k
R1
47k
D1
LED1
Les télémètres interviennent dans la détection d'obstacles .
Le principe de fonctionnement de sa carte est très simple. A la base ,
nous disposons d' un détecteur infra-rouge d'obstacle alimenté en +5v à partir de
l'alimentation. Les données reçues par le détecteur infra-rouge sont ensuite
transmises sous forme de tension pouvant aller de 0 à 3v (si l'onde infrarouge est réfléchie
par l'obstacle) à l' ADI 1 (cf. Carte Télémètre) qui n'est qu' un simple amplificateur noninverseur. L' ADI 1 amplifie ensuite le signal d' entrée à ses bornes et envoie à sa sortie le
signal Us1 à l' entrée de l' ADI 2 (cf. Carte Télémètre).
Le Gain d'amplification G de l'ADI 1 est compris entre : 1<G<5,68.
Us1 = G * Ue1
L' ADI 2 quant à lui fonctionne en comparateur à seuil.
En sortie de l' ADI 2, la tension Us2 ne peut prendre que 2 valeurs distinctes : 0 ou 5v.
*Si Us1<2,5v on a Us2=0 le microcontroleur détecte le niveau logique «0» la led
reste éteinte → Aucune détection d' obstacle dans ce cas.
*Sinon Us1>2,5v on a Us2=+5V le microcontroleur détecte le niveau logique
«1» la led est allumée → Il y a donc détection d' obstacle
Green Lantern
9
IUT Le Havre - GEII
- VI - Balise
La balise nous permet de nous diriger à travers le terrain de jeu, elle est composée de deux parties:
La partie émettrice, émet un signal lumineux codé sur 8 bits (MC145026). Cette partie est
alimenté en +12V via une prise située dans un coin de la piste.
La partie réceptrice conçue autour d'un circuit intégré (MC145027), est située sur le robot. Elle
possède des switchs, sont programmés pour recevoir seulement le code envoyé par la balise qui est
associée au robot
Green Lantern
10
IUT Le Havre - GEII
- VII - Programmation
1.Diagramme d’Etat
Etat TD » 1
0
Etat 1 » TD
Etat 1,2,TD,TG » 0
Etat 0 » 1
TD
1
TG
Priorité :
Orange > noir = violet
Etat 1 » 0
Etat 1 » TG
Etat 2 » 1
Etat TG » 1
2
1.1.Les Etats
oEtat 0 : Arriver à la position finale
oEtat 1 : Avancer tout droit
oEtat 2 : Chercher la balise
oEtat TD : Contourner l’obstacle par la droite
oEtat TG : Contourner l’obstacle par le gauche
1.2.Les Conditions
oCondition 0 » 1 : Détecter pas la position finale
oCondition 1 » 2 : Détecter pas la balise && Détecter pas les obstacles
oCondition 1 » TD : Détecter l’obstacle plutôt à gauche
oCondition 1 » TG : Détecter l’obstacle plutôt à droite
oCondition 2 » 1 : Détecter la balise
oCondition TD / TG » 1 : Les actions sont effectuées
oCondition 1,2,TD,TG » 0 : Détecter la position finale
Green Lantern
11
IUT Le Havre - GEII
2.Evitement d’obstacles
2.2.Zone de détection
Pos 5
Pour la détection des obstacles, on
utilise les télémètres TM2, TM3 et
TM4 (reliés aux µP sur RB1, RB2 et
RB4, on n’utilise RB3 car c’est une
voie de programmation en configurant
en entrée)
Pos 6
Pos 3
Pos 4
Les positions (de Pos 1 à Pos 6)
représentent les 6 possibilités de la
surface des obstacles rencontrées. The
nombres des télémètres utilisés
représentent la précision de la
détection, mais on trouve que si on
met plus de télémètre, l’évitement
d’obstacles peut prendre plus long de
temps.
Pos 2
Pos 1
2.3.
Stratégie 3TM ( simplifié pour l’homologation )
Les actions dans l’Etat TG ou TD :
Pos 1 -------------Tourner à droite
Pos 2 -------------Tourner à droite
Pos 3 -------------Tourner à droite
Pos 4 -------------Tourner à droite
Pos 5 -------------Tourner à droite
Pos 6 -------------Tourner à droite
Green Lantern
‘T’ + Avancer ‘A’
‘TT’ + Avancer ‘A’
‘TTT’ + Avancer ‘AA’
‘TTTT’ + Avancer ‘AA’
‘TT’ + Avancer ‘A’
‘T’ + Avancer ‘A’
12
Unité de temps :
T,TT,TTT ,TTTT représentent les
temps différents pour chaque
tourne.
A,AA représentent les temps
différents pour chaque avance.
IUT Le Havre - GEII
Green Lantern
13
IUT Le Havre - GEII