Uživatelská příručka pro vážicí senzory ARDUINO HX711 Modul ADC
ARDUINO HX711 vážicí senzory ADC modul

Aplikace Přample s Arduino Uno:

Většina snímačů zatížení má čtyři vodiče: červený, černý, zelený a bílý. Na desce HX711 najdete připojení E+/E-, A+/A- a B+/B. Připojte snímač zatížení k desce snímače HX711 podle následující tabulky:

Deska snímače zatížení HX711 Drát zátěžové buňky
E+ Červený
E- Černý
A+ Zelený
A- Bílý
B- Nepoužitý
B+ Nepoužitý

Spojení

Senzor HX711 Arduino Uno
GND GND
DT D3
SCK D2
VCC 5V

Modul HX711 pracuje na 5V a komunikace probíhá pomocí sériových SDA a SCK pinů.

Kde použít zátěž na siloměr?
Můžete vidět, jak se na snímači zatížení zobrazuje šipka. Tato šipka ukazuje směr síly působící na siloměr. Uspořádání podle obrázku můžete vytvořit pomocí kovových pásků. Připevněte kovový pásek k siloměru pomocí šroubů.

Hmotnost

Programování Arduino UNO pro měření hmotnosti v kg:

Připojte schéma, jak je znázorněno na obrázku 1 výše.
Aby tento senzorový modul fungoval s deskami Arduino, potřebujeme knihovnu HX711, kterou lze stáhnout z https://github.com/bogde/HX711.
Než bude možné HX711 použít k přesnému změření hmotnosti objektu, je třeba jej nejprve zkalibrovat. Níže uvedený krok vám ukáže, jak provést kalibraci.

1 Krok: Kalibrační skica
Nahrajte níže uvedený náčrt na desku Arduino Uno

/* Technologie Handson www.handsontec.com
* 29. prosince 2017
* Rozhraní modulu Load Cell HX711 s Arduino pro měření hmotnosti v kg
Arduino
kolík
2 -> HX711 CLK
3 -> DOUT
5V -> VCC
GND -> GND
Většina pinů na Arduino Uno bude kompatibilní s DOUT/CLK.
Deska HX711 může být napájena od 2.7V do 5V, takže napájení Arduina 5V by mělo být v pořádku.
*/
#include “HX711.h” //Tuto knihovnu musíte mít ve složce knihovny arduino
#define DOUT 3
#define CLK 2
Měřítko HX711(DOUT, CLK);
//Změňte tento kalibrační faktor podle vašeho snímače zatížení, jakmile jej zjistíte, že to mnozí potřebujete
měnit to v tisících
float calibration_factor = -96650; //-106600 fungovalo pro mé nastavení maximální váhy 40 kg
//================================================== =========================================
// ZALOŽIT
//================================================== =========================================
void setup() {
Serial.begin(9600);

Serial.println(“Kalibrace HX711”);
Serial.println(“Odstranit veškerou váhu z váhy”);
Serial.println(“Po zahájení měření umístěte na váhu známou váhu”);
Serial.println(“Stisknutím a,s,d,f zvýšíte kalibrační faktor o 10,100,1000,10000 XNUMX XNUMX XNUMX XNUMX
respektive“);
Serial.println(“Stisknutím z,x,c,v snížíte kalibrační faktor o 10,100,1000,10000 XNUMX XNUMX XNUMX XNUMX
respektive“);
Serial.println(“Stiskněte t pro vytárování”);
scale.set_scale();
scale.tare(); //Resetujte měřítko na 0
long zero_factor = scale.read_average(); //Získejte základní hodnotu
Serial.print(“Nulový faktor: “); //Toto lze použít k odstranění potřeby tárování váhy.
Užitečné v projektech trvalého rozsahu.
Serial.println(nulový_faktor);
}
//================================================== =========================================
// LOOP
//================================================== =========================================
void loop() {
scale.set_scale(kalibrační_faktor); //Upravte tento kalibrační faktor
Serial.print(“Čtení: “);
Serial.print(scale.get_units(), 3);
Serial.print(” kg”); //Změňte toto na kg a znovu upravte kalibrační faktor, pokud chcete
následujte jednotky SI jako zdravý člověk
Serial.print(” kalibrační_faktor: “);
Serial.print(kalibrační_faktor);
Serial.println ();
if(Serial.available())
{
char temp = Serial.read();
if(temp == '+' || temp == 'a')
kalibrační_faktor += 10;
else if(temp == '-' || temp == 'z')
kalibrační_faktor -= 10;
else if(temp == 's')
kalibrační_faktor += 100;
else if(temp == 'x')
kalibrační_faktor -= 100;
else if(temp == 'd')
kalibrační_faktor += 1000;
else if(temp == 'c')
kalibrační_faktor -= 1000;
else if(temp == 'f')
kalibrační_faktor += 10000;
else if(temp == 'v')
kalibrační_faktor -= 10000;
else if(temp == 't')
scale.tare(); //Resetujte měřítko na nulu
}
}
//================================================== ========================================

Odstraňte veškerou zátěž ze snímače zatížení. Otevřete sériový monitor. Níže uvedené okno by se mělo otevřít a ukázat, že se modul úspěšně připojil k Arduino Uno.

Konfigurace

Umístěte předmět o známé hmotnosti na siloměr. V tomto případě autor použil známou hmotnost 191 gramů s 10 kg Load Cell. Sériový monitor zobrazí údaje o hmotnosti, jak je uvedeno níže:
Konfigurace

Musíme provést kalibraci zde:

  • Do příkazového prostoru sériového monitoru zadejte písmeno „a, s, d, f“ a stiskněte tlačítko „Odeslat“ pro zvýšení kalibračního faktoru o 10, 100, 1000, 10000 v tomto pořadí.
  • Do příkazového prostoru sériového monitoru zadejte písmeno „z, x, c, v“ a stiskněte tlačítko „Odeslat“, abyste snížili kalibrační faktor o 10, 100, 1000, 10000 v tomto pořadí.
    Konfigurace

Pokračujte v nastavování, dokud údaj neukáže skutečnou hmotnost umístěnou na siloměru. Zaznamenejte si hodnotu „calibration_factor“, v tomto případě „-239250“ v autorově referenční hmotnosti 191 g s 10 kg siloměrem. Tuto hodnotu budeme potřebovat k zasunutí do našeho druhého náčrtu pro skutečné měření.

2. krok: Konečný kód pro měření skutečné hmotnosti
Před nahráním náčrtu musíme zapojit „kalibrační faktor“ získaný v 1. kroku:
Nastavení

Nahrajte níže uvedený náčrt na desku Arduino Uno po úpravě měřítka:

/* Technologie Handson www.handsontec.com
* 29. prosince 2017
* Rozhraní modulu Load Cell HX711 s Arduino pro měření hmotnosti v kg
Arduino
kolík
2 -> HX711 CLK
3 -> DOUT
5V -> VCC
GND -> GND
Většina pinů na Arduino Uno bude kompatibilní s DOUT/CLK.
Deska HX711 může být napájena od 2.7V do 5V, takže napájení Arduina 5V by mělo být v pořádku.
*/
#include “HX711.h” //Tuto knihovnu musíte mít ve složce knihovny arduino
#define DOUT 3
#define CLK 2
Měřítko HX711(DOUT, CLK);
//Změňte tento kalibrační faktor podle vašeho snímače zatížení, jakmile jej najdete, mnozí jej potřebují měnit v tisících
float calibration_factor = -96650; //-106600 fungovalo pro mé nastavení maximální váhy 40 kg
//================================================== ===============================================
// ZALOŽIT
//================================================== ===============================================
void setup() {
Serial.begin(9600);
Serial.println(“Stiskněte T pro vytárování”);
scale.set_scale(-239250); //Kalibrační faktor získaný z prvního náčrtu
scale.tare(); //Resetujte měřítko na 0
}
//================================================== ===============================================
// LOOP
//================================================== ===============================================
void loop() {
Serial.print(“Hmotnost: “);
Serial.print(scale.get_units(), 3); //Až 3 desetinná místa
Serial.println(” kg”); //Změňte toto na kg a znovu upravte kalibrační faktor, pokud budete dodržovat lbs
if(Serial.available())
{
char temp = Serial.read();
if(temp == 't' || temp == 'T')
scale.tare(); //Resetujte měřítko na nulu
}
}
//================================================== ===============================================

Po úspěšném nahrání náčrtu otevřete Serial Monitor. Mělo by se zobrazit níže uvedené okno se skutečnou hodnotou měření:
Konfigurace

Odečet můžete resetovat na 0.000 kg (bez zatížení) zadáním „t“ nebo „T“ do ​​příkazového prostoru a stisknutím tlačítka „Odeslat“. Pod displejem, který ukazuje naměřenou hodnotu 0.000 kg.
Konfigurace

Umístěte předmět na siloměr, měla by se zobrazit skutečná hmotnost. Níže je zobrazení hmotnosti při umístění předmětu 191 gramů (použito v 1. kroku pro kalibraci).
Konfigurace

Hurá! sestrojili jste váhu s přesností na tři desetinná místa!

Dokumenty / zdroje

ARDUINO HX711 vážicí senzory ADC modul [pdfUživatelská příručka
Váhové senzory HX711 Modul ADC, HX711, Váhové senzory Modul ADC, Senzory Modul ADC, Modul ADC, Modul

Reference

Zanechte komentář

Vaše emailová adresa nebude zveřejněna. Povinná pole jsou označena *