Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* TITULO: Balanza digital de hasta 20Kg con celda de carga y transmisor HX711 - Balanza_digital_final
- AUTOR:
- MARIANO DEL CAMPO GARCÍA (@2016) --> INGENIERO TÉCNICO INDUSTRIAL ESPECIALIDAD ELECTRÓNICA
- - FACEBOOK: https://www.facebook.com/mariano.delcampogarcia
- - TWITTER: https://twitter.com/MarianoCampoGa
- - CORREO: marianodc83@gmail.com
- 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 20Kg con nuestra balanza digital y los
- visualizaremos a través del LCD 1602 que tenemos conectado a nuestro Arduino.
- ESQUEMA DE CONEXION
- +-----+
- +----[PWR]-------------------| USB |--+
- | +-----+ |
- | GND/RST2 [ ][ ] |
- | MOSI2/SCK2 [ ][ ] A5/SCL[ ] | SCL del módulo I2C conectado al LCD 1602
- | 5V/MISO2 [ ][ ] A4/SDA[ ] | SDA del módulo I2C conectado al LCD 1602
- | AREF[ ] |
- | GND[ ] |
- | [ ]N/C SCK/13[ ] |
- | [ ]IOREF MISO/12[ ] |
- | [ ]RST MOSI/11[ ]~|
- | [ ]3V3 +---+ 10[ ]~|
- | [ ]5v -| A |- 9[ ]~|
- | [ ]GND -| R |- 8[ ] |
- | [ ]GND -| D |- |
- | [ ]Vin -| U |- 7[ ] |
- | -| I |- 6[ ]~|
- SCK | [ ]A0 -| N |- 5[ ]~|
- DT | [ ]A1 -| O |- 4[ ] |
- | [ ]A2 +---+ INT1/3[ ]~|
- | [ ]A3 INT0/2[ ] |
- | [ ]A4/SDA RST SCK MISO TX>1[ ] |
- | [ ]A5/SCL [ ] [ ] [ ] RX<0[ ] |
- | [ ] [ ] [ ] |
- | UNO_R3 GND MOSI 5V ____________/
- \_______________________/
- NOTAS:
- - La alimentación y la masa 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(0x27, 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(107250); // Establecemos la ESCALA calculada anteriormente
- balanza.tare(20); // El peso actual es considerado Tara.
- lcd.setCursor(0,0);
- lcd.print("BALANZA DIGITAL");
- lcd.setCursor(0,1);
- lcd.print("Listo para pesar");
- delay(5000); // Esperamos 5 segundos para comenzar a pesar
- }
- void loop()
- {
- lcd.setCursor(0,0);
- lcd.print("BALANZA DIGITAL");
- lcd.setCursor(0,1);
- lcd.print("Peso: ");
- lcd.print(balanza.get_units(20),3); // Se obtiene el valor real del peso en Kg del elemento
- lcd.print(" kg ");
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement