Arduino + датчик DHT11 (влажность и температура)

Сегодня мы рассмотрим подключение к плате Arduino датчика влажности и температуры DHT11 (рисунок 1).

DHT11_5
Рисунок 1 – Датчик DHT11

Относительная влажность

Разрешение: 16Bit
Повторяемость: ± 1% относительной влажности
Точность: На 25 ? ± 5% относительной влажности
Взаимозаменяемость: полностью взаимозаменяемы
Время отклика: 1 / е (63%) из 25 ? 6s 1 м / с воздуха 6s
Гистерезис: < ± 0,3% RH Долгосрочная стабильность: <± 0,5% RH / год в Температура

Разрешение: 16Bit
Повторяемость: ± 0,2 ?
Диапазон: На 25 ? ± 2 ?
Время отклика: 1/е (63%) 10S



Электрические характеристики

Питание: DC 3,5 ~ 5,5 В
Ток питания: измерение 0.3mA ожидания 60?
Период выборки: более 2 секунд

Подключение датчика DHT11 к плате Arduino
DHT11 цифровой датчик температуры и влажности является составным датчиком, который содержит калиброванный цифровой выходной сигнал с показаниями температуры и влажности. Датчик включает в себя резистивный сенсор влажности и компоненты NTC структуры для измерения температуры.

DHT11_Pins

Для подключения к Arduino необходимо использовать резистор на 10 кОм между контактами 1 и 2 датчика DHT11.

dht11-arduino

Я использовал модуль датчика DHT11 с уже встроенным SMD резистором.

dht11

Для работы датчика DHT11 необходима библиотека DHT

#include "DHT.h"

#define DHTPIN 2 // what pin we're connected to

// Uncomment whatever type you're using!
#define DHTTYPE DHT11 // DHT 11
//#define DHTTYPE DHT22 // DHT 22 (AM2302)
//#define DHTTYPE DHT21 // DHT 21 (AM2301)

// Connect pin 1 (on the left) of the sensor to +5V
// Connect pin 2 of the sensor to whatever your DHTPIN is
// Connect pin 4 (on the right) of the sensor to GROUND
// Connect a 10K resistor from pin 2 (data) to pin 1 (power) of the sensor

DHT dht(DHTPIN, DHTTYPE);

void setup() {
Serial.begin(9600);
Serial.println("DHTxx test!");

dht.begin();
}

void loop() {
// Reading temperature or humidity takes about 250 milliseconds!
// Sensor readings may also be up to 2 seconds 'old' (its a very slow sensor)
float h = dht.readHumidity();
float t = dht.readTemperature();

// check if returns are valid, if they are NaN (not a number) then something went wrong!
if (isnan(t) || isnan(h)) {
Serial.println("Failed to read from DHT");
} else {
Serial.print("Humidity: ");
Serial.print(h);
Serial.print(" %\t");
Serial.print("Temperature: ");
Serial.print(t);
Serial.println(" *C");
}
}

dht11-serial



Оставить ответ

Обязательные поля помечены*

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.