Mblock !
Section outline
-
Mblock, c'est selon moi, la partie la plus intéressante du projet. Pourquoi ? Parce que le programme mBlock réalisé constitue le cerveau de la voiture, et oui, le programme mBlock permet au robot d'interpréter ce qu'il capte (ultrasons ou couleurs) et ce qui lui est envoyé (variables d'App Inventor). Sans programme, une voiture MakeBlock n'est qu'un bout de métal sans fonction, immobile. Ce programme doit être cohérent et bien construit.
Mon programme est bien organisé et me permet donc de le modfier aisément et régler les éventuels problèmes. Il remplit 3 fonctions importantes du robot :
1°/ Le Contrôle Manuel
Cette partie repose essentiellement sur la communication avec App Inventor. C'est le mouvement de la voiture lié aux boutons directionnels de l'interface. Le programme mBlock s'occupe d'activer les moteurs à la vitesse idéale pour que la voiture se déplace dans la direction voulue. Une communication d'une variable permet au robot d'agir de la bonne manière.
(Ex : 1 -> avancer tout droit, les deux moteurs à la même vitesse positive)
2°/ La Détection d'Obstacle
Ce morceau du programme assure la sécurité du robot. Pourquoi donc ?
Et bien imaginez un conducteur négligeant qui fait avancer sa voiture à la vitesse maximale droit dans un mur. Le robot pourrait voir certains de ses composants endommagés. Cela constitue un problème conséquent.La détection d'obstacle est la solution : à partir d'une certaine distance d'un objet, la voiture ne pourrait plus avancer avant d'avoir rejoint une distance correcte de l'obstacle.
J'ai donc modifié mon programme avec une variable liée au capteur d'ultrasons (situé à l'avant du véhicule).
40cm a été la distance limite par rapport à un obstacle jusqu'à laquelle on pouvait avancer choisie par M.Maréchal.
De plus, une fonction de recul automatique a été ajouté : si la voiture se retrouve malencontreusement à 20cm ou moins d'un obstacle elle recule jusqu'à se retrouver à 40cm de l'obstacle en question.
3°/ Le Suivi de Ligne
Le suivi de ligne se base sur les couleurs vues par les capteurs de la carte de suivi de ligne (située à 1cm du sol). Ces capteurs ne voient que deux couleurs : le noir et le blanc. Comme son nom l'indique, le suivi de ligne consiste simplement dans le fait de faire suivre une ligne au sol au robot (épaisse, moyenne ou étroite).
Le programme pour suivre cette ligne est on-ne-peut simple :
-Si les deux capteurs voient blanc ou noir, la voiture avance tout droit
-Si un des capteurs voit du blanc et l'autre, du noir alors a voiture tourne pour s'approcher du noir. (si la ligne à suivre est noire, sinon c'est l'inverse)
Pour finir, voici ma synthèse et mon programme mBlock en pièce jointe ;)