Raspberry Pi + датчик движения HC-SR501 (PIR). Запись в базу данных и WEB отображения фактов движения

Приветствую вас на моем блоге! 🙂 Прежде мы уже осуществляли подключения данного датчика (HC-SR501) к Arduino. Сегодня речь пойдет о том, как реализовать подобное (и даже больше 😉 ) з Raspberry Pi.

PIR
Рисунок 1 – Внешний вид датчика HC-SR501

Данный датчик имеет 3 вывода: +5V (питание +), Ground (земля) и OUT (информационный).

Подключим датчик таким образом

pir_module_circuit_1

Нумерация GPIO пинов на Raspberry Pi

gpio

Ниже приведен Python-скрипт для Raspberry Pi, который будет считывать показания датчика движения и, при возникновении движения, отражать это на дисплее компьютера и включать красный светодиод Raspberry Pi (GPIO 8). Также факт движения будет записан в MySQL базу данных, а десять последних записей будут отображатся на странице php-скриптом. Важно! Можно использовать как внешний хостинг и базу данных, так и установить веб-сервер и сервер баз данных на самом Raspberry Pi. В БД необходимо создать таблицу с двумя полями (date с типом varchar(20) и поле datetime з типом datetime и сделать это поле первичным ключом). Наши записи будут сортироваться по дате таким образом, что php-скрипт будет извлекать 10 последних записей.

rpi2

Сверхважно! Python очень требователен к правильной табуляции! Будьте внимательны и не меняйте в коде программы расстоянии слева от кода (абзацы), иначе получите букет ошибок 😉

2014-12-26 19.53.44

Наберите в терминале команду
/usr/local/bin/motion.py
И скопируйте или наберите содержимое данного Python-скрипта

После внесения изменений сохраним файл (CTRL O + Enter) и закроем его (CTRL X).
Запускаем наш скрипт в терминале:
sudo python motion.py
Теперь, если все подключено правильно, мы увидим сообщение о факте движения в терминале:

rpi1

Плюс наш красный светодиод загорается на 5 секунд, а информация о том, что было зафиксировано движение и точное время пишется в БД. Остановить скрипт можно комбинацией CTRL X.

Теперь рассмотрим php-скрипт, который получает информацию о 10 последних фактов движения и отражает это все дело хорошенько на веб странице. Сам скрипт ЗДЕСЬ
Результат работы скрипта на рисунке

rpi3

Можно взглянуть ЗДЕСЬ
Вот, в принципе, вроде и все. Если что-то не понятно, спрашивайте 😉

3 комментария

    1. Есть такой проект, пока еще не залит на сайт. Правда там не USB камера, а родная на CSI разъеме. Датчик движения инициирует запись видео, которое по Wi-Fi сохраняется на сервере. Следите за новостями, вскоре опишем и этот проект 😉

  1. Могу скинуть вам исходники для пайтона) я написал скрипт по котором врубается дисплей и запускает определенное видео, после того как найдет силует человека или распознает лицо по этой же СSI камере))

Оставить ответ

Обязательные поля помечены*

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