Как подключить датчик SR505 к Arduino

Сегодня разберём популярный и невероятно полезный датчик — PIR SR505. Если вам нужно, чтобы устройство реагировало на появление человека (включение света, сигнализация, оживление робота), то этот маленький модуль — лучший выбор. Проще не бывает: он не измеряет расстояние, не вычисляет скорость. У него одна задача — безошибочно сообщить микроконтроллеру: «Движение есть!» или «Движения нет».

Модуль датчика SR505 характеристики, распиновка

Главные преимущества SR505 для учебы и прототипирования состоят в том, что не нужны сложные библиотеки. Датчик сам обрабатывает сигнал, выдавая для микроконтроллера чистый цифровой результат. Он прост в настройке — всего один потенциометр для регулировки времени задержки. У датчика PIR SR505 меньше ложных срабатываний от света или тепла по сравнению с аналогичными датчиками.

Датчик движения sr505 распиновка, характеристики
Датчик движения sr505 распиновка, характеристики

Распиновка модуля SR505:

  • GND (чёрный/синий провод) — земля
  • OUT (жёлтый/зелёный провод) — цифровой выход сигнала
  • VCC (красный провод) — питание

Характеристики датчика движения SR505 (datasheet)

  • Рабочее напряжение: 5V DC
  • Ток потребления: ~65 мкА
  • Выходной сигнал: Цифровой (HIGH/LOW)
  • Дальность обнаружения: до 3 метров
  • Угол обзора: ~120 градусов
  • Время задержки (Delay Time): ~5 — 200 секунд (регулируется)
  • Режим работы: «H» (Repeatable Trigger) — срабатывает повторно, пока движение в зоне есть
  • Габариты: 32×24 мм

Подключение датчика движения SR505 к Arduino

Для этого занятия потребуется:

  • Arduino Uno / Arduino Nano / Arduino Mega
  • модуль SR505
  • светодиод и резистор 220 Ом
  • макетная плата
  • провода «папа-мама», «папа-папа»
Подключение датчика SR505 к Arduino Uno
Подключение к Arduino Uno датчика движения SR505

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

  • SR505 → Arduino (GND)
  • SR505 (VIN) → Arduino (5V)
  • SR505 → Arduino (Цифровой пин 10)

Подключайте провода к Ардуино при отключенном питании. Это убережет и вас, и компоненты от случайных коротких замыканий. Загрузите простейший код (скетч) для проверки датчика в плату Arduino. Микроконтроллер будет считывать состояние датчика SR505 и выводить в монитор порта сообщение, а также зажигать встроенный светодиод (LED) на плате при обнаружении движения в зоне видимости датчика.

Скетч для подключения pir датчика SR505 к Ардуино

// пин, к которому подключен выход датчика SR505
const int pirPin = 10;
// встроенный светодиод на Arduino (пин 13)
const int ledPin = 13;

void setup() {
  // настраиваем последовательный порт для вывода в монитор
  Serial.begin(9600);
  // пин датчика как вход
  pinMode(pirPin, INPUT);
  // пин светодиода как выход
  pinMode(ledPin, OUTPUT);
  
  Serial.println("Инициализация датчика движения SR505...");
  // дадим датчику 30 секунд на калибровку
  delay(30000);
  Serial.println("Система готова к работе!");
}

void loop() {
  // читаем цифровой сигнал с датчика
  int motionState = digitalRead(pirPin);
  
  if (motionState == HIGH) {
    digitalWrite(ledPin, HIGH); // включаем светодиод
    Serial.println("ДВИЖЕНИЕ ОБНАРУЖЕНО!");
  } else {
    digitalWrite(ledPin, LOW);  // выключаем светодиод
    Serial.println("...тишина...");
  }
  // небольшая задержка для стабильности чтения
  delay(500);
}

Пояснения к коду:

  1. этот скетч выводит состояние датчика на монитор порта и управляет светодиодом

Настройка и решение проблем

  1. «Датчик срабатывает сам по себе»: Дайте ему время (30-60 сек) в неподвижной обстановке при запуске для калибровки. Отрегулируйте потенциометр на модуле в сторону «MIN» (меньшее время задержки и чувствительность).
  2. «Не реагирует на движение»: Проверьте пайку/контакты. Убедитесь, что вы смотрите в сторону линзы Френеля (полусфера). Поднесите руку прямо к датчику.
  3. «В мониторе порта ничего нет»: Проверьте, выбран ли в Arduino IDE правильный COM-порт и установлена ли скорость (Baud Rate) 9600.
  4. «Светодиод на датчике не мигает»: Проверьте питание (5V и GND). На некоторых моделях светодиод мигает при обнаружении.

Заключение. Не бойтесь экспериментировать. Каждая ошибка — это шаг к пониманию. Успехов в проектах! Если остались вопросы — пишите в комментариях.



Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.