
جدول المحتويات:
2025 مؤلف: John Day | [email protected]. آخر تعديل: 2025-01-23 12:54


سيوضح هذا الدرس استخدام بروتوكول MQTT الأساسي على لوحة NodeMCU ، ونستخدم MQTTBox كعميل MQTT هنا ، وسنستخدم NodeMCU لإكمال العمليات التالية:
انشر "hello world" في موضوع "outTopic" كل ثانيتين ، واشترك في الموضوع "inTopic" واطبع أي رسائل مستلمة ، وتفترض أن الحمولات المستلمة هي سلاسل وليست ثنائيات ، وإذا كانت الرسالة المشتركة "1" ، فاضغط على LED onboards. قم بإيقاف تشغيل مؤشر LED الموجود على اللوحة إذا كانت رسالة الاشتراك "0".
التحضير: Osoyoo NodeMCU x1
كبل USB x1
كمبيوتر x1
Arduino IDE (الإصدار 1.6.4+)
قم بتوصيل NodeMCU بجهاز الكمبيوتر عبر كابل USB.
الخطوة 1: تثبيت المكتبة


قم بتثبيت PubSubClientlibrary
نحتاج إلى تثبيت مكتبة نقطة النهاية MQTT (PubSubClient) للتواصل مع وسيط MQTT ، يرجى تنزيل المكتبة من الرابط التالي: https://osoyoo.com/wp-content/uploads/samplecode/pu …
قم بفك ضغط الملف أعلاه ، وانقل المجلد الذي تم فك ضغطه إلى مجلد مكتبة Arduino IDE.
افتح Arduino IED ، يمكنك العثور على "pubsubclient" في عمود "أمثلة".
تثبيت عميل MQTT:
سوف نستخدم MQTTBox كعميل MQTT. يرجى التنزيل من: https://workswithweb.com/html/mqttbox/installing_ap …
الخطوة 2: الكود


افتح Arduino IDE–> File–> Example–> pubsubclient–> mqtt esp8266 ، ستحصل على نموذج التعليمات البرمجية.
قم بتحرير الكود ليناسب إعدادات WiFi و MQTT الخاصة بك على النحو التالي: 1) Hotspot Configration: ابحث عن سطر الكود أدناه ، ضع 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 يتطلب مصادقة معرّف العميل واسم المستخدم وكلمة المرور ، فأنت بحاجة إلى
يتغيرون
إذا (client.connect (clientId.c_str ()))
إلى
if (client.connect (clientId، userName، passWord)) // ضع clientId / userName / passWord هنا
إذا لم يكن الأمر كذلك ، فقط احتفظ بها كإعداد افتراضي ، بعد القيام بذلك ، اختر نوع اللوحة المقابلة ونوع المنفذ كما هو موضح أدناه ، ثم قم بتحميل الرسم التخطيطي إلى NodeMCU.
- اللوحة: "NodeMCU 0.9 (وحدة ESP-12)"
- تردد وحدة المعالجة المركزية: "80 ميجا هرتز" حجم الفلاش: "4 ميجا (3 ميجا SPIFFS)"
- سرعة الرفع: 115200
- المنفذ: اختر المنفذ التسلسلي الخاص بك لـ NodeMCU
الخطوة 3: تكوين عميل MQTT (MQTTBOX)




في هذه الخطوة ، سنوضح كيفية إنشاء عميل MQTT على MQTTBox.
افتح MQTTBox الخاص بك وانقر فوق الزر الأزرق لإضافة عميل MQTT جديد.
قم بتكوين إعدادات العميل MQTT على النحو التالي:
- MQTT Client Name - اختر أي اسم تريده
- البروتوكول - اختر "mqtt / tcp"
- المضيف - اكتب "mqtt_server" في هذا العمود ، وتأكد من أنه مطابق للرسم. (نستخدم "broker.mqtt-dashboard.com" هنا)
- احتفظ بالإعدادات الأخرى كإعدادات افتراضية
- انقر لحفظ التغييرات الخاصة بك.
بعد ذلك ، ستدخل الصفحة الجديدة تلقائيًا. إذا كان كل التكوين أعلاه صحيحًا ، فسيتغير "غير متصل" إلى "متصل" ، وسيتم عرض اسم عميل MQTT واسم المضيف أعلى هذه الصفحة.
إعداد الموضوع: تأكد من أن موضوع نشر عميل MQTT الخاص بك هو نفس موضوع الاشتراك في رسم Arduino الخاص بك (inTopic هنا). تأكد من أن موضوع اشتراك عميل MQTT الخاص بك هو نفسه موضوع نشر رسم Arduino الخاص بك (خارج الموضوع هنا).
الخطوة 4: نتيجة تشغيل البرنامج




بمجرد الانتهاء من التحميل ، إذا كان اسم نقطة اتصال wifi وإعداد كلمة المرور على ما يرام ، وكان وسيط MQTT متصلاً ، فافتح Serial Monitor ، وسترى رسالة النشر "hello world" على الشاشة التسلسلية.
ثم افتح عميل MQTT وانشر الحمولة "1" للموضوع ، وستتلقى NodeMCU هذه الرسائل من خلال الاشتراك في "inTopic" ، وسيضيء مؤشر LED.
نشر الحمولة "0" لهذا الموضوع ، سيتم إيقاف تشغيل NodeMCU LED.
موصى به:
كيفية إنشاء موقع ويب أساسي باستخدام المفكرة: 4 خطوات

كيفية إنشاء موقع ويب أساسي باستخدام المفكرة: هل تساءل أي شخص & quot؛ كيف يمكنني إنشاء موقع ويب من برنامج الكتابة الأساسي؟ & quot؛ حسنًا ، من الواضح ، ليس تحديدًا … على أي حال ، سأوضح لك هنا كيفية إنشاء BASIC الموقع باستخدام المفكرة فقط
إنشاء تطبيق "Hello World" أساسي من Scratch in Flutter: 7 خطوات

قم بإنشاء تطبيق "Hello World" أساسي من Scratch in Flutter: مرحبًا يا شباب ، لقد قمت بإنشاء برنامج Flutter التعليمي للمبتدئين. إذا كنت تريد بدء تطوير الرفرفة الآن ، فسيساعدك هذا البرنامج التعليمي Flutter للمبتدئين
The Funbot - روبوت أساسي بمحرك قابل للتوسيع: 7 خطوات

Funbot - روبوت أساسي بمحرك قابل للتوسيع: مرحبًا بالجميع ، سأوضح لكم اليوم كيفية بناء FunBot - روبوت آلي سهل للغاية يمكنه التسكع ورسم الأنماط والدوران والتحول إلى روبوت متحرك. إنه قابل للتوسعة مع الأجزاء والمرحلات وحتى وحدات التحكم الصغيرة ولكن هذا مضاء
إنشاء نموذج ثلاثي الأبعاد أساسي في Onshape: 8 خطوات

إنشاء نموذج أساسي ثلاثي الأبعاد في Onshape: سأوضح لك في هذا الدليل كيفية استخدام بعض الأدوات الأساسية المتوفرة في Onshape لإنشاء نموذج CAD ثلاثي الأبعاد. تعد نماذج CAD مفيدة جدًا في عملية تصميم العديد من أنواع الأشياء المختلفة. يُقصد بهذا التدريب كمقدمة. إنج
عصا جوي ذات محورين على طابع أساسي: 7 خطوات

عصا جوي ذات محورين على طابع أساسي: JoyStick