Tabla de contenido:

Fotón de partículas - Tutorial del sensor de temperatura HDC1000: 4 pasos
Fotón de partículas - Tutorial del sensor de temperatura HDC1000: 4 pasos

Video: Fotón de partículas - Tutorial del sensor de temperatura HDC1000: 4 pasos

Video: Fotón de partículas - Tutorial del sensor de temperatura HDC1000: 4 pasos
Video: Eliminar filtro de partículas - anular DPF o FAP - Como es por dentro 2024, Septiembre
Anonim
Image
Image

El HDC1000 es un sensor de humedad digital con sensor de temperatura integrado que proporciona una excelente precisión de medición a muy baja potencia. El dispositivo mide la humedad basándose en un sensor capacitivo novedoso. Los sensores de humedad y temperatura vienen calibrados de fábrica. Es funcional dentro del rango de temperatura total de -40 ° C a + 125 ° C. Aquí está su demostración con fotones de partículas.

Paso 1: ¡¡Lo que necesitas …

Que necesitas..!!
Que necesitas..!!

1. Fotón de partículas

2. HDC1000

3. Cable I²C

4. Escudo I²C para fotones de partículas

Paso 2: Conexión:

Conexión
Conexión
Conexión
Conexión
Conexión
Conexión
Conexión
Conexión

Tome un escudo I2C para fotones de partículas y empújelo suavemente sobre los pines del fotón de partículas.

Luego, conecte un extremo del cable I2C al sensor HDC1000 y el otro extremo al blindaje I2C.

Las conexiones se muestran en la imagen de arriba.

Paso 3: Código:

Código
Código

El código de partículas para HDC1000 se puede descargar de nuestro repositorio de GitHub: Dcube Store.

Aquí está el enlace para el mismo:

github.com/DcubeTechVentures/HDC1000…

La hoja de datos de HDC1000 se puede encontrar aquí:

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

Hemos utilizado dos bibliotecas para código de partículas, que son application.hy spark_wiring_i2c.h. Se requiere la biblioteca Spark_wiring_i2c para facilitar la comunicación I2C con el sensor.

También puede copiar el código desde aquí, se proporciona de la siguiente manera:

// Distribuido con licencia de libre albedrío.

// Úselo de la forma que desee, lucrativa o gratuita, siempre que encaje en las licencias de sus obras asociadas.

// HDC1000

// Este código está diseñado para funcionar con el Mini Módulo HDC1000_I2CS I2C disponible en Dcube Store.

#incluir

#incluir

// La dirección HDC1000 I2C es 0x40 (64)

#define Addr 0x40

float cTemp = 0.0, fTemp = 0.0, humedad = 0.0;

int temp = 0, hum = 0;

configuración vacía ()

{

// Establecer variable

Particle.variable ("dispositivo i2c", "HDC1000");

Particle.variable ("humedad", humedad);

Particle.variable ("cTemp", cTemp);

// Inicializar la comunicación I2C

Wire.begin ();

// Inicializar la comunicación en serie, configurar la velocidad en baudios = 9600

Serial.begin (9600);

// Iniciar transmisión I2C

Wire.beginTransmission (Addr);

// Seleccionar registro de configuración

Wire.write (0x02);

// Temperatura, humedad habilitada, resolución = 14 bits, calentador encendido

Wire.write (0x30);

// Detener la transmisión I2C

Wire.endTransmission ();

retraso (300);

}

bucle vacío ()

{

datos int sin firmar [2];

// Iniciar transmisión I2C

Wire.beginTransmission (Addr);

// Enviar comando de medición de temperatura

Wire.write (0x00);

// Detener la transmisión I2C

Wire.endTransmission ();

retraso (500);

// Solicita 2 bytes de datos

Wire.requestFrom (Dirección, 2);

// Leer 2 bytes de datos

// temp msb, temp lsb

if (Cable disponible () == 2)

{

datos [0] = Wire.read ();

datos [1] = Wire.read ();

}

// Convertir los datos

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

cTemp = (temp / 65536.0) * 165.0 - 40;

fTemp = cTemp * 1.8 + 32;

// Iniciar transmisión I2C

Wire.beginTransmission (Addr);

// Enviar comando de medición de humedad

Wire.write (0x01);

// Detener la transmisión I2C

Wire.endTransmission ();

retraso (500);

// Solicita 2 bytes de datos

Wire.requestFrom (Dirección, 2);

// Leer 2 bytes de datos

// temp msb, temp lsb

if (Cable disponible () == 2)

{

datos [0] = Wire.read ();

datos [1] = Wire.read ();

}

// Convertir los datos

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

humedad = (hum / 65536.0) * 100.0;

// Salida de datos al tablero

Particle.publish ("Humedad relativa:", String (humedad));

Particle.publish ("Temperatura en grados Celsius:", String (cTemp));

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

retraso (1000);

}

Paso 4: Aplicaciones:

HDC1000 se puede emplear en calefacción, ventilación y aire acondicionado (HVAC), termostatos inteligentes y monitores de habitaciones. Este sensor también encuentra su aplicación en impresoras, medidores portátiles, dispositivos médicos, envío de carga y desempañado de parabrisas de automóviles.

Recomendado: