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