Loi de Mariotte avec capteur de pression Adafruit MPRLS

Cet article met en évidence la loi de Mariotte P \timss V = Constante avec un microcontrôleur PyBoard et un capteur pression absolue MPRLS (0 à 25 PSI) de chez Adafruit.

Montage

Un seringue de 60 mL est nécessaire pour cette expérience.

Montage sur Adafruit Feather STM32F405

Programme MicroPython

Le programme suivant s’exécute en mode REPL (interfaçage par USB). Les valeurs de volume sont pré-enregistrées à l’avance dans une liste. L’utilisateur valide à chaque fois le volume réglé à l’aide de la touche Entrée du clavier. Attention de bien se placer dans la console MicroPython en y faisant un clic de souris une fois le programme lancé.

# Loi de Mariotte en mode REPL sur PyBoard
# Capteur de pression absolue Adafruit MPRLS 0 - 25 PSI
# Seringue 60 mL
# David THERINCOURT - 05/2020

from machine import I2C
from mprls import MPRLS

i2c = I2C(1)                   # Premier port I2C
mprls = MPRLS(i2c, p_max=1724) # 25 psi = 1724 hPa

# Le tableau ci-dessous est initialement vide - A compléter par les élèves
V = [60,50,40,35,30,25]        # V=40 mL pour pression atmosphérique
P = []                         # Stockage des pressions

# Mesures
for vol in V :
input("Régler le volume sur " + str(vol) + " mL")
pression = mprls.read()        # Lecture de la pression
print(pression, "hPa")         # Affichage de la pression
P.append(pression)             # Ajout de la mesure dans le tableau

# Affichage au format CSV
print("V ; P")
print("mL ; hPa")
for i in range(len(V)):
print(V[i],";",P[i])

Résultats

Les mesures sont affichées au format CSV :

Régler le volume sur 60 mL
668.9924 hPa
Régler le volume sur 50 mL
794.1566 hPa
Régler le volume sur 40 mL
988.844 hPa
Régler le volume sur 35 mL
1117.3 hPa
Régler le volume sur 30 mL
1291.157 hPa
Régler le volume sur 25 mL
1523.821 hPa
V ; P
mL ; hPa
60 ; 668.9924
50 ; 794.1566
40 ; 988.844
35 ; 1117.3
30 ; 1291.157
25 ; 1523.821

Courbes

Nous constatons une assez bonne linéarité du capteur.

La régression linéaire sous la forme P = a*(1/V) + b donne : a = 36720 et  b = 63.0.

L’ordonnée à l’origine est due au volume non pris en compte du tuyau entre la seringue et le capteur.

 

Pour marque-pages : Permaliens.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *