Как использовать модуль DHT11 с Ардуино

В этом уроке мы с вами научимся использовать модуль температуры и влажности DHT11 вместе с микроконтроллером Arduino Uno.

Вы когда-нибудь хотели знать температуру и влажность вокруг себя? Если да, этот проект будет очень полезным для вас. Если нет, все равно это поможет вам глубже окунуться в микроконтроллеры и Ардуино. Но самое интересно в то, что вы сможете использовать эти знания во всем: от домашних автоматических систем до умных часов, домов и т.п.

Комплектующие

Детали, используемые в этом проекте ниже.

Аппаратные компоненты

  • Arduino Uno & Genuino Uno × 1
  • Датчик температуры и влажности DHT11 (3 контакта) × 1
  • Датчик температуры и влажности DHT11 (4 контакта) × 1
  • Датчик температуры DHT22 (вы можете использовать DHT11 с тремя контактами, DHT11 с 4 контактами или DHT22)  × 1
  • Макет (на выбор) × 1
  • Провода перемычки (на выбор) × 1

Программное обеспечение

Arduino IDE или веб-редактор Arduino, который вы найдете на официальном сайте arduino.cc.

Что такое влажность?

Влажность - это водяной пар вокруг вас, смешанный с воздухом. Она измеряется в процентах. Таким образом, если влажность составляет 60 процентов (что является средней влажностью), то 60 процентов воздуха вокруг вас - это водяной пар.

Если это 100%, то это означает, что датчик неисправен, датчик сломан или поврежден, Arduino разбился, Arduino не может получить никакого сигнала, в коде есть ошибка или вы находитесь под водой. Если это 0%, это означает все причины, перечисленные ранее, за исключением последнего, вы находитесь в космосе или находитесь в центре пустыни.

Схема соединения

Наш датчик такой:

Датчик DHT11 имеет 3 контакта, и он устанавливается на плату. Если у вас 4 контакта, вам необходимо эту схему соединения с датчиком:

Если ваш датчик такой же, как у нас, то просто проигнорируйте резистор.

Код проекта

Вы должны следовать этим шагам, чтобы заставить всё работать:

  1. Вам нужно добавить библиотеку модуля влажности и температуры в среду разработки Arduino.
  2. Загрузить код.
  3. Когда код загружен, открыть последовательный монитор и установить скорость передачи в бодах до 9600.
  4. Увидеть влажность и температуру.

Сначала по инструкции скачиваем и устанавливаем библиотеку для модуля, которую мы можем скачать с GitHub (подробнее о библиотеке DHT смотрите на нашем сайте здесь), после чего мы подключаем её в самом начале скетча.

#include <dht11.h>
#define DHT11PIN 4

dht11 DHT11;

void setup()
{
  Serial.begin(9600);
 
}

void loop()
{
  Serial.println();

  int chk = DHT11.read(DHT11PIN);

  Serial.print("Humidity (%): ");
  Serial.println((float)DHT11.humidity, 2);

  Serial.print("Temperature (C): ");
  Serial.println((float)DHT11.temperature, 2);

  delay(2000);

}

На этом наш урок в котором мы подключили модуль влажности и температуры DHT11 к Ардуино Уно завершен. Далее вы можете усложнять свои проекты, основываясь на полученных знаниях.

Ардуино+