Índice:

Escala de tensão Arduino com célula de carga de bagagem de 40 kg e amplificador HX711: 4 etapas
Escala de tensão Arduino com célula de carga de bagagem de 40 kg e amplificador HX711: 4 etapas

Vídeo: Escala de tensão Arduino com célula de carga de bagagem de 40 kg e amplificador HX711: 4 etapas

Vídeo: Escala de tensão Arduino com célula de carga de bagagem de 40 kg e amplificador HX711: 4 etapas
Vídeo: Inovagri Meeting Virtual 2020 - Instrumentação Aplicada ao Manejo de Água 2024, Julho
Anonim
Escala de tensão Arduino com célula de carga de bagagem de 40 kg e amplificador HX711
Escala de tensão Arduino com célula de carga de bagagem de 40 kg e amplificador HX711

Este Instructable descreve como fazer uma escala de tensão usando peças prontamente disponíveis na prateleira.

Materiais necessários:

1. Arduino - este projeto usa um Arduino Uno padrão, outras versões ou clones do Arduino também devem funcionar

2. HX711 na placa breakout - Este microchip é feito especialmente para amplificar os sinais das células de carga e reportá-los a outro microcontrolador. As células de carga se conectam a esta placa e ela informa ao Arduino o que as células de carga medem.

3. Célula de carga de tensão (40 kg) com suportes. Existem 2 opções para obter um destes. Você pode comprar uma já feita (fácil) ou pode desmontar uma balança digital barata e remover a célula de carga (mais difícil, mas você já pode ter uma por aí). Você pode comprar um já feito com um HX711 aqui:

Se você comprar o kit, deixe um comentário! É muito útil para futuros compradores.

4. Hardware de montagem. Dependendo da sua aplicação, isso pode ser corda, parafusos, laços zip, qualquer coisa para prender os suportes com a força que você deseja medir.

5. Fios em várias cores para conectar todas as partes

6. Fonte de alimentação para Arduino

Etapa 1: Monte a célula de carga

Monte a célula de carga
Monte a célula de carga
Monte a célula de carga
Monte a célula de carga
Monte a célula de carga
Monte a célula de carga

Primeiro, vamos montar a célula de carga. Sua montaria será única, mas aqui estão as diretrizes que você precisa seguir:

1. A célula de carga de aço é uma placa com medidores de tensão colados no meio. A célula de carga mede a força detectando o quanto a célula de carga está dobrando.

2. Os suportes são fixados através de orifícios nas extremidades da viga da célula de carga. Os suportes são moldados de forma que a força de tração seja aplicada no centro da viga da célula de carga. Devido à sua forma e ao local do anexo, a viga da célula de carga dobra quando os suportes são puxados.

3. Prenda os suportes ao que deseja medir. É melhor fazer isso com algo que possa se mover livremente (como correntes, ganchos, cordões fortes ou laços de zíper). Você deseja que a célula de carga e o conjunto do suporte sejam capazes de se centralizar na direção da carga para que a medição seja precisa.

Etapa 2: Conecte a célula de carga e o HX711

Ligue a célula de carga e HX711
Ligue a célula de carga e HX711

Consulte o diagrama de fiação para saber como conectar as células de carga, HX711 e Arduino.

Em células de carga do tipo bagagem como a mostrada, vários extensômetros já estão conectados para formar uma ponte de Wheatstone. Tudo o que você precisa fazer é conectar os fios à placa HX711 na orientação correta.

Etapa 3: adicione a biblioteca HX711 ao seu Arduino IDE

A biblioteca HX711 está disponível aqui:

Consulte este link no site do Arduino para obter instruções sobre como adicionar a biblioteca ao seu IDE do Arduino:

Etapa 4: Calibrar e pesar

Calibrar e pesar!
Calibrar e pesar!

Sparkfun tem ótimos programas Arduino para executar a escala. As versões mais atualizadas estão disponíveis no GitHub e reimpressas abaixo:

A primeira etapa do software é determinar os fatores de calibração da balança. Para fazer isso, execute este código

