Открыватель гаражных ворот на Raspberry Pi с живой видео-трансляцией — пошаговое руководство
Это руководство расширяет два базовых проекта — Raspberry Pi Garage Door Opener и PiMyLifeUp Raspberry Pi Webcam Server. Оно добавляет магнитный датчик статуса двери и отображает живую видео-поток прямо на странице управления.
Шаг 1: Завершение предварительных инструкций
Перед продолжением следуйте инструкциям в двух référencierten проектах. Это гарантирует, что ваш Pi настроен с GPIO-управляемым реле и сервером стриминга веб-камеры.
Шаг 2: Обновление стиля веб-страницы
Отредактируйте таблицу стилей в /var/www/css/style.css:
nano /var/www/css/style.css
Замените содержимое на фрагмент ниже, заменив YOUR_PI_IP на локальный адрес вашего Raspberry Pi:
html, body { margin: 0; padding: 0; background: #263238; background-image: url("https://YOUR_PI_IP:8081/videostream.cgi"); background-size: 980px 735px; background-repeat: no-repeat; text-align: left; }
div.awrap { position: fixed; height: 150px; left: 110px; top: 792px; width: 760px; text-align: left; }
a { display: inline-block; border-radius: 15px; border: 2px solid #263238; width: 760px; height: 150px; background: #B5B1B1; box-shadow: inset 0 0 10px #000; -webkit-tap-highlight-color: rgba(255,255,255,0); }
a:active { background: #263238; box-shadow: inset 0 0 50px #000; }
Шаг 3: Модификация главной страницы
Скорректируйте /var/www/index.php для включения кнопки, триггерящей реле гаража. (Вставьте свою PHP-логику здесь.)
Шаг 4: Создание скрипта сервиса реле
Создайте /etc/init.d/garagerelay со следующим содержимым:
#!/bin/bash
# /etc/init.d/garagerelay – Управление реле гаражных ворот
case "$1" in
start)
echo "Starting Relay"
# GPIO 0 управляет реле; 1 = выкл
/usr/local/bin/gpio write 0 1
/usr/local/bin/gpio mode 0 out
# GPIO 2 (BCM 27) считывает магнитный датчик с подтяжкой
/usr/local/bin/gpio mode 2 in
/usr/local/bin/gpio mode 2 up
;;
stop)
echo "Stopping GPIO"
;;
*)
echo "Usage: /etc/init.d/garagerelay {start|stop}"
exit 1
;;
esac
exit 0
Сделайте скрипт исполняемым и зарегистрируйте его для автозапуска:
sudo chmod 755 /etc/init.d/garagerelay
sudo update-rc.d garagerelay defaults
Шаг 5: Настройка Motion для автозапуска
Настройте сервис Motion:
sudo nano /etc/init.d/cam_motion
Вставьте следующее:
#!/bin/sh
# /etc/init.d/cam_motion – Запуск Motion для камеры Pi
case "$1" in
start)
echo "Starting Camera Motion"
nohup /home/pi/mmal/motion -n -c /home/pi/mmal/motion-mmalcam.conf &>/dev/null &
;;
stop)
echo "Stopping Camera Motion"
killall motion
;;
*)
echo "Usage: /etc/init.d/cam_motion {start|stop}"
exit 1
;;
esac
exit 0
Сделайте скрипт исполняемым и включите его при загрузке:
sudo chmod 755 /etc/init.d/cam_motion
sudo update-rc.d cam_motion defaults
sudo reboot
Итоговые замечания
После перезагрузки ваш Pi будет стримить живое видео с камеры, накладывать статус двери и предоставлять единственную кнопку, переключающую реле гаража. Для более глубокого устранения неполадок обратитесь к документации оригинального открывателя и руководства веб-камер-сервера.
Производственный процесс
- Как считывать температуру с DS18B20 на Raspberry Pi 2
- Измерение температуры на Raspberry Pi с датчиками Maxim 1-Wire и мостом DS2482 I2C
- Точный мониторинг температуры в серверной на Raspberry Pi
- Надёжный домашний мониторинг с Home Assistant на Raspberry Pi: движение, алермы и видеозахват
- Обнаружение молний с Raspberry Pi и AS3935: практическое руководство
- Создание headless сигнализации утечки воды на Raspberry Pi 2 с Adafruit T‑Cobbler Plus
- Создание монитора температуры ThingSpeak с Raspberry Pi и BrickPi
- Создайте автоматизированную аэропоническую систему с Raspberry Pi и датчиком влажности
- Перехват команд ИК-пульта на Raspberry Pi без LIRC: подход через Python UART
- Установка камеры Raspberry Pi в скворечнике — пошаговое руководство