Cómo interactuar una celda de carga y HX711 con Arduino para la medición de peso

How to Interface a Load Cell & HX711 with Arduino for Weight Measurement

La medición del peso con precisión es esencial en varios proyectos, desde escalas digitales hasta aplicaciones industriales. Al interactuar una celda de carga con un amplificador HX711 y un Arduino, puede crear un sistema de medición de peso preciso y confiable. Esta guía lo guiará a través de los componentes, el cableado, la codificación y la calibración necesarios para configurar su propio sistema de medición de peso.

Materiales necesarios

  • Arduino Board (por ejemplo, Uno, Nano)
  • Celular de carga (típicamente una capacidad de 5 kg o 10 kg)
  • Módulo de amplificador de celda de carga HX711
  • Cables de placa y jersey
  • Cable USB para programar el Arduino
  • Opcional: pantalla LCD para mostrar lecturas de peso

Cableado los componentes

Conectar la celda de carga al HX711 y luego al Arduino es sencillo. La celda de carga generalmente tiene cuatro cables: rojo (VCC), negro (GND), blanco (datos) y verde (datos+). Siga estos pasos para el cableado:

  1. Conecte la celda de carga a HX711:
    • Alambre rojo a E+ en HX711
    • Alambre negro a e- en hx711
    • Alambre blanco a a- en hx711
    • Alambre verde a A+ en HX711
  2. Conecte Hx711 a Arduino:
    • VCC de HX711 a 5V en Arduino
    • GND de HX711 a GND en Arduino
    • DT (datos) de HX711 al PIN digital 2 en Arduino
    • SCK (reloj) de HX711 al pin 3 digital en Arduino

Codificando el arduino

Para comunicarse con el HX711, necesitará usar una biblioteca que simplifique las interacciones. El HX711 La biblioteca de Bogdan Necula es una opción popular. Instálelo a través del Administrador de la Biblioteca Arduino antes de continuar.

Aquí hay un código de muestra para comenzar:


#include <HX711.h>

// Define HX711 circuit connections
const int LOADCELL_DOUT_PIN = 2;
const int LOADCELL_SCK_PIN = 3;

HX711 scale;

void setup() {
  Serial.begin(9600);
  scale.begin(LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN);
  Serial.println("HX711 Calibration");
  
  // Optional: tare the scale to zero
  scale.tare();
}

void loop() {
  if (scale.is_ready()) {
    long reading = scale.read();
    Serial.print("Raw reading: ");
    Serial.println(reading);

    // Convert reading to weight
    float weight = scale.get_units(10); // 10 readings averaged
    Serial.print("Weight: ");
    Serial.print(weight);
    Serial.println(" kg");
  } else {
    Serial.println("HX711 not found.");
  }
  delay(500);
}

Calibración

Las mediciones precisas requieren calibrar la escala para tener en cuenta cualquier discrepancia. Así es como puede calibrar su celda de carga:

  1. Cargue el código anterior a su Arduino y abra el monitor en serie.
  2. Sin peso en la celda de carga, tenga en cuenta la lectura en bruto. Este es tu tara valor.
  3. Coloque un peso conocido en la celda de carga y tenga en cuenta la nueva lectura en bruto.
  4. Calcule el factor de calibración usando la fórmula:

Calibration Factor = (Raw Reading - Tare) / Known Weight

Una vez que tenga el factor de calibración, actualice su código para usarlo:


#define CALIBRATION_FACTOR  -7050 // Example value

void setup() {
  Serial.begin(9600);
  scale.begin(LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN);
  scale.set_scale(CALIBRATION_FACTOR);
  scale.tare();
  Serial.println("HX711 Calibration");
}

void loop() {
  if (scale.is_ready()) {
    float weight = scale.get_units(10);
    Serial.print("Weight: ");
    Serial.print(weight);
    Serial.println(" kg");
  } else {
    Serial.println("HX711 not found.");
  }
  delay(500);
}

Probando su configuración

Después de la calibración, realice varias pruebas con diferentes pesos conocidos para garantizar la precisión. Si existen discrepancias, ajuste el factor de calibración en consecuencia. Es esencial asegurarse de que la celda de carga se coloque en una superficie estable y que el cableado esté seguro para evitar lecturas fluctuantes.

Mejorando su proyecto

Para que su sistema de medición de peso sea más fácil de usar, considere agregar una pantalla LCD para mostrar el peso en tiempo real. También puede integrar características como registro de datos, transmisión inalámbrica o interfaz con otros sensores para mediciones más completas.

Conclusión

La interfaz de una celda de carga y HX711 con un Arduino es un proyecto manejable que produce mediciones de peso precisas adecuadas para varias aplicaciones. Siguiendo los pasos descritos en esta guía, puede configurar su propia escala digital o integrar la detección de peso en proyectos más complejos. Con la calibración adecuada y las conexiones estables, su sistema proporcionará datos confiables para sus necesidades.

Escribir un comentario

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.