جدول المحتويات:

الاتصال اللاسلكي بالمنزل الذكي: الأساسيات القصوى لـ MQTT: 3 خطوات
الاتصال اللاسلكي بالمنزل الذكي: الأساسيات القصوى لـ MQTT: 3 خطوات

فيديو: الاتصال اللاسلكي بالمنزل الذكي: الأساسيات القصوى لـ MQTT: 3 خطوات

فيديو: الاتصال اللاسلكي بالمنزل الذكي: الأساسيات القصوى لـ MQTT: 3 خطوات
فيديو: Wire vs Wireless vs IoT | الفرق بين التحكم السلكي واللاسلكي وانترنت الاشياء 2024, شهر نوفمبر
Anonim
الاتصال اللاسلكي بالمنزل الذكي: الأساسيات القصوى لـ MQTT
الاتصال اللاسلكي بالمنزل الذكي: الأساسيات القصوى لـ MQTT
الاتصال اللاسلكي بالمنزل الذكي: الأساسيات القصوى لـ MQTT
الاتصال اللاسلكي بالمنزل الذكي: الأساسيات القصوى لـ MQTT

أساسيات 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. سيكون تطبيقي العملي الأول هو آلة صنع القهوة الذكية التي أمتلكها حاليًا في غرفتي. إذا كنت ترغب في معرفة كيفية صنع صانع قهوة يمكن التحكم فيه من كل من هاتفك وأليكسا ، فتأكد من متابعتي لمزيد من البرامج التعليمية.

موصى به: