Page 1 of 1

Lance du Python sur la micro:bit avec ta TI-Nspire CX II

Unread postPosted: 26 Oct 2020, 16:21
by critor
12212Depuis plusieurs années, Texas Instruments a réalisé de gros efforts pour rendre la programmation de ses calculatrices accessible à tous. Le constructeur a prêté une attention toute particulière aux plus jeunes et non initiés, souhaitant leur permettre de créer tous les projets qu'ils imaginent sans avoir à se concentrer sur des difficultés annexes. :)

Nous pouvions déjà citer l'interface TI-Innovator Hub, le robot pilotable TI-Innovator Rover, la grille programmable TI-RGB Array ou encore l'adaptateur TI-SensorLink pour capteurs analogiques Vernier.
Tous ces éléments ont de plus l'avantage d'être utilisables directement avec le langage Python des calculatrices concernées, faisant de l'écosystème Texas Instruments le seul Python connecté ! :bj:

Un superbe support pour les enseignements scientifiques au lycée surtout maintenant que tous parlent le même langage de programmation, notamment en SNT, spécialité NSI et Physique-Chimie, avec le gros avantage de la mobilité. En effet, les programmes produits et données collectées restent présents dans la calculatrice apportée par chaque élève à chaque cours, ce qui allège la charge logistique de l'enseignant. Données et algorithmes pourront donc être traités / travaillés à la prochaine séance, en devoir à la maison ou même de façon transdisciplinaire en collaboration avec un autre enseignant ! :D

129591295812957Et pour cette rentrée 2020 grande nouvelle et révolution, tu n'as plus besoin de t'équiper en TI-Innovator pour bénéficier de ces formidables avantages. En effet, la TI-83 Premium CE Edition Python se voit rajouter la gestion du nanoordinateur BBC micro:bit programmable en Python dont tu étais peut-être déjà équipé·e ! :bj:

La carte micro:bit est initialement un projet lancé par la BBC (British Broadcasting Corporation), le groupe audiovisuel public britannique, accompagné de nombre de partenaires dont ARM, Microsoft et Samsung. Elle fut distribuée gratuitement à un million d'élèves britanniques de 11 et 12 ans.

Le nom rend hommage au précédent succès du groupe dans ce domaine, le microordinateur à vocation pédagogique BBC Micro des années 1980, l'équivalent britannique de par son adoption à nos microordinateurs Thomson MO5 et TO7 inondant écoles, collèges et lycées à la fin de cette décennie dans le cadre du plan IPT (Informatique Pour Tous).

129621296112960La carte micro:bit dans sa version actuelle inclut :
  • un afficheur, grille programmable de 5×5= 25 diodes rouges adressables, bien adapté pour l'affichage de motifs éventuellement animés ou encore de texte défilant
  • nombre de capteurs intégrés :
    • capteur de luminosité (lié aux diodes)
    • capteur de température (sur le processeur)
    • 2 boutons poussoirs
      A
      et
      B
      programmables de part et d'autre, comme sur les premières manettes et consoles de jeux portables de chez Nintendo
    • accéléromètre 3D, permettant de détecter les variations d'accélération et par conséquence diverses actions : secouer, pencher, chute libre, ...
    • boussole magnétique 3D, pour détecter cette fois-ci les champs magnétiques
  • connectivité Bluetooth 4.0 basse énergie 2,4 GHz maître/esclave


12277La carte micro:bit utilise un connecteur micro-USB et ta calculatrice un mini-USB.

Pour relier les deux une solution est d'adjoindre un adaptateur USB A femelle ↔ USB mini-B OTG mâle au câble micro-USB venant avec ta carte micro:bit, testée avec succès.

1296512964Pour moins d'encombrement, tu as aussi la solution d'utiliser un câble direct, un USB micro-B mâle ↔ USB mini-A mâle, disponible par exemple chez StarTech et que nous avons testé avec succès.

Mais Texas Instruments n'avait hélas rien publié de similaire pour les TI-Nspire. :'(

12970Dans un article précédent, nous t'expliquions le fonctionnement de la gestion micro:bit par la TI-83 Premium CE Edition Python.

Les menus micro:bit ainsi rajoutés sur la TI-83 Premium CE Edition Python envoient en fait du code Python pour exécution à la carte micro:bit, qui dispose de son propre interpréteur Micropython.
Par exemple, mb_disp.display.show("Image.PACMAN") envoie en fait le code display.show(Image.PACMAN) encadré des bons caractères de contrôle.

Après analyse du protocole de Texas Instruments par Pavel, nous te fournissions alors une fonction Python utilisant le module ti_hub pour te permettre d'envoyer directement ton code Python pour exécution à la carte micro:bit, t'offrant ainsi bien plus de libertés et donc possibilités que les menus de la TI-83 Premium CE Edition Python :
Code: Select all
from ti_hub import *

def mb_run(code):
  send('\x05') # enter paste mode (Ctrl-E)
  send(code)
  send('\x04') # exit paste mode (Ctrl-D)


Ainsi qu'une fonction pour récupérer les éventuelles sorties ainsi générées sur la console de la carte micro:bit :
Code: Select all
def mb_get():
  return get().split("\r\n")[-3]

13179Nous avons donc aujourd'hui le plaisir de t'adapter ces deux fonctions pour TI-Nspire CX II. Il suffit pour cela essentiellement de remplacer l'utilisation du module ti_hub spécifique à la TI-83 Premium CE Edition Python, par celle du module ti_innovator spécifique à la TI-Nspire CX II :
Code: Select all
from ti_innovator import *

def mb_run(code):
  send('\x05') # enter paste mode (Ctrl-E)
  send(code)
  send('\x04') # exit paste mode (Ctrl-D)

def mb_get():
  return getStr().split("\r\n")[-3]

En ce jour historique, voici donc la toute première prise de contrôle d'une carte micro:bit par une TI-Nspire CX II ! :bj:

Téléchargements :