Модуль 5 — Датчики та модулі (курс для початківців)

Мета модуля: ознайомитися з популярними датчиками для Arduino, навчитися читати документацію, підключати та зчитувати показання з датчиків температури, освітленості та ультразвука. Створити проєкт «Розумна лампа».


Приклади датчиків

  • DHT11 — цифровий датчик температури та вологості. Передає дані по однопровідному протоколу. Простий у використанні, але не дуже точний (±2°C, ±5% вологості).
  • LDR (Light Dependent Resistor) — фоторезистор, змінює опір залежно від рівня освітленості. Використовується для вимірювання світла або автоматичного керування освітленням.
  • HC-SR04 — ультразвуковий далекомір. Вимірює відстань, випромінюючи ультразвук і вимірюючи час відбиття сигналу. Застосовується в робототехніці, системах паркування та охоронних пристроях.

Читання документації

Перед підключенням будь-якого модуля або датчика важливо вивчити документацію:

  • Параметри живлення (робоча напруга, споживаний струм).
  • Інтерфейс підключення (цифровий, аналоговий, I2C, SPI тощо).
  • Розпіновка (призначення кожного виводу).
  • Приклад коду з даташиту або бібліотеки.

Порада: шукайте «Datasheet + назва датчика» або використовуйте офіційні сторінки виробників.


Практика

Підключення DHT11 і зчитування температури

Що потрібно: Arduino Uno/Nano, датчик DHT11, резистор 10 кОм, бібліотека DHT.h.

Схема підключення:

  • VCC → +5V
  • GND → GND
  • DATA → пін 2 Arduino
#include "DHT.h"

#define DHTPIN 2
#define DHTTYPE DHT11

DHT dht(DHTPIN, DHTTYPE);

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

void loop() {
  float temp = dht.readTemperature();
  float hum = dht.readHumidity();

  if (isnan(temp) || isnan(hum)) {
    Serial.println("Помилка зчитування з датчика DHT11!");
    return;
  }

  Serial.print("Температура: ");
  Serial.print(temp);
  Serial.print(" *C  Вологість: ");
  Serial.print(hum);
  Serial.println(" %");
  delay(2000);
}

Підключення LDR і вимірювання освітленості

Що потрібно: Arduino Uno/Nano, LDR, резистор 10 кОм.

Схема підключення:

  • Один вивід LDR → +5V
  • Другий вивід LDR → A0 і через резистор 10 кОм на GND
const int ldrPin = A0;

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

void loop() {
  int lightValue = analogRead(ldrPin); // 0..1023
  Serial.print("Освітленість: ");
  Serial.println(lightValue);
  delay(500);
}

Проєкт: «Розумна лампа»

Завдання: вмикати світлодіод при низькій освітленості.

Що потрібно: Arduino Uno/Nano, LDR, резистор 10 кОм, світлодіод, резистор 220–330 Ом.

Схема підключення:

  • LDR — як у попередньому прикладі.
  • Світлодіод через резистор → пін 9 (PWM) і GND.
const int ldrPin = A0;
const int ledPin = 9;

void setup() {
  pinMode(ledPin, OUTPUT);
}

void loop() {
  int lightValue = analogRead(ldrPin);
  if (lightValue < 300) { // поріг затемнення
    analogWrite(ledPin, 255); // увімкнути на повну яскравість
  } else {
    analogWrite(ledPin, 0);   // вимкнути
  }
}

Типові помилки

  • Відсутність підтягувального резистора у LDR — показання будуть нестабільні.
  • Неправильна розпіновка DHT11 — дані не зчитуються.
  • Занадто високий поріг освітленості — лампа вмикається вдень.

Що далі

У наступному модулі ми навчимося підключати та використовувати дисплеї для виводу інформації з Arduino 


Контрольні запитання

  1. Які бувають типи датчиків і модулів для Arduino?
  2. Для чого потрібно читати документацію перед підключенням?
  3. Як підключити і зчитати дані з DHT11?
  4. Як використовувати LDR для вимірювання освітленості?
  5. Як працює проєкт «Розумна лампа»?

Авторський курс по Arduino для початківців. Використання матеріалів на комерційних сайтах допускається з вказанням джерела.

<< Проекти << Усі товари >> Статті, уроки >>

Написати відгук

Примітка: HTML размітка не підтримується! Використовуйте звичайтий текст.
    Погано           Добре
ESP32: Високоточні вимірювання сигналів за допомогою таймерів

ESP32: Високоточні вимірювання сигналів за допомогою таймерів

ESP32: Високоточні вимірювання сигналів за допомогою таймерів ESP32 оснащений потужними апаратним..

RFID NFC модуль PN532 — зчитувач міток 13.56 МГц для Arduino, ESP32, Raspberry Pi

RFID NFC модуль PN532 — зчитувач міток 13.56 МГц для Arduino, ESP32, Raspberry Pi

PN532 NFC модуль — це універсальний RFID/NFC зчитувач для роботи з безконтактними мітками, картками ..

279.07грн.

Сенсорні входи ESP32

Сенсорні входи ESP32

Привіт друзі! Тема статті: ESP32 сенсорні входиВи напевно вже чули, що у контролера ESP32 є апаратні..

Arduino Nano + розширювач пінів + керування двигуном актуатора

Arduino Nano + розширювач пінів + керування двигуном актуатора

Приклад реверсивного управління двигуном актуатора за допомогою драйвера L298N та розширювача в..

ATTINY85

ATTINY85

Плата контролера ATTINY85Живлення від USB 5ВЗовнішнє живлення 7-16В..

179.35грн.