π
<-
Chat plein-écran
[^]

Module Python accéléromètre ADXL335 pour TI-Nspire CX II

:32tins: :32tinsktpb: :32tinsktpn: :32tinscas: :32tinstpkc: :32tinstpktpb: :32tinstp: :32tinscastp: :32tinscmc: :32tinscx: :32tinscxcas:

Module Python accéléromètre ADXL335 pour TI-Nspire CX II

Unread postby critor » 12 Apr 2021, 20:49

12212
Texas Instruments
fait de gros efforts pour rendre la programmation de ses calculatrices accessible à tous et toutes. 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 imaginables sans avoir à se concentrer sur des difficultés annexes. :)

Sur les calculatrices
TI-Nspire CX
,
TI-83 Premium CE
et
TI-84 Plus CE
, il était possible de connecter l'interface , le robot pilotable , la grille programmable ou encore l'adaptateur
TI-SensorLink
pour capteurs analogiques
Vernier
.
Tous ces éléments ont de plus le gros avantage d'être utilisables directement avec le langage
Python
des derniers modèles
TI-Nspire CX II
,
TI-83 Premium CE Edition Python
et
TI-84 Plus CE Python Edition
, faisant de l'écosystème
Texas Instruments
le seul
Python
connecté ! :bj:

Un superbe support pour les enseignements scientifiques au lycée maintenant qu'ils partagent le même langage de programmation, notamment en
SNT
, spécialité
NSI
,
SI
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 peuvent 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

En plus de son capteur de luminosité intégré
(BRIGHTNESS)
, le
TI-Innovator Hub
te permet de connecter des capteurs externes :
  • soit sur ses ports
    IN 1
    ,
    IN 2
    et
    IN 3
    des capteurs
    Grove
  • soit sur son port
    breadboard
    à 10 broches programmables

Nombre de capteurs différents sont gérés et interrogeables directement d'une simple ligne.

Commençons déjà par les capteurs les plus simples supportés aussi bien au format
Grove
que
breadboard
:
  • LIGHTLEVEL : capteur de luminosité
  • MOISTURE : capteur d'humidité
  • MOTION : capteur de mouvement infrarouge
  • POTENTIOMETER : potentiomètre rotatif
  • TEMPERATURE : capteur de température
  • BUTTON : bouton poussoir
  • SWITCH : interrupteur
75187590752075217516


D'autres capteurs plus évolués sont supportés uniquement au format
Grove
:
  • RANGER : capteur de distance à ultrasons
  • LOUDNESS : intensité sonore
  • DHT : capteur numérique d'humidité et température
  • MAGNETIC : capteur de champ magnétique
751275197522

Très joli, mais ne manquerait-il pas encore quelque chose pour des projets
STEM
? Il n'y a pas d'accéléromètre, alors que c'est un capteur très répandu de nos jours
(smartphones, montres connectées notamment pour le fitness, voitures notamment pour les airbags ou encore l'aide à la conduite...)
.

Les accéléromètres sont des micro systèmes électromécaniques
(MEMS)
détectant selon 3 axes l'accélération momentanée de l'objet dont ils font partie. Les mesures brutes superposent les effets de 2 phénomènes physiques, avec :
  • une composante statiques qui est la gravité s'appliquant à tout objet sur Terre
  • et une composante dynamique
    (accélération ou décélération dans le référentiel galiléen)

L'accéléromètre est ainsi un élément clé qui ouvre la porte à nombre de projets concrets.

9349Et bien nous ne t'avions pas encore tout dit. Il y avait déjà une solution même si elle est très loin d'être pleinement satisfaisante.

L'interface
TI-SensorLink
te permet d'adapter les capteurs
Vernier
analogiques au format
Grove
, et donc de les connecter aux ports
IN 1
,
IN 2
ou
IN 3
.

Outre l'ensemble des types de capteurs cités ci-dessus lorsqu'il existe un équivalent dans la gamme
Vernier
, cela permet en prime de profiter de capteurs supplémentaires :
  • ENERGY : capteur d'énergie
    VES-BTA
    (voltage + intensité)
  • LIGHT : capteur de luminosité
    LS-BTA
  • ACCEL : accéléromètre faible G
    LGA-BTA

1640Le problème ? Et bien le
LGA-BTA
est un accéléromètre unidirectionnel, et absolument pas un accéléromètre 3D. C'est-à-dire qu'il ne mesure qu'une seule des 3 composantes 3D.

Ses possibilités et applications sont donc très restreintes, à moins d'en connecter 3 et de les disposer de façon orthogonale, ce qui serait quand même contraignant et cher...


Par contre, le
TI-Innovator Hub
te permet également d'utiliser des capteurs non supportés, aussi bien analogiques
(ANALOG.IN)
que numériques
(DIGITAL.IN)
.

Pour les plus simples une connexion
Grove
peut suffire, tu auras juste à interpréter correctement la valeur brute mesurée.

Pour les plus complexes il faut s'orienter vers le port
breadboard
et gérer chaque contact nécessaire, c'est-à-dire écrire un véritable pilote pour le capteur ciblé.

1374913750Pour rester sur les accéléromètres 3D, on peut citer par exemple l'accéléromètre
ADXL335
, dont les spécifications sont publiques.

Aujourd'hui
Hans-Martin Hilbig
, formateur
T3
pour
Texas Instruments
, s'appuie sur ces spécifications afin de te sortir
ADXL335driver.py
, un module
Python
additionnel pour
TI-Nspire CX II
rajoutant le support de l'accéléromètre
ADXL335
! :bj:

ADXL335driver
est donc à installer dans le dossier
/PyLib/
de ta calculatrice.

Il apparaît alors aux menus
Python
de ta calculatrice, mais n'a visiblement pas été conçu pour y lister ses fonctions. Mais pas grave, nous allons voir cela ensemble.

Donc, premières choses à faire, importer le module et construire la classe qui va nous permettre d'interroger l'accéléromètre. C'est on ne peut plus simple :
Code: Select all
from ADXL335driver import *
myadxl = adxl()

La fonction
adxl()
prend en paramètres optionnels les 3 contacts
breadboard
utilisés pour récupérer les 3 mesures en x, y et z.
Par défaut, l'appel adxl() est équivalent à l'appel adxl("BB5", "BB6", "BB7").

13751Niveau connexions physiques, nous relions :
  • la broche d'alimentation
    VCC
    de l'accéléromètre au
    3.3V
    du
    breadboard
    TI-Innovator Hub
  • la broche de masse
    GND
    de l'accéléromètre à l'une des 8 masses du
    breadboard
    TI-Innovator Hub
  • ici la broche
    X_out
    de l'accéléromètre au
    BB5
    du
    breadboard
    TI-Innovator Hub
  • ici la broche
    Y_out
    de l'accéléromètre au
    BB6
    du
    breadboard
    TI-Innovator Hub
  • ici la broche
    Z_out
    de l'accéléromètre au
    BB7
    du
    breadboard
    TI-Innovator Hub

L'exécution du code précédent te propose déjà une petite procédure de calibrage. Rien de bien complexe, tu devras juste poser l'accéléromètre à plat puis le retourner.

Cela nous sera très utile par la suite afin d'obtenir non plus de simples mesures brutes, mais des mesures directement compréhensibles et réutilisables.

Commençons déjà par les 3 mesures brutes
(entiers de 10 bits)
. Tu peux les récupérer séparément ou ensembles via les méthodes suivantes :
  • myadxl.get_adcx()
  • myadxl.get_adcy()
  • myadxl.get_adcz()
  • myadxl.get_adcxyz()

13752Si tu as calibré correctement l'accéléromètre, les méthodes suivantes vont te permettre d'interpréter les mesures brutes de façon totalement transparente :
  • myadxl.get_gforcexyz()
    pour récupérer en unités
    g
    l'accélération appliquée à ton accéléromètre
    (dont dans tous les cas la gravité, même au repos)
  • myadxl.get_anglexyz()
    pour obtenir, au repos, l'inclinaison de ton accéléromètre dans l'espace, soit en degrés les 3 angles selon x, y et z

Ta
TI-Nspire CX II
peut donc enfin exploiter un accéléromètre 3D en
Python
, de tout nouveaux horizons pour tes projets ! :D


Téléchargement
:


Source
:
https://resources.t3europe.eu/t3europe- ... ce_id=3131
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 14.6%
 
Posts: 37432
Images: 10456
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
Class: Lycée
YouTube: critor3000
Twitter: critor2000
Facebook: critor.ti
GitHub: critor

Return to News TI-Nspire

Who is online

Users browsing this forum: No registered users and 8 guests

-
Search
-
Social
-
Featured topics
Comparaisons des meilleurs prix pour acheter sa calculatrice !
Découvre les nouvelles fonctionnalités en Python de l'OS 5.2 pour les Nspire CX II
Découvre les nouvelles fonctionnalités en Python de l'OS 5.5 pour la 83PCE/84+C-T Python Edition
Omega, le fork étendant les capacités de ta NumWorks, même en mode examen !
1234
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...
Donate
Discover the the advantages of a donor account !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partner and ad
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
503 utilisateurs:
>496 invités
>2 membres
>5 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)

-
Other interesting websites
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)