/*

Exemplo usando a placa de breakout SparkFun HX711 com uma escala Por: Nathan Seidle SparkFun Electronics Data: 19 de novembro de 2014 Licença: Este código é de domínio público, mas você me compra uma cerveja se usar isso e um dia nos encontraremos (licença Beerware). Este é o esboço de calibração. Use-o para determinar o calibração_fator que o exemplo principal usa. Ele também produz o fator zero, útil para projetos que têm uma massa permanente na escala entre os ciclos de energia. Configure sua balança e inicie o esboço SEM um peso na balança Uma vez que as leituras são exibidas, coloque o peso na balança Pressione +/- ou a / z para ajustar o fator_calibração até que as leituras de saída correspondam ao peso conhecido. Use este fator_calibração no esboço de exemplo Este exemplo pressupõe libras (lbs). Se você preferir quilogramas, altere o Serial.print ("lbs"); linha para kg. O fator de calibração será significativamente diferente, mas será linearmente relacionado a lbs (1 lbs = 0,453592 kg). Seu fator de calibração pode ser muito positivo ou muito negativo. Tudo depende da configuração do seu sistema de balança e da direção em que os sensores desviam do estado zero. Este código de exemplo usa a excelente biblioteca do bogde: "https://github.com/bogde/HX711" a biblioteca do bogde é lançada sob uma LICENÇA PÚBLICA GERAL GNU Arduino pino 2 -> HX711 CLK 3 -> DOUT 5V -> VCC GND -> GND Quase todos os pinos no Arduino Uno serão compatíveis com DOUT / CLK. A placa HX711 pode ser alimentada de 2,7 V a 5 V, portanto, a alimentação do Arduino 5 V deve estar bem. * / #include "HX711.h" #define LOADCELL_DOUT_PIN 3 #define LOADCELL_SCK_PIN 2 escala HX711; float calibração_fator = -7050; // - 7050 funcionou para minha configuração de escala máxima de 440 lb void setup () {Serial.begin (9600); Serial.println ("esboço de calibração HX711"); Serial.println ("Remova todo o peso da balança"); Serial.println ("Após o início das leituras, coloque o peso conhecido na balança"); Serial.println ("Pressione + ou a para aumentar o fator de calibração"); Serial.println ("Pressione - ou z para diminuir o fator de calibração"); scale.begin (LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN); scale.set_scale (); scale.tare (); // Redefina a escala para 0 long zero_factor = scale.read_average (); // Obter uma leitura de linha de base Serial.print ("Fator zero:"); // Isso pode ser usado para remover a necessidade de tarar a balança. Útil em projetos de escala permanente. Serial.println (zero_factor); } void loop () {scale.set_scale (calibração_fator); // Ajuste para este fator de calibração Serial.print ("Reading:"); Serial.print (scale.get_units (), 1); Serial.print ("libras"); // Altere para kg e reajuste o fator de calibração se você seguir as unidades do SI como uma pessoa sã Serial.print ("calibração_fator:"); Serial.print (calibração_fator); Serial.println (); if (Serial.available ()) {char temp = Serial.read (); if (temp == '+' || temp == 'a') calibração_fator + = 10; senão if (temp == '-' || temp == 'z') calibração_fator - = 10; }}

Depois de calibrar a escala, você pode executar este programa de amostra e, em seguida, hackea-lo para seus próprios propósitos:

/*

Exemplo usando a placa de breakout SparkFun HX711 com uma escala Por: Nathan Seidle SparkFun Electronics Data: 19 de novembro de 2014 Licença: Este código é de domínio público, mas você me compra uma cerveja se usar isso e um dia nos encontraremos (licença Beerware). Este exemplo demonstra a saída de escala básica. Veja o esboço de calibração para obter o calibrador_fator para sua configuração de célula de carga específica. Este código de exemplo usa a excelente biblioteca do bogde: "https://github.com/bogde/HX711" a biblioteca do bogde é lançada sob uma LICENÇA PÚBLICA GERAL GNU. O HX711 faz uma coisa bem: ler células de carga. A placa de desagregação é compatível com qualquer célula de carga baseada em ponte de pedra de trigo, que deve permitir ao usuário medir tudo, desde alguns gramas até dezenas de toneladas. Arduino pino 2 -> HX711 CLK 3 -> DAT 5V -> VCC GND -> GND A placa HX711 pode ser alimentada de 2,7 V a 5 V, portanto, a alimentação do Arduino 5 V deve estar bem. * / #include "HX711.h" #define calibração_factor -7050.0 // Este valor é obtido usando o esboço SparkFun_HX711_Calibration #define LOADCELL_DOUT_PIN 3 #define LOADCELL_SCK_PIN 2 escala HX711; void setup () {Serial.begin (9600); Serial.println ("demonstração da escala HX711"); scale.begin (LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN); scale.set_scale (calibração_fator); // Este valor é obtido usando o esboço SparkFun_HX711_Calibration scale.tare (); // Supondo que não haja peso na balança na inicialização, redefina a balança para 0 Serial.println ("Leituras:"); } void loop () {Serial.print ("Lendo:"); Serial.print (scale.get_units (), 1); //scale.get_units () retorna um float Serial.print ("lbs"); // Você pode alterar isso para kg, mas você precisará refatorar o calibração_factor Serial.println (); }

Recomendado: