فهرست مطالب:

NodeMCU - مثال اصلی MQTT: 4 مرحله
NodeMCU - مثال اصلی MQTT: 4 مرحله

تصویری: NodeMCU - مثال اصلی MQTT: 4 مرحله

تصویری: NodeMCU - مثال اصلی MQTT: 4 مرحله
تصویری: How to use ESP32 WiFi and Bluetooth with Arduino IDE full details with examples and code 2024, جولای
Anonim
Image
Image

این درس کاربرد اصلی پروتکل MQTT را در برد NodeMCU نشان می دهد. ما از MQTTBox به عنوان سرویس گیرنده MQTT در اینجا استفاده می کنیم و از NodeMCU برای تکمیل عملیات زیر استفاده خواهیم کرد:

هر دو ثانیه "سلام جهان" را به موضوع "outTopic" منتشر کنید. در موضوع "inTopic" مشترک شوید ، پیامهای دریافتی را چاپ کنید. فرض می کند که بارهای دریافتی رشته ای هستند نه دوتایی. اگر پیام مشترک "1" است ، چراغ را روشن کنید onboards LED. اگر پیام عضویت "0" است ، LED داخلی را خاموش کنید.

آماده سازی: Osoyoo NodeMCU x1

کابل USB x1

PC x1

Arduino IDE (نسخه 1.6.4+)

NodeMCU را از طریق کابل USB به رایانه وصل کنید.

مرحله 1: نصب کتابخانه

نصب کتابخانه
نصب کتابخانه
نصب کتابخانه
نصب کتابخانه

PubSubClientlibrary را نصب کنید

برای برقراری ارتباط با کارگزار MQTT نیاز به نصب کتابخانه نقطه پایانی MQTT (PubSubClient) داریم ، لطفاً کتابخانه را از لینک زیر بارگیری کنید:

فایل بالا را از حالت فشرده خارج کنید ، پوشه فشرده نشده را به پوشه کتابخانه Arduino IDE منتقل کنید.

IED Arduino را باز کنید ، می توانید "pubsubclient" را در ستون "Examples" پیدا کنید.

MQTT Client را نصب کنید:

ما از MQTTBox به عنوان سرویس گیرنده MQTT استفاده خواهیم کرد. لطفاً از: https://workswithweb.com/html/mqttbox/installing_ap… بارگیری کنید

مرحله 2: کد

کد
کد
کد
کد

Arduino IDE–> File–> Example–> pubsubclient–> mqtt esp8266 را باز کنید ، کد نمونه را دریافت خواهید کرد.

کد را متناسب با تنظیمات WiFi و MQTT خود به عنوان عملیات زیر ویرایش کنید: 1) پیکربندی نقطه اتصال: خط کد زیر را پیدا کنید ، ssid و رمز عبور خود را در آنجا قرار دهید.

const char* ssid = "your_hotspot_ssid"؛ const char* password = "your_hotspot_password"؛

2) تنظیم آدرس سرور MQTT ، در اینجا از کارگزار MQTT رایگان "broker.mqtt-dashboard.com" استفاده می کنیم. می توانید از URL کارگزار MQTT یا آدرس IP خود برای تعیین مقدار mqtt_server استفاده کنید. همچنین می توانید از برخی سرورهای معروف MQTT رایگان برای آزمایش پروژه مانند "broker.mqtt-dashboard.com" ، "iot.eclipse.org" و غیره استفاده کنید.

const char* mqtt_server = "broker.mqtt-dashboard.com"؛

3) تنظیمات مشتری MQTT اگر کارگزار MQTT شما به شناسه مشتری ، نام کاربری و رمز عبور احتیاج دارد ، باید

تغییر دادن

if (client.connect (clientId.c_str ()))

به

if (client.connect (clientId، userName، passWord)) // clientId/userName/passWord خود را در اینجا قرار دهید

اگر نه ، فقط آنها را به صورت پیش فرض نگه دارید. پس از انجام این کار ، نوع برد مربوطه و نوع پورت را مانند زیر انتخاب کنید ، سپس طرح را در NodeMCU بارگذاری کنید.

  • صفحه:”NodeMCU 0.9 (ماژول ESP-12)”
  • فرکانس پردازنده:”80 مگاهرتز” اندازه فلش:”4M (3M SPIFFS)”
  • سرعت بارگذاری:”115200
  • پورت: پورت سریال خود را برای NodeMCU خود انتخاب کنید

مرحله 3: پیکربندی مشتری MQTT (MQTTBOX)

پیکربندی مشتری MQTT (MQTTBOX)
پیکربندی مشتری MQTT (MQTTBOX)
پیکربندی مشتری MQTT (MQTTBOX)
پیکربندی مشتری MQTT (MQTTBOX)
پیکربندی مشتری MQTT (MQTTBOX)
پیکربندی مشتری MQTT (MQTTBOX)
پیکربندی مشتری MQTT (MQTTBOX)
پیکربندی مشتری MQTT (MQTTBOX)

در این مرحله ، نحوه ایجاد یک مشتری MQTT در MQTTBox را نشان خواهیم داد.

MQTTBox خود را باز کرده و روی دکمه آبی کلیک کنید تا یک سرویس گیرنده MQTT جدید اضافه کنید.

تنظیمات مشتری MQTT را به صورت زیر پیکربندی کنید:

  • نام مشتری MQTT - هر نامی را که دوست دارید انتخاب کنید
  • پروتکل - "mqtt/tcp" را انتخاب کنید
  • میزبان - "mqtt_server" خود را در این ستون وارد کنید ، مطمئن شوید که طرح شما یکسان است. (ما از "broker.mqtt-dashboard.com" در اینجا استفاده می کنیم)
  • سایر تنظیمات را به صورت پیش فرض نگه دارید
  • برای ذخیره تغییرات خود کلیک کنید.

در مرحله بعد ، به طور خودکار وارد صفحه جدید می شوید. اگر همه پیکربندی های بالا صحیح باشد ، "Not Connected" به "Connected" تغییر می کند ، نام مشتری MQTT و نام میزبان شما در بالای این صفحه نمایش داده می شود.

تنظیم موضوع: مطمئن شوید موضوع انتشار مشتری MQTT شما با موضوع مشترک طرح طرح آردوینو شما (inTopic اینجا باشد. اطمینان حاصل کنید که موضوع مشترک مشتری MQTT شما با موضوع انتشار طرح آردوینو یکسان است (خارج از موضوع اینجا).

مرحله 4: نتیجه اجرای برنامه

نتیجه اجرای برنامه
نتیجه اجرای برنامه
نتیجه اجرای برنامه
نتیجه اجرای برنامه
نتیجه اجرای برنامه
نتیجه اجرای برنامه
نتیجه اجرای برنامه
نتیجه اجرای برنامه

هنگامی که بارگذاری انجام شد ، اگر نام وای فای و تنظیمات رمز عبور خوب باشد و کارگزار MQTT متصل باشد ، Serial Monitor را باز کنید ، پیام انتشار "سلام جهان" را در مانیتور سریال مشاهده خواهید کرد.

سپس سرویس گیرنده MQTT را باز کرده و محموله "1" را برای موضوع منتشر کنید ، این NodeMCU با عضویت در "inTopic" این پیامها را دریافت می کند و LED روشن می شود.

بارگذاری "0" را در این موضوع منتشر کنید ، چراغ LED NodeMCU خاموش می شود.

توصیه شده: