Artículos recientes

Promociones especiales

Novedades

Tutorial trasmisor de celda de carga HX711, Balanza Digital

Tutorial trasmisor de celda de carga HX711, Balanza Digital

En este tutorial trabajaremos con la trasmisor de celda de carga HX711, he indicaremos todos los pasos en su conexión y programación para armar una balanza digital o cualquier uso que lo podamos dar

  

Celdas De Carga

Una celda de carga es un transductor capaz de convertir una fuerza en una señal eléctrica, esto la hace a través uno o más galgas internas que posee, configuradas en un puente Wheatstone.

Existen diversos tipos de Celdas de carga, en diversos modelos, el que utilizaremos para este tutorial es el que se muestra en la imagen. Usaremos una celda de carga de 5Kg que es el valor máximo que puede sensar, pero el tutorial también aplica a celdas de 20Kg y otros modelos.

 

Celda de carga        Celda de carga 5Kg

   


Trasmisor de celda de carga HX711

Este módulo es una interface entre las celdas de carga y el microcontrolador, permitiendo poder leer el peso de manera sencilla. Internamente se encarga de la lectura del puente wheatstone formado por la celda de carga, convirtiendo la lectura analógica a digital con su conversor A/D interno de 24 bits.

Es muy utilizado en procesos industriales, sistemas de medición automatizada e industria médica.

Se comunica con el microcontrolador mediante 2 pines (Clock y Data) de forma serial.

Modulo HX711

Armando la parte mecánica de nuestra Balanza Digital

Para instalar la celda de carga hay que hacerlo con separadores, los cuales deben de distanciar a la base y recipiente de la celda para que la parte central quede libre; además hay que tener en cuenta que el sentido de la flecha indica la dirección de la fuerza o peso a aplicar

La siguiente figura muestra un ejemplo de cómo instalar la celda de carga, pero dependerá de su aplicación para hacer las variaciones necesarias

 Diseño Balanza

 

Conexiones entre la Celda de carga, módulo HX711 y Arduino.

  

Conexión entre la Celda de carga y módulo HX711

Celda  De  Carga

 Módulo HX711

Cable Rojo

Pin  E+

Cable Negro

Pin E-

Cable Verde

Pin A-

Cable Blanco

Pin A+ 

 

Conexión entre HX711 y Arduino

Módulo HX711

Arduino UNO, MEGA, NANO

Pin GND

Pin GND

Pin DT

Pin A1

Pin SCK

Pin A0

Pin VCC

Pin 5V

 

La conexión final sería como se muestra en la imagen.

   

 Coenxiones Celda de carga HX711 Arduino

 

   

Librería HX711 para Arduino


Estamos utilizando la librería HX711 de Bogde el cual lo pueden descargar desde Github:

https://github.com/bogde/HX711

Una vez descargado hay que importarla a nuestro IDE de Arduino.

  

Explicaremos las funciones principales  de esta librería.

  

HX711(byte PinData, byte PinClock)

Es el constructor del objeto HX711, se puede trabajar con cualquiera de los pines.

void tare(byte n);

Establece el peso actual como el peso de tara, n indica el número de lecturas que se realizan para obtener la tara, por defecto n=10;

void set_scale(float scale);

Establece el valor de la escala, que es el factor de conversión para convertir valor de lectura en un valor con unidades de peso. Por defecto es scale=1;

long read()

Espera hasta que el dispositivo esté listo y devuelve la lectura del ADC del HX711

long read_average(byte n)

Realiza n veces la lectura del ADC y devuelve el promedio

double get_value(byte n)

Devuelve el valor actual restando el peso de tara. Equivalente a (read_average() - OFFSET) . Si se especifica un valor de n, devuelve el promedio de n lecturas.

float get_units(byte n)

Devuelve el valor actual restado del peso de tara y dividido por la escala. Es equivalente a (get_value()/SCALE). Si se especifica un valor de n, devuelve el promedio de n lecturas.

 

1. Calibrando nuestra Balanza

Lo primero que se debe de hacer es calibrar, que es básicamente hallar el valor de la escala que se usará; es decir hallar el factor de conversión para convertir valor de lectura en un valor con unidades de peso. La escala es diferente para cada celda y cambia de acuerdo a la forma de instalar, al peso máximo o modelo de celda de carga, incluso así se trate del mismo modelo de celdas no necesariamente tienen el mismo valor de escala.

Primero necesitamos conseguir un objeto con peso conocido, en otras palabras debemos saber el peso real del objeto. Se recomienda que el peso conocido sea cercano al valor máximo del rango de trabajo de la celda de carga. En nuestro caso usaremos un peso de 4Kg pues nuestra celda es de 5Kg.

 

El siguiente paso es cargar el siguiente Sketch a nuestro Arduino. 

#include "HX711.h"

#define DOUT  A1
#define CLK  A0

HX711 balanza(DOUT, CLK);

void setup() {
  Serial.begin(9600);
  Serial.print("Lectura del valor del ADC:  ");
  Serial.println(balanza.read());
  Serial.println("No ponga ningun  objeto sobre la balanza");
  Serial.println("Destarando...");
  balanza.set_scale(); //La escala por defecto es 1
  balanza.tare(20);	//El peso actual es considerado Tara.
  Serial.println("Coloque un peso conocido:");
  
}


void loop() {

  Serial.print("Valor de lectura:  ");
  Serial.println(balanza.get_value(10),0);
  delay(100);
}

El programa debe correr sin el peso colocado, pues al inicio de programa calcula la tara.

Después de abrir el monitor serial y esperar para que reste la tara, Se pone el objeto de 4Kg o el peso con el que estén trabajando.

   

Calibracion con peso 4Kg

  

Después de poner el peso en la balanza, en el monitor serial se mostraran las lecturas del peso, son lecturas sin escalar, por lo que les deben aparecer números grandes.

   Datos calibracion

   

Con uno o el promedio de estos datos calculamos el valor de la escala que usaremos, para esto usaremos la siguiente formula:

Formula escala HX711

El valor del peso debe estar en las unidades con las que queremos que trabaje nuestra balanza, por ejemplo podría ser 4Kg o 4000g para Kilogramo o gramos respectivamente.

Entonces el valor de la Escala que usaremos es:

Factor de escala HX711

Con este dato ya obtenido pasamos a programar el sketch que vamos a utilizar para pesar.

 

2. Programa final para nuestra Balanza

El programa que se utilizara es similar al programa que usamos para calibrar, con la diferencia que ya conocemos la escala.

#include "HX711.h"

#define DOUT  A1
#define CLK  A0

HX711 balanza(DOUT, CLK);

void setup() {
Serial.begin(9600);
  Serial.print("Lectura del valor del ADC:  ");
  Serial.println(balanza.read());
  Serial.println("No ponga ningun  objeto sobre la balanza");
  Serial.println("Destarando...");
  Serial.println("...");
  balanza.set_scale(439430.25); // Establecemos la escala
  balanza.tare(20);	//El peso actual es considerado Tara.
  
  Serial.println("Listo para pesar");  
}

void loop() {
  Serial.print("Peso: ");
  Serial.print(balanza.get_units(20),3);
  Serial.println(" kg");
  delay(500);
}

Como se observa en el código, es necesario encender el Arduino antes de colocar los objetos que se desean pesar, de lo contrario el peso que esté sobre la balanza se considerará como tara.

A continuación se muestran las lecturas agregando sucesivamente pesos de 1Kg aproximadamente.

   

Resultados

   

Como pueden ver el módulo HX711 es fácil de implementar en cualquier proyecto, la aplicaciones son varias y espero puedan sacarle provecho.

 

Pueden adquirir los materiales usados en este tutorial en nuestra tienda

Módulo HX711 Transmisor de celda de carga

Celda de Carga 5Kg

Celda de Carga 20Kg

Arduino Uno R3

 

298 Comments

    • Avatar
      Alvaro Soto
      jul 4, 2016

      Si mira en la función balanza me manda un erro me podrías decir porque ? y si es posible me podrías ayudar

      • Avatar
        Naylamp
        jul 5, 2016

        Alvaro, ¿Que error te sale y en qué línea de código? Verifica que tengas instalada la librería correctamente.

        • Avatar
          ygnacio salmerón
          ago 28, 2016

          Deseo adaptar éste sistema y módulos a una celda de 1k libras. Es posible?

        • Avatar
          Alvaro DAniel
          oct 30, 2017

          Solucione el problema la verdad es que no recuerdo de que fue pero se soluciono Me podrias decir de donde puedo conseguir mas datos técnicos de la celda de carga de 10k

          • Avatar
            Julio Tlamayanco
            nov 27, 2017

            Yo tengo una de 5 y estoy realizando un proyecto.Daniel me podrias decir como le hiciste con tu erro?

            • Avatar
              Jhon
              may 12, 2019

              me sale este error en la codigo de calibracion (no hay función coincidente para la llamada a 'HX711 :: HX711 (const uint8_t &, const uint8_t &)')

              • Avatar
                edwin
                may 19, 2019

                Jhon, me sale el mismo error, lo pudiste solucionar?

                • Avatar
                  DANY ROJAS
                  may 23, 2019

                  SEÑORES CORDIAL SALUDO,ESTOY REALIZANDO ESTE MISMO PROYECTO PERO A LA HORA DE COMPILAR ME SALE EL MISMO ERROR, ALGUEN LO LOGRO SOLUCIONAR? Y SI ES ASI DE QUE MANERA LO LOGRARON? (no hay función coincidente para la llamada a 'HX711 :: HX711 (const uint8_t &, const uint8_t &)')

    • Avatar
      Ivan coronel
      jul 10, 2016

      hoola , me parece excelente este proyecto yo tengo un proyecto parecido pero yo quiero pesar liquido (tinher acrilico) y quiero que lo pesado(lo registrado por la celda) lo tradusca a litros en una pantalla electronica

      • Avatar
        Naylamp
        jul 11, 2016

        Hola Ivan, para obtener el volumen solo hay que dividir el peso entre la densidad del líquido, teniendo en cuenta siempre las unidades respectivas y destarando correctamente.

    • Avatar
      andres
      jul 13, 2016

      hola compre una selda de carga de 1kg, quisiera programarla para que cuando el peso llegue a 500gr me de una señal positiva en una salida alguien podría ayudarme?

      • Avatar
        Naylamp
        jul 14, 2016

        Andres, sigue los ejemplos del tutorial y verifica si estas sensando correctamente el peso. Posteriormente solo agrega una condición para comparar con 0.5Kg y activar la salida digital. Ej: float peso=balanza.get_units(20); if(peso>0.5) digitalWrite(13, HIGH); else digitalWrite(13, LOW);

    • Avatar
      Carlos Grajales
      jul 19, 2016

      Hola,¿Como vas?. Amigo una pregunta. Si digamos, yo quisiera usar 6 balanzas,¿Como podría alimentar los Transistores de Celda de Carga?. Gracias por la Atención prestada.

      • Avatar
        Naylamp
        jul 20, 2016

        Carlos, para conectar más de un transmisor de celda, cada transmisor debe estar conectado a 2 pines del Arduino (DT y SCK), En el programa debes crear un objeto por cada transmisor de celda, asignando sus respectivos pines a los que está conectado. Ejemplo: HX711 balanza1(A1, A0); HX711 balanza2(D2, D3);

    • Avatar
      Julian
      jul 19, 2016

      Amigo, ¿como haces para usar la imagen de la celda en Fritzing? Ya que Fritzing no tiene estas celdas por defecto. Gracias...

      • Avatar
        Naylamp
        jul 20, 2016

        Julián, las imágenes del tutorial no están trabajadas en fritzing. Saludos

    • Avatar
      oscar
      jul 21, 2016

      buen dia .. buenisimos sus explicaciones,, me podria ayudar... como coloco tiempo a una celda de carga es para hacer balanza pesa personas con monedas.. quedo atento.

      • Avatar
        Antonio
        jul 23, 2016

        Hola, amigos. Yo también estoy interesado en ponerle tiempo a la lectura del peso. El monedero es un pulsador que cuando pasa la moneda activa el pulsador y después vuelve a reposo? Alguien nos puede hechar una mano. Gracias y Salu2

      • Avatar
        Naylamp
        jul 26, 2016

        Para condicionar con tiempo es mejor usar la función millis(). Por ejemplo if(millis()-timpo_inicio>10000) //ingresa a la condición durante 10 segundos, dentro de esta condición se deber de realizar las tareas deseadas, constantemente hay q estar censando la moneda y cada vez que se ingresa la moneda debe de actualizarse el valor de tiempo_inicio con el de millis() actual. Es uno de los varios métodos que pueden usar.

    • Avatar
      Greco
      jul 22, 2016

      hola! buen proyecto , me ha ayudado con el mio pero tengo una duda... que es como funciona el codigo balanza.read() y el balanza.get_units(x,x) , porque necesito obtener datos pero trabajando e paralelo con otros sensores y la programacion por si misma que tienes ahi me altera los otros y no solo por el delay sino por los codigos que mencione antes. de antemano muchas gracias!!

      • Avatar
        Naylamp
        jul 26, 2016

        Hola Greco, balanza.read() te devuelve el valor de lectura del ADC (valor sin escalar incluyendo la tara) y balanza.get_units(n) te devuelve el valor real del peso descontando la tara y con la escala establecida. Si el problema es el tiempo de lectura puedes tomar menos muestras balanza.get_units(1), por ejemplo una por bucle, si tienes mucho ruido en el peso puedes sacar el promediando las lecturas en los diferentes iteraciones. También, antes de relizar una lectura puedes usar la función balanza.is_ready() para verificar si los datos están disponibles para la lectura.

    • Avatar
      Juan
      jul 23, 2016

      Buen día, primero que nada gracias por el aporte, es muy buen tutorial.Estoy haciendo un proyecto de una báscula a la que se le pueda programar set-points para realizar acciones (como abrir o cerrar relevadores), hasta ahorita logré que al llegar a un peso se encienda un led, todo bien hasta allí, lo que no logro hacer es como tomar el dato del HX711 y guardarlo en una variable de entero ejemplo "int peso" y poder usarla para hacer dichas acciones y mostrarla en mi lcd.Lo que tengo es una celda de 2Klb (2000 libras) con 3.0 mV/V quizá es grande, hice todo lo que sugieres para obtener la escala y tara, todo bien hasta allí pero me falta eso, a ver si alguien me puede ayudar.

      • Avatar
        Naylamp
        jul 26, 2016

        Hola Juan, prueba usando float peso=balanza.get_units(20); si quieres trabajar con enteros cambia a unidades más pequeñas para que no pierdas los decimales.

    • Avatar
      Israel
      jul 25, 2016

      Hola, me a sido de gran utilidad, nada mas que yo estoy usando el sensor MD-PS002, ya que deseo censar vacío, tienes alguna experiencia con este caso? aún no sea con el mismo tipo de sensor, de antemano gracias, y felicidades esta muy claro todo.

      • Avatar
        Naylamp
        jul 26, 2016

        Hola Israel, no hemos trabajado con el sensor que mencionas, pero al tener salida de puente al igual que la celda de carga deberías poder realizar las lecturas con el HX711, prueba usando las funciones balanza.read() o balanza.read_average(n) estas funciones te devuelven la lectura del ADC, las otras funciones pueden alterar tus resultados ya que trabajan con el OFFSET (tara) y/o la escala.

    • Avatar
      fabio
      ago 4, 2016

      Boa noite!!fiz codigo em PIC para utilizar essa celula e modulo hx711,porem está mostrando os valores para 0 kg 8377146....e para 7 kg valor 10316782,já vi varios tutoriais e nada....alguem tem como me ajudar ajudar fazer tranformar esse valor em kg? utilizo celula de 10 kilos

      • Avatar
        Naylamp
        ago 12, 2016

        Fabio, disculpa la demora de la respuesta, obtén la medida de dos puntos, y con eso calcula la ecuación de la recta, con dicha ecuación puedes pasar del rango de los valores que lees a uno de 0 10kg. O puedes implementar una función similar pero en a esta pero en float: https://www.arduino.cc/en/Reference/Map Y usar peso=map(lectura, 8377146, 10316782,0,7);

    • Avatar
      Maxi
      ago 8, 2016

      Hola, necesito leer una celda de carga a través de un modulo HX711 y mostrarlo en un diplay 16X2. ¿Se puede? ¿no hay un tutorial de eso? Saludos

      • Avatar
        Naylamp
        ago 12, 2016

        Maxi, claro que se puede. A este tutorial solo agrégale las conexiones y programación del LCD, es fácil, puedes guiarte nuestro tutorial LCD: http://www.naylampmechatronics.com/blog/34_Tutorial-LCD-conectando-tu-arduino-a-un-LCD1.html

    • Avatar
      Johnny
      ago 22, 2016

      Hola señores de Naylamp buenas tardes. Quisiera saber si me pueden ayudar con la siguiente implementacion: Si el valor esta dentro del rango del cero y cambia por ejemplo a 500 g en 0,5 segundos, quisiera capturar el valor de peso cuando se cumpla ese periodo de tiempo. Es eso posible? Gracias por la ayuda.

    • Avatar
      ber
      ago 23, 2016

      Buen dia, me interesaria saber como poder ver la información el un lcd con teclado que acabo de adquirir, me podrias pasar info? Gracias

      • Avatar
        Naylamp
        ago 26, 2016

        Hola Ber, depende del modelo de LCD que tengas, puedes revisar nuestro tutorial LCD en caso tengas uno de esos modelos: http://www.naylampmechatronics.com/blog/34_Tutorial-LCD-conectando-tu-arduino-a-un-LCD1.html

    • Avatar
      DaNieL
      ago 29, 2016

      Hola buenas, necesito conectar dos celdas de 50 kg(cada una con tres cables) haciendo un puente y conectarlo al módulo HX711; me podrias decir que necesito y como conectarlas. Estuve mirando por aqui https://learn.sparkfun.com/tutorials/load-cell-amplifier-hx711-breakout-hookup-guide?_ga=1.86024477.420053681.1422640159pero no entiendo algunas cosas

      • Avatar
        Naylamp
        sep 2, 2016

        Hola Daniel, Las celdas de 3 hilos no tiene puente, por eso como explica en el link que comentas, necesitas 4 para formar el puente: las conexiones serian: https://cdn.sparkfun.com/datasheets/Sensors/ForceFlex/SparkFun%20Load%20Sensor%20Combinator%20v11.pdf

    • Avatar
      felipe cardona
      ago 29, 2016

      Hola que interesante , quiero realizar esto mismo pero con una celda de 500 kg se puede realiza con el modulo hx 711 o lo realizamos con otro modulo gracias

      • Avatar
        Naylamp
        sep 2, 2016

        Hola Felipe, puedes usar el HX711 lo único que cambiaría seria la escala, que como explica en el tutorial se calcula fácilmente.

    • Avatar
      yeisson
      sep 7, 2016

      Hola, estoy usando una celda de 350kg, despues de un tiempo comienza a descalibrarse se sube 2 kg y se nota entre mas peso, al estar sin peso no se nota que se cambie el peso siempre permanece en 0, pero al poner 20kilos sale 19 o 21 y en 60 sale 62 o 59, es como si el peso estuviera en función del tiempo, alguna idea para darle mas estabilidad. muchas gracias

      • Avatar
        Naylamp
        sep 14, 2016

        Hola Yeisson, realiza la calibración usando un valor cercano al valor de tu celda por ejemplo 250Kg o 300Kg, ten en cuenta que al aumentar el rango la precisión disminuye, podría ser también que tu celda esté defectuosa. Si oscila puede ser por ruido en el peso(objetos con movimientos).

      • Avatar
        angel
        abr 7, 2017

        hola que tal, entre mas peso tenga la celda de carga al momento de la calibracion es mas exacta su medicion, es decir si tu celda es de 350kg, la debes calibrar minimo con 200kg. saludos

      • Avatar
        lorenzo
        sep 10, 2017

        es verdad, tengo ese mismo problema, hice las pruebas del programa con un arreglo de 4 celdas, cada uno de 2 toneladas y tenia esa variacion, aumentaba o dismunia el peso, pues cuando las celdas estaban sin peso alguno, en vez de mostrarme 0, me mostraba 2kilos, y se subia aveces hasta 4 kilos sin peso alguno

    • Avatar
      Bon
      sep 14, 2016

      Hola Naylamp tengo un problema a la hora de ejecutar el programa me marca un error en alguna libreria este es el error que me marca: /home/control02/sketchbook/libraries/HX711-master/HX711.cpp: In member function 'long int HX711::read_average(byte)': /home/control02/sketchbook/libraries/HX711-master/HX711.cpp:97:9: error: 'yield' was not declared in this scope yield();no se a que se deba con la yield();

    • Avatar
      Bom
      sep 14, 2016

      Hola Naylamp tengo un problema en algunas de las librerias este en el error que me marca:/home/control02/sketchbook/libraries/HX711-master/HX711.cpp: In member function 'long int HX711::read_average(byte)': /home/control02/sketchbook/libraries/HX711-master/HX711.cpp:97:9: error: 'yield' was not declared in this scope yield();no se si me puedas ayudar.

      • Avatar
        Naylamp
        sep 21, 2016

        Hola, intenta instalar nuevamente la librería, y si persiste intenta probar con otra versión del IDE. Trabajando con el ejemplo que mostramos sin hacer ninguna modificación no te debe de salir ningún error. Saludos

    • Avatar
      josedu
      sep 18, 2016

      Hola amigo, excelente aporte, quisiera anexarle a este proyecto un bluetooth y una pantalla lcd, como lo puedo hacer, gracias, saludos

      • Avatar
        Naylamp
        sep 21, 2016

        Hola José, va a depender de que es lo que quieres enviar por el bluetooth, si solo es trasmitir lo mismo que en el ejemplo se envía a la PC, entonces sin modificar el código instala el bluetooth en el RX0 y TX0 del arduino y desde un terminal serial en Android podrás visualizar los datos, puedes guiarte del Tutorial Bluetooth . Para el caso del LCD instálalo en los Pines digitales que te sobren: Tutorial LCD

    • Avatar
      José
      sep 19, 2016

      Buen día NayLamp.. ¿como puedo hacer para que el resutado lo mande a través de un modulo Bluetooth HC-05.?

      • Avatar
        Naylamp
        sep 21, 2016

        Hola José, trabájalo como si fuera una comunicación serial, sin modificar el código puedes instalar el bluetooth en el rx0 y tx0 del arduino, o si a la vez quieres también comunicarte con la PC, trabaja con un SoftwareSerial para el bluetooth o con los rx1 y tx1 en caso trabajes con Arduino mega. Guíate del Tutorial Bluetooth

    • Avatar
      Jeison Diaz
      sep 19, 2016

      Hola buenos dias. Amigo observe tu proyecto y es excelente, Queria preguntarte una cosa, lo que pasa es que tengo que realizar un proyecto para el colegio y debo llenar envases de 100mL, entonces pienso hacerlo con electroválvulas que por medio del peso cuando la botella se llene estas se cierren, son 12 electroválvulas. No se si tu me puedes colaborar con cualquier información o recomendación o si es posible hacer este proyecto con tu sistema. Agradezco cualquier información que me puedas suministrar. Gracias.

      • Avatar
        Naylamp
        sep 21, 2016

        Hola Jesion, Si en tu proyecto no necesitas precisión para los 100mL puedes trabajar solo abriendo la válvula por un tiempo X, siempre y cuando el caudal sea constante. La otra forma de hacerlo es por peso, para esto a nuestro ejemplo solo agrégale una condición If() para comparar el peso y cerrar la electroválvula. Para trabajar las electroválvulas usa un Modulo relay

    • Avatar
      Danel
      sep 24, 2016

      Y como le colo la convercion para hacerlo Fuerza osea en Newtons

      • Avatar
        Naylamp
        sep 30, 2016

        Hola Daniel, solo multiplica el peso en kilogramos por el valor de la gravedad. O también has la calibración usando unidades de N en lugar de Kg.

    • Avatar
      Gonzalo Borja
      sep 26, 2016

      Que tal Naylamp, excelente proyecto, ando haciendo una maquina de tensión universal operada por un motorreductor. El problema es que cada que cambio el sentido de giro del motor por un interruptor de giro el arduino se cuelga y necesito reiniciarlo para que vuelva a funcionar, ojala puedas ayudarme en este problema. Gracias

      • Avatar
        Naylamp
        sep 30, 2016

        Hola Gonzalo, necesitas conectar diodos para eliminar las corrientes que se generan cuando conmutas la tensión. Las diodos conéctalos de la misma forma como se conectan los diodos en un puente H , esto si estas usando la misa fuente para el motor y el arduino. Si usas relees también deben tener su diodo en sentido inverso en paralelo a la bobina. Puedes agregar condensadores en paralelo a la fuente con el fin de eliminar el ruido.

    • Avatar
      Gustavo Espínola
      oct 3, 2016

      Holaa no me pesa nada. Estoy usando una celda de carga de 20 kg de capacidad y al momento de calibrar me aparece el peso de 0 por mas de que le cargue 19 kg en la celda .

      • Avatar
        Naylamp
        oct 14, 2016

        Hola Gustavo, si los valores no cambian al cambiar el peso puede ser que tengas un error de conexión o que la galga de tu celda esté rota.

    • Avatar
      Juan David
      oct 7, 2016

      Hola Naylamp, muchas gracias por compartir tu conocimiento. Ya realice el montaje de los elementos, hice la calibración y pude obtener el peso. Sin embargo, cuando no hay ningún elemento sobre la balanza no se queda estable en cero y se muestran valores cercanos a el. Creo que existen problemas de ruido quisiera saber si por favor me puedes ayudar a solucionarlo. Muchas gracias!

      • Avatar
        Naylamp
        oct 14, 2016

        Hola Gustavo, como mencionas puede ser por ruido, eso significa que los valores oscilan alrededor de cero esto lo solucionas con un filtro pero si el valor está lejos de cero se debe a la calidad de tu celda, dejando un botón para Tara se puede solucionar eso.

    • Avatar
      steven
      oct 9, 2016

      Que interesante proyecto, también lo puedo usar con una celda de carga de 40kg?

      • Avatar
        Naylamp
        oct 14, 2016

        Si Steven, siempre y cuando la celda se de 4 hilos.

    • Avatar
      Jesus Ortega
      oct 10, 2016

      Que tal, excelente trabajo. Existe alguna manera de mandar los datos del monitor serial automaticamente a arduino? Gracias

      • Avatar
        Naylamp
        oct 14, 2016

        Hola Jesus, Si, nosotros trabajamos con el monitor serial para que sea fácil de implementar y probar el tutorial. Pero puedes usar botones e indicadores led o una pantalla LCD como interfaz.

    • Avatar
      Christian
      oct 12, 2016

      hola.... Yo quisiera adquirir los materiales. Me supongo que me servirá para una celda de carga de 1000 kg.Excelente todosaludos

      • Avatar
        Naylamp
        oct 14, 2016

        Hola Christian, puedes trabajar con cualquier celda que tenga 4 hilos, estos internamente tienen una galga en configuración de puente Wheatstone. Actualmente solo vendemos nuestros productos en Perú, esperamos en el próximo año empezar a realizar ventas en otros países.

    • Avatar
      yony llorente
      oct 21, 2016

      amigo estoy interesado en algunos elementos. solo quería pregunta si me puede ayudar con la programación de la misma pero anexando un diplay

      • Avatar
        Naylamp
        oct 28, 2016

        Estimado Yony, para trabajar con un LCD sigue la misma lógica, reemplaza los Serial.print() LCD.print(), puedes guiarte de nuestro Tutorial LCD

    • Avatar
      Javier
      oct 23, 2016

      Hola quería saber si se puede hacer sin el módulo HX711,colocando directamente los dos cables de señales de la celda de carga al Arduino,uno en la entrada analógica y otro en gnd.Los otros dos cables E+ y E- conectarlos en +5 y gnd del Arduino o con una fuente aparte.

      • Avatar
        Naylamp
        oct 28, 2016

        Estimado Javier. Los 4 cables de la celda corresponden a un Puente wheatstone, dos pines son para alimentar el puente y en los otros 2 debes medir la diferencia de voltaje, si uno de esos pones a gnd estarías afectado la configuración del puente. Puedes intentar medir las dos salidas y hacer una resta para obtener el voltaje. Ten en cuenta la precisión y resolución que deseas obtener. Un transmisor HX711 tiene un ADC de 24bits en cambio el ADC de arduino es de solo 10bits.

    • Avatar
      Rodolfo
      oct 24, 2016

      Buen día Oye quisiera saber si se pueden conectar 4 celdas de carga simultáneamente a un solo arduino

      • Avatar
        Naylamp
        oct 28, 2016

        Estimado Rodolfo, si es posible, pero cada uno con su propio transmisor HX711, En el programa deberás crear un objeto diferente para cada celda por ejemplo: HX711 balanza2(Pin_DOUT2, Pin_CLK2); Te recomiendo calibrar las celdas de forma individual.

    • Avatar
      Enrique Arvizu
      oct 29, 2016

      Hola, me gustaría hacer este proyecto pero que se pueda hacer la calibración directamente desde un teclado, ya instalado todo. Tengo una idea de cómo hacerlo (Tendría que leer y sustituir valores en el programa automáticamente, es decir que el balanza.set_scale inicialmente sea X y después se remplace por el valor obtenido) . ¿Me podrian ayudar? GRACIAS.

      • Avatar
        Naylamp
        nov 16, 2016

        Hola Enrique, lo que planteas es la forma correcta de trabajar, nosotros lo separamos en dos programas para una mejor comprensión. Tendrías que implantar una función para el calibrar donde el operario ponga un peso patrón por ejemplo de 10Kg y el programa calibre de forma automática, el valor de la escala nueva se debe guardar en la eeprom. Y antes de inicializar la balanza debes de leer desde la eeprom el valor de la escala.

    • Avatar
      Cesar Diaz
      nov 1, 2016

      Excelente Aporte amigo !!!

    • Avatar
      Ivan Moreno
      nov 11, 2016

      Hola, me gustaria saber si puedo usar el Hx-711 con una celda de carga de 4 toneladas y como hago para realizar la tara de este. Muchas gracias por tu ayuda.

      • Avatar
        Naylamp
        nov 16, 2016

        Hola Ivan, el HX711 internamente realiza la lectura de un puente wheatstone que conforma la galga de la celda, amplifica y digitaliza la lectura. Si tu celda tiene salida de puente wheatstone deberías poder trabajar normalmente.

    • Avatar
      alejandro gutierrez
      nov 16, 2016

      y si la celda de carga solo tiene 3 cable que hago ? gracias

      • Avatar
        Naylamp
        nov 16, 2016

        Hola Alejandro si la celda tiene 3 terminales entonces no tiene una salida de puente wheatstone, requisito para poder trabajar con el HX71. Para poder trabajar necesitas conseguir 4 celdas y armar el puente wheatstone, como es el caso de las celdas tipo botón que se encuentras en las balanzas digitales.

    • Avatar
      diego
      nov 19, 2016

      Buenas tardesUna pregunta como puedo hacer para visualizar el peso en una LCD 16X2.Gracias

      • Avatar
        Naylamp
        nov 26, 2016

        Hola Diego, para trabajar con un LCD solo reemplazado agrega junto a los Serial.print() un LCD.print(), puedes guiarte de nuestro Tutorial LCD

    • Avatar
      Pablo
      nov 22, 2016

      Hola, esta muy bueno, quería saber como podemos saber la resolusión minima en base a la celda de carga que se seleccione, no se si estoy en lo correcto, pero puede ser que sea el peso Maximo de la celda dividido 2^24 o es un parametro de la propia celda? Gracias!!

      • Avatar
        Naylamp
        nov 26, 2016

        Hola Pablo, efectivamente la resolución está definida por el ADC del HX711 que es de 24bits, y se determina como mencionas, pero la precisión si depende de la calidad de la galga o celda.

    • Avatar
      Jaime Orea
      nov 24, 2016

      Hola buen dia a todos primeramente quiero darle las gracias a autor de esta pagina y decirle q esta padre su proyecto, quisiera su apoyo para ver si es posible q la lectura q estoy leyendo me la convierta a un voltaje de salida de 0-5 VDC utilizando un DCP4921 ya tengo funcionando gracias a su proyecto la celda y el display solo me falta dar esa salida con DCP4921 pero aun no lo logro la celda de carga es de 5 KG. Esta Señal necesito enviarla al PLC a travez de una Tarjeta analogica q tiene resolucion de 4095 paso en unidades de ingenieria, Me podrian hacer favor de apoyar en mi proyecto. Muchas gracias a todos y espero me puedan brindar su apoyo. Saludos Jaime

      • Avatar
        Naylamp
        nov 26, 2016

        Estimado Jaime si te refieres al MCP4921, también es de 12 bits, y para enviar, tendrías que escalar tu voltaje a un valor de 0 a 4025, por ejemplo con la función peso_cuentas=map(peso, 0, 5000, 0, 4025); (peso en gramos) y seguidamente enviarlo a tu MCP, para trabajar el MCP puedes usar la librería DAC_MCP49xx.h
        https://github.com/exscape/electronics/tree/master/Arduino/Libraries/DAC_MCP49xx

    • Avatar
      Jaime Orea
      nov 24, 2016

      Tambien me gustaria saber su opinio si seria mejor manejarlo directamente en forma serial para tener mayor precision y sea mas rapida la lectura que sea enviada en forma serial a una tarjeta serial del plc? Me recomienda esta opcion y si podria apoyarme como desarrollarla por favor tengo un arduino uno.Muchisimas gracias por su apoyoJaime

    • Avatar
      Fernando
      nov 25, 2016

      ante todo gracias por compartir tu excelente trabajo .MI pregunta va por el tema de cambiar de placa de arduino por nodemcu esp8266 12e si se podria y que tengo que cambiar en tu codigosaludos Fernando

      • Avatar
        Naylamp
        dic 14, 2016

        Hola Fernando, puedes cambiar de placa y el programa no cambia, solo declara el pin al GPIO en donde lo has conectado.

    • Avatar
      Odair
      nov 27, 2016

      Boa noite!Meu nome é Odair e sou do Brasil / Santa Catarina, e sou de Içara, que fica 200km de Floripa. Estou tentanto comunicar o HX711 com um PIC16F877A, mas estou um pouco confuso. Por acaso o amigo tem algúm exemplo de rotinas PIC Assembly ou CCS.Grato, Odair

      • Avatar
        Naylamp
        dic 14, 2016

        Hola Odair, EL protocolo de comunicación del HX711 es fácil de implementar, revisa la librería que usamos allí está la implementación de las rutinas necesarias. Como observas la librería https://github.com/bogde/HX711/blob/master/HX711.cpp esta implementada en lenguaje C, podrías implementarlo en CCS

    • Avatar
      javier
      nov 29, 2016

      Hola que tal gracias primero por todo, muy entendible, tengo una duda cuanto es la sensibilidad de lectura en volt, ejemplo quiero leer una señal de 30 mv crees que me pueda amplificar y poder leer de mv en mv en el arduino? de antemano gracias

      • Avatar
        Naylamp
        dic 14, 2016

        Hola Javier, la sensibilidad HX711 es de 12bits, y tranquilamente podrías realizar lecturas en milivoltios. Pero mejor es usar un ADC, he incluso directo al arduino si usas el voltaje de referencia interno, la entrada analógica tendría una resolución de 1.1V/1024=0.00107V = 1mV y si deseas más resolución, amplifica la señal con un LM358.

    • Avatar
      Ruben
      dic 14, 2016

      Mi programa desciende desde -180 hasta 53000 y sigue bajando con cada lectura, alguna idea de lo que pasa?

      • Avatar
        Miguel
        dic 18, 2016

        Hola Ruben, es posible que tengas conectada o la alimentacion de la celda , o la señal , invertidos, prueba cambiando entre si los cables verde y blancos. Saludos

    • Avatar
      Rubén
      dic 14, 2016

      Perdón, desde -180 hasta -53000. y sigue bajando.

      • Avatar
        Naylamp
        dic 23, 2016

        Podría ser por el ruido o instalación, tendrías que ver si después de escalar ese error es significativo, por ejemplo si es mayor a 10g o 100g entonces podría estar defectuosa tu celda.

    • Avatar
      Mario
      dic 15, 2016

      Hola, no soy capaz de agregar una condicion a la varialble balanza.gets_units(20); lo hago de esta manera: " if (peso >11) { Serial.print("ok"); } else { Serial.print("x"); }"y no me sigue las acciones

      • Avatar
        Naylamp
        dic 23, 2016

        Hola Mario, balanza.gets_units(20) te devuelve un valor de tipo flotante si estas usando una variable tiene que ser del mismo tipo. En Operaciones las constantes tambien se trabajan como flotante, por ejemplo 11.0 en lugar de 11 saludos.

    • Avatar
      Miguel
      dic 18, 2016

      Hola queria preguntar si alguien a intentado usar los dos canales de lectura que trae el modulo, sera posible? Gracias

    • Avatar
      manuel quezada
      dic 20, 2016

      que tal amigo seria posible unir dos celdas de 10kg para poder pesar hasta 20 kg . no puedo conseguir una celda de 20kg :(

      • Avatar
        Naylamp
        dic 23, 2016

        Hola Manuel, Tendrías que ubicar cada celda en dos puntos de tu balanza, el peso se distribuiría en esos dos puntos de apoyo, el peso total seria la suma de cada celda. Pero tendrías que usar un transmisor hx711 para cada celda.

    • Avatar
      Joel Korb
      dic 21, 2016

      Hola que tal, logre hacerlo andar en una pantalla tipo Tv y la medicion se va actualizando y va mostrando la nueva medición que hace una abajo de la otra infinitamente, como tendría que hacer para que se actualice en el lugar? Muchas Gracias espero tu respuesta!

      • Avatar
        Naylamp
        dic 23, 2016

        Hola Joel, En el monitor serial de Arduino no se puede realizar lo que solicitas, pues solo es monitor serial, En un LCD por ejemplo si se puede, pues allí se trabaja con un cursor, para escribir una nueva lectura se limpia la pantalla, posteriormente se ubica el cursor en la primera posición y se escribe el nuevo valor.

    • Avatar
      Guillermo
      dic 26, 2016

      Estimado Naylamp No encuentro manera de que la librería HX711 funcione ,probé todas las posibilidades que se me ocurrieron y lo único que cambia es el tipo de error pero siempre el error, el que puedo describir en algunos casos es "error de compilación y algo en ingles que no lo entiendo (me refiero al idioma ingles) y termina el párrafo con "SCALE". Cambiando el nombre de la librería HX711 , hx711, Hx711 y no hay caso. Muchísimas gracias por prestarme atención y ver si puedes indicarme posibles erroes que este cometiendo. Abrazo grande. Felices Fiestas. Guillermo.

      • Avatar
        Lucero
        jul 9, 2018

        Hola, disculpa pudiste resolver el error del programa es que a mi me pasa exactamente lo mismo

    • Avatar
      HERIBERTO VARGAS
      dic 28, 2016

      Cada vez que enciendo la celda de carga utilizando los codigos que estan en el foro me da valores diferentes se descalibra la celda (200kg), la calibro con la escala y tambien hice una curva de calibracion, pero a los minutos o al apagar y encender el arduino ya se descalibra. que debe ser?

    • Avatar
      kennedy
      ene 2, 2017

      amigos estoy buscando la ficha tecnica de la celda de carga

    • Avatar
      Jorge Luis
      ene 3, 2017

      Hola, una consulta, el HX711 para comunicarse con el arduino que protocolo de comunicación utiliza?? quiero hacer el enlace entre HX711-PIC pero no se que protocolo usar, es RS232, SPI, I2C

      • Avatar
        Naylamp
        feb 1, 2017

        Hola Jorge, el HX711 usa su propio protocolo, es fácil de implementar, solo usa un pin de reloj y uno de datos, para leer datos necesitas hacer shiftIn.
        La librería que utilizamos https://github.com/bogde/HX711/blob/master/HX711.cpp esta implementada en lenguaje C, podrías implementarlo en CCS

    • Avatar
      Valdir
      ene 4, 2017

      Olá,Parabéns pelo o trabalho. Gostaria que saber como posso fazer para mostrar os dados em 4 displays de sete segmentos multiplexados. Quando coloco só o código do display na função loop, os displays funcionam. Quando coloco o código da balança, os displays ficam só piscam e apagam rapidamente.

    • Avatar
      Julio
      ene 9, 2017

      Buenas. Estoy haciendo un proyecto y necesito tomar unas mediciones de carga con los ciclos de un motor el encoder funciona a 12 voltios tengo una fuente para alimentar este y el arduino aparte en el momento que conecto el modulo como se indica en el tutorial al arduino alimentado con la fuente de 12 voltios este deja de funcionar y se bloquea la comunicación con el pc,

    • Avatar
      juan david
      ene 14, 2017

      ha sido de gran ayuda este turiual, hasta el momento todo va muy bien, estoy usando una celda de carga de 3 kg,despues de hacer todos los procedimientos dichos, coloco el peso conocido y lo arroja, lo que no he podido es poner correctamente las condiciones y poder activar un led, quiero que si la entrada analoga es mayor o menor que dicho peso se prenda o se apague, de que forma coloco las condiciones para peso

      • Avatar
        Naylamp
        feb 1, 2017

        Hola Juan, solo realiza la lectura y almacena el valor en una variable flotante, o también puedes comparar directamente si ya no vas a utilizar más adelante la variable. Por ejemplo:
        if(balanza.get_units(20)>2.0){
        //Led on
        }
        Else {
        //led off
        }

    • Avatar
      alejandro
      ene 17, 2017

      amigo que buen tutorial muchas gracias, me gustaria saber como hacer para que me arroge el peso de manera mas rapida ya que al agregar unas condiciones indica los valores demaciado lento muchas gracias

      • Avatar
        Naylamp
        feb 1, 2017

        Hola Alejandor, evita usar pausas, o disminuye los delay() que tengas.

      • Avatar
        Juan
        feb 20, 2017

        Buenas, quizá también puedas utilizar una caja sumatoria, las venden por internet, aquí se pueden conectar 4 celdas y sale una señal de la suma de las 4, hay también para 8 celdas. Saludos.

    • Avatar
      Miguel
      ene 21, 2017

      Genial tutorial, me pregunto, si deseo poner 4 sensores al mismo tiempo...es posible? y si es asi, cual seía la configuración de las conexiones? Gracias!!!!

      • Avatar
        Naylamp
        feb 1, 2017

        Hola, Sí puedes conectar más de un sensor pero cada uno con su transmisor, las conexiones serían las mismas pero los pines DT y CSK en diferentes pines del arduino. En el programa también declaras 4 objetos unos para cada celda.

    • Avatar
      Santiago
      ene 23, 2017

      Quiero hacer ese proyecto pero utilizando un PIC utilizando lenguaje C. Para ello necesito saber que tipo de comunicación utilizaria. muchas gracias

      • Avatar
        Naylamp
        feb 1, 2017

        Hola Santiago, si revisas la librería que utilizamos utilizamos https://github.com/bogde/HX711/blob/master/HX711.cpp esta implementada en lenguaje C y no usa ningún protocolo de hardware, con un shiftIn es suficiente para leer datos, En CCS podrías implementarlo fácilmente.

    • Avatar
      Luis Alberto Mata Carvajal
      ene 31, 2017

      Buenos días,En la tabla indica A- Verde y A+ Blanco, pero en la imagen están al revés. Revise un poco y creo que lo correcto es lo de la imagen. ¿Existe alguna medición que pueda hacer sobre la celda de carga que me permita estar 100% seguro que los colores tienen esa conexión?Quiero hacer una aplicación para una balanza ganadera de 1500 KG, ¿considera que con un punto de calibración es suficiente o valdría la pena hacer un programa con múltiples puntos?Saludos.

      • Avatar
        Naylamp
        feb 1, 2017

        Hola Luis, efectivamente hay un error en la imagen, la tabla esta correcta. Esos dos pines son la salida de la galga, si se conectaran al revés la lectura saldría negativa, y disminuiría cuando se le agrega peso. Lo correcto es invertir los cables y no la posición de la celda, puesto que no todas las celdas suportan compresión y tención a la vez, verifique que la fuerza del peso esté en la dirección que la celda indica.

    • Avatar
      Luis
      feb 6, 2017

      Hola, Muy buen tutorial! Pero tengo una duda, por qué antes de calibrar la balanza "balanza.tare(20)" ? qué significa el 20? también, qué significa el 10 en "balanza.get_value(10),0)"? Por lo que lei en el modulo de GitHub para calibrar la balanza tare() y get.value() no deben de tener parametros. Saludos

      • Avatar
        Naylamp
        feb 13, 2017

        Hola Luis, en ambos casos es el número de lecturas que va a tomar el sensor, por ejemplo balanza.get_value(10),0) significa que tomara 10 lecturas y te devolverá el promedio de estas, esto es útil para eliminar el ruido en el peso. Si no ponemos ningún parámetro por defecto es 1.

    • Avatar
      cesar
      feb 14, 2017

      Tengo una balanza de 1500 kg de tedea y cuando copio los programas al arduino no me sale ningun valor cuando uso la celula carga. La celula carga es de 6 hilos. Subiendo el programa tendria que funcionar? o tengo que escribir mas funciones o unir los dos programas?

      • Avatar
        Naylamp
        feb 18, 2017

        Hola Cesar, debería funcionarte cualquiera de los dos programas de forma independiente, Posiblemente tengas mal conectado la celda, ten en cuenta que en el HX711 los pines (E+ y E-) es salida de voltaje para la celda y (A+ y A-) son entradas por donde se realiza la lectura de la celda. Si tu celda es de 6 pines, Identifica bien los terminales los dos que sobran deben ser para compensar la caída de voltaje de los cables.

    • Avatar
      Jesly
      feb 14, 2017

      Muy buena la explicación, la pregunta es como puedo obtener el valor del peso de unbojeto mediante una LCD,(No en monitor Serial del Arduino), como lo obtendría mediante los pines!!

    • Avatar
      Enrique M
      feb 15, 2017

      Cuanto tiempo se puede dejar la carga o el objeto a pesar sobre la balanza encendida???

      • Avatar
        Naylamp
        feb 18, 2017

        Hola Enrique, va a depender de la calidad de la celda, si lo operas en el rango adecuado teóricamente no debería tener límite de tiempo, con respecto al HX711 y el arduino no habría ningún problema.

    • Avatar
      Joel
      feb 16, 2017

      Hola, quería saber si funciona con placa raspberry, gracias!

    • Avatar
      Juan José
      feb 18, 2017

      Buen día.Estoy haciendo un proyecto de báscula, ya logré implementar el circuito con la celda de carga de 6kg. Utilicé HX711 y el peso lo muestro en un LCD 16x2. Todo marcha bien, ya logré calibrar el peso, con una tara de 2Kg. Lo que no logro hacer es mantener el peso estable, por ejemplo tengo una división de 0.01g y se mueve el peso muy constante, como puedo lograr que el peso esté estable??

      • Avatar
        Naylamp
        mar 11, 2017

        Estimado Juan, es muy común que después de realizar un peso la balanza no llegue exactamente a cero, pero este error debería ser pequeño o despreciable, esto se debe a la elasticidad de la estructura de la balanza e incluso al de la celda o tan solo por mover la balanza. Por lo general se agrega un botón para sestear a 0kg cuando pase esto.

    • Avatar
      Alejandro Calfani
      feb 20, 2017

      Que tal NAYLAMP, desde ya agradezco tu aporte pues he aprendido un montón de cosas con tu proyecto y las explicaciones que les as dados a todas las personas que te preguntan distintas cosas. Soy bastante novato con respecto a programa en arduino Mi pregunta es saber si me podrías iluminar ayudándome con mi proyecto la idea del mismo es que la celda de carga cuando tome el peso de 500g mande la orden de girar un motor paso a paso una cierta cantidad de pasos (lo digo así por que aun no tengo claro cuantos pasos ) desde ya te agradezco nuevamente por brindar tus conocimientos

      • Avatar
        Naylamp
        mar 11, 2017

        Hola Alejandro, podrías almacenar el peso en una variable flotante para después comparar, o también puedes comparar directamente si ya no vas a utilizar más adelante el peso. Por ejemplo:
        if(balanza.get_units(20)>0.5){
        funcion_mover_pap();
        }

    • Avatar
      Sergio Pluchinsky
      feb 22, 2017

      Hola, pude hacer funcionar mi proyecto, pero necesito mas lecturas por segundo. Ahora con balanza.get_value(1) estoy en unas 10 lecturas/seguno, como podria aumentar este numero? Saludos

      • Avatar
        Naylamp
        mar 18, 2017

        Hola Sergio, para saber el tiempo exacto que demora en realizar una lectura, puedes hacerlo de la siguiente forma
        Serial.print("t=");
        long Ti=millis();
        float p=balanza.get_value(1);
        Serial.println(millis()-Ti);
        Si el resultado inferior 100ms ( 10lect/s) significa que en tu proyecto lo que está demorando en realidad no es la lectura sino el resto de tu programa, una de las funcionalidades que quita tiempo al procesador es la transmisión serial, evita enviar mucho texto y aumenta la velocidad de transmisión

      • Avatar
        Carlos
        jul 16, 2017

        El HT711 tiene un pin que establece la cantidad de valores que entrega por segundo.. Este pin puede estar en HIGH o LOW y entrega 10 SPS u 80 SPS (con aumento del ruido).

    • Avatar
      Jesly
      feb 22, 2017

      Ya me arrojó el valor pero en este caso me sale así por ejemlo si yo quiero el peso de 1Kg de una Sal me arroja un valor de 0.720 Kg ; osea no es lo que quiero NAYLAMP, POR Ejemplo si yo quiero el peso de 1kg tiene que salir 1.0 Kg y si quiero el peso de un objeto que pesa 3.5 Kg tinene que salir el resultado correcto!!!

      • Avatar
        Naylamp
        mar 18, 2017

        Hola Jesly, solo es un error de calibración, vuelve a calibrar la celda, usa un peso patrón cuyo peso exacto sea conocido.

      • Avatar
        Gonzalo
        mar 22, 2017

        En mi experiencia en este proyecto te puedo decir que debes poner en el peso patron como minimo un valor del 10% del valor total de tu celda de carga, abajo de ese porcentaje el valor empieza a variar considerablemente..

    • Avatar
      Jorge Grillo
      mar 12, 2017

      Hola Naylamp, quería consultarte lo siguiente, es normal que las lecturas varíen tanto. En el ejemplo que das para calcular la escala decís que "Con uno o el promedio de estos datos calculamos el valor de la escala que usaremos", pero varían los últimos 3 dígitos de las lecturas, no es mucho? Desde ya muchas gracias. Saludos

      • Avatar
        Naylamp
        mar 18, 2017

        Hola Jorge, Si es normal, esto es porque la resolución del ADC del HX711 es de 24bits, con esto detecta variaciones en la celda que pueden ser bien pequeñas. Usando filtros digitales se podría reducir o eliminar estas variaciones, pero mientras estas no sean significativas en el peso, no es necesario.

    • Avatar
      Gonzalo Borja
      mar 22, 2017

      Que tal, este proyecto ha sido de gran ayuda para un proyecto que tenemos, solo que he tenido varias dudas con respecto a esto espero puedas ayudarme.Tengo una maquina de tension universal, para realizar pruebas de despegado en zapatos. El problema reside que en otras maquinas los registros de kg son mayores, en cuanto a mi maquina no me da los valores que esperaria Cabe resaltar que se realiza una grafica de "kg vs desplazamiento" y es ahi donde reside el problema, tendre que hacer alguna conversion para que me de los kilogramos que me dan en otras maquinas?Espero me haya dado a entender, saludos!

      • Avatar
        Naylamp
        mar 31, 2017

        Hola Gonzalo, Calibra nuevamente con un muestra patrón que haya sido también verificada en las maquinas que mencionas. Podría estar mal calibrada o con errores al calcular la tara.

    • Avatar
      Enzo
      mar 23, 2017

      Hola es necesario usar siempre ese transmisor?, que pasa si lo hago de la celda de carga directo al PIC

      • Avatar
        Naylamp
        abr 4, 2017

        Hola Enzo, una celda de carga tienen configurado internamente una galga en un puente wheatstone, teóricamente el voltaje medido en dos de sus terminales es proporcional al peso, utilizando dos canales analógicos podrías medir la diferencia de voltaje y con esto estimar el peso; pero el problema es en la precisión que vas a tener, el HX711 tiene un ADC de 24 bits muy superior en comparación con el ADC de un Arduino o PIC de 10bits.

    • Avatar
      Cube
      mar 28, 2017

      Hola grandioso trabajo Estoy trabajando en un proyecto el cual necesito saver el peso en cuatro puntos distintos simultaneamente, me pueden ayudar de como realizarlo. En un punto lo tengo claro.Gracias

      • Avatar
        Naylamp
        abr 4, 2017

        Hola Cube, Puedes conectar más de una celda al arduino, pero cada una con su transmisor, en el programa tendrías que crear un objeto para cada celda. De esta forma puedes saber el peso en cada punto o celda. También puedes usar cuatro celdas de 3 hilos y con una configuración de puente wheatstone usar un solo HX711, pero esta forma obtendrás el peso total de las 4 celdas.

    • Avatar
      Jesly
      abr 8, 2017

      Otra preguntita... Cuando busco en el Fritzin esta Celda de Carga, no aparece, eso a que se debe, que mi version de Fritzing está muy desactualizada, porque la busque por ej: 1.-) Cell Load 2.-) Celda de Carga 3-) Trasmisor HX711 etc..............

      • Avatar
        Naylamp
        abr 30, 2017

        Hola Jesly, la imagen que usamos no es de fritzing, es una imagen editada.

    • Avatar
      David
      abr 16, 2017

      Amigo yo tengo una celda, pero es la que solo contiene tres cables(rojo, blanco y negro), como puedo hacerla funcionar con este modulo?

      • Avatar
        Naylamp
        abr 30, 2017

        Hola David, ese tipo de celdas no tienen salida de puente wheatstone, necesitas 4 de esas para poder usar el módulo.

    • Avatar
      collado
      abr 17, 2017

      hola una pregunta sera posible adaptarle un buzzer que se prenda a cierto peso y que no se apague asta que se le quite peso gracias de antemano

      • Avatar
        Naylamp
        abr 30, 2017

        Hola Collado, solo compara el peso con un valor de referencia. Puedes también almacenar previamente el peso en una variable flotante si vas a utilizar más adelante la variable. Ejemplo:
        if(balanza.get_units(20)>8.0){
        //buzzer on
        }
        Else {
        //buzzer off
        }

    • Avatar
      Pedro
      abr 19, 2017

      Hola, excelente trabajo, felicidades, es de gran ayuda. Solo una pregunta, como puedo agregar el boton de sestear a 0 kg o de tara.

      • Avatar
        Naylamp
        abr 30, 2017

        Hola Pedro, utiliza la función balanza.tare(n); donde n es el número de muestras para obtener la tara. Ejemplo:
        if (buttonState) {
        Serial.println("Destarando...");
        balanza.tare(30);
        }

    • Avatar
      Lenin
      abr 23, 2017

      Hola, yo lo intento con una celda de carga de 50kg de las cuadradas planas, pero no me sale ningùn valor, què me recomiendas?

      • Avatar
        Naylamp
        abr 30, 2017

        Hola Lenin, ¿en el monitor serial no te imprime nada o no te muestra el valor correcto de las lecturas? si no te muestra anda podría ser la velocidad de trasmisión de tu monitor serial, si tienes problemas con las lecturas, usando el primer programa te debe mostrar algún valor diferente de 0, sino puede que tu HX711 esté defectuoso o mal conectado, si te muestra valores pero estos no cambia con el peso, es porque tu celda está mal conectada o defectuosa.

    • Avatar
      CRISS
      abr 23, 2017

      Me varia mucho la lectura del ADC, y eso hace que varíe mis pesos cada que abro el monitor serial...que me recomiendas?

      • Avatar
        Naylamp
        abr 30, 2017

        Hola Criss, intentas identificar la causa del ruido, podría ser la fuente, la conexión con la PC, algún sensor u actuador externo, la celda, o el objeto en la balanza. Puedes tomar más muestras para obtener un peso más estable, por ejemplo con balanza.get_units(50) o balanza.get_units(100), si el ruido persiste puedes tomar las lecturas por separado y aplicar algún filtro digital, puesto que la librería solo saca un promedio aritmético con las muestras tomadas.

    • Avatar
      fabianpi
      may 2, 2017

      Amigo, he estado investigando y según he leído es posible utilizar el HX711 para sensar transductores con mayor capacidad de peso, en este caso pienso utilizarlo con 2000kg.Piensas que sea posible?

    • Avatar
      ricardo
      may 7, 2017

      Buen día Naylamp. He comprado una celda de carga de 10 Kg. y conectado todo tal y como está en tu sitio. Cargo las librerias y tu codigo para calibrar la futura balanza y lo que obtengo como respuesta en la terminal es:Lectura del valor del ADC: 8388607 No ponga ningun objeto sobre la balanza Destarando... Coloque un peso conocido: Valor de lectura: 0 Valor de lectura: 0 Valor de lectura: 0 Valor de lectura: 0 HAgo presión sobre la celda y siempre 0 en la lectura Si me das una mano, agradecido..!

      • Avatar
        Naylamp
        may 14, 2017

        Hola Ricardo, lo más probable es que tengas mal conectada la celda o tengas una celda defectuosa, intenta probar con otra celda.

      • Avatar
        Jose
        ago 2, 2017

        Ricardo, yo me encontré con un problema similar. Resulta que en la celda que usé, la excitación positiva no es el cable rojo, sino el verde. así, los cable me quedaron: verde (E+), negro (E-), rojo (A-) y blanco (A+)

    • Avatar
      JAIR GONZALEZ
      may 7, 2017

      Excelente aporte, podrías resolverme la siguiente duda, ¿funcionaria este modulo para una celda de carga de 6 hilos ? deseo usarla para 4 celdas de carga de 1000kg, para una bascula ganadera.

      • Avatar
        Naylamp
        may 14, 2017

        Hola Jair, la entrada de HX711 es de puente Wheatstone, (dos pines de alimentación y dos para medir el voltaje), si la celda de carga es un puente Wheatstone va a funcionar normal, en tu caso si tu celda es de 6 pines averigua cual es la función de los otros dos pines, posiblemente sean para compensar la caída de voltaje en los cables.

    • Avatar
      ricardo
      may 7, 2017

      Disculpas, la celda de carga es de 200 kg. no sé porqué salió 10 kg. Gracias.. PD: Encontré el link del fabricante y aquí lo dejo: https://es.aliexpress.com/item/New-Arrival-1PCX-200kg-electronic-platform-scale-load-cell-pressure-balanced-cantilever-load-weight-sensor-New/32703877639.html?spm=2114.43010208.4.70.VbjKRt

    • Avatar
      Lina
      may 8, 2017

      Gracias por tu aporte , lo eh realizado al pie de la letra como tu tutorial lo demanda , las primeras pruebas me ah funcionado de maravilla pero ahora no , resulta que ya sea para evaluar mi valor tara o mi peso real solo me muestra O (cero) , y cuando cambio los pines A1 y A0 si me muestra un valor aunque sea negativo . Me podrias indicar porque sucede esto si es que alcazo el modulo o la galga se daño . Gracias .

      • Avatar
        Naylamp
        may 14, 2017

        Hola Lina, es un problema de celda, revisa si las conexiones no se han movido sino posiblemente tu celda se ha roto, algunas celdas no soportan compresión y tención a la vez y traen un indicador especificando el sentido en el que se deben de aplicar el peso. En este caso es fundamental que celda tenga la orientación correcta. Otra causa por las que la galga se rompe es que se le haya aplicado peso en exceso, o la celda no sea de la capacidad que indica.

    • Avatar
      Jessica
      may 10, 2017

      hola intente desarrollar el proyecto y me sale un error en la programacion en la parte de balanza.set_scale me sale esto 'Clase Q2HX711' no tiene ningún miembro llamado 'set_scale' me podrias ayudar

      • Avatar
        Naylamp
        may 14, 2017

        Hola Jessica, es un problema de librería, verifica si tu librería es la misma del tutorial, intenta volver a instalar la librería.

    • Avatar
      witman
      may 12, 2017

      el modulo de carga HX711, funciona con celdas de carga de 100kg o mas?

    • Avatar
      dylan quintero
      may 16, 2017

      excelente proyecto, a mi me gustaria implementarlo para un sensor de impacto, esto me demanda una lectura mas rapida, ¿como puedo hacer que las lecturas del peso se efectuen con una mayor frecuencia?. Gracias.

      • Avatar
        Naylamp
        may 28, 2017

        Hola Dylan, la máxima velocidad de lectura es eliminando la pausa en el bucle, y realizando una sola lectura con balanza.get_value(1). Pero aun así podría ser lento para tu aplicación, el chip funciona con una velocidad de salida de datos de 10Hz, esto si el pin 15 del chip está en GND, puedes intentar poner el pin 15 a VCC y con esto aumentar la velocidad a 80Hz.

    • Avatar
      toxico
      may 26, 2017

      hola buenas, quisiera saber como hacer para poder medir en gramos, ya que he modificado la escala y al medir 160 g me sale 0.2 g, que mas deberia hacer ? ayuda porfavor

      • Avatar
        Naylamp
        may 28, 2017

        Cuando hagas la calibración en lugar de poner en la ecuación el valor de 4 (para 4kg) usa 4000 o el peso en gramos que estés usando, o también, si ya tienes calculado la escala, simplemente divídela entre 1000.

    • Avatar
      Laura
      may 27, 2017

      Buen dia tu proyecto es genial lo eh echo al pie de la letra y adicional e agregado una lcd , pero tengo un problema me puedes orientar a como usar la memoria eeprom para guardar el ultimo valor que la balanza tome al reiniciar el sistema me lo visualice . Muchas gracias.

      • Avatar
        Naylamp
        may 28, 2017

        Hola Laura, Tienes que guardar la el valor del peso después de cada lectura, el programa no sabe cunado se va a reiniciar el arduino así que debes de asegurarte de estar guardando de forma constante dicho valor en la misma posición para guardar puedes usar la función EEPROM.put(10,ultimo_peso); y en el void setup()o al inicio de tu programa debes de leer dicha posición con EEPROM.get(100,utimo_peso); esto actualizará la variable ultimo_peso con el valor guardado en la posición 10 de la EEPROM

    • Avatar
      Daniel
      jun 2, 2017

      Muy buen aporte amigo y me ayudo bastante para el inicio de un proyecto que estoy realizando para la Universidad, lo que si me gustaria agregarle un sistema de pesaje automático por decirlo así, por ejemplo,cuando mi balanza está en 0 se pueda activar una salida (motor) para dosificar algo, cuando llegue a mi peso meta esa misma salida se desactive, y active otra salida (compuerta con un servo) para descarga de lo dosificado y esta secuencia se pueda repetir un par de veces, es factible eso?, y si es así que se necesita y como se podria llegar a eso?? Agradeceria mucho tu ayuda y asesoría ya que soy nuevo en esto

      • Avatar
        Naylamp
        jun 18, 2017

        Hola Daniel, es totalmente factible, solo son simples comparaciones del peso. Has un diagrama de flujo antes de implementar el código.

    • Avatar
      Luis Enrique
      jun 5, 2017

      Hola, excelente tutorial, solo una pregunta, porque los valores tara (los que el sensor sin peso me arroja) son negativos, y cuando le pongo peso, se disparan los valores, y aunque son similares, todos son negativos, espero puedas ayudarme. Saludos

      • Avatar
        Naylamp
        jun 19, 2017

        Hola Luis, hay dos razones por lo que las lecturas son negativos, una razón es porque la celda está instalada en la dirección opuesta a la que indica. Aplicar la fuerza en el sentido contrario podría dañar la celda. La segunda causa puede ser por invertir los cables verde y blanco. En este caso solo se puede cambiar los cables o multiplicar por -1 la lectura

    • Avatar
      Josue
      jun 7, 2017

      Amigo si quisiera poner un display lcd para visualizar la información como lo conecto?

    • Avatar
      Esteban
      jun 12, 2017

      Hola.podrias comentar por favor que tipo de unidad es la que se arroja como resultado en el programa de calibracion? se puede obtener el valor del voltaje de la celda?gracias!

      • Avatar
        Naylamp
        jun 19, 2017

        Hola Esteban, get_value() devuelve el valor del ADC del módulo pero restando el peso de tara. Puedes usar read_average() para leer el ADC sin considerar la tara y escalar la lectura a voltaje teniendo en cuenta que el ADC es de 24 bits y su rango de entrada es de ±0.5(VCC/GAIN) donde GAIN por defecto es 128.

    • Avatar
      ALEXIS
      jun 24, 2017

      Hola! Me interesa tus productos pero de igual me forma me surge una duda, ¿tienes una celda de carga que soporte hasta 100 o 200 Kilogramos?

    • Avatar
      sergio
      jun 26, 2017

      hola buenas excelente pagina una consulta yo estoy tratando de que la comunicacion sea inalambrica me podrías decir si puedo conectar un modulo de radiofrecuencia al hx711 o diretarmete de blueetoth y recepcionarla en un cabesal

    • Avatar
      Román Borghiani
      jul 18, 2017

      Hola para poder pesar 800kg puedo usar 4 celdas de 200? El código en arduino como seria, leer celda x celda y luego sumar para saber el total? Y otra cosita si la celda la voy a colocar debajo de una jaula para pesar un animal, esa jaula cuanto debería pesar, es decir si la celda es de 200 kg la jaula debe pesar menos q eso? O si uso 4 celdas de 200, el.peso de la jaula debo dividirla x cuatro y no debería superar los 200? O si la celda es de 200 y la jaula pesa 150 hay algún inconveniente? Bueno algo largo fue la consulta, espero q se entienda, desde ya las gracias, saludos

      • Avatar
        Naylamp
        jul 20, 2017

        Hola Roman, si pones más de una celda el peso total seria la suma de las lecturas individuales de cada celda. EL valor de la celda es el máximo peso que la celda puede soportar, Por ejemplo si to celda es de 200Kg, la celda puede medir pesos de 0 a máximo 200Kg, si excedes los 200kg corres el riesgo de malograr la celda. Los 200Kg se consideran el total del peso incluido la tara.

    • Avatar
      Steven
      jul 23, 2017

      si deseo guardar el valor de la balanza en una variable esta variable seria tipo dounble, float o cual? porque con estos dos me coloca un error, o como seria la linea del codigo para almacenar en una variable?

      • Avatar
        Naylamp
        jul 30, 2017

        Hola Steven, la variable tiene que ser de tipo flotante: float peso=balanza.get_units(20);

    • Avatar
      jose luis
      ago 15, 2017

      excelente explicaciones, yo estoy haciendo un proyecto similar pero yo ocupo sensores de presion y mi consulta era que quiero colocar un boton para la tara o cero le agradeseria de mucho su ayuda . gracias

    • Avatar
      Sebastian garcia madrid
      ago 24, 2017

      excelente tutorial, me aclaro muchas dudas y esta muy bien explicado. tengo una duda en:
      void loop() {
      Serial.print("Peso: ");
      Serial.print(balanza.get_units(20),3);
      Serial.println(" kg");
      delay(500);
      cuando se esta calibrando en el 3 se pone 0 y luego cambia a 3. me podrías explicar por favor que significa ese 3 ya que arriba pones double get_value(byte n) donde n en este caso seria 20. gracias y excelente tutorial :3

      • Avatar
        Naylamp
        ago 27, 2017

        Hola Sebastian, el 3 es un parámetro para el serial.print(), es para indicarle la cantidad de dígitos decimales que queremos que envíe.

    • Avatar
      agustin
      ago 24, 2017

      Hola, una consulta, para calibrar la balanza debo tener en cuenta el peso del soporte o base que vaya a colocar en la celda ? o solamente el peso que le coloque despues de calibrarla? Muchas gracias

      • Avatar
        Naylamp
        ago 27, 2017

        Hola Agustin, la base o soporte de la balanza no se considera, esto es considerado tara al iniciar el programa.

    • Avatar
      Paul Efford
      ago 25, 2017

      Muchas gracias! Esta super bien explicado, y me ha sido de mucha ayuda!

    • Avatar
      Jorge
      ago 30, 2017

      Hola mi proyecto se basa en armar una embolsadora la cual tenga una entrada digital para un sensor de posicion y la cualidad de que al llegar el peso o de 25 kg me active una salida digital es posible ? Gracias por la ayuda

    • Avatar
      Roman
      sep 11, 2017

      hola amigos Naylamp, mire quisiera saber si hay forma de guardar el valor de la ESCALA (cuando divides la lectura del ADC entre el peso conocido) en una variable de tipo float, pues al guardar un valor con digitos muy grandes en la eeprom es imposible obtener un resultado igual al que se guarda. Podrian porfavor guisrame en esto. Muchas gracias por su atencion amigos... y bendiciones!!!

      • Avatar
        Naylamp
        sep 24, 2017

        Hola Roman, ESCALA es de tipo flotante, solo declara una variable tipo flotante y asigna dicho valor, recuerda que hay funciones para guardar en la epprom determinado tipo de variable ( EEPROM.put y EEPROM.get ).

    • Avatar
      yeison reyes
      sep 15, 2017

      Una pregunta como le conecto una pantalla lcd que me muestre el valor. Gracias disculpen mi ignorancia.

      • Avatar
        Gustavo
        sep 18, 2017

        https://www.youtube.com/watch?v=VXcKLuOlXFA&index=46&list=PL07515AEF887421B2

    • Avatar
      Diego
      sep 15, 2017

      Necesito calcular un peso en movimiento de un objeto en una cita transportadora. Explico: Si sobre la cinta circula un objeto de 100 grs al pasar sobre la celda de carga tengo un grupo de valores que pueden ir desde 30 a 110 grs por ejemplo por lo que sacar un promedio no me daría un valor muy lejano al real. Se me ocurre que debe existir una forma para obtener por ejemplo el grupo de los 5 valores máximos y esos si promediarlos, pero no se como sería el código (partiendo de la base que el objeto no esta mas de medio segundo sobre la celda)

    • Avatar
      Gustavo
      sep 18, 2017

      Boa noite, vou falar em português pois meu espanhol é péssimo. Primeiramente parabéns pela publicação, gostaria de utilizar o HX711 em célula de pressão total, um tipo de transdutor instalado dentro do dolo para medir a pressão/tensão que chega no interior do solo, são muito similares a células de carga, o que muda é que são hermeticamente fechadas e envoltas por um líquido. Sabes me dizer se o HX711 funcionaria para isto? Abraço

    • Avatar
      Andres Velez
      oct 13, 2017

      Hola, el HX711 tiene otras dos lineas de entrada llamadas B- y B+, podria conectar otra celda de carga ahi? como sería la modificación en el código para acceder a dichos pines.?Gracias por responder y felicitaciones por este tutorial. ya lo probé y funcionó perfecto.

      • Avatar
        raytony
        oct 25, 2017

        naylamp amigo te habla un arequipeño q esta estudiando electronica industrial en un nstituto una consula al momento de copilar en arduino saves tengo un problema sketch_oct25a:6: error: 'hx711' does not name a type sketch_oct25a.ino: In function 'void setup()': sketch_oct25a:11: error: 'balanza' was not declared in this scope sketch_oct25a.ino: In function 'void loop()': sketch_oct25a:23: error: 'balanza' was not declared in this scope me aprece estos errores ya descargue la libreria correctamente y nc aver si pudieras ayudarme a soluconar este problema

    • Avatar
      Ana Maria
      oct 27, 2017

      Hola, me puedes ayudar con un proyecto para el colegio porfa: tengo un programa de un ascensor y lo que quiero es añadirle el sensor de peso para que cuando llegue a un determinado peso por ejemplo 1kg, todo el programa se apague. Tal vez me puedas dar un tutorial para eso, Gracias.

    • Avatar
      jose mata
      oct 27, 2017

      muy buen aporte,y deantemano gracias por todos los consejos a qui brindados. mi pregunta en especifico se puede conectar 4 celdas con capacidad de 5t cada una mediante una cada de sumas usando el HX711 al ardunio??

    • Avatar
      Miguel Pacheco
      nov 3, 2017

      naylamp amigo te habla un arequipeño q esta estudiando electronica industrial en un nstituto una consula al momento de copilar en arduino saves tengo un problema sketch_oct25a:6: error: 'hx711' does not name a type sketch_oct25a.ino: In function 'void setup()': sketch_oct25a:11: error: 'balanza' was not declared in this scope sketch_oct25a.ino: In function 'void loop()': sketch_oct25a:23: error: 'balanza' was not declared in this scope me aprece estos errores ya descargue la libreria correctamente y nc aver si pudieras ayudarme a soluconar este problema

      • Avatar
        Juan
        nov 14, 2017

        Tienes instalada la librería del HX711? Puede ser probable que sea ese tú error, saludos.

      • Avatar
        Juan
        nov 14, 2017

        Quiero agradecer enormemente a este bloguero Naylamp por explicar este proyecto tan practicamente, un saludo desde México y hay que entender que lo que hacen estos hombres no es hacernos el proyecto sino orientarnos y nosotros mismos por nuestros medios, lógica e interpretación debemos tratar de darle seguimiento al programa así aprendemos más, recuerden que hay muchas maneras de llegar al mismo resultado, pero eso cada quien lo elige, lo importante es llegar.

    • Avatar
      Héctor
      nov 20, 2017

      hola, quisiera saber como podría hacer para operar dos celdas de carga al mismo tiempo y de esas dos sacar un promedio para entregar una sola lectura, que sería la que mandaría el monitor serial

    • Avatar
      Brian
      nov 22, 2017

      Hola Naylamp tengo un proyecto en el cual estoy usando el sensor en una línea de producción y quisiera que un led me indicara si el producto esta dentro de un rango establecido es decir si pesa mas o menos del peso establecido encienda el LED espero me puedan ayudar gracias. PD su tutorial esta bastante bien explicado.

    • Avatar
      Julian
      nov 23, 2017

      Hola, Soy nuevo en esto y necesito ayuda. Como puedo agregar la libreríaHX711 a mi IDE arduino. Gracias

    • Avatar
      Wendy Ajelet Escamilla González
      nov 28, 2017

      Oye, necesito una interfaz para processing! Es proyecto escolar

    • Avatar
      Frank
      nov 28, 2017

      Buenas noches..... la salida del transmisor HX711 esta conformador por VCC, GND y DATA Y CLOCK... Tengo una duda con respecta a estas salidas DATA Y CLOCK... entran a señales analogas del arduino.?? He estado interpretando el esquema, posee un ADC de 24 bits. La salida de este transmisor no tendria que estar a los pines digitales.?... he estado averiguando en videos tutoriales. he observado que lo conectan a entrada digital .... no analoga.. me podria explicar porfavor.

      • Avatar
        Enrique
        dic 16, 2017

        Hola, en este caso me imagino que por simpliciada en el cableado lo conectaron a los pines A0 y A1,pero segun se indica en la descripcion de las funciones de la libreria (en la del conductor especifiacmente) se pueden utilizar cualesquiera dos pines

    • Avatar
      mauro rivera
      dic 5, 2017

      no me funciono de ninguna manera, cambie la tarjeta HX711 y listo.

    • Avatar
      camila meneses
      dic 11, 2017

      hola, requiero hacer una con 180 kg pero el programa no corre , saca muchos errores ( error: 'hx711' does not name a type sketch_oct25a.ino: In function 'void setup()': sketch_oct25a:11: error: 'balanza' was not declared in this scope sketch_oct25a.ino: In function 'void loop()': sketch_oct25a:23: error: 'balanza' was not declared in this scope) podrias ayudarme

    • Avatar
      Fernando
      dic 12, 2017

      Ante todo gracias por iluminarnos . Tengo el valor de un celda de carga y h x711 con móde mcu Y quiero leer el peso con un servidor , es posible por favor orientame

    • Avatar
      Daniel
      dic 22, 2017

      Buenas! Sé que seguramente está bien explicado en el tutorial, pero soy casi nulo programando y no me aclaro. En el caso que yo quiera que de 36 lecturas, las 7 primeras sean las buenas (a hacer promedio, a escalar...) y las otras se consideren como tara, ¿como tendría que indicarlo en el código? Gracias!

    • Avatar
      Ariel
      ene 16, 2018

      Hola, tengo una consulta, este tipo de celdas requieren que se calibre cada cierto periodo de tiempo? esta pregunta apunta a si tengo que ajustar el valor de la escala cada tanto o si se ajusta una sola vez y listo. Muchas gracias.

    • Avatar
      Ignacio Ibañez
      feb 5, 2018

      Hola, tengo una consulta, necesito que la medición que genere la celda al objeto pesado se envie a un equipo celular mediante conexión a Internet, se podrá si tengo el shield ethernet para arduino? algun consejo? gracias!

    • Avatar
      ivan233
      feb 27, 2018

      Hola me gusto mucho tu tutorial buen aporte pero quisiera saber como tomar lecturas lo mas rápido posible con la celda de carga, ya he probado moviendo los retardo pero el tiempo entre lecturas sigue igual agradeceria algún consejo para lograr el objetivo

    • Avatar
      jorge perez
      mar 5, 2018

      holaSabes si esto se puede hacer con un PLC ?

    • Avatar
      Leslie
      mar 5, 2018

      hola disculpa existe otra manera de descargar la librería HX711 el link no me carga, por favor

    • Avatar
      Jorge hernandez
      mar 20, 2018

      Que tal, muy interesante... estoy haciendo un proyecto y necesito, activar un motor a pasos o un servomotor cada que exista cierto peso, mi duda es en que parte del programa puedo agregar la condición y maso menos como seria?

    • Avatar
      Valentino Juan
      mar 31, 2018

      La semana pasada leí acerca de Jameson Finance en una página cristiana, leí cómo Jameson Finance ayudó a tanta gente en México y Argentina, así que decidí contactarme con Jameson Finance para obtener asistencia financiera. Justo ayer después del almuerzo, el banco me informó que había recibido un préstamo de 15,000 dólares de Jameson Finance. Estoy muy contento ahora que finalmente he recibido un préstamo de mi sueño, estoy compartiendo esto con ustedes porque también quiero que se beneficien de esto. puede ponerse en contacto con Jameson Finance a través de Whatsapp +2348058302338 o por correo electrónico theodorejamesonfinance@hotmail.com

    • Avatar
      Alexia
      abr 11, 2018

      Hol buen dia, me marca un error el programa probablemente es con la libreria ya la descargue y me sigue marcando error me podrias ayudar, lo agradeceria bastante es para un proyecto importante

    • Avatar
      Jairo Gallego
      abr 21, 2018

      Buen día Naylamp: Para implementarlo en PIC 18F4550 como debe ser la conexión y configuración del mismo ya que no contaría con las librerías. Saludos y gracias

      • Avatar
        Eduardo Cerda
        mar 3, 2019

        buenas noches, tambien deseo implementarlo con el pic 18f4550 pero no hay muchas informacion en la web, es para un proyecto de la universidad. muchas gracias

    • Avatar
      andres villadiego
      may 3, 2018

      Muy buenos dias estoy colocando el programa para una gramera de capacidad de 7000 g logro establecer el valor de la escala pero el valor de la lectura me ocila es decir me queda si coloco 500 gramos me queda en valores cambiantes de 449, 490 como hago para fijarlo en 500 gr. Muchas gracias

    • Avatar
      Aleps
      may 3, 2018

      si quiero calcular la presion ¿Como le hago?

    • Avatar
      Esvin Rivas
      may 28, 2018

      Disuculpe, hay alguna forma de detectar peso con hx711 arduino pero con la condicion de sensor infrarrojo que si detecta objeto si puede pesar de lo contrario no siga pesando?

    • Avatar
      juan lopez
      jun 14, 2018

      tengo un problema al momento de leer los datos, siempre me marca 0 el valor de lectura e intentado de todo y no se que sucede, segui los paso

      • Avatar
        Vicente Steinmetz Cotton
        jul 13, 2018

        Lo más probable es que tengas conectados los pin en Digital, y deben estar en Análogo. Revisa eso

    • Avatar
      Alejandro Vázquez
      jun 26, 2018

      Hola a todos, estoy usando una celda de 50kg que son cuadraditas aplanadas, he visto muchos tutos donde muestran como usarlas, pero no me funciona ninguno, las celdas empiezan a dar valores de menores a mayores, como en tendencia senoidal, alguien que me pueda ayudar?

    • Avatar
      David ortega
      ago 4, 2018

      buenos días y cordial saludo, quisiera saber que significa la palabra destarando ????? y lo otro no me sale en el valor de la lectura un numero constante igual salen muchos valores entonces según su ejemplo debes debe salir un solo valor lo mas aproximado posible y ya uno sacaría una media en ultima instancia si no sale igual que debo hacer con este error gracias.

    • Avatar
      DAVID AGUIRRE
      ago 26, 2018

      hola me podrias colaborar con este error exit status 1 'HX711' does not name a type aparece en esta linea de codigo HX711 balanza(DOUT,CLK);

      • Avatar
        wumdell martinez
        nov 16, 2018

        hola ,pudiste solucionar el problema,¨? tengo el mismo error

    • Avatar
      Nicolás Ariza
      ago 27, 2018

      Buenos días, Quisiera saber si al HX711 le puedo conectar una celda de carga en S con voltaje de alimentación entre 10 y 15 voltios. Gracias,

    • Avatar
      Miguel Solano Cornejo
      sep 5, 2018

      Una consulta como puedo programar este proyecto de manera que registre de forma continua un aumento de peso constante sobre un material hasta que este material se fracture y queden registrados los pesos en una hoja de Excel o de alguna otra forma. Gracias por el apoyo.

    • Avatar
      Luis Sacha Arancibia Bazan
      sep 6, 2018

      Cuantas celulas podria conectar a una tarjeta arduino UNO??

    • Avatar
      Jose F
      sep 19, 2018

      Tengo dos problemas con esta balanza, los valores me salen en negativo ej: -1.340 kg y no me pesa exacto el peso, le pongo un kilo y me arroja -0.90 kg. alguien me puede ayudar por favor

    • Avatar
      Dante Ramiro Cruz Mamani
      sep 23, 2018

      En esta parte me genera error: HX711 balanza(DOUT, CLK); en mi programación dice que esta mal esta parte :/

    • Avatar
      martin
      oct 9, 2018

      amigo estuve siguiendo el tutorial con una celda de carga muy parecida, y funciona bien pero da valores negativos, la instalo como indica la flechita, vos crees que puede estar mal indicada o vino con las conexiones invertidas, me sugieres dar vuelta la celda, invertir los cables o modificar el codigo?

    • Avatar
      wuemdell
      oct 17, 2018

      que hace el nuemro 20 en esa linia de codigo -balanza.tare(20);

    • Avatar
      Alfredo
      nov 3, 2018

      Hola buenas quisiera conectar una celula de carga package 1000kg mide en compresion y extension se conecta igual? Gracias

    • Avatar
      wuemdell martinez
      nov 16, 2018

      hola sera que eme podrían ayudar con este error de compilación 'hx711' does not name a type en la linea de codigohx711 balanza(DOUT, CLK);

    • Avatar
      Matias
      nov 30, 2018

      Hola, tengo este problema en el "void loop": "Serial.println(balanza.get_value(10),0);"Me tira error: "'balanza' was not declared in this scope".Ayuda, por favor. Gracias.

    • Avatar
      Raul
      dic 4, 2018

      Hola amigos, una consulta, ley los tutoriales de este proyecto, lo probe con una celda de carga de 10 kg. funciono perfecto. Desero hacer lo mismo pero con una celda de carga de 1000 kg. mi consulta es sobre el calibrado. Como el turorial menciona que hay que realizarlo con un peso conocido y cercano al valor maximo, se me presenta el inconveniente que no tengo peso cercanos a ese valor, entonces puedo llegar a realizar dicha calibracion de otra manera, modificando alguno de los valores? Disculpen la pregunta, tal vez este preguntando algo basico y no me doy cuenta. Desde ya muchas gracias.

    • Avatar
      sergio
      dic 13, 2018

      hola buen dia, como podria modificar el programa para que al momento de sobrepasar un peso deseado me encienda un buzzer?saludos

    • Avatar
      Edson
      dic 23, 2018

      Que tendría que modificar si se quieren medir fuerzas?

    • Avatar
      ivan jimenez
      ene 6, 2019

      buenas tardes, el proyecto es bueno, mi interés es el de controlar 10 celdas de cargas independientes para a si realizar una combinación y tener como resultado un peso especifico, con el modulo HX711 se puede realizar un sumador, para asi controlarlo atra vez de un arduino mega'. Gracias.

    • Avatar
      Xenpaul
      ene 9, 2019

      Hola Amigos, Estoy utilizando el Arduino pro mini de 3.3v en un sensado remoto de peso al cual tengo conectada la celda con el HX711 y todo anda perfecto. El problema es que utilizando la modalidad de sueño de Arduino y con el código actual posteado, dado que el peso es incremental con el paso tiempo, al despertar me destara la carga útil y me vuelve el dato a cero cuando debería continuar desde el valor anterior. Es por esto que estoy necesitando una variante del código que me permita continuar con la medición de la carga útil del sistema sin tarar. He modificado el código quitándole el destarado de peso ya que una vez conocido este lo dejo fijo pero este no pesa correctamente luego del ciclo dormir/despertar. Como desconozco en profundidad el código de la librería y tampoco soy experto codificador, no se como salir de este problema. Gracias por su ayuda y abrazo

    • Avatar
      Marcelo Santibañez
      ene 28, 2019

      Hola la ganancia del hx711 como se cambia?

    • Avatar
      Alex
      feb 19, 2019

      Hola ! Me gustaría saber, ¿Como hiciste para unir los cables de la celda de carga con el módulo HX711? Y del módulo a arduino ? Mi sensor mide valores muy dispares entre sí y deduzco que es porque algún cable hace mal contacto Muchas gracias !

    • Avatar
      Alex Garcia
      feb 19, 2019

      Hola ! Tengo un problema y es que mi sensor mide valores muy dispares en vez de quedarse en uno fijo. Creo que es porque algún cable hace mal contacto. ¿Como hiciste para conectar los cables de la celda de carga al módulo hx711?

    • Avatar
      Alex
      feb 19, 2019

      Hola ! Tengo un problema y es que mi sensor mide valores muy distintos variando muy rápido de unos a otros. Creo que esto es porque hay algún cable mal conectado. ¿Como conectaste los cables de la celda de carga con el módulo?¿Y los del módulo con arduino? Muchas gracias

    • Avatar
      Joshua Shadday
      feb 27, 2019

      Buenas noches, disculpe no se si me puedan ayudar con respecto a la librería HX711 me marca como si fuera un error la linea "HX711 balanza(DT, SCK);" no se si me pudieran ayudar, me imagino que es la instalación de la libreria, pero ya lo realice varias veces y sigue el mismo error...

    • Avatar
      Saul
      feb 27, 2019

      Buenas noches, disculpe no se si me puedan ayudar con respecto a la librería HX711 me marca como si fuera un error la linea "HX711 balanza(DT, SCK);" no se si me pudieran ayudar, me imagino que es la instalación de la libreria, pero ya lo realice varias veces y sigue el mismo error...

    • Avatar
      Alejandro
      feb 27, 2019

      Buenas noches, disculpe no se si me puedan ayudar con respecto a la librería HX711 me marca como si fuera un error la linea "HX711 balanza(DOUT, CLK);" no se si me pudieran ayudar, me imagino que es la instalación de la libreria, pero ya lo realice varias veces y sigue el mismo error...

      • Avatar
        Dunia Virto González
        mar 28, 2019

        ha debido haber un cambio en la biblioteca y se soluciona asi:#include "HX711.h"const int LOADCELL_DOUT_PIN = 2; const int LOADCELL_SCK_PIN = 3;HX711 scale;float calibration_factor = -103434.00; //-103434.00 calibrados con 20 kgvoid setup() { scale.begin(LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN);

    • Avatar
      Jhonathan
      feb 28, 2019

      Muy buenas, me sale un error de la librería.no matching function for call to 'HX711::HX711(const uint8_t&, const uint8_t&)'Alguno ha podido solucionarlo?

    • Avatar
      ruben
      mar 9, 2019

      Se debieron cambiar las funciones en la libreria y tira el siguiente error. no matching function for call to 'HX711Para ello tenemos que cambiar solo un par de cosas el codigo. Copio y pego el codigo del calibrado, acordarse que se debe cambiar tambien en el programa final.#include "HX711.h"#define DOUT A1 #define CLK A0HX711 balanza; //aqui modificamos el codigovoid setup() { Serial.begin(9600); balanza.begin(DOUT, CLK); //aqui agregamos esta linea de codigo Serial.print("Lectura del valor del ADC: "); Serial.println(balanza.read()); Serial.println("No ponga ningun objeto sobre la balanza"); Serial.println("Destarando..."); balanza.set_scale(); //La escala por defecto es 1 balanza.tare(20); //El peso actual es considerado Tara. Serial.println("Coloque un peso conocido:"); }void loop() {Serial.print("Valor de lectura: "); Serial.println(balanza.get_value(10),0); delay(100); }

    • Avatar
      ruben
      mar 9, 2019

      Vaya, no respeta los espacion de linea. Pues bien, para que lo entendais donde pone HX711 balanza(DOUT, CLK);, que quede HX711 balanza;. Y luego en el void setup poneis balanza.begin(DOUT, CLK);

      • Avatar
        Joel G
        abr 1, 2019

        hey compañero ,hice lo que explicas y me sigue dando error#include "HX711.h"#define DOUT A1 #define CLK A0HX711 balanzavoid setup() { Serial.begin(9600); balanza.begin(DOUT, CLK); Serial.print("Lectura del valor del ADC: "); Serial.println(balanza.read()); Serial.println("No ponga ningun objeto sobre la balanza"); Serial.println("Destarando..."); balanza.set_scale(); //La escala por defecto es 1 balanza.tare(20); //El peso actual es considerado Tara. Serial.println("Coloque un peso conocido:"); }void loop() {Serial.print("Valor de lectura: "); Serial.println(balanza.get_value(10),0); delay(100); }exit status 1 expected initializer before 'void'

    • Avatar
      javier enrique leon soto
      mar 19, 2019

      Hola amigo, ¿que tal? , ¿cual es el peso máximo con el modulo funciona con celdas de carga? Ej. tengo una celda de carga de 300kg y el peso maximo que tengo a medir es de 100kgSaludos.

    • Avatar
      jesus_puello15@hotmail.com
      mar 25, 2019

      Hola muy Buenos dias, quisiera saber si este tipo de peso seria posible implementarla en maquina llamada amasadora, este es para un proyecto que esto realizando.

    • Avatar
      jesus
      mar 25, 2019

      Quisiera saber si este tipo de peso se le puede implementar a una maquina llamada amasadora.

    • Avatar
      Danny
      abr 11, 2019

      Hola,muy buen aporte de tu parte, estoy realizando pruebas pero tengo una, aunque no tenga ningun peso sobre la celda de carga, el valor mostrado por el monitor, va aumentando a poco su valor, inclusive cuando coloco el peso de un objeto, realiza el mismo proceso, el calculo que realiza va aumentando cada vez, sabes cual sea el motivo? Estoy usando una balanza de 120kg.

    • Avatar
      cor leonis
      abr 25, 2019

      hola me podrias decir a que se debe este error? "no matching function for call to 'HX711::HX711(const uint8_t&, const uint8_t&)'"

    • Avatar
      Daniela Maldonado
      abr 27, 2019

      Hola, gracias por la excelente explicación, me podrías ayudar en un proyecto que estoy realizando en el que debo usar 4 celdas de carga pero no se como alimentarlas, las he conectado en paralelo pero cuando el código corre solo lee un sensor supongo que no estoy energizando bien a los demás sensores, me ayudarías con alguna idea para este problema por favor

    • Avatar
      LuisAN
      may 3, 2019

      Yo tengo una duda, este ADC funciona igual para una celda de carga tipo s Industrial? Lo conseguí para un proyecto de la universidad y vamos hacer una prensa y medir el peso que le aplica un pistón hidráulico, sin embargo al mandar las lecturas al Arduino, no son muy estables, ademas le puse un amplificador de instrumentación y aun así no es muy preciso, incluso arroja valores negativos. Una cosa mas, quisiera conectarle a este mismo ADC un traductor para medir la distancia, se puede hacer? o es necesario algún otro tipo de ADC?Me gustaría mucho su orientación, excelente tarde

    • Avatar
      Marco
      may 19, 2019

      Hola que tal, disculpa, tengo un problema con el código, me sale este error y no sé a qué se debano matching function for call to 'HX711::HX711(const uint8_t&, const uint8_t&)'

    • Avatar
      Jesús Gutiérrez
      may 22, 2019

      Por favor necesito su ayuda, estoy usando tal cual el código que me dió y no me quiere imprimir en la lcd del proteus, y es el proyecto que tengo para la tesis de trabajo de grado agradecería pronta respuesta jesusfgl1993@gmail.com

Leave a Reply

* Name:
* E-mail: (Not Published)
   Website: (Site url withhttp://)
* Comment: