sections

programmation → mBlock 
programme informatique sur mBlock
Un programme mBlock se présente sous la forme d'une succession de blocs colorés placés les uns à la suite des autres. Ces blocs sont eux-mêmes constitués de lignes de code formant un langage compréhensible par les systèmes programmables, mais seul un bout de phrase en français figure sur le bloc pour l'identifier.
Exemple : le programme du robot mBot en mode "suiveur de ligne"
Le mBot utilise son capteur infrarouge "suiveur de ligne" pour se déplacer en suivant une ligne noire tracée sur le sol. Les blocs du programme sont traduits par l'interface de programmation mBlock
en langage C++ (ci-dessous), puis traduits à nouveau (compilés) en binaire pour être envoyés dans le robot pour exécution.
#include <Arduino.h>
#include <Wire.h>
#include <SoftwareSerial.h>
#include <MeMCore.h>
MeDCMotor motor_9(9); MeDCMotor motor_10(10);
void move(int direction, int speed)
{ int leftSpeed = 0; int rightSpeed = 0;
if(direction == 1){ leftSpeed = speed; rightSpeed = speed;}
else if(direction == 2){ leftSpeed = -speed; rightSpeed = -speed; }
else if(direction == 3){ leftSpeed = -speed; rightSpeed = speed; }
else if(direction == 4){ leftSpeed = speed; rightSpeed = -speed; }
motor_9.run((9)==M1?-(leftSpeed):(leftSpeed));
motor_10.run((10)==M1?-(rightSpeed):(rightSpeed)); }
double angle_rad = PI/180.0;
double angle_deg = 180.0/PI;
double Speed; double Temp;
MeLineFollower linefollower_2(2);
void setup(){ pinMode(A7,INPUT);
while(!((0^(analogRead(A7)>10?0:1)))){ _loop(); }
while(!((1^(analogRead(A7)>10?0:1)))){ _loop(); }
Speed = 250; }
void loop(){ Temp = linefollower_2.readSensors();
if(((Temp)==(0))){ move(1,Speed); }else{
if(((Temp)==(1))){ move(3,Speed); }else{
if(((Temp)==(2))){ move(4,Speed); }else{
move(2,Speed); } } } _loop(); }
void _delay(float seconds){
long endTime = millis() + seconds * 1000;
while(millis() < endTime)_loop(); }
void _loop(){ }
les types de blocs
1 l'événement déclencheur
L'exécution du programme dépend de la survenue de l'événement mentionné dans le bloc : c'est la condition de départ du programme.
→ simple clic sur l'icone drapeau vert
→ mise sous tension du mBot ou de la carte Arduino


→ message envoyé par un autre script
→ action sur le bouton poussoir du mBot


→ un seuil sonore est dépassé (*)
→ le chronomètre atteint une certaine valeur de temps (*)
→ action sur une touche du clavier
→ clic sur un élément graphique de la zone d'affichage (*)
* spécifique à Scratch, réalisable par un script sur mBlock