Датчик выполнен в пластиковом корпусе:
Существует похожий на него, но более дешевый датчик DHT11, он обладает большей погрешностью, влажность измеряется только до 80% (DHT22 - до 100%), а температура - в пределах от 0°C до 50°C, что делает невозможным его использование на улице в зимний период (DHT22 измеряет температуру в диапазоне от -40°C до +125°C). Поэтому мы будем рассматривать работу именно с DHT22.
Внешний вид DHT11:
Схема подключения датчика максимально простая: питание 5В и цифровой пин для снятия показаний. Для работы с датчиком удобнее всего использовать библиотеку DHT.
#include <Arduino.h>
#include <DHT.h>
#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)) {
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 можно тут, тут и тут.
Этот и другие датчики температуры можно найти в нашем каталоге.