Robotique : programmation sur PC

Présentation de l'environnement de programmation sur PC :
logowebs.jpg
© Copyright 2018 Constellations & Galaxies
Environnement de programmation sur PC : il est hors du cadre de l'atelier "standard" (programmation sur tablette fournie avec chaque kit) mais pourrait être employé sur des projets spécifiques si l'établissement fourni l'infrastructure informatique (PC sous Windows 7 ou +, téléchargement et installation de l'application gratuite).
Dans les grandes lignes, l'environnement est analogue à celui sur tablette avec des fonctionnalités plus avancées et on retrouve la même disposition de l'interface.
Nota : l'application comporte aussi des ressources pédagogiques (versions "enseignant" ou "élève") que nous n'aborderons pas ici.
Illustration du système de programmation graphique sur tablette Androïd des robots construits avec les kits Lego Mindstorms EV3 (photo Lego).
cg001006.jpg cg062004.jpg cg001004.jpg cg001003.jpg cg006001.jpg
Exemple d'une configuration de test en connexion USB pour programmation et expérimentation d'un comportement sans construction complète du robot. Une connexion Blutooth est possible aussi si le PC dispose de ce mode de communication.
Le tableau d'information sur l'unité EV3 connectée permet de connaître la configuration de brancjhement des moteurs/capeturs sur les ports (ici moteur sur A et capteur tactile sur 1) mais aussi d'avoir les informations sur l'unité EV3 (niveau de charge de la batterie, type de connexion, mémoire disponible...) ou encore la liste de toutes les unités connectées (si plusieurs) et dans quel mode.
La bibilothèque des blocs logiciels est plus riche que sur tablette avec les mêmes actions (onglet vert) mais un contrôle de flux (onglet orange) supplémentaire : "interruption de boucle". Ce sont surtout des nouvelles catégories de blocs qui multiplient les possibilités :
Nota : le dernier onglet (cyan) permet de stocker des blocs logiciels personnels pour les réutiliser sans avoir à les reconstruire à chaque fois.
Exemple de petit programme réalisé pour la plateforme de test présentée plus haut (photo) et vaguement inspiré de l'exemple "capteur tactile" vu en programmation directe sur l'unité EV3 (voir la page Educator). Les blocs bleu sont des commentaires explicatifs des principales étapes. Comportement : après l'appui sur le capteur tactile on entre dans la boucle où le moteur effectue (à 50% de sa puissance) un nb de tours compris entre 1 et 3 suite à un tirage aléatoire (bloc rouge), et le processus s'arrêtera si l'on relâche le capteur tactile, le programme se terminant par l'émission d'un son (par l'unité EV3) pendant 1s.
Plateforme de test utilisée pour ce programme : unité EV3 en connexion USB avec le PC équipée d'un gros moteur et du capteur de couleurs. Petite "plaque" construite avec le kit pour simuler les couleurs d'un feu tricolore : rouge, orange (en fait jaune) et vert.
Exemple de programme utilisant les sélecteurs (branchements conditionnels) :
Détail du début du programme (commentaires en bleu) : l'éclairage de l'unité EV3 passe au rouge pour indiquer que le robot est prêt, le sélecteur (branchement conditionnel) teste le capteur de couleur et s'il détecte du vert passe l'EV3 en vert et démarre le moteur, sinon il ne se passe rien. La boucle principale (cadre orange supérieur) enchaîne les autres tests du capteur pour la suite du comportement.
Vue d'ensemble du programme : une fois le programme démarré (voir ci-dessus), la boucle principale répète un enchaînement de trois blocs "sélecteur" (branchement conditionnel) ayant des fonctionnements analogues à celui décrit pour le premier. Si le capteur de couleur détecte du vert (1er sélecteur), l'EV3 s'éclaire en vert et le moteur démarre à 50% de sa puissance. S'il détecte du jaune (figurant un feu orange), l'EV3 devient orange et le moteur passe à 25% de sa puissance (2ème sélecteur). Si c'est du rouge (3ème sélecteur), l'Ev3 devient rouge, le moteur stoppe et l'EV3 émet des bips (0.1s toutes les 0.4s) en attendant un nouveau changement de couleur. La boucle principale s'arrête par appui sur le bouton de l'EV3 (en principe quand le robot est arrêté au rouge).
Bien entendu, ce comportement est très schématique et ne reflète pas vraiment le comportement souhaité d'un véhicule abordant un feu tricolore (par exemple le passage du rouge à l'orange démarre le moteur à 25%, ce qui n'est pas souhaitable même dans les pays où cette séquence est programmée aux intersections pour prévenir le conductuer du prochain redémarrage).
Retour à la page de l'atelier de programmation robotique...
iconagenda.jpg
cg001007.jpg