Tabla de contenido:
- Paso 1: Piezas necesarias
- Paso 2: Configuración de la cámara Raspberry
- Paso 3: Instale V4l2rtspserver
- Paso 4: Configure la frambuesa como un punto de acceso WiFi: Parte 1 - Hostapd
- Paso 5: Configure la frambuesa como un punto de acceso WiFi: Parte 2 - Dnsmasq
- Paso 6: Verifique el software
- Paso 7: hacer la fuente de alimentación
- Paso 8: construcción de la caja para la cámara
- Paso 9: haz el soporte para teléfono
- Paso 10: Reúna todo y pruébelo
Video: Cámara de visión trasera para silla de ruedas eléctrica: 10 pasos (con imágenes)
2025 Autor: John Day | [email protected]. Última modificación: 2025-01-13 06:57
Mi hermano usa una silla de ruedas eléctrica Invacare TDX, que es fácil de maniobrar en todas las direcciones, pero debido a la visibilidad limitada hacia atrás, es difícil conducir hacia atrás en espacios limitados. El objetivo del proyecto es construir una cámara de visión trasera usando transmisión IP a un teléfono móvil, que está montado cerca de su joystick.
Componentes necesarios:
- suministro de energía y distribución mediante la energía de las sillas de ruedas
- cámara de visión trasera y transmisor de video
- Soporte para teléfono móvil para el pad de control.
La propia silla de ruedas suministra energía, que utiliza baterías de plomo de 24 V. El puerto de carga se usa incorrectamente para conectar un convertidor de energía a USB, que alimenta a la Raspberry responsable de la transmisión y también alimenta el teléfono móvil si es necesario.
La transmisión se realiza mediante una Raspberry Pi Zero W, que sirve como punto de acceso inalámbrico y transmite el video a cualquier dispositivo conectado a la red inalámbrica.
El teléfono móvil para mostrar la imagen está montado con un adaptador impreso en 3D a la unidad de control de la silla de ruedas.
Para seguir este proyecto, necesitará algunos conocimientos básicos de Debian / Linux, ya que la configuración requiere algo de trabajo manual. Sin embargo, no es demasiado difícil, así que inténtalo; si no estás seguro, hay cientos de tutoriales sobre Linux que pueden ayudarte.
Paso 1: Piezas necesarias
Raspberry Pi Zero W: componente principal para la transmisión de video
Lentes de cámara gran angular con ojo de pez SainSmart para Raspberry Pi: cámara gran angular compatible con la cámara Arduino (170 ° FOV)
2 × carcasas de plástico: una carcasa más pequeña para la frambuesa y la cámara, una carcasa más grande para la distribución de energía
Enchufe XLR: para conectar al puerto de carga de la silla de ruedas
Puerto USB para automóvil (por ejemplo, TurnRaise 12-24V 3.1A): Un convertidor de 24V a USB en una carcasa pequeña para uso en automóviles y motocicletas. Puede ser cualquier cosa que use una entrada de 24 V y proporcione una salida USB.
Varios cables:
- Cable de alimentación para enrutar desde el puerto XLR hasta la parte trasera de la silla de ruedas,
- Cable USB para suministro de Raspberry
Adaptador impreso en 3D para teléfono Un adaptador impreso en 3D para la unidad de control de la silla de ruedas que sirve como base para un soporte de teléfono móvil estándar para automóvil:
Soporte para teléfono móvil para automóvil: un soporte para teléfono móvil que se puede fijar a una superficie plana (por ejemplo, un soporte para teléfono en el tablero). Usé uno de Hama, un fabricante alemán.
Paso 2: Configuración de la cámara Raspberry
Instale Raspbian desde https://www.raspberrypi.org/downloads/raspbian/ siguiendo las instrucciones de
Instale todas las actualizaciones ejecutando los siguientes dos comandos desde una terminal:
sudo apt-get update
sudo apt-get dist-upgrade
Apague, conecte la cámara. Vuelve a poner en marcha la frambuesa.
En el panel de configuración de la frambuesa, habilite la cámara y habilite el acceso SSH a la frambuesa. La cámara sainsmart funciona como la cámara Pi oficial, puede seguir las instrucciones que se encuentran aquí: https://www.raspberrypi.org/learning/addons-guide … Desafortunadamente, aún no ha terminado. Necesitamos un controlador v4l para raspi-cam, que no está habilitado de fábrica. Primero debe hacer una actualización de firmware de su frambuesa para obtener el último firmware y controlador de kernel; ejecute lo siguiente en una terminal:
sudo raspi-update
Debe cargar el controlador del kernel v4l ahora escribiendo en una terminal:
sudo modprobe bcm2835-v4l2
Si esto funcionó sin mensajes de error, ahora debería tener un dispositivo / dev / video0, verifique con
ls - l / dev / vid *
Si esto funcionó, agregue bcm2835-v4l2 a / etc / modules para habilitar el módulo en cada inicio.
Puedes comprobar que la cámara funciona con el comando:
raspistill -o cam.jpg
Paso 3: Instale V4l2rtspserver
Primero, debe instalar cmake, ya que nosotros mismos compilaremos el programa de transmisión de video:
sudo apt-get install cmake
Para la transmisión usamos v4l2rtspserver, ya que mostró la latencia más baja en nuestras pruebas. Puede obtener el código en
Instálelo con:
clon de git
cd h264v4l2rtspserver
cmake.
hacer la instalación
Todo debería terminar sin errores y puede probarlo ahora iniciando el servidor de transmisión desde una terminal:
v4l2rtspserver -W 352 -H 288 -F 10 / dev / video0
Conéctese con VLC en una computadora en la misma red a la frambuesa: rtsp: //: 8554 / unicast para verificar si la transmisión está funcionando.
Cree un script llamado launcher.sh en su directorio de inicio usando su editor favorito (que debería ser vi):
! # / bin / bashsleep 20 v4l2rtspserver -W 352 -H 288 -F 10 / dev / video0
El comando de suspensión es necesario para permitir que el controlador de video esté listo. Probablemente se puede configurar en menos de 20 segundos….
Agregue este script a su crontab con "crontab -e" y agregue:
@reboot sh /home/pi/bbt/launcher.sh> / home / pi / logs / cronlog 2> & 1
Esto debería iniciar la transmisión en cada inicio automáticamente.
Alternativas para la transmisión:
Hay un par de alternativas para usar para la transmisión de video, probé motion y vlc. Motion es una herramienta de cámara web que detecta movimiento, por lo que realiza un análisis de imagen adicional en las imágenes y probablemente sea un poco más lento que solo la transmisión.
VLC funciona desde el primer momento sin compilaciones adicionales:
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} '
Este comando transmite un video codificado en h264 a través de http en el puerto 12345. La latencia es de aproximadamente 2 segundos en nuestra configuración de prueba.
Paso 4: Configure la frambuesa como un punto de acceso WiFi: Parte 1 - Hostapd
Este paso configura su Raspberry como un punto de acceso. Después de esto, ya no está conectado a su red, pero la Raspberry abre su propia red WiFi. En caso de errores, debe tener acceso a la frambuesa con un teclado y una pantalla, así que hágalo antes de enterrar la frambuesa en una carcasa en algún lugar …
Estoy siguiendo el método descrito aquí:
Instale hostapd y dnsmasq:
sudo apt-get install dnsmasq hostapd
Deshabilite dhcp en la interfaz wlan0 agregando la siguiente línea a /etc/dhcpd.conf (preferiblemente en la parte superior)
denyinterfaces wlan0
Configure una IP estática para la interfaz wlan0 editando / etc / network / interfaces para incluir lo siguiente:
allow-hotplug wlan0 iface wlan0 inet dirección estática 172.24.1.1 máscara de red 255.255.255.0 red 172.24.1.0 difusión 172.24.1.255
Reinicie el demonio dhcp con el servicio sudo dhcpcd restartand luego vuelva a cargar la configuración wlan0 con
sudo ifdown wlan0; sudo ifup wlan0
Guarde el hostapd.conf adjunto en /etc/hostapd/hostapd.conf (una vez que haya comprobado el contenido y lo haya adaptado a sus gustos, al menos debería cambiar el SSID y la contraseña por algo más seguro).
Ahora puede verificar si funciona ejecutando:
sudo / usr / sbin / hostapd /etc/hostapd/hostapd.conf
Debería poder conectarse a la nueva red, pero aún no obtendrá una dirección IP. Detenga hostapd presionando CTRL-C. Habilite el inicio automático de hostapd editando / etc / default / hostapd y agregando la ubicación del archivo de configuración cambiando la línea correspondiente a
DAEMON_CONF = "/ etc / hostapd / hostapd.conf"
Paso 5: Configure la frambuesa como un punto de acceso WiFi: Parte 2 - Dnsmasq
Mueva la configuración de dnsmasq proporcionada a un archivo de respaldo (ya que contiene muchos comentarios, aún puede usarlo como referencia):
sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.orig
Luego cree un nuevo /etc/dnsmasq.conf con el siguiente contenido:
server = 8.8.8.8 # Reenviar solicitudes de DNS a Google DNS necesario para el dominio # No reenviar nombres cortos bogus-priv # Nunca reenviar direcciones en los espacios de direcciones no enrutados. dhcp-range = 172.24.1.50, 172.24.1.150, 12h # Asigne direcciones IP entre 172.24.1.50 y 172.24.1.150 con un tiempo de arrendamiento de 12 horas
Vincular el servicio dnsmasq a una dirección específica conlleva algunos problemas en nuestra instalación, por lo que simplemente lo dejamos que se ejecute en todas las interfaces. Como la raspberry Pi Zero W solo tiene WiFi, esto no es un problema a menos que conecte una interfaz USB Ethernet … (en este caso, también tendría un servidor DHCP en esta interfaz, por lo que esto podría estropear la red a la que se conecta con un cable).
No es necesario realizar ningún paso adicional para ejecutar dnsmasq al inicio, se inicia automáticamente. Sin embargo, debe probar todo antes de reiniciar iniciando ambos servicios manualmente y verificar que puede conectarse al WiFi y obtener una dirección IP (también puede decirle a su teléfono móvil que este WiFi no tiene Internet y que está bien):
sudo service hostapd start sudo service dnsmasq start
Paso 6: Verifique el software
Ahora que ha configurado todo, es el momento de hacer una pequeña comprobación (antes de que todo sea más difícil de acceder). Reinicia la frambuesa.
Conéctese al WiFi si la frambuesa con su teléfono móvil. Conecte un cliente de transmisión de video (por ejemplo, VLC que existe para todos los sistemas operativos) a la transmisión de la frambuesa seleccionando "Transmisión de red" y conectándose a rtsp: //: 8554 / unicast (es la IP de su dispositivo, si no cámbielo es 172.24.1.1).
Debería ver un video en vivo de la cámara ahora … (Tuve algunos problemas con VLC para Android, pero VLC para iOS funcionó sin problemas; no investigué más la versión de Android ya que mi hermano usa iOS).
Paso 7: hacer la fuente de alimentación
El control invacare utiliza lo que parece ser un estándar para sillas de ruedas eléctricas. El conector es un conector XLR estándar que se utiliza para micrófonos. El pin 1 es positivo, el pin 2 negativo. Invacare tiene dos pines adicionales para la comunicación, pero no vamos a perder el tiempo con estos …
Conecte el conector XLR al adaptador de corriente USB y coloque todo en una caja. Para alimentar el cable a la caja, un paso es una buena idea. Asegúrese de que el cable sea lo suficientemente largo para pasar del módulo de control de la silla de ruedas al respaldo donde conectará la caja de alimentación. Puede enrutar los cables siguiendo los cables del módulo de control para asegurarse de que no queden atrapados en ninguna parte de una parte móvil.
Paso 8: construcción de la caja para la cámara
Construye una caja que se ajuste a la frambuesa pi y a la cámara. La caja necesita un orificio en el costado para pasar el cable de alimentación USB y un orificio para la cámara que sea lo suficientemente grande como para no obstruir la vista. Monté la cámara en un ángulo de aproximadamente 45 ° para que apunte hacia abajo para poder ver las ruedas traseras de la silla de ruedas. Usé una caja de plástico estándar en la que hice algunos agujeros, pero también puedes imprimir en 3D una versión más elegante (tal vez para la Versión 2)
Paso 9: haz el soporte para teléfono
Para conectar el teléfono móvil a la silla de ruedas, imprimí en 3D una placa adaptadora que se puede encontrar aquí: https://www.thingiverse.com/thing:2742683 (el archivo STL también está adjunto). Se adjunta a la unidad de control de la silla de ruedas. En esta placa puede pegar cualquier soporte para teléfono de automóvil, que puede obtener por poco dinero en cualquier lugar.
Paso 10: Reúna todo y pruébelo
Ahora es el momento de montar todo:
Coloque la caja de la cámara en algún lugar de la parte trasera de la silla de ruedas donde la vista no esté obstruida y la cámara apunte hacia atrás. Coloque la caja de la fuente de alimentación en algún lugar de la parte posterior donde no estorbe. Conecte el cable USB de la Raspberry a la caja de alimentación. Conecte la caja de alimentación con el enchufe XLR al puerto de carga en la unidad de control de la silla de ruedas. Todo debería empezar ahora.
Instale VLC en su teléfono móvil (si aún no lo ha hecho …) y conéctese a la Raspberry a través de rtsp: //: 8554 / unicast
Ahora debería ver la imagen de la cámara en su teléfono móvil:-)
Coloque el soporte del teléfono móvil en la unidad de control de la silla de ruedas y asegure el teléfono. Y esto es todo, ¡ya está!
Segundo premio en el Concurso Raspberry Pi 2017