Blog ENI : Toute la veille numérique !
🐠 -25€ dès 75€ 
+ 7 jours d'accès à la Bibliothèque Numérique ENI. Cliquez ici
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
  1. Livres et vidéos
  2. Scratch 3
  3. L'extension Lego Mindstorms EV3
Extrait - Scratch 3 S'initier à la programmation et à la robotique par le jeu
Extraits du livre
Scratch 3 S'initier à la programmation et à la robotique par le jeu
2 avis
Revenir à la page d'achat du livre

L'extension Lego Mindstorms EV3

Introduction

Les Lego Mindstorms sont des Lego dédiés à la robotique et programmables via une brique intelligente. Cet outil a été développé à la fois pour le grand public, mais également pour le monde de l’éducation via un partenariat entre Lego et le MIT. Ces Lego s’adressent de préférence aux adolescents et aux adultes. Ils sont très prisés dans les concours de robotique.

L’interface de la brique EV3 est assez austère pour de jeunes enfants. La possibilité de programmer les Lego Mindstorms avec Scratch devrait faciliter leur maîtrise par les plus jeunes bien que les fonctionnalités avec Scratch soient limitées par rapport aux capacités de cet outil.

Scratch 3 et Lego Mindstorms

1. Le matériel

Le set de base Lego Mindstorms EV3 comporte :

  • La brique intelligente EV3 : il s’agit du cerveau utilisé pour alimenter et piloter les capteurs et les moteurs. Elle est pourvue d’un port USB pour une connexion Wi-Fi et Internet, un lecteur de carte Micro SD, des boutons rétroéclairés et huit ports (alphabétiques et numériques) pour connecter les éléments de robotique.

  • Les ports alphabétiques A - B - C - D sont des ports de type sorties. Ils envoient une information. Ils sont utilisés pour contrôler des actionneurs, comme des moteurs.

  • Les ports numérotés de 1 à 4 sont des ports de type entrées. Utilisés pour recevoir des informations, les capteurs viennent se connecter dessus.

Les moteurs

Les moteurs sont des composants de type contrôleurs. Pour fonctionner, ils reçoivent une information sous la forme d’une pulsion électrique. Les informations étant sortantes, les ports sur lesquels viennent se positionner les moteurs sont des ports de type sorties (notés de A à D).

Deux types de moteurs sont disponibles dans le set Lego Mindstorms : deux moteurs grands formats et un moyen format. Les moteurs grands formats servent de base motrice pour les robots. Les moteurs intègrent un capteur de rotation qui leur permet d’être précis au degré près.

Les blocs Scratch ne permettent pas une utilisation aussi complète des moteurs.

Les capteurs

Il s’agit de composants qui captent une information. Ils effectuent des mesures (distance, lumière) qui sont transmises à la brique EV3. Les informations étant entrantes, les ports sur lesquels viennent se positionner les capteurs sont des ports de type entrées (notés de 1 à 4).

Un capteur de couleurs : il s’agit d’un capteur numérique. Il détecte l’intensité lumineuse ainsi que les couleurs.

Cette dernière fonctionnalité n’est pas prise en compte par Scratch.

Un capteur tactile : il s’agit d’un bouton poussoir, cela signifie qu’il ne maintient pas la position enfoncée. Il reconnaît trois états : enfoncé ou relâché, et heurté. Cette dernière position correspond au fait...

Déplacer un véhicule

Pour vos constructions, vous pouvez réaliser l’un des modèles proposés par Lego sur le site Internet dédié à Lego Mindstorms.

Voici quelques exemples de programmes utilisables pour déplacer un véhicule dans toutes les directions. Il est à noter que les blocs étant lus d’une manière linéaire, lorsque vous souhaitez activer deux moteurs en même temps, il faut créer deux instructions (ou deux conditions) qui vont s’exécuter en parallèle.

Pour ma part, j’ai tendance à positionner les moteurs à l’arrière de mes véhicules. La direction du véhicule est donc retournée et inversée. En fonction du positionnement de vos moteurs :

This way peut être utilisé pour aller vers l’avant ou vers l’arrière, tout comme that way. Dans le cadre de mon modèle où les roues sont positionnées à l’arrière :

  • that way permet de faire avancer mon châssis vers l’avant.

  • this way permet de faire reculer mon châssis.

Programme pour avancer

Pour pouvoir avancer, les deux moteurs doivent commencer à tourner en même temps et dans le même sens. Deux instructions identiques sont donc utilisées et seront exécutées en parallèle.

 quand la touche...

Une interface graphique

Pour contrôler vos projets, vous pouvez utiliser une interface graphique. Sur la scène de Scratch, différents sprites, lorsqu’ils sont cliqués, lancent une instruction.

Ce projet disponible en téléchargement depuis la page Informations générales a pour nom Interface Mindstorms.sb3

images/20FI28.PNG

1. Le graphisme

Ce projet nécessite la création de neuf sprites dessinés avec la palette graphique.

images/20FI29.PNG

Les sprites de commande

Quatre sprites sont utilisés pour déplacer le véhicule : Avancer - Reculer - Gauche - Droite. Sous la forme de boutons rectangulaires, chacun de ces sprites est pourvu de deux costumes identiques. Seule change leur couleur :

  • Rouge lorsque le bouton n’est pas sélectionné : nom du costume instruction + off.

  • Vert lorsque le bouton est sélectionné : nom du costume instruction + on.

images/20FI30.png

Le sprite Stop

Il est utilisé pour arrêter l’exécution des programmes en cours lorsqu’il est cliqué. Il a la forme d’un bouton arrondi sur lequel est inscrit le mot STOP.

Les sprites pour gérer la puissance des moteurs

Ces quatre sprites sont utilisés pour modifier la puissance des moteurs.

Moteur A (+) et Moteur D (+) : il s’agit de deux cercles avec un plus inscrit dessus.

Moteur A (-) et Moteur D (-) : il s’agit de deux cercles avec un moins inscrit dessus.

2. Le programme

Ce projet nécessite la création de deux variables Puissance moteur A et Puissance moteur D utilisées pour définir la puissance des moteurs. Cette puissance est modifiée en cliquant sur les sprites Moteur A (+) et Moteur A (-) pour le moteur positionné sur le port A. Et en cliquant sur les sprites Moteur D (+) et Moteur D (-) pour le moteur situé sur le port D.

Sur la scène, les deux variables sont affichées en permanence afin de permettre de connaître en temps réel la puissance des moteurs. Pour une meilleure lisibilité, elles sont affichées en mode Grande lecture. Pour modifier l’affichage :

 Faites un clic droit...

Conclusion

Les Lego Mindstorms sont destinés à des utilisateurs plus âgés (adolescents et adultes) que les utilisateurs de Scratch. L’utilisation de Scratch pour programmer les Lego Mindstorms ne permet qu’une utilisation sommaire. Il s’agit de découvrir un nouveau matériel dans un environnement connu, mais il est préférable, je pense, de privilégier l’environnement dédié à ce matériel qui permet de développer des projets robotiques complexes.