Une façon d'enseigner le codage auprès des plus jeunes, est l'interfaçage avec le monde réel.
L'élève peut ainsi, sans besoin d'une initiation théorique qui pourrait avoir tendance à le faire décrocher, constater lui-même de façon concrète/visuelle les bugs de son code, apporter une correction et tester à nouveau jusqu'à obtenir le comportement souhaité.
Une approche déjà tentée à la fin des années 80 avec le plan
Informatique Pour Tous (IPT) encourageant l'apprentissage par tous du langage LOGO, était pour les
rares enseignants
motivés le contrôle d'un robot programmable en LOGO : la
Tortue Jeulin.
Les
nouveaux programmes du primaire et du collège applicables à compter de la rentrée 2016 prévoient un enseignement du code dès le collège, là où l'algorithmique n'était jusqu'à présent introduite qu'en classe de Seconde.
Mais l'esprit de ce nouvel enseignement est fort différent de celui du lycée, le programme spécifiant nombre d'applications très concrètes : pilotage de robots, programmation de jeux, création d'applications...
Nous tirions déjà la sonnette d'alarme dans l'article en question : la calculatrice graphique, actuellement la plateforme de référence pour l'initiation à la programmation de tous les lycéens, n'est plus adaptée à l'esprit de ce nouveau programme.
Lors de notre couverture de plusieurs salons enseignants l'année dernière dont l'
Orme 2.15 à Marseille, nous remarquions que les enseignants qui souhaitaient aller plus loin avec leurs élèves dans la programmation choisissaient d'autres plateformes, notamment des cartes de développement comme celles du constructeur
Arduino.
Certes, les élèves ne prennent généralement pas de calculatrice graphique au collège.
Mais d'ici quelques années, ces nouveaux programmes du collège seront complétés par de nouveaux programmes du lycée, et il serait pertinent que ces derniers soient conçus dans le même esprit.
Ajoutez à cela les générations montantes d'élèves qui auront été initiés à la programmation sur d'autres plateformes et qui feront forcément évoluer les pratiques de leurs enseignants au lycée.
Il est certes possible de réaliser des jeux avec nos calculatrices graphiques. On pourrait également imaginer que les constructeurs historiques
TI/
Casio/
HP sortent des outils de développement visuels, mettant la création d'applications pour calculatrices à la portée des plus jeunes pas forcément à l'aise avec l'écriture.
Mais si il y a bien un thème qui cause problème, c'est le pilotage de robots, c'est-à-dire l'interfaçage avec le monde réel pour lire des capteurs et contrôler des actionneurs.
En effet, en évoluant en calculatrice graphique ciblant les élèves, l'
ordinateur de poche ciblant les ingénieurs dans les années 80 a énormément perdu de sa connectivité.
Les calculatrices TI notamment disposent bien d'une gamme très riche de capteurs, provenant quasiment tous du constructeur
Vernier.
Mais ces capteurs sont assez chers, pouvant parfois atteindre plusieurs 10aines d'euros pour ce que l'on peut supposer être une résistance variable avec 2 fils...
En prime, ils utilisent des prises BT
(British Telecom) dont la connexion à la calculatrice nécessite des interfaces
TI-CBL2,
Vernier LabPro ou
TI-Nspire Lab Cradle propriétaires et fort chères !
Des solutions qui en théorie pourraient passer pour des projets collectifs dans un budget d'établissement, mais certainement pas dans des projets organisés par un enseignant ou élève seul, ni même par un petit groupe d'élèves comme pour les TPE au lycée.
D'autre part, si il est donc possible de lire l'état d'un capteur, il n'y a aucune possibilité de changer l'état d'un actionneur
(diode, moteur...).
Dans le temps sur les TI-z80 et TI-68k monochromes les interfaces
TI-CBL2 et
Vernier LabPro permettaient de contrôler des interfaces robotiques comme le
Vernier DCU (Digital Control Unit), en utilisant des programmes en assembleur fournis par le constructeur. Mais ces programmes n'ont jamais été portés sur les derniers modèles TI-z80 couleur, et la programmation assembleur est farouchement combatue également sur
TI-Nspire.
Le
TI-Robot lui aussi nécessite une connexion série mini-Jack qui a disparu des derniers modèles.
C'est d'ailleurs exactement le même problème chez
HP et
Casio : des capteurs rares et chers, avec des connecteurs spéciaux nécessitant des interfaces dédiées assez chères incompatibles entre elles, et peu ou pas du tout d'actionneurs.
Depuis plusieurs semaines, nombres d'indices cohérents nous font penser que
Texas Instruments a décidé de réagir et prépare le support d'un nouveau périphérique USB pour l'ensemble de sa gamme actuelle de calculatrices graphiques :
- 19 janvier 2016 - nouvel OS 5.1.5 pour TI-83 Premium CE : ajout de commandes d'entrée/sorties USB
- 16 février 2016 - nouvel OS 4.2 pour TI-Nspire CX :
- ajout de commandes similaires pour le langage TI-Basic
- premiers exemples d'utilisation de ces nouvelles commandes, faisant apparaître une sorte de langage intermédiaire de script pour la communication avec le nouveau périphérique :
- Code: Select all
Send "SET GREEN 1 ON"
Get "READ GREEN 1", green1
Wait 0.5
Send "SET GREEN 1 OFF"
Nous pensions au départ à une poursuite du partenariat de longue date avec
Vernier (jusqu'à présent perdant pour ce que l'on ne peut pas en voir en Europe) avec une nouvelle interface USB pour accueillir les capteurs.
Mais la présence de nouvelles commandes de sortie
'send', suppose donc que l'on puisse brancher également des actionneurs, quasiment inexistants chez le contructeur en question.
Le langage de script pour la communication avec le nouveau périphérique nous faisait penser à quelque chose de beaucoup plus évolué, une interface programmable...
Et puis,
Adriweb nous a pointé hier le nouveau
guide de référence du langage Lua dans le dernier OS TI-Nspire 4.2, guide dans lequel un tout nouveau chapitre est rajouté :
"Chapter 21: Asynchronous Serial Interface", c'est-à-dire
ASI.
Ce qui nous amène donc à penser que le mystérieux périphérique qui nous tient en haleine depuis des semaines serait une carte de développement...
Grâce à un
programme Lua écoutant les connexions ASI développé entre temps,
Jimbauwens a testé hier la connexion sur ordinateur d'une carte de développement
Arduino Leonardo.
Et bingo, le logiciel
TI-Nspire 4.2 la détecte !
Par contre, le même programme Lua est resté totalement impassible lorsque la même carte a été branchée sur une calculatrice
TI-Nspire CX 4.2...
Adriweb s'est de son côté dépêché de braver le froid glacial de Montréal pour aller acheter une autre carte de développement, l'
Arduino Uno, qui de même a été détectée sur l'ordinateur par le logiciel
Nspire, mais pas sur la calculatrice.
Cette nouvelle fontionnalité serait-elle désactivée sur calculatrices car réservée aux ordinateurs et tablettes ?
Ou alors faudrait-il peut-être disposer du tout dernier modèle
TI-Nspire CX CR4 ?
Pour ma part, je me suis pressé pour vous de regarder en ligne qu'est-ce que je pouvais trouver comme cartes de développement pouvant être remises en main propre sous 24 heures, mais avec une autre approche ...
Puisque les
Arduino ne marchaient apparemment pas sur calculatrice, j'ai en effet choisi des cartes de développement d'un autre constructeur, et il se trouve justement que
Texas Instruments en fabrique également.
Peut-être l'entreprise a-t-elle privilégié ses propres produits ?
Il n'y avait pas tellement de choix, et le hasard fait donc que j'ai acheté deux cartes de développement
TI-LaunchPad différentes.
Nous voici donc avec notre premier candidat au test, une carte de développement
TI-LaunchPad Stellaris LM4F120.
Le logiciel
TI-Nspire enseignant version 4.2 détecte bien la carte en tant que
"COM9" selon notre programme Lua.
Mais là encore, ce même programme reste tristement muet sur la calculatrice
TI-Nspire CX, malgré un branchement apparemment correct puisque la calculatrice alimente correctement le périphérique.
Notre deuxième et dernier candidat au test est donc une
TI-LaunchPad MSP-EXP432P401R.
Le logiciel
TI-Nspire enseignant version 4.2 détecte ici deux périphériques,
"COM10" et
"COM11".
Mais cette fois-ci, jackpot, la calculatrice
TI-Nspire CX 4.2 détecte bien la carte !
Plus précisément, sur son
"COM1" la calculatrice voit un périphérique
"0451_bef3.0".
Le hasard fait donc bien les choses, sur deux cartes de développement achetées une des deux était compatible.
On peut donc croire au final que dans sa version calculatrice, l'OS 4.2 n'embarque qu'un nombre limité de pilotes ciblant des modèles de cartes de développement spécifiques, dont la
Arduino Uno et la
TI-LaunchPad Stellaris ne font pas partie.
Et d'ailleurs, j'aurais peut-être pu éviter d'acheter cette dernière carte pour rien, puisque maintenant muni de cette référence je me rends compte que certains professeurs partenaires de
Texas Instruments citent déjà une compatibilité spécifique de la
TI-Nspire CX avec les cartes
TI-LaunchPad MSP43x, en particulier
MSP430 et
MSP432.
Texas Instruments offre un
large choix de cartes de développement
TI-LaunchPad MSP43x, avec une entrée de gamme à moins de 10€ et aucun modèle ne dépassant les 20€ !
Grâce aux
TI-LaunchPad MSP43x, connecte enfin à moindre coût ta
TI-Nspire CX au monde, pour tes projets de ICN, TPE ou ISN !
Un changement radical de politique après des décennies de partenariat propriétaire avec Vernier, une véritable révolution, une ouverture inattendue rendant à nouveau la calculatrice graphique Texas Instruments adaptée à de futurs programmes du lycée écrits dans le même esprit que ceux du collège pour la rentrée 2016 !
Une toute nouvelle aventure commence donc aujourd'hui avec ta calculatrice Texas Instruments. Après avoir démocratisé l'écran couleur des calculatrices pour la rentrée 2015, l'entreprise s'apprête donc maintenant à en démocratiser la connectivité !
A très bientôt pour plus d'informations !