Датчик температуры и влажности DHT-11

Цифровой датчик температуры и влажности используется в системах контроля климата, метеостанциях и других систамах. 

Принцип работы

Внутри датчика DHT-11 находится резистивная составляющая, она состоит из двух электродов, которые нанесены на подложку (бифилярная намотка), сверху этих электродов нанесен слой материала с достаточно низким сопротивлением (часто используют оксид алюминия), оно меняет свое удельное сопротивление в зависимости (обратная пропорциональность) от влажности. Опрашивать датчик можно раз в 10 или раз в 30 секунд. На самом деле резистивные датчики не являются полностью резистивными поскольку имеет место ёмкостной эффект в диапазоне более 10-100 МОм. Кроме этого, внутри датчика присутствует вторая часть, которая измеряет температуру с отрицательным температурным коэффициентом (NTC). Эти две части соединены с высокопроизводительным 8-битным микроконтроллером. Каждый датчик DHT11 проходит калибровку, коэффициенты калибровки хранятся в виде программ в однократно программируемой энергонезависимой памяти самого датчика и используются во внутренних процессах обработки сигнала. Также датчик содержит в себе АЦП для преобразования аналоговых значений влажности и температуры.

Дачик возвращает данные в цифровом виде. Влажность рассчитывается как относительная влажность. Температуру можно вывести как в градусах Цельсия, так и в Фарингейтах.

Для удобства и простоты использования мы разместили всю схему с необходимой обвязкой на одной плате, к модулю необходимо подключить только питание и выводы контроллера при помощи четырехконтактного разъема.

Технические характеристики модуля

Диапазон измерения влажности: 20% - 90%.
Точность: 5%.
Диапазон температуры: 0°С - 50°С
Точность: ±2%. 

Подключение

Подключение модуля осуществляется с помощью разъема XH-2.54-4P, выводы которого имеют следующие назначения:

VCC - питание
CH2 - подключается к цифровому контакту контроллера
CH1 - не задействован (NC)
GND - земля (общий)

Чтобы начать работу с датчиком его необходимо подключить к микроконтроллеру по схеме ниже. Для быстрого и надежного подключения используйте QuatroPort A050. 

Программа

Далее необходимо скачать и установить библиотеку для работы с датчиком. 

После этого нужно загрузить следующую программу в микроконтроллер.

#include "DHT.h"
#define DHTPIN 2 // Тот самый номер пина, о котором упоминалось выше
// Одна из следующих строк закомментирована. Снимите комментарий, если подключаете датчик DHT11 к arduino
DHT dht(DHTPIN, DHT22); //Инициация датчика
//DHT dht(DHTPIN, DHT11);
void setup() {
  Serial.begin(9600);
  dht.begin();
}
void loop() {
  delay(2000); // 2 секунды задержки
  float h = dht.readHumidity(); //Измеряем влажность
  float t = dht.readTemperature(); //Измеряем температуру
  if (isnan(h) || isnan(t)) {  // Проверка. Если не удается считать показания, выводится «Ошибка считывания», и программа завершает работу
    Serial.println("Ошибка считывания");
    return;
  }
  Serial.print("Влажность: ");
  Serial.print(h);
  Serial.print(" %\t");
  Serial.print("Температура: ");
  Serial.print(t);
  Serial.println(" *C "); //Вывод показателей на экран
}

Далее необходимо открыть монитор порта, туда будут выводиться данные о влажности и температуре. Если аккуратно подышать на датчик, то можно заметить, как увеличится значение влажности.