فهرست مطالب:
- مرحله 1: پشتیبان گیری از طریق WiFi و MQTT
- مرحله 2: فرستنده از راه دور
- مرحله 3: گیرنده - سخت افزار (esp8266 و Raspberry Pi)
- مرحله 4: گیرنده - نرم افزار (سریال ، Node Red ، MQTT)
تصویری: ESP-NOW Automation Home Esp8266 Raspberry Pi MQTT: 4 مرحله
2024 نویسنده: John Day | [email protected]. آخرین اصلاح شده: 2024-01-30 08:56
در این دستورالعمل به شما نشان می دهم که چگونه از ESP-NOW در اتوماسیون خانه خود استفاده کردم. در شماتیک می توانید جریانهای ارتباطی را مشاهده کنید
به شما نشان می دهم:
- نحوه کار فرستنده
- گیرنده چگونه کار می کند
- نحوه ارتباط سریال با رزبری پای چگونه کار می کند
من نحوه عملکرد MQTT و اتوماسیون خانه را نشان نمی دهم ، شما می توانید دستورالعمل های خوب دیگری برای آن پیدا کنید.
اعتبار: این دستورالعمل با الهام از:
فیلم شماره 172 توسط آندریاس اسپیس
www.esploradores.com/practica-6-conexion-es…
مرحله 1: پشتیبان گیری از طریق WiFi و MQTT
من متوجه شدم که ESP-NOW بسیار سریع و کاملاً قابل اعتماد است ، اما گاهی اوقات شکست می خورد. در برنامه من یک پشتیبان از طریق اتصال معمولی WiFi و MQTT اضافه کردم.
مرحله 2: فرستنده از راه دور
در طرح اول نحوه عملکرد برنامه فرستنده را مشاهده می کنید:
- esp8266 با روشن شدن مجدد یا راه اندازی مجدد شروع می شود
- ESP-NOW راه اندازی شده است
- ماژول ESP-NOW را برای مدت زمان مشخص ارسال می کند
-
این ماژول بررسی می کند که آیا پیام ESP-NOW توسط گیرنده در یک عملکرد فراخوانی دریافت شده است یا خیر.
- اگر پیام ESP-NOW دریافت شد ، ماژول در یک خواب عمیق کم قدرت قرار می گیرد
- اگر پیام ESP-NOW دریافت نشد ، ماژول اتصال WiFi و اتصال MQTT را به عنوان اتصال پشتیبان شروع می کند.
برنامه فرستنده در Github من (Master_sender.ino) است. این برنامه ها هم موضوع و هم پیام مربوط به اتوماسیون MQTT خانه را در یک پیام ترکیبی ESP-NOW ، با علامت '&' برای تقسیم آسان در گیرنده ، ارسال می کند.
من دو ریموت/فرستنده مختلف ساختم:
فرستنده 1: esp8266 در خواب عمیق است و با تنظیم مجدد فعال می شود. چراغ در دکمه روشن می شود و هنگامی که ماژول تمام می شود ، کم نور می شود. اگر ولتاژ باتری پایین باشد ، چراغ چشمک می زند. اگر ESP-NOW شکست خورد ، led قبل از تغییر به اتصالات WiFi/MQTT چشمک می زند. esp8266 از باتری LiPo با تنظیم کننده ولتاژ HT7333 تا 3.3V تغذیه می کند
فرستنده 2: esp8266 خاموش است و با فشار دادن دکمه تغذیه می شود. معمولاً اتصال ESP-NOW پس از کلیک روی دکمه انجام می شود. منبع تغذیه esp8266 مستقیماً از باتری LiPo است. من نمی دانم که آیا esp8266 در ولتاژ بالای باتری کاملاً شارژ (تا 4.2 ولت) هنگامی که فقط 100 میلی ثانیه کار می کند آسیب می بیند یا خیر. بالاتر از مشخصات (3.0 - 3.6V) است.
توجه: اگر قدرت باتری کم است ، ESP-NOW خراب می شود.
مرحله 3: گیرنده - سخت افزار (esp8266 و Raspberry Pi)
توصیف گیرنده به دو قسمت تقسیم می شود:
- سخت افزار
- نرم افزار
سخت افزار
گیرنده esp-01 به Raspberry Pi Zero من متصل است که سیستم اتوماسیون خانه (Openhab2) و Node Red را اجرا می کند.
در شماتیک اتصالات ساده نشان داده شده است:
- RX از esp-01 تا TX از RasPi
- TX از esp-01 تا RX از RasPi
- GND به GND
- esp-01 VCC از پین 3.3 ولت Raspi تغذیه می کند
- در esp-01 هر دو RST و CH_PD بالا کشیده می شوند.
من یک رابط رابط ایجاد کردم تا بتوان آن را به راحتی نصب کرد
در یک تصویر می توانید اتصالات سیم من را به Raspberry Pi 3 (که دارای pinout مشابه است ، اما من برای اتصال به CH_PD از پین 3.3V دیگر استفاده کردم) مشاهده کنید.
esp-01 طبق دستورالعمل دیگر من برنامه ریزی شده بود (مرحله 3 را ببینید).
مرحله 4: گیرنده - نرم افزار (سریال ، Node Red ، MQTT)
برنامه روی esp8266
برنامه گیرنده esp-01 در Github من (Master_sender.ino) است. این برنامه واقعاً ساده است ، فقط پیام دریافتی ESP-NOW را بر روی پورت سریال به رزبری پای چاپ می کند.
درگاه سریال
در Raspberry Pi ، شما باید Serial Port (در raspbian ، اجرای sudo raspi-config) را برای ارتباط سریال معمولی فعال کنید.
نام پورت سریال:
- Raspberry Pi Zero: /dev /ttyAMA0
- رزبری پای 3: /dev /ttyS0
با اجرای 'dmesg |. می توانید پورت سریال را بررسی کنید grep tty 'یا' ls /dev '
گره قرمز
در Node Red ، Node ورودی سریال را انتخاب کرده و پورت سریال را تنظیم کنید (تصاویر پیوست را ببینید). به Baudrate اتصال سریال توجه کنید ، این باید با baudrate مطابق برنامه در esp8266 مطابقت داشته باشد.
خروجی گره سریال توسط یک گره تابع تبدیل می شود که پیام را در علامت '&' تقسیم می کند و msg.topic و msg.payload را تنظیم می کند. خروجی تابع به گره خروجی mqtt منتقل می شود که پیام را به سرور MQTT ارسال می کند. توجه داشته باشید که زمینه موضوع گره mqtt خالی است ، زیرا موضوع در پیام تنظیم شده است.
توصیه شده:
Wifi Smart Switch ESP8266 با Alexa و Google Home Automation کار می کند: 7 مرحله
Wifi Smart Switch ESP8266 با Alexa و Google Home Automation کار می کند: در دنیای جهانی شدن ، همه از فناوری جدید و هوشمند تمایل دارند. سوئیچ هوشمند Wi -Fi ، زندگی شما را هوشمندتر و راحت تر می کند
شروع کار با 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 بسیار محبوب هستند ، بنابراین به فکر ایجاد دستورالعمل های آموزشی هستم این و اکثر مردم با مشکل روبرو هستند
سیستم عامل Sonoff B1 Home Automation Openhab Google Home: 3 مرحله
سیستم عامل Sonoff B1 Firmware Home Automation Openhab Google Home: من سیستم عامل Tasmota را برای کلیدهای Sonoff خود دوست دارم. اما واقعاً از سیستم عامل Tasmota در Sonoff-B1 من راضی نبود. من کاملاً موفق به ادغام آن در Openhab و کنترل آن از طریق Google Home نشدم. بنابراین شرکت خود را نوشتم
(DIY) نحوه ساخت برد ESP8266 Ultra Mini & Simple Relay Home Automation Board: 17 مرحله
(DIY) نحوه ساخت تخته اتوماسیون خانگی ESP8266 Ultra Mini & Simple Relay: سلام به همگی ، امروز به شما اطلاع می دهم ، چگونه می توان یک تخته رله Mini Esp 12 Wifi را با ابعاد تنها 3.9cm x 3.9 سانتی متر ساخت! این برد دارای ویژگی های بسیار جالبی است که هر عاشق فناوری دوست دارد داشته باشد. در مراحل بعدی همه فایلها را گنجانده ام. این صفحه
DIY IoT Lamp for Home Automation -- ESP8266 آموزش: 13 مرحله (همراه با تصاویر)
DIY IoT Lamp for Home Automation || آموزش ESP8266: در این آموزش ما قصد داریم یک لامپ هوشمند متصل به اینترنت بسازیم. این به اینترنت چیزها عمیق می شود و دنیایی از اتوماسیون خانه را باز می کند! چراغ وای فای متصل است و برای داشتن یک پروتکل پیام باز ساخته شده است. این بدان معناست که می توانید