İçindekiler:
2025 Yazar: John Day | [email protected]. Son düzenleme: 2025-01-13 06:58
Bu yüzden aşağıdaki özelliklere sahip bir kapı zili istedim:
- Kapıdan gelen video
- İki yönlü ses
- iki düğme
- HomeAssistant UI'yi gösteren duvara monte tablet ile entegrasyon
Doorbird (pahalı ve HTML5 kullanarak iki yönlü sesli aramaları yok) ve Ring kapı zili (ama abonelikten hoşlanmıyorum, bulut tabanlı kapı zili) gibi bazı seçenekler geldi.
Bir geliştirici ve tamirci olarak, bazı projeleri zaten bitirdim ama bu, tamamlanması en zor olanlardan biriydi. İki yönlü sesi birbirinizi anlayabileceğiniz bir noktaya getirmekte çok zorlandım. Bunun başlıca nedeni, oldukça fazla yankı olması, …. Fikir DoorPi'den geliyor, ancak SIP protokolü ile birbirini anlamamama neden olan çok fazla yankı aldım.
Kapı zilim tamamen dış etkenlerden korunduğu için cepheyi lazer kesim ahşaptan yapabilmekteyiz.
Gereçler
- Raspberry Pi 3 B veya 3B+ (standart Raspberry Pi CSI kamera arayüzünü desteklemediği için PoE yerleşik bir Banana Pi'yi tercih etmeyin) = 33, 67 €
- Mikro SD kart = 2, 69 €
- Raspberry Pi balıkgözü kamera = 14, 14 €
- PoE adaptörü = 4, 94 €
- RaspiAudio Mikrofon + = 24, 69 €
- 3D yazıcıya (ve lazer kesiciye) erişim
- Kapı Zili Düğmeleri
- Çok zaman!
Bu toplam 80,13 € eder.
Kapsam dışı, iç istasyon:
- MQTT Broker ile HomeAssistant kurulumu
- Duvara monte Android Tablet
Adım 1: Raspberry Pi'yi Kurun
Wifi yerine ethernet kullanmanızı şiddetle tavsiye ederim. Ses kalitem bu sayede çok arttı. Ayrıca webrtc'yi desteklediğinden ve bu nedenle yerleşik eko iptaline sahip olduğundan UV4L'yi kullanacağız. Doorpi, bir SIP istemcisi olan linphone kullanıyor ve yankı iptalini çalıştıramadım.
-
Raspbian Stretch Lite'ı indirin ve Micro SD karta kurun. Emin olun:
önyükleme bölümünde boş bir ssh dosyası oluşturarak ssh'yi etkinleştirin
- Aşağıdaki komutları çalıştırın:
sudo apt-get güncellemesi
sudo apt-get yükseltme
Kamera
Kamerayı raspi-config ile etkinleştirin ve GPU'nun en az 192 MB ram olduğundan emin olun.
RaspiSes
www.raspiaudio.com/raspiaudio-aiy adresinde bulunan RaspiAudio kurulum kılavuzunu takip edin.
UV4L
www.linux-projects.org/uv4l/installation/ adresinde bulunan UV4L kurulum kılavuzunu takip edin.
/etc/uv4l/uv4l-raspicam.conf dosyasını ayarlayın ve aşağıdaki ayarları yaptığınızdan emin olun:
En dikkate değer ayar probaby --enable-webrtc-video=no'dur: bunun nedeni, videoyu her zaman h264 kodlu mjpeg kullanarak uv4l'den yayınlıyor olmamızdır.
/usr/share/uv4l/demos/doorpi/ içinde bulunan aşağıdaki dosyaları kullanarak, iki yönlü ses ve videoyu zaten test edebilirsiniz.
- index.html (instructables yükleme gereksinimleri nedeniyle yeniden adlandırılması gereken index.html5'ten yeniden adlandırın)
- ana.js
- sinyalleme.js
[ip-of-raspberrypi]:8888'e göz atın ve 2 yönlü sesin çalışıp çalışmadığını test edin.
pi-mqtt-gpio
Kapı zili düğmelerini çalıştırmanın en kolay yolu, onları ahududu pi'ye eklemek ve HomeAssistant ile entegre etmek için pi-mqtt-gpio kullanmaktır.
Yapılandırma dosyam aşağıdaki gibidir:
mqtt: ana bilgisayar: xxxx bağlantı noktası: 1883 kullanıcı: [kullanıcı adı] parola: [parola] topic_prefix: "kapı zili" gpio_modules: - ad: raspberrypi modül: raspberrypi temizleme: evet digital_inputs: - ad: button_1 modül: raspberrypi pin: 17 on_payload: " Off" off_payload: "On" pullup: evet pulldown: hayır - isim: button_2 modülü: raspberrypi pin: 27 on_payload: "Off" off_payload: "On" pullup: evet açılan: hayır
3.3V pin olarak daha fazla topraklama pini mevcut olduğundan, pullup GPIO pinlerini kullanmayı seçtiğimi ve böylece MQTT mesajlarımı tersine çevirdiğimi unutmayın.
uv4l-raspicam.conf
sürücü = raspicam |
auto-video_nr = evet |
çerçeve tamponları = 4 |
kodlama = h264 |
genişlik = 1024 |
yükseklik = 768 |
kare hızı = 10 |
döndürme = 270 #donanım kurulumunuza bağlı olarak |
sunucu seçeneği = --port=9090 |
sunucu seçeneği = --bind-ana bilgisayar adresi=0.0.0.0 |
sunucu seçeneği = --use-ssl=evet |
sunucu seçeneği = --ssl-özel-anahtar dosyası=/etc/uv4l/selfsign.key |
sunucu seçeneği = --ssl-sertifika dosyası=/etc/uv4l/selfsign.crt |
sunucu seçeneği = --enable-webrtc-video=hayır |
sunucu seçeneği = --enable-webrtc-audio=yes |
sunucu seçeneği = --webrtc-vad=evet |
sunucu seçeneği = --webrtc-echo-cancellation=evet |
sunucu seçeneği = --webrtc-max-playout-delay=34 |
sunucu seçeneği = --enable-www-server=evet |
sunucu seçeneği = --www-root-path=/usr/share/uv4l/demos/doorpi/ |
sunucu seçeneği = --www-index-file=index.html |
sunucu seçeneği = --www-port=8888 |
sunucu seçeneği = --www-bind-host-adresi=0.0.0.0 |
sunucu seçeneği = --www-use-ssl=evet |
sunucu seçeneği = --www-ssl-özel anahtar dosyası=/etc/uv4l/selfsign.key |
sunucu seçeneği = --www-ssl-sertifika dosyası=/etc/uv4l/selfsign.crt |
sunucu seçeneği = --www-webrtc-sinyalleme-yolu=/webrtc |
GitHub tarafından ❤ ile barındırılan rawgistfile1.txt dosyasını görüntüle
Adım 2: Kapı Zili Kutusu
- kapı zili arkası v1.stl: ahududu pi ve PoE adaptörü için 3D baskılı kutu
- kapı zili ön v1.svg: Lazer kesim yüz plakası
- kapı zili-micro v1.stl: Ses yalıtımı ile sarılmış, yüz plakasına yapıştırılmış mirofon içeren 3D baskılı kutu
Ahududu pi'yi ekteki vida tutuculara vidalayın ve PoE adaptörünü sağ üste yerleştirin. Kamerayı ve mikrofonu yerine yerleştirin (mikrofonu ayırdığınızdan ve mikrofon deliğinin yüz plakasındaki bir delikle iyi hizalandığından emin olun).
3. Adım: HomeAssistant Entegrasyonu
Aşağıdaki dosyalar HomeAssistant entegrasyonuna izin verir:
- Doorpi.yaml: MQTT mesajlarının dinlenmesi ve kapı ziline basıldığında zili çalmak için otomasyonlar dahil olmak üzere kapı zili ile ilgili her şeyi içeren paket
- www/doorpi/doorpi-card.js: signalling.js ve doorpi-camera-view.js'ye ihtiyaç duyan lovelace doorpi kartı
ÖNEMLİ: HomeAssistant'ı https/ssl ile çalıştırmanız gerektiğini unutmayın, aksi takdirde chrome ses cihazlarına erişmenize izin vermez.
Adım 4: Mutlu Kapı Zili çağrısı
İşte bu kadar, şimdi kapı zili aracılığıyla birini arayabilirsiniz ve HomeAssistant otomatik olarak kapı zili kartına geçecektir. Orada kapı zilini kabul etmeye veya yok saymaya karar verebilirsiniz.