Collège/4ème/Programmation/Mblock/Les blocs Arduino dans mBlock

Les blocs Arduino dans mBlock

Programmation - 4ème

Les blocs Arduino dans mBlock

30 min+20 XPapprentissage

Objectifs

  • Comprendre le rôle de la carte Arduino et son lien avec mBlock.
  • Identifier et utiliser les principaux blocs de commande Arduino dans mBlock (numérique/analogique).
  • Écrire un premier programme simple pour contrôler une LED intégrée.

Introduction

Imaginez pouvoir donner vie à vos idées : faire clignoter des lumières, faire bouger un petit robot ou créer une station météo. Aujourd'hui, nous allons découvrir comment mBlock, un outil que vous connaissez déjà pour créer des jeux, peut aussi piloter du matériel électronique réel, comme une carte Arduino. C'est le pont entre le monde virtuel et le monde physique !

Comment programmer une carte Arduino de manière simple et visuelle pour interagir avec le monde réel ?

Arduino et mBlock : La connexion

Arduino est une petite carte électronique programmable, équipée d'un microcontrôleur. C'est le 'cerveau' de nombreux projets. Elle possède des broches (des sortes de prises) qui peuvent être configurées en entrée (pour lire une information, comme un bouton poussoir) ou en sortie (pour envoyer une commande, comme allumer une LED). mBlock, basé sur Scratch, nous permet de programmer cette carte de manière graphique, sans écrire de code texte complexe. Pour cela, il faut d'abord connecter la carte à l'ordinateur via un câble USB. Ensuite, dans mBlock, on sélectionne le type de carte (par exemple, Arduino Uno) dans le menu 'Cartes'. Il faut aussi installer les pilotes si nécessaire. Une fois connectée, mBlock peut envoyer notre programme (on dit 'téléverser' le sketch) sur la carte Arduino. Après le téléversement, la carte peut fonctionner de manière autonome, même débranchée de l'ordinateur, grâce à l'alimentation par pile ou par USB. C'est ce qui permet de créer des objets interactifs indépendants.

Points clés

  • Arduino est une carte électronique programmable avec des broches d'entrée/sortie.
  • mBlock communique avec Arduino via une connexion USB et un pilote.
  • Le programme est téléversé sur la carte pour une exécution autonome.

Les familles de blocs Arduino dans mBlock

Dans la palette des blocs de mBlock, une catégorie spécifique est dédiée à Arduino. Les blocs les plus importants se trouvent dans 'Cartes' > 'Arduino'. On distingue deux grandes familles : les blocs pour les signaux numériques et ceux pour les signaux analogiques. Un signal numérique a deux états : HAUT (5V, souvent pour 'allumer') ou BAS (0V, pour 'éteindre'). Il est parfait pour commander une LED ou lire l'état d'un bouton. Le bloc principal est 'écrire la broche digitale [13] à [haut]'. Un signal analogique peut avoir une gamme de valeurs, par exemple de 0 à 1023 pour la lecture (entrée) ou de 0 à 255 pour l'écriture (sortie PWM). Il permet de faire varier l'intensité d'une LED ou de lire la position d'un potentiomètre. On utilise le bloc 'écrire la broche PWM [9] à [150]'. Pour les entrées, on trouve les blocs 'valeur de la broche digitale [12]' (qui renvoie vrai ou faux) et 'valeur de la broche analogique [A0]' (qui renvoie un nombre). Il est crucial de savoir quelle broche on utilise : les broches digitales (2-13) et les broches analogiques (A0-A5). La broche 13 est souvent utilisée pour la LED intégrée à la carte, pratique pour les premiers tests.

Points clés

  • Les signaux digitaux ont 2 états (HAUT/BAS), les analogiques ont une plage de valeurs.
  • Les blocs 'écrire digitale/PWM' sont pour les sorties, 'valeur digitale/analogique' pour les entrées.
  • Il faut connaître le numéro de la broche utilisée (ex: 13 pour la LED intégrée, A0 pour un capteur).

Applications pratiques

Mettons cela en pratique avec deux exemples progressifs. Premier projet : Faire clignoter la LED intégrée (broche 13). On utilise une boucle 'répéter indéfiniment'. À l'intérieur, on place le bloc 'écrire la broche digitale [13] à [haut]', puis on attend une seconde avec le bloc 'attendre [1] secondes', suivi de 'écrire la broche digitale [13] à [bas]' et à nouveau 'attendre [1] secondes'. Après téléversement, la LED doit clignoter. Deuxième projet : Simuler un feu piéton. On utilise trois LEDs externes (rouge, orange, vert) connectées aux broches 10, 9 et 8 via des résistances. Le programme fait d'abord allumer le vert (broche 8 à HAUT), attend 5 secondes, éteint le vert et allume l'orange (broche 9) 2 secondes, puis éteint l'orange et allume le rouge (broche 10) 5 secondes, avant de recommencer. Cela introduit la logique séquentielle et la gestion de plusieurs sorties. Pour aller plus loin, on pourrait ajouter un bouton (en entrée digitale sur la broche 2) pour que l'appui d'un piéton déclenche le passage au vert après un délai.

Points clés

  • Projet 1 : Clignotement LED intégrée avec boucle et attentes.
  • Projet 2 : Séquence de feux tricolores avec plusieurs LEDs, introduction à la logique de contrôle.

À retenir

mBlock étend les possibilités de la programmation visuelle au monde physique en permettant de contrôler une carte Arduino. En connectant la carte et en utilisant les blocs spécifiques (digitaux pour tout ou rien, analogiques pour les variations), on peut créer des programmes qui s'exécutent de manière autonome. La maîtrise de la connexion, de l'identification des broches et des blocs de base ouvre la voie à de nombreux projets interactifs.

  • Arduino se programme visuellement dans mBlock après connexion USB et sélection de la carte.
  • Les blocs 'digitaux' gèrent les états ON/OFF, les blocs 'analogiques/PWM' gèrent les intensités.
  • Le programme doit être téléversé sur la carte pour qu'elle fonctionne de manière autonome.
EdTech AI