خبر و ترفند روز

خبر و ترفند های روز را اینجا بخوانید!

نحوه ساخت زنگ درب بی سیم با دستیار خانگی

یک زنگ درب بی سیم بسازید که می تواند فایل های MP3 مورد علاقه شما را پخش کند و حتی به عنوان یک بلندگوی هوشمند از آن استفاده کنید.

زنگ درب های بی سیم یک راه عالی برای اضافه کردن زنگ در خانه ها یا ادارات بدون استفاده از هیچ سیمی است. با این حال، این زنگ‌های بی‌سیم دارای صداهای MIDI از پیش تنظیم‌شده محدودی هستند که با فشار دادن دکمه روی واحد فرستنده پخش می‌شوند.

اگرچه می‌توانید بین صداهای MIDI جابه‌جا شوید و صدا را کم یا زیاد کنید، این تنها کاری است که می‌توانید با این زنگ‌های بی‌سیم انجام دهید. با این حال، امروز ما یک زنگ در بی‌سیم هوشمند DIY می‌سازیم که در آن می‌توانید صداهای MP3 یا فایل‌های موسیقی سفارشی را اضافه کنید که وقتی کسی کلید زنگ را فشار می‌دهد پخش می‌شود. همچنین می توانید تنظیمات را سفارشی کنید و از زنگ به عنوان یک بلندگوی هوشمند استفاده کنید.

چیزهایی که شما نیاز دارید

برای ساخت و راه اندازی یک زنگ درب هوشمند سفارشی DIY به موارد زیر نیاز دارید.

  • سرور Home Assistant که روی Raspberry Pi یا هر دستگاه پشتیبانی شده دیگری اجرا می شود.
  • 2 عدد برد Wemos D1 mini یا NodeMCU.
  • بلندگو 50 میلی متری
  • یک برد تقویت کننده دیجیتال مینی 5 ولتی PAM8403.
  • سیم های دوپونت یا جامپر. همچنین اگر می خواهید اتصال دائمی داشته باشید، ممکن است به آهن لحیم کاری و قلع اتصالات لحیم کاری نیاز داشته باشید.
  • کیس برای مونتاژ تمام قطعات شما می توانید این کیس سه بعدی را چاپ کنید.

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

ابتدا یک اسپیکر هوشمند می سازیم که با Home Assistant کار می کند و سپس از آن به عنوان زنگ هوشمند برای این پروژه استفاده می کنیم. همچنین می توانید از این زنگ هوشمند برای پخش هشدارهای صوتی استفاده کنید. مراحل به شرح زیر است:

  1. Home Assistant را باز کنید و افزونه ESPHome را نصب کنید.
  2. پس از نصب، ESPHome را باز کنید و روی +New Device کلیک کنید.
  3. روی Continue کلیک کنید و نامی مانند smart-speaker را تایپ کنید.
  4. روی Next > یک برد خاص را انتخاب کنید و Wemos D1 و Wemos D1 mini را انتخاب کنید. روی Next کلیک کنید.
  5. یک بلندگوی هوشمند در لیست پیدا کنید و روی دکمه ویرایش کلیک کنید.
  6. در پنجره ویرایشگر YAML خود، SSID و رمز عبور Wi-Fi را به روز کنید.
  7. سپس کد زیر را دقیقاً زیر captive_portal:uart:  tx_pin: GPIO3  rx_pin: GPIO1  baud_rate: 9600dfplayer:  on_finished_playback:    سپس:      logger.log: «Playback Encryption n:Ey Key: :  – سرویس: dfplayer_next    سپس :      – dfplayer.play_next:  – سرویس: dfplayer_previous    سپس:      – dfplayer.play_previous:  – – سرویس: dfplayer_play    متغیرها:       فایل: mb n فایل;’ – سرویس: dfplayer_play_loop    متغیرها:       فایل: int      loop_: bool     سپس:      – dfplayer.play:          فایل: !lambda ‘return file;’ حلقه: !lambda ‘return loop_;’ – سرویس: dfplayer_play_folder    متغیرها:      پوشه: int      فایل: int    سپس:      – dfplayer.play_folder:          پوشه: !lambda ‘return folder;’ file: !lambda ‘return file;’ – سرویس: dfplayer_play_loop_folder    متغیرها:      پوشه: int    سپس:      – dfplayer.play_folder:           پوشه: !lambda ‘return folder;’ حلقه: true  – سرویس: dfplayer_set_device_tf    سپس:      – dfplayer.set_device: TF_CARD  – سرویس: dfplayer_set_device_usb    سپس:      –   dfplayer . set_var: USB    ولوم: int    سپس:       – dfplayer.set_volume: !lambda ‘return volume;’ – سرویس: dfplayer_set_eq    متغیرها:      پیش‌تنظیم: int    سپس:      – dfplayer.set_eq: !lambda ‘return static_cast(پیش‌تنظیم);’ – سرویس: dfplayer_sleep    سپس:      – dfplayer.sleep  – سرویس: dfplayer_reset    سپس:      – dfplayer.reset  – سرویس: dfplayer_start                                                                                                                     hen:      – dfplayer.pause  – سرویس: dfplayer_stop    سپس:      – dfplayer.stop – سرویس: dfplayer_random    سپس:      – dfplayer.random  – سرویس: dfplayer_volume_up    سپس:      – dfplayer.volume_up – – سرویس: dfplayer_volume_down:-dfplayer.
  8. کلید رمزگذاری موجود خود را جایگزین YourEncryptionKey در کد بالا کنید. همچنین کد زیر را اگر بالای captive_portal است بردارید: text—فقط باید یک بخش api: در کد کامل وجود داشته باشد، در غیر این صورت خطاهای کامپایل را دریافت خواهید کرد.api:  encryption:    key: «YourEncryptionKey»
  9. روی Save و سپس Install کلیک کنید.
  10. گزینه Plug into this computer را انتخاب کنید و منتظر بمانید تا سیستم عامل کامپایل شود.
  11. پس از کامپایل شدن سیستم عامل، روی لینک دانلود پروژه کلیک کنید تا سیستم عامل را دانلود کنید.
  12. روی Open ESPHome Web کلیک کنید و D1 mini خود را با استفاده از کابل micro-USB به رایانه شخصی متصل کنید.
  13. روی Connect کلیک کنید و پورت COM که در آن D1 mini متصل است را انتخاب کنید.
  14. بر روی Install کلیک کنید و سپس روی Choose File کلیک کنید تا سیستم عاملی را که دانلود کرده اید انتخاب کنید.
  15. روی Install کلیک کنید.
  16. پس از نصب سیستم عامل، برای اتصال DFPlayer یا ماژول پخش کننده MP3 خود با برد مینی D1 به نمودار زیر مراجعه کنید.

مینی برد d1 را از esphome انتخاب کنید

uart:
  tx_pin: GPIO3
  rx_pin: GPIO1
  baud_rate: 9600

dfplayer:
  on_finished_playback:
    then:
      logger.log: 'Playback finished event'

api:
  encryption:
    key: "YourEncryptionKey"
  services:
  - service: dfplayer_next
    then:
      - dfplayer.play_next:
  - service: dfplayer_previous
    then:
      - dfplayer.play_previous:
  - service: dfplayer_play
    variables:
      file: int
    then:
      - dfplayer.play: !lambda 'return file;'
  - service: dfplayer_play_loop
    variables:
      file: int
      loop_: bool
    then:
      - dfplayer.play:
          file: !lambda 'return file;'
          loop: !lambda 'return loop_;'
  - service: dfplayer_play_folder
    variables:
      folder: int
      file: int
    then:
      - dfplayer.play_folder:
          folder: !lambda 'return folder;'
          file: !lambda 'return file;'

  - service: dfplayer_play_loop_folder
    variables:
      folder: int
    then:
      - dfplayer.play_folder:
          folder: !lambda 'return folder;'
          loop: true

  - service: dfplayer_set_device_tf
    then:
      - dfplayer.set_device: TF_CARD

  - service: dfplayer_set_device_usb
    then:
      - dfplayer.set_device: USB

  - service: dfplayer_set_volume
    variables:
      volume: int
    then:
      - dfplayer.set_volume: !lambda 'return volume;'
  - service: dfplayer_set_eq
    variables:
      preset: int
    then:
      - dfplayer.set_eq: !lambda 'return static_cast<dfplayer::EqPreset>(preset);'

  - service: dfplayer_sleep
    then:
      - dfplayer.sleep

  - service: dfplayer_reset
    then:
      - dfplayer.reset

  - service: dfplayer_start
    then:
      - dfplayer.start

  - service: dfplayer_pause
    then:
      - dfplayer.pause

  - service: dfplayer_stop
    then:
      - dfplayer.stop

  - service: dfplayer_random
    then:
      - dfplayer.random

  - service: dfplayer_volume_up
    then:
      - dfplayer.volume_up

  - service: dfplayer_volume_down
    then:
      - dfplayer.volume_down

