Підключення та використання датчика вологості та температури AM2301 з Arduino

Датчик 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: Пропонує вимірювання температури, вологості та тиску. Більш точний, але складніший у використанні.

Немає коментарів:

Дописати коментар