Рубрики
Проекты на Raspberry Pi

Сигнализация с датчиком движения на Raspberry Pi

Системы безопасности в настоящее время являются неотъемлемой частью современного общества и количество их модификаций растет с каждым годом. В данной статье мы рассмотрим создание сигнализации на основе датчика движения и платы Raspberry Pi. Когда датчик будет обнаруживать присутствие человека в контролируемой зоне, плата Raspberry Pi будет включать зуммер. В качестве датчика движения будет использоваться инфракрасный пироэлектрический датчик (PIR датчик, PIR sensor), реагирующий на тепло, испускаемое человеческим телом.

Ранее на нашем сайте мы уже рассматривали применение PIR датчика совместно с платой Arduino и микроконтроллером AVR. Вместо PIR датчика для обнаружения движения можно также использовать доплеровский датчик движения RCWL-0516, возможно, кому то он подойдет лучше.

Необходимые компоненты

  1. Плата Raspberry Pi (купить на AliExpress).
  2. PIR датчик (купить на AliExpress).
  3. Зуммер (Buzzer) (купить на AliExpress).
  4. Макетная плата.
  5. Соединительные провода.

Принцип работы PIR датчика

PIR датчик (пироэлектрический инфракрасный датчик) является пассивным устройством, поскольку он только улавливает инфракрасное излучение и не испускает его. Он обнаруживает любое изменение «тепла» и когда он это обнаруживает, он устанавливает на своем выходном контакте напряжение высокого уровня (HIGH).

Каждый нагретый объект создает излучение в инфракрасном диапазоне и человеческое тело не является исключением из этого правила. PIR датчик способен обнаруживать малейшие изменения излучения в инфракрасном диапазоне. При этом он способен обнаруживать не только нагретые тела (человека, кошку, собаку и т.д.), но и движущиеся «холодные» (не нагретые) тела, поскольку в результате трения о воздух движущееся тело нагревается и тем самым создает изменение излучения в инфракрасном диапазоне, которое и улавливается PIR датчиком.

Основным компонентом PIR датчика является пироэлектрический датчик – прямоугольный кристалл, показанный на рисунке ниже. В собранной конструкции датчика он закрыт пластиковой крышкой. Также датчик содержит ряд резисторов, конденсаторов и других компонентов, необходимых для его функционирования.

Пироэлектрический датчик разделен на две половины. При отсутствии движения обе половины находятся в одинаковом состоянии, то есть каждая из них улавливает одинаковый уровень инфракрасного излучения. Как только кто-нибудь (что-нибудь) оказывается в поле действия одной из половин, уровень принимаемого ею инфракрасного излучения становится больше чем другой – PIR датчик реагирует на это и устанавливает на своем выходном контакте напряжение высокого уровня (high).

Пироэлектрический датчик накрыт пластиковой крышкой, содержащей массив линз Френеля, которые расположены таким образом, чтобы увеличиваться диапазон действия датчика. Более подробно про настройку PIR датчика можно прочитать в статье про его подключение к плате Arduino.

Схема проекта

Схема сигнализации с датчиком движения на Raspberry Pi представлена на следующем рисунке.

Как показано на схеме, PIR датчик запитывается от контакта 4 (5v) платы Raspberry Pi, его контакт земли подключен к земле платы (контакт 6), а выходной контакт датчика подключен к контакту GPIO 23 платы Raspberry Pi. Управляющий сигнал на зуммер будет подаваться с контакта GPIO 24 платы.

Объяснение программы для Raspberry Pi

Полный код программы приведен в конце статьи, здесь же мы кратко рассмотрим только его основной фрагмент.

Вначале мы в программе конфигурируем контакты 23 и 24 в качестве цифровых входа и выхода соответственно. Для формирования бесконечного цикла используется команда «while True». Далее мы проверяем состояние контакта GPIO 23 – если оно high, то мы подаем напряжение высокого уровня (high) на PIN 24, которое включает сигнал зуммера. Функция time.sleep(1) используется для формирования задержки длительностью 1 секунда.

Исходный код программы на Python

Видео, демонстрирующее работу сигнализации

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

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