api:
  encryption:
    key: "YourEncryptionKey"

سیستم عامل کامپایل شده را دانلود کنیدdfplayer را به برد d1 mini وصل کنید

به طور پیش فرض، ماژول DFPlayer می تواند دو بلندگوی 3 واتی را اجرا کند که می توانید همانطور که در نمودار نشان داده شده است، به پین ​​های SPK_1 و SPK_2 متصل شوید. ترمینال دیگر هر دو بلندگو به ترمینال GND بین دو ترمینال بلندگو در ماژول DFPlayer متصل می شود.

نکته: برای صدای بلندتر و کامل‌تر از بلندگوی 3 واتی 50 میلی‌متری یا بزرگ‌تر، حتماً یک ماژول تقویت‌کننده مانند PAM8403 بین بلندگو و DFPlayer نصب کنید.

مرحله 2: یک سوئیچ هوشمند بسازید

مینی برد دیگر D1 را بردارید و این مراحل را برای ساخت سوئیچ هوشمند دنبال کنید.

  1. به Home Assistant > ESPHome بروید، روی New Device کلیک کنید و سپس یک پروژه جدید به نام bell-switch ایجاد کنید. مطمئن شوید که مینی برد Wemos D1 و Wemos D1 را انتخاب کنید.
  2. روی دکمه Edit در زیر پروژه bell-switch کلیک کنید و کد زیر را درست زیر captive_portal:switch:  – پلتفرم: gpio     پین: D2    id: relay     نام: «Bell»    نماد: «mdi:bell»    on_turn_on:   -0 delay:   -0. – switch.turn_off: رله
  3. همچنین، SSID و رمز عبور Wi-Fi را به روز کنید.
  4. روی Save و سپس Install کلیک کنید.
  5. روی Plug into this computer کلیک کنید و سپس سیستم عامل را دانلود کنید.
  6. روی Open ESPHome Web کلیک کنید و از نصب کننده وب برای فلش کردن سیستم عامل روی این برد کوچک D1 استفاده کنید.
  7. هنگامی که سیستم عامل نصب شد، می توانید همانطور که در نمودار زیر نشان داده شده است، دو سیم را به این مینی برد D1 لحیم کنید و سپس آن دو سیم را به هر کلید زنگ مکانیکی متصل کنید.
  8. برق را وصل کنید و سوئیچ را تست کنید. خروجی را در سیاهههای مربوط به سوئیچ زنگ خواهید دید.

switch:
  - platform: gpio
    pin: D2
    id: relay
    name: "Bell"
    icon: "mdi:bell"
    on_turn_on:
    - delay: 200ms
    - switch.turn_off: relay

اتصال سوئیچ زنگ هوشمند با کلید مکانیکی

مرحله 3: فایل های MP3 را اضافه کنید

می توانید یک کارت microSD را به رایانه شخصی خود متصل کنید و صداهای زنگ را روی کارت کپی کنید. همچنین می‌توانید هر آهنگ یا دیالوگی را از فیلمی که می‌خواهید پخش شود، وقتی کسی کلید زنگ در را فشار می‌دهد، اضافه کنید.

مطمئن شوید که همه آنها فایل های MP3 هستند و با اعدادی مانند 1، 2، 3، و غیره تغییر نام داده شده اند. به عنوان مثال، 1.mp3 یا 2.mp3. همچنین می توانید از سایت های مبدل MP3 متن به گفتار رایگان برای ایجاد صداهای دلخواه خود برای این زنگ هوشمند استفاده کنید. هنگامی که صداهای MP3 کپی شدند، کارت microSD را به DFPlayer وصل کنید.

در این مرحله می توانید اسپیکر هوشمند و کلید زنگ هوشمند را روشن کنید. می توانید از هر آداپتور 5 ولت و کابل میکرو USB برای تغذیه هر دو دستگاه استفاده کنید. می توانید ماژول را با لمس هر پین IO یا ADKey از DFPlayer به GND آزمایش کنید. پخش فایل های MP3 را خواهید شنید.

مرحله 4: ایجاد اتوماسیون

اتوماسیون به شما این امکان را می دهد که وقتی شخصی دکمه سوئیچ زنگ هوشمند را فشار می دهد، فایل MP3 مورد نظر را فعال یا پخش کنید. این مراحل را دنبال کنید:

  1. در Home Assistant به Settings > Automations & Scenes بروید.
  2. روی Create Automation کلیک کنید و روی Start with an automation خالی کلیک کنید.
  3. روی Add Trigger > Device کلیک کنید و سپس زنگ را جستجو کنید.
  4. Bell in Device را انتخاب کنید و گزینه Bell switch on را از منوی کشویی Trigger انتخاب کنید.
  5. در قسمت Actions، روی Add Action کلیک کنید.
  1. خدمات تماس را انتخاب کنید.
  2. ESPHome: smart_speaker_dfplayer_play را جستجو کنید و آن را انتخاب کنید.
  3. در قسمت فایل، شماره فایل MP3 را که می خواهید پخش کنید تایپ کنید. برای تغییر صدای زنگ در هر زمان می توانید این شماره را تغییر دهید.
  4. اتوماسیون شما باید به شکل زیر باشد:
  5. روی دکمه Save کلیک کنید و سپس هر نامی را با توضیحات به این اتوماسیون بدهید (اختیاری).
  6. روی ذخیره کلیک کنید.

ایجاد اتوماسیون برای زنگ هوشمند که فایل های mp3 را پخش می کند

حالا اگر سوئیچ زنگ هوشمند را فشار دهید، اتوماسیون را فعال می کند و صدا را روی زنگ هوشمندی که ما ساختیم پخش می کند.

علاوه بر این، می‌توانید صداهای اعلان مانند «مخزن پر است. موتور را خاموش کنید» یا «مصرف انرژی بالا شناسایی شده است» را با استفاده از TTS به MP3 ایجاد کنید، و هر زمان که چنین رویدادهایی اتفاق می‌افتد یا بر اساس مقادیر حسگر، برای پخش این صداها خودکار ایجاد کنید. همچنین می‌توانید از راهنمای دقیق ما برای ساخت حسگر سطح آب هوشمند و دستگاه نظارت بر توان هوشمند برای Home Assistant پیروی کنید.

زنگ هوشمند برای خانه هوشمند

زنگ هوشمندی که ما ساخته‌ایم می‌تواند به عنوان یک بلندگوی هوشمند با سرور Home Assistant شما برای پخش هشدارها استفاده شود. همچنین می‌توانید کنترل‌های DFPlayer را روی داشبورد «دستیار خانگی» خود برای پخش، توقف، افزایش/کاهش صدا و غیره اضافه کنید. کافی است یک کارت موجودیت را در داشبورد «دستیار خانگی» اضافه کنید و موجودیت‌های کنترلی DFPlayer را برای اضافه کردن آن‌ها جستجو کنید.

مطلب مرتبط:   7 پروژه جالب که از ESP32 برای تولید ویدیوی ترکیبی استفاده می کنند