İçindekiler:
- Adım 1: Gerekli Parçalar
- 2. Adım: Ahududu Kamerasını Ayarlama
- 3. Adım: V4l2rtspserver'ı yükleyin
- 4. Adım: Ahududu'yu WiFi Erişim Noktası Olarak Ayarlayın: Bölüm 1 - Hostapd
- Adım 5: Ahududu'yu WiFi Erişim Noktası Olarak Ayarlayın: Bölüm 2 - Dnsmasq
- Adım 6: Yazılımı Kontrol Edin
- Adım 7: Güç Kaynağını Yapmak
- 8. Adım: Kamera Kutusunu Oluşturma
- Adım 9: Telefon Tutucusunu Yapın
- Adım 10: Her Şeyi Birleştirin ve Deneyin
Video: Elektrikli Tekerlekli Sandalye için Geri Görüş Kamerası: 10 Adım (Resimlerle)
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:20
Ağabeyim Invacare TDX elektrikli tekerlekli sandalye kullanıyor, bu her yöne manevrası kolay, ancak sınırlı arka görüş nedeniyle sınırlı alanlarda geri geri gitmek zor. Projenin amacı, direksiyon kumanda koluna yakın monte edilmiş bir cep telefonuna IP akışı kullanarak bir arka görüş kamerası oluşturmaktır.
Gerekli bileşenler:
- tekerlekli sandalye gücünü kullanarak güç kaynağı ve dağıtımı
- arka görüş kamerası ve video aktarıcı
- kontrol paneli için cep telefonu tutucusu.
Güç, 24V kurşun pil kullanan tekerlekli sandalye tarafından sağlanır. Şarj bağlantı noktası, akıştan sorumlu Ahududu'ya güç sağlayan ve gerekirse cep telefonuna güç sağlayan USB'ye bir güç dönüştürücü takmak için yanlış kullanılır.
Akış, kablosuz erişim noktası olarak hizmet veren ve videoyu kablosuz ağa bağlı herhangi bir cihaza aktaran bir Raspberry Pi Zero W tarafından yapılır.
Görüntüyü gösterecek olan cep telefonu, tekerlekli sandalye kontrol ünitesine 3d baskılı adaptör ile monte edilir.
Bu projeyi takip etmek için bazı temel Debian/Linux bilgisine ihtiyacınız olacak, çünkü konfigürasyon biraz manuel çalışma gerektiriyor. Ancak çok zor değil, bu yüzden bir şans verin - Linux'ta size yardımcı olabilecek yüzlerce öğretici olduğundan emin değilseniz.
Adım 1: Gerekli Parçalar
Raspberry Pi Zero W: Video akışı için ana bileşen
Raspberry Pi için SainSmart Geniş Açı Balık Gözü Kamera Lensleri: Arduino Kamera uyumlu geniş açılı kamera (170° FOV)
2 × Plastik muhafazalar: Ahududu ve kamera için bir küçük muhafaza, güç dağıtımı için bir büyük muhafaza
XLR Fişi: Tekerlekli sandalyenin şarj portuna bağlanmak için
Araba USB Bağlantı Noktası (örn. TurnRaise 12-24V 3.1A): Araba ve motosiklet kullanımı için küçük bir muhafaza içinde 24V'tan USB'ye dönüştürücü. 24V giriş kullanan ve USB çıkışı sağlayan herhangi bir şey olabilir.
Çeşitli Kablolar:
- XLR bağlantı noktasından tekerlekli sandalyenin arkasına yönlendirmek için güç kablosu,
- Raspberry beslemek için USB kablosu
Telefon için 3D baskılı adaptör Standart bir araç cep telefonu tutucusu için temel görevi gören tekerlekli sandalye kontrol ünitesine 3 boyutlu baskılı adaptör:
Araç cep telefonu tutucusu: Düz bir yüzeye takılabilen bir cep telefonu tutucusu (örn. bir ön panel telefon tutucusu). Alman bir üretici olan Hama'dan bir tane kullandım.
2. Adım: Ahududu Kamerasını Ayarlama
Raspbian'ı https://www.raspberrypi.org/downloads/raspbian/ adresinden https://www.raspberrypi.org/documentation/installation/installing-images/README.md adresindeki talimatları izleyerek kurun.
Bir terminalden aşağıdaki iki komutu çalıştırarak tüm güncellemeleri yükleyin:
sudo apt-get güncellemesi
sudo apt-get dağıtım yükseltme
Kapatın, kamerayı bağlayın. Ahududuyu tekrar başlatın.
Raspberry Setup panelinde kamerayı etkinleştirin ve ahududuya SSH erişimini etkinleştirin. Sainsmart kamera resmi Pi kamera olarak çalışır, burada bulunan talimatları takip edebilirsiniz: https://www.raspberrypi.org/learning/addons-guide… Ne yazık ki henüz işiniz bitmedi. Raspi-cam için kutudan çıkar çıkmaz bir v4l sürücüsüne ihtiyacımız var. İlk olarak, en son üretici yazılımı ve çekirdek sürücüsünü almak için ahududunuzun üretici yazılımı güncellemesini yapmalısınız - aşağıdakileri bir terminalde çalıştırın:
sudo raspi güncellemesi
Şimdi bir terminale yazarak v4l çekirdek sürücüsünü yüklemeniz gerekiyor:
sudo modprobe bcm2835-v4l2
Bu, hata mesajları olmadan çalıştıysa, artık bir /dev/video0 cihazınız olmalıdır, kontrol edin.
ls - l /dev/vid*
Bu işe yaradıysa, modülü her başlangıçta etkinleştirmek için /etc/modules dosyasına bcm2835-v4l2 ekleyin.
Kameranın şu komutla çalıştığını kontrol edebilirsiniz:
raspistill -o cam.jpg
3. Adım: V4l2rtspserver'ı yükleyin
İlk olarak, video akış programını kendimiz derleyeceğimiz için cmake'i yüklemeniz gerekiyor:
sudo apt-get install cmake
Akış için, denemelerimizde en düşük gecikmeyi gösterdiğinden v4l2rtspserver kullanıyoruz. Kodu https://github.com/mpromonet/v4l2rtspserver adresinden alabilirsiniz.
İle kurun:
git klonu
cd h264v4l2rtspserver
cmake.
kurulum yap
Her şey hatasız bitmeli ve şimdi akış sunucusunu bir terminalden başlatarak test edebilirsiniz:
v4l2rtspserver -W 352 -H 288 -F 10 /dev/video0
Akışın çalışıp çalışmadığını kontrol etmek için aynı ağdaki bir bilgisayardaki VLC ile ahududuya bağlanın: rtsp://:8554/unicast.
Favori düzenleyicinizi (vi olması gerekir) kullanarak ana dizininizde launcher.sh adlı bir komut dosyası oluşturun:
!#/bin/bashsleep 20 v4l2rtspserver -W 352 -H 288 -F 10 /dev/video0
Video sürücüsünün hazır hale gelmesine izin vermek için uyku komutu gereklidir. Muhtemelen 20 saniyeden daha kısa bir süreye ayarlanabilir….
Bu betiği "crontab -e" ile crontab'ınıza ekleyin ve şunu ekleyin:
@reboot sh /home/pi/bbt/launcher.sh >/home/pi/logs/cronlog 2>&1
Bu, akışı her başlatmada otomatik olarak başlatmalıdır.
Akış için alternatifler:
Video akışı için kullanabileceğiniz birkaç alternatif var, hareket ve vlc denedim. Motion, hareketi algılayan bir web kamerası aracıdır, bu nedenle görüntüler üzerinde ek görüntü analizi gerçekleştirir ve muhtemelen yalnızca akıştan biraz daha yavaştır.
VLC, herhangi bir ek derleme olmadan kutunun dışında çalışır:
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} '
Bu komut, 12345 numaralı bağlantı noktasında http üzerinden h264 kodlu bir video akışı sağlar. Gecikme, test kurulumumuzda yaklaşık 2 saniyedir.
4. Adım: Ahududu'yu WiFi Erişim Noktası Olarak Ayarlayın: Bölüm 1 - Hostapd
Bu adım, Raspberry'nizi bir Erişim Noktası olarak ayarlar. Bundan sonra artık ağınıza bağlı değilsiniz ama Raspberry kendi WiFi Ağını açar. Hata durumunda, Raspberry'ye klavye ve ekran ile erişiminiz olması gerekir, bu yüzden ahududuyu bir yere gömmeden önce bunu yapın…
Burada açıklanan yöntemi takip ediyorum:
hostapd ve dnsmasq'ı kurun:
sudo apt-get install dnsmasq hostapd
/etc/dhcpd.conf dosyasına (tercihen en üstte) aşağıdaki satırı ekleyerek wlan0 arabiriminde dhcp'yi devre dışı bırakın
inkararayüzleri wlan0
/etc/network/interfaces öğesini aşağıdakileri içerecek şekilde düzenleyerek wlan0 arabirimi için statik bir IP yapılandırın:
allow-hotplug wlan0 iface wlan0 inet statik adres 172.24.1.1 ağ maskesi 255.255.255.0 ağ 172.24.1.0 yayın 172.24.1.255
dhcp arka plan programını sudo hizmeti dhcpcd restart ile yeniden başlatın ve ardından wlan0 yapılandırmasını yeniden yükleyin
sudo ifdown wlan0; sudo ifup wlan0
Ekli hostapd.conf dosyasını /etc/hostapd/hostapd.conf altına kaydedin (içeriği kontrol ettikten ve beğeninize göre uyarladıktan sonra - en azından SSID'yi ve parolayı daha güvenli bir şekilde değiştirmelisiniz).
Artık aşağıdakileri çalıştırarak çalışıp çalışmadığını kontrol edebilirsiniz:
sudo /usr/sbin/hostapd /etc/hostapd/hostapd.conf
Yeni ağa bağlanabilmeniz gerekir, ancak henüz bir IP adresi almayacaksınız. CTRL-C'ye basarak hostapd'yi durdurun. /etc/default/hostapd dosyasını düzenleyerek ve ilgili satırı şu şekilde değiştirerek yapılandırma dosyası konumunu ekleyerek hostapd'nin otomatik olarak başlatılmasını etkinleştirin.
DAEMON_CONF="/etc/hostapd/hostapd.conf"
Adım 5: Ahududu'yu WiFi Erişim Noktası Olarak Ayarlayın: Bölüm 2 - Dnsmasq
Sağlanan dnsmasq yapılandırmasını bir yedekleme dosyasına taşıyın (birçok yorum içerdiğinden, yine de referans olarak kullanabilirsiniz):
sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.orig
Ardından, aşağıdaki içerikle yeni bir /etc/dnsmasq.conf oluşturun:
server=8.8.8.8 # DNS isteklerini Google DNS etki alanına ilet-gerekli # Kısa adları iletmeyin bogus-priv # Yönlendirilmemiş adres alanlarındaki adresleri asla iletmeyin. dhcp-range=172.4.1.50, 172.24.1.150, 12h # 12 saatlik kiralama süresi ile 172.24.1.50 ile 172.24.1.150 arasında IP adresleri atayın
dnsmasq hizmetini belirli bir adrese bağlamak, kurulumumuzda bazı sorunlara neden oluyor, bu yüzden tüm arayüzlerde çalışmasına izin verdik. Raspberry Pi Zero W sadece WiFi'ye sahip olduğundan, bir USB Ethernet arabirimi bağlamadığınız sürece bu sorun değil… (bu durumda, bu arabirimde bir dhcp sunucunuz da olur, bu nedenle bu, bağlandığınız ağı bir kabloyla bozabilir).
Başlangıçta dnsmasq'ı çalıştırmak için herhangi bir ekstra adım yapmanıza gerek yoktur, otomatik olarak başlar. Ancak yeniden başlatmadan önce her iki hizmeti de manuel olarak başlatarak her şeyi test etmeli ve WiFi'ye bağlanıp bir IP adresi alabildiğinizi kontrol etmelisiniz (cep telefonunuza bu WiFi'nin internet olmadığını ve bunun iyi olduğunu da söyleyebilirsiniz):
sudo service hostapd start sudo service dnsmasq start
Adım 6: Yazılımı Kontrol Edin
Artık her şeyi yapılandırdığınıza göre, kısa bir kontrol yapmanın zamanı geldi (her şeye erişmek daha zor olmadan önce). Ahududuyu yeniden başlatın.
Cep telefonunuzla ahududu varsa WiFi'ye bağlanın. "Ağ akışı"nı seçip rtsp://:8554/unicast'e bağlanarak ahududu akışına bir akış video istemcisi (örneğin tüm işletim sistemleri için mevcut olan VLC) bağlayın (eğer yapmadıysanız cihazınızın IP'sidir). 172.24.1.1) olarak değiştirin.
Şimdi kameradan bazı canlı videolar görmelisiniz… (Android için VLC ile ilgili bazı sorunlar yaşadım, ancak iOS için VLC sorunsuz çalıştı - kardeşim iOS kullandığı için android sürümünü daha fazla araştırmadım).
Adım 7: Güç Kaynağını Yapmak
Invacare kontrolü, elektrikli tekerlekli sandalyeler için standart gibi görünen şeyleri kullanır. Konektör, mikrofonlar için kullanılan standart bir XLR konektörüdür. Pin 1 pozitif, Pin 2 negatif. Invacare'in iletişim için iki ek pimi var, ancak bunlarla uğraşmayacağız…
XLR konektörünü USB güç adaptörüne bağlayın ve her şeyi bir kutuya sığdırın. Kabloyu kutuya beslemek için bir geçiş iyi bir fikirdir. Kablonun, tekerlekli sandalye kontrol modülünden güç kaynağı kutusunu takacağınız arkalığa yönlendirilecek kadar uzun olduğundan emin olun. Hareketli bir parçanın herhangi bir yerine takılmadıklarından emin olmak için kabloları kontrol modülünün kablolarını takip ederek yönlendirebilirsiniz.
8. Adım: Kamera Kutusunu Oluşturma
Ahududu pi ve kameraya uyan bir kutu oluşturun. Kutunun yanında USB güç kablosunun geçmesi için bir deliğe ve kamera için görüşü engellemeyecek kadar büyük bir deliğe ihtiyacı vardır. Tekerlekli sandalyenin arka tekerleklerini görebilmek için kamerayı aşağıyı gösterecek şekilde yaklaşık 45°'lik bir açıyla monte ettim. İçine bazı delikler açtığım standart bir plastik kutu kullandım, ancak daha meraklı bir sürümü 3D olarak da yazdırabilirsiniz (belki Sürüm 2 için)
Adım 9: Telefon Tutucusunu Yapın
Cep telefonunu tekerlekli sandalyeye takmak için şurada bulabileceğiniz bir adaptör plakasını 3 boyutlu yazdırdım: https://www.thingiverse.com/thing:2742683 (STL dosyası da ekte). Tekerlekli sandalye kontrol ünitesine bağlıdır. Bu plakaya, her yerde ucuza alabileceğiniz herhangi bir araç telefonu tutucusunu yapıştırabilirsiniz.
Adım 10: Her Şeyi Birleştirin ve Deneyin
Şimdi her şeyi bir araya getirme zamanı:
Kamera kutusunu tekerlekli sandalyenin arka tarafında görüşün engellenmediği ve kameranın arkaya dönük olduğu bir yere takın. Güç kaynağı kutusunu arkada engel olmayacak bir yere takın. Raspberry'den gelen USB kablosunu güç kutusuna bağlayın. Güç kutusunu XLR fişli tekerlekli sandalye kontrol ünitesindeki şarj portuna bağlayın. Her şey şimdi başlamalı.
VLC'yi cep telefonunuza yükleyin (henüz yapmadıysanız…) ve Raspberry'ye rtsp://:8554/unicast üzerinden bağlanın
Artık cep telefonunuzda kamera görüntüsünü görmelisiniz:-)
Cep telefonu tutucusunu tekerlekli sandalye kontrol ünitesine koyun ve telefonu üzerine sabitleyin. Ve işte bu, işiniz bitti!
Raspberry Pi Yarışması 2017'de İkincilik Ödülü
Önerilen:
Bedensel Engelliler İçin İvmeölçer Tabanlı Tekerlekli Sandalye: 13 Adım
Bedensel Engelliler için İvmeölçer Tabanlı Tekerlekli Sandalye: 1,3 milyar nüfuslu ülkemizde, kişisel hareketlilik için desteğe ihtiyaç duyan yaşlı veya engelli nüfusumuz hala %1'den fazla. Projemiz, mobilite ihtiyaçlarını akıllı teknoloji ile karşılamayı hedefliyor. Sorun
Tekerlekli Sandalye için Tığ Yardımı: 18 Adım
Tekerlekli Sandalye için Tığ Yardımı: Edinilmiş beyin hasarı olan ve ellerinden birini kullanamayan bir kişi, örgü ve tığ işi için ipliğini tutmakta güçlük çeker. İpliği tekerlekli sandalyesine dolaştırmadan dağıtmakta da zorlanıyor.Örme bir
Elektrikli Tekerlekli Sandalyelerde Ortaya Monte Edilen Ayaklıkların Kaldırılması/Alçaltılması için Palet Sürgü Tasarımının Modelini Tamamlama Hakkında Talimatlar: 9 Adım (Resimlerle)
Elektrikli Tekerlekli Sandalyelerde Ortaya Monte Edilen Ayaklıkların Kaldırılması/Alçaltılması için Palet Sürgü Tasarım Modelinin Tamamlanmasına İlişkin Talimatlar: Merkeze monteli ayaklıklar, koltuk yuvasının altına yerleştirilmek üzere kaldırılır ve açılmak üzere alçalır. Piyasadaki elektrikli tekerlekli sandalyelere ayaklık istifleme ve yerleştirme bağımsız çalışması için bir mekanizma dahil değildir ve PWC kullanıcıları ihtiyacı ifade etmişlerdir
Tekerlekli Sandalye Motor Frenini Çıkarın: 6 Adım (Resimlerle)
Tekerlekli Sandalye Motor Frenini Çıkarın: Elektrikli güvenlik frenini tekerlekli sandalye motorundan çıkarmak hızlı ve kolay bir işlemdir. Bu talimatlar, tekerlekli sandalye motorunu kendin yap projeleri için yeniden kullanmayı umut eden kişiler içindir. Güvenlik freninin devre dışı bırakılması, bir elektriğin kontrol edilmesini sağlar
FerretMobile DIY Gelincik Tekerlekli Sandalye: 9 Adım (Resimlerle)
FerretMobile DIY Gelincik Tekerlekli Sandalye: Yakın zamanda geçirdiği bir hastalıktan sonra gelinciğimizin arka ayaklarından birinin kullanımını kısıtladıktan sonra, diğer gelincikler oynamak için dışarı çıkarken onun etrafta uzanmak zorunda kalmasının adil olmadığına karar verdim. Etrafta dolaşıp keyfini çıkaramıyordu. merhaba almaya karar verdim