Table des matières:

Caméra de recul pour fauteuil roulant électrique : 10 étapes (avec photos)
Caméra de recul pour fauteuil roulant électrique : 10 étapes (avec photos)

Vidéo: Caméra de recul pour fauteuil roulant électrique : 10 étapes (avec photos)

Vidéo: Caméra de recul pour fauteuil roulant électrique : 10 étapes (avec photos)
Vidéo: Après l'A.V.C mon combat : je vous présente ma caméra et mon fauteuil roulant électrique 2024, Novembre
Anonim
Image
Image
Pièces nécessaires
Pièces nécessaires

Mon frère utilise un fauteuil roulant électrique Invacare TDX, qui est facile à manœuvrer dans toutes les directions, mais en raison de la visibilité limitée vers l'arrière, il est difficile de reculer dans des espaces limités. L'objectif du projet est de construire une caméra de recul utilisant le streaming IP vers un téléphone mobile, qui est monté à proximité de son joystick de direction.

Composants nécessaires:

  • alimentation électrique et distribution à l'aide de l'alimentation électrique des fauteuils roulants
  • caméra de recul et streamer vidéo
  • support de téléphone portable pour le clavier de commande.

L'alimentation est fournie par le fauteuil roulant lui-même, qui utilise des batteries au plomb 24V. Le port de charge est utilisé à mauvais escient pour brancher un convertisseur d'alimentation vers USB, qui alimente le Raspberry responsable du streaming et alimente également le téléphone mobile si nécessaire.

Le streaming est effectué par un Raspberry Pi Zero W, qui sert de point d'accès sans fil et diffuse la vidéo vers n'importe quel appareil connecté au réseau sans fil.

Le téléphone portable pour afficher l'image est monté avec un adaptateur imprimé en 3D sur l'unité de commande du fauteuil roulant.

Pour suivre ce projet, vous aurez besoin de connaissances de base sur Debian/Linux, car la configuration nécessite un travail manuel. Ce n'est cependant pas trop difficile, alors essayez-le - si vous n'êtes pas sûr, il existe des centaines de tutoriels sur Linux qui peuvent vous aider.

Étape 1: Pièces nécessaires

Raspberry Pi Zero W: composant principal pour le streaming vidéo

Objectifs de caméra grand angle SainSmart Fish-Eye pour Raspberry Pi: caméra grand angle compatible avec la caméra Arduino (170° FOV)

2 × Boîtiers en plastique: Un boîtier plus petit pour la framboise et la caméra, un boîtier plus grand pour la distribution électrique

Prise XLR: Pour se connecter au port de charge du fauteuil roulant

Port USB de voiture (par exemple TurnRaise 12-24V 3.1A): Un convertisseur 24V vers USB dans un petit boîtier pour une utilisation en voiture et en moto. Peut être tout ce qui utilise une entrée 24V et fournit une sortie USB.

Câbles divers:

  • Câble d'alimentation pour acheminer du port XLR à l'arrière du fauteuil roulant,
  • Câble USB pour alimenter Raspberry

Adaptateur imprimé en 3D pour téléphone Un adaptateur imprimé en 3D pour l'unité de commande du fauteuil roulant qui sert de base pour un support de téléphone portable de voiture standard:

Support de téléphone portable pour voiture: support de téléphone portable qui peut être fixé sur une surface plane (par exemple, un support de téléphone pour tableau de bord). J'en ai utilisé un de Hama, un fabricant allemand.

Étape 2: configuration de la caméra Raspberry

Configuration de la caméra Raspberry
Configuration de la caméra Raspberry

Installez Raspbian à partir de https://www.raspberrypi.org/downloads/raspbian/ en suivant les instructions de

Installez toutes les mises à jour en exécutant les deux commandes suivantes à partir d'un terminal:

sudo apt-get mise à jour

sudo apt-get dist-upgrade

Arrêtez, connectez la caméra. Redémarrez la framboise.

Dans le panneau Raspberry Setup, activez la caméra et activez l'accès SSH à la framboise. La caméra sainsmart fonctionne comme la caméra Pi officielle, vous pouvez suivre les instructions trouvées ici: https://www.raspberrypi.org/learning/addons-guide… Malheureusement, vous n'avez pas encore terminé. Nous avons besoin d'un pilote v4l pour la raspi-cam, qui n'est pas activé par défaut. Vous devez d'abord effectuer une mise à jour du micrologiciel de votre framboise pour obtenir le dernier micrologiciel et le dernier pilote du noyau - exécutez la commande suivante dans un terminal:

sudo raspi-mise à jour

Vous devez maintenant charger le pilote du noyau v4l en tapant dans un terminal:

sudo modprobe bcm2835-v4l2

Si cela a fonctionné sans messages d'erreur, vous devriez maintenant avoir un périphérique /dev/video0, vérifiez avec

ls - l /dev/vid*

Si cela a fonctionné, ajoutez bcm2835-v4l2 à /etc/modules pour activer le module à chaque démarrage.

Vous pouvez vérifier que la caméra fonctionne avec la commande:

raspistill -o cam.jpg

Étape 3: Installer le serveur V4l2rtsp

Installer le serveur V4l2rtsp
Installer le serveur V4l2rtsp

Tout d'abord, vous devez installer cmake, car nous compilerons nous-mêmes le programme de streaming vidéo:

sudo apt-get install cmake

Pour le streaming, nous utilisons v4l2rtspserver car il a montré la latence la plus faible dans nos essais. Vous pouvez obtenir le code sur

Installez-le avec:

git clone

cd h264v4l2rtspserver

cmake.

faire installer

Tout devrait se terminer sans erreur et vous pouvez le tester dès maintenant en démarrant le serveur de streaming depuis un terminal:

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

Connectez-vous avec VLC sur un ordinateur du même réseau au raspberry: rtsp://:8554/unicast pour vérifier si le streaming fonctionne.

Créez un script appelé launcher.sh dans votre répertoire personnel en utilisant votre éditeur préféré (qui devrait être vi):

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

La commande sleep est nécessaire pour permettre au pilote vidéo d'être prêt. Il peut probablement être réglé sur moins de 20 secondes….

Ajoutez ce script à votre crontab avec "crontab -e" et en ajoutant:

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

Cela devrait démarrer le streaming à chaque démarrage automatiquement.

Alternatives pour le streaming:

Il existe quelques alternatives à utiliser pour le streaming vidéo, j'ai essayé motion et vlc. Motion est un outil de webcam qui détecte le mouvement, il effectue donc une analyse d'image supplémentaire sur les images et est probablement un peu plus lent que le simple streaming.

VLC fonctionne sans aucune compilation supplémentaire:

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} '

Cette commande diffuse une vidéo codée en h264 via http sur le port 12345. La latence est d'environ 2 secondes dans notre configuration de test.

Étape 4: Configurer le Raspberry en tant que point d'accès WiFi: Partie 1 - Hostapd

Configurer le Raspberry en tant que point d'accès WiFi: Partie 1 - Hostapd
Configurer le Raspberry en tant que point d'accès WiFi: Partie 1 - Hostapd

Cette étape définit votre Raspberry comme point d'accès. Après cela, vous n'êtes plus connecté à votre réseau mais le Raspberry ouvre son propre réseau WiFi. En cas d'erreur, il faut avoir accès au Raspberry avec un clavier et un écran, donc faites-le avant d'enterrer le Raspberry dans un boîtier quelque part…

Je suis la méthode décrite ici:

Installez hostapd et dnsmasq:

sudo apt-get install dnsmasq hostapd

Désactivez dhcp sur l'interface wlan0 en ajoutant la ligne suivante dans /etc/dhcpd.conf (de préférence en haut)

denyinterfaces wlan0

Configurez une adresse IP statique pour l'interface wlan0 en modifiant /etc/network/interfaces pour inclure les éléments suivants:

allow-hotplug wlan0 iface wlan0 adresse statique inet 172.24.1.1 masque de réseau 255.255.255.0 réseau 172.24.1.0 diffusion 172.24.1.255

Redémarrez le démon dhcp avec sudo service dhcpcd restart, puis rechargez la configuration wlan0 avec

sudo ifdown wlan0; sudo ifup wlan0

Enregistrez le hostapd.conf joint sous /etc/hostapd/hostapd.conf (après avoir vérifié le contenu et l'avoir adapté à vos goûts - vous devriez au moins changer le SSID et la phrase de passe en quelque chose de plus sûr).

Vous pouvez maintenant vérifier si cela fonctionne en exécutant:

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

Vous devriez pouvoir vous connecter au nouveau réseau, mais vous n'obtiendrez pas encore d'adresse IP. Arrêtez hostapd en appuyant sur CTRL-C. Activez le démarrage automatique de hostapd en modifiant /etc/default/hostapd et en ajoutant l'emplacement du fichier de configuration en remplaçant la ligne correspondante par

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

Étape 5: Configurer le Raspberry en tant que point d'accès WiFi: Partie 2 - Dnsmasq

Configurer le Raspberry en tant que point d'accès WiFi: Partie 2 - Dnsmasq
Configurer le Raspberry en tant que point d'accès WiFi: Partie 2 - Dnsmasq

Déplacez la configuration dnsmasq fournie vers un fichier de sauvegarde (comme il contient de nombreux commentaires, vous pouvez toujours l'utiliser comme référence):

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

Créez ensuite un nouveau /etc/dnsmasq.conf avec le contenu suivant:

server=8.8.8.8 # Transférer les requêtes DNS au domaine DNS Google requis # Ne pas transférer les noms courts bogus-priv # Ne jamais transférer les adresses dans les espaces d'adressage non routés. dhcp-range=172.24.1.50, 172.24.1.150, 12h # Attribuer des adresses IP entre 172.24.1.50 et 172.24.1.150 avec une durée de bail de 12 heures

La liaison du service dnsmasq à une adresse spécifique entraîne des problèmes dans notre installation, nous le laissons donc s'exécuter sur toutes les interfaces. Comme le raspberry Pi Zero W n'a que le WiFi, ce n'est pas un problème à moins que vous ne connectiez une interface Ethernet USB… (dans ce cas, vous auriez également un serveur DHCP sur cette interface, cela pourrait donc perturber le réseau auquel vous vous connectez avec un câble).

Vous n'avez pas besoin de faire d'étapes supplémentaires pour exécuter dnsmasq au démarrage, il démarre automatiquement. Cependant, vous devez tout tester avant de redémarrer en démarrant les deux services manuellement et en vérifiant que vous pouvez vous connecter au WiFi et obtenir une adresse IP (vous pouvez également dire à votre téléphone portable que ce WiFi n'a pas Internet et que c'est bien):

service sudo hostapd démarrer service sudo dnsmasq démarrer

Étape 6: Vérifiez le logiciel

Vérifiez le logiciel
Vérifiez le logiciel

Maintenant que vous avez tout configuré, il est temps de faire une petite vérification (avant tout est plus difficile d'accès). Redémarrez la framboise.

Connectez-vous au WiFi si la framboise avec votre téléphone mobile. Connectez un client de streaming vidéo (par exemple VLC qui existe pour tous les systèmes d'exploitation) au flux de la framboise en sélectionnant "Network stream" et en vous connectant à rtsp://:8554/unicast (est l'IP de votre appareil, si vous ne l'avez pas fait changez-le c'est 172.24.1.1).

Vous devriez voir une vidéo en direct de la caméra maintenant… (J'ai eu quelques problèmes avec VLC pour Android, mais VLC pour iOS a fonctionné sans problème - je n'ai pas approfondi la version Android car mon frère utilise iOS).

Étape 7: fabrication de l'alimentation

Faire l'alimentation
Faire l'alimentation
Faire l'alimentation
Faire l'alimentation
Faire l'alimentation
Faire l'alimentation

Le contrôle invacare utilise ce qui semble être une norme pour les fauteuils roulants électriques. Le connecteur est un connecteur XLR standard utilisé pour les microphones. La broche 1 est positive, la broche 2 négative. Invacare a deux broches supplémentaires pour la communication, mais nous n'allons pas déranger avec celles-ci…

Connectez le connecteur XLR à l'adaptateur secteur USB et rangez le tout dans une boîte. Pour alimenter le câble jusqu'au boîtier, une traversée est une bonne idée. Assurez-vous que le câble est suffisamment long pour être acheminé du module de commande du fauteuil roulant au dossier où vous fixerez le boîtier d'alimentation. Vous pouvez acheminer les câbles en suivant les câbles du module de commande pour vous assurer qu'ils ne se coincent nulle part dans une pièce mobile.

Étape 8: Construire la boîte pour la caméra

Construire la boîte pour la caméra
Construire la boîte pour la caméra
Construire la boîte pour la caméra
Construire la boîte pour la caméra
Construire la boîte pour la caméra
Construire la boîte pour la caméra
Construire la boîte pour la caméra
Construire la boîte pour la caméra

Construisez une boîte qui s'adapte au raspberry pi et à l'appareil photo. La boîte a besoin d'un trou sur le côté pour faire passer le câble d'alimentation USB et d'un trou pour la caméra suffisamment grand pour ne pas obstruer la vue. J'ai monté la caméra à un angle d'environ 45° afin qu'elle pointe vers le bas pour pouvoir voir les roues arrière du fauteuil roulant. J'ai utilisé une boîte en plastique standard dans laquelle j'ai découpé des trous, mais vous pouvez également imprimer en 3D une version plus sophistiquée (peut-être pour la version 2)

Étape 9: Fabriquez le support de téléphone

Faire le support de téléphone
Faire le support de téléphone
Faire le support de téléphone
Faire le support de téléphone
Faire le support de téléphone
Faire le support de téléphone

Pour attacher le téléphone portable au fauteuil roulant, j'ai imprimé en 3D une plaque adaptatrice qui se trouve ici: https://www.thingverse.com/thing:2742683 (le fichier STL est également joint). Il est fixé à l'unité de commande du fauteuil roulant. Sur cette plaque, vous pouvez coller n'importe quel support de téléphone de voiture, que vous pouvez obtenir pour pas cher n'importe où.

Étape 10: Assemblez le tout et essayez-le

Assemblez le tout et essayez-le
Assemblez le tout et essayez-le
Assemblez le tout et essayez-le
Assemblez le tout et essayez-le
Assemblez le tout et essayez-le
Assemblez le tout et essayez-le

Il est maintenant temps de tout assembler:

Fixez le boîtier de la caméra quelque part à l'arrière du fauteuil roulant où la vue n'est pas obstruée et où la caméra est dirigée vers l'arrière. Fixez le boîtier d'alimentation quelque part à l'arrière où il ne gêne pas. Connectez le câble USB du Raspberry au boîtier d'alimentation. Connectez le boîtier d'alimentation avec la prise XLR au port de charge de l'unité de commande du fauteuil roulant. Tout devrait démarrer maintenant.

Installez VLC sur votre téléphone portable (si vous ne l'avez pas encore fait…) et connectez-vous au Raspberry via rtsp://:8554/unicast

Vous devriez maintenant voir l'image de la caméra sur votre téléphone portable:-)

Placez le support de téléphone portable sur l'unité de commande du fauteuil roulant et fixez le téléphone dessus. Et ça y est, vous avez terminé !

Concours Raspberry Pi 2017
Concours Raspberry Pi 2017
Concours Raspberry Pi 2017
Concours Raspberry Pi 2017

Deuxième prix du concours Raspberry Pi 2017

Conseillé: