JoVE Logo

Sign In

A subscription to JoVE is required to view this content. Sign in or start your free trial.

In This Article

  • Summary
  • Abstract
  • Introduction
  • Protocol
  • النتائج
  • Discussion
  • Disclosures
  • Acknowledgements
  • Materials
  • References
  • Reprints and Permissions

Summary

يقترح هذا العمل طريقة مرنة لتوصيل البيانات بين نظام بثق الأفلام وأجهزة المراقبة استنادا إلى بروتوكول رسالة يسمى نقل القياس عن بعد في طوابير الرسائل (MQTT).

Abstract

يهدف هذا العمل إلى بناء بنية مرنة لاتصالات البيانات لآلة معالجة البوليمر من خلال استخدام بروتوكول قائم على الناشر والمشترك يسمى نقل القياس عن بعد في طوابير الرسائل (MQTT) ، والذي يتم تشغيله عبر TCP / IP. حتى عند استخدام المعدات التقليدية ، يمكن قياس بيانات المعالجة وتسجيلها بواسطة أجهزة مختلفة في أي مكان من خلال اتصال عبر الإنترنت. يسمح البروتوكول المستند إلى الرسائل بالاتصال المرن الذي يتغلب على أوجه القصور في بروتوكول الخادم - العميل الحالي. يمكن لأجهزة متعددة الاشتراك في معالجة البيانات المنشورة بواسطة الأجهزة المصدر. تسهل الطريقة المقترحة توصيل البيانات بين العديد من الناشرين والمشتركين. وقد نفذ هذا العمل نظاما ينشر البيانات من المعدات وأجهزة استشعار إضافية إلى وسيط الرسائل. يمكن للمشتركين مراقبة وتخزين بيانات العملية التي ينقلها الوسيط. تم نشر النظام وتشغيله لخط بثق الفيلم لإثبات الفعالية.

Introduction

في موجة الثورة الصناعية 4th ، أصبح الحصول على بيانات المعالجة المختلفة ومراقبتها مهام مهمة1. على وجه الخصوص ، سيكون تحسين عملية التصنيع باستخدام بيانات العملية ووضع خطط تشغيل فعالة هدفا مهما لجميع مرافق التصنيع 2,3. يمكن تقليل وقت التوقف عن العمل بشكل كبير إذا كان من الممكن إرسال إنذار خارج المصنع أو إذا كان من الممكن إجراء الصيانة التنبؤية في الوقت المناسب4. في الآونة الأخيرة ، تم بذل العديد من الجهود لتحليل البيانات في عمليات البوليمر 5,6. ومع ذلك ، ليس من السهل إجراء هذه المهام بسبب الصعوبات في الحصول على هذه البيانات من الأنظمة الحالية7. الهيكل الهرمي للتحكم والأجهزة يجعل الحصول على البيانات والتواصل صعبا.

بادئ ذي بدء ، لا يمكن الحصول على بيانات من آلات مختلفة ذات تواريخ تصنيع مختلفة. من الصعب تحقيق التواصل بين الآلات المختلفة لأن هذا يتطلب قابلية التشغيل البيني بين الحافلات الميدانية المختلفة بتنسيقات خاصة. وبهذه الطريقة ، يتم الحفاظ على خصوصية طرق الاتصال وتنسيقات البيانات. يساعد ذلك المرء على الحفاظ على أمان البيانات بسهولة ولكنه يبقي المستخدمين معتمدين على منشئ الماكينة للخدمات والتطورات المستقبلية. أجهزة الكمبيوتر التحكم الحديثة بما في ذلك واجهة الإنسان والآلة (HMI) المرفقة بآلات معالجة البوليمر تعتمد في الغالب على Windows هذه الأيام ولكنها محملة ببرامج تم إنشاؤها في بيئة تطوير خاصة. من الممكن استخدام وحدات التحكم المنطقية القابلة للبرمجة (PLCs) من شركات مختلفة للتواصل مع أجهزة الاستشعار أو المشغلات ، ولكن في كثير من الحالات ، يعتمد نظام التحكم الإشرافي العلوي والحصول على البيانات (SCADA)على أجهزة الكمبيوتر 8. تسببت هذه الممارسة في العديد من البروتوكولات والحافلات الميدانية وأنظمة التحكم للتنافس في السوق. على الرغم من أن هذا التعقيد قد تم تخفيفه شيئا فشيئا بمرور الوقت ، إلا أن العديد من أنواع الحافلات الميدانية والبروتوكولات لا تزال قيد الاستخدام النشط.

من ناحية أخرى ، تم توحيد الاتصال بين أجهزة التحكم و SCADA بواسطة Open Platform Communications United Architecture (OPCUA)9. علاوة على ذلك ، تم أيضا الاتصال بين SCADA ونظام تنفيذ التصنيع (MES) بشكل رئيسي من خلال OPCUA. في مثل هذا الهيكل الهرمي الضيق ، ليس من السهل استخراج البيانات بحرية لمراقبة العملية وتحليلها. عادة ، يجب استخراج البيانات من SCADA أو MES10. كما ذكرنا سابقا ، هذه الأنظمة خاصة بالبائع ، ونادرا ما تكون تنسيقات البيانات مفتوحة. ونتيجة لذلك، يتطلب استخراج البيانات دعما كبيرا من بائعي حلول تكنولوجيا المعلومات/التكنولوجيا التشغيلية الأصليين (IT/OT). وهذا يمكن أن يعوق الحصول على البيانات للرصد والتحليل.

في خط بثق الفيلم ، يتم الإشراف على جهاز التحكم في الكمبيوتر بواسطة نظام SCADA11. يتم تشغيل نظام SCADA بواسطة برنامج كمبيوتر لا يمكن تعديله بسهولة. قد يكون برنامج الكمبيوتر قابلا للتحرير ، لكن التحرير مكلف للغاية ويستغرق وقتا طويلا. لمراقبة وتحليل بيانات المعالجة بسهولة ، يجب أن تكون البيانات متاحة من أي مكان. لمراقبة معالجة البيانات بعيدا عن الموقع ، يجب أن يكون برنامج الكمبيوتر قادرا على بث بيانات المعالجة إلى الإنترنت12. علاوة على ذلك ، تقلل الطريقة المجانية المفتوحة من نفقات الحصول على البيانات13. يسمح هذا النهج بإجراء تحليل البيانات حتى في المصانع الصغيرة التي لا تستطيع تحمل تكاليف الاستثمار في حلول تكنولوجيا المعلومات التجارية14.

في هذه الدراسة ، يتم استخدام بروتوكول رسالة يعتمد على نموذج الناشر والمشترك. يعد نظام النقل عن بعد لوضع الرسائل في قائمة الانتظار (MQTT) بروتوكولا مفتوحا وقياسيا يتيح المراسلة بين العديد من موفري البيانات والمستهلكين15. هنا ، نقترح نظاما يكتسب البيانات وينقلها ويراقبها باستخدام MQTT لمرافق التصنيع الحالية. يتم اختبار النظام في خط بثق الفيلم للتحقق من الأداء. يتم نقل البيانات من وحدة التحكم الأصلية إلى جهاز حافة عبر بروتوكول Modbus. بعد ذلك ، يتم نشر البيانات إلى الوسيط. في غضون ذلك ، ينشر اثنان من Raspberry Pis درجات الحرارة المقاسة والإضاءة لنفس الوسيط. بعد ذلك ، يمكن لأي جهاز على الإنترنت الاشتراك في البيانات ، تليها مراقبتها وتسجيلها كما هو موضح في الشكل 1. يوضح البروتوكول في هذا العمل كيف يمكن القيام بالإجراء بأكمله.

Protocol

1. تثبيت وسيط

ملاحظة: لمراقبة بيانات المعالجة وتسجيلها عبر الإنترنت ، يجب إعداد نظام كمبيوتر ينقل البيانات. وينبغي أن يكون النظام متاحا من الناشرين والمشتركين على حد سواء كما هو مبين في الشكل 2. وبالتالي ، يجب أن يكون لها عنوان IP عام معروف قبل أي اتصال. يتم تثبيت وسيط MQTT مفتوح يسمى Eclipse Mosquitto على النظام13.

  1. قم بتوصيل جهاز كمبيوتر بالإنترنت مع إعطاء عنوان IP عام. أعط العنوان في إعداد IP لنظام التشغيل.
  2. قم بتثبيت برنامج وسيط مثل Eclipse Mosquitto على الكمبيوتر. قم بتنزيل ملف التثبيت باستخدام متصفح وقم بتنفيذه.
  3. اختبار وسيط مع برنامج اختبار مثل عدسة MQTT. قم بتنزيل عدسة MQTT باستخدام متصفح وتثبيته. بعد ذلك، تأكد من الاشتراك في الرسائل المنشورة.

2. إعداد الناشر الرئيسي

ملاحظة: يقوم هذا الكمبيوتر بنشر بيانات الجهاز عبر MQTT عبر TCP إلى الوسيط. يجب تفسير البيانات القديمة وإعادة تعبئتها لإرسالها. يمكن القيام بذلك عادة عن طريق RS485 أو Ethernet. يجب التحقق من الاتصال على مستوى الأجهزة اعتمادا على نوع الناقل. ترسل آلة البثق البيانات عبر Modbus من خلال منفذ Ethernet.

  1. ضع جهاز كمبيوتر فعليا في موقع الجهاز وقم بإعداده كناشر رئيسي.
    ملاحظة: على الرغم من أنه ليس إلزاميا ، فقد تم اختيار كمبيوتر صناعي في هذا العمل.
  2. قم بتثبيت Python3 على الكمبيوتر. قم بتنزيل ملف المثبت باستخدام متصفح وقم بتنفيذه.
  3. تثبيت PyModbus16. قم بتنزيل ملف المثبت باستخدام متصفح وقم بتنفيذه.
  4. افحص وحدة التحكم في البثق باستخدام HMI الذي يتحكم في الجهاز وقم بتوصيل وحدة التحكم في البثق بالناشر الرئيسي.
  5. حدد البيانات والعنوان المقابل في بروتوكول Modbus بالكامل من الجهاز باستخدام أداة Modbus مثل ModbusPoll أو QModMaster. تأكد من عرض بيانات الجهاز المرسلة في الخلايا المقابلة لأداة Modbus.
  6. اكتب تعليمة برمجية ل Python على كمبيوتر الناشر الذي يقوم باسترداد البيانات من وحدة التحكم في البثق.
    ملاحظة: فيما يلي مثال على التعليمات البرمجية:
    من pyModbusTCP.client استيراد ModbusClient
    العميل = ModbusClient(host="192.168.1.***", port=***, unit_id=***)
    client.open()
    ExtrusionData = str(client.read_holding_registers(1000, 58))
  7. دمج تدفقات بيانات إضافية من الأجهزة الأخرى عبر PCIe وUSB وRS232 وRS485.
    ملاحظة: هذا واضح. بمجرد الحصول على سلسلة بيانات إضافية ، ما عليك سوى إضافة البيانات إلى دفق البيانات الحالي ، والذي يتم بواسطة التعليمة البرمجية التالية:
    البثق البيانات += البيانات الإضافية
  8. استيراد paho.mqtt.client بعد تثبيت paho-mqtt عن طريق نقطة تثبيت paho-mqtt17 .
  9. تنفيذ التعليمات البرمجية للاتصال ونشر البيانات إلى الوسيط.
    ملاحظة: راجع مثال التعليمات البرمجية التالي:
    url="117.xx.xxx.xx"; المنفذ = 1883; اسم المستخدم = "****"; كلمة المرور = "xxxxx" ؛ الموضوع = "الطارد"
    mqttc = mqtt. العميل()
    mqttc.username_pw_set (اسم المستخدم، كلمة المرور)
    mqttc.connect(host=url, port=port)
    mqttc.loop_start()
    ExtrusionData = str(client.read_holding_registers(1000, 58))
    Pub1= mqttc.publish(topic, ExtrusionData))
    Pub1.wait_for_publish()

3. إعداد الناشر الإضافي

ملاحظة: يقوم هذا الكمبيوتر أيضا بنشر بيانات الجهاز عبر MQTT عبر TCP إلى الوسيط. في بعض الأحيان ، يلزم إجراء قياس إضافي لا يمكن إجراؤه على الناشر الرئيسي. يمكن لأجهزة إنترنت الأشياء (IoT) مثل Raspberry Pi و Arduino أن تأخذ هذا الدور. في هذا العمل ، تم استخدام Raspberry Pi لبيانات درجة الحرارة وبيانات الإضاءة. يشبه الإجراء قسم البروتوكول 2.

  1. ضع Raspberry Pi بالقرب من موقع المستشعر.
    ملاحظة: نظرا لأن مسافة الأسلاك محدودة، لا يمكن وضع Raspberry Pi بعيدا جدا عن موقع القياس. ومع ذلك ، نظرا لأن المنطقة المجاورة للطارد ساخنة جدا ، يجب وضع الجهاز على بعد 1 متر على الأقل من موقع القياس.
  2. قم بتثبيت Python3 على Raspberry Pi بواسطة الأوامر التالية في سطر الأوامر:
    sudo apt update
    sudo apt install Python3 idle3
  3. قم بتنفيذ التعليمات البرمجية للحصول على بيانات المستشعر. يمكن نقل بيانات المستشعر عبر I2C أو GPIO.
    ملاحظة: ارجع إلى مثال التعليمات البرمجية التالي للحصول على بيانات درجة حرارة إضافية عبر GPIO:
    من max6675 استيراد MAX6675
    cs_pin1 = 24; clock_pin1 = 25; data_pin1 = 18
    cs_pin2 = 9; clock_pin2 = 11; data_pin2 = 19
    الوحدات = "C"
    المزدوجات الحرارية1 = MAX6675 (cs_pin1، clock_pin1، data_pin1، الوحدات)
    المزدوجات الحرارية2 = MAX6675 (cs_pin2، clock_pin2، data_pin2، الوحدات)
    T1 = المزدوجات الحرارية1.get()
    T2 = المزدوجات الحرارية2.get()
  4. استيراد paho.mqtt.client.
  5. أعد استخدام الرمز في القسم 2 للاتصال بالبيانات ونشرها على الوسيط.

4. إعداد المشترك

ملاحظة: قد تتلقى أي أجهزة على الإنترنت بيانات المعالجة عبر الوسيط. تتم معالجة البيانات وتصورها أيضا بواسطة رمز بايثون. في حالة صعوبة التطوير ، يمكن استخدام التطبيقات المتاحة مثل MQTT Client في Google Play و MQT Tool في App Store. نظرا لأن تنفيذ واجهة المستخدم طويل جدا ، فلا يتم وصف التفاصيل هنا. لاحظ أيضا أن التطبيقات الحالية مثل أداة MQT في App Store يمكنها تلقي البيانات.

  1. قم بإشراك جهاز للاشتراك في الإنترنت. تأكد من اتصال كابل فعلي ثم قم بتنفيذ ping إلى IP الوسيط على سطر الأوامر (على سبيل المثال ، ping 117.xx.xxx.xx).
  2. قم بتثبيت بيئة Python مناسبة اعتمادا على الجهاز ونظام التشغيل. على سبيل المثال ، قم بتثبيت Pydroid3 على جهاز Android بدلا من Python3 من Google Play.
  3. استيراد كل من paho.mqtt.client و paho.mqtt.subscribe للاتصال وتلقي البيانات من الوسيط.
    ملاحظة: راجع مثال التعليمات البرمجية التالي:
    استيراد paho.mqtt.client ك mqtt
    استيراد paho.mqtt.subscribe كاشتراك
    url="117.xx.xxx.xx"; المنفذ = 1883; اسم المستخدم = "****"; كلمة المرور = "xxxxx" ؛ الموضوع = "الطارد"
    mqttc.username_pw_set (اسم المستخدم وكلمة المرور)
    mqttc.connect(host=url, port=port)
    mqttc.subscribe(الموضوع، 0)
    mqttc.loop_start()
    Sub1 = subscribe.simple(الموضوع، اسم المضيف=url)
    ExtruderData = Sub1.payload.decode("utf-8")
  4. قم بإنشاء واجهة مستخدم كما هو مطلوب باستخدام PyQT5.
    ملاحظة: هذا الجزء طويل جدا ويركز على التمثيل الرسومي للبيانات المستلمة بدلا من الاتصال. يتم توفير الرمز المقابل كبيانات تكميلية.
  5. عرض البيانات الواردة على واجهة المستخدم الرسومية عن طريق تنفيذ التعليمات البرمجية المبنية.

5. تسجيل البيانات

ملاحظة: يمكن كتابة بيانات المعالجة في قاعدة بيانات أثناء المراقبة. في هذا العمل ، تم اختيار قاعدة بيانات على نطاق المختبر. يتم توصيل البيانات بملف Microsoft Access للكتابة والاسترداد بسهولة من كمبيوتر المستخدم. بالإضافة إلى ذلك ، يمكن إنشاء جدول على الفور بواسطة استعلام لتحليل البيانات في جدول بيانات مثل Microsoft Excel.

  1. حدد جهاز مشترك لتسجيل البيانات.
  2. استيراد pyodbc عن طريق تنفيذ "pip install pyodbc" على سطر الأوامر لرمز Python للوصول إلى قاعدة البيانات كما هو موضح في الشكل 318.
  3. أرسل استعلاما إلى قاعدة البيانات بواسطة رمز Python لتسجيل بيانات المعالجة. ارجع إلى رمز بايثون في الشكل 3 لمعرفة الطريقة.
  4. إرسال استعلام إلى قاعدة البيانات لاسترجاع البيانات المسجلة.
    ملاحظة: يرد أدناه مثال على التعليمات البرمجية لاسترجاع البيانات:
    استيراد pyodbc
    x ل x في pyodbc.drivers() إذا كان x.startswith('برنامج تشغيل Microsoft Access')]
    conn_str = (
    r'DRIVER={برنامج تشغيل Microsoft Access (*.mdb, *.accdb)};'
    r'DBQ=C:\Users\data_analysis\db1.accdb;'
    )
    cnxn = pyodbc.connect(conn_str)
    crsr = cnxn.cursor()
    للحصول على table_info في crsr.tables(tableType = 'TABLE'):
    طباعة (table_info.table_name)
    sql = """\
    اختر * من Process_Condition
    """
    crsr = cnxn.execute(sql)
    للصف في crsr:
    RetrievedData = pd.read_sql(sql, cnxn)
    crsr.close()
    cnxn.close()

6. النشر

ملاحظة: إذا كان من الممكن توصيل جميع الأجهزة بالإنترنت، فسيكون الإعداد بسيطا. ومع ذلك، لتأمين البيانات من جانب الجهاز، يمكن أن يكون الناشرون في الإنترانت فقط. في هذه الحالة ، يمكن أن يكون الوسيط بوابة للإنترنت. لكي يكون الأمر كذلك ، يجب أن يكون الوسيط مجهزا باثنين من محولات إيثرنت ، يجب أن يكون لأحدهما عنوان IP عام. بعد تطوير جميع العناصر ، يجب نشر الرموز على كل جهاز كما هو موضح في الشكل 4. وضع الاتصال ، السلكي أو اللاسلكي ، ليس مهما ، ولكن يجب تأمينه حتى يتمكن كل جهاز من الوصول إلى الوسيط. وهذا يعني أن الوسيط يمكن أن يعمل كبوابة على الحدود بين الإنترانت والإنترنت لأغراض أمنية. بالطبع ، حتى لو تعرضت جميع الأجهزة للإنترنت ، فلا توجد مشكلة من وجهة نظر الاتصال.

  1. قم بتوصيل وحدة التحكم في البثق والناشر الرئيسي والناشرين الإضافيين بمنفذ إنترانت عبر الإيثرنت.
  2. قم بتوصيل منفذ إيثرنت واحد من الوسيط بالإنترانت والآخر بالإنترنت.
  3. قم بتوصيل المشتركين بالإنترنت عن طريق تكرار الخطوة 4.1 لهم جميعا.

7. التنفيذ

ملاحظة: لاختبار النظام بأكمله ، بدأنا خط البثق وقمنا بتشغيل جميع رموز Python و Mosquitto.

  1. ابدأ عملية البثق. على HMI الخاص بالجهاز ، اضبط درجات الحرارة وقم بتشغيل السخان عن طريق لمس الزر الموجود على شاشة HMI. بمجرد الوصول إلى درجة الحرارة المطلوبة ، ابدأ دوران المسمار لبثق ذوبان البوليمر.
  2. قم بتشغيل جميع أجهزة الكمبيوتر ، وابدأ تشغيل برنامج الوسيط على جهاز الوسيط بواسطة الأمر "net start mosquitto" ، ثم قم بتشغيل رموز Python لمراقبة بيانات المعالجة وتسجيلها حسب الحاجة.
    ملاحظة: يمكن عكس ترتيب الخطوة 7.1 والخطوة 7.2. يمكن تنفيذ رموز Python ببساطة عن طريق كتابة "python3 xxxxx.py" في سطر الأوامر متبوعا بالضغط على Enter. أضف هذا الأمر إلى برامج بدء التشغيل لتجنب كتابة الأمر في كل مرة يتم فيها إعادة تشغيل الجهاز.

النتائج

وقد وجد أن البيانات المبينة في HMI والتي تم قياسها بواسطة Raspberry Pis تم رصدها وتسجيلها في المشتركين كما هو موضح في الشكل 5. كما هو موضح في الفيديو ، يتم تسجيل بيانات المعالجة في قاعدة البيانات.

figure-results-323
<...

Discussion

من خلال اتباع البروتوكول المقدم ، يمكن مراقبة بيانات المعالجة وتسجيلها دون حلول تكنولوجيا المعلومات باهظة الثمن مثل MES. يمكن لتقنيات إنترنت الأشياء أن تجعل من السهل الحصول على البيانات وتسليمها من الآلات التقليدية. وقد تبين أن البروتوكول القائم على الرسائل ، MQTT ، يعمل بنجاح كمنصة لاتصالا...

Disclosures

ويعلن صاحبا البلاغ عدم وجود تضارب في المصالح.

Acknowledgements

تم دعم هذه الدراسة من قبل برنامج البحوث الذي تموله SeoulTech (جامعة سيول الوطنية للعلوم والتكنولوجيا).

Materials

NameCompanyCatalog NumberComments
Edge DeviceAdavantechUNO 420Intel Atom E3815 Fanless
Film Extrusion MachineEM KoreaNot AvailableFor production of 450 mm film
PydroidIIECNot AvailableAndroid Devices
Python3Python Software FoundataionNot AvailableWindows, Linux
Raspberry Pi 4CanaKitNot AvailableStandard Kit

References

  1. Shafiq, S. I., Szczerbicki, E., Sanin, C. Proposition of the methodology for Data Acquisition, Analysis and Visualization in support of Industry 4.0. Procedia Computer Science. 159, 1976-1985 (2019).
  2. Dilda, V., et al. Manufacturing: Analytics unleashes productivity and profitability. McKinsey & Company. , (2017).
  3. Ismail, A., Truong, H. L., Kastner, W. Manufacturing process data analysis pipelines: A requirements analysis and survey. Journal of Big Data. 6, 1 (2019).
  4. Nwanya, S. C., Udofia, J. I., Ajayi, O. O. Optimization of machine downtime in the plastic manufacturing. Cogent Engineering. 4 (1), 1335444 (2017).
  5. Zhou, T., Song, Z., Sundmacher, K. Big data creates new opportunities for materials research: A review on methods and applications of machine learning for materials design. Engineering. 5 (6), 1017-1026 (2019).
  6. Rousopoulou, V., Nizamis, A., Thanasis, V., Ioannidis, D., Tzovaras, D. Predictive maintenance for injection molding machines enabled by cognitive analytics for Industry 4.0. Frontiers in Artificial Intelligence. 3, 578152 (2020).
  7. Mamo, F. T., Sikora, A., Rathfelder, C. Legacy to Industry 4.0: A Profibus Sniffer. Journal of Physics: Conference Series. 870, 012002 (2017).
  8. Figueroa-Lorenzo, S., Añorga, J., Arrizabalaga, S. A role-based access control model in Modbus SCADA systems. A centralized model approach. Sensors. 19 (20), 4455 (2019).
  9. Schleipen, M., Gilani, S. -. S., Bischoff, T., Pfrommer, J. OPC UA & Industrie 4.0 - Enabling technology with high diversity and variability. Procedia CIRP. 57, 315-320 (2016).
  10. Nițulescu, I. -. V., Korodi, A. Supervisory control and data Acquisition approach in node-RED: Application and discussions. IoT. 1, 76-91 (2020).
  11. Perez-Lopez, E. SCADA systems in the industrial automation. Tecnología en Marcha. 28 (4), 3-14 (2015).
  12. Andersen, D. L., Ashbrook, C. S. A., Karlborg, N. B. Significance of big data analytics and the internet of things (IoT) aspects in industrial development, governance and sustainability. International Journal of Intelligent Networks. 1, 107-111 (2020).
  13. Kashyap, M., Sharma, V., Gupta, N. Taking MQTT and NodeMcu to IOT: Communication in Internet of Things. Procedia Computer Science. 132, 1611-1618 (2018).
  14. . Mythbusting the MES. Systema Available from: https://www.systema.com/blog/mythbusting-the-mes (2021)
  15. Yeh, C. -. S., Chen, S. -. L., Li, I. -. C. Implementation of MQTT protocol based network architecture for smart factory. Proceedings of the Institution of Mechanical Engineers, Part B: Journal of Engineering Manufacture. 235 (13), 2132-2142 (2021).
  16. Parian, C., Guldimann, T., Bhatia, S. Fooling the master: Exploiting weaknesses in the Modbus protocol. Procedia Computer Science. 171, 2453-2458 (2020).
  17. Mishra, B., Kertesz, A. The use of MQTT in M2M and IoT systems: A survey. IEEE Access. 8, 201071-201086 (2020).
  18. . pyodbc 4.0.34 Available from: https://pypi.org/project/pyodbc/ (2021)
  19. Ayer, V., Miguez, S., Toby, B. Why scientists should learn to program in Python. Powder Diffraction. 29 (2), 48-64 (2014).
  20. Boyes, H., Hallaq, B., Cunningham, J., Watson, T. The industrial internet of things (IIoT): An analysis framework. Computers in Industry. 101, 1-12 (2018).

Reprints and Permissions

Request permission to reuse the text or figures of this JoVE article

Request Permission

Explore More Articles

185 MQTT

This article has been published

Video Coming Soon

JoVE Logo

Privacy

Terms of Use

Policies

Research

Education

ABOUT JoVE

Copyright © 2025 MyJoVE Corporation. All rights reserved