Vous êtes sur la page 1sur 12

Choix du type et du nombre de capteurs et interfaage :

Nous avons dit prcdemment qu'un robot suiveur de ligne comporte entre deux et dix capteurs selon les modles. Mais avant tout que sont ces capteurs ? Ils sont composs d'une diode mettrice infrarouge et d'un phototransistor infrarouge. Soit ces lments sont spars, soit ils sont regroups dans un mme botier mais le principe reste le mme. Voici le schma correspondant au fonctionnement d'un capteur :

La diode met de la lumire infrarouge dans de nombreuses directions cette lumire une longueur d'onde d'environ 900nm certains rayons, formant un angle d'incidence i par rapport la normale qui est perpendiculaire la surface de rflexion, se rflchissent plus ou moins sur la surface lisse de couleur quelconque avec un angle de rflexion par rapport la normale gale l'oppos de l'angle d'incidence. Plus le phototransistor reoit de la lumire infrarouge, plus il est passant et plus l'intensit traversant le collecteur et l'metteur de celui-ci est leve. Cette lumire a t mise par la diode et rflchie par la surface qui est devant le capteur, si c'est du noir le capteur est un tout petit peu passant, si c'est du blanc, le transistor est presque compltement passant. Pour rcuprer une information logique sur la patte du Basic Stamp selon la couleur de la ligne partir d'un capteur , on a recours un petit montage lectronique ralis par nos soins. Voici son schma :

Le capteur comprend deux parties , la premire avec la led que l'on va alimenter en 5 volts et mettre en srie avec une rsistance de 100 ohms pour obtenir une intensit la traversant d'environ 50 milliampres. La deuxime partie est

le phototransistor qui travaille en amplification comme un transistor standard la diffrence prs que ce qui va modifier son tat interne c'est la quantit de lumire qu'il va recevoir, en fonction de laquelle l'intensit I va varier. C'est ici que nous allons implanter un rglage de sensibilit grce au potentiomtre P1 et la rsistance R1. Cette rsistance R2 est prsente uniquement pour que la rsistance quivalente ( au potentiomtre rgl au minimum et la rsistance R2) n'atteigne pas une valeur nulle. Pour une mme intensit I, si le rglage du potentiomtre est lev alors l'intensit Ib tendra vers la valeur de l'intensit I, plus le rglage du potentiomtre sera faible plus l'intensit Ib diminuera. Cette intensit Ib est l'intensit de base du Darlington (montage spcifique des deux transistors T1 et T2 qui permet de multiplier les gains). Donc plus celle-ci va tre grande plus la tension Vce va diminuer rapidement car le gain est lev et le Darlington va saturer trs vite, en sortie on rcupre presque un signal tout ou rien selon deux couleurs distinctes de la surface sur laquelle se rflchit la lumire. Ce qui fait que si la tension Vce descend en dessous de 1,5 volts ( seuil des tats logiques du Basic Stamp ) alors on aura un niveau logique 0 sur la patte correspondante. On ajoute galement la rsistance R2 pour protger le Basic Stamp et viter un court circuit entre le +5V et la masse lorsque T2 est satur. Concrtement, si le capteur est au dessus de la ligne noire, alors la quantit de lumire rflchie est faible, les intensits I et Ib sont faibles alors la tension Vce est leve donc l'tat logique correspondant une surface noire est 1. Par le mme raisonnement on obtient que l'tat logique correspondant une surface blanche est 0. Le rglage de sensibilit va permettre de rgler partir de quelle nuance de couleur on obtiendra 0 ou 1. Dans le programme pour tester l'tat d'une entre du Basic Stamp on utilise l'association de l'appellation inX de l'entre (o X est le numro de l'entre sur laquelle on doit tester l'tat) et de l'instruction : If " condition " then " label " " label " doit tre remplac par le nom d'une l'tiquette dans le programme laquelle on doit se rendre si la condition est vraie. Pour tester l'tat de l'entre 5 par exemple et, si elle est 1, aller l'tiquette " commencer " on va crire dans le programme : If in5=1 then commencer. Pour notre robot, le nombre de capteurs devait tre choisi. Deux capteurs nous semblaient trop peu et l'inverse, la dizaine, c'tait trop car le montage lectronique aurait t beaucoup trop volumineux. De plus un nombre aussi lev de capteurs est utilis pour des robots destins des comptitions ce qui n'est pas le cas du ntre . Nous avons donc dcid d'quiper notre robot de quatre capteurs disposs de la faon suivante : deux capteurs centraux carts de deux centimtres environ puis deux capteurs latraux un peu en retrait et plus carts.

Le choix du microcontrleur :
Nous nous sommes donc penchs sur le choix de la puce principale du robot, et rapidement nous nous sommes dirigs vers l'acquisition du Basic Stamp 2SX de la socit Parallax. En effet sa programmation s'effectue en langage basic qui ressemble beaucoup celui utilis dans les calculatrices et auquel nous tions dj initis. Nanmoins la vitesse d'excution d'un programme basic est infrieure celle de l'excution d'un programme dans un autre langage. Cependant l'horloge interne du Basic Stamp est de 50 MHz ce qui rgle le problme de diffrence de vitesse d'excution ( titre de comparaison un PIC, autre type de microcontrleur fonctionnant en assembleur, a une frquence de 4 MHz ).

L'interfaage des entres / sorties est galement trs simple raliser mais nous approfondirons ultrieurement les diffrents schmas de connections des divers priphriques.

Le choix de la motorisation :
Les robots rencontrs au cours de nos recherches sont quips soit de moteurs avec rducteurs commands en sens de rotation uniquement (leur tension d'alimentation sont en gnral de 6 ou 9 volts ), soit aussi de moteurs pas pas commands en sens de rotation , en vitesse, et en angle de rotation (Grce au nombre de pas effectus). L'alimentation de ces moteurs s'effectue de 4 12 volts, mais leur poids est souvent assez lev et leur mode de fonctionnement est complexe. Ce qui fait qu'il devient difficile de les intgrer dans notre robot qui devra tre assez lger car de plus ils sont assez encombrants et demandent des schmas de connexion compliqus, nous abandonnerons donc ce choix. La troisime motorisation rencontre est l'utilisation de servos, sortes de moto rducteurs pilots l'aide d'impulsions. Leur tension d'alimentation est de 4,8 ou 6 volts. Mais ceux-ci ncessitent une modification interne car l'origine ils sont prvus pour des rotations sur une plage de 120 environ et sont incapables, en l'tat, d'effectuer un tour complet Les possibilits de pilotage au final sont les suivantes : sens de rotation et vitesse.

Nous avons donc deux choix cohrents avec le but recherch ( robot assez rapide et le plus efficace possible dans le suivi de ligne ) , des moteurs standards avec leur rducteur ou des servos.L'inconvnient des moteurs courants est leur consommation qui gnralement dpasse les 2 ampres, de plus ils ncessiteraient un systme de montage spcial ( cause de leur forme cylindrique ) et une partie puissance dans le schma lectrique entirement raliser avec les complications que ceci pourrait entraner (composants de puissance, surchauffe ).Les servos quant eux ont le grand avantage d'avoir la partie puissance dj incluse dans leur botier et les moteurs, de petite taille, ne consomment pas plus de 800 mA. Leur forme , paralllpipdique, leur permet d'tre facilement fix des surfaces planes. Et d'aprs la documentation du Basic Stamp, la connexion de tels appareils s'effectue trs facilement et la programmation pour les faire fonctionner ne sera pas non-plus un obstacle la ralisation de notre robot. C'est donc sur cette motorisation que ce choix s'est port, et nous allons voir dans la partie suivante comment tirer le meilleur de celle-ci.

Prparation et mode de programmation des servos : En temps normal un servo est pilot par des impulsions lectriques de largeur spcifique qui permettent de faire pivoter l'arbre de sortie du servo d'un angle spcifique par rapport sa position neutre. Cette position est dtecte par le circuit interne au servo ( que l'on ne dtaillera pas car il est beaucoup trop complexe ) grce un potentiomtre dont l'axe est solidaire l'axe de sortie du servo. Une bute est galement prsente pour viter de dtriorer le potentiomtre au cas o l'angle rgl serait trop important.

Le systme de commande est trs simple : l'alimentation de 4.8V 6V tant applique sur deux fils , on applique l'impulsion sur le troisime. Une impulsion de 1,5 millisecondes centre l'axe sa position dite neutre, une impulsion de 1 milliseconde fait pivoter l'axe de 45 degrs tandis qu'une impulsion de 2 millisecondes le fait pivoter de - 45 degrs

Toute impulsion comprise entre 1 et 2 millisecondes permet d'obtenir de nombreuses positions intermdiaires. La masse du servo est mise en commun avec celle du Basic Stamp et le troisime fil est connect une sortie disponible du microcontrleur alors que la tension positive qui doit tre applique au servo est puise sur une alimentation stable capable de dlivrer plusieurs centaines de milliampres (800 1000 mA) par servo. Le schma suivant correspond la connexion des servos :

L'impulsion de commande est produite grce l' instruction PULSOUT que l'on inclut dans le programme. Cette instruction se prsente dans le programme sous la forme suivante :

PULSOUT, patte, dure

"Patte" est le numro de la sortie sur lequel doit tre envoy l'impulsion, le fil du servo tant directement reli cette patte. "Dure" est la largeur de l'impulsion un coefficient prs : la rsolution de l'instruction qui est gale, d'aprs le constructeur 800 nanosecondes pour notre Basic Stamp. Donc une impulsion de 1.5 millisecondes correspond une valeur de la variable dure gale 1.5ms / 800ns soit 1875 Pour le robot nous avons besoin de rgler la vitesse et le sens de rotation de l'arbre de sortie des servos donc quelques modifications s'imposent. Voici tout d'abord comment se prsente l'intrieur d'un servo en temps normal :

La premire chose faire est de supprimer la bute pour permettre la rotation totale de l'arbre. Ensuite, on sort le potentiomtre du botier afin que sa valeur ne soit plus modifie par la rotation de l'axe de sortie mais par une action extrieure de l'utilisateur. Grce ces deux modifications, une impulsion de 1,5 millisecondes et un rglage prcis du potentiomtre provoquent un arrt de la rotation de l'arbre de sortie. Une rotation de 1 milliseconde provoquera une rotation dans le sens direct la vitesse maximale de l'arbre de sortie alors que l'impulsion de 2 millsecondes provoquera la rotation dans le sens indirect la vitesse maximale. Les valeurs de la largeur de l'impulsion entre 1 et 1,5 millisecondes permettent donc de rgler la vitesse dans le sens direct et les valeurs comprises entre 1,5 et 2 millisecondes permettent de rgler la vitesse dans le sens indirect. Une autre modification qui n'est pas indispensable consiste ensuite a supprimer deux tages de rduction pour augmenter la vitesse de rotation par rapport un servo classique. Cette modification est cependant assez dlicate et source d'ennuis si elle est mal faite. Voici l'origine la configuration des engrenages prsents dans un servo :

Pignon moteur 10 dents Roue 1 Pignon 2 Roue 2 Pignon 3 Roue 3 Pignon 4 Roue 4 62 dents 10 dents 50 dents 10 dents 35 dents 16 dents 41 dents

Tous ces roues et pignons engrnent de la faon suivante :

Grce ce schma et aux donnes du nombre de dents on peut dduire le rapport de transmission de l'ensemble r =(10x10x10x16)/(62x50x35x41) = 1 / 278.0

La suppression de deux tages de rduction s'effectue en enlevant une pice (pice moule constitue de la roue 2 et du pignon 3) et en en collant deux autres. On obtient alors la cascade d'engrenages suivante :

Grce ce schma et aux donnes du nombre de dents on peut dduire le nouveau rapport de transmission de l'ensemble r =(10x16)/(62x41) =1 / 15.9

Cration de la structure du robot Par structure du robot nous entendons circuit imprim car aprs rflexion il semblait judicieux d'utiliser le circuit imprim comme chssis pour un gain de poids principalement. Nous connaissions tous les lments (motorisation, schmas lectroniques de tous les montages prsents) ncessaires pour pouvoir crer ce robot, il ne nous restait plus qu' tout implanter sur une carte, ou plutt deux cartes, ce qui permettra d'obtenir un robot plus compact et moins plat. Pour la ralisation de celles-ci nous avons procd de la faon suivante : Sur une feuille de papier calque nous avons dessin et implant les composants, les servo, pour lesquels il fallait rserver de la place. . . enfin tous les lments du robot . Le plus difficile tait de ne pas oublier de pistes reliant les composants entre eux et de prvoir tous les liens entre les deux plaques. A ce stade de la conception nous avons dcid de l'alimentation qui allait quiper notre robot. En vue de la faible place disponible et de la masse totale du robot qui devait tre faible nous avons opt pour une petite batterie compose de cinq accumulateurs 1.2V de la taille de piles LR03, le tout donnant une alimentation de 6V suffisante pour tous les lments. L'ajout sur la plaque suprieure du robot d'un rgulateur 5V pour avoir une tension prcise ncessaire pour les mesures sur les diples RC a t effectu. Au final nous avons repass, sur ordinateur, les pistes et les pastilles puis

Imprim deux typons pour crer les plaques.

Puis grce ces typons les deux circuits imprims ont t crs:

Alors, les plaques ont t ponces puis peintes pour certaines, puis les composants furent souds, les servos fixs avec des colliers en nylon, les deux plaques furent fixes entre elles l'aide d'entretoises en plastique ou en mtal et des roues ont t visses, finalement le robot tait termin :

Recration du robot l'aide d'un logiciel de DAO Vue de dessus

Vue de dessous

Vues en perspective

Vue clate

Liste des composants


repre dsignation rsistances 100 Ohms rsistances 220 Ohms rsistances 270 Ohms rsistances 1.3k Ohms rsistances 2.4k rsistances 4.7k Ohms rsistance 33k Ohms rsistance 36k Ohms rsistance 43k Ohms rsistance 56k Ohms condensateur 100nF de dcouplage quantit commentaire 4 2 2 (ou 6) x6 si leds 20mA 4 8 1 1 1 1 5 si leds 4mA 4 (ou 8) x8 si led 2mA

condensateur lectrochimique radial 220 ou 470 1 uF leds diamtre 3mm (si possible low current) leds diamtre 10mm diodes 1N4007 rgulateur 5V 1A radiateur pour rgulateur support dip 24 pattes large interupteur dip 2 poles 4 2 1 1 1 2 1 attention aux dimensions un deuxime pour protger le Basic Stamp choisir les rsistances en fonction de ces leds

mini potentiomtre pour CI 100k Ohms mini potentiomtre pour CI 5k Ohms touches 6x6 mm pour CI transistor BC 547 B capteur CNY70 infrarouge embase HE-10 2x8 contacts nappe 16 fils embase sub-d 9 femelle pour CI barette scable 20 contacts (5 suffisent) entretoises plastique 25-30 mm Basic Stamp 2 servos standard pour le modlisme batterie 6V compose d'accus R3 NIMH > 700mAh

1 6 6 9 4 1 1m 1 1 8 1 2 1 avec prise dite "bec" enfichable dans la barette scable prfrez le plastique au niveau du poids si possible modle SX ou quivalent

Typons

CI1 imprimer en 82 x 131mm

CI2 imprimer en 82 x 136mm