Sei sulla pagina 1di 6

DESCRIPCIÓN DEL PROGRAMA

Con este programa, al modificar la línea de código "balanza.set_scale(ESCALA)", por el valor


de ESCALA

calculado anteriormente, podremos pesar elementos de hasta 10Kg con nuestra balanza
digital y los

visualizaremos a través del LCD 1602 que tenemos conectado a nuestro Arduino.

ESQUEMA DE CONEXIÓN

NOTAS:

- La alimentación y la tierra del módulo LCM 1602 I2C V1 van directamente conectadas a VCC
(+5V) y GND

respectivamente.
- Conexiones del transmisor de celda de carga HX711:

- ALIMENTACIÓN:

- Pin VCC del HX711 --> +5V de Arduino.

- Pin GND del HX711 --> GND de Arduino.

- ENTRADAS:

- Pin E+ del HX711 --> Cable Rojo de la celda de carga de 20Kg.

- Pin E- del HX711 --> Cable Negro de la celda de carga de 20Kg.

- Pin A- del HX711 --> Cable Blanco de la celda de carga de 20Kg.

- Pin A+ del HX711 --> Cable Verde de la celda de carga de 20Kg.

- SALIDAS:

- Pin SCK del HX711 --> Pin analógico A0 de Arduino.

- Pin DT del HX711 --> Pin Analógico A1 de Arduino.

*/

// Librerías necesarias para el LCD 1602 con comunicación I2C

#include <Wire.h>

#include <LiquidCrystal_I2C.h>

// Librería para utilizar el transmisor de celda de carga HX711

#include <HX711.h>

#define DT A1 // Pin analógico A1 para el pin DT del transmisor de celda de carga HX711

#define SCK A0 // Pin analógico A0 para el pin SCK del transmisor de celda de carga HX711

// Creación del objeto para el LCD con comunicación I2C

LiquidCrystal_I2C lcd(0x3F, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);

// Creación del objeto para el transmisor de celda de carga HX711

HX711 balanza(DT, SCK);

void setup()
{

Serial.begin(9600); // Comienzo de la comunicación con el monitor serie

lcd.begin(16,2); // Comienzo de la comunicación con el LCD 1602 con comunicación I2C

Serial.print("Lectura del valor del ADC:t");

Serial.println(balanza.read()); // Comienzo de la lectura de la balanza digital

Serial.println("No ponga ningun objeto sobre la balanza");

Serial.println("Destarando...");

Serial.println("...");

balanza.set_scale(192300); // Establecemos la ESCALA calculada anteriormente

balanza.tare(10); // El peso actual es considerado Tara.

lcd.setCursor(0,0);

lcd.print("BANCO DE PRUEBAS");

lcd.setCursor(0,1);

lcd.print("ING. MECANICA");

delay(5000); // Esperamos 5 segundos para comenzar a pesar

void loop()

lcd.setCursor(0,0);

lcd.print("MEDIDOR DE FUERZA");

lcd.setCursor(0,1);

lcd.print("Peso: ");

lcd.print(balanza.get_units(10),3); // Se obtiene el valor real del peso en Kg del elemento

lcd.print(" kg ");

}
Calibración

/* TITULO: Balanza digital con celda de carga 10Kg programa de calibración

DESCRIPCIÓN DEL PROGRAMA

Este programa nos permite calibrar la balanza, convirtiendo el valor analógico dado por la
celda de carga

a un valor de peso en kg, este valor de ESCALA debe ser introducido en el programa

"Balanza_digital_10Kg", en la línea de código "balanza.set_scale(ESCALA)".

ESQUEMA DE CONEXIÓN
NOTAS:

- Conexiones del transmisor de celda de carga HX711:

- ALIMENTACIÓN:

- Pin VCC del HX711 --> +5V de Arduino.

- Pin GND del HX711 --> GND de Arduino.

- ENTRADAS:

- Pin E+ del HX711 --> Cable Rojo de la celda de carga de 20Kg.

- Pin E- del HX711 --> Cable Negro de la celda de carga de 20Kg.

- Pin A- del HX711 --> Cable Blanco de la celda de carga de 20Kg.

- Pin A+ del HX711 --> Cable Verde de la celda de carga de 20Kg.

- SALIDAS:

- Pin SCK del HX711 --> Pin analógico A0 de Arduino.

- Pin DT del HX711 --> Pin Analógico A1 de Arduino.

*/

// Librería para utilizar el transmisor de celda de carga HX711

#include <HX711.h>

#define DT A1 // Pin analógico A1 para el pin DT del transmisor de celda de carga HX711

#define SCK A0 // Pin analógico A0 para el pin SCK del transmisor de celda de carga HX711

// Creación del objeto para el transmisor de celda de carga HX711

HX711 balanza(DT, SCK);

void setup()

Serial.begin(9600); // Comienzo de la comunicación con el monitor serie

Serial.print("Lectura del valor del ADC:t");

Serial.println(balanza.read()); // Comienzo de la lectura de la balanza digital

Serial.println("No ponga ningun objeto sobre la balanza");

Serial.println("Destarando...");
balanza.set_scale(); // La escala por defecto es 1

balanza.tare(10); // El peso actual es considerado Tara.

Serial.println("Coloque un peso conocido:");

void loop()

Serial.print("Valor de lectura: t");

Serial.println(balanza.get_value(10),0); // Se obtiene el valor necesario para calcular la


ESCALA

delay(100);

Potrebbero piacerti anche