Оглавление:

Камера заднего вида для электрической инвалидной коляски: 10 шагов (с изображениями)
Камера заднего вида для электрической инвалидной коляски: 10 шагов (с изображениями)

Видео: Камера заднего вида для электрической инвалидной коляски: 10 шагов (с изображениями)

Видео: Камера заднего вида для электрической инвалидной коляски: 10 шагов (с изображениями)
Видео: БОКОВУШЕЧКА У ТУАЛЕТА в плацкарте 2024, Июль
Anonim
Image
Image
Необходимые детали
Необходимые детали

Мой брат использует электрическое кресло-коляску Invacare TDX, которое легко маневрирует во всех направлениях, но из-за ограниченной видимости сзади трудно ехать задом в ограниченном пространстве. Цель проекта - создать камеру заднего вида с использованием IP-потоковой передачи на мобильный телефон, который установлен рядом с его рулевым джойстиком.

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

  • электроснабжение и распределение с использованием энергии инвалидных колясок
  • камера заднего вида и видеостример
  • держатель мобильного телефона для панели управления.

Питание осуществляется от самого кресла-коляски, в котором используются свинцовые батареи на 24 В. Порт зарядки неправильно используется для подключения преобразователя питания к USB, который питает Raspberry, отвечающую за потоковую передачу, а также при необходимости питает мобильный телефон.

Стриминг осуществляется с помощью Raspberry Pi Zero W, который служит точкой беспроводного доступа и передает видео на любое устройство, подключенное к беспроводной сети.

Мобильный телефон для отображения изображения крепится с помощью распечатанного на 3D-принтере адаптера к блоку управления креслом-коляской.

Чтобы следовать этому проекту, вам потребуются некоторые базовые знания Debian / Linux, так как настройка требует некоторой ручной работы. Однако это не слишком сложно, так что попробуйте - если вы не уверены, есть сотни руководств по Linux, которые могут вам помочь.

Шаг 1: Необходимые детали

Raspberry Pi Zero W: основной компонент для потокового видео

Широкоугольные объективы «Рыбий глаз» SainSmart для Raspberry Pi: широкоугольная камера, совместимая с камерой Arduino (угол обзора 170 °)

2 × пластиковых корпуса: один корпус меньшего размера для малины и камеры, один корпус большего размера для распределения питания

Штекер XLR: для подключения к зарядному порту инвалидной коляски.

Автомобильный USB-порт (например, TurnRaise 12-24V 3.1A): преобразователь 24 В в USB в небольшом корпусе для использования в автомобиле и мотоцикле. Это может быть что угодно, использующее вход 24 В и обеспечивающее выход USB.

Различные кабели:

  • Кабель питания для прокладки кабеля от порта XLR к задней части инвалидной коляски,
  • USB-кабель для питания Raspberry

Напечатанный на 3D-принтере адаптер для телефона. Напечатанный на 3D-принтере адаптер для блока управления креслом-коляской, который служит базой для стандартного автомобильного держателя мобильного телефона:

Держатель мобильного телефона в автомобиле: держатель мобильного телефона, который можно прикрепить к плоской поверхности (например, держатель телефона на приборной панели). Я использовал один от немецкого производителя Hama.

Шаг 2: Настройка камеры Raspberry

Настройка камеры Raspberry
Настройка камеры Raspberry

Установите Raspbian с https://www.raspberrypi.org/downloads/raspbian/, следуя инструкциям с

Установите все обновления, выполнив следующие две команды из терминала:

sudo apt-get update

sudo apt-get dist-upgrade

Выключаемся, подключаем камеру. Снова запустить малину.

В панели Raspberry Setup включите камеру и включите SSH-доступ к Raspberry. Камера sainsmart работает как официальная камера Pi, вы можете следовать инструкциям, приведенным здесь: https://www.raspberrypi.org/learning/addons-guide … К сожалению, вы еще не закончили. Нам нужен драйвер v4l для raspi-cam, который не включен из коробки. Сначала вы должны обновить прошивку вашего raspberry, чтобы получить последнюю версию прошивки и драйвера ядра - запустите в терминале следующее:

sudo raspi-update

Теперь вам нужно загрузить драйвер ядра v4l, набрав в терминале:

sudo modprobe bcm2835-v4l2

Если это сработало без сообщений об ошибках, теперь у вас должно быть устройство / dev / video0, проверьте с помощью

ls - l / dev / vid *

Если это сработало, добавьте bcm2835-v4l2 в / etc / modules для включения модуля при каждом запуске.

Проверить, что камера работает, можно командой:

raspistill -o cam.jpg

Шаг 3. Установите V4l2rtspserver

Установить V4l2rtspserver
Установить V4l2rtspserver

Для начала вам необходимо установить cmake, так как мы сами скомпилируем программу стриминга видео:

sudo apt-get install cmake

Для потоковой передачи мы используем v4l2rtspserver, так как он показал самую низкую задержку в наших испытаниях. Вы можете получить код с

Установите его с помощью:

git clone

cd h264v4l2rtspserver

cmake.

сделать установку

Все должно завершиться без ошибок, и теперь вы можете протестировать это, запустив потоковый сервер с терминала:

v4l2rtspserver -W 352 -H 288 -F 10 / dev / video0

Подключитесь с помощью VLC на компьютере в той же сети к raspberry: rtsp: //: 8554 / unicast, чтобы проверить, работает ли потоковая передача.

Создайте скрипт под названием launcher.sh в вашем домашнем каталоге, используя ваш любимый редактор (это должен быть vi):

! # / bin / bashsleep 20 v4l2rtspserver -W 352 -H 288 -F 10 / dev / video0

Команда сна необходима для готовности видеодрайвера. Вероятно, можно установить менее 20 секунд….

Добавьте этот скрипт в свой crontab с помощью «crontab -e» и добавьте:

@reboot sh /home/pi/bbt/launcher.sh> / home / pi / logs / cronlog 2> & 1

Это должно автоматически запускать потоковую передачу при каждом запуске.

Альтернативы стримингу:

Есть несколько альтернатив для потокового видео, я пробовал motion и vlc. Движение - это инструмент веб-камеры, который обнаруживает движение, поэтому он выполняет дополнительный анализ изображений и, вероятно, немного медленнее, чем просто потоковая передача.

VLC работает "из коробки" без дополнительных компиляций:

cvlc v4l2: /// dev / video0 --v4l2-width 320 --v4l2-height 200 --v4l2-chroma h264 --sout '#standard {access = http, mux = ts, dst = 0.0.0.0: 12345} '

Эта команда передает видео в формате h264 через http на порт 12345. Задержка в нашей тестовой настройке составляет примерно 2 секунды.

Шаг 4. Настройте Raspberry в качестве точки доступа Wi-Fi: Часть 1 - Hostapd

Настройка Raspberry в качестве точки доступа WiFi: часть 1 - Hostapd
Настройка Raspberry в качестве точки доступа WiFi: часть 1 - Hostapd

На этом шаге Raspberry устанавливается в качестве точки доступа. После этого вы больше не подключены к своей сети, но Raspberry открывает свою собственную сеть Wi-Fi. В случае ошибок вам необходимо иметь доступ к Raspberry с клавиатурой и дисплеем, поэтому сделайте это, прежде чем закопать малину в какое-нибудь жилище…

Я следую описанному здесь методу:

Установите hostapd и dnsmasq:

sudo apt-get install dnsmasq hostapd

Отключите dhcp на интерфейсе wlan0, добавив следующую строку в /etc/dhcpd.conf (желательно вверху)

denyinterfaces wlan0

Настройте статический IP-адрес для интерфейса wlan0, отредактировав / etc / network / interfaces, включив в него следующее:

allow-hotplug wlan0 iface wlan0 inet статический адрес 172.24.1.1 сетевая маска 255.255.255.0 сеть 172.24.1.0 широковещательная передача 172.24.1.255

Перезапустите демон dhcp с помощью sudo service dhcpcd restart, а затем перезагрузите конфигурацию wlan0 с помощью

sudo ifdown wlan0; sudo ifup wlan0

Сохраните прикрепленный hostapd.conf в /etc/hostapd/hostapd.conf (после того, как вы проверили содержимое и адаптировали его по своему вкусу - вы должны, по крайней мере, изменить SSID и кодовую фразу на что-то более безопасное).

Теперь вы можете проверить, работает ли он, запустив:

sudo / usr / sbin / hostapd /etc/hostapd/hostapd.conf

Вы сможете подключиться к новой сети, но пока не получите IP-адрес. Остановите hostapd, нажав CTRL-C. Включите автоматический запуск hostapd, отредактировав / etc / default / hostapd и добавив расположение файла конфигурации, изменив соответствующую строку на

DAEMON_CONF = "/ etc / hostapd / hostapd.conf"

Шаг 5: Настройте Raspberry в качестве точки доступа Wi-Fi: Часть 2 - Dnsmasq

Настройка Raspberry в качестве точки доступа WiFi: часть 2 - Dnsmasq
Настройка Raspberry в качестве точки доступа WiFi: часть 2 - Dnsmasq

Переместите предоставленную конфигурацию dnsmasq в файл резервной копии (поскольку он содержит много комментариев, вы все равно можете использовать его для справки):

sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.orig

Затем создайте новый /etc/dnsmasq.conf со следующим содержимым:

server = 8.8.8.8 # Перенаправлять DNS-запросы в домен Google DNS, необходимый # Не перенаправлять короткие имена bogus-priv # Никогда не перенаправлять адреса в немаршрутизируемых адресных пространствах. dhcp-range = 172.24.1.50, 172.24.1.150, 12h # Назначьте IP-адреса между 172.24.1.50 и 172.24.1.150 с 12-часовым сроком аренды

Привязка службы dnsmasq к определенному адресу приводит к некоторым проблемам в нашей установке, поэтому мы просто позволяем ей работать на всех интерфейсах. Поскольку у raspberry Pi Zero W есть только Wi-Fi, это не проблема, если вы не подключите интерфейс USB Ethernet … (в этом случае у вас также будет сервер DHCP на этом интерфейсе, поэтому это может испортить сеть, к которой вы подключаетесь с помощью кабеля).

Вам не нужно делать никаких дополнительных действий для запуска dnsmasq при запуске, он запускается автоматически. Однако вы должны протестировать все, прежде чем выполнять перезагрузку, запустив обе службы вручную и убедитесь, что вы можете подключиться к Wi-Fi и получить IP-адрес (вы также можете сообщить своему мобильному телефону, что у этого Wi-Fi нет Интернета и что это нормально):

sudo service hostapd start sudo service dnsmasq start

Шаг 6: проверьте программное обеспечение

Проверить программное обеспечение
Проверить программное обеспечение

Теперь, когда вы все настроили, пора выполнить короткую проверку (прежде чем все станет более труднодоступным). Перезагружаем малину.

Подключитесь к WiFi, если малина с вашего мобильного телефона. Подключите потокового видео клиента (например, VLC, который существует для всех операционных систем) к потоку малины, выбрав «Сетевой поток» и подключившись к rtsp: //: 8554 / unicast (это IP-адрес вашего устройства, если вы этого не сделали поменять это 172.24.1.1).

Теперь вы должны увидеть живое видео с камеры… (У меня были некоторые проблемы с VLC для Android, но VLC для iOS работал без сбоев - я не исследовал версию для Android, так как мой брат использует iOS).

Шаг 7: Изготовление блока питания

Изготовление блока питания
Изготовление блока питания
Изготовление блока питания
Изготовление блока питания
Изготовление блока питания
Изготовление блока питания

В системе управления invacare используется то, что кажется стандартом для инвалидных колясок с электроприводом. Разъем представляет собой стандартный разъем XLR, используемый для микрофонов. Контакт 1 положительный, контакт 2 отрицательный. У Invacare есть два дополнительных контакта для связи, но мы не собираемся возиться с ними …

Подключите разъем XLR к адаптеру питания USB и поместите все в коробку. Чтобы подвести кабель к коробке, хорошей идеей будет сквозной ввод. Убедитесь, что кабель достаточно длинный, чтобы его можно было проложить от модуля управления креслом-коляской к спинке, где вы будете прикреплять блок питания. Вы можете проложить кабели, следуя за кабелями модуля управления, чтобы они не попали в подвижную часть.

Шаг 8: создание коробки для камеры

Создание коробки для камеры
Создание коробки для камеры
Создание коробки для камеры
Создание коробки для камеры
Создание коробки для камеры
Создание коробки для камеры
Создание коробки для камеры
Создание коробки для камеры

Постройте коробку, которая подходит для Raspberry Pi и камеры. В коробке должно быть отверстие сбоку, чтобы пропустить кабель питания USB, и отверстие для камеры, достаточно большое, чтобы не загораживать обзор. Я установил камеру под углом примерно 45 °, чтобы она была направлена вниз, чтобы можно было видеть задние колеса инвалидной коляски. Я использовал стандартную пластиковую коробку, в которой вырезал несколько отверстий, но вы также можете распечатать на 3D-принтере более интересную версию (возможно, для версии 2).

Шаг 9: сделайте держатель для телефона

Сделайте держатель для телефона
Сделайте держатель для телефона
Сделайте держатель для телефона
Сделайте держатель для телефона
Сделайте держатель для телефона
Сделайте держатель для телефона

Чтобы прикрепить мобильный телефон к инвалидной коляске, я распечатал на 3D-принтере пластину адаптера, которую можно найти здесь: https://www.thingiverse.com/thing:2742683 (также прилагается файл STL). Он прикреплен к блоку управления креслом-коляской. На эту пластину можно наклеить любой автомобильный держатель для телефона, который можно купить по дешевке в любой момент.

Шаг 10: соберите все и попробуйте

Собери все и попробуй
Собери все и попробуй
Собери все и попробуй
Собери все и попробуй
Собери все и попробуй
Собери все и попробуй

А теперь пора все собрать:

Прикрепите блок камеры где-нибудь в задней части кресла-коляски, чтобы обзор не был затруднен, а камера была направлена назад. Прикрепите блок питания где-нибудь сзади, где он не будет мешать. Подключите кабель USB от Raspberry к блоку питания. Подключите блок питания с разъемом XLR к зарядному порту на блоке управления креслом-коляской. Теперь все должно запуститься.

Установите VLC на свой мобильный телефон (если вы еще этого не сделали…) и подключитесь к Raspberry через rtsp: //: 8554 / unicast

Теперь вы должны увидеть изображение с камеры на своем мобильном телефоне:-)

Установите держатель мобильного телефона на блок управления креслом-коляской и закрепите на нем телефон. Вот и все, готово!

Конкурс Raspberry Pi 2017
Конкурс Raspberry Pi 2017
Конкурс Raspberry Pi 2017
Конкурс Raspberry Pi 2017

Второй приз в конкурсе Raspberry Pi Contest 2017

Рекомендуемые: