Arduino

технологии

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

Датчик выполнен в пластиковом корпусе:

DHT22

Существует похожий на него, но более дешевый датчик DHT11, он обладает большей погрешностью, влажность измеряется только до 80% (DHT22 - до 100%), а температура - в пределах от 0°C до 50°C, что делает невозможным его использование на улице в зимний период (DHT22 измеряет температуру в диапазоне от -40°C до +125°C). Поэтому мы будем рассматривать работу именно с DHT22.

Внешний вид DHT11:

DHT11

Схема подключения датчика максимально простая: питание 5В и цифровой пин для снятия показаний. Для работы с датчиком удобнее всего использовать библиотеку DHT.

#include <Arduino.h>
#include 

#define DHTPIN 2 // цифровой пин, к которому подключен контакт данных датчика
#define DHTTYPE DHT22 // константа для быстро переключение типов датчиков, например, можно переопределить DHT11

DHT dht(DHTPIN, DHTTYPE); // инициализируем датчик

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

void loop()
{
  float h = dht.readHumidity(); // считываем влажность
  float t = dht.readTemperature(); // считываем температуру в градусах цельсия
  
  if (isnan(h) || isnan(t) || isnan(f)) {
    Serial.println(F("Failed to read from DHT sensor!"));
    return;
  }

  Serial.print("Humidity: ");
  Serial.println(h);
  Serial.print("Temperature: ");
  Serial.println(t);
}

Собственно ничего сложного. Купив такой датчик, а также научившись работать с Ethernet shield W5100, можно за пол часа собрать простую метеостанцию :)

Купить DTH22 можно тут, тут и тут.

Этот и другие датчики температуры можно найти в нашем каталоге.