Сборка и управление Pi-роботом с живой видеотрансляцией
Почему sPiRobot?
Во многих проектах я традиционно использовал Arduino, но для этой сборки Raspberry Pi выступает мозгом. Поэтому проект назван sPiRobot.
Список оборудования
- 1 × Raspberry Pi (любая модель с поддержкой USB-вебкамеры и Wi‑Fi)
- 1 × USB-вебкамера (напр., Logitech C920)
- 1 × USB Wi‑Fi донгл (USB‑2.0, 802.11b/g/n)
- 1 × 4 ГБ microSD (high‑speed UHS‑I)
- 1 × Micro‑USB или USB‑C кабель питания (минимум 2 А)
- 1 × 9 V батарея (для удаленной работы)
- 1 × H‑мост / L293D драйвер моторов
- 1 × HDMI/AV монитор (для начальной настройки)
- 1 × USB клавиатура + мышь (для начальной настройки)
Шаг 1: Подготовка Raspberry Pi
1. Прошейте последний Raspberry Pi OS (ранее Raspbian) на microSD. Следуйте официальному гайду: Installing Raspberry Pi OS.
2. Вставьте SD-карту, подключите HDMI монитор, клавиатуру, мышь, Wi‑Fi донгл. Подайте питание на Pi через USB-кабель (или надежный блок питания).
3. После загрузки рабочего стола откройте терминал.
Шаг 2: Установка базовых пакетов
Выполните команды для обновления системы и установки библиотек для видеопотока, веб-сервера и обработки изображений:
$ sudo apt-get update $ sudo apt-get install libv4l-dev libjpeg8-dev subversion imagemagick libapache2-mod-php5 php5 apache2 git
Шаг 3: Настройка стримера веб-камеры
Используем MJPG‑Streamer для передачи видеопотока по HTTP.
$ svn co https://svn.code.sf.net/p/mjpg-streamer/code/ MJPG-streamer $ cd MJPG-streamer/mjpg-streamer $ sudo make USE_LIBV4L2=true
Проверьте, что директория теперь содержит:
- mjpg_streamer (исполняемый)
- input_uvc.so
- output_http.so
Шаг 4: Получение кода проекта
Клонируйте репозиторий sPiRobot:
$ git clone https://github.com/sohil4932/sPiRobot
Создастся папка sPiRobot со всеми серверными скриптами.
Шаг 5: Развертывание файлов сервера
Скопируйте нужные файлы в корень документов Apache:
$ cd sPiRobot $ sudo cp backward.sh control.html forward.sh help_steuerkreuz.png index.html init.sh left.sh right.sh spirobot.php shutdown.sh stop.sh /var/www/
Чтобы веб-сервер мог управлять GPIO, предоставьте www-data суперпользовательские привилегии:
$ echo "www-data ALL=(ALL) NOPASSWD: ALL" | sudo tee -a /etc/sudoers
Шаг 6: Подключение Pi к Wi‑Fi и определение IP
Откройте Wi‑Fi‑Config (предустановлен в Raspbian), подключитесь к роутеру, затем выполните:
$ ifconfig
Поле inet addr под wlan0 — это локальный IP Pi — сохраните его для удаленного управления.
Завершение
С работающим Pi, запущенным сервером стриминга веб-камеры и развернутым веб-интерфейсом, теперь можно управлять роботом и видеть его камеру с любого устройства в той же сети (или через проброс портов для удаленного доступа).
Для детального walkthrough и советов по устранению неполадок обратитесь к оригинальному туториалу или README на GitHub.
Производственный процесс
- Учебник для начинающих по IoT: стриминг данных температуры с Raspberry Pi
- Мастерство управления датчиками и исполнительными механизмами на Raspberry Pi: акселерометр, сервопривод и потоко…
- Лучшие аксессуары для раскрытия полного потенциала Raspberry Pi
- Учебник по датчику света на Raspberry Pi: подключение фоторезистора и чтение уровня освещенности на Python
- Создание умного робота с Bridge Shield — интеграция Raspberry Pi и Arduino
- DIY робот в стиле Wall‑E на Raspberry Pi из коробки от CD
- Создание Bluetooth-робота на Raspberry Pi с аудио-обратной связью
- Создание интернет-управляемого видеostreaming-робота на Arduino и Raspberry Pi
- Создание веб-камер робота на Raspberry Pi — пошаговое руководство по видеопотоку
- Создание WiFi-робота на Raspberry Pi и Android-смартфоне