mbot_featured_image
Image: Makeblock

Construire nos propres robots est un sujet dans notre maison depuis longtemps maintenant: les enfants sont absolument fascinés par les robots et fantasment régulièrement sur la construction de robots pour faire le ménage autour de la maison ou produire des bonbons et des jouets.

Il y a plus d’un an, j’avais acheté un ensemble de robots, mais je dois avouer que nous ne sommes pas allés loin avec cet ensemble en particulier. La construction avec une carte Arduino et un moniteur de moteur séparé nécessitait des fils trop compliqués pour les enfants, le robot ne pouvait être programmé qu’en C, l’ajout de différents capteurs ou actionneurs signifiait plus de fils et de programmation C, etc. Idéal pour GeekDad pour jouer avec, mais pas une expérience qui peut être facilement partagée avec de jeunes enfants.

Au printemps de cette année, un de mes collègues m’a indiqué une campagne Kickstarter d’une entreprise appelée Makeblock, qui promettait un robot éducatif pour chaque enfant avec une installation facile, un concept modulaire de modification / expansion et un environnement de programmation graphique.

J’ai promis deux robots et j’ai commencé à attendre avec impatience. La campagne s’est déroulée sans problème et les robots ont été envoyés à temps. Ce n’était que d’une malheureuse combinaison de problèmes avec les règles personnalisées et de l’exécution plutôt aléatoire de ces règles par le service de paquets (une histoire pour toute une série d’articles de blog) qui a retardé l’arrivée de mes deux mBots.

Lorsque les mBots sont enfin arrivés, nous avons trouvé ceci dans la boîte:

Contenu du kit robot mBot.  Image: Makeblock
Contenu du kit robot mBot. Image: Makeblock

Trois choses ressortent: le châssis du robot est un morceau de métal solide plutôt que du plastique. il n’y a pas plus de 40 pièces; les fils entre les capteurs et la carte Arduino sont réalisés avec des prises téléphoniques (RJ25). L’aspect matériel semblait donc assez adapté aux enfants. Et en fait, c’était: laissé à moi-même, la construction aurait probablement pris environ 10 minutes par personne. Robot. Avec deux enfants, il a fallu environ les trois quarts pour construire les deux robots: assez facile à terminer avant que l’attention d’un jardinier ne commence à s’égarer, mais néanmoins un sentiment d’accomplissement, ayant construit son premier robot.

Une fois les robots construits, les enfants verraient naturellement certaines actions du robot. Heureusement, le mBot est livré avec un programme pré-installé qui permet le contrôle à distance avec la télécommande infrarouge et dispose à la fois d’un mode d’évitement de mur (en utilisant le capteur à ultrasons avant) et d’un mode de suivi de ligne (en utilisant le capteur optique monté directement au-dessus de la «roue» avant). ):

  • Le suivi de ligne ne fonctionnait pas si bien au début, mais nous avons compris le problème et nous étions si heureux lorsque le robot a fait son tour. Quel était le problème? Le package MBot comprend une affiche avec une piste noire en forme de grand « 8 ». Ceci nous étendons sur le sol et mettons le robot sur la piste. Le robot a suivi un peu la piste, mais a ensuite commencé à danser sur place et a basculé de gauche à droite. Cela a pris du temps, mais nous avons finalement réalisé que parce que l’affiche est très brillante, les plis sur lesquels l’affiche était pliée reflétaient la lumière du soleil de fin d’après-midi qui brillait à travers la fenêtre. Ainsi, le capteur a détecté « clair » au lieu de « sombre » lorsqu’il s’est approché d’une telle boucle; par conséquent, le robot n’a trouvé aucun moyen d’avancer et a continué à danser sur place.
  • L’évitement de mur fonctionne aussi bien que prévu avec un seul capteur à ultrasons. Là où cela ne fonctionne pas (par exemple, lorsque le robot « surplombe » un pied de table ou met une éternité à se sortir d’un coin), il peut être une bonne leçon de regarder les complications du robot pour observer les problèmes du robot.
  • La télécommande du robot via la télécommande IR fonctionne également très bien. Bien sûr, vous ne pouvez pas vous attendre au confort et à la réactivité de ce qu’un jouet télécommandé plus sophistiqué et à usage unique a à offrir: vous contrôlez le robot en appuyant sur un bouton à la fois plutôt qu’avec une télécommande multicanal dotée de poignées qui fournissent possibilité de contrôle progressif. Un autre problème avec la télécommande IR est que vous ne pouvez avoir qu’un seul robot dans la pièce, sinon les signaux IR sont perturbés; mais vous pouvez passer un robot en télécommande via smartphone via Bluetooth: une application a été mise à disposition par Makeblock pour Android et iOS. Ainsi, les deux enfants ont joyeusement envoyé leurs robots courir dans notre salon.

Le lendemain, nous avons fait notre première tentative de programmation de mBot (en fait c’est un mensonge: dès que les enfants se sont couchés, j’ai commencé à écrire mes premiers programmes pour mBot – juste pour m’assurer que tout fonctionnerait le lendemain, bien sûr …) Makeblock a pris la sage décision de baser l’environnement de programmation de mBot sur l’éditeur hors ligne éprouvé pour Scratch 2 du MIT. Dans Scratch, les programmes sont créés graphiquement en assemblant des blocs représentant des structures de contrôle, des tâches, des actions, etc. Makeblock a écrit extension à mBot qui propose des blocs spécifiques à mBot qui permettent d’interroger et de contrôler chacun des capteurs et actionneurs disponibles pour mBot.

Ci-dessous vous pouvez voir, par exemple, un programme très simplifié pour une télécommande. Les blocs marron sont des blocs à usage général pour contrôler le flux de contrôle (ici une boucle infinie, plusieurs cas et un « état d’attente »). Les blocs bleus sont spécifiques à mBot: les blocs hexagonaux interrogent le récepteur IR pour les signaux envoyés par la télécommande, les blocs rectangulaires sont utilisés pour contrôler les moteurs du robot.

Un programme simple pour le contrôle à distance de mBot
Un programme simple pour le contrôle à distance de mBot dans Scratch GUI. Le programme s’affiche dans le volet central. À gauche du programme, vous voyez les blocs disponibles dans Scratch pour le contrôle de flux de contrôle (par ex. Boucles), à droite le programme C résultant.

Bien sûr, ce programme très simple n’est pas parfait car les moteurs sont constamment allumés et éteints, que la commande de la télécommande ait changé ou non. Il serait bien préférable d’enregistrer l’état actuel de la télécommande dans une variable, de changer l’état en fonction du signal envoyé par la télécommande et de ne se soucier de la commande du moteur que lorsqu’un changement d’état se produit. Le but du programme simple est que les enfants peuvent le comprendre. Lors de notre premier jour de programmation de mBot, j’ai commencé par amener les enfants à jouer avec les blocs qui contrôlent mBot: Lorsque vous cliquez sur un bloc de commande avec mBot connecté à l’ordinateur via un câble USB ou Bluetooth, la commande est exécutée sur mBot. Ensuite, je leur ai montré comment intégrer certains de ces blocs dans le simple programme de télécommande mBot illustré ci-dessus.

Récemment, j’ai utilisé mBot dans le cadre d’une énigme à résoudre lors d’une fête d’anniversaire (un code secret devait être entré sur la télécommande pour que mBot puisse commencer à faire clignoter ses LED en code Morse avec des instructions pour la prochaine énigme). Nous envisageons actuellement d’améliorer la fonction d’évitement de mur en utilisant deux capteurs à ultrasons à la fois et en déconnectant l’autre capteur de l’autre mBot. D’autres projets suivent dans l’exploration pratique de la technologie robotique par notre famille.

Dans l’ensemble, je suis vraiment satisfait du résultat de la campagne mBot Kickstarter. Bien qu’à moins que vos enfants soient adolescents, je changerais le slogan de mBot « Un robot éducatif pour chaque enfant » en « Un robot éducatif pour chaque enfant et ses parents »: mBot rend les choses assez faciles, mais les plus jeunes ont vraiment besoin orientation. Parce que je veux explorer la technologie robotique avec mes enfants, je vais très bien.

Aimes-tu? Prenez un moment pour soutenir le GeekFamily Network sur Patreon!

Laisser un commentaire

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