فهرست مطالب:
- مرحله 1: Circuit to Interface ESP-01 و Door Chime را ایجاد کنید
- مرحله 2: منبع تغذیه 3.3VDC برای ESP-01
- مرحله 3: چشمک زدن ESP-01
- مرحله 4: اجرای آزمایشی
- مرحله 5: ادغام برد و منبع تغذیه در زنگ
- مرحله 6: لمس نهایی
تصویری: MQTT/Google Home DoorBell با استفاده از ESP-01: 6 مرحله
2024 نویسنده: John Day | [email protected]. آخرین اصلاح شده: 2024-01-30 08:56
آیا تا به حال از پاسخ به مهمانی که زنگ در خانه شما را زده به خاطر این که در قسمتی از خانه هستید که برای شنیدن صدای زنگ خانه دور است ، غافل شده اید؟ مانند زیرزمین ، اتاق خواب درب بسته ، یا شاید شما در حال تماشای تلویزیون یا گوش دادن به موسیقی بودید.
اگر مانند من ، یک یا چند بلندگوی گوگل خانگی در چندین مکان در سراسر خانه خود دارید ، ممکن است این چیزی باشد که شما نیاز دارید.
در این دستورالعمل می خواهم به شما نشان دهم که چگونه مشتری MQTT را به یک زنگ درب موجود اضافه کنید تا با کارگزار MQTT با اعلان به google home / pushbullet ، با استفاده از NodeRED ارتباط برقرار کنید. این پروژه نه سوئیچ زنگ در را و نه زنگ را جایگزین می کند. هنوز از دکمه مکانیکی معمولی برای زنگ درب استفاده می کند.
ما ماژول ESP-01 را به سیستم زنگ 16VAC موجود اضافه می کنیم و قابلیت MQTT را برای ارسال پیام به کارگزار MQTT (هنگامی که کلید زنگ در فشار داده می شود) اضافه می کنیم. کارگزار MQTT پیام را به NodeRED منتقل می کند. NodeRED پس از دریافت پیام MQTT ، اعلان را به چندین دستگاه خانگی Google ارسال می کند و همچنین به صورت اختیاری پیام را به تلفن همراه/مرورگر از طریق pushbullet ارسال می کند.
من علاقه زیادی به اتوماسیون DIY خانه دارم و به آرامی IOT را به خانه خود اضافه می کنم. خانه Google یکی از عملکردهای اصلی در اتوماسیون خانه من بوده است.
پسرم ایده این پروژه را به من داد وقتی از من پرسید که آیا می توانم هربار که کسی زنگ خانه ما را به خانه می زند گوگل را اعلام کند. ما 2 طبقه داریم + خانه زیرزمین را به پایان می رسانیم ، و بسیاری از اوقات وقتی در زیرزمین خانه یا طبقه بالای اتاق خواب با در بسته یا با تلویزیون روشن هستیم صدای نغمه را نمی شنویم.
ما 4 خانه Google google در خانه خود داریم که در مکان ها/اتاق های مختلف قرار گرفته اند و با استفاده از خانه های گوگل برای اعلام زنگ خانه ، فوراً در هر نقطه از خانه می دانیم که کسی زنگ خانه را زده است.
در خانه من ، از RaspberryPi ZeroW برای میزبانی سرور Mosquitto MQTT و NodeRED استفاده می کنم. بیش از یک سال است که بدون هیچ مشکلی اجرا می شود.
منابع:
- نمودارهای سیم کشی زنگ در:
- بروکر Mosquitto MQTT را روی Raspberry Pi نصب کنید:
- NodeRED را روی Raspberry Pi نصب کنید:
مرحله 1: Circuit to Interface ESP-01 و Door Chime را ایجاد کنید
اولین قدم ایجاد مداری است که رابط بین ESP-01 و Door Chime باشد. زنگ معمولی هنگامی که 16VAC بین پین های "TRANS (سابق)" و "FRONT/REAR" وجود دارد ، همانطور که در اولین عکس من نشان داده شده است ، فعال می شود. هنگامی که دکمه زنگ خانه فشار داده می شود ، ولتاژ روی آن پین ها ظاهر می شود.
مداری که طراحی کردم این است که این سیگنال 16VAC را حس کرده و آن را به سیگنال دیجیتال 3.3VDC تبدیل کند. این یک یکسو کننده اصلی نیمه موج است که توسط D1 و C1 تشکیل شده است. در این شرایط نیازی به استفاده از یکسو کننده کامل موج نداریم زیرا بار بسیار کمی در خروجی DC وجود دارد و ما را در املاک کمی در برد ذخیره می کند. من می خواهم تخته را تا آنجا که می توانم کم کنم تا بتوانم آن را در زنگ موجود خود قرار دهم.
R1 و R2 تقسیم کننده ولتاژ را تشکیل می دهند تا اوج ولتاژ DC را به حدود 3.3 ولت کاهش دهند.
R3 ، TR1 و R4 یک اینورتر را برای ارائه منطق معکوس برای ESP-01 GPIO-2 تشکیل می دهند. این امر برای ارائه منطق HIGH در هنگام راه اندازی (با R4 و R5 کششی) برای ESP-01 برای شروع از فلاش ضروری است. وقتی دکمه زنگ در فشار داده می شود ، منطقی LOW را به GPIO-2 ارائه می دهد. TR1 می تواند هر ترانزیستور NPN قدرت کوچک باشد ، در مورد من از 2N3904 استفاده کردم.
V1 منبع تغذیه 3.3VDC است که با استفاده از شارژر تلفن همراه 5 ولت قدیمی همراه با تنظیم کننده AMS1117 3.3VDC ساخته شده است که در مرحله بعد نشان خواهم داد.
برای سوکت ESP-01 ، من از یک سوکت IC استاندارد 8 پین استفاده می کنم و پل های پلاستیکی را که فاصله بین ردیف ها ایجاد می کند ، برش می دهم و سپس 2 ردیف را به هم می چسبانم.
مرحله 2: منبع تغذیه 3.3VDC برای ESP-01
در این مرحله ، ما منبع تغذیه 3.3VDC را برای ESP-01 خواهیم ساخت. من چند آداپتور شارژر USB 500mA و 700mA 5VDC قدیمی دارم که برای این پروژه دوباره در نظر گرفتم. ما همچنین به رگولاتور 3.3VDC نیاز داریم تا ولتاژ 5 ولت را به 3.3 ولت کاهش دهد ، برای این کار از یک ماژول تنظیم کننده ارزان قیمت از پیش ساخته AMS1117 که از ebay خریداری کرده ام ، استفاده می کنم. می توانید "ماژول 3.3V AMS1117" را جستجو کرده و آنچه برای شما مناسب است را بیابید.
این ماژول تنظیم کننده 3.3V بسیار کوچک است و من می توانم آن را در داخل محفظه شارژر USB 5V اصلی قرار دهم تا از اتصال کوتاه احتمالی ایمن تر شود. من شاخک های دیواری AC را از ماژول شارژر جدا کردم و دو کابل را که از دیوار پشت صدای زنگ موجود من به 120VAC متصل می شود ، جایگزین کردم. اما تا زمانی که آزمایش مرحله بعدی را انجام ندهیم ، شاخک های این مرحله را حذف نکنید.
اگر یک پریز دیواری در این نزدیکی هست ، یا اگر از سیم کشی منبع تغذیه مستقیم به سیم کشی خانه راحت نیستید ، می توانید به صورت اختیاری فقط منبع تغذیه اصلاح شده را به پریز دیواری متصل کرده و کابل را به صدا در آورید ، هر چند ممکن است مانند اتصال مستقیم آن به سیم کشی خانه تمیز به نظر نرسد.
یکی از عکس های من را ببینید تا ببینید پشت سیم زنگ من سیم کشی 120VAC و ترانس 16VAC برای زنگ وجود دارد.
سپس خروجی از رگولاتور 3.3V مطابق مرحله قبل به برد رابط ESP-01 متصل می شود.
مرحله 3: چشمک زدن ESP-01
در این مرحله ، ESP-01 را با طرح آردوینو فلش می کنیم. اگر هرگز ماژول ESP-01 را فلش نکرده اید ، می توانید دستورالعمل من را برای شروع دنبال کنید:
می توانید طرح من را در صفحه github من پیدا کنید:
در طرح ، حداقل باید اطلاعات زیر مربوط به شبکه/راه اندازی خانه خود را تغییر دهید:
#dequine MQTT_SERVER "10.0.0.30" const char* ssid1 = "SSID"؛ const char* password1 = "MYSSIDpassword"؛ const char* ssid2 = "SSID1"؛ const char* password2 = "MYSSIDpassword"؛
در شبکه خانگی من ، 2 نقطه دسترسی متفاوت دارم که 2 SSID متفاوت را پخش می کند ، و این طرح در صورت از بین رفتن ارتباط با AP فعلی ، با اتصال به SSID بعدی افزونگی را امکان پذیر می کند. اگر فقط یک SSID دارید ، هر دو ssid1 و ssid2 را با یک مقدار پر کنید.
پس از انجام اصلاح ، طرح را در ESP-01 بارگذاری کرده و ESP-01 را به برد رابط وصل کنید.
مرحله 4: اجرای آزمایشی
از مرحله 1 ما برد رابط ESP-01 را ساخته ایم و از مرحله 2 منبع تغذیه 3.3 ولت را برای برد ESP-01 داریم. اکنون خروجی منبع تغذیه را مطابق نمودار مدار ، که به صورت V1 نشان داده شده است ، به برد وصل می کنیم.
اکنون مرحله بعدی اتصال پایانه های زنگ هشدار Trans/Door به اتصالات برد رابط است که به عنوان "پایانه های زنگ درب" نشان داده شده است. از آنجایی که زنگ من روی دیوار نصب شده است ، برای اجرای آزمایشی ، من موقتاً یک جفت کابل بلند را از پایانه های زنگ به تخته می برم تا بتوانم منبع تغذیه را وصل کنم.
برای آزمایش اینکه آیا روش ضدعفونی ما کار می کند ، ساده ترین کار این است که پیام های MQTT را در شبکه کنترل کنیم. برای انجام این کار ، باید یک جلسه SSH را برای کارگزار پشه باز کنید و دستور زیر را صادر کنید:
mosquitto_sub -v -t '#'
دستور بالا به ما اجازه می دهد تا همه پیامهای MQTT را که به کارگزار وارد می شود مشاهده کنیم.
اکنون منبع تغذیه را به پریز وصل کنید ، و اگر همه چیز کار کرد ، در عرض چند ثانیه حداقل باید پیام MQTT زیر را مشاهده کنید:
stat/DoorBell/LWT آنلاین
حالا بیرون بروید و زنگ خانه خود را بزنید و این پیام را ببینید:
tele/DoorBell ON
اگر آن پیام ها را مشاهده کردید ، پروژه شما موفقیت آمیز است.
من همچنین چندین موضوع مفید MQTT را در طرح قرار دادم که می توانید از آنها استفاده کنید:
"stat/DoorBellInfo": این پیام هر دقیقه برای ارائه زمان به روز و سایر اطلاعات ارسال می شود.
"cmnd/DoorBellInfo": ESP-01 در صورت دریافت این مبحث با مقدار '1' (ascii = 49) "cmnd/DoorBellCPUrestart" ، اطلاعاتی را برای شما ارسال می کند: اگر این موضوع را با مقدار "1 دریافت کند ، ESP-01 راه اندازی مجدد می شود. '(ascii = 49) "cmnd/DoorBellCPUreset": ESP-01 در صورت دریافت این مبحث با مقدار "1" بازنشانی می شود (ascii = 49)
"tele/FrontDoorBell": ESP-01 در صورت فشار دادن زنگ در این قسمت ، پیام با مقدار "ON" ارسال می کند
مرحله 5: ادغام برد و منبع تغذیه در زنگ
اکنون که آزمایش آزمایشی موفقیت آمیز ما انجام شده است ، باید برد و منبع تغذیه را در داخل زنگ خانه خود مونتاژ کنیم (در صورت امکان). در زنگ موجود من ، یک محفظه خالی وجود دارد که من توانستم آن را باز کرده و منبع تغذیه را در آن فضا قرار دهم. تخته ESP-01 در آن فضای کوچک قرار نمی گیرد ، اما هنوز هم در داخل جعبه زنگ کلی قرار می گیرد. من فقط از یک نوار ضخیم دو طرفه برای نصب برد رابط ESP-01 استفاده کردم.
اکنون می توانیم شاخه های فلزی را از شارژر USB خود خارج کرده و آنها را با کابل ضخیم تری که می توانیم به سیم کشی خانه متصل کنیم ، جایگزین کنیم. اطمینان حاصل کنید که قطع کننده مدار خود را که برق مدار زنگ را تامین می کند ، خاموش کنید.
اگر فضای کافی برای قرار دادن پروژه ما در زنگ درب موجود وجود ندارد ، باید آن را در یک جعبه جداگانه قرار داده و نزدیک زنگ درب نصب کنید.
مرحله 6: لمس نهایی
اکنون که پروژه را کار کرده ایم و می توانیم پیام MQTT را برای کارگزار منتشر کنیم ، گام بعدی این است که به این فکر کنیم که با آن چه کنیم.
در پروژه خود ، من از Node-RED برای گوش دادن/مشترک شدن در موضوع MQTT زنگ درب و اعلان چندین بلندگوی google home استفاده می کنم. علاوه بر این ، من جریان را به یک گره pushbullet وصل کردم تا اعلان ها را به تلفن اندرویدی خود ارسال کنم ، بنابراین می دانم آیا کسی زنگ خانه را می زند ، حتی اگر در خانه نیستم. اعلان Pushbullet برای برخی مفید نیست ، اما چندین بار برای من بسیار مفید بوده است ، همراه با دوربین فیلمبرداری در ایوان جلوی من ، می توانم ببینم چه کسی برای تحویل کالا آمده است (معمولاً زنگ در می زند). من نمی توانم به ویژگی تشخیص حرکت دوربین به دلیل تداخل مختلف ، به ویژه حرکت سایه درختان ، تکیه کنم.
تصویر روی این مرحله ، جریان Node-RED را برای انجام این کار نشان می دهد. همچنین می توانید جریان را از صفحه github من در Node-RED خود بچسبانید:
اعلام خانه Google تنها یک نمونه برای این پروژه است ، اما من فکر می کنم مفیدترین و کاربردی ترین است. شما همیشه می توانید با سایر شنونده های MQTT ارتباط برقرار کنید ، یا حتی از IFTTT برای رانندگی دستگاه های دیگر در هنگام فشار دادن زنگ درب استفاده کنید.
خوش بگذره…
توصیه شده:
چگونه می توان با استفاده از ESP32 و ESP8266 چندین مکالمه ESP از طریق ESP-NOW انجام داد: 8 مرحله
چگونه می توان چندین ESP را از طریق ESP-NOW با استفاده از ESP32 و ESP8266 ایجاد کرد: در پروژه در حال انجام من ، به چندین ESP نیاز دارم تا بدون روتر با یکدیگر صحبت کنیم. برای انجام این کار ، از ESP-NOW برای برقراری ارتباط بی سیم با یکدیگر بدون روتر در ESP استفاده می کنم
MQTT/Google Home Flood/Water WIFI Sensor with ESP-01: 7 Step
MQTT/Google Home Flood/Water WIFI Sensor With ESP-01: در این قسمت آموزشی ، نحوه ساخت سنسور wifi سیل/آب را با حداقل هزینه به شما نشان خواهم داد. کل پروژه برای قطعاتی که از ebay و قطعات یدکی موجود دارم کمتر از 8 دلار برای من هزینه دارد. در این پروژه ، ما از ESP-01 برای ارائه Wif استفاده خواهیم کرد
شروع کار با Esp 8266 Esp-01 با Arduino IDE - نصب بردهای Esp در Arduino Ide و برنامه نویسی Esp: 4 مرحله
شروع کار با Esp 8266 Esp-01 با Arduino IDE | نصب بردهای Esp در Arduino Ide and Programming Esp: در این دستورالعمل نحوه نصب بردهای esp8266 در Arduino IDE و نحوه برنامه نویسی esp-01 و بارگذاری کد در آن را یاد می گیریم. از آنجا که تخته های esp بسیار محبوب هستند ، بنابراین به فکر ایجاد دستورالعمل های آموزشی هستم این و اکثر مردم با مشکل روبرو هستند
نحوه استفاده از Wemos ESP-Wroom-02 D1 Mini WiFi Module ESP8266 + 18650 با استفاده از Blynk: 10 مرحله
نحوه استفاده از Wemos ESP-Wroom-02 D1 Mini WiFi Module ESP8266 + 18650 با استفاده از Blynk: مشخصات: سازگار با یکپارچه سازی سیستم شارژ nodemcu 18650 در هنگام شارژ منبع تغذیه کنترل SMT می توان از LED نشانگر (سبز به معنی قرمز کامل به معنی شارژ) استفاده کرد اتصال دهنده می تواند برای حالت خواب استفاده شود · 1 افزودن
ESP8266 را از Google Home با استفاده از GBridge.io کنترل کنید: 4 مرحله
ESP8266 را از Google Home با استفاده از GBridge.io کنترل کنید: روش های متفاوتی برای کنترل ESP8266 از Google Home وجود دارد ، اما اکثر راه حل هایی که می توانید در اینترنت پیدا کنید از IFTT استفاده می کنند ، که برای راه اندازی کاربر پسند نیست. gBridge.io اجازه می دهد تا فرآیند را آسان تر و یکپارچه عمل کنید. در این راهنمای نحوه انجام