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 для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.