Sommario:
- Passaggio 1: hardware richiesto:
- Passaggio 2: collegamento hardware:
- Passaggio 3: codice per la misurazione della temperatura e dell'umidità:
- Passaggio 4: applicazioni:
Video: Misurazione di temperatura e umidità utilizzando HDC1000 e fotone particellare: 4 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:02
L'HDC1000 è un sensore di umidità digitale con sensore di temperatura integrato che fornisce un'eccellente precisione di misura a bassissima potenza. Il dispositivo misura l'umidità in base a un nuovo sensore capacitivo. I sensori di umidità e temperatura sono calibrati in fabbrica. Funziona all'interno dell'intero intervallo di temperatura da -40°C a +125°C.
In questo tutorial è stata illustrata l'interfaccia del modulo sensore HDC1000 con il fotone particellare. Per leggere i valori di temperatura e umidità, abbiamo utilizzato la particella con un adattatore I2c. Questo adattatore I2C rende la connessione al modulo sensore facile e più affidabile.
Passaggio 1: hardware richiesto:
I materiali di cui abbiamo bisogno per raggiungere il nostro obiettivo includono i seguenti componenti hardware:
1. HDC1000
2. Fotone particellare
3. Cavo I2C
4. Scudo I2C per fotoni di particelle
Passaggio 2: collegamento hardware:
La sezione sui collegamenti hardware spiega fondamentalmente le connessioni di cablaggio richieste tra il sensore e il fotone della particella. Garantire connessioni corrette è la necessità di base mentre si lavora su qualsiasi sistema per l'output desiderato. Quindi, i collegamenti necessari sono i seguenti:
L'HDC1000 funzionerà su I2C. Ecco lo schema elettrico di esempio, che mostra come cablare ciascuna interfaccia del sensore.
Di default, la scheda è configurata per un'interfaccia I2C, quindi consigliamo di utilizzare questo collegamento se sei altrimenti agnostico.
Tutto ciò di cui hai bisogno sono quattro fili! Sono necessarie solo quattro connessioni pin Vcc, Gnd, SCL e SDA e questi sono collegati con l'aiuto del cavo I2C.
Queste connessioni sono mostrate nelle immagini sopra.
Passaggio 3: codice per la misurazione della temperatura e dell'umidità:
Cominciamo ora con il codice particellare.
Durante l'utilizzo del modulo sensore con la particella, includiamo application.h e la libreria spark_wiring_i2c.h. La libreria "application.h" e spark_wiring_i2c.h contiene le funzioni che facilitano la comunicazione i2c tra il sensore e la particella.
L'intero codice particella è riportato di seguito per comodità dell'utente:
#includere
#includere
// L'indirizzo I2C dell'HDC1000 è 0x40(64)
#define Indirizzo 0x40
doppia cTemp = 0,0, fTemp = 0,0, umidità = 0,0;
int temp = 0, ronzio = 0;
configurazione nulla()
{
// Imposta variabile
Particle.variable("i2cdevice", "HDC1000");
Particle.variable("umidità", umidità);
Particle.variable("cTemp", cTemp);
// Inizializza la comunicazione I2C
Wire.begin();
// Inizializza la comunicazione seriale, imposta la velocità di trasmissione = 9600
Serial.begin(9600);
// Avvia la trasmissione I2C
Wire.beginTransmission(Addr);
// Seleziona il registro di configurazione
Wire.write(0x02);
// Temperatura, umidità abilitata, risoluzione = 14 bit, riscaldatore acceso
Wire.write(0x30);
// Interrompi trasmissione I2C
Wire.endTransmission();
ritardo(300);
}
ciclo vuoto()
{
dati int senza segno[2];
// Avvia la trasmissione I2C
Wire.beginTransmission(Addr);
// Invia il comando di misurazione della temperatura
Wire.write(0x00);
// Interrompi trasmissione I2C
Wire.endTransmission();
ritardo (500);
// Richiedi 2 byte di dati
Wire.requestFrom(Addr, 2);
// Legge 2 byte di dati
//temp msb, temp lsb
if (Filo.disponibile() == 2)
{
data[0] = Wire.read();
data[1] = Wire.read();
}
// Converti i dati
temp = ((data[0] * 256) + data[1]);
cTemp = (temp / 65536.0) * 165,0 - 40;
fTemp = cTemp * 1,8 + 32;
// Avvia la trasmissione I2C
Wire.beginTransmission(Addr);
// Invia il comando di misurazione dell'umidità
Wire.write(0x01);
// Interrompi trasmissione I2C
Wire.endTransmission();
ritardo (500);
// Richiedi 2 byte di dati
Wire.requestFrom(Addr, 2);
// Legge 2 byte di dati
//temp msb, temp lsb
if (Filo.disponibile() == 2)
{
data[0] = Wire.read();
data[1] = Wire.read();
}
// Converti i dati
ronzio = ((data[0] * 256) + dati[1]);
umidità = (ronzio / 65536,0) * 100,0;
// Invia i dati alla dashboard
Particle.publish("Umidità relativa: ", String(umidità));
ritardo(1000);
Particle.publish("Temperatura in gradi Celsius: ", String(cTemp));
ritardo(1000);
Particle.publish("Temperature in Fahrenheit: ", String(fTemp));
ritardo(1000);
}
La funzione Particle.variable() crea le variabili per memorizzare l'output del sensore e la funzione Particle.publish() visualizza l'output sulla dashboard del sito.
L'uscita del sensore è mostrata nell'immagine sopra come riferimento.
Passaggio 4: applicazioni:
HDC1000 può essere impiegato in riscaldamento, ventilazione e condizionamento dell'aria (HVAC), Termostati Intelligenti e Monitor Ambienti. Questo sensore trova la sua applicazione anche in stampanti, misuratori portatili, dispositivi medici, spedizioni di merci e antiappannamento per parabrezza per autoveicoli.
Consigliato:
Misurazione dell'umidità con HYT939 e fotone particellare: 4 passaggi
Misurazione dell'umidità utilizzando HYT939 e Particle Photon: HYT939 è un sensore di umidità digitale che funziona su protocollo di comunicazione I2C. L'umidità è un parametro fondamentale quando si tratta di sistemi e laboratori medici, quindi per raggiungere questi obiettivi abbiamo cercato di interfacciare HYT939 con lampone pi. IO
Misurazione della temperatura utilizzando MCP9803 e fotone particellare: 4 passaggi
Misurazione della temperatura utilizzando MCP9803 e Particle Photon: MCP9803 è un sensore di temperatura ad alta precisione a 2 fili. Sono dotati di registri programmabili dall'utente che facilitano le applicazioni di rilevamento della temperatura. Questo sensore è adatto per sistemi di monitoraggio della temperatura multizona altamente sofisticati.N
Misurazione della temperatura utilizzando TMP112 e fotone particellare: 4 passaggi
Misurazione della temperatura utilizzando TMP112 e fotone di particelle: modulo I2C MINI del sensore di temperatura digitale ad alta precisione e bassa potenza TMP112. Il TMP112 è ideale per la misurazione della temperatura estesa. Questo dispositivo offre una precisione di ±0,5°C senza richiedere calibrazione o condizionamento del segnale di componenti esterni.I
Misurazione della temperatura utilizzando AD7416ARZ e fotone particellare: 4 passaggi
Misurazione della temperatura utilizzando AD7416ARZ e fotone di particelle: AD7416ARZ è un sensore di temperatura a 10 bit con quattro convertitori da analogico a digitale a canale singolo e un sensore di temperatura integrato incorporato in esso. Il sensore di temperatura sulle parti è accessibile tramite canali multiplexer. Questa temperatura ad alta precisione
Misurazione della temperatura utilizzando LM75BIMM e fotone particellare: 4 passaggi
Misurazione della temperatura utilizzando LM75BIMM e Particle Photon: LM75BIMM è un sensore di temperatura digitale incorporato con watchdog termico e dispone di un'interfaccia a due fili che ne supporta il funzionamento fino a 400 kHz. Ha un'uscita di sovratemperatura con limite programmabile e isteresi. In questo tutorial l'interfaccia