Capacità di peso massimo 5 kg
Temperatura di funzionamento Min -10 °C
Temperatura di funzionamento massima 40 °C
L'amplificatore HX711 comunica tramite un'interfaccia a due fili. Puoi collegarlo a qualsiasi pin digitale della scheda Arduino. Stiamo collegando il pin dati (DT) al pin 2 e il pin orario (CLK) al pin 3.
Seguire la tabella o lo schema per collegare la cella di carico alla scheda Arduino.
Cella di carico | RHX711 | RHX711 | Arduino |
Rosso (E+) | E+ | GND | GND |
Nero (E-) | E... | DT | Pin 2 |
Bianco (A-) | E'un... | SCK | Pin 3 |
Verde (A+) | A+ | VCC | 5V |
In questo momento, supponiamo di aver collegato la cella di carico all'amplificatore HX711 e l'amplificatore alla scheda Arduino.
Prima di ottenere il peso degli oggetti, è necessario calibrare la cella di carico prima di ottenere ilfattore di taraturaIl tuo fattore di calibrazione sarà diverso dal mio, quindi non dovresti saltare questa sezione.
1)Ho usato la mia bilancia da cucina e ho pesato un bicchiere con acqua (107g).
2)Caricate il seguente codice sulla vostra scheda Arduino. Abbiamo scritto il seguente codice tenendo conto delle istruzioni per calibrare la cella di carico fornite dalla documentazione della biblioteca.
/*
Rui Santos
I dettagli del progetto sono disponibili all'indirizzo https://RandomNerdTutorials.com/arduino-load-cell-hx711/
*/
// Calibrazione della cella di carico
#include "HX711.h"
// cablaggio del circuito HX711
const int LOADCELL_DOUT_PIN = 2;
const int LOADCELL_SCK_PIN = 3;
Scala HX711;
impostazione vuota (() {
Serial.begin ((57600);
scale.begin ((LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN);
}
Lo loop vuoto
se (scale.is_ready()) {
scala.set_scale();
Serial.println (("Tare... rimuovi eventuali pesi dalla bilancia. ");
ritardo ((5000);
scala.tare();
Serial.println ((("Sono finiti...");
Serial.print (("Posizionare un peso noto sulla bilancia"...);
ritardo ((5000);
long reading = scale.get_units(10);
Serial.print (("Risultato: ");
Serial.println ((lettura);
}
{ altro
Serial.println (("HX711 non trovato. ");
}
ritardo ((1000);
}
// il fattore di taratura sarà la ( lettura) / (peso noto)
Dopo aver caricato, aprire ilMonitor seriale a velocità di segnalazione di 57600e poi premere il pulsante di ripristino di bordo di Arduino.
4)Seguire le istruzioni sul monitor seriale: rimuovere i pesi dalla bilancia (saranno automaticamente analizzati).
5)Calcolare il fattore di taratura con la formula:
Fattore di taratura = ( lettura)/ (peso noto)
Nel nostro caso la lettura è -49171. il peso noto è 107g, quindi il nostro fattore di taratura sarà: -49171/107 = -459.542.
Fattore di taratura = -49171/107 = -459.542
Risparmiate il vostro fattore di calibrazione perché ne avrete bisogno più tardi.
Ora che conoscete il vostro fattore di calibrazione, potete usare la vostra cella di carico per pesare gli oggetti.Iniziare pesando oggetti con un peso noto e ripetere il processo di taratura se i valori non sono accurati.
Prima di caricarlo sulla scheda, non dimenticare di inserire il fattore di taratura nella riga 43/44 del codice.
/**
* I dettagli completi del progetto sono disponibili su https://RandomNerdTutorials.com/arduino-load-cell-hx711/
**/
#include
#include "HX711.h"
// cablaggio del circuito HX711
const int LOADCELL_DOUT_PIN = 2;
const int LOADCELL_SCK_PIN = 3;
Scala HX711;
impostazione vuota (() {
Serial.begin ((57600);
Serial.println (("HX711 Demo");
Serial.println (("Inizializzazione della scala");
scale.begin ((LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN);
Serial.println (("Prima di impostare la scala:");
Serial.print (("lettura: tt");
Serial.println ((scale.read()); // stampare una lettura grezza dall'ADC
Serial.print (("media di lettura: tt");
Serial.println ((scale.read_average(20)); // stampa la media di 20 letture dall'ADC
Serial.print (("ottenere valore: tt");
Serial.println ((scale.get_value(5)); // stampa la media di 5 letture dall'ADC meno il peso della tara (non ancora impostato)
Serial.print (("ottenere unità: tt");
Serial.println ((scale.get_units ((5), 1); // stampare la media di 5 letture dall'ADC meno il peso della tara (non impostato) diviso
// per il parametro SCALE (non ancora impostato)
scala.set_scale ((-459.542);
//scale.set_scale ((-471.497); // questo valore è ottenuto calibrando la bilancia con pesi noti; vedere il README per i dettagli
scale.tare(); // ripristinare la scala a 0
Serial.println (("Dopo aver impostato la scala:");
Serial.print (("lettura: tt");
Serial.println ((scale.read()); // stampare una lettura grezza dall'ADC
Serial.print (("media di lettura: tt");
Serial.println ((scale.read_average(20)); // stampa la media di 20 letture dall'ADC
Serial.print (("ottenere valore: tt");
Serial.println ((scale.get_value(5)); // stampare la media di 5 letture dall'ADC meno il peso della tara, impostato con la tare()
Serial.print (("ottenere unità: tt");
Serial.println ((scale.get_units ((5), 1); // stampare la media di 5 letture dall'ADC meno il peso della tara, diviso
// dal parametro SCALE impostato con set_scale
Serial.println (("Lezioni:");
}
Lo loop vuoto
Serial.print (("una lettura: t");
Serial.print ((scale.get_units ((), 1);
Serial.print ((("mediano di stampa:t");
Serial.println ((scale.get_units)) 10, 5);
ritardo ((5000);
}