Taula de continguts:

Particle Photon - Tutorial del sensor de temperatura HDC1000: 4 passos
Particle Photon - Tutorial del sensor de temperatura HDC1000: 4 passos

Vídeo: Particle Photon - Tutorial del sensor de temperatura HDC1000: 4 passos

Vídeo: Particle Photon - Tutorial del sensor de temperatura HDC1000: 4 passos
Vídeo: Particle Photon HCPA-5V-U3 I2C Humidity & Temperature Sensor Tutorial 2024, Juny
Anonim
Image
Image

El HDC1000 és un sensor d’humitat digital amb sensor de temperatura integrat que proporciona una precisió de mesura excel·lent a una potència molt baixa. El dispositiu mesura la humitat basant-se en un nou sensor capacitiu. Els sensors d'humitat i temperatura estan calibrats de fàbrica. És funcional dins del rang de temperatura de -40 ° C a + 125 ° C. Aquí teniu la demostració amb fotó de partícules.

Pas 1: el que necessiteu..

Què necessites..!!
Què necessites..!!

1. Fotó de partícules

2. HDC1000

3. Cable I²C

4. Escut I²C per a fotó de partícules

Pas 2: connexió:

Connexió
Connexió
Connexió
Connexió
Connexió
Connexió
Connexió
Connexió

Agafeu un escut I2C per al fotó de partícules i empenyeu-lo suaument sobre els pins del fotó de partícules.

A continuació, connecteu un extrem del cable I2C al sensor HDC1000 i l’altre extrem a l’escut I2C.

Les connexions es mostren a la imatge superior.

Pas 3: Codi:

Codi
Codi

El codi de partícules per a HDC1000 es pot descarregar des del nostre dipòsit GitHub - Dcube Store.

Aquí teniu l’enllaç per al mateix:

github.com/DcubeTechVentures/HDC1000…

El full de dades de HDC1000 es pot trobar aquí:

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

Hem utilitzat dues biblioteques per al codi de partícules, que són application.h i spark_wiring_i2c.h. Es necessita una biblioteca Spark_wiring_i2c per facilitar la comunicació I2C amb el sensor.

També podeu copiar el codi des d’aquí, es dóna de la següent manera:

// Distribuïda amb llicència de lliure voluntat.

// Utilitzeu-lo de la manera que vulgueu, sense ànim de lucre o de franc, sempre que encaixi en les llicències de les obres associades.

// HDC1000

// Aquest codi està dissenyat per funcionar amb el mini mòdul HDC1000_I2CS I2C disponible a Dcube Store.

#incloure

#incloure

// L'adreça HDC1000 I2C és 0x40 (64)

#define Addr 0x40

flotador cTemp = 0,0, fTemp = 0,0, humitat = 0,0;

int temp = 0, hum = 0;

configuració nul·la ()

{

// Estableix la variable

Particle.variable ("i2cdevice", "HDC1000");

Particle.variable ("humitat", humitat);

Particle.variable ("cTemp", cTemp);

// Inicialitzar la comunicació I2C

Wire.begin ();

// Inicialitzar la comunicació en sèrie, establir la velocitat de transmissió = 9600

Serial.begin (9600);

// Inicieu la transmissió I2C

Wire.beginTransmission (Addr);

// Seleccioneu el registre de configuració

Wire.write (0x02);

// Temperatura, humitat habilitada, resolució = 14 bits, escalfador encès

Wire.write (0x30);

// Atura la transmissió I2C

Wire.endTransmission ();

retard (300);

}

bucle buit ()

{

dades int sense signar [2];

// Inicieu la transmissió I2C

Wire.beginTransmission (Addr);

// Envia l’ordre de mesura temporal

Wire.write (0x00);

// Atura la transmissió I2C

Wire.endTransmission ();

retard (500);

// Sol·liciteu 2 bytes de dades

Wire.requestFrom (Addr, 2);

// Llegiu 2 bytes de dades

// temp msb, temp lsb

if (Wire.available () == 2)

{

dades [0] = Wire.read ();

dades [1] = Wire.read ();

}

// Converteix les dades

temp = ((dades [0] * 256) + dades [1]);

cTemp = (temp / 65536.0) * 165,0 - 40;

fTemp = cTemp * 1,8 + 32;

// Inicieu la transmissió I2C

Wire.beginTransmission (Addr);

// Envia l'ordre de mesura de la humitat

Wire.write (0x01);

// Atura la transmissió I2C

Wire.endTransmission ();

retard (500);

// Sol·liciteu 2 bytes de dades

Wire.requestFrom (Addr, 2);

// Llegiu 2 bytes de dades

// temp msb, temp lsb

if (Wire.available () == 2)

{

dades [0] = Wire.read ();

dades [1] = Wire.read ();

}

// Converteix les dades

hum = ((dades [0] * 256) + dades [1]);

humitat = (zum / 65536,0) * 100,0;

// Data de sortida al tauler

Particle.publish ("Humitat relativa:", String (humitat));

Particle.publish ("Temperatura en centígrads", String (cTemp));

Particle.publish ("Temperatura en Fahrenheit:", String (fTemp));

retard (1000);

}

Pas 4: aplicacions:

HDC1000 es pot utilitzar en calefacció, ventilació i aire condicionat (HVAC), termòstats intel·ligents i monitors d'habitacions. Aquest sensor també troba la seva aplicació a les impressores, els comptadors de mà, els dispositius mèdics, l'enviament de mercaderies i el parabrisa automotriu.

Recomanat: