DHT11 - цифровой датчик температуры и влажности
Не так давно, наткнулся на цифровой датчик влажности и температуры DHT11 (описание DHT11.pdf, DHT11_a.pdf). Когда то купил, да так и никуда и не пристроил. Решил проверить работу этого датчика. Подключил его к тестовой плате, подключил символьный дисплей. Передача данных выполняется по единственному проводу. Датчик имеет 4 вывода, но задействовано только 3. Схема подключения датчика:
Библиотеку нашел в интернете (скачать dht11.zip). Все заработало сразу, никаких проблем. Пример кода:
#include
#include <avr/io.h>
#include "lcd_lib.h"
#include "dht11.h"
char buffer[8];
int main( void )
{
// Инициализация LCD
LCDinit();
// Выключаем курсоор
LCDcursorOFF();
// Очищаем дисплей
LCDclr();
int8_t temperature = 0;
int8_t humidity = 0;
while(1) {
humidity = dht11_gethumidity();
temperature = dht11_gettemperature();
LCDGotoXY(0,0);
sprintf(buffer, "T=%02d", temperature);
LCDstring(buffer,4);
LCDGotoXY(0,1);
sprintf(buffer, "H=%02d", humidity);
LCDstring(buffer,4);
}
}
Что хочется сказать о датчике DHT11. У него есть одно преимущество - цена (около 1.5 евро в розницу). Все остальные характеристики, скажем, так, весьма скромные. Особенно огорчило то, что работает DHT11 только при положительных температурах 0-50 oС. Относительную влажность воздуха измеряет от 20% до 90%. При этом если быть полностью честным, то при температуре около нуля влажность измеряется в пределах 30%-90%, а при высоких температурах, около 50 oС, в пределах 20%-80%. При этом погрешность измерений температуры 2%, А погрешность измерения влажности 5%! При определенных навыках на глазок можно точнее определить :).
Исходя из характеристик датчика, его можно смело назвать комнатным. DHT11 подойдет разве что для контроля влажности в помещении. Напомню, что нормальная влажность в помещении считается в пределах 40–60 %. Судя по пределам измерения датчика DHT11, он как раз и создавался для решения этой задачи. Применять его в метеостанциях в качестве уличного датчика в наших широтах нельзя.
Скачать пример DHT11+Atmega8Успехов!
P.S. Позже, когда писал эту статью, увидел что на сайте, где покупал этот датчик, был архив с примерами для AVR, PIC, Arduino (Скачать 3732.zip).
Статьи по теме:
Недавні записи
- Text to speech. Українська мова
- LCD Display ST7567S (IIC)
- Розпізнавання мови (Speech recognition)
- Selenium
- Комп'ютерний зір (Computer Vision)
- Деякі думки про точність вимірювань в електроприводі
- Датчики Холла 120/60 градусів
- Модуль драйверів напівмосту IGBT транзисторів
- Драйвер IGBT транзисторів на A316J
- AS5600. Варіант встановлення на BLDC мотор
Tags
docker sensors rtc led timer wifi remap sms css websocket mongodb bme280 rfid bluetooth esp8266 nodemcu bkp piezo bmp280 i2c mpu-6050 encoder examples avr brushless ngnix nvic displays bldc java-script pmsm barometer pwm lcd ethernet stm32 raspberry-pi capture usart gpio exti atmega meteo solar smd dma adc eeprom eb-500 flask python ssd1306 uart options flash mpx4115a html gps st-link 3d-printer servo dc-dc foc git books battery hih-4000 watchdog dht11 web tim programmator ssd1331 mpu-9250 usb rs-232 motor max1674 soldering
Архіви