La LED émettrice envoie une lumière infrarouge que le sol réfléchit en direction du phototransistor qui capte ainsi la quantité de lumière en retour. voir le Schéma de principe du fonctionnement du capteur.
Comme les couleurs foncées réfléchissent moins bien la lumière que les couleurs claires, le capteur peut ainsi définir s’il se trouve au dessus d’une couleur clair (lorsqu’il reçoit beaucoup de lumière), il prend alors la valeur 1, ou s’il se trouve au dessus d’une couleur foncée (lorsqu’il reçoit peu de lumière), il prend alors la valeur 0 (zéro).
Notre robot possède deux capteurs de suivi de ligne à l’avant. Ils sont situés l’un à coté de l’autre, l’un a droite du centre du robot, l’autre à gauche.
Scratch met à disposition du programmeur une instruction qui permet de lire la valeur des deux capteurs en mer temps.
Il s’agit de l’instruction « état du suiveur de ligne sur port2 ».
Lorsque les deux capteurs détectent une couleur claire la valeur état suiveur est à 3.
Lorsque le capteur de droite détecte une couleur claire et le capteur de gauche détecte une couleur foncée la valeur état suiveur est à 1.
Lorsque le capteur de droite détecte une couleur foncée et le capteur de gauche détecte une couleur claire la valeur état suiveur est à 2.
Lorsque les deux capteurs détectent une couleur foncée la valeur état suiveur est à 0.
L’exercice consiste à afficher sur l’écran de l’ordinateur la valeur état du suiveur. Pour vérifier le bon fonctionnement du capteur, approcher du capteur une feuille sur laquelle il y a un gros trait noir. Que constatez vous?
L’exercice se traduit par:
Créer la variable EtatSuiveur
Quand la touche drapeau est pressée
Répéter indéfiniment
Mettre la variable EtatSuiveur à état du suiveur de ligne
Fin Répéter indéfiniment
Les instructions scratch correspondantes, à écrire dans l’onglet script (programme) sont:
Pour tester ce programme nous allons utiliser la connexion USB entre le robot et l’ordinateur.
Lorsque le robot est connecté il émet des petits Bips.
Lancer alors le programme, que remarquez vous?
ATTENTION : Si le programme ne démarre pas recharger le programme par défaut du robot qui permet d’exécuter le programme a travers la connexion USB.
Pour aller plus loin, maintenant, couplez cette fonction avec la fonction avancer du robot:
Ecrire les scripts correspondants aux deux cas suivants:
Le cas 1 se traduit par:
Mettre la variable EtatSuiveur à état du suiveur de ligne
Mettre la variable EtatSuiveur à état du suiveur de ligne
Marche à suivre:
Le cas 2 se traduit par:
Mettre la variable EtatSuiveur à état du suiveur de ligne
Avancer