جدول المحتويات:
- اللوازم
- الخطوة 1: الإعداد الأولي (حسب نظام التشغيل الخاص بك)
- الخطوة الثانية: إعداد البعوض:
- الخطوة 3: اختتم
فيديو: الاتصال اللاسلكي بالمنزل الذكي: الأساسيات القصوى لـ MQTT: 3 خطوات
2024 مؤلف: John Day | [email protected]. آخر تعديل: 2024-01-30 07:36
أساسيات MQTT:
** سأقوم بعمل سلسلة لأتمتة المنازل ، وسأمر بالخطوات التي اتخذتها لتعلم كل ما فعلته في المستقبل. هذا Instructable هو الأساس حول كيفية إعداد MQTT لاستخدامه في Instructables المستقبلية. ومع ذلك ، فإن التعاليم الواردة في هذا المحتوى ستكون قابلة للتطبيق على أي مشروع يرغب المرء في توليه. **
انترنت الأشياء:
يسيطر إنترنت الأشياء على العالم ، وخاصة في المجتمعات مثل مجتمعاتنا هنا في Instructables. منذ أن انضممت إلى هذا المجتمع ، تم ترسيخه مع بناء الناس
الأجهزة المتصلة بالإنترنت والتحكم فيها. عند العمل مع إنترنت الأشياء ، من الصعب عدم الوصول إلى بروتوكول MQTT. هذا بروتوكول اتصالات مثل غيره من البروتوكولات المستخدمة حول الإنترنت اليوم مثل HTTP أو FTP ، ولكن الطريقة التي يعمل بها مختلفة مما يجعله مثاليًا لتطبيقات إنترنت الأشياء.
ما هو MQTT:
MQTT (النقل عن بُعد لخدمة وضع الرسائل في قائمة انتظار هو بروتوكول اتصال خفيف الوزن يستخدم بنية نشر / اشتراك. HTTP ، وهو ما يستخدمه معظم الإنترنت ، مبني على نظام طلب / استجابة. وهذا يعني أنه يتلقى طلبًا من العميل ، ويرسل استجابة لذلك العميل. لدى MQTT أيضًا خادم (يسمى وسيطًا) بالإضافة إلى العديد من العملاء. وعلى عكس HTTP ، يتيح MQTT للعملاء نشر "موضوعات" محددة أو الاشتراك فيها. ما يسمح به ذلك هو اتصال أوسع من خلال نقطة مركزية ، الوسيط. يمكن لكل عقدة أن تنشر إلى موضوع على الوسيط ، وستتلقى أي عقدة مشتركة في هذا الموضوع الرسالة. يمكن للعملاء الاشتراك في مواضيع متعددة أيضًا ويمكنهم بعد ذلك تلقي توجيهات أو تحديثات متعددة.
النظام بأكمله يحركه الحدث ويسمح بإرسال الرسائل من الوسيط إلى كل عميل مشترك. لذلك بدلاً من HTTP ، حيث يطلب العميل المعلومات ، يتم دفع المعلومات مباشرة من الوسيط عند الاستلام. هناك خدمات مدمجة تسمح أيضًا بالعديد من الإجراءات الوقائية ، مثل مواصفات QOS. تسمح مواصفات QOS للوسيط بتحديد ما إذا كانت الرسالة تحتاج إلى تسليمها مرة واحدة على الأقل ، مرة واحدة على الأقل ، أو مرة واحدة بالضبط. هذا يضمن تسليم البيانات بالطريقة المطلوبة لكل عميل. يمكن للعملاء أيضًا طلب تخزين الرسائل المنشورة لموضوعهم مؤقتًا في الوسيط في حالة فصلهم عنه لأي سبب من الأسباب. بمجرد إعادة الاتصال بالإنترنت ، سيتم دفع هذه البيانات إلى العميل.
الموضوع ليس شيئًا خاصًا ، إنه مجرد مجموعة متنوعة من السلاسل التي يتم دمجها وفصلها بشرطة مائلة. التنسيق في المثال الذي سيتم استخدامه أدناه هو ما يلي: home / bedroom / roof_light. يتم وضع كل شرطة مائلة بعد موضوع للدلالة على موضوع فرعي. لذلك يمكن نشر رسالة إلى المنزل ، حيث ستتلقىها جميع الأجهزة في المنزل. يمكن نشره مباشرة في المنزل / غرفة النوم ، حيث ستتلقى جميع الأجهزة في غرفة النوم الرسالة. ويمكن أن ينزل إلى الجهاز المحدد كما هو موضح لأول مرة في المنزل / غرفة النوم / مصباح السقف حيث سيتلقى ضوء السقف فقط في غرفة النوم الرسالة. الطريقة التي يمكننا بها تجريد الأجهزة الفردية مثل هذه وصولاً إلى نظام بيئي كامل مفيدة للغاية ، لا سيما عندما يتعلق الأمر بـ Home Automation. هناك طرق أخرى لتقسيم الموضوعات ، وسأذهب إليها أكثر في Instructables المستقبلية حيث يكون التطبيق أكثر منطقية.
اللوازم
مطلوب واحد فقط مما يلي:
أوبونتو:
نظام Windows الفرعي لنظام Linux: https://ubuntu.com/wsl (فقط إذا لم يكن لديك Linux / MacOS)
MacOS: يتطلب جهاز MacBook
هذا مطلوب:
Mosquitto MQTT Broker - تم تنزيله باستخدام apt-get (التوثيق:
الخطوة 1: الإعداد الأولي (حسب نظام التشغيل الخاص بك)
نظام التشغيل MacOS / Linux:
ليس هناك أي إعداد ضروري ، فقط افتح الجهاز الخاص بك وانتقل إلى إعداد Mosquitto!
شبابيك:
إذا كنت تستخدم نظام التشغيل Windows ، فستحتاج إلى تثبيت نظام Windows الفرعي لنظام التشغيل Linux. هذه أداة سهلة الاستخدام وقيمة للغاية تتيح لك تشغيل محطة Ubuntu داخل Windows. لا حاجة لتثبيت Ubuntu وتشغيله المزدوج فقط لاختبار التطوير في الجهاز!
خطوات التثبيت:
1. انتقل إلى متجر Windows وابحث عن ubuntu
2. قم بتنزيل وتثبيت نظام Windows الفرعي لنظام التشغيل Linux
3. افتح التطبيق واتبع التعليمات لإكمال الإعداد وأنت على استعداد للمتابعة!
الخطوة الثانية: إعداد البعوض:
لذلك كما تمت مناقشته في المقدمة حول MQTT ، يتطلب البروتوكول وسيطًا (خادم). هذا الوسيط هو النقطة الأساسية لجميع الاتصالات القائمة لكل عميل. يتم تمرير جميع الرسائل ووضعها في قائمة الانتظار في هذا الوسيط. هناك العديد من الخيارات للاختيار من بينها للوسيط ، ويمكنك العثور عليها عبر الإنترنت ، ولكن الخيار الذي سنستخدمه ربما يكون الأكثر شيوعًا: Mosquitto.
Mosquitto هو وسيط MQTT قائم على Linux مع الكثير من الوظائف. لن أتطرق إلى تفاصيل هذه الوظيفة في الوقت الحالي ، ولكن بعض المتطلبات الأساسية التي تفي بها هي مصادقة المستخدم / كلمة المرور ، ودعم تشفير TLS وكلها مفيدة في تطوير أجهزة إنترنت الأشياء.
خطوات:
يجب إكمال كل هذه الخطوات في نافذة طرفية.
1. تثبيت عملاء Mosquitto و MQTT
سودو apt-get install mosquitto mosquitto-customers
2. اشترك في موضوع
mosquitto_sub -t "اختبار"
ما يفعله هذا هو الاشتراك في موضوع. يتم الإشارة إلى هذا الموضوع بواسطة "-t" وقيمة الموضوع هي "اختبار". هذه القيمة التي تلي "-t" يمكن أن تكون أي شيء تريد حفظه لبعض الحجوزات الخاصة.
3. افتح نافذة طرفية جديدة وانشر رسالة إلى موضوع "اختبار"
mosquitto_pub -t "test" -m "Hello World with MQTT!"
يؤدي هذا إلى نشر رسالة إلى الموضوع "اختبار" ، مما يسمح لمثيلنا الطرفي الآخر بتلقي الرسالة على جانب الاشتراك. يتم الإشارة إلى الرسالة المنشورة بواسطة "-m" وقيمة الرسالة هي "Hello World With MQTT". هذه الرسالة ، تمامًا مثل الموضوع ، يمكن تغييرها إلى ما تريد!
4. اذهب إلى أول نافذة طرفية لترى نتائجك! يجب أن تتلقى رسالة تقول "Hello World With MQTT" معروضة. إذا كنت لا ترى هذا ، فتأكد من كتابة الموضوع الصحيح فيه. إذا كنت قد أكملت هذا بنجاح ، فاستمر في اللعب به. جرب مواضيع مختلفة ، مع مواضيع فرعية ورسائل مختلفة!
الخطوة 3: اختتم
هذا كل شيء! بمجرد الانتهاء من كل شيء ، ستفهم أساسيات كيفية عمل MQTT. هذا برنامج تعليمي بدائي للغاية يعرض فقط الحد الأدنى من بروتوكول MQTT. سوف تتعمق Instructables في المستقبل بمزيد من العمق في كيفية عمل البروتوكول في الممارسة العملية مع إنترنت الأشياء ، لا سيما مع وحدات ESP8266 التي تعمل بنظام Arduino. سيكون تطبيقي العملي الأول هو آلة صنع القهوة الذكية التي أمتلكها حاليًا في غرفتي. إذا كنت ترغب في معرفة كيفية صنع صانع قهوة يمكن التحكم فيه من كل من هاتفك وأليكسا ، فتأكد من متابعتي لمزيد من البرامج التعليمية.
موصى به:
الاتصال اللاسلكي باستخدام وحدة الإرسال والاستقبال NRF24L01 للمشاريع القائمة على Arduino: 5 خطوات (بالصور)
الاتصال اللاسلكي باستخدام وحدة الإرسال والاستقبال NRF24L01 للمشاريع القائمة على Arduino: هذا هو البرنامج التعليمي الثاني القابل للتوجيه الخاص بي حول الروبوتات وأجهزة التحكم الدقيقة. إنه لأمر مدهش حقًا أن ترى روبوتك على قيد الحياة ويعمل كما هو متوقع وصدقني أنه سيكون أكثر متعة إذا كنت تتحكم في الروبوت أو أشياء أخرى لاسلكية بسرعة و
كيف تقيس بشكل صحيح استهلاك الطاقة لوحدات الاتصال اللاسلكي في عصر انخفاض استهلاك الطاقة؟: 6 خطوات
كيف يمكن قياس استهلاك الطاقة بشكل صحيح لوحدات الاتصال اللاسلكي في عصر انخفاض استهلاك الطاقة ؟: يعد استهلاك الطاقة المنخفض مفهومًا مهمًا للغاية في إنترنت الأشياء. تحتاج معظم عقد إنترنت الأشياء إلى أن تعمل بالبطاريات. فقط من خلال قياس استهلاك الطاقة للوحدة اللاسلكية بشكل صحيح ، يمكننا تقدير مقدار البطارية بدقة
الاتصال اللاسلكي / جرس الباب: 9 خطوات
الاتصال اللاسلكي / جرس الباب: مرحبًا يا شباب. سنقوم اليوم بصنع باب لاسلكي أو جرس نداء بمدى 300 متر في منطقة مفتوحة مقارنة بـ 50 مترًا من أجراس الأبواب التجارية التي نراها عادة في المتاجر. يمكن استخدام هذا المشروع كجرس باب أو كمحمول
PCB محمول باليد مع Arduino (مع خيار الاتصال اللاسلكي!): 3 خطوات
PCB Handheld With Arduino (مع خيار الانتقال لاسلكيًا!): التحديث 28.1.2019 أنا أعمل حاليًا على الإصدار التالي من هذا الجهاز المحمول. يمكنك متابعة المشروع على قناتي على اليوتيوب أو تويتر. لقد وجدت خطأ في تخطيط ثنائي الفينيل متعدد الكلور. الأزرار اليسرى والأعلى متصلة بالدبابيس التناظرية فقط. أصلحت
قم ببناء جهاز الاتصال الداخلي أو جهاز الاتصال اللاسلكي الخاص بك من هاتفين لاسلكيين قديمين: 6 خطوات
قم ببناء الاتصال الداخلي الخاص بك أو جهاز Walkie Talkie من هاتفين لاسلكيين قديمين: لدينا جميعًا هواتف قديمة. لماذا لا تحولهم إلى جهاز اتصال داخلي لمنزل شجرة أطفالك. أو قم بتحويل هاتفين لاسلكيين قديمين إلى جهاز اتصال لاسلكي أساسي في المنزل. هنا هو كيف