Модуль 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. Рассмотрим работу с LCD 1602 и OLED, использование библиотек Arduino, а также создадим проект «Термометр с экраном».


Контрольные вопросы

  1. Какие бывают типы датчиков и модулей для Arduino?
  2. Для чего нужно читать документацию перед подключением?
  3. Как подключить и считать данные с DHT11?
  4. Как использовать LDR для измерения освещённости?
  5. Как работает проект «Умная лампа»?

Авторский курс по Arduino для начинающих. Использование материалов на коммерческих сайтах допускается с указанием источника.

<< Проекты << Все товары >> Статьи, уроки >>

Написать отзыв

Примечание: HTML разметка не поддерживается! Используйте обычный текст.
    Плохо           Хорошо
Клапан электромагнитный 24 В 100 мА

Клапан электромагнитный 24 В 100 мА

Электромагнитный клапан нормально закрытыйВнешний диаметр короткой трубки 6 ммВнешний диаметр боково..

190.56грн.

Контроль исполнения программы Arduino

Контроль исполнения программы Arduino

Контроль исполнения программы ArduinoДанная статья посвящена описанию структур, используемых для упр..

Цифро-знаковые жидкокристаллические индикаторы

Цифро-знаковые жидкокристаллические индикаторы

Жидкие кристаллы — это вещества, проявляющие в определенном температурном интервале свойства как жид..

Введение в таймеры ESP32: примеры использования и настройка

Введение в таймеры ESP32: примеры использования и настройка

Введение в таймеры ESP32 Микроконтроллер ESP32 оснащён мощными аппаратными таймерами, которые поз..

Стабилитроны: принцип работы, характеристики и применение в электронике

Стабилитроны: принцип работы, характеристики и применение в электронике

Стабилитрон: что это и как он работает Стабилитрон (англ. Zener diode) — это полупр..