В данной статье я хотел бы рассказать о недорогих цифровых датчиках температуры и влажности DHT11 и DHT22.
Данные датчики не отличаются высоким быстродействием и точностью, однако могут найти свое применение в радиолюбительских проектах из-за своей невысокой стоимости. Датчик DHT состоит из емкостного датчика влажности и термистора. Также, датчик содержит в себе простенький АЦП для преобразования аналоговых значений влажности и температуры.
Отличия DHT11 и DHT22
По цоколевке данные датчики идентичны, однако немного различаются характеристиками.
DHT11:
- Очень низкая стоимость
- Питание и I/O 3-5 В
- Определение влажности 20-80% с 5% точностью
- Определение температуры 0-50 град. с 2% точностью
- Частота опроса не более 1 Гц (не более раза в 1 сек.)
- Размеры 15.5мм x 12мм x 5.5мм
- 4 вывода с расстоянием между ножками 0.1′
DHT22:
- Низкая стоимость
- Питание и I/O 3-5 В
- Определение влажности 0-100% с 2-5% точностью
- Определение температуры -40 — 125 град. с точностью ±0.5 град.
- Частота опроса не более 0.5 Гц (не более раза в 2 сек.)
- Размеры 15.1мм x 25мм x 7.7мм
- 4 вывода с расстоянием между ножками 0.1′
Как видно, сенсор DHT22 имеет более лучшие характеристики. Однако оба датчика медлительны и вы не сможете считывать с них информацию чаще, чем раз в 1 или 2 сек.
Подключение
Датчики имеют стандартные выводы и поэтому легко становятся на макетную плату.
DHT имеет 4 вывода:
- Vcc (3-5V питание)
- Data out — Вывод данных
- Не используется
- Общий
При подключении к МК, вы можете между выводами Vcc и Data разместить подтягивающий pull-up резистор номиналом 10 кОм. Плата Arduino имеет встроенные pull-up, однако они очень слабенькие — порядка 100 кОм.
Рассмотрим подключение датчика к популярной сейчас плате Arduino. На рисунке ниже, показано подключение датчика к Arduino, выход с датчика подается на 2 pin платы, если нужно, в скетче поменяйте на какой-либо другой.
Скачать библиотеку для работы датчиков DHT с Arduino можно здесь. Там же и пример
Если вы будете использовать датчик DHT11, то закомментируйте данную строку:
//#define DHTTYPE DHT22 // DHT 22 (AM2302)
и расскоментируйте эту:
#define DHTTYPE DHT11 // DHT 11
Загрузите скетч в контроллер и проверьте правильность работы при помощи Serial Monitor:
Даташиты: DHT11, DHT22
Оцените статью!