Loi de Newton
Ce document présente quelques éléments permettant d’acquérir des tensions analogiques variant « lentement » sur une carte Arduino_uno à l’aide de programmes générés sous Python (distribution Spyder).
On pourra déjà remarquer que les limitations technologiques de la carte nous amènerons à ne manipuler que des signaux :
- Dont l’amplitude est comprise entre 0 et 5V
- Dont la fréquence n’excède pas quelques dizaines de Hertz.
I- Le matériel et les configurations Il vous faudra installer :
- Python3.5 (environnement spyder) : https://www.python.org/downloads/
- Arduino : https://www.arduino.cc/en/Main/Software
Ensuite, il sera nécessaire de configurer Arduino pour que la communication avec Python soit possible à l’aide du module Firmata :
𝐹𝑖𝑐ℎ𝑖𝑒𝑟 → 𝐸𝑥𝑒𝑚𝑝𝑙𝑒 → 𝐹𝑖𝑟𝑚𝑎𝑡𝑎 → 𝑆𝑡𝑎𝑛𝑑𝑎𝑟𝑑𝐹𝑖𝑟𝑚𝑎𝑡𝑎
Téléverser ce programme.
Il sera nécessaire de connaître le COM affecté à la carte Arduino, pour cela :𝑜𝑢𝑡𝑖𝑙𝑠 → 𝑃𝑜𝑟𝑡
Il reste une manipulation à faire sur python : installer le module Firmata avec les lignes de codes suivantes :
import pip
pip.main(['install','pyfirmata'])
II- Acquisition et représentation en mode Roll a) Présentation
Dans le fichier Newton.py vous trouverez la fonction roll. Cette fonction roll a 3 arguments :
- Le 1e est un entier représentant le chiffre associé au COM de la carte - Le 2e(a), 3e (b) et 4e (𝑡𝑟𝑒𝑓) sont trois float tel que la carte acquiert la tension
𝑢 sur la voie A0 pendant 𝑡𝑟𝑒𝑓 et la fonction affiche la valeur 𝑎 × 𝑢 + 𝑏.
b) Exemple : Conditionnement d’un capteur de température On considère le capteur de température LM35 :
Ce capteur renvoie une tension nulle pour 0°C et une variation de température de 1°C se traduit par une variation de tension de 10mV. Représenter les variations de 𝑇 dans le temps en utilisant la fonction Roll.
Rq : l’utilisation d’un condensateur de découplage entre l’alimentation et la masse est recommandé pour limiter l’influences du bruit.
c) Loi de Newton
Un corps à la température 𝑇 en contact avec une atmosphère à la température 𝑇𝑒𝑥𝑡 ≠ 𝑇 est le siège d’un transfert conducto-convectif et donc d’une puissance thermique échangée comptée algébriquement avec l’extérieur donnée par 𝑃 = 𝑎(𝑇𝑒𝑥𝑡− 𝑇).
En serrant entre ses doigts le capteur de température, on impose une température d’environ 30°C à ce dernier. Proposer un protocole permettant de tester la loi de Newton lors du refroidissement du capteur.
Aides :
On pourra noter 𝐶 la capacité thermique du capteur pour la mise la mise en équation.
Vous avez à disposition la fonction Regression_MC dans le fichier Th_chap2_exo5.py permettant de faire un ajustement de courbe de type exponentielle avec un nuage de points.
On donne un extrait de la documentation constructeur de ce capteur de température :
Grille de compétences
/1 /2 /3 /4
Analyser Mettre en équation la
situation
Identifier la loi 𝑇(𝑡)
Réaliser Savoir effectuer des
mesures avec Arduino : obtenir 𝑇(𝑡)
Valider Savoir utiliser un
programme permettant une régression exponentielle
Communiquer Critiquer ses
résultats