Activité périscolaire, Module 2: Robot mBot – Niveau 1, séances 4 et 5 – Capteur suivi de ligne

Ce module est le second module de la série. Il permet de faire découvrir aux plus jeunes (à partir de 8 ans) l’ordinateur et les bases de la programmation. Ce module se veut ludique, il utilise le robot mBot et permet de compléter l’apprentissage de scratch et principalement l’utilisation de capteurs d’environnement.

Ces deux séances sont consacrées au capteur de suivi de ligne.

Fonctionnement du capteur de suivi de ligne

Le capteur que nous allons utilisé est un capteur de contraste. Il est constitué d’une LED émettrice et d’un phototransistor.

Le capteur du robot:

linefollow

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.

Schéma de principe:

lineFollowSketch

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.

Exercice:

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.

  1. Connecter le cordon USB au robot et à l’ordinateur.
  2. Allumer le robot
  3. Etablir la connexion informatique entre l’ordinateur et le robot, dans le menu Connecter –> par port série com

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’executer 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:

  • Lorsque le robot arrive sur une ligne foncée, il s’arrête
  • Puis, lorsque le robot a franchi 3 lignes foncées, il s’arrête

Le cas 1 se traduit par:

Attendre l’appui sur la touche A de la télécommande
Créer la variable EtatSuiveur
Quand la touche drapeau est pressée

Mettre la variable EtatSuiveur à état du suiveur de ligne

Répéter jusqu’a variable EtatSuiveur est égale à 0

  Mettre la variable EtatSuiveur à état du suiveur de ligne

  Avancer
Fin Répéter tant que
Arrêter le Robot
Les instructions scratch correspondantes, à écrire dans l’onglet script (programme) sont:
Télécharger le script vers le robot:

Marche à suivre:

  • Allumer le robot (interrupteur on:off, situé au dessus de la roue arrière gauche)
  • Connecter le robot et l’ordinateur (Connecter-> par port Serie COM -> /dev: ….

  • Passer en mode arduino (Edition-> Mode Arduino), la fenêtre programme s’ouvre.

  • Sélectionner téléverser dans l’Arduino
  • Attentez que la fenêtre Téléversement fini

Le cas 2 se traduit par:

Créer la variable EtatSuiveur
Créer la variable NombreDeLignesFranchies
Quand la touche drapeau est pressée
Mettre la variable NombreDeLignesFranchies à 0
Répéter jusqu’a NombreDeLignesFranchies est égale 3

  Mettre la variable EtatSuiveur à état du suiveur de ligne

  Avancer

  Si variable EtatSuiveur est égale 0
    répéter jusqu’à variable EtatSuiveur est égale 3
      Mettre la variable EtatSuiveur à état du suiveur de ligne
 
    Fin Répéter jusqu’à
    NombreDeLignesFranchies = NombreDeLignesFranchies +1
  Fin Si
Fin Répéter jusqu’à
Arrêter le Robot
Les instructions scratch correspondantes, à écrire dans l’onglet script (programme) sont:
Télécharger le script vers le robot (voir la démarche à suivre ci dessus)
Question supplémentaire, comment faire pour relancer ce meme traitement à chaque fois que l’on appuie sur la toute A de la télécommande?

4 commentaires sur “Activité périscolaire, Module 2: Robot mBot – Niveau 1, séances 4 et 5 – Capteur suivi de ligne

  1. bonjour,
    merci pour ces activités, très bien fait.
    Avez vous utilisé le capteur Me 3 axis accelerometer?
    si oui quel est le port qu’il faut utiliser sur la carte mcore du mbot?
    cordialement

    1. Merci, pour vos encouragements.
      Je n’ai pas pas utilisé le capteur Me 3 axis accelerometer?
      N’hésitez pas à donner ici la solution si vous l’avez.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.