Définition du module HX711
Le module HX711 est un amplificateur de mesure de poids numérique utilisé dans de nombreux projets électroniques pour mesurer des charges et des poids. Il est souvent utilisé avec une cellule de charge pour mesurer le poids d'un objet ou d'un système.
Le module HX711 fonctionne en amplifiant le signal analogique de la cellule de charge et en le convertissant en un signal numérique utilisable par un microcontrôleur ou un ordinateur. Il dispose d'une résolution de 24 bits et peut mesurer des charges jusqu'à 200 kg.
Les broches du module HX711 comprennent deux broches d'alimentation (VCC et GND), deux broches pour la communication (DT et SCK), ainsi qu'une broche d'horloge interne et une broche pour l'entrée de l'horloge externe.
Le module HX711 est souvent utilisé dans des projets de pesage et de contrôle de poids, tels que les balances numériques, les projets de contrôle de la consommation de carburant, les projets de contrôle de la production alimentaire, etc.
Les broches du module HX711
Le module HX711 dispose de dix broches, qui sont les suivantes :
- VCC : broche d'alimentation électrique du module, elle doit être connectée à une source d'alimentation électrique positive de 2,6V à 5,5V.
- GND : broche de mise à la terre du module, elle doit être connectée à la masse du système.
- DT : broche de données du module, elle permet la communication entre le module HX711 et le microcontrôleur. Cette broche est bidirectionnelle et doit être configurée en entrée lorsque les données sont lues depuis le module et en sortie lorsque les données sont envoyées au module.
- SCK : broche d'horloge du module, elle est utilisée pour synchroniser la communication entre le module HX711 et le microcontrôleur. Cette broche doit être configurée en sortie par le microcontrôleur.
- E- (E- excitation -) : Cette broche est utilisée pour connecter l'extrémité négative de la cellule de charge.
- E+ (E+ excitation +) : Cette broche est utilisée pour connecter l'extrémité positive de la cellule de charge.
- A- (A- analogique -) : Cette broche est une entrée analogique qui peut être utilisée pour mesurer des signaux analogiques externes.
- A+ (A+ analogique +) : Cette broche est une entrée analogique qui peut être utilisée pour mesurer des signaux analogiques externes.
- B- (B- excitation -) : Cette broche est utilisée pour connecter l'extrémité négative d'une seconde cellule de charge dans une configuration en pont complet.
- B+ (B+ excitation +) : Cette broche est utilisée pour connecter l'extrémité positive d'une seconde cellule de charge dans une configuration en pont complet.
Il est important de noter que la broche DT doit être connectée à une broche d'entrée de niveau logique 3,3 V ou 5 V du microcontrôleur pour une communication fiable. De plus, il est recommandé d'utiliser des résistances de rappel (pull-up) pour les broches DT et SCK afin d'assurer une communication stable et fiable entre le module HX711 et le microcontrôleur.
Programmation du module HX711
La programmation du module HX711 peut être effectuée en utilisant un langage de programmation tel que C/C++, Python, ou d'autres langages pris en charge par la plateforme matérielle utilisée. Dans cet exemple, nous allons expliquer la programmation du module HX711 en utilisant le langage C/C++.
Tout d'abord, vous devez installer la bibliothèque HX711 sur votre système. Cette bibliothèque contient les fonctions nécessaires pour communiquer avec le module HX711. Vous pouvez trouver cette bibliothèque sur des sites tels que GitHub.
Ensuite, vous pouvez initialiser le module HX711 en définissant les broches de communication, en appelant la fonction d'initialisation de la bibliothèque et en configurant le gain de l'amplificateur (gain de 128 par défaut). Voici un exemple de code d'initialisation :
|
#include "HX711.h" HX711 scale(DT, SCK); void setup() { scale.set_scale(calibration_factor); // Configure le facteur d'étalonnage scale.tare(); // Configure le point zéro scale.set_gain(128); // Configure le gain de l'amplificateur (par défaut) } |
Une fois le module HX711 initialisé, vous pouvez lire les données de poids en utilisant la fonction scale.get_units()
. Cette fonction renvoie le poids mesuré en unités définies par le facteur d'étalonnage. Voici un exemple de code de lecture des données :
|
void loop() { float weight = scale.get_units(); // Lit le poids Serial.println(weight); // Affiche le poids sur le port série delay(1000); // Attend 1 seconde } |
Dans cet exemple, nous lisons le poids toutes les secondes et l'affichons sur le port série.
Il est important de noter que le module HX711 doit être étalonné pour obtenir des mesures précises. Cela peut être fait en utilisant un objet de référence connu (par exemple, un poids standard) et en ajustant le facteur d'étalonnage jusqu'à ce que la sortie du module HX711 corresponde à la valeur de référence connue.
Rôle du module HX711 dans les projets robotiques
Le module HX711 est largement utilisé dans les projets robotiques pour mesurer le poids de différents objets ou pour effectuer des tâches de pesage. Il est souvent utilisé dans les projets de robotique qui impliquent le contrôle de poids, tels que les robots de tri, les systèmes de contrôle de poids de cargaison, les balances de précision, les systèmes de mesure de force, les projets de contrôle de vol de drones, etc.
Dans les projets de robotique, le module HX711 est souvent utilisé en combinaison avec des capteurs de force, des capteurs de pression ou des cellules de charge pour mesurer le poids ou la force exercée sur une surface. En utilisant le module HX711, les données de poids peuvent être lues avec précision et traitées en temps réel pour effectuer des tâches de contrôle ou d'automatisation.
Le module HX711 est également souvent utilisé dans les projets de robotique DIY pour mesurer la charge ou le poids du robot lui-même, ce qui peut être utile pour optimiser la charge utile, la stabilité ou pour réguler la vitesse et la direction de déplacement du robot.
En somme, le module HX711 est un élément important dans les projets de robotique qui impliquent le contrôle de poids ou la mesure de force, offrant une grande précision et une grande fiabilité dans les mesures effectuées.