Robotique et programmation au LP2I

J’ai participé à une réunion sur le développement d’une formation pour les enseignants sur le thème de la robotique et de la programmation, sur la plateforme M@gistère de l’Académie de Poitiers.

Cela a été l’occasion pour moi de commencer à faire le point sur mes choix actuels et mes propositions pour l’avenir en ce qui concerne l’enseignement de la robotique et de la programmation. Je précise tout de suite que je suis convaincu que de nombreux choix peuvent être communs pour le niveau collège et le niveau lycée.

Cet article est en cours de rédaction !

1) Présentation de ma situation actuelle

– J’enseigne les Sciences de l’Ingénieur au Lycée Pilote Innovant International de Jaunay-Clan (près de Poitiers).
Je gère depuis 2012 le blog de la SI au LP2I.
– J’ai effectué depuis 3 ans un complément de service en Technologie au collège Jean Macé de Châtellerault. Je n’enseignerai pas au collège l’année prochaine.
Je gère depuis 2013 le blog de la techno au collège Jean Macé.

2) Matériel utilisé pour les activités en robotique et programmation
– Carte électronique programmable

Je travaille avec Arduino depuis 3 ans, aussi bien au lycée qu’au collège.

Je conseille d’utiliser des cartes Arduino qui sont compatibles avec le design de référence actuel, à savoir l’Arduino Leonardo. Il s’agit des cartes Arduino Micro (mon choix), Arduino Roméo (dont le circuit L298 est obsolète), Arduino Yun (dont l’alimentation ne possède pas de régulateur 5V mais qui est très intéressante quand même).

L’arduino Micro utilise le même schéma électrique et les mêmes composants que l’Arduino Léonardo (mais pas la même connectique).

Je conseille d’utiliser cette Arduino Micro avec la carte d’entrée/sortie DFR0012 de DFRobot :
http://www.gotronic.fr/art-shield-e-s-dfr0012-pour-nano-19256.htm
http://www.dfrobot.com/wiki/index.php/Arduino_Nano_IO_Shield_(SKU:_DFR0012)
http://www.dfrobot.com/index.php?route=product/product&keyword=DFR0012&category_id=0&description=1&model=1&product_id=68

L’ensemble DFR0012 + Arduino Micro remplace avantageusement une Arduino Leonardo avec une autre carte d’entrée/sortie, essentiellement pour des questions de connectique et de modularité, mais aussi de prix.
Il existe aussi une solution low cost pour remplacer la DFR0012 :
http://www.banggood.com/5Pcs-Multi-Function-Funduino-Nano-Shield-Nano-Sensor-Expansion-Board-p-970410.html (attention lot de 5)
La connectique est un peu plus courte : 4 broches de moins (inutiles), mais compatible Arduino Micro.
– Imprimante 3D

J’utilise une Tobeca 2 depuis 2 ans et j’envisage l’achat d’une imprimante 3D de marque BQ (une Hephestos 2 à 850 €, en kit).

Mise à jour du 11/09/2016 : J’ai rédigé ici un article sur notre projet de création d’un FabLab au LP2I.

– Autre matériel utilisé

Article présentant une partie du matériel que j’utilise au lycée et au collège.

 

3) Logiciels utilisés pour les activités en robotique et programmation

– Programmation Arduino
Après deux années d’utilisation d’Ardublock, je suis passé sur Blockly Arduino développé par Sébastien Canet, enseignant en Technologie, et formateur, dans l’académie de Nantes.

Article présentant l’intérêt pour moi du logiciel Blockly Arduino.

– Modélisation 3D

Je cherche depuis 2 ans une alternative à SolidWorks. J’ai choisi cette année ces deux logiciels :
. BlocksCAD
Il s’agit d’un logiciel conçu pour faire de la modélisation en 3D avec des enfants, avec le principe du logiciel Scratch.
C’est une application web libre et gratuite, traduite en français, basée sur blockly et OpenSCAD.
J’ai déjà écrit un premier article sur BlocksCAD.

. Onshape
C’est un nouveau logiciel professionnel de CAO 3D, sorti en décembre dernier qui a pour objectif de concurrencer directement SolidWorks avec une approche originale et innovante. Il est compatible en import et en export avec de nombreux logiciels dont SolidWorks. C’est une application Web dont l’usage est gratuit pour un usage pédagogique, sans aucune limitation. Des applications multi-plateforme existent pour tablettes et smartphones (y compris pour éditer des modèles 3D). Onshape me semble complémentaire de BlocksCAD pour un FabLab équipé d’une imprimante 3D, que ce soit au lycée ou au collège.
Je suis en train de découvrir Onshape. Je souhaite écrire prochainement un premier article sur Onshape pour faire connaitre ce logiciel qui marquera probablement un tournant dans la CAO 3D, notamment dans l’enseignement et dans les FabLabs où les moyens manquent pour acheter des licences ou des ordinateurs performants.
Lien vers l’application web Onshape.
Lien vers l’application Onshape pour Androïd.

Mise à jour du 11/09/2016 : j’ai rédigé ici un nouvel article sur Onshape.

 

4) Propositions pour le choix des moyens à utiliser pour enseigner la robotique et  la programmation au collège et au lycée
– Privilégier le matériel et les logiciels open source.
– Privilégier le matériel et les logiciels compatibles Arduino qui est devenu un standard de fait.
– Privilégier la carte Arduino Leonardo et ses dérivés (l’Arduino Micro notamment) qui correspond au design de référence actuellement. L’Arduino Uno est obsolescente (et n’utilise pas un câble USB micro standard).
– Privilégier les logiciels de programmation graphiques, avec une syntaxe proche de Scratch, devenu un standard de fait. La programmation en langage C est hors programme, aussi bien au collège qu’au lycée pour la filière S.
– Privilégier les logiciels de programmation permettant aux enseignants (directement ou avec l’aide d’autres enseignants) de créer leurs propres blocs sans utiliser des outils logiciels complexes, et sans avoir à passer par une entreprise marchande. ce n’est malheureusement pas le cas d’Ardublock.

– Privilégier une utilisation de l’imprimante 3D comme moyen de prototypage rapide permettant de valider des solutions techniques de manière authentique, avec de la fabrication de pièces ayant un véritable rôle dans la chaîne d’information ou la chaîne d’énergie du système (par exemple des pièces permettant de transmettre un mouvement).

– Privilégier des supports low cost utilisables dans les établissements disposant de peu de moyens.

– Privilégier les supports motivants pour les élèves.

 

5) Proposition de parcours de formation en robotique et programmation au collège et au lycée

5.1) Approche fonctionnelle

Chaîne d’information et chaîne d’énergie.

Solutions techniques associées à chaque fonction.

Exemple de support possible : robot aspirateur

Chaines fonctionnelles

Schéma fonctionnel partiel d’un robot aspirateur : il représente des flux d’informations (en vert ici) et des flux d’énergie (en rouge ici). Source : LP2I

Document présentant quelques rappels sur la chaîne d’information et la chaîne d’énergie d’un robot aspirateur :

Chaine d’énergie et chaine d’information 120616

 

5.2) Solutions techniques pour acquérir des informations et générer des commandes pour la chaîne d’énergie

– Cas d’un capteur de type Tout Ou Rien

Exemple = capteur de collision.

– Cas d’un capteur analogique

Exemple = capteur de vide qui permet d’acquérir la distance entre le robot et le sol.

– Démarche expérimentale

Moyens matériels nécessaires = carte Arduino + câble USB + capteur de type tout ou rien (un simple contact suffit, sinon on peut simuler avec le clavier du PC).

Moyens logiciels = application web Blockly Arduino.

Interface de dialogue = écran du PC

– Ressources documentaires

A compléter

 

5.3) Solutions techniques pour alimenter la chaîne d’énergie et piloter des actionneurs

– Cas d’un servomoteur

C’est une solution simple qui intègre un moteur à courant continu, un réducteur (qui permet de réduire la vitesse de rotation et d’augmenter le couple), une interface de puissance, un capteur de position qui permet de commander un servomoteur directement en position. La rotation est généralement limitée à environ 180°.

Il existe aussi des servomoteurs commandés en vitesse appelés servomoteurs à rotation continue.

Un servomoteur peut être directement commandé par une carte Arduino. Sa tension nominale d’alimentation est généralement de 5V ce qui en simplifie la mise en oeuvre avec une carte Arduino.

. Approche expérimentale

Matériel nécessaire : une carte Arduino + un câble USB + un petit servomoteur low-cost type SG90 par exemple.

– Cas d’un moteur à courant continu avec une interface de puissance permettant de contrôler le sens de rotation et la vitesse de rotation.

. Approche expérimentale

Matériel nécessaire : une carte Arduino + un câble USB + une interface de puissance moteur standard + un petit motoréducteur basse tension (fonctionnant sous 5V pour éviter une deuxième alimentation en plus de l’USB).

 

5.4) Concevoir des pièces mécaniques pour transmettre un mouvement issu d’un actionneur

– Utilisation de BlocksCAD et de OnShape

Mise à jour du 11/09/2016 : j’ai rédigé ici un nouvel article sur Onshape.

5.5) Fabriquer rapidement le prototype d’un mécanisme pour valider une solution

– Utilisation d’une imprimante 3D

Article en cours de rédaction !