Documentazione Aggiornata – Celle di Carico (loadcell) e HX711

È stato realizzato un documento in PDF contenente tutta la documentazione e le informazioni riguardo le Celle di Carico da noi utilizzate e il relativo modulo di interfacciamento HX711 (o INA125).
È possibile scaricare i documenti in PDF a fine paragrafo. 

    Cella di Carico

Una cella di carico è un dispositivo che viene utilizzato per misurare il peso o la forza. Quando una forza viene applicata ad essa in un modo specifico, una cella di carico produce un segnale di uscita che è proporzionale alla forza applicata. Le celle di carico per estensimetri sono il cuore della maggior parte dei dispositivi di misurazione della forza prodotti oggi. Un’estremità di una cella di carico è tipicamente supportata su una struttura rigida mentre l’altra estremità supporta un dispositivo di ricezione del carico attraverso il quale viene applicato il carico o la forza. Le celle di carico possono essere utilizzate singolarmente o in combinazioni in dispositivi di pesatura, come dettato dalla geometria dell’oggetto da pesare.

Le celle di carico con estensimetro sono la forma più comune di cella di carico disponibile in commercio oggi e sono qui descritte brevemente. La seguente figura illustra un estensimetro metallico.

Questo consiste in una lamina metallica incisa su linee di griglia parallele che formano un circuito tra le piazzole di saldatura utilizzate per completare il circuito. La lamina è legata ad un materiale di supporto isolante che, a sua volta, è legato alla superficie della cella di carico, come mostrato nella Figura 2. Una cella di carico del tipo Strain- gage è costituita da un elemento elastico che viene selettivamente indebolito per creare regioni relativamente alta tensione; questo è dove vengono applicati gli estensimetri.

Nella figura 2, due calibri sono illustrati sulla superficie e due calibri corrispondenti sono sulla superficie inferiore (non mostrato). In questa disposizione due calibri misurano lo sforzo di trazione e due misurano lo sforzo comprimente come quando un carico (peso) è applicata sulla cella di carico. (indicati nella figura 2 come T e C). Gli estensimetri sono collegati insieme per formare un ponte di Wheatstone come illustrato nella figura 3.

Una tensione di eccitazione stabile viene applicata agli angoli opposti del ponte di Wheatstone e un segnale viene misurato sugli altri, i punti A e B nella figura 3. Senza carico applicato alla cella, tutti i misuratori hanno la stessa resistenza e quindi non c’è differenza di tensione tra i punti A e B.
Quando il carico viene applicato alla cella, la resistenza degli indicatori di tensione aumenta, mentre quella degli indicatori di compressione diminuisce. Il ponte diventa ora “sbilanciato” e una differenza di tensione (segnale) proporzionale al carico applicato può essere misurata attraverso i punti A e B. 


Alcune celle di carico e indicatori dispongono di cavi di rilevamento come mostrato nella Figura 3 che consentono all’indicatore di misurare e regolare la tensione di eccitazione applicata alla cella, ciò è particolarmente importante con i cavi lunghi.

La Figura 4 rappresenta la tipologia usata nella pesatura di serbatoi e tramogge, dove le celle di carico sono sospese da una struttura aerea e l’oggetto da pesare viene appeso dal lato inferiore. Il fascio a S è anche ampiamente utilizzato nella conversione di bilance meccaniche in elettromeccanica; in questa situazione la cella viene utilizzata per rilevare la tensione dell’asta dell’asta che collega il sistema a leva al raggio. Le capacità tipiche vanno da 45Kg  a 22 tonnellate  per i contenitori di tensione.

La Figura 5 illustra una cella di carico a punto singolo che è ampiamente utilizzata nelle bilance a piattaforma piccola. Le celle a punto singolo differiscono dalle altre celle descritte fino ad ora. Legge lo stesso peso indipendentemente da dove il carico è applicato alla piattaforma superiore. Le capacità variano tipicamente da 1Kg a 2 tonnellate e possono ospitare piattaforme di dimensioni fino a 309,67cm2.   

Tipologie di celle di carico:
Se classificati secondo la direzione di rilevamento del carico, le celle di carico possono essere suddivise nei seguenti tipi: tensione, compressione, alternanza e flessione.

  Tensione           Compressione          Alternanza                   Flessione

  • La precisione delle celle di carico può essere classificata come: Ultra-preciso, Preciso, Standard.
  • La forma del materiale della molla dipende dalle caratteristiche della cella di carico.

Tenuta all’aria:

  1. Sigillo ermetico:

 Questo tipo racchiude le aree degli estensimetri all’interno di una custodia e li protegge dall’aria esterna. In generale, l’interno del case è pieno di gas inattivo, anticipando che la cella di carico sia utilizzata in condizioni ambientali sfavorevoli. Un meccanismo come un diaframma o un soffietto viene utilizzato in modo da non influire sulla piegatura del materiale della molla.

  • Aperto: 

