فهرست مطالب:

Smart Doorbell for HomeAssistant: 4 مرحله
Smart Doorbell for HomeAssistant: 4 مرحله

تصویری: Smart Doorbell for HomeAssistant: 4 مرحله

تصویری: Smart Doorbell for HomeAssistant: 4 مرحله
تصویری: This Smart Home Doorbell Is ALMOST Amazing - Aqara G4 Video Doorbell Review 2024, نوامبر
Anonim
زنگ درب هوشمند برای HomeAssistant
زنگ درب هوشمند برای HomeAssistant

بنابراین ، من می خواستم یک زنگ در با ویژگی های زیر باشد:

  • فیلم از درب
  • صدای دو طرفه
  • دو دکمه
  • ادغام با رایانه لوحی دیواری که رابط کاربری HomeAssistant را نشان می دهد

برخی از گزینه ها مانند Doorbird (گران قیمت و دارای تماس صوتی دو طرفه با استفاده از HTML5) و زنگ درب (اما من از اشتراک ، زنگ درب ابری را دوست ندارم) آمد.

من به عنوان یک توسعه دهنده و کارگر حرفه ای ، برخی از پروژه ها را به اتمام رسانده ام ، اما این یکی از سخت ترین پروژه ها بود. من خیلی مشکل داشتم تا صدای دو طرفه را به جایی برساند که بتوانید یکدیگر را درک کنید. این عمدتا به این دلیل است که انعکاس بسیار زیادی وجود دارد ،…. این ایده از DoorPi می آید ، اما با پروتکل SIP ، من انعکاس زیادی داشتم که منجر به عدم درک یکدیگر شد.

از آنجا که زنگ درب من کاملاً از عوامل محافظت می شود ، می توانیم قسمت جلویی را با چوب برش لیزری بسازیم.

تدارکات

  • Raspberry Pi 3 B یا 3B+ (از موز Pi با PoE استفاده نکنید زیرا از رابط استاندارد دوربین Raspberry Pi CSI پشتیبانی نمی کند) = 33 یورو ، 67 یورو
  • کارت Micro SD = 2 ، 69 یورو
  • دوربین رزبری پای ماهی = 14 ، 14 یورو
  • آداپتور PoE = 4 ، 94 یورو
  • RaspiAudio Mic + = 24 ، 69 یورو
  • دسترسی به چاپگر سه بعدی (و برش لیزری)
  • دکمه هایی برای زنگ در
  • زمان زیاد!

این مبلغ در مجموع 80 ، 13 یورو جمع می شود.

خارج از محدوده ، ایستگاه داخلی:

  • راه اندازی HomeAssistant با کارگزار MQTT
  • تبلت اندرویدی دیواری

مرحله 1: رزبری پای را راه اندازی کنید

من به شدت به شما توصیه می کنم به جای Wifi از اترنت استفاده کنید. کیفیت صدای من به دلیل آن بسیار بهبود یافته است. ما همچنین از UV4L استفاده خواهیم کرد زیرا از webrtc پشتیبانی می کند و بنابراین دارای لغو اکو داخلی است. Doorpi از linphone ، یک سرویس گیرنده SIP استفاده می کند و من نتوانستم لغو اکو را فعال کنم.

  • Raspbian Stretch Lite را بارگیری کرده و روی کارت Micro SD نصب کنید. مطمئن شوید که شما:

    با ایجاد یک فایل ssh خالی در پارتیشن بوت ssh را فعال کنید

  • دستورات زیر را اجرا کنید:

sudo apt-get update

sudo apt-get upgrade

دوربین

دوربین را از طریق raspi-config فعال کنید و مطمئن شوید که پردازنده گرافیکی حداقل 192 مگابایت حافظه رم دارد.

RaspiAudio

راهنمای نصب RaspiAudio را در https://www.raspiaudio.com/raspiaudio-aiy دنبال کنید

UV4L

از راهنمای نصب UV4L که در https://www.linux-projects.org/uv4l/installation/ یافت می شود پیروی کنید.

فایل /etc/uv4l/uv4l-raspicam.conf را تنظیم کرده و مطمئن شوید که تنظیمات زیر را انجام داده اید:

قابل توجه ترین تنظیمات probaby --enable-webrtc-video = no است: این به این دلیل است که ما همیشه ویدیو را از uv4l با استفاده از h264 کدگذاری شده mjpeg پخش می کنیم.

با استفاده از فایل های زیر واقع در/usr/share/uv4l/demos/doorpi/، می توانید صدا و تصویر دو طرفه را از قبل آزمایش کنید.

  • index.html (تغییر نام آن از index.html5 ، به دلیل نیاز به بارگذاری دستورالعمل مورد نیاز برای تغییر نام)
  • main.js
  • signalling.js

به https:// [ip-of-raspberrypi]: 8888 بروید و آزمایش کنید که آیا می توانید صدای دو طرفه را فعال کنید.

pi-mqtt-gpio

ساده ترین راه برای کارکردن دکمه های زنگ درب این است که آنها را به تمشک pi وصل کرده و از pi-mqtt-gpio برای ادغام آن با HomeAssistant استفاده کنم.

فایل پیکربندی من به شرح زیر است:

mqtt: host: port xxxx: 1883 کاربر: [نام کاربری] رمز عبور: [رمز عبور] topic_prefix: "doorbell" gpio_modules: - name: raspberrypi module: raspberrypi cleanup: yes digital_inputs: - name: button_1 ماژول: raspberrypi pin: 17 on_payload: " خاموش "off_payload:" On "pullup: yes pulldown: no - name: button_2 ماژول: raspberrypi pin: 27 on_payload:" Off "off_payload:" On "pullup: yes pulldown: no

توجه داشته باشید که از آنجا که پین های زمینی بیشتری به عنوان پین های 3.3V در دسترس هستند ، من از پین های GPUO pullup استفاده می کنم و پیام های MQTT خود را وارونه می کنم.

uv4l-raspicam.conf

راننده = raspicam
auto-video_nr = بله
frame-buffers = 4
رمزگذاری = h264
عرض = 1024
ارتفاع = 768
نرخ فریم = 10
چرخش = 270 #بسته به تنظیم سخت افزار شما
server-option = --port = 9090
server-option = --bind-host-address = 0.0.0.0
server-option = --use-ssl = بله
server-option = --ssl-private-key-file =/etc/uv4l/selfsign.key
server-option = --ssl-certificate-file =/etc/uv4l/selfsign.crt
server-option = --enable-webrtc-video = شماره
server-option = --enable-webrtc-audio = بله
server-option = --webrtc-vad = بله
server-option = --webrtc-echo-cancellation = بله
server-option = --webrtc-max-playout-delay = 34
server-option = --enable-www-server = بله
server-option = --www-root-path =/usr/share/uv4l/demos/doorpi/
server-option = --www-index-file = index.html
server-option = --www-port = 8888
server-option = --www-bind-host-address = 0.0.0.0
server-option = --www-use-ssl = بله
server-option = --www-ssl-private-key-file =/etc/uv4l/selfsign.key
server-option = --www-ssl-certificate-file =/etc/uv4l/selfsign.crt
server-option = --www-webrtc-signaling-path =/webrtc

view rawgistfile1.txt با ❤ توسط GitHub میزبانی شده است

مرحله 2: جعبه زنگ در

  • doorbell-back v1.stl: جعبه چاپ سه بعدی برای تمشک pi و آداپتور PoE
  • doorbell-front v1.svg: صفحه برش لیزری
  • doorbell-micro v1.stl: جعبه چاپ سه بعدی حاوی میروفون پیچیده شده با عایق صدا ، چسبیده به صفحه

پی تمشکی را در پیچ های متصل شده پیچ کنید و آداپتور PoE را در بالا سمت راست قرار دهید. دوربین و میکروفون را در جای خود قرار دهید (مطمئن شوید که میکروفون را جدا کرده و مطمئن شوید که سوراخ میکروفون به خوبی با یک سوراخ در صفحه صورت تراز شده است).

مرحله 3: ادغام HomeAssistant

فایل های زیر امکان ادغام HomeAssistant را فراهم می کند:

  • doorpi.yaml: بسته ای که حاوی همه چیز مربوط به زنگ در است ، از جمله گوش دادن به پیامهای MQTT و اتوماسیون برای نواختن زنگ در هنگام فشار دادن زنگ درب
  • www/doorpi/doorpi-card.js: کارت lovelace doorpi که به signalling.js و doorpi-camera-view.js نیاز دارد

مهم: توجه داشته باشید که باید HomeAssistant را با https/ssl اجرا کنید زیرا در غیر این صورت کروم به شما اجازه دسترسی به دستگاه های صوتی را نمی دهد.

مرحله 4: خوشحال می شوم که زنگ در بزنید

تمام شد ، اکنون باید بتوانید از طریق زنگ درب منزل با شخصی تماس بگیرید و HomeAssistant به طور خودکار به کارت زنگ در می رود. در آنجا می توانید تصمیم بگیرید که زنگ خانه را بپذیرید یا نادیده بگیرید.

توصیه شده: