Vous êtes ici : Accueil > Disciplines > Technologie > Classe de 5e > Informatique embarquée > Le robot mBot
Par : FP
Publié : 10 juin 2016
Format PDF Enregistrer au format PDF

Le robot mBot

Un robot éducatif


Présentation


Le robot mBot-Blue (Version 2,4 G) est un robot éducatif conçu par l’entreprise MakeBlock. Livré en kit, il est économique et facile à mettre en service. Il permet de découvrir les particularités de la programmation des robots, notamment le traitement des informations perçues par un robot. Il permet aux élèves d’acquérir de l’expérience pratique en programmation graphique, en électronique et en robotique. Il sera utilisé comme support à la découverte de l’informatique embarquée.
 



Caractéristiques


mBot est bâti sur une architecture Arduino Uno et permet une première approche avant de réaliser des projet Arduino plus complexes.
Le robot mBot peut détecter des obstacles, suivre une ligne, émettre des sons et des signaux lumineux, recevoir des ordres d’une télécommande, être piloté par une télécommande, communiquer par un canal infrarouge avec un autre robot.
Il est constitué d’un châssis robuste en aluminium équipé de deux motoréducteurs et d’une carte de pilotage.
Son module de communication sans fil 2,4 GHz permet de téléverser les programmes sans utiliser le câble de programmation.
La carte de pilotage est équipée d’un bouton M/A, d’un bouton-poussoir, de deux LED RGB, d’une LED d’émission IR, d’un buzzer, d’un capteur de lumière, d’un capteur IR, et de 2 connecteurs RJ45 libres pour connecter d’autres modules Makeblock.


Le montage


Le montage de mBot peut être effectué par les enfants sous supervision d’un adulte. Il est conseillé de faire effectuer le vissage des roues (en force) par le professeur. Il faut également toute l’attention du professeut pour le montage des capteurs et pour les branchements.
mBot est livré avec un firmware qui permet de jouer un peu avec dès la fin du montage. Le robot est contrôlable avec la télécommande (haut, bas, gauche, droite). Le bouton B permet de passer en mode exploration, le bouton C en mode suivi de ligne (une piste sur une feuille A3 qui rappelle étrangement un logo Arduino est présente dans le kit). Le bouton A permettra de repasser en mode téléccommandé. En mode suivi de ligne, les boutons numériques permettent de changer la vitesse du robot.


Le logiciel mBlock


mBlock est une version améliorée de Scratch, célèbre logiciel de programmation graphique. Son code Open Source a été conçu pour faciliter la programmation des cartes Arduino de manière graphique et interactive. Il est ainsi incroyablement facile de passer à mBlock quand on connaît déjà Scratch, mais aussi quand on n’a aucune connaissance préalable.
mBlock possède de nouveaux blocs liés à des actions matérielles, permettant de contrôler le robot mBot.
A l’issue du montage il faut charger un firmware car celui d’origine ne permet pas la prise de contrôle de mBot via la liaison sans fil. Pour cela :

  • brancher le mCore en USB puis cliquer sur "connecter" —> "par port série (COM)" —> sélectionner le port nouvellement apparu suite au branchement USB.
  • Une fois la barre de titre indiquant que la connexion série est effective, il faut verser le firmware permettant la prise de contrôle via WiFi/Bluetooth : cliquer sur "Connecter" —> "Mettre à jour le microprogramme".
  • On peut alors déconnecter le câble USB pour se connecter en WiFi ou Bluetooth (toujours via le menu "Connecter").
  • On peut restaurer le firmware d’origine qui permet le contrôle à la télécommande avec la connexion série établie : "Connecter" —> "Réinitialiser le microprogramme d’origine".


Les specificités des modes asservi et autonome


Le comportement d’un programme ne sera pas strictement identique selon qu’on le fasse tourner dans l’environnement mBlock en mode "asservi" (avec connexion WiFi/Bluetooth au mBot) ou en mode autonome (après avoir généré et versé le firmware équivalent pour Arduino).
Lorsque le programme tourne dans l’environnement mBlock, il y a de la latence dans la lecture des données capteurs et l’envoi de consignes moteur. Cette latence fait que les programmes seront moins réactifs. On ne pourra pas, par exemple, faire tourner en mode asservi le programme d’évitement de chute en bord de table proposé dans l’archive : le délai détection du vide —> décision —> marche arrière est trop long et le robot tombe de la table.
A l’inverse, l’utilisation du capteur ultra-son en mode autonome est plus ardue qu’en mode asservi car les valeurs lues sont bruitées alors qu’elles sont apparemment filtrées lorsqu’on les lit depuis mBlock. Cela fait qu’un programme où la détection d’un seuil de distance entraîne un enchaînement d’actions (ex : "si distance < 20 cm alors reculer 0.5 s puis tourner 1 s") aura un comportement erratique en mode autonome.
Il faudra parfois ruser dans le programme pour tenir compte de ce bruit (ex : constater 10 mesures à 10 ms d’intervalle toutes inférieures à 20cm avant d’entraîner un enchaînement d’actions). Le mieux à faire pour les ateliers des enfants est de toujours travailler en mode "asservi" et de ne pas tenter la détection de bord de table.


 


Sur le web