হোম অ্যাসিস্ট্যান্টের জন্য স্মার্ট ডোরবেল: 4 টি ধাপ
হোম অ্যাসিস্ট্যান্টের জন্য স্মার্ট ডোরবেল: 4 টি ধাপ
Anonim
হোম অ্যাসিস্ট্যান্টের জন্য স্মার্ট ডোরবেল
হোম অ্যাসিস্ট্যান্টের জন্য স্মার্ট ডোরবেল

সুতরাং, আমি নিম্নলিখিত বৈশিষ্ট্যগুলির সাথে একটি ডোরবেল চেয়েছিলাম:

  • দরজা থেকে ভিডিও
  • দ্বিমুখী অডিও
  • দুটি বোতাম
  • ওয়াল মাউন্ট করা ট্যাবলেটের সাথে ইন্টিগ্রেশন দেখাচ্ছে HomeAssistant UI

কিছু বিকল্প ডোরবার্ড (ব্যয়বহুল এবং HTML5 ব্যবহার করে তাদের দ্বিমুখী অডিও কলিং নেই) এবং রিং ডোরবেল (কিন্তু আমি একটি সাবস্ক্রিপশন, ক্লাউড ভিত্তিক ডোরবেল পছন্দ করি না) সহ এসেছি

একজন ডেভেলপার এবং টিঙ্কার হিসাবে, আমি ইতিমধ্যে কিছু প্রকল্প শেষ করেছি কিন্তু এটি সম্পন্ন করা সবচেয়ে কঠিন কাজগুলির মধ্যে একটি। দ্বিমুখী অডিওকে এমন এক জায়গায় কাজ করতে আমার অনেক কষ্ট হয়েছিল যেখানে আপনি একে অপরকে বুঝতে পারবেন। এটি প্রধানত কারণ এখানে প্রচুর প্রতিধ্বনি রয়েছে,…। ধারণা DoorPi থেকে আসে, কিন্তু SIP প্রোটোকলের সাথে, আমি খুব বেশি প্রতিধ্বনি ছিল যার ফলে একে অপরকে বুঝতে পারিনি।

যেহেতু আমার ডোরবেলটি উপাদান থেকে সম্পূর্ণ সুরক্ষিত, তাই আমরা লেজারকাট কাঠের সামনের অংশটি তৈরি করতে সক্ষম।

সরবরাহ

  • রাস্পবেরি পাই 3 বি বা 3 বি+ (PoE বিল্ড ইন দিয়ে একটি কলা পাইতে যাবেন না কারণ এটি স্ট্যান্ডার্ড রাস্পবেরি পাই CSI ক্যামেরা ইন্টারফেস সমর্থন করে না) = € 33, 67
  • মাইক্রো এসডি কার্ড = € 2, 69
  • রাস্পবেরি পাই ফিশিয়ে ক্যামেরা = € 14, 14
  • PoE অ্যাডাপ্টার = € 4, 94
  • RaspiAudio Mic + = € 24, 69
  • 3D প্রিন্টারে অ্যাক্সেস (এবং লেজার কাটার)
  • ডোরবেলের জন্য বোতাম
  • অনেক সময়!

এটি মোট € 80, 13 যোগ করে।

সুযোগের বাইরে, অন্দর স্টেশন:

  • একটি এমকিউটিটি ব্রোকারের সাহায্যে সহায়ক সেটআপ
  • ওয়াল মাউন্ট অ্যান্ড্রয়েড ট্যাবলেট

ধাপ 1: রাস্পবেরি পাই সেটআপ করুন

আমি আপনাকে ওয়াইফাই এর পরিবর্তে ইথারনেট ব্যবহার করার পরামর্শ দিচ্ছি। আমার অডিও কোয়ালিটি এর কারণে অনেক উন্নত হয়েছে। আমরা UV4L ব্যবহার করব কারণ এটি webrtc সমর্থন করে এবং এইভাবে ইকো-বাতিলকরণ অন্তর্নির্মিত। ডোরপি লিনফোন ব্যবহার করে, একটি এসআইপি ক্লায়েন্ট এবং আমি ইকো বাতিলের কাজ করতে পারিনি।

  • রাস্পবিয়ান স্ট্রেচ লাইট ডাউনলোড করুন এবং এটি মাইক্রো এসডি কার্ডে ইনস্টল করুন। নিশ্চিত হও:

    বুট পার্টিশনে একটি খালি ssh ফাইল তৈরি করে ssh সক্ষম করুন

  • নিম্নলিখিত কমান্ডগুলি চালান:

sudo apt- আপডেট পান

sudo apt-get upgrade

ক্যামেরা

রাস্পি-কনফিগের মাধ্যমে ক্যামেরা সক্ষম করুন এবং নিশ্চিত করুন যে জিপিইউতে কমপক্ষে 192 এমবি র্যাম রয়েছে।

RaspiAudio

Https://www.raspiaudio.com/raspiaudio-aiy এ পাওয়া RaspiAudio এর ইনস্টলেশন গাইড অনুসরণ করুন

UV4L

Https://www.linux-projects.org/uv4l/installation/ এ পাওয়া UV4L এর ইনস্টলেশন গাইড অনুসরণ করুন।

/Etc/uv4l/uv4l-raspicam.conf ফাইলটি সামঞ্জস্য করুন এবং আপনি নিম্নলিখিত সেটিংস সামঞ্জস্য করুন তা নিশ্চিত করুন:

সবচেয়ে উল্লেখযোগ্য সেটিংস হল probaby --enable-webrtc-video = no: এর কারণ হল আমরা সবসময় h264 এনকোডেড mjpeg ব্যবহার করে uv4l থেকে ভিডিও স্ট্রিম করব।

/Usr/share/uv4l/demos/doorpi/এ অবস্থিত নিম্নলিখিত ফাইলগুলি ব্যবহার করে, আপনি ইতিমধ্যেই দ্বিমুখী অডিও এবং ভিডিও পরীক্ষা করতে পারেন।

  • index.html (index.html5 থেকে নাম পরিবর্তন করুন, নির্দেশাবলী আপলোডের প্রয়োজনীয়তার কারণে নাম পরিবর্তন করতে হবে)
  • main.js
  • signalling.js

Https: // [ip-of-raspberrypi]: 8888 এ ব্রাউজ করুন এবং 2-ওয়ে অডিও কাজ করতে পারলে পরীক্ষা করুন।

pi-mqtt-gpio

ডোরবেল-বোতামগুলি কাজ করার জন্য আমি সবচেয়ে সহজ উপায় খুঁজে পেয়েছি, সেগুলি হল রাস্পবেরি পাইয়ের সাথে সংযুক্ত করা এবং এটিকে HomeAssistant এর সাথে সংহত করার জন্য pi-mqtt-gpio ব্যবহার করা।

আমার কনফিগারেশন ফাইলটি নিম্নরূপ:

mqtt: host: xxxx port: 1883 user: [username] password: [password] topic_prefix: "doorbell" gpio_modules: - name: raspberrypi module: raspberrypi cleanup: yes digital_inputs: - name: button_1 module: raspberrypi pin: 17 on_payload: " বন্ধ "অফ_পেইলোড:" অন "পুলআপ: হ্যাঁ পুলডাউন: না - নাম: button_2 মডিউল: রাস্পবেরিপি পিন: 27 অন_পাইলোড:" অফ "অফ_পেইলোড:" অন "পুলআপ: হ্যাঁ পুলডাউন: না

মনে রাখবেন যে 3.3V পিন হিসাবে আরও গ্রাউন্ড পিন উপলব্ধ, আমি পুলআপ জিপিআইও পিন ব্যবহার করতে পছন্দ করি এবং এইভাবে আমার MQTT বার্তাগুলি উল্টে দেয়।

uv4l-raspicam.conf

ড্রাইভার = রাসপিক্যাম
অটো-ভিডিও_এনআর = হ্যাঁ
ফ্রেম-বাফার = 4
এনকোডিং = h264
প্রস্থ = 1024
উচ্চতা = 768
ফ্রেমরেট = 10
ঘূর্ণন = 270 #আপনার হার্ডওয়্যার সেটআপের উপর নির্ভর করে
সার্ভার-অপশন = -পোর্ট = 9090
সার্ভার-অপশন =-বাইন্ড-হোস্ট-অ্যাড্রেস = 0.0.0.0
server-option = --use-ssl = হ্যাঁ
সার্ভার-অপশন = -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 = হ্যাঁ
সার্ভার-অপশন = --webrtc-vad = হ্যাঁ
সার্ভার-অপশন = --webrtc-echo- বাতিল = হ্যাঁ
server-option = --webrtc-max-playout-delay = 34
server-option = --enable-www-server = হ্যাঁ
সার্ভার-অপশন = --www-root-path =/usr/share/uv4l/demos/doorpi/
server-option = --www-index-file = index.html
সার্ভার-অপশন = --www-port = 8888
সার্ভার-অপশন = --www-bind-host-address = 0.0.0.0
সার্ভার-অপশন = --www-use-ssl = হ্যাঁ
সার্ভার-অপশন = --www-ssl-private-key-file =/etc/uv4l/selfsign.key
সার্ভার-অপশন = --www-ssl-certificate-file =/etc/uv4l/selfsign.crt
server-option = --www-webrtc-signaling-path =/webrtc

GitHub দ্বারা raw দিয়ে হোস্ট করা rawgistfile1.txt দেখুন

ধাপ 2: ডোরবেল বক্স

  • ডোরবেল-ব্যাক v1.stl: রাস্পবেরি পাই এবং PoE অ্যাডাপ্টারের জন্য 3D মুদ্রিত বাক্স
  • ডোরবেল-ফ্রন্ট v1.svg: লেজার কাট ফেস প্লেট
  • ডোরবেল-মাইক্রো v1.stl: থ্রিডি প্রিন্টেড বক্স যার মধ্যে মাইরোফোন রয়েছে যা সাউন্ড ইনসুলেশন দিয়ে মোড়ানো, ফেস প্লেটে আঠালো

সংযুক্ত স্ক্রু হোল্ডারে রাস্পবেরি পাই স্ক্রু করুন এবং উপরের ডানদিকে PoE অ্যাডাপ্টার রাখুন। ক্যামেরা এবং মাইক্রোফোন রাখুন

ধাপ 3: হোম অ্যাসিস্ট্যান্ট ইন্টিগ্রেশন

নিম্নলিখিত ফাইলগুলি HomeAssistant ইন্টিগ্রেশনের জন্য অনুমতি দেয়:

  • doorpi.yaml: ডোরবেল ধাক্কা দেওয়ার সময় বাজানোর জন্য এমকিউটিটি বার্তা এবং অটোমেশন শোনার সহ ডোরবেল সম্পর্কিত সমস্ত কিছু ধারণকারী প্যাকেজ
  • www/doorpi/doorpi-card.js: লাভলেস ডোরপি কার্ড যার জন্য signalling.js এবং doorpi-camera-view.js প্রয়োজন

গুরুত্বপূর্ণ: মনে রাখবেন যে আপনাকে অবশ্যই https/ssl দিয়ে HomeAssistant চালাতে হবে কারণ অন্যথায় ক্রোম আপনাকে অডিও ডিভাইসগুলি অ্যাক্সেস করতে দেবে না।

ধাপ 4: শুভ ডোরবেল-কলিং

এটাই, আপনি এখন কাউকে ডোরবেলের মাধ্যমে কল করতে সক্ষম হবেন এবং হোম অ্যাসিস্ট্যান্ট স্বয়ংক্রিয়ভাবে ডোরবেল কার্ডে চলে যাবে। সেখানে আপনি ডোরবেল গ্রহণ বা উপেক্ষা করার সিদ্ধান্ত নিতে পারেন।

প্রস্তাবিত: