Problema com Célula de carga - Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
Problema com Célula de carga
Publicado por Victor Lima e Silva em 8 agosto 2018 às 22:58 em Geral
Boa noite, este é o meu primeiro tópico. Estou com um problema em um projeto que envolve o desenvolvimento de uma balança digital usando Célula de Carga, HX711 e Arduino. Utilizei um código encontrado em um site alemão. O código segue abaixo:
#include <HX711_ADC.h> // https://github.com/olkal/HX711_ADC
#include <LiquidCrystal_I2C.h> // LiquidCrystal_I2C library
HX711_ADC LoadCell(3, 2); // parameters: dt pin, sck pin
LiquidCrystal_I2C lcd(0x3f,2,1,0,4,5,6,7,3, POSITIVE); // 0x27 is the i2c address of the LCM1602 IIC v1 module (might differ)
LoadCell.begin(); // start connection to HX711
LoadCell.start(2000); // load cells gets 2000ms of time to stabilize
LoadCell.setCalFactor(1100); // calibration factor for load cell => strongly dependent on your individual setup
lcd.begin(16, 2); // begins connection to the LCD module
lcd.backlight(); // turns on the backlight
LoadCell.update(); // retrieves data from the load cell
float i = LoadCell.getData(); // get output value
lcd.setCursor(0, 0); // set cursor to first row
lcd.print("Massa[g]:"); // print out to LCD
lcd.setCursor(0, 1); // set cursor to secon row
lcd.print(i); // print out the retrieved value to the second row
A leitura da massa funciona muito bem, e consegue ser bem precisa, pois, usando uma célula de carga de 2Kg, consigo obter valores bem próximos do especificado, como a massa de moedas, onde posso encontrar facilmente o valor na internet e comparar com o obtido pela minha balança. Entretanto, o problema é que, com o passar do tempo, a massa auferida aumenta ou diminui, indefinidamente. Estimei que, em 5 minutos, a massa aumenta/diminui cerca de 0.53g. Fiz um teste com 22min, e a massa auferida sem absolutamente nenhuma carga foi de 2g, ou seja, meu ZERO virou 2g. Porém, quando eu reseto o Arduino, o acúmulo some, e as medições voltam ao normal. Mas o problema dos acúmulos de massa voltam com o passar do tempo. Isso é um grande inconveniente, pois o meu projeto consiste em avaliar a taxa de desidratação de produtos inseridos em um desidratador solar. A balança ficará dentro do desidratador. No sistema completo são utilizados LCD e uma datalogger com o módulo de cartão de memória. Todos esses módulos funcionam muito bem, o único inconveniente é essa variação contínua da massa. Para vocês terem uma ideia, certos produtos serão desidratados por 48h. Um acúmulo de 0.53g a cada 5min produz uma distorção inaceitável no projeto. Geralmente coloco amostras de 250g para serem desidratadas.
O que vocês acham? Pode ser algum problema na célula de carga, ou no HX711, ou no código, ou na minha montagem?
PS: A massa de acúmulo pode variar, não sendo necessariamente 0.53g, o problema é que sempre aumenta ou sempre diminui. E a constatação desse erro ocorreu fora do desidratador solar, ou seja, a temperatura não pode ser um fator de erro.
Exibições: 661
IMG_20180808_213216550.jpg, 1.5 MB
IMG_20180808_213243202.jpg, 187 KB
As respostas para este tópico estão encerradas.
Permalink Responder até mineirin RV em 9 agosto 2018 at 8:35
Bom dia VLC,
1. Remova seu sketch da área de texto do seu tópico;
2. Leia http://labdegaragem.com/forum/topics/sugest-o-de-como-postar
3. Clique em : " Deseja carregar arquivos? " e depois em " Escolher arquivo" e anexe o arquivo
com o seu sketch.
Permalink Responder até José Gustavo Abreu Murta em 9 agosto 2018 at 19:04
Boa noite, envie foto mostrando as ligações do HX711.
Você fez o procedimento de calibração ?
E o procedimento de TARA ?
http://blog.eletrogate.com/balanca-digital-com-arduino-aprenda-a-us...
Permalink Responder até Victor Lima e Silva em 9 agosto 2018 at 19:58
José Gustavo Abreu Murta, obrigado por responder. As ligações do HX711 estão Ok, e estou usando essa mesma montagem para o HX711: https://www.hackster.io/MOHAN_CHANDALURU/hx711-load-cell-amplifier-.... Mas não estou utilizando resistores, que também não são utilizados na montagem do hackster.io. O TARA foi feito, tanto que a massa é pega quase que perfeitamente. Por exemplo, a massa da moeda de 5 centavos banhada de cobre é de 4,10g. A minha montagem consegue pegar bem esse valor, com o mesmo ficando entre 4,08~4,12. Porém, como eu disse no texto-problema, com o passar do tempo a massa auferida começa a diminuir ou aumentar, sem qualquer mudança na carga. E então, é formado um acúmulo que vai crescendo naquela taxa aproximada de 0.53g que eu escrevi.
Imagem HX711: IMG_20180809_185541272.jpg
Permalink Responder até José Gustavo Abreu Murta em 10 agosto 2018 at 0:52
Você esta usando qual Arduino?
Use uma fonte estável para alimentar o Arduino.
Não recomendo que use alimentação através da USB , nesse seu caso.
Meça a tensão entre E- e E+ . Não use o terra digital para medir. E nos informe.
Veja se a tensão esta estável.
O programa que postou, não tem o procedimento de TARA.
Permalink Responder até Victor Lima e Silva em 10 agosto 2018 at 1:29
Uso o Arduino Mega 2560 R3.
Estou alimentando via USB com o meu notebook.
Farei como recomendou, avaliarei a tensão entre E- e E+.
Com relação a função TARE, estou utilizando a função:
Uso o fator 1100, qe funciona muito bem. Mas ainda persiste aquele acúmulo da massa. Aliás, vc recomendaria algum sketch que funcione perfeitamente para a celula de carga?
Permalink Responder até José Gustavo Abreu Murta em 10 agosto 2018 at 12:23
Isso não faz parte do procedimento de tara (zerar a balança) .
Faz parte do procedimento de calibração.
LoadCell.setCalFactor(1100);
Permalink Responder até Victor Lima e Silva em 10 agosto 2018 at 14:35
Eu esqueci de mencionar que utilizado uma célula de carga no modelo de barra. Não são aquelas mostradas nesse artigo: http://blog.eletrogate.com/balanca-digital-com-arduino-aprenda-a-us...
Permalink Responder até José Gustavo Abreu Murta em 10 agosto 2018 at 15:49
Usam o mesmo princípio. Você já tinha citado isso.
Tem que calibrar e zerar a balança.
Permalink Responder até Victor Lima e Silva em 11 agosto 2018 at 0:14
José Gustavo Abreu Murta, quero agradece-lhe pelo suporte. Fiz como você recomendou no tutorial. Segui-o passo a passo, e agora a balança funciona perfeitamente. Demorei para responder-lhe, pois o intuito era avaliar se ainda existiria algum acúmulo da massa. O acúmulo sumiu, deixei uma moeda por mais de 1h e o valor ficou excelente, com variação +-0.15g para uma moeda de 5 centavos(4,10g). Essa variação foi o máximo e mínimo que notei, na maioria das vezes, o valor ficava entre .4.02~4.19, o que é bastante razoável. Testei também com mais moedas, por um bom tempo, e o resultado superou as expectativas. Acho que entendi o seu conselho, apesar de insistir na alimentação via USB, mas desta vez, retirei o carregador da bateria do notebook, fiquei só na carga da bateria. Pelo o que experienciei, o resultado foi melhor, pois com o carregador conectado, a massa tendia a aumentar, pouco, mas aumentava. Foi aí onde notei o pico positivo de 0.15g acima da massa original da carga. Por fim, me restam algumas dúvidas de projeto... espero não estar abusando da sua paciência, e a dos colegas do fórum.
1) Eu sei que a alimentação que sai da bateria do meu notebook não é 5V, talvez 4.7V, e que é ligada via USB no Arduino. Isso me preocupa, pois no projeto será utilizado uma bateria que está fornecendo 12.8V. Faço a conexão dessa bateria com o Arduino através de um cabo jack que peguei de uma fonte antiga. Eu sei que, a alimentação máxima para a entrada jack é de 15V, e sei que o Arduino tem um regulador de tensão que baixará essa tensão para 5V, em teoria. Na prática, é quase certo que a tensão regulada será maior que 4.7V, talvez uns 4.9V. Isso significa que eu teria que TAREAR mais uma vez a minha balança para essa tensão regulada da bateria?
2) A temperatura interna no desidratador solar pode alcançar 70°C. E como informei, a balança ficará dentro do desidratador. Que implicações podem ser ocasionadas na medição da minha balança?
Permalink Responder até José Gustavo Abreu Murta em 12 agosto 2018 at 11:15
Victor bom dia,
Por isso insisti que lesse o meu tutorial, pois percebi que algo estava errado na sua montagem.
1) Pode conectar a bateria de 12,8V na entrada de power do Arduino. O regulador interno deve dar 5V aproximadamente.
Recomendo que sempre antes de usar a balança, faça o procedimento de Tara (zerar). E depois acompanhe para saber se esse procedimento será realmente necessário e com que frequência.
Você já viu que todas as balanças comerciais tem um botão de TARA ?
2) Temperatura interna de 70°C ?? Somente circuitos eletrônicos especiais suportam essa temperatura !!!
Não use o seu circuito dentro de um recipiente com esse temperatura, pois ou não vai funcionar ou então vai queimar!