Quando la capacità nominale è piccola, il fissaggio di una custodia a prova di temperatura compromette l’accuratezza della cella di carico. Con un tipo aperto, la resina morbida o la gomma viene utilizzata come materiale resistente alla temperatura. Sebbene la sua resistenza ambientale sia più debole rispetto al tipo ermetico, ci sono pochi problemi se usato in un ambiente ordinario.

  • Explosion-Proof:

Grazie alla sua struttura questa tipologia di cella è a prova di fuoco

Altri tipi di celle di carico:

Le celle di carico possono essere classificate in altri tipi: Beam Type, Can Type, S Type, Washer Type.


Altre Classificazioni:

  • Single-Point & Multi-Point:

 Il single-point viene utilizzato quando si effettua una scala con una cella di carico mentre il multi-point viene utilizzato quando si crea una scala con più celle di carico. Con il single-point, è possibile fare una scala semplicemente mettendo un peso sulla cella di carico poiché gli errori d’angolo sono già corretti. Con il multi-point, tre o quattro celle di carico vengono generalmente utilizzate per creare una scala. Le uscite di queste celle di carico vengono combinate utilizzando una scatola somma e la regolazione dei resistori della scatola sommatoria sono regolati per controllare eventuali errori di angolazione.

HX711 o INA125

Nel nostro progetto abbiamo utilizzato dei circuiti condizionatori.

Sono circuiti aventi cella di carico con seguente utilizzo di HX711 o INA125. 

Noi di BeeSafe abbiamo optato per l’HX711, grazie alla quale siamo riusciti ha utilizzare la cella di carico con il microcontrollore Arduino.

HX711
INA125

HX711

L’HX711 è un convertitore analogico-digitale a 24 bit (ADC) di precisione progettato per pesare bilance e applicazioni di controllo industria,specifico per interfacciare la cella di carico a un microcontrollore come Arduino, Fishino o compatibili.
Il multiplexer di ingresso seleziona gli ingressi differenziali del canale A o del canale B all’amplificatore di guadagno a basso rumore. Il canale A può essere programmato con un guadagno di 64 o 128.

Caratteristiche:

  • Due canali di ingresso differenziati selezionabili;
  • PGA attivo a basso rumore su chip con guadagno selezionabile di 32, 64 e 128;
  • Regolatore di alimentazione su chip per cella di carico e Alimentatore analogico ADC
  • Oscillatore su chip che non richiede alcun intervento esterno componente con cristallo esterno;
  • Rispristino all’accensione;
  • Semplice controllo digitale e interfaccia seriale: controlli comandati da pin, nessuna programmazione necessaria;
  • Velocità dati di uscita selezionabili 10SPS o 80SPS;
  • Rifiuto simultaneo di alimentazione a 50 e 60 Hz;
  • Consumo di corrente analogo su chip, regolatore di alimentazione:
  • Assorbimento in condizioni normali < 1,5 mA;
  • Assorbimento da spento < 1 uA;
  • Intervallo della tensione di funzionamento: 2,6 ~ 5,5 V;
  • Intervallo temperatura di funzionamento: -40° C ~ +85° C;
  • Pacchetto SOP -16 a 16 pin;

Circuito di funzionamento:

INA125

L’integrato INA125 è un amplificatore ad alta precisione e a bassa potenza, avente una tensione di precisione di riferimento. Provvede un’amplificazione di ingresso differenziale di precisione e una completa eccitazione del ponte.

Un resistore singolo ed esterno imposta un guadagno compreso tra 4 e 10000. L’ INA125 è rifilato a laser per la tensione bassa di offset, per la deriva di offset bassa (2µV/°C), e lo scarto in modalità comune alto (100dB con G=100). Esso opera su alimentazioni singole (da +2.7V a +36V) o duali (da ±1.35V a ± 18V).

Il riferimento di tensione è estremamente regolabile con le tensioni selezionabili dai pin di 2.5V, 5V o 10V, permettendo l’uso di una varietà di trasduttori. La tensione di riferimento è a 0.5% (massima) con una deriva di ± 35ppm/°C (massima). La modalità “sleep” permette l’arresto e l’operazione di duty cycle per risparmiare potenza.

L’ INA125 è disponibile in DIP in plastica a 16 pin e confezioni SO-16 a montaggio superficiale ed è specificato per il range di temperatura compreso tra -40°C e i +85°C.

Caratteristiche:

  • Bassa corrente di quiescenza: 460 µA
  • Riferimento di bassa tensione: 1.24V, 2.5V, 5V o 10V
  • Modalità “sleep”
  • Tensione di offset bassa: 250 µV max
  • Deriva a basso offset: 2µV/°C max
  • Bassa corrente di polarizzazione di offset: 20nA max
  • Rapporto di reiezione di modo comune (CMR): 100dB min
  • Rumore minimo: 38nV/√Hz con f=1kHz
  • Protezione d’ingresso a ± 40V
  • Alimentazione singola: 2.7V a 36V;
  • Alimentazione duale: da ±1.35V a ±18V;
  • 16 pin DIP e pacchetti SO-16 SOIC.
Piedinatura dell’INA125

Applicazioni:

  • Amplificatori di ponte di pressione e temperatura
  • Controlli di processi industriali
  • Automazione di fabbriche
  • Acquisizione di dati multi-canale
  • Sistemi a batteria
  • Strumentazione a scopo generico

Celle di Carico (loadcell) 200/500Kg

Codice esempio:

#include "HX711.h"
#define calibration_factor -9580.00 //This value is obtained using the SparkFun_HX711_Calibration sketch
#define DOUT  4
#define CLK  5
HX711 scale(DOUT, CLK);
void setup() {
  Serial.begin(9600);
  Serial.println("HX711 scale demo");
  scale.set_scale(calibration_factor);
  scale.tare(); //Assuming there is no weight on the scale at start up, reset the scale to 0
  Serial.println("Readings:");
}
void loop() {
  Serial.print("Reading: ");
  float libbre = scale.get_units();
  float kg = (libbre/2.2046);
  Serial.print(kg, 1); //scale.get_units() returns a float
  Serial.print(" kg"); //You can change this to kg but you'll need to refactor the calibration_factor 
  Serial.println();
}

Configurazione con 2 Celle di Carico (da 50kg)

È stata realizzata un’altra configurazione, utilizzando solamente 2 mezze-celle di carico (loadcell) con portata da 50kg l’una, per una portata totale pari a 100kg.
Il sistema è gestito con l’integrato HX711 (convertitore ADC, già visto nelle precedenti configurazioni) ed interfacciato tramite quest’ultimo con Arduino Uno.
Lo Schema di Collegamento è il seguente:

Caratteristiche – Celle di Carico (loadcell):

  • Capacità: 50 kg
  • Sensibilità di uscita: 1 mV ( ±0,1)
  • Non linearità: 0,05(% sul Fondo Scala)
  • Isteresi: 0,05 (% sul Fondo Scala)
  • Ripetibilità: 0,05 (% sul Fondo Scala)
  • Creep dopo 1 minuto: 0,1 (% sul Fondo Scala)
  • Effetto della temperatura sull’uscita: 10°C (0,1% sul Fondo Scala)
  • Effetto della temperatura sullo zero: 10°C (0,3% sul Fondo Scala)
  • Resistenza d’ingresso: 1 kohm (±10)
  • Resistenza di uscita: 1 kohm (±10)
  • Resistenza di isolamento: >2000 Mohm
  • Temperatura di funzionamento: da -10°C a +40°C
  • Tensione eccitazione: 10 Volt
  • Dimensioni (mm): 34x34x8
  • Peso: 19 grammi
  • – filo rosso -> Positivo (VCC)
    – filo nero -> Negativo (GND)
    – filo bianco -> OUT (pin Digitale)
  • Documentazione Tecnica: datasheet

Caratteristiche – HX711:
– VCC -> pin +5V di Arduino
– DT -> pin digitale PWM (esempio: 4) 
di Arduino
– SCK -> pin digitale (esempio: 5) 
di Arduino
– GND -> pin GND
di Arduino
– Documentazione Tecnica: datasheet (MakerFabs)

Codice Esempio – Rilevazione Peso con Tara iniziale:
– Libreria HX711:link GitHub

#include "HX711.h"
#define calibration_factor -9580.00 //Fattore di calibrazione, ottenuto utilizzando lo sketch SparkFun_HX711_Calibration
#define DOUT 4 //Pin digitale DT
#define CLK 5 //Pin digitale SCK
HX711 scale(DOUT, CLK);

void setup() {
  Serial.begin(9600);
  Serial.println("Rilevazione Peso con Tara iniziale");
  scale.set_scale(calibration_factor);
  scale.tare(); //Assicurarsi che non ci sia nessun peso allo start.
  delay(500);
  Serial.println("Tara in corso... non mettere nessun peso!");
  delay(1000);
  Serial.println("Sistema pronto.");
  delay(300);
}

void loop() {
  Serial.print("Peso: ");
  float libbre = scale.get_units();
  float kg = (libbre/2.2046); //Conversione peso Libbre in Kg
  Serial.print(kg, 1); 
  Serial.print(" kg"); 
  Serial.println();
  delay(500); //Ritardo nella lettura del peso. Diminuire per una lettura più frequente!
}