Activité mBot : mesurer des distances
Capteur ultrason mBot : mesurer distance, afficher (LED). Types, Arduino C.
Illustration générée par IA
Capteur ultrason mBot : mesurer distance, afficher (LED). Types, Arduino C.
Cette activité en deux temps guide pour :
Les libellés exacts des blocs peuvent varier selon la version de mBlock et la langue de l’interface ; l’enchaînement logique reste le même.
Vidéo — Activité mBot : mesure des distances : YouTube — démonstration pas à pas
Le module à ultrasons mesure une distance en émettant une onde et en mesurant le temps de retour après réflexion sur un obstacle. Sur le mBot classique, il est en général à l’avant ; orientez le robot vers ce que vous voulez « voir ».
La vitesse du son intervient dans le calcul côté carte ; pour l’activité, l’essentiel est de savoir que la valeur fournie par le bloc est en centimètres (selon le bloc choisi — vérifiez l’unité affichée dans mBlock).
Objectif : une variable (par ex. data ou distance) prend en boucle la valeur du capteur ; vous la voyez dans la zone du lutin sur le PC.
Quand vous lancez le script, la variable se met à jour : vous lisez la distance en cm (tant que l’obstacle reste dans la plage valide).
Références d’époque (si besoin de comparer avec d’autres versions de mBlock) : anciennes captures désormais obsolètes.
Objectif : le robot seul affiche la distance sur la matrice LED (souvent 5×8), idéalement avec un défilement si le nombre est trop long — comme dans l’article faire défiler un texte.
Le bloc de défilement de texte attend en général une chaîne (string), par exemple "42 cm".
Le capteur renvoie un nombre (nombre entier ou décimal). Ce n’est pas le même « type » : en Scratch / mBlock, il faut convertir ou assembler du texte, comme pour des pièces d’encastrement de formes différentes.
Deux approches courantes :
Vous pouvez dupliquer ou adapter le bloc / la procédure qui affiche le texte défilant pour qu’elle accepte directement un nombre, ou pour qu’elle fasse la conversion en interne.
defiler_distance, defiler_message, etc.).mBlock peut générer du code à partir des blocs, puis vous permettre d’éditer la partie Arduino C (bouton ou onglet Code / symbole </> selon la version).
Étapes typiques :
</> ou menu équivalent), tout sélectionner et copier.Exemple d’idée (les noms exacts defilement_texte_… dépendent de la génération mBlock — à ajuster après copie) :
defilement_texte_N_N(String(data) + String(" cm"), 1);
Ici, data est la variable qui contient la distance lue ; on forme une chaîne du type "37 cm" avant l’appel. L’image d’origine de l’article montrait l’emplacement de cette ligne dans le fichier généré : capture désormais obsolète.
Sécurité : manipuler le code C implique re-téléverser sur la carte et vérifier câble / piles. Faites une copie du projet .mblock avant de modifier le code généré.
Pour prolonger avec le mBot, la robotique et l’algorithmique, poursuivez avec les autres fiches du site : activités mBot, détecteur d’intrusion (même famille de capteur), et les guides mBlock dans la colonne « À lire aussi ».
Pour la classe : nos 10 projets mBot gratuits proposent une progression complète en 10 séances, avec fiches élèves et corrigés en PDF.
Vous hésitez entre deux modèles ou vous avez besoin d'aide sur un montage ? Écrivez-nous, nous vous répondons rapidement par e-mail.