Датчик AM2301 (раніше відомий як DHT21) — це чудовий пристрій для вимірювання температури та вологості в різноманітних проєктах. Він простий у підключенні, надійний і точний, що робить його ідеальним для початківців і досвідчених розробників.
У цій статті я поділюся своїм досвідом використання AM2301 з Arduino. Це не просто інструкція, а результат моїх власних експериментів і досліджень, які я вирішив зафіксувати для себе і, можливо, для вас.
Що нам знадобиться
- Arduino Uno або інша сумісна плата
- Датчик AM2301
- З'єднувальні дроти
- Резистор (необов'язково, для захисту лінії даних)
- Комп'ютер з програмним забезпеченням Arduino IDE
Підключення датчика
Підключення AM2301 до Arduino дуже просте. Вам потрібно з'єднати наступні виводи:
- VCC датчика — до 3.3V або 5V на платі Arduino
- GND датчика — до GND на платі Arduino
- DATA датчика — до будь-якого цифрового виводу на платі Arduino (наприклад, вивід 2).
Рекомендація: Для кращого захисту лінії даних від перенапруги можна підключити резистор (наприклад, 4.7 кОм) між лінією даних і GND.
Приклад коду
Перш ніж писати код, нам потрібно завантажити бібліотеку DHT. В Arduino IDE зайдіть в Sketch -> Include Library -> Manage Libraries і знайдіть DHT sensor library. Встановіть її.
#include <DHT.h>
#define DHTPIN 2
#define DHTTYPE DHT21
DHT dht(DHTPIN, DHTTYPE);
void setup()
{
Serial.begin(9600);
dht.begin();
}
void loop()
{
delay(2000);
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(F("Вологість: "));
Serial.print(h);
Serial.print(" %
");
Serial.print(F("Температура: "));
Serial.print(t);
Serial.println(" *C
");
}
Цей код ініціалізує бібліотеку DHT, визначає вивід даних і починає зчитування даних з датчика. Він також перевіряє, чи були дані успішно прочитані, і виводить їх на послідовний порт.
Щоб запустити цей код, скопіюйте його в Arduino IDE, підключіть датчик до плати Arduino і завантажте код.
Спостереження та висновки
Під час моїх експериментів я звернув увагу на те, що датчик досить чутливий до змін навколишнього середовища. Він швидко реагує на зміни температури та вологості, що робить його ідеальним для моніторингу клімату в приміщеннях. Також, я виявив, що для отримання точних результатів важливо дочекатися стабілізації показань датчика після його підключення. Це може зайняти кілька хвилин.
У майбутньому я планую використовувати цей датчик у більш складних проєктах, наприклад, у системі автоматичного поливу рослин або у метеостанції для дому. Я також хочу дослідити можливість підключення датчика до хмарної платформи для віддаленого моніторингу клімату.
Альтернативи
- DHT11: Дешевша альтернатива AM2301, але менш точна.
- BME280: Пропонує вимірювання температури, вологості та тиску. Більш точний, але складніший у використанні.
Немає коментарів:
Дописати коментар