1) Introduction à la programmation avec Bitbloq
Attention! L'application Bitbloq a changé d'adresse et n'a pas été retestée par les producteurs de la présente formation. Il est possible que certains éléments de la page soient erronés.
Qu'est-ce que Bitbloq ?
Le logiciel de programmation standard Arduino n'étant pas compatible avec Chromebook et l'application Arduino pour Chromebook nécessitant un abandonnement mensuel, nous nous sommes tournés vers une application alternative.
L'application retenue, Bitbloq (nouvelle adresse, pas testé par le RÉCIT MST, désolé), permet la programmation du microcontrôleur Arduino en ligne et elle est gratuite. Bitbloq offre aussi de nombreux avantages par rapport à d'autres applications similaires. Notamment, la programmation se fait à partir de blocs que l'on assemble pour créer un programme, ce qui permet d'ignorer la lourde syntaxe du langage natif d'Arduino. Il est aussi possible de voir le code textuel équivalent à la programmation en bloc et, éventuellement, de le modifier.
De plus, Bitbloq gère les périphériques nécessaires au code. En commençant un projet, on indique à Bitbloq quels périphériques sont connectés aux ports du Arduino. Ainsi, seules les commandes nécessaires à ces périphériques sont affichées et Bitbloq envoie automatiquement les commandes aux bons ports de la plaquette Arduino.
Bref, ces deux avantages majeurs nous amènent à recommander Bitbloq même sur des ordinateurs Windows et Mac afin de s'initier à la programmation Arduino.
Note : L'interface de Bitbloq peut être mise en français ou dans une autre langue dans les paramètres du compte. Les images que nous avons prises pour nos explications utilisaient une interface en anglais puisque le langage de programmation est toujours en anglais.
Configuration et création d'un compte
- Se rendre sur https://bitbloq.cc/. Il faut absolument utiliser Google Chrome, peu importe le système d'exploitation.
- Avant de créer un compte, nous allons configurer votre ordinateur pour que Bitbloq puisse communiquer avec une plaquette Arduino. Cliquer sur « Comment ça marche » (ou « How It Works ») en haut à gauche de l'écran d'accueil.
- Bitbloq reconnaît automatiquement votre système d'exploitation et vous propose la bonne démarche. Pour ChromeOS, vous devrez installer l'extension Chrome pour Bitbloq (lien ici si le lien sur la page « Comment ça marche » ne fonctionne pas). Pour Windows, macOS ou Linux, il faut télécharger et installer l'application Web2board (dont le lien adapté à votre système d'exploitation sera sur la page « Comment ça marche »).
- Vous pouvez maintenant créer votre compte. Si vous avez un compte Google, vous pouvez l'utiliser directement. Sinon, suivez les étapes pour créer le compte.
Un premier programme : Blink
Maintenant que Bitbloq est configuré et que vous êtes à l'écran d'accueil du compte, la programmation peut commencer. Nous allons commencer par faire clignoter la DEL interne de la plaquette Arduino : c'est un « premier programme » classique.
Note : Comme Bitbloq est une application nuagique, il n'est pas nécessaire de sauvegarder les programmes et ils seront accessibles de n'importe quel ordinateur. Il faut juste se donner la peine de mettre un titre à ses programmes pour mieux se retrouver.
- Cliquer sur le bouton vert New Project (Nouveau projet). Il est suggéré de cliquer sur Untitled project (Projet sans titre) en haut à gauche afin de donner un titre plus explicatif pour le programme.
- Au début du projet, nous sommes dans l'onglet Hardware (voir la colonne de gauche). Dans la colonne de droite, il faut cliquer sur Board (Carte), puis aller chercher la plaquette Arduino UNO. La glisser au centre.
- Bitbloq passe ensuite directement à la section Components (composants) dans la colonne de droite. C'est dans ce menu que l'on indique à Bitbloq quel périphérique est utilisé et où il est connecté. Dans le cas actuel, nous allons utiliser la DEL interne du Arduino, qui est connectée au port D13. Donc, glisser une LED depuis le menu de droite vers l'écran central, puis la relier à D13. La configuration Harware est terminée et doit ressembler à ceci :
Cliquer sur Software dans le menu de gauche. L'interface au centre est divisée en trois sections. Premièrement, Global variables and functions (Variables globales et fonctions) sert à créer les variables et les fonctions utilisées dans le code, mais aucune commande n'est placée ici. Nous n'utiliserons pas cette section pour notre premier code. Deuxièmement, la section Setup permet de donner des commandes qui ne seront effectuées qu'une seule fois, au début de l’exécution du programme. Troisièmement, les commandes de la section Loop s'effectuent en boucle et en continu après l’exécution des commandes dans Setup. Comme nous voulons faire clignoter la DEL interne, toutes les commandes iront dans la section Loop.
Cliquer sur la section rouge dans le menu de droite. C'est là que se trouvent les blocs permettant de donner des commandes aux périphériques connectés à la plaquette. Dans le cas actuel, il n'y a qu'un bloc servant à commander la DEL. Glisser ce bloc dans la section Loop.
Note : En cliquant sur l'onglet Code en haut du programme, il est possible de voir le code textuel qui est généré par les blocs.On veut que la DEL reste allumée pendant une seconde. Cliquer sur la section bleu foncé Con (pour Contrôle) et glisser le bloc Wait (Attendre) à la suite du bloc rouge. Changer la valeur de l'argument pour 1000 ms.
On veut maintenant que la DEL s'éteigne pour une seconde. Ajouter un bloc rouge, mais en changeant le premier argument pour Turn off (éteindre). Ensuite, ajouter un bloc bleu Wait 1000 ms. Le code est complet! Comme les commandes sont dans la section Loop, elles vont se répéter en continu.
Il faut maintenant envoyer le programme dans la plaquette Arduino. Connecter la plaquette à l'ordinateur avec le câble USB, puis cliquer sur la flèche Load (charger) en haut à droite de l'écran. Après le chargement, la DEL de la plaquette Arduino et du blindage vont se mettre à clignoter toutes les secondes!
Blink sur le contrôleur de moteur
Électriquement parlant, le code Blink commande au port 13 de la plaquette d'appliquer une différence de potentiel de 5 V pour une seconde, puis 0 V pour une seconde et ainsi de suite. Il est donc possible de faire clignoter n'importe quel périphérique du Qbot, dont les moteurs.
Reliez, l'une après l'autre, les quatre broches d'entrée du contrôleur de moteur à la broche D13 du blindage (Colonne 13, rangée S). Cela fera tourner un moteur durant une seconde, puis arrêter durant une seconde, etc. En changeant de broche sur le contrôleur de moteur, la direction de rotation et le moteur changeront.
Progression
Passez à la mise en marche du Qbot.