Vous êtes sur la page 1sur 35

Projet d'tude et ralisation

Robot suiveur de ligne

LALLEMAND VIDAL 2nd anne Groupe K3b

Jrmy Mathieu Professeur responsable :T LEQUEU

ERGE3 Robot suiveur de ligne

Sommaire
Introduction...................................................................................................................................4 Cahier des charges.........................................................................................................................5 1. Prsentation gnrale du projet................................................................................................6 1.1. Le robot................................................................................................................................6 1.2. Le terrain..............................................................................................................................6 1.3. Planning de rpartition des tches effectues.......................................................................7 2. La mcanique.............................................................................................................................8 2.1. Le chssis.............................................................................................................................8 2.1.1. Le haut du robot...........................................................................................................8 2.1.2. Le dessous du robot......................................................................................................8 2.2. Le bloc moteur.....................................................................................................................8 1. L'lectronique.............................................................................................................................9 1.1. Prsentation des composants utiliss...................................................................................9 1.1.1. ATmega 8535.............................................................................................................10 1.1.2. Capteur CNY70..........................................................................................................11 1.1.3. Le L298......................................................................................................................12 1.1.4. Rgulateur LM2574/5 Volts.......................................................................................13 1.1.5. Rgulateur LM2575/5 Volts.......................................................................................14 1.1.6. L'cran LCD...............................................................................................................15 1.1.7. Batterie 9,6 Volts 1,2 Ah..........................................................................................16 1.1.8. Charger la batterie.....................................................................................................16 1.2. Carte mre..........................................................................................................................16 1.2.1. L'ATmega8535...........................................................................................................17 1.2.2. Le hacheur L298........................................................................................................18 1.2.3. Le rgulateur LM2574...............................................................................................19 1.2.4. Le rgulateur LM2575...............................................................................................20 1.3. Cartes capteurs...................................................................................................................20 2. La programmation...................................................................................................................21 2.1. Dfinitions des variables....................................................................................................21 2.1. Les paramtres de configuration........................................................................................21 2.2. La reconnaissance de ligne................................................................................................22

Page 2/35

ERGE3 Robot suiveur de ligne 2.3. La gestion des cas possibles...............................................................................................25 3. Tests...........................................................................................................................................27 3.1. Carte mre..........................................................................................................................27 3.2. Transfert et essais programme............................................................................................28 3.3. Carte capteurs.....................................................................................................................29 3.4. Tests du robot.....................................................................................................................29 Conclusion....................................................................................................................................30 Bibliographie................................................................................................................................31 Table des illustrations..................................................................................................................32 Annexes.........................................................................................................................................33

Page 3/35

ERGE3 Robot suiveur de ligne

Introduction
Durant la seconde anne de notre formation nous sommes amen raliser un projet d'tudes et ralisation. Les sujets proposs par l'enseignant sont varis et complets .Dans notre cas nous avons prfr choisir notre propre sujet .C'est dire un robot suiveur de ligne de petite taille, comme son nom l'indique il doit pouvoir suivre un parcourt en tout autonomie . Nous avons comme contrainte une dure de 9 semaines et un challenge robotique prparer ,nous devons galement faire attention notre budget et respecter les consignes du cahier des charges. Ce projet sera entirement ralis par nos soins de la partie lectronique la programmation en allant jusqu' la conception. Pour la partie mcanique nous somme imposs par le cahier des charges et devons respecter les dimensions ainsi qu'utiliser le chssis rglement par le challenge.

Page 4/35

ERGE3 Robot suiveur de ligne

Cahier des charges

Robot Suiveur de lignes: Challenge Robotique de Vierzon Contrainte lies au robot: dimension: Largeur: 30cm Longueur: 40cm Hauteur: 50cm Autonomie durant tout le parcours Kit impos (Support mtallique en U, moteurs, roues, engrenages, batterie) Arrt d'urgence obligatoire Prise jack pour le dmarrage Consigne respecter durant le parcours: Suivre la ligne de couleur blanche et de 19mm de largeur sur un fond bleue (moquette) Respect des diffrentes consignes tout au long du parcourt : Priorits droite ( l'aide de barre blanche places 45cm droite avant la priorit) Raccourci ( l'aide de barre blanche places 30cm gauche avant le raccourci) Stop figure ( l'aide de deux barres blanches places droite et espaces de 20mm l'une de l'autre) Perage des diffrents ballons placs tout au long du parcourt A l'arrive il faut faire tomber la premire poutrelle en bois et que le robot s'arrte avant la deuxime, elle deux situes a 8cm du sol

Page 5/35

ERGE3 Robot suiveur de ligne

1 Prsentation gnrale du projet


Dans ce chapitre nous expliquerons d'une manire simple le fonctionnement de notre robot .

1.1 Le robot
Pour vous donner une ide de la forme de notre robot nous avons prie plusieurs photo (annexe 1). Ce robot doit respecter les dimensions donnes dans le cahier des charges soit une hauteur maximal de 50 cm une largeur maximal de 30 cm et une longueur maximal de 40 cm. Il doit galement tre autonome durant tous le parcours pour cela il sera aliment par des batteries rechargeables.

1.2 Le terrain
Le robot se dplacera sur une moquette bleu et devra suivre une ligne blanche d'une largeur de 19 mm. Il pourra ensuite effectuer plusieurs figure et respecter les consignes indiques dans le cahier des charges pour marquer des points et ainsi ce qualifier pour les tours suivant. Cette piste sera tendu sur environ 10m.

Page 6/35

ERGE3 Robot suiveur de ligne

1.3 Planning de rpartition des tches effectues

VIDAL Mathieu LALLEMAND Jrmy

S8
Essais thorique

S9 S10 S11 S12 S13 S14 S15 S16 S17 S18 S19 S20 S21 S22 S23 S24 O O O O O O O O O O O O O O O O O O Planning prvisionnel Planning Rel Coupe robotique O O O O

Orcad

Typon

Test

Maintenance

Soudure

Essais pratiques

Programmation

Oral

Page 7/35

ERGE3 Robot suiveur de ligne

2 La mcanique
La partie mcanique est une des parties qui nous a prit le moins de temps puisque le chssis ainsi que la mcanique(moteur,roue,batterie),nous a t fournie par les organisateurs du challenge.

2.1 Le chssis
Le chssis est en plastique de couleur blanche, les roues sont galement en plastiques et positionnes au centre du robot afin quilibrer celui ci, on nous a fournie des pions en plastiques positionns l'avant ainsi qu' l'arrire. 2.1.1 Le haut du robot C'est sur ce support que viendra la carte mre et l'interrupteur lectrique gnral qui ont t ajout plus tard, pour pouvoir commander l'alimentation du robot on y ajoutera galement l'alimentation (batterie). 2.1.2 Le dessous du robot Cette partie est celle qui supportera la plupart du poids du robot, on y fixera le bloc moteur, ainsi que la carte capteurs. Pour fixer la carte capteurs nous avons utilis des petites querres que nous avons du recouper pour tre le plus prt possible du sol.

2.2 Le bloc moteur


Nos moteurs fonctionnes en 5 volts au maximal de leurs puissance, aprs quelques tests nous avons remarqu que le moteur avait besoin de 1 A en charge pour fonctionner. Donc pour avoir une vitesse max nous appliquons une tension de 5V et pour arrter les moteurs une tension de 0V. Principales caractristiques :

Tension d'alimentation nominale: 5 V Courant d'alimentation maximal : 1 A

5 Volts 100 %
0 Volts 0 % Page 8/35

ERGE3 Robot suiveur de ligne

Illustration 1: Directions possibles en fonctions des tensions moteurs

Nous aurons c'est 3 cas possible aller tout droit tourner a gauche ou tourner a droite Nous ferons en sorte que le robot aille le plus vite possible en ligne droite, il faudra donc alimenter les 2 moteurs au maximum (5 Volts), et lorsque l'on tournera, l'un des 2 moteurs restera constamment au maximum et nous rglerons la vitesse de l'autre moteur afin de faire varier la vitesse en fonction du degrs du virage.

1 L'lectronique
Probablement la partie ou nous avons pass le plus de temps, c'est galement celle ou les recherches ont t les plus longues ainsi que les tests pralables, et c'est aussi malheureusement la partie qui nous a caus le plus de soucies et d'erreurs.

1.1 Prsentation des composants utiliss


Pour la ralisation du projet, de nombreux composants ont t indispensables, tel que le LM2575 pour l'alimentation,ainsi que le ,,,, pour notre seconde alimentation ncessaire pour alimenter les moteurs en courant (1A). le L298 nous permet de grer les moteur, bien sur l'ATmega8535 qui gre les divers informations du montage, les capteurs qui dtecte au sol la direction du parcours, et enfin divers rsistances capacits et inductances et autre diodes utile au bon fonctionnement du montage. Page 9/35

ERGE3 Robot suiveur de ligne 1.1.1 ATmega 8535 L'ATmega8535 est le cur de notre carte ainsi que ce qui permet le projet d'tre viable et fonctionnel en effet c'est ce qui permet de recevoir traiter et renvoyer les informations ncessaire au bon fonctionnement du robot. Illustration 2: L'ATmega 8535

Principales caractristiques :

Vitesse de cadence jusqu' 16 MHz Tension d'alimentation de 4.5 V 5.5 V Courant d'alimentation : 10mA 40 PINs 32 entres/sorties 8 canaux analogiques Convertisseur CAN 8 bits (0 1023 = 1024 possibilits) 2 sorties PWM (MLI) Courant maximal par entres/sorties : 40 mA 8 Ko de mmoire programme EEPROM de 512 Octets SRAM de 512 Octets 3 timers (2 de 8bits, 1 de 16 bits) Programmation langage C

Page 10/35

ERGE3 Robot suiveur de ligne 1.1.2 Capteur CNY70

Illustration 3: Capteur CNY70 Le CNY70 est un capteur infrarouge sensible la couleur, en effet il est au niveau logique haut(5V) lorsqu'il peroit une ligne blanche et au niveau bas pour du noir. Le niveau de tension varie selon la surface et la couleur utilise. En effet dans notre cas le fond bleue ne nous donnera pas une tension tout a fait gale a 0V, c'est pourquoi nous avons utilis des tension de seuil. Le capteur doit tre, en outre, plac trs proche du sol pour capter de manire optimal. Le principe de fonctionnement d'un CNY70 est une mission et rception infrarouge. En voici le schma:

Illustration 4: Schma de principe du CNY70

Principales caractristiques : metteur


Tension d'alimentation nominale : 1.25 V Tension d'alimentation maximale : 1,6 V Page 11/35

ERGE3 Robot suiveur de ligne Courant d'alimentation : 50 mA Tension de sortie nominale : 5 V Tension de sortie maximale : 5 V Courant de sortie nominal : 100A Courant de sortie maximum (thorique) : 1mA

Dtecteur

1.1.3 Le L298

Illustration 5: Hacheur L298 L'ATmega8535 dlivre une tension de 40mA par sortie (voir prcdemment1), d'o le choix du l298 pour pouvoir alimenter les 2 moteurs cependant celui-ci consomme beaucoup de courant (1A en fonctionnement normal et 2A en charge maximal) Ce qui nous oblige a rajouter une alimentation qui fournit suffisamment de courant, mais permet d'empcher les perturbations sur le micro-contrleur, en effet ce dernier n'influera que sur la tension.

Illustration 6: Schma interne du L298

1 Voir chapitre 3.1.1 - ATmega 8535

Page 12/35

ERGE3 Robot suiveur de ligne Nous avons choisi de brancher le moteur droit du robot sur les pattes 13 et 14 du composant et le moteur gauche sur les pattes 2 et 3. Rsa et Rsb sont des rsistances de limitation de courant dans les moteurs en effet pour viter les sur-intensits il tait ncessaire de les calculer: On veut limiter le courant 1A et on a 5V en sortie de la patte 1 et 15 donc R=U/I=5/1=5 ohms Nous avons ensuite choisi de mettre des diodes entre les moteurs et le composant en lui mme pour viter court circuit lors d'un changement de rotation du moteur, en effet lors de cette squence les transistors ce retrouve, pendant un court temps, en commutation simultanment, cela peut donc crer un court-circuit qui serait fatal pour le composant, schma du cblage des diode sur un moteur:

Illustration 7: schma de cblage des diodes

Principales caractristiques :

Tension d'alimentation du circuit logique : 5 V Tension d'alimentation du circuit puissance : 0 V 48 V (nous serons 5 V) Tension minimale de sensibilit MLI : 2.3 V Courant maximal du circuit puissance : 3A

Page 13/35

ERGE3 Robot suiveur de ligne 1.1.4 Rgulateur LM2574/5 Volts L'utilit du rgulateur choisi ici est de pouvoir transformer une tension d'entre allant jusqu' 45V en 5V en sortie, tout en dlivrant un courant de 500mA.Dans notre cas, nous devons transformer la tension de notre batterie qui est de 12V. Se sera donc l'alimentation de la quasi-totalit de notre carte, savoir, l'ATmega8535, nos capteur ainsi que le L298 Grce a lui nous obtenons donc une tension stabilise de 5V quelque soit le courant demand en sortie. L'avantage non ngligeable du composant, est qu'il est de petite taille donc facilit le routage, et surtout qu'il ne chauffe pas.

Illustration 8: LM2574

Illustration 9: Schma de branchement du LM2574 On observe toute fois un inconvnient de taille, c'est qu'il doit tre entour de pas mal de composant, donc le routage s'en trouve plus difficile tant donn les contrainte de taille de la carte. Principales caractristiques :

Tension maximale d'entre : 45 V Tension de sortie : 5 V Courant maximal de sortie : 500 mA

Page 14/35

ERGE3 Robot suiveur de ligne 1.1.5 Rgulateur LM2575/5 Volts Le choix de ce rgulateur c'est fait aprs les tests tardif effectu concernant la consommation des moteurs en charge, en effet ce test nous a permis de nous rendre compte que notre premire alimentation ne suffirait pas aux moteurs. Ceux-ci consomme donc 1 A en charge (c'est dire le robot roulant normalement avec le poids de la batterie et des divers carte et moteurs). Il a donc fallu rajouter le LM2575 tant capable de fournir un courant suprieure au LM2574, ce premier nous permet d'avoir le ncessaire, a savoir, 1A.

Illustration 10: Schma de branchement du LM2575

Principales caractristiques :

Tension maximale d'entre : 18 V Tension de sortie : 5 V Courant maximal de sortie : 1 A

1.1.6 L'cran LCD Nous avons dcid d'ajouter un cran LCD a notre projet car, bien que pas utile au bon fonctionnement du robot, il nous permettra de facilit le dbeugage de celui-ci en cas de problme. En effet nous pourrons y afficher diffrentes valeur de tension sur les endroits souhaits.

Illustration 11: L'cran LCD Page 15/35

ERGE3 Robot suiveur de ligne 1.1.7 Batterie 9,6 Volts 1,2 Ah Pour rendre le robot autonome il faut bien entendu une batterie, celle de notre projet nous a t impose par les organisateurs du concours de vierzon.

Illustration 12: Batterie 12 Volts 1,2 Ah

Cette batterie a l'avantage de fournir la puissance ncessaire au besoin de notre carte et d'avoir l'autonomie adquate pour la dure du parcours, cependant elle est encombrante et pesante. Nous disposons par ailleurs d'un logement pour l'y mettre et le poids est embtant car cela fait consommer plus, mais la batterie suffit fournir ce qu'il faut. 1.1.8 Charger la batterie Pour charger la batterie le principe est simple, nous ne disposons pas de chargeur pour le concours il va donc falloir ce contenter d'une alimentation rgle sur 13,5V et limiter le courant 1A.

1.2 Carte mre


Ce chapitre est ddi a notre carte principal, celle qui fait fonctionner la totalit de notre robot puisqu'elle comprend notre Atmega8535 cur de notre projet, mais nous ne traiterons que de la partie lectronique, la programmation sera aborde plus tard. Nous avons du reprendre la conception de cette carte cause de diffrents problmes rencontrs au cour de notre premire ralisation, en effet le test tardif de la consommation des moteurs est l'origine de cette nouvelle carte. Nous avons en outre ajout une entre supplmentaire sur l'ATmega8535 pour un capteur supplmentaire destin a facilit la ralisation d'un obstacle au niveau du parcours. Enfin nous avions nglig les rsistances de limitation de courant sur le L298, cette deuxime carte nous a donc permis de rgl ces diffrents problmes. La ralisation des 2 cartes c'est faites sur les logiciels Capture puis Orcad spcialement destin la ralisation de schma de Page 16/35

ERGE3 Robot suiveur de ligne carte(Capture) et au routage de celle-ci (Orcad). En annexe n , vous pourrez trouver le routage ainsi que le schma complet de la carte dont nous allons aborder les diffrentes parties ci-aprs. 1.2.1 L'ATmega8535 Schma Orcad partie ATmega8535 Le schma de base de l'ATmega8535 est compos d'un connecteur de programmation avec des prises normaliss pour viter toutes inversions, c'est une prise de typeHE10 - 10 broches. Nous avons plac une LED en srie avec une rsistance qui crer une chute de tension aux bornes de la LED, c'est elle qui fera office de tmoin de programmation lors des transfert de programmes depuis l'ordinateur. Le calcul de la rsistance est le suivant:

Illustration 13: Calcul de rsistance R = (U - Uled) / I avec I = 10 mA, courant absorb par la LED Uled = 2 Volts, chute de tension aux bornes de le LED U = 5 Volts Application Numrique = R= (5-2) / 10.10-3 R = 300 Ce calcul reste valable pour la LED plac en sortie de notre LM2575. Plac entre les pattes 12 et 13, Le quartz de 16 Mhz2 complt de 2 condensateurs de 22 pF de valeur imposs par le quartz lui mme, sert cadencer l'ATmega8535. Pour rcuprer les signaux envoys depuis les capteurs il est indispensable de les relier au micro-contrleur, elles seront fixes de la patte ADC0 la patte ADC5 (6 capteurs) via une prise Molex 8 broches (JP3) nous devrons ensuite les signaux obtenu devront tre converti en valeur numrique a l'aide des CAN (convertisseur analogiquenumrique) prsent dans le CPLD. Cette conversion sera faite ultrieurement. Pour effectuer la conversion prcdemment voqu il sera donc ncessaire de fix AVCC ainsi que AREF a 5V.
2 Frquence maximale supporte par l'ATmega

Page 17/35

ERGE3 Robot suiveur de ligne Les commandes des deux moteurs du robot serons de nature MLI3, l'ATmega ne comportant que 2 broches pour ses sorties MLI, nous seront oblig d'utiliser ces fonctions sans les changer de broches. Ce qui ne devrait pas nous poser de problme. Nous avons plac un condensateur de dcouplage sur l'alimentation de notre Atmega8535 celui-ci sert a protger ce dernier contre les pics d'intensits. 1.2.2 Le hacheur L298 Schma Orcad partie Hacheur Ce hacheur tant command en signaux MLI, nous avons raccord directement les sorties MLI du micro-contrleur sur les bornes 5 et 12 du hacheur. La ralisation du cblage c'est effectu partir de la documentation constructeur prise sur internet. Ainsi nous pouvons voir 2 condensateur de dcouplage C8 et C9 plac entre le +5V et la masse, nous disposons de 2 condensateur car un sert l'alimentation de composant et l'autre pour les moteurs. Visible galement, les 2 rsistances R5 et R6 servent a limiter le courant dbit par le L298. En voici le calcul: Nous avons 5V sur les pattes 1 et 15 et nous avons dcid de limiter le courant 1A d'o R=U/I R=5/1=5ohms Nous avons dcid de mettre des diodes de protection au niveau des moteurs, celleci seront routes sur la carte directement pour empcher les court-circuits en cas d'inversion de sens des moteurs. Nous avons fait le choix de les souder sur des pastilles avec leur pattes relies a la masse et au +5V en l'air pour faciliter le routage tant donn que 4 sont relies ensemble la masse et 4 autres au +5V donc nous avons les 4 pattes en l'aire a une 5 relie directement a la masse ou au +5V. Comme pour les capteurs les moteur sont reli a une prise Molex situe sur la carte de manire a pouvoir les dbrancher plus facilement en cas de besoin cette prise est constitue de 4 broches (JP4 moteurs) Nous avons galement choisie de torsader les fils reliant les moteurs la carte afin d'viter au maximum toutes perturbations.

Illustration 14: Torsader les fils

3 Modulation Largeur d'Impultions (PWM en anglais pour Pulses Width Modulation)

Page 18/35

ERGE3 Robot suiveur de ligne 1.2.3 Le rgulateur LM2574 Schma Orcad LM2574 C'est la partie de notre montage qui alimente toute la carte en 5V. Nous avons donc apport un grand soin quant la ralisation du routage des divers composants l'entourant pour assur son bon fonctionnement. Le schma nous est donn par la document constructeur (voir en annexe). Grce celui-ci nous pouvons raliser sans soucie notre alimentation 5V stabilise. Directement en entre de la carte, en sortie, donc, du connecteur reliant la batterie la carte on observe une diode en srie avec celle-ci qui permet de protger l'ensemble de la carte en cas d'un mouvais branchement (inversion de sens au niveau du branchement du connecteur de la batterie).

Illustration 15: Connecteur 2 broches

Comme on peut le voir ci-dessus le connecteur dispose d'un dtrompeur qui rend impossible l'erreur d'inversion de sens, cependant lors du cablage nous pouvons par inattention faire l'erreur d'inverser la masse avec le +12V. 1.2.4 Le rgulateur LM2575 Schma Orcad LM2575 Comme dit prcdemment le rgulateur LM2575 alimente les moteurs du fait qu'il fournit assez de courant. Le schma de cblage n'est pas beaucoup plus simple que pour le LM2574 tant donn que nous avons ajout un potentiomtre de rglage de la tension en sortie de celui-ci cela va nous permettre ci besoin est, d'augmenter la tension en sortie, cela aura pour effet de faire avancer plus vite le robot.

Page 19/35

ERGE3 Robot suiveur de ligne

1.3 Cartes capteurs


Notre carte de dtection de la ligne blanche au sol (carte de capteur) est relativement simple, il s'agit en fait d'un seul circuit que nous avons recopier 6 fois tant donn que nous avons dcid de mettre 6 capteur sur la carte. Nous avons galement ralis une autre petite carte ne comportant qu'un seul capteur pour la fin du parcours ou il faudra dtecter une barre de bois situe 8 cm du sol et la faire tomber sans atteindre la 2me barre situe 20cm plus loin, pour cela il sera ncessaire d'avoir un seuil de dtection infrieur car la barre n'est pas de couleur blanche (voir programmation). Schma d'un capteur Nous envoyons sur notre carte une tension de 5V continu, or nous avons une tension de 1,25V en entre des capteurs il sera donc utile de rajouter une rsistance de 68ohms pour obtenir la tension utile. Typon WinCircuit L'utilisation de WinCircuit nous a grandement simplifi la tache et nous a fait gagner un temps prcieux, en effet le routage tant relativement simple et rptitif, il a t possible de l'effectuer rapidement

2 La programmation
La programmation tait pour nous la partie la plus compliqu. Programmer sur un ATmega est nouveau pour nous, il a donc fallut lire les docs et solliciter nos camarades. Pour la programmation de notre ATmega, nous utiliserons le logiciel CodeVision AVR, c'est un logiciel servant crer des programmes en langage C, les compiler, puis envoyer le programme vers le micro-contrleur rentr en paramtre.

Dfinitions des variables


Nous aurons besoin lors de l'laboration de notre programme de plusieurs variables, de deux types diffrents, Entier et Tableau de caractre. Ces variables seront dclares en variables globales de faon tres modifiables par n'importe quelle fonction du programme. int buf, i, val2; unsigned char tampon[20], val[8]; Langage C

Page 20/35

ERGE3 Robot suiveur de ligne Nous avons besoin de :


Un tableau de caractres 8 cases 'Val' (une case reprsentera alors l'tat d'un capteur) Un

tableau de caractres 20 cases 'tampon' (utile pour l'affichage sur le lcd) variables entires 'I', 'buf' (nous verrons son utilit dans un prochain chapitre) variable entire 'Val2' (concatnation des 7 valeurs de capteur)

deux Une

2.1 Les paramtres de configuration


La configuration de l'ATmega est simple il faut uniquement rentrer le type d'ATmega, sa vitesse puis Code vision gnre automatiquement le code de configuration de celui ci.

Langage C

Dans ce chapitre nous verrons toutes les tapes de programmation avec la reconnaissance de la ligne, l'afficheur sur le LCD puis enfin le suivit de la ligne par les moteurs voir programme en annexe NXXX L'emplacement des diffrents composant sur l'ATmega son rsum sur le Datasheet Page 21/35

ERGE3 Robot suiveur de ligne du composant avec les diffrents pattes du composants

2.2 La reconnaissance de ligne


Pour reconnatre la ligne, nous allons utiliser la tension dlivre par les capteurs. En effet, lorsque le capteur ''voit'' la ligne blanche, la tension dlivre par le dtecteur est de 5 Volts environ4.

Langage C Cette fonction sera excute autant de fois qu'il y a de capteurs, donc 7 fois au total. Le rsultat de la conversion est envoye dans une variable val2 pour ensuite tre comparer et trait Lorsque cette fonction est appele, elle doit savoir quelle entre analogique est concern, c'est pourquoi le programme principal devra le lui prciser.

Langage C Dans la fonction MAIN5, on appel la fonction6, cette fonction nous renvoi donc une valeur comprise entre 0 et 1023. Nous avons impos un seuil, ncessaire car la moquette tant de couleur verte, la valeur retourne lorsque le capteur ne dtectera pas la ligne ne sera pas de 0, le seuil servira donc de ''barrire''.
4 Dpend de l'inclinaison et de la proximit du capteur, ainsi que de la lumire extrieure. 5 Fonction principale 6 read_adc()

Page 22/35

ERGE3 Robot suiveur de ligne

Illustration 16: Modlisation du seuil Comme le montre ce schma, le seuil sera la valeur lorsque le capteur voit la moquette. Nous prendrons dans le programme une valeur lgrement au del, pour tre plus prcis. Si la valeur retourne est suprieur au seuil, la valeur 1 est entre dans le tableau de caractre 'Val' la case correspondante au numro de capteur.

Illustration 17: Correspondance des capteurs avec le tableau Le programme questionne ainsi les 5 capteurs par le biais de la fonction read_adc(), Lorsque le programme obtenu les informations des 5 capteurs, le tableau 'Val' contient une suite de 1 et de 0, le programme principal excute le calcul suivant. Val2 = Val[0] + Val[1]*2 + Val[2]*4 + Val[3]*8 + Val[4]*16 On obtient donc une image dcimale de l'tat des capteurs.

Page 23/35

ERGE3 Robot suiveur de ligne

2.3 La gestion des cas possibles


Neuf cas de positions de ligne s'offrent nous, chaque cas correspond une valeur dcimale de l'tat des capteurs. Cette partie du programme saura diffrentier ces cas, et effectuera les tches ncessaires au bon dplacement du robot. Un cas d'attente de ligne t ajout, dans le cas ou la ligne serait interrompu pendant un lger instant, le robot continuera d'avancer vitesse rduite. Nous aurons galement un cas dit de ''dfaut'', pendant cette phase, le robot n'effectuera aucun mouvement et s'immobilisera. tat des capteurs Capteurs 5 0 0 0 1 1 0 0 0 0 0 ? 4 0 1 1 1 0 0 0 0 0 0 ? 1 1 1 0 0 0 1 0 0 0 0 ? 3 0 0 0 0 0 1 1 1 0 0 ? 2 0 0 0 0 0 0 0 1 1 0 ? 0x04 0x0C 0x08 0x18 0x10 0x06 0x02 0x03 0x01 0x00 0x?? Valeur Hexadcimale

Page 24/35

ERGE3 Robot suiveur de ligne

Page 25/35

ERGE3 Robot suiveur de ligne Les 10 cas ''normaux'' sont mentionns dans ce tableau, nous avons aussi le cas de dfaut, ce cas regroupe tout ceux non mentionns. Les deux variables OCR1AL et OCR1BL correspondent la valeur du alpha du MLI de chacun des deux moteurs. OCR1AL pour le moteur ''droite'', OCR1BL pour le moteur ''gauche''. Cette valeur varie de 0 255, 0 correspondant 0 Volts, 255 correspondant 5 Volts7. Les valeurs donnes sont susceptibles d'tres modifies, notamment lors des tests finals du robot.

3 Tests
Afin de rgler les problme de manire plus efficace et rapide nous avons effectuer une batterie de tests aprs chaque ralisation, cela nous permet de rgler les problmes petit petit.

3.1 Carte mre


La phase de test proprement parl c'est droule en plusieurs tapes, tout d'abord nous avons fait des tests pralables avant d'implanter tout composant programmable, nous avons donc test si nous avons bien les bonnes tensions d'alimentation aux bons endroits (sur l'ATmega8535, le hacheur, et autres composants du circuit), ainsi que quelques tests de continuit aux endroits susceptible de poser problmes. Ensuite nous avons ajout les composant pralablement mis de cot et effectu de nouveaux tests, bien sur tant donn que nous avons du ralis 2 cartes, ces tests ont t effectuer sur les 2 cartes.

Illustration 18: test sans composant programmable

7 Voir chapitre 2.2 Le bloc moteur

Page 26/35

ERGE3 Robot suiveur de ligne

Lors de ces premier test nous n'avons dtect aucun problme de court-circuit ou de discontinuit de pistes, les LED cens s'allumer ce sont allumes nous avons donc pu passer des tests plus pousss, avec l'ajout de l'ATmega8535 et du LM2574.

3.2 Transfert et essais programme


Pour les essais de programmation, nous avons transfr nos programme a l'aide de la carte fourni par l'IUT qui permet de relier notre Atmega8535 au PC. tant donn nos maigre connaissances en programmation Atmega8535 nous avons prfr programmer par petit morceaux avant le test total. Les premier test tait un simple affichage sur l'cran LCD:

Illustration 19: premier test de programmation aprs quelques tests similaire nous avons pu passer plus srieux, notamment a l'envoi de tension sur le L298, c'est la ou nous avons rencontr nos premiers vritables problmes, nous avons d'abord pens un manque de courant sur les moteurs d'o la ralisation de notre 2me carte, cependant mme aprs la ralisation de celle-ci le problme subsistait, les moteurs ne tournait pas. Aprs multiples vrifications de tout ce qui nous semblai susceptible de ne pas fonctionner nous nous sommes rendu compte qu'une erreur sur Orcad tait a l'origine du dysfonctionnement, en effet les pattes du L298 on toutes t inverse dans la bibliothque du logiciel, ainsi nous n'y avons pas pens du tout et c'est par une vrification chanceuse que nous avons dcouvert cela, nous avons dcid de souder le composant de l'autre cot de la carte par soucie de temps (nous ne pouvions pas recommencer une carte). Un second problme est toute fois survenu aprs cela lorsque nous avons tent de reprogrammer l'ATmega8535, nous avions par inadvertance soud le connecteur de programmation a l'envers ce qui a probablement caus un court-circuit sur le CPLD et l'a ainsi grill . aprs remplacement de ce dernier Page 27/35

ERGE3 Robot suiveur de ligne le programme ainsi que le reste de la plaque ont trs bien fonctionn.

3.3 Carte capteurs


Notre carte capteur a, elle, fonctionn du premier coup, les tests effectuer sur celleci ont t concluant, cependant quand nous l'avons reli a la carte principale un problme est survenu, 2 de nos capteur semblai ne plus fonctionner, nous avons effectu de nouveau test en la dbranchant et tout fonctionnai normalement, nous en avons donc conclu que cela venait de l'ATmega8535 et en effet c'tait le problme voqu prcdemment concernant le composant dfectueux. Aprs remplacement la carte fonctionnai parfaitement bien mis a part quelques rglages de seuil depuis la programmation.

Illustration 20: test avec la carte capteur

3.4 Tests du robot


Aprs fonctionnement total du robot (c'est dire que l'ATmega8535 commande les moteur et qu'il rcupre bien la valeur des catpeurs, diffrents problmes ce sont pos nous, en effet le robot fonctionnait et les moteur ragissai en fonction des capteurs ce qui tait le plus important, cependant la difficult c'est pos quand suivre la ligne sans la perdre, notre robot avanant trop vite il lui tait difficil de gard la ligne en captage. Nous avons donc du baisser progressivement la vitesse du robot pourqu'il garde la ligne sous le champ de rayon des capteurs. Puis aprs quelques rglages et inversion des moteurs Page 28/35

ERGE3 Robot suiveur de ligne notre robot parvien enfin prendre une trajectoire et pu tre homologu pour participer au concours! C'tait le plus important pour nous car mme si nous ne visons pas la gagne du concours, participer reste une belle russite pour nous car sa n'tait pas gagn d'avance. Voici une photo du robot en phase de test sur la piste test du concour de vierzon:

Page 29/35

ERGE3 Robot suiveur de ligne

Conclusion
A travers ce projet nous avons pu rinvestir majorit des notions apprises ces 2 annes d'IUT au sein du GEII, en effet ce projet demandait des notions la fois d'lectronique, d'informatique, et de mcanique, celui-ci demandait donc une certaine agilit en terme de comptence. Le projet nous a galement permis de consolider des bases dans certains domaines ainsi que de dcouvrir des nouvelles faons de faire ou l'utilisation de nouveaux outils tel que Orcad que nous n'avions pas encore eu exploiter. Nous avons t confront un planning trs serr en regard de la charge de travail, mais cela nous a permis de faire face la pression par moment et des situations proches de celles que nous pourrions rencontrer dans le milieu professionnel. Nous avons quand mme quelques regrets concernant le temps justement car nous avions divers obstacles tout au long du parcours et certains ne pourrons pas tre effectus faute de temps. Malgr cela le fait de mener un projet de bout en bout en partant de zros a t un exprience enrichissante et motivante pour nous.

Page 30/35

ERGE3 Robot suiveur de ligne

Bibliographie
Datasheets: -cny70 -l298 -ATmega 8335 -LM2574 -LM2575 Documentation sur le site internet de thierry lequeu (http://www.thierry-lequeu.fr/) http://benoit.stef.free.fr/robotika_fichiers/Rapport%20de%20projet%20robot.pdf http://www.yopdf.com/shema-de-cny70-pdf20.html#a6

Page 31/35

ERGE3 Robot suiveur de ligne

Table des illustrations

Index des illustrations


Illustration 1: Directions possibles en fonctions des tensions moteurs................................................9 Illustration 2: L'ATmega 8535............................................................................................................10 Illustration 3: Capteur CNY70............................................................................................................11 Illustration 4: Schma de principe du CNY70....................................................................................11 Illustration 5: Hacheur L298..............................................................................................................12 Illustration 6: Schma interne du L298..............................................................................................12 Illustration 7: schma de cblage des diodes......................................................................................13 Illustration 8: LM2574.......................................................................................................................14 Illustration 9: Schma de branchement du LM2574..........................................................................14 Illustration 10: Schma de branchement du LM2575........................................................................15 Illustration 11: L'cran LCD...............................................................................................................15 Illustration 12: Batterie 12 Volts 1,2 Ah........................................................................................16 Illustration 13: Calcul de rsistance...................................................................................................17 Illustration 14: Torsader les fils..........................................................................................................18 Illustration 15: Connecteur 2 broches.................................................................................................19 Illustration 16: Modlisation du seuil.................................................................................................24 Illustration 17: Correspondance des capteurs avec le tableau............................................................24 Illustration 18: test sans composant programmable...........................................................................28 Illustration 19: premier test de programmation..................................................................................29 Illustration 20: test avec la carte capteur............................................................................................30

Page 32/35

ERGE3 Robot suiveur de ligne

Annexes
-Schma sous capture des diffrentes cartes du robot -Schma Orcad des diffrentes cartes du robot

ANNEXE1 Schma Capture de la carte principale

Page 33/35

ERGE3 Robot suiveur de ligne

Schma sous Wincircuit de la carte capteur

ANNEX 2 Schma Orcad de la carte principale

Page 34/35

ERGE3 Robot suiveur de ligne

Page 35/35