A célula de carga é o produto base para o funcionamento da nossa Balança Arduino, existem diversos modelos deste equipamento que se diferenciam principalmente pelo seu modo de desenvolvimento e seu pelo limite.
De modo geral, o Sensor de Peso como também é chamado possui um sinal de comunicação muito baixo, o que torna necessária a utilização de um amplificador como o HX711, um módulo conversor de 24 bits.
Podendo ser aplicado nos mais diversificados casos de automação ou desenvolvimento de projetos industriais, a balança Arduino com célula de carga é um produto complexo, porém de fácil compreensão quando utilizado de maneira correta.
Vídeo do Projeto
Célula de Carga 5kg / Sensor de Peso
Ela é um transdutor resistivo capaz de converter a força aplicada sobre si mesma em um sinal elétrico, um trabalho realizado pela ponte de Wheatstone localizada junto ao seu corpo e que verifica a deformação do metal ao qual está fixada.
Existem diversos modelos disponíveis no momento em circulação no mercado, cada quais com suas diferentes especificações e finalidades, para o nosso projeto iremos utilizar um modelo de célula de carga de 5kg, valor máximo possível de verificação.
Como podemos observar, este equipamento possui em seu corpo diversos furos com rosca que possibilitam a fixação de parafusos e facilitam ainda mais a sua instalação em diversos projetos assim como na base MDF que desenvolvemos para o desenvolvimento deste projeto.
Módulo Conversor Amplificador HX711
Como já citado anteriormente, o sinal gerado pela ponte de Wheatstone é bastante baixo e faz-se necessária a utilização de um amplificador capaz de realizar a leitura e a conversão dos dados obtidos. Neste contexto a melhor opção para este projeto é o Módulo HX711.
Trabalhando como interface entre a célula de carga e o Arduino, o Módulo Conversor permite fazer uma leitura de peso facilmente, convertendo também leituras analógicas em digitais com sua função de conversão analógico/digital de 24 bits. Abaixo podemos observar sua estrutura física, lembrando eu os pinos precisam ser soldados para sua utilização.
Com um esquema de ligação simplificado quanto alimentação e leitura, o Amplificador HX711 possui apenas quatro terminais, dos quais dois alimentam o módulo e dois realizam a transmissão dos dados.
Produtos Utilizados no Teste
– Display 16×2 com adaptador I2C;
– Módulo Conversor Amplificador HX711;
– Base em MDF para Balança + Célula de Carga 0 a 5kg;
– Jumpers.
Projeto Balança Arduino com Célula de Carga
O projeto da balança possui algumas propriedades isoladas que devem ser levadas em consideração, principalmente quanto a sua instalação e os métodos de pesagem. Lembrando que a má instalação do equipamento pode ocasionar em erro na leitura.
A célula de peso deve ser instalada de maneira que seu centro fique livre, o ideal é a utilização de espaçadores, proporcionando uma certa distância do sensor entre a base de instalação e a base de coleta de dados.
É importante lembrar que no corpo do produto existe um indicador de direção de carga que mostra a direção normal de deformação do sensor de peso, ou seja, a seta que existe em uma de suas extremidades precisa estar indicando para baixo.
O desenvolvimento do projeto é extremamente simples, porém a sua parte mecânica é fundamental para o total desempenho do projeto, através do exclusivo produto da Usinainfo temos uma balança extremamente simples que acompanha todos os equipamentos mecânicos necessários.
Esquema de Ligação com Sensor de Peso
O esquema de ligação da balança Arduino é bastante simples, porém constituído fundamentalmente de duas fases, uma delas envolvendo a ligação da célula de carga no módulo HX711 e outra entre o Módulo HX711 para o Arduino.
Um fator que vale ressalva neste momento é quanto a ligação da célula, uma vez que a mesma não possui conectores jumpers, recomenda-se a soldagem dos fios no Módulo HX711.
O esquema de ligação da célula de peso para o módulo ficaria assim:
Célula de Carga Módulo HX711
Fio Vermelho -> Pino E+
Fio Preto -> Pino E-
Fio Verde -> Pino A-
Fio Branco -> Pino A+
Já o esquema de ligação do módulo HX711 para o Arduino ficaria assim:
Módulo HX711 Arduino
Pino GND -> Pino GND
Pino DT -> Pino A1
Pino SCK -> Pino A0
Pino VCC -> Pino 5V
Teoricamente o esquema de ligação é elaborado como nas demonstrações anteriores, para melhor observação da ligação e seus respectivos locais de fixação. Segue abaixo o desenho do esquema de ligação completo entre todos os itens:
Como podemos observar, o esquema de ligação dos equipamentos é bastante simples, precisamos ter cuidado apenas com a conexão dos fios da célula de carga no módulo HX711, que deve ser exatamente igual a imagem acima.
Código de Calibração
A primeira etapa que precisamos concluir para dar continuidade à nossa balança é a calibração, ou seja, encontrar o valor da escala que iremos utilizar para realizar as devidas pesagens. A leitura do sensor em um primeiro momento será fora de padrão algum de pesagem, a leitura representa a deformação da célula de peso.
Vale lembrar que cada balança e cada célula são diferentes uma das outras e seus padrões de pesagem mudam de acordo com seus métodos de instalação e utilização, sendo que a principal diferença entre os modelos de células está no limite de pesagem.
Com funções bastante específicas, o código utiliza-se de uma exclusiva biblioteca para evitar códigos base extensos, fator que diminui a sua complexidade, antes de dar início às gravações é necessária a sua instalação.
Biblioteca HX711: Download Aqui!
Para darmos início ao processo de calibração precisamos ter um peso conhecido como base, ou seja, precisamos saber o peso real do objeto que iremos utilizar. O peso do objeto pode ser tanto próximo ao máximo permitido, neste caso 5kg como um peso menor, para o artigo utilizamos um objeto de 189g.
Com o objeto já escolhido e pesado, agora só nos resta carregarmos o código e iniciarmos a verificação, segue o código para calibração da balança:
[crayon-673f440c77493099674742/]
Após carregarmos o código, ele irá verificar automaticamente a leitura da tara, inicializando a leitura, depois de finalizada esta etapa basta posicionar o peso que será utilizado para a calibração.
A leitura dos dados obtidos através da célula de peso terá um sequencial de números parcialmente estranho em um primeiro instante, o valor é obtido através da deformação do alumínio ao qual o sensor é constituído, porém são estes os valores que irão nos auxiliar para desenvolvermos a balança.
Inicialmente sem carga, os valores obtidos serão aleatórios, porém extremamente baixos. Veremos em breve os valores utilizados como base para os cálculos são significativamente importantes.
Após inserirmos na balança o objeto utilizado como elemento de calibração obteremos valores semelhantes ao descritos abaixo. Todos são de uma maneira linear variando entre 75000 e 75300, porém não extrapolando esta margem, veja:
Com os valores obtidos realizamos uma análise prévia dos mesmos e de forma empírica escolhemos oito dos valores mais propícios a uma média abrangente, preferencialmente valores consecutivos como os elencados abaixo:
Após somarmos os valores escolhidos encontraremos um total de 601.671, iremos dividir este valor pelo total de números somados, ou seja, obteremos a média que será de 75208,875. Caso ainda tenha ficado dúvidas observe:
No nosso caso escolhemos oito valores para somar, então dividiremos a soma destes por 8. Com este valor já calculado iremos diretamente para o calculo da escala, valor que será utilizado como base para a determinação de todos os valores que iremos posicionar sobre a balança. Para isto utilizaremos a seguinte fórmula:
O valor do peso utilizado para calibragem deve ser na mesma unidade à qual iremos desenvolver as pesagens da balança, ou seja, 0,189kg ou 180g. Como pretendemos observar nossos pesos em quilogramas, a formula ficará assim:
Agora com este cálculo pronto, iremos acrescentá-lo ao código para finalmente termos a balança finalizada com a célula de peso e o Arduino, um projeto parcialmente difícil, mas extremamente prazeroso.
Esquema de Ligação da Balança Arduino com Display
De maneira geral, o método de ligação será o mesmo, o que irá alterar é a inclusão de um display I2C ao projeto, optando novamente pelo I2C devido a sua facilidade de conexão, já que necessita de apenas quatro pinos de ligação.
Display Arduino
Pino SDA -> Pino A4
Pino SCL -> Pino A5
Pino VCC -> Pino VCC
Pino GND -> Pino GND
Como o Arduino não possui duas saídas de 5V para alimentar os equipamentos, desenvolvemos um exclusivo Jumper Y que possibilita através de um fio macho a saída de duas fêmeas. Assim, excluímos a necessidade de protoboards e de ficarmos adicionando variáveis de declaração HIGH para pinos digitais.
O projeto com todos os produtos incluídos irá ficar da seguinte maneira:
Este recurso irá nos possibilitar utilizar a balança sem a necessidade de um computador por perto para a exibição dos valores obtidos, elemento que faltava para completar a Balança Arduino.
Código para Pesagem em KG com a Balança Arduino
Ao término de todos os outros passos citados anteriores, chegou a hora de finalmente construirmos a Balança Arduino com Célula de Carga definitiva. Após incluirmos o display com adaptador I2C ao projeto, chegou a hora de carregarmos o código completo.
Além da biblioteca HX711, este novo código necessita também da utilização de uma biblioteca para a utilização do display I2C, para isto é necessário incluir ao código a biblioteca LiquidCrystal_I2C.h.
Biblioteca LiquidCrystal_I2C.h: Download Aqui!
[crayon-673f440c77498514465888/]
Como vimos, o código é extremamente simples e resumido, sem muita dificuldade e variáveis. A inclusão do display alterou em pouco a programação e trouxe grande flexibilidade ao projeto, possibilitando a visualização dos dados sem a necessidade de estar conectado ao computador.
A única variável que precisamos destacar neste código é a que segue:
[crayon-673f440c7749a535469349/]
Esse comando deve ser trocado pela escala encontrada em cada projeto, de acordo com o sensor e as devidos equipamentos utilizados. Vale lembrar que os valores inteiros devem ser separados dos decimais por um ponto (.) e não por uma vírgula (,) como comumente utilizamos no cotidiano.
Conclusão Balança Arduino
O projeto é facilmente desenvolvido com o auxilio dos equipamentos corretos, a facilidade de desenvolvê-lo através da base MDF desenvolvida pela Usinainfo é incontestável, porém é possível montá-lo em qualquer superfície que suporte o espaço de deformação do metal em cada projeto, através dos referidos espaçadores.
Para desenvolvermos a exibição dos valores obtidos pela balança com célula de peso utilizamos um display LCD 16×2, porém é possível substituí-lo por um display 7 segmentos, por exemplo. Além disto, outros modelos de célula de carga com diferentes especificações podem ser utilizados, basta seguir os devidos passos de calibração.
As possibilidades de uso deste produto são extremamente grandes, vai de adaptá-lo à sua necessidade em projetos domésticos ou universitários, usando e abusando de suas funcionalidades. Ao desenvolver o seu projeto não deixe de comentar as suas experiências, deixar seu comentário.