TUTORIEL 5: SUIVRE LA LUMIERE Description: Nous, les humains, avons deux jambes et pouvons nous déplacer dans la direction que nous voulons. Les robots peuvent avoir deux roues et on peut leur dire dans quelle direction aller, à quelle vitesse, quand s arrêter, tourner... ça ne dépend que de vous. Dans ce tutoriel nous verrons comment faire suivre la lumière à un robot. Le principe est très simple: le robot fera tourner plus vite l une ou l autre de ses roues en fonction du côté qui sera le plus éclairé. Matériel nécessaire: - Un cordon USB - Un Duinobot v1.1 ou plus (ou autre carte, voir alors quelles piles et types de moteurs elle supporte) - Un ordinateur avec minibloq (v0.81 ou plus) - 3 x piles AA (rechargeables, si possible, pour le respect de l environnement) - 2 x moteurs 12V courant continu compatibles Multiplo - 2 x câbles (rouges) compatibles Multiplo - 2 x câbles (bleus) compatibles Multiplo - 2 x Capteurs de lumière (LDR photorésistances) ETAPE 1: Connectez les piles, les moteurs ont besoin de plus de puissance que ce que fournit la prise USB. Utilisez 3 piles alcalines (ou 3 rechargeables Ni-MH). Mettez-les en marche après la connection des piles. ETAPE 2: Connectez les câbles rouges aux sorties moteur de la carte, M0 pour le moteur de gauche et M1 pour celui de droite. En cas d erreur les mouvements seront inversés, alors pas d inquiétude et apprenez par l expérience. http://multiplo.org Page 1
Connectez l autre extrémité aux bons moteurs. ETAPE 3: On va maintenant brancher un capteur de lumière au cerveau du robot. Utilisez un câble bleu, on remarquera qu il peut se connecter sur les entrées CAPTEURS. Sur la carte DuinoBot, les prises capteurs vont de S0 à S5, mais il existe des cartes d extension (shields) compatibles Arduino qui permettent de brancher beaucoup d autres capteurs si le besoin s en fait sentir. La base du capteur de lumière est la photorésistance dont la résistance électrique diminue quand la lumière augmente. Pour simplifier c est un espèce d oeil qui ne voit pas d image mais seulement si la lumière est plus ou moins forte ce qui suffira à notre robot pour savoir où aller. http://multiplo.org Page 2
ETAPE 4: Après avoir connecté la carte à l ordinateur avec le cordon USB mettez-la en marche. * Vérifiez que, dans la partie Matériel de minibloq (en haut à gauche), le bon type de carte est choisi. On sélectionnera également le port série utilisé. ETAPE 4: Une fois la carte connectée et minibloq correctement configuré, créez un nouveau projet: choix Créer dans le menu Fichier. Dans le nouveau sketch vide (partie grise de droite) choisissez l icône WHILE et configurez le bloc pour une boucle infinie avec VRAI comme paramètre (la coche verte). Choisissez cette icône multiplo Cliquez pour afficher les options Cliquez cette icône http://multiplo.org Page 3
Puis cliquez sur l icône des roues dentées, qui symbolise l état d un moteur. Dans la boucle cet ordre sera répété sans fin. Quelque chose comme Esclave fait ceci pour toujours. [Bon, on peut laisser tomber le terme esclave.] Dans le tutoriel précédent on avait assigné comme vitesse une valeur constante, un nombre, cette fois ce sera différent. ETAPE 5: Quand on ouvre le menu du paramètre la seconde rangée d icônes (en vert) donne des valeurs constantes. Au contraire, la première rangée (en violet) donne des valeurs dynamiques, qui varient avec le temps. Choisissez cette icône Cliquez pour afficher les options Choisissez le même numéro de capteur que celui de la prise utilisée sur la carte lors de l étape 3. http://multiplo.org Page 4
ETAPE 6: Choisissons l état du capteur de lumière comme paramètre pour l état du moteur, comme indiqué sur la figure ci-contre. Une fois le programme envoyé à la carte par le bouton LANCER, on peut tester le résultat en éclairant brillament un côté puis l autre tout en observant la rotation des roues. On peut essayer avec différentes lumière, de la DEL au soleil en passant par un écran de téléphone... Essayez de faire en sorte que le moteur M0 tourne vite quand le capteur 1 détecte de la lumière et inversement pour le moteur M1 et le capteur 0. Avec les deux capteurs montés sur l avant du robot il devrait aller tout droit si la lumière est devant et tourner à gauche ou à droite selon qu elle est de ce côté ou de l autre. ETAPE 7: Une fois maîtrisée la technique permettant au robot de suivre la lumière essayons de lui faire fuir cette lumière. Pour ça nous utiliserons une fonction que nous avons déjà utilisée dans le tutoriel précédent pour faire reculer le robot. Oui, l opérateur négatif http://multiplo.org Page 5
Tant que le capteur fournit une valeur l état du moteur sera fixé à cette valeur. Si l on n est pas dans l obscurité totale les yeux du robot verront quelque chose. Ce qui signifie que même si la photorésistance n est pas éclairée directement par votre lampe elle fournira une valeur. Vous pouvez voir cet effet au mouvement du robot quand il n a pas de lumière vive directement dans les yeux. Nous corrigerons ce problème plus tard en augmentant l intelligence de notre robot. http://multiplo.org Page 6