Sommario:

Particle Photon - Tutorial sensore di temperatura HDC1000: 4 passaggi
Particle Photon - Tutorial sensore di temperatura HDC1000: 4 passaggi

Video: Particle Photon - Tutorial sensore di temperatura HDC1000: 4 passaggi

Video: Particle Photon - Tutorial sensore di temperatura HDC1000: 4 passaggi
Video: Particle Photon - HDC1000 Temperature Sensor Tutorial 2024, Settembre
Anonim
Image
Image

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. Ecco la sua dimostrazione con il fotone particellare.

Passaggio 1: ciò di cui hai bisogno.

Quello di cui hai bisogno..!!
Quello di cui hai bisogno..!!

1. Fotone particellare

2. HDC1000

3. Cavo I²C

4. Scudo I²C per fotoni di particelle

Passaggio 2: connessione:

Connessione
Connessione
Connessione
Connessione
Connessione
Connessione
Connessione
Connessione

Prendi uno scudo I2C per fotone particellare e spingilo delicatamente sui perni del fotone particellare.

Quindi collegare un'estremità del cavo I2C al sensore HDC1000 e l'altra estremità allo schermo I2C.

I collegamenti sono mostrati nell'immagine sopra.

Passaggio 3: codice:

Codice
Codice

Il codice particella per HDC1000 può essere scaricato dal nostro repository GitHub - Dcube Store.

Ecco il link per lo stesso:

github.com/DcubeTechVentures/HDC1000…

La scheda tecnica di HDC1000 può essere trovata qui:

www.ti.com.cn/cn/lit/ds/symlink/hdc1000.pdf

Abbiamo usato due librerie per il codice particellare, che sono application.he spark_wiring_i2c.h. La libreria Spark_wiring_i2c è necessaria per facilitare la comunicazione I2C con il sensore.

Puoi anche copiare il codice da qui, è fornito come segue:

// Distribuito con una licenza libera.

// Usalo come vuoi, a scopo di lucro o gratuito, a condizione che rientri nelle licenze delle opere associate.

// HDC1000

// Questo codice è progettato per funzionare con il Mini Modulo I2C HDC1000_I2CS disponibile in Dcube Store.

#includere

#includere

// L'indirizzo I2C dell'HDC1000 è 0x40(64)

#define Indirizzo 0x40

float 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à));

Particle.publish("Temperatura in gradi Celsius: ", String(cTemp));

Particle.publish("Temperature in Fahrenheit: ", String(fTemp));

ritardo(1000);

}

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: