Датчик температуры и влажности. Модуль KY-015 для Ардуино. Обзор
Модуль KY-015 для arduino является цифровым датчиком температуры и влажности – мини метеостанцией.
Так как этот датчик является цифровым, он работает!!! В отличии от аналоговых, которые надо калибровать при помощи бубна. Но и у него есть свои ограничения: измеряемая температура должна быть в диапазоне от 0 до 50 С, а влажность до 90%. Да и точность измерения +/- 2 C и + / – 5 %. И не каких долей градусов…
Подключение KY-015 к Ардуино
Подаём на центральный контакт питание 3.3 или 5 вольт, “S” это цифровой выход (pin 8), a “-” – земля (GND).
Пример скетча для arduino
int DHpin = 8;
byte dat [5];
byte read_data () {
byte data;
for (int i = 0; i < 8; i ++) {
if (digitalRead (DHpin) == LOW) {
while (digitalRead (DHpin) == LOW);
delayMicroseconds (30);
if (digitalRead (DHpin) == HIGH)
data |= (1 << (7-i));
while (digitalRead (DHpin) == HIGH);
}
}
return data;
}
void start_test () {
digitalWrite (DHpin, LOW);
delay (30);
digitalWrite (DHpin, HIGH);
delayMicroseconds (40);
pinMode (DHpin, INPUT);
while (digitalRead (DHpin) == HIGH);
delayMicroseconds (80);
if (digitalRead (DHpin) == LOW);
delayMicroseconds (80);
for (int i = 0; i < 4; i ++) // Получаем данные температуры и влажности
dat[i] = read_data ();
pinMode (DHpin, OUTPUT);
digitalWrite (DHpin, HIGH);
}
void setup () {
Serial.begin (9600);
pinMode (DHpin, OUTPUT);
}
void loop () {
start_test ();
Serial.print ("Vlazhnost = ");
Serial.print (dat [0], DEC); // Выводим влажность
Serial.print ('%');
Serial.print (" Temperatura = ");
Serial.print (dat [2], DEC); // Выводим температуру
Serial.println ('C');
delay (700);
}
Включив монитор порта, вы увидите текущую температуру и влажность.
Где купить
Модуль KY-015 для Ардуино:
http://ali.pub/1l4jpm
10 штук KY-015 для Ардуино:
http://ali.pub/1l4jl5
37 в 1 набор модулей для Ардуино:
http://ali.pub/1arpsm