Taula de continguts:

Càmera de visió posterior per a cadira de rodes elèctrica: 10 passos (amb imatges)
Càmera de visió posterior per a cadira de rodes elèctrica: 10 passos (amb imatges)

Vídeo: Càmera de visió posterior per a cadira de rodes elèctrica: 10 passos (amb imatges)

Vídeo: Càmera de visió posterior per a cadira de rodes elèctrica: 10 passos (amb imatges)
Vídeo: Somewhere Out There | Critical Role | Campaign 3, Episode 59 2024, De novembre
Anonim
Image
Image
Parts necessàries
Parts necessàries

El meu germà utilitza una cadira de rodes elèctrica Invacare TDX, que és fàcil de maniobrar en totes direccions, però a causa de la visibilitat limitada a la part posterior és difícil conduir cap enrere en espais limitats. L’objectiu del projecte és construir una càmera de visió posterior mitjançant streaming IP a un telèfon mòbil, que es munta a prop del seu joystick estelar.

Components necessaris:

  • alimentació i distribució d’energia mitjançant cadires de rodes
  • càmera de retrovisió i reproductor de vídeo
  • suport de telèfon mòbil per al coixinet.

L’alimentació la subministra la pròpia cadira de rodes, que utilitza piles de plom de 24 V. El port de càrrega s’utilitza malament per connectar un convertidor d’alimentació a USB, que alimenta el gerd responsable de la transmissió i també alimenta el telèfon mòbil si cal.

La transmissió es realitza mitjançant un Raspberry Pi Zero W, que serveix de punt d’accés sense fils i transmet el vídeo a qualsevol dispositiu connectat a la xarxa sense fils.

El telèfon mòbil per mostrar la imatge es munta amb un adaptador imprès en 3D a la unitat de control de la cadira de rodes.

Per seguir aquest projecte, necessitareu alguns coneixements bàsics de Debian / Linux, ja que la configuració requereix un treball manual. No obstant això, no és massa difícil, així que doneu-li una oportunitat; si no esteu segur, hi ha centenars de tutorials a Linux que us poden ajudar.

Pas 1: parts necessàries

Raspberry Pi Zero W: component principal per a la transmissió de vídeo

Objectius de càmera gran angular SainSmart per a Raspberry Pi: càmera gran angular compatible amb càmera Arduino (170 ° FOV)

2 × Carcasses de plàstic: una carcassa més petita per al gerd i la càmera, una carcassa més gran per a la distribució d’energia

Endoll XLR: per connectar-se al port de càrrega de la cadira de rodes

Port USB del cotxe (per exemple, TurnRaise 12-24V 3.1A): convertidor de 24V a USB en una carcassa petita per a ús de cotxes i motos. Pot ser qualsevol cosa que faci servir una entrada de 24 V i proporciona una sortida USB.

Cables diversos:

  • Cable d'alimentació per enrutar des del port XLR fins a la part posterior de la cadira de rodes,
  • Cable USB per subministrar Raspberry

Adaptador imprès en 3D per al telèfon Un adaptador imprès en 3D per a la unitat de control de cadira de rodes que serveix de base per a un suport de telèfon mòbil estàndard per a cotxes:

Suport per a telèfons mòbils per a cotxes: un suport per a telèfons mòbils que es pot fixar a una superfície plana (per exemple, un suport per a telèfon de tauler). He utilitzat un de Hama, un fabricant alemany.

Pas 2: Configuració de la càmera Raspberry

Configuració de la càmera Raspberry
Configuració de la càmera Raspberry

Instal·leu Raspbian des de https://www.raspberrypi.org/downloads/raspbian/ seguint les instruccions de

Instal·leu totes les actualitzacions executant les dues ordres següents des d'un terminal:

sudo apt-get update

sudo apt-get dist-upgrade

Apagueu, connecteu la càmera. Torneu a engegar el gerd.

Al tauler de configuració de gerds, activeu la càmera i activeu l'accés SSH al gerd. La càmera sainsmart funciona com la càmera Pi oficial. Podeu seguir les instruccions que es troben aquí: https://www.raspberrypi.org/learning/addons-guide … Malauradament encara no heu acabat. Necessitem un controlador v4l per a la raspi-cam, que no està habilitat fora de la caixa. Primer heu d’actualitzar el firmware del vostre raspberry per obtenir el controlador de nucli i firmware més recent: executeu el següent en un terminal:

sudo raspi-update

Heu de carregar el controlador del nucli v4l ara escrivint en un terminal:

sudo modprobe bcm2835-v4l2

Si funciona sense missatges d'error, ara hauríeu de tenir un dispositiu / dev / video0, consulteu-ho

ls - l / dev / vid *

Si funciona, afegiu bcm2835-v4l2 a / etc / modules per habilitar el mòdul a cada inici.

Podeu comprovar que la càmera funciona amb l'ordre:

raspistill -o cam.jpg

Pas 3: Instal·leu V4l2rtspserver

Instal·leu V4l2rtspserver
Instal·leu V4l2rtspserver

En primer lloc, heu d’instal·lar cmake, ja que nosaltres compilarem el programa de transmissió de vídeo nosaltres mateixos:

sudo apt-get install cmake

Per a la transmissió, fem servir v4l2rtspserver, ja que mostrava la latència més baixa en les nostres proves. Podeu obtenir el codi a

Instal·leu-lo amb:

git clone

cd h264v4l2rtspserver

cmake.

fer la instal·lació

Tot hauria d'acabar sense errors i podeu provar-ho ara iniciant el servidor de transmissió des d'un terminal:

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

Connecteu-vos amb VLC en un ordinador de la mateixa xarxa al raspberry: rtsp: //: 8554 / unicast per comprovar si la transmissió funciona.

Creeu un script anomenat launcher.sh al directori inicial mitjançant el vostre editor preferit (que hauria de ser vi):

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

Es necessita l'ordre sleep per permetre que el controlador de vídeo estigui a punt. Probablement es pot configurar a menys de 20 segons …

Afegiu aquest script al vostre crontab amb "crontab -e" i afegiu:

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

Això hauria d'iniciar la transmissió a cada inici automàticament.

Alternatives per a la transmissió:

Hi ha un parell d’alternatives per utilitzar per transmetre vídeo, he provat motion i vlc. El moviment és una eina de càmera web que detecta el moviment, de manera que realitza anàlisis d’imatges addicionals a les imatges i probablement sigui una mica més lent que la transmissió.

VLC funciona fora de la caixa sense cap recopilació addicional:

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

Aquesta ordre emet un vídeo codificat h264 mitjançant http al port 12345. La latència és aproximadament de 2 segons a la configuració de la nostra prova.

Pas 4: configureu el gerd com a punt d'accés WiFi: primera part: Hostapd

Configureu el gerd com a punt d’accés WiFi: primera part: Hostapd
Configureu el gerd com a punt d’accés WiFi: primera part: Hostapd

Aquest pas defineix el gerd com a punt d'accés. Després d'això, ja no esteu connectat a la vostra xarxa, però el gerd obre la seva pròpia xarxa WiFi. En cas d'errors, heu de tenir accés al gerd amb un teclat i una pantalla, així que feu-ho abans d'enterrar el gerd en un allotjament en algun lloc …

Segueixo el mètode descrit aquí:

Instal·leu hostapd i dnsmasq:

sudo apt-get install dnsmasq hostapd

Desactiveu dhcp a la interfície wlan0 afegint la següent línia a /etc/dhcpd.conf (preferiblement a la part superior)

denyinterfaces wlan0

Configureu una IP estàtica per a la interfície wlan0 editant / etc / network / interfaces per incloure el següent:

allow-hotplug wlan0 iface wlan0 inet adreça estàtica 172.24.1.1 netmask 255.255.255.0 network 172.24.1.0 broadcast 172.24.1.255

Reinicieu el dimoni dhcp amb el servei sudo dhcpcd reinicieu i torneu a carregar la configuració wlan0 amb

sudo ifdown wlan0; sudo ifup wlan0

Deseu el fitxer hostapd.conf adjunt a /etc/hostapd/hostapd.conf (després de comprovar el contingut i adaptar-lo al vostre gust, com a mínim hauríeu de canviar el SSID i la frase de contrasenya per alguna cosa més segura).

Ara podeu comprovar si funciona executant:

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

Hauríeu de poder connectar-vos a la nova xarxa, però encara no obtindreu una adreça IP. Atureu hostapd prement CTRL-C. Activeu l'inici automàtic de hostapd editant / etc / default / hostapd i afegint la ubicació del fitxer de configuració canviant la línia corresponent a

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

Pas 5: configureu el gerd com a punt d'accés WiFi: 2a part: Dnsmasq

Configureu el gerd com a punt d'accés WiFi: part 2: Dnsmasq
Configureu el gerd com a punt d'accés WiFi: part 2: Dnsmasq

Moveu la configuració dnsmasq proporcionada a un fitxer de còpia de seguretat (ja que conté molts comentaris, encara podeu utilitzar-lo com a referència):

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

A continuació, creeu un /etc/dnsmasq.conf nou amb el contingut següent:

server = 8.8.8.8 # Reenvia les sol·licituds de DNS a Google DNS necessàries per al domini # No reenvieu noms curts falsos-priv # No reenvieu mai les adreces als espais d'adreces no encaminats. dhcp-range = 172.24.1.50, 172.24.1.150, 12h # Assignar adreces IP entre 172.24.1.50 i 172.24.1.150 amb un temps de lloguer de 12 hores

Enllaçar el servei dnsmasq a una adreça específica comporta alguns problemes a la nostra instal·lació, de manera que només el deixem executar a totes les interfícies. Com que el raspberry Pi Zero W només té WiFi, això no suposa cap problema a menys que connecteu una interfície USB Ethernet … (en aquest cas, també tindríeu un servidor dhcp en aquesta interfície, de manera que això podria desordenar la xarxa a la qual us connecteu amb un cable).

No cal que feu cap pas addicional per executar dnsmasq a l'inici, s'inicia automàticament. Tot i això, heu de provar-ho tot abans de reiniciar els dos serveis manualment i comprovar que us podeu connectar al WiFi i obtenir una adreça IP (també podeu dir al vostre telèfon mòbil que aquest WiFi no té internet i que està bé):

sudo service hostapd start sudo service dnsmasq start

Pas 6: comproveu el programari

Comproveu el programari
Comproveu el programari

Ara que ho heu configurat tot, és hora de fer una breu comprovació (abans que tot sigui més difícil d’accedir). Reinicieu el gerd.

Connecteu-vos al WiFi si el raspberry amb el vostre telèfon mòbil. Connecteu un client de vídeo de transmissió (per exemple, VLC que existeix per a tots els sistemes operatius) al flux del raspberry seleccionant "Transmissió de xarxa" i connectant-vos a rtsp: //: 8554 / unicast (és la IP del vostre dispositiu, si no canvieu-lo és 172.24.1.1).

Ara hauríeu de veure algun vídeo en directe des de la càmera … (Tenia alguns problemes amb VLC per a Android, però VLC per a iOS funcionava sense problemes; no vaig investigar més la versió d'Android ja que el meu germà utilitza iOS).

Pas 7: fabricació de la font d'alimentació

Fabricació de la font d'alimentació
Fabricació de la font d'alimentació
Fabricació de la font d'alimentació
Fabricació de la font d'alimentació
Fabricació de la font d'alimentació
Fabricació de la font d'alimentació

El control invacare utilitza el que sembla ser un estàndard per a cadires de rodes amb motor. El connector és un connector XLR estàndard que s’utilitza per als micròfons. El pin 1 és positiu i el pin 2 negatiu. Invacare té dos pins addicionals per a la comunicació, però no ens en farem cap …

Connecteu el connector XLR a l'adaptador d'alimentació USB i col·loqueu-ho tot en una caixa. Per alimentar el cable a la caixa, és recomanable fer un avançament. Assegureu-vos que el cable sigui prou llarg per ser encaminat des del mòdul de control de la cadira de rodes fins al respatller posterior on connectareu la caixa de subministrament elèctric. Podeu enrutar els cables seguint els cables del mòdul de control per assegurar-vos que no queden atrapats enlloc en una part mòbil.

Pas 8: Construir el quadre per a la càmera

Construint la caixa per a la càmera
Construint la caixa per a la càmera
Construint la caixa per a la càmera
Construint la caixa per a la càmera
Construint la caixa per a la càmera
Construint la caixa per a la càmera
Construint la caixa per a la càmera
Construint la caixa per a la càmera

Construeix una caixa que s’adapti al raspberry pi i a la càmera. La caixa necessita un forat lateral per encaminar el cable d’alimentació USB i un forat per a la càmera prou gran com per no obstruir la vista. Vaig muntar la càmera en un angle aproximat de 45 ° de manera que apunti cap avall per poder veure les rodes posteriors de la cadira de rodes. He utilitzat una caixa de plàstic estàndard en què he tallat alguns forats, però també es pot imprimir en 3D una versió més elegant (potser per a la versió 2)

Pas 9: feu el suport del telèfon

Feu el suport del telèfon
Feu el suport del telèfon
Feu el suport del telèfon
Feu el suport del telèfon
Feu el suport del telèfon
Feu el suport del telèfon

Per connectar el telèfon mòbil a la cadira de rodes vaig imprimir en 3D una placa adaptadora que es pot trobar aquí: https://www.thingiverse.com/thing:2742683 (també s’adjunta el fitxer STL). Està connectat a la unitat de control de cadira de rodes. En aquest plat es pot enganxar qualsevol suport per a telèfons de cotxes, que es pot aconseguir per qualsevol preu econòmic.

Pas 10: muntar-ho tot i provar-ho

Muntar-ho tot i provar-ho
Muntar-ho tot i provar-ho
Muntar-ho tot i provar-ho
Muntar-ho tot i provar-ho
Muntar-ho tot i provar-ho
Muntar-ho tot i provar-ho

Ara és el moment de muntar-ho tot:

Col·loqueu la caixa de la càmera en algun lloc de la part posterior de la cadira de rodes on la vista no estigui obstruïda i la càmera estigui apuntant cap enrere. Connecteu la caixa de la font d'alimentació en algun lloc del darrere, on no s'interposi. Connecteu el cable USB del gerd a la caixa d’alimentació. Connecteu la caixa d’alimentació amb l’endoll XLR al port de càrrega de la unitat de control de la cadira de rodes. Tot hauria de començar ara.

Instal·leu VLC al vostre telèfon mòbil (si encara no ho heu fet …) i connecteu-vos al Raspberry mitjançant rtsp: //: 8554 / unicast

Ara hauríeu de veure la imatge de la càmera al telèfon mòbil:-)

Col·loqueu el suport del telèfon mòbil a la unitat de control de la cadira de rodes i assegureu-hi el telèfon. I això és tot, ja està!

Concurs de gerds Pi 2017
Concurs de gerds Pi 2017
Concurs de gerds Pi 2017
Concurs de gerds Pi 2017

Accèssit al concurs Raspberry Pi 2017

Recomanat: