Самодельный датчик температуры и влажности DHT11 и DHT22 — подключение к Arduino

Продолжаются уроки для тех людей, которые начинают работать с Arduino. В этой статье будет показана процедура подсоединения датчиков температуры DHT11 и влажности DHT22.

Эти два датчика имеют не высокую производительность, но зато имеют довольно простую конструкцию. Такие недорогие механизмы прекрасно подходят для занятия. Они состоят из двух элементов – сенсоров влажности и температуры. Они оснащены специальным чипом, который предназначен для аналогово-цифрового преобразования, а также  трансляции сигнала, считываемого с помощью контроллера.

Какие компоненты необходимые для  изготовления модели?

Чтобы собрать конструкцию, которая представлена в данной статье, необходимы такие детали:

  • плата Arduino;
  • сенсоры температуры DHT11 и влажности DHT22, которые можно приобрести на aliexpress;
  • Breadboard;
  • Резистор;
  • Arduino IDE (скачать ее можно перейдя по ссылке).
Самодельный датчик температуры и влажности DHT11 и DHT22 - подключение к Arduino

датчик температуры и влажности DHT11 и DHT22

Отличия между DHT11 и DHT22

 

Эти два сенсора аналогичны. Несмотря на то, что они имеют одинаковую распиновку,  их показатели существенно отличаются.

 

Особенности DHT11:

 

  • измерение показателей влажности в диапазоне от 20 до 80 %;
  • измерение температуры в диапазоне от 0°С до +50°С;
  • частота измерений составляет 1 раз в секунду.

 

Особенности DHT22:
  • измерение показателей влажности в диапазоне от 0 до 100 %;
  • измерение температуры в диапазоне от -40°С до +125°С;
  • частота измерения составляет 1 раз в 2 секунды.

Сравнив эти особенности, можно сделать вывод, что сенсор DHT22 является лучшим, и соответственно стоит намного больше. Снятие показаний больше одного раза не требуется.

Как подключить  Arduino

Так как оба сенсора имеют стандартные выводы: питание, вывод данных и GND. Еще один вывод не употребляется. Их можно легко соединить с breadboard. Между питанием и выводом данных необходимо разместить резистор. Датчики сенсоров могут продаваться в виде готового устройства. При таком условии, выводы присоединяются без резистора, так как он уже установлен в плате.

Схема подключения сенсора с резистором выглядит так:

Самодельный датчик температуры и влажности DHT11 и DHT22 - подключение к Arduino

Схема подключения

Скетч для программы Arduino

Для начала следует загрузить библиотеку DHT h, которая разработана для DHT. После скачивания папки библиотеки, ее необходимо скопировать в libraries. Готовая программа, работающая с DHT22 представлена ниже:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include "DHT.h"
#define DHTPIN 2 // номер пина, к которому подсоединен датчик
// Раскомментируйте в соответствии с используемым датчиком
// Инициируем датчик
DHT dht(DHTPIN, DHT22);
//DHT dht(DHTPIN, DHT11);
void setup() {
Serial.begin(9600);
dht.begin();
}
void loop() {
// Задержка 2 секунды между измерениями
delay(2000);
//Считываем влажность
float h = dht.readHumidity();
// Считываем температуру
float t = dht.readTemperature();
// Проверка удачно прошло ли считывание.
if (isnan(h) || isnan(t)) {
Serial.println("Не удается считать показания");
return;
}
Serial.print("Влажность: "+h+" %\t"+"Температура: "+t+" *C ");
}

Если будет использоваться сенсор DHT11, то нужно закомментировать строку:

1
DHT dht(DHTPIN, DHT22);

А также раскоментировать:

1
//DHT dht(DHTPIN, DHT11);


Далее, следует загрузить скетч в контролер и проверить правильность выполненной процедуры. Для этого следует зайти в пункт «Монитор порта»:

Самодельный датчик температуры и влажности DHT11 и DHT22 - подключение к Arduino

Монитор порта

После этого на экране появятся показания температуры и влажности. Чтобы изменить значение, например влажности, нужно выдохнуть на датчик воздух.

Прикрепленные файлы: Программный код и библиотека DHTh

 

Автор: Константин Иванович. Москва.

 


 

Загрузка...

Похожее ...

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

десять + 10 =