Ceci est une ancienne révision du document !
Table des matières
TP : Mesure d’une masse avec jauge de contraintes, HX711 et écran OLED
Problématique
Comment concevoir une balance électronique capable de :
- mesurer une masse ;
- afficher la valeur sur un écran OLED ;
- être étalonnée avec une masse connue ;
- évaluer sa sensibilité et sa précision.
Organisation du TP
Le TP est composé de 4 parties progressives :
- A — Découvrir : jauge de contraintes et HX711
- B — Mesurer : valeurs brutes et tare
- C — Étalonner : masse connue et coefficient de conversion
- D — Intégrer : balance complète avec affichage OLED
Matériel
- Arduino Uno / Uno R4
- Module HX711 (librairie HX711 à installer - voir exemples)
- Jauge de contrainte / cellule de charge
- Écran OLED SSD1306 I2C 128×64
- Breadboard + fils
- Masse connue : 100 g, 200 g, 500 g ou 1 kg
- Support mécanique pour la cellule de charge
PARTIE A — Découverte du capteur
Objectif
Comprendre le rôle de la jauge de contraintes et du module HX711.
A1 — Observation
Questions
- Que mesure réellement une jauge de contraintes ?
- Pourquoi la variation électrique est-elle très faible ?
- Quel est le rôle du module HX711 ?
- Pourquoi ne peut-on pas brancher directement la jauge sur une entrée analogique Arduino ?
A2 — Câblage
Travail demandé
Réaliser le câblage :
| HX711 | Arduino |
|---|---|
| VCC | 5 V |
| GND | GND |
| DT / DOUT | D3 |
| SCK | D2 |
Pour l’écran OLED :
| OLED SSD1306 | Arduino |
|---|---|
| VCC | 5 V |
| GND | GND |
| SDA | A4 |
| SCL | A5 |
Question
Pourquoi l’écran OLED utilise-t-il seulement deux fils de communication ?
PARTIE B — Lecture des valeurs brutes
Objectif
Lire les valeurs fournies par le HX711 sans chercher encore à afficher une masse.
B1 — Valeur brute
Travail demandé
Afficher dans le moniteur série la valeur brute fournie par le HX711.
Questions
- La valeur est-elle parfaitement stable ?
- Que se passe-t-il lorsqu’on appuie légèrement sur la cellule ?
- La valeur augmente-t-elle ou diminue-t-elle ?
- Pourquoi le signe peut-il dépendre du sens de montage ?
Notion importante
À ce stade, l’Arduino ne mesure pas encore une masse. Il mesure une valeur numérique proportionnelle à la déformation.
B2 — Tare
Travail demandé
Créer une fonction de tare :
- mesurer la valeur à vide ;
- la mémoriser ;
- soustraire cette valeur aux mesures suivantes.
Formule
valeur_corrigee = valeur_brute - valeur_tare
Questions
- Pourquoi faut-il faire une tare ?
- Que représente la valeur obtenue après tare ?
- Pourquoi ne faut-il rien poser sur la balance pendant la tare ?
Prévoir une tare sur l'appui d'un bouton pouissoir.
PARTIE C — Étalonnage avec une masse connue
Objectif
Transformer une valeur numérique en masse exprimée en grammes.
C1 — Masse connue
Travail demandé
- Faire la tare à vide.
- Poser une masse connue.
- Relever la valeur corrigée.
- Calculer le coefficient d’étalonnage.
Formule
coefficient = valeur_corrigee / masse_connue
Donc :
masse = valeur_corrigee / coefficient
Cette logique correspond au principe classique d’étalonnage du HX711 : on fait une tare, on place une masse connue, puis on détermine le facteur de calibration à partir de la lecture obtenue. :contentReference[oaicite:1]{index=1}
Exemple
Si une masse de 200 g donne une valeur corrigée de 84500 :
coefficient = 84500 / 200 = 422,5 points par gramme
Donc si la valeur corrigée vaut ensuite 126750 :
masse = 126750 / 422,5 = 300 g
C2 — Sensibilité
Définition
La sensibilité indique la variation de la mesure pour une variation de masse.
sensibilité = variation de valeur brute / variation de masse
Travail demandé
Faire plusieurs mesures :
| Masse connue | Valeur brute | Valeur corrigée |
|---|---|---|
| 0 g | ||
| 100 g | ||
| 200 g | ||
| 300 g | ||
| 500 g |
Questions
- La relation entre masse et valeur corrigée semble-t-elle linéaire ?
- La sensibilité est-elle constante ?
- Que peut-on faire pour améliorer la précision ?
- Pourquoi est-il préférable d’utiliser plusieurs masses connues ?
C3 — Incertitude et répétabilité
Travail demandé
Pour une même masse, faire 5 mesures successives.
| Essai | Masse affichée |
|---|---|
| 1 | |
| 2 | |
| 3 | |
| 4 | |
| 5 |
Questions
- Les valeurs sont-elles identiques ?
- Quelle est la valeur moyenne ?
- Quel est l’écart maximal observé ?
- La mesure est-elle suffisamment stable pour l’application visée ?
PARTIE D — Affichage OLED
Objectif
Afficher la masse mesurée sur un écran OLED SSD1306.
D1 — Message simple
Travail demandé
Afficher :
Balance prete
D2 — Affichage de la masse
Travail demandé
Afficher sur l’écran :
Masse : xxx g
Questions
- Pourquoi faut-il éviter de rafraîchir l’écran trop rapidement ?
- Pourquoi peut-on moyenner plusieurs mesures ?
- Quel compromis existe-t-il entre rapidité et stabilité ?
D3 — Balance complète
Fonctionnement attendu
- Initialisation du HX711
- Initialisation OLED
- Tare à vide
- Lecture de la valeur brute
- Correction par la tare
- Conversion en grammes
- Affichage sur OLED
Algorithme
- Initialiser le HX711
- Initialiser l’écran OLED
- Attendre que la balance soit vide
- Faire la tare
- Lire plusieurs mesures
- Calculer la moyenne
- Convertir en masse
- Afficher la masse
- Recommencer
Critères de réussite
- Le HX711 fournit une valeur brute exploitable.
- La tare ramène la mesure proche de zéro.
- Une masse connue permet de calculer un coefficient d’étalonnage.
- La masse affichée est cohérente.
- L’écran OLED affiche clairement la mesure.
- L’élève sait expliquer la différence entre valeur brute, tare, coefficient et masse.
Pour aller plus loin
- Ajouter un bouton de tare.
- Afficher “Surcharge” si la masse dépasse une limite.
- Afficher la masse en newtons : P = m × g.
- Afficher le poids en livres
- Tracer la courbe valeur corrigée = f(masse).
- Comparer étalonnage à un point et étalonnage multipoints.
- Réaliser une régression linéaire dans un tableur.
- Étudier la dérive de la mesure dans le temps.
