Robot optoguidé

Présentation

Vue éclatée de la partie opérative Photo de l'ensemble monté
vue inférieure avec carte de conversion d'énergie vue du robot et du bus de connexion

 

Objectif du projet

 L’ensemble des départements de GEII se sont regroupés pour mettre au point, à partir de l’année 2002, une plateforme de robot équipée de 2 moteurs à courant continu de 20W/12V. Le but est de faire suivre au robot une ligne au sol matérialisée par une ligne blanche de 19 mm de large sur le parcours suivant :   

figure 2 : Parcours officiel du concours robot

Concours

Le challenge inter IUT est réservé aux étudiants d'IUT GEII, sauf invitation du comité d'organisation. Chaque département GEII peut présenter au maximum 2 robots.

Les équipes comprennent au maximum 4 étudiants. Ce concours se veut avant tout un challenge entre étudiants : dans cet esprit, un enseignant peut accompagner une équipe, mais il ne participe en aucun cas aux modifications du robot, sous peine de disqualification.

Le robot sera construit à partir d'un kit imposé par le comité d'organisation, comprenant le châssis, les moteurs, les roues et la batterie (cf. annexe). Les parties liées à la motorisation ne doivent être ni modifiées, ni déplacées. La batterie peut être remplacée à l'identique.

Le robot doit être capable de suivre une piste le plus rapidement possible, de faire tomber une première barre située à la fin de la piste et de laisser en place une seconde barre, distante de 20 cm de la première.

Le concours se déroulera sous forme de passage simultané de deux robots.

Le robot doit évoluer sans aucune aide extérieure.

Le design est libre : il donnera lieu à un prix du design, indépendamment de la course.

 

ASPECTS TECHNIQUES

Le robot sera autonome en énergie. Il utilise obligatoirement la batterie fournie pour la partie motorisation. L'alimentation reste libre pour la partie commande.

Le robot doit suivre une piste blanche, matérialisée au sol par un ruban adhésif de 19 mm, sur un fond en moquette verte (voir référence en annexe) ; des croisements de piste sont possibles, le robot doit alors continuer tout droit.

Le rayon de courbure minimum de la piste est de 50 cm.

Un indicateur d‘intersection avec la piste du robot concurrent est matérialisé sous forme d'une portion de piste perpendiculaire de 50 cm de long et placé 50 cm avant l'intersection.

L'arrêt d'urgence fourni doit être opérationnel et il doit rester facilement accessible. Il doit impérativement couper la partie puissance.

Le jack de départ fourni doit être obligatoirement utilisé : au top départ, un étudiant de l'équipe le retire, permettant au robot de s'élancer.

Le robot doit avoir pour dimensions maximales : largeur : 30 cm, longueur : 30 cm et hauteur : 1 mètre.

Lors des épreuves, l'éclairage ambiant sera élevé (de l'ordre de 3000 lux maximum).

 

DEROULEMENT D'UNE EPREUVE

Deux départs sont possibles (voir dessin de la piste) :

départ 1 : Le nez du robot se trouve 20 cm en avant du début de piste ; le robot part en aveugle.

départ 2 : Le nez du robot est au-dessus du début de la piste, sur 10 cm.

Le choix du départ 1 donne un temps de bonus.

La programmation préalable du trajet sur la piste est interdite, sous peine de disqualification.

Le chronométrage commence au top départ et se termine lorsque la première barre touche le sol.

Le robot doit faire le tour de chacun des plots correspondant à son parcours, sans les toucher : un plot non contourné ou touché est éliminatoire.

En cas de risque de collision entre deux robots, la règle est la priorité à droite.

En cas de collision entre deux robots, les deux robots recommencent le parcours. Le robot n'ayant pas respecté la priorité à droite devra redémarrer avec un retard supplémentaire de 10 secondes sur le top départ ; si une nouvelle collision se produit, le temps de retard se cumule.

L'arrêt final du robot doit être automatique : un arrêt non automatique donne 1 temps de pénalité.

La deuxième barre tombée entraîne 1 temps de pénalité.

Les temps de pénalité sont de 10 secondes. Les temps de bonus sont de 10 secondes.

Un temps de parcours maximum sera fixé par le comité d'organisation.

Après le départ, aucun membre des équipes ne devra se trouver sur la piste.

retour en haut de page

 

 Caractéristiques de la partie opérative

Le robot est équipé de 2 moteurs à courant continu 12V dont les caractéristiques sont les suivantes :

MOTEUR

Tension nominale 12 Volts pouvant être alimentée

en 15 Volts

Courant en charge nominale 1,45 A

Courant max 11 A

Vitesse nominale 2640 Tr/mn à 12 Volts

3300 Tr/mn à 15 Volts

ENTRAINEMENT AU SOL

assuré par deux roues associées à un réducteur

de rapport 1/5

Diamètre des roues : Ø 52mm

Epaisseur du plateau : 5mm

Masse à vide : 2 kg

Charge utile : 2 kg

Vitesse linéaire max. :1,3m/s

Effort de poussée : 30 N ( »2 kg )

Voie : 230 mm

Figure 3 : Vue en coupe arrière et inférieures du robot

 

 figure 4 : Vues latérales et inférieures du robot

retour en haut de page

Représentation générale du projet

Organisation du projet

Chaque robot est confié à deux binômes d’étudiants. Le travail est décomposé en trois étapes décrites ci-après. Chacun de ces deux binômes travaillera de manière indépendante pour les étapes 1 et 2 (chacun réalisera sa programmation et ses propres essais) et se répartiront le travail pour l’étape 3 seulement.

En plus des notes prises au cours des séances sur le cahier de laboratoire, il sera demandé un rapport de fin d’année réalisé par chaque binôme concernant les étapes 1 et 2 ainsi que la partie spécifiquement traitée au cours de l’étape 3 (en indiquant le nom de l’autre binôme traitant l’autre partie de l’étape 3).

Le plan type de ce compte rendu vous est fourni en annexe et peut être modifié si vous le jugez utile avec toutefois la contrainte de traiter l’ensemble des thèmes que vous aurez abordés en séance.

 

Attention : malgré l’aspect ludique de ce projet, l’attention des étudiants est attirée sur le fait que chaque partie doit être traitée avec le plus grand professionnalisme et, notamment, la méthodologie de décomposition fonctionnelle vue dans le cadre du thermomètre, ainsi que lors de la rédaction des différentes fiches de mesures du projet qui figureront dans le rapport final.

 

Dans ce rapport, on attendra que vous proposiez les évolutions de ce projet pour le rendre plus attrayant sachant qu’il pourra être repris et développé en deuxième année avec, cette fois, l’utilisation d’un microprocesseur et d’algorithmes de calcul plus évolués pour assurer le guidage.

 

 Schéma bloc général du robot

Sur la base de la maquette décrite précédemment, certaines fonctions ont été dégagées et une partie de l’électronique a déjà été réalisée .

bullet

La partie convertisseur de puissance à découpage

bullet

Le bus de connexion des différents modules éléctronique

bullet

La mise en forme des capteurs de suivi de ligne et de vitesse des moteurs

 

Le projet peut être décomposé sous la forme suivante :

 

 

figure 5 : Représentation générale du projet

retour en haut de page

Capteur de guidage et mise en forme

   

 

Il s’agit d’optocoupleur de référence OBP704 (Constructeur OPTEK) qui émet un rayon focalisé et récupère la réflexion de ce rayon par un photo transistor que nous utiliserons pour repérer la position de la bande de guidage.

 

 Figure 6 : Description du capteur de suivi de la ligne de guidage

 

La mise en forme est confiée à un circuit TTL 74HCT14 (porte inverseuse trigger) et permet de disposer de 6 signaux TTL actifs au niveau 1, nommés capteur1... capteur6 présents sur le bus de connexion du robot. Le capteur 1 désigne le capteur extrême avant droit et le capteur 6 désigne le capteur avant extrême gauche. Référence capteurs : OPB704

 

 

Figure 7 : Montage des capteurs de position à l’avant du robot.

 

Le montage des capteurs de position permet de détecter la bande de guidage de manière exclusive pour les capteurs 1, 2, 5 et 6 (un seul capteur actif à la fois) et non exclusive pour les capteurs centraux (3 et 4). Cette disposition permettra d’optimiser la vitesse du robot lorsque celui-ci sera parfaitement centré par rapport à la bande de guidage.

Planning de l'étude de la partie guidage

Cette partie se décompose en deux aspects :

* étude analogique des capteurs de guidage et de leur mise en forme,

* réalisation VHDL du programme de guidage.

Etude analogique des capteurs

Analysez les capteurs optiques de suivi de la ligne (OPB704) d’après la documentation en annexe.

Proposez des solutions de mise en œuvre de ces capteurs (solution à base de trigger ou comparateur) et dimensionner les éléments électroniques de cette mise en œuvre.

Prendre en compte les variations possibles de la tension batterie lors du déroulement du parcours ainsi que de la dispersion des caractéristiques des capteurs.

 
 Essais

Relevez les signaux disponibles en sortie des capteurs et le résultat de la mise en forme à l’aide d’un circuit trigger.

 Réalisation du guidage en VHDL

 Figure 10 : Schéma bloc du guidage en VHDL

 A partir de l’information envoyée par les capteurs de guidage (capteur1... capteur6), proposez un algorithme de guidage relativement simple permettant un suivi de la trajectoire. On pourra dans un premier temps adopter un guidage essentiellement combinatoire mais permettant de piloter les deux moteurs avec une seule carte PLD équipée d’un altera 7064S.

Réfléchir à la gestion des deux capteurs centraux pour améliorer les performances en vitesse de pointe, ainsi qu’à une méthode de gestion de l’arrêt en fin de parcours. Les simulations et les fiches de mesures seront insérées dans le rapport final.

 

retour en haut de page

Interface de commande moteur

 La commande des deux moteurs se fait à partir de deux hacheurs 4 quadrants 12V/4A qui permettent de réaliser l’interface entre le module de guidage (TTL) et les deux moteurs. Cette interface fonctionne en découpage à une fréquence d’environ 3 kHz.

On devra fabriquer, avec le module de guidage, un signal de commande périodique de fréquence fixe et dont le rapport cyclique variera en fonction de la vitesse de rotation désirée pour chacun des deux moteurs. Cette interface fournit aussi une horloge logique TTL à une fréquence d’environ 100 kHz qui nous servira au séquencement du bloc de guidage.

 

 

Représentation symbolique

 

     

 Figure 8 : Schéma de principe du Hacheur commandant les moteurs

 

Principe de fonctionnement

Pour faire varier la vitesse du moteur, on doit faire varier la tension moyenne présente à ses bornes. Pour ce faire, on fait commuter les deux interrupteurs K1 et K2 (commandés de manière complémentaire) à une fréquence suffisamment élevée pour que le moteur ne voit que la valeur moyenne de cette tension.

Le signal de commande MLI1A permet de commander l’interrupteur K1 du hacheur du moteur AV droit :

bullet

Si MLI1A = 1, K1 est ON et K2 est OFF. Dans ce cas Umot = Ubat

bullet

Si MLI1A = 0,K1 est OFF et K2 est ON. Dans ce cas Umot = 0V.

 

On peut donc exprimer la valeur moyenne de Umot sur une période de MLI1A en considérant  comme le rapport cyclique du signal MLI1A.

Ce hacheur portant le numéro 1 permet de commander le moteur de droite

 <Umot>= . Ubat

 

Il existe un deuxième hacheur qui permet de commander le moteur 2 (moteur de gauche) via le signal MLI2A. Les règles de fonctionnement sont identiques à celles du hacheur numéro 1 commandant le moteur de droite.

 Le circuit d'interface utilisé est un L298 constituant un double hacheur 4 quadrant 2A/40V. Ces deux hacheurs quatre quadrants seront mis en parallèle pour obtenir un courant nominal de 4 A par moteur. Nous utiliserons donc un L298 par moteur. Une des deux commandes MLI (MLIB) sera maintenue à un niveau constant ('1' logique) car dans notre application nous n'utiliserons que le sens de rotation positif.

A noter sur cette carte , la présence de deux commande MLI compatible I2C (DS1050 de Dallas Semiconductor) permettant une évolution de la carte vers une commande par bus de terrain (2 ème année)

  

Planning de l'étude de l’Interface de puissance

 Principe de fonctionnement du hacheur

Etudiez le principe de fonctionnement du hacheur permettant de commander les deux moteurs. On analysera le circuit intégré L298 permettant de réaliser cette fonction et, en particulier, ses ressources d’entrées/sorties, ses limitations et notamment les règles de mise en œuvre de ce type de composant :

bullet

Découplage des alimentations

bullet

Limites en tension et courant et protection contre les surintensités

bullet

Limites en terme de fréquence de découpage.

On proposera un schéma électrique type pour cette partie.

 

Réalisation de la MLI en VHDL

 Figure 9 : Schéma bloc de la commande MLI

 

Il s’agit de synthétiser un bloc VHDL permettant de générer les deux signaux de commande (MLI1A et MLI2A) à partir de deux consignes constantes disponibles sous forme de deux vecteurs de bits ref_mli1A et ref_mli2A. On prévoira une entrée de synchronisation externe de cette mli (SYNCHRO) permettant de réinitialiser les deux sorties MLI1A et MLI2A.

Réalisez le programme VHDL et sa simulation en utilisant une méthode combinatoire et séquentielle de synthèse. Comparez les deux solutions en matière d’occupation du PLD.

 
Essais

A partir de la carte interrupteur, relevez la caractéristique vitesse de rotation moteur/ref_mli envoyée, le robot étant immobile sur cales, afin de conclure sur la linéarité de cette commande MLI. La vitesse pourra être déduite à partir des signaux vit1A (pour le moteur de droite) et vit2A (moteur de gauche) sachant que la fréquence obtenue est de 30Hz/tour/s

Une deuxième série d’essais, robot au sol, réglez quelques couples de valeurs de ref_mli pour les moteurs 1 et 2, relevez les trajectoires en courbe que peut fournir le robot et essayez d’établir un mise en équation de la trajectoire de celui-ci en fonction de ses références de tension.

retour en haut de page

Carte logique pgm

Cette carte destinée à être utilisée avec le bus d'alimentation du robot permet de disposer d'un réseau logique programmable évolué de 18 E/S format TTL et regroupées sur un connecteur de bord de carte 25 points.

Ce circuit logique PLD (Altera 7064SLC 44-10) est programmable sur site au moyen d'un câble dédié, c'est-à-dire qu'il n'est pas nécessaire de le retirer de son support.

Le circuit logique principal possède 64 macro cellules disposant chacune de 1 bascules, 18 entrées et 1 sorties logiques . La carte possède un circuit périphérique I2CÓ 8574 qui constitue un véritable port // 8 bits bidirectionnel relié au circuit logique programmable et dont l'adresse est configurable parmi 8 différentes (configuration au moyen d'un dip switch).

2 entrées logiques sont dupliquées sur des entrées spécifiques aux horloges internes du circuit principal(à l’aide de JP1 et JP2). Enfin, l'utilisateur possède deux boutons poussoirs pour activer la carte .La re-programmation peut se faire un millier de fois environ.

Dans notre application, elle regroupe la double commande MLI ainsi que le bloc de guidage. Le taux d'occupation du PLD tourne autour de 70% à 80%. Afin de pouvoir implanterd es algorithmes de commande plus évolués, une version à base de 70256S est en cours de réalisation. Elle permettra en outre de disposer de 25 E/S supplémentaires disponible sur le bus de connexion afin de faciliter l'échange de données entre les cartes.

bus de connexion et carte de test

Ce bus de connexion permet d'assurer la liaison entre six cartes dotées d'un connecteur de bord de carte (edge 50 points ou de connecteur HE10 50 points) en liaison directe de type point à point.

 Il s'inspire des bus de connexion des ordinateurs.

 On dispose ainsi des alimentations non stabilisées +12V issue de la batterie ainsi que de l'alimentations stabilisée +5V à partir d'une la tension batterie.

    

Enfin une série de 50 points test est accessible facilitant ainsi la mesure à l'aide d'une carte sonde amovible utilisant un des connecteurs HE10 50 points.

 

Sur ce bus, sont implantés une partie des circuits de mise en forme des capteurs de guidage(connecteur HE10 10 points)  ainsi que la mise en forme des capteurs de vitesse moteur (HE10 10 points). Enfin un troisième connecteur (HE10 14 points) permet la liaison avec le module de conversion d'énergie implanté sous le robot.

 

retour en haut de page

 

Téléchargements

bullet

Sujet robot opto-guidé version 2002:                sujrobote.pdf    (983kO)

bullet

Notice d'utilisation de la carte logique PGM       noticeLOG_alt1.pdf (144kO)

bullet

Logiciel de programmation VHDL maxplus2 V10  maxplus2

bullet

obtention de la licence maxplus2                      licence

bullet

Transparents de présentation du projet             transparents robot.pdf (522kO)

bullet

Fiche de mesure :                                           fiche_mesure.pdf / fichemesure.doc(word)

   

Module interface de puissance

schéma électrique de l'interface puissance

implantation et typons de l'interface puissance

liste des composants de l'interface puissance

Module bus de connexion

schéma électrique du bus de connexion

implantation et typons du bus de connexion

liste des composants du bus de connexion

Module capteur de guidage

schéma électrique des capteurs de guidage

implantation et typons des capteurs de guidage

liste des composants des capteurs de guidage

Module de point de test

schéma électrique du module de test

typons et implantation du module de test

liste des composants de horloge_v1

Module logique programmable ALTERA

schéma électrique de la carte PGM

typons et implantation de la carte PGM

liste des composants de la carte PGM

Module capteur de vitesse moteur

schéma électrique du module capteur vitesse

typons et implantation des capteurs de vitesse

liste des composants de gest_I2C

retour en haut de page

Annexes 

Proposition de plan du rapport final

bullet

Introduction
bullet

Présentation de la maquette et du concours officiel

bullet

Adaptation au département de Nice

bullet

Analyse fonctionnelle du projet
bullet

Schéma bloc fonctionnel général

bullet

Bloc interface de puissance
bullet

Etude analogique du circuit d’interface
bullet

Dimensionnement

bullet

Schéma électrique

bullet

Solution de commande en logique programmable
bullet

schéma bloc logique

bullet

Algorithme de fonctionnement

bullet

Simulations de fonctionnement

bullet

Comparaison des solutions

bullet

Essais et mesures
bullet

Caractéristique vitesse/commande

bullet

Mise en équation des trajectoires

bullet

Conclusion

bullet

Bloc guidage
bullet

Etude analogique du capteur 
bullet

Mise en œuvre et mise en forme

bullet

Schéma électrique

bullet

Solution de commande en logique programmable

bullet

Schéma bloc logique
bullet

Algorithme de fonctionnement

bullet

Simulations de fonctionnement

bullet

Essais et mesures

bullet

Conclusion

bullet

Evolution et amélioration de l’algorithme de guidage
bullet

Schéma bloc logique

bullet

Algorithme de fonctionnement

bullet

Simulations de fonctionnement

bullet

Essais

bullet

Conclusion générale

 

Affectation des broches sur le bus de connexion du robot

Datasheets    au format Acrobat  (*.pdf):

capteur de guidage:     OBP704

Interface de puissance: L298

MLI par bus I2C:            DS1050

Capteur de vitesse:     

retour en haut de page