ข้อใดเป็นการรับส่งข้อมูลของ mqtt message queue telemetry transport

ข้อใดเป็นการรับส่งข้อมูลของ mqtt message queue telemetry transport

MQTT คืออะไร

        MQTT ย่อมาจาก Message Queuing Telemetry Transport เป็นโปรโตคอลสำหรับใช้ในสื่อสารข้อมูลระหว่าง Machine to Machine (M2M) ถูกคิดค้นขึ้นในปี ค.ศ. 1999 โดย Dr Andy Stanford-Clark จาก IBM และ Arlen Nipper จาก Arcom (now Eurotech) ออกแบบมาเพื่อใช้สื่อสารในระบบเครือข่ายที่มีทรัพยากรค่อนข้างจำกัด ใช้งานแบนด์วิธต่ำ สามารถ publish-subscribe ข้อมูลระหว่าง Device เพื่อสื่อสารกันระหว่างอุปกรณ์ และถ้ามองในด้านที่เกี่ยวกับ Internet of Things จะสามารถประยุกต์ให้อุปกรณ์ต่างๆเชื่อมต่อกันผ่านเครือข่ายของอินเทอร์เน็ตได้ ทำให้เราสามารถสร้างสรรค์โครงงานที่เกี่ยวกับการติดตามอุปกรณ์ เช่น มอนิเตอร์อุปกรณ์ผ่านอินเทอร์เน็ต ควบคุมอุปกรณ์ผ่านอินเทอร์เน็ต เป็นต้น

MQTT ประกอบด้วย 2 ส่วน คือ

ข้อใดเป็นการรับส่งข้อมูลของ mqtt message queue telemetry transport

– MQTT Client เป็นส่วน publish ข้อมูลต่างๆ ขึ้นไปยัง MQTT Broker และสามารถ Subscribe ข้อมูลต่างๆจาก MQTT Broker ผ่านทาง TCP/IP Protocol ถ้ามองในมุมมองของ Internet of Things (IoT) อุปกรณ์จำพวกนี้จะเป็น Device ที่สามารถเชื่อมต่อกับระบบเครือข่ายได้ เช่น บอร์ด Arduino Uno Wifi 2, Arduino MKR Wifi 1010, บอร์ด ESP32, บอร์ด ESP8266, บอร์ด Raspberry Pi, เว็ปไซต์, สมาร์ทโฟน

– MQTT Broker หรือ MQTT Server เป็นซอฟต์แวร์สำหรับรับข้อมูลจาก MQTT Client ที่ได้ publish เข้ามาและสามารถ publish ข้อมูลจาก MQTT Broker ไปยัง MQTT Client ที่ได้ Subscribe ข้อมูลไว้ได้ หากมองในมุมมองของ Internet of Things อุปกรณ์นี้อาจจะเป็น Cloud Server ของค่ายต่างๆ เช่น CloudMQTT, NETPIE, Azure, AWS เป็นต้น หรือใช้ Single Board Computer เช่นบอร์ด Raspberry Pi, LattePanda, Beagle Bone, nanoPi, อื่นๆ แล้วติดตั้งซอฟต์แวร์เพิ่มเติมก็สามารถใช้งานได้เช่นกัน

ตัวอย่างการสื่อสารเบื้องต้นของ MQTT (ในกรณีต้องการมอนิเตอร์ค่าของเซ็นเซอร์ผ่านมือถือ) มีขั้นตอนคร่าวๆ ดังนี้

ข้อใดเป็นการรับส่งข้อมูลของ mqtt message queue telemetry transport

1. กำหนดให้ Client Device ในตัวอย่างนี้จะเป็นสมาร์ทโฟน ทำการ Subscribe MQTT Broker ตาม Topic ที่ต้องการ ตัวอย่างนี้ติดตาม Topic “temp” ไว้

ข้อใดเป็นการรับส่งข้อมูลของ mqtt message queue telemetry transport

2. กำหนดให้ Client Device (Device ที่ต่อกับเซ็นเซอร์วัดอุณหภูมิ) แล้วทำการ Publish ค่าขึ้นไปยัง MQTT Broker

ข้อใดเป็นการรับส่งข้อมูลของ mqtt message queue telemetry transport

3. MQTT Broker Publish ไปยังอุปกรณ์ที่ Subscribe ไว้ ดังนั้นในตัวอย่างนี้สมาร์ทโฟนจะได้รับข้อมูลจาก Client ที่ต่ออยู่กับเซ็นเซอร์เรียบร้อย

ข้อใดเป็นการรับส่งข้อมูลของ mqtt message queue telemetry transport

        จากตัวอย่างการสื่อสารเบื้องต้นของ MQTT จะเห็นได้ว่าการสื่อสารระหว่างอุปกรณ์นั้นสามารถเชื่อมต่อกันได้อย่างกว้างขวาง ไม่จำกัดในเรื่องชนิดอุปกรณ์ว่าจำเป็นต้องเป็นอุปกรณ์ชนิดเดียวกัน สามารถสื่อสารกันได้หลากหลายแพลตฟอร์ม มีตัวอย่างการใช้งานสำหรับการพัฒนาโปรแกรมด้วยภาษาต่างๆ มากมายเช่น ภาษา C, Python และอื่นๆ ทำให้การเชื่อมต่อแบบ MQTT นี้น่าสนใจสำหรับการนำมาประยุกต์ใช้เป็นงานพอสมควร

ทดลองใช้งาน MQTT Broker

ในขั้นตอนนี้จะเป็นการแนะนำ การทดลองใช้งาน MQTT Broker ซึ่งปัจจุบันนั้นมีผู้ให้บริการ MQTT Broker อยู่หลากหลายผู้ให้บริการ หรือผู้ใช้งานจะตั้งเซิร์ฟเวอร์เองได้ เพื่อให้ง่ายแก่การทดลองตัวอย่างนี้จะขอแนะนำเป็นใช้งาน MQTT Broker ของ CloudMQTT ซึ่งมีให้ทดลองใช้บริการฟรีได้ 5 Clients ซึ่งเพียงพอต่อการทดลองใช้งานทั่วไป หากต้องการใช้งานเพิ่มเติมสามารถอัพเกรด เพิ่มเติม ได้ในภายหลัง

ข้อใดเป็นการรับส่งข้อมูลของ mqtt message queue telemetry transport

เริ่มต้นใช้งาน CloudMQTT

1. เริ่มต้นสมัครใช้งาน โดยสามารถสมัครได้ที่ https://www.cloudmqtt.com

ข้อใดเป็นการรับส่งข้อมูลของ mqtt message queue telemetry transport

2. หลังจากสร้าง Account สำเร็จแล้ว ขั้นต่อมาคือการสร้าง MQTT Server โดยให้คลิกที่ปุ่ม Create New Instance และตั้งค่าให้เรียบร้อย

ข้อใดเป็นการรับส่งข้อมูลของ mqtt message queue telemetry transport

ข้อใดเป็นการรับส่งข้อมูลของ mqtt message queue telemetry transport

3. ทดลอง pubish ข้อมูลจาก MQTT Broker โดยทำการใช้ “WEBSOCKET UI” ของ CloudMQTT

ข้อใดเป็นการรับส่งข้อมูลของ mqtt message queue telemetry transport

แค่นี้ก็สามารถ pubic ข้อมูลไปให้ Client ที่ทำการ subscribe MQTT Topic ได้แล้ว

ทดลองใช้งาน MQTT Client ด้วยการ pubic และ subscribe ด้วยสมาร์ทโฟน

        หลังจากการตั้งค่า MQTT Broker สำเร็จแล้ว ขั้นต่อมาคือการให้ Client ทำการ Publish และ Subscribe โดยในขั้นตอนนี้เราจะใช้สมาร์ทโฟน Android ทำ Publish และ Subscribe ด้วย Application บนมือถือก่อนเพื่อทดสอบว่า เราสามารถใช้งาน MQTT Broker ได้จริง

เข้าไปยัง Play Store

ข้อใดเป็นการรับส่งข้อมูลของ mqtt message queue telemetry transport

ค้นหา และทำการติดตั้ง Application “MQTT Dash”จากนั้นเปิด Application “MQTT Dash” ขึ้นมา

ข้อใดเป็นการรับส่งข้อมูลของ mqtt message queue telemetry transport

กดที่เครื่องหมาย +

ข้อใดเป็นการรับส่งข้อมูลของ mqtt message queue telemetry transport

ตั้งค่า MQTT Dash โดยอ้างอิงจาก Instance Info ของ CloudMQTT และบันทึกการตั้งค่า

– ตั้งชื่อ Dash 
– ใส่ Address ของ Server
– ใส่ Port ของ Server
– ใส่ User และ Password

ข้อใดเป็นการรับส่งข้อมูลของ mqtt message queue telemetry transport

เมื่อบันทึกสำเร็จจะปรากฎ Dashboard ที่เราสร้างขึ้น

ข้อใดเป็นการรับส่งข้อมูลของ mqtt message queue telemetry transport

กดเข้าไปใน Dashboard ที่เราสร้างขึ้นมา แล้วกดที่เครื่องหมาย +

ข้อใดเป็นการรับส่งข้อมูลของ mqtt message queue telemetry transport

จะปรากฎเมนูให้เราเลือกชนิดของตัวสั่งงานและตัวสร้างผลที่จะเอามาวางบน Dashboard ของเรา

ข้อใดเป็นการรับส่งข้อมูลของ mqtt message queue telemetry transport

ทดลองเลือก Range/progress เพื่อนำมาแสดงผล Topic “temp”

ข้อใดเป็นการรับส่งข้อมูลของ mqtt message queue telemetry transport

ตั้งชื่อของ Object และกำหนด Topic ที่จะให้นำมาแสดงผลยัง Object Range/progress นี้

ข้อใดเป็นการรับส่งข้อมูลของ mqtt message queue telemetry transport

– กำหนดค่า Max-Min ที่ต้องการแสดงผล 

– กำหนด Precision ให้แสดงทศนิยม 2 ตำแหน่ง

– เลือกสีของ progress ตามต้องการ

– Save การตั้งค่า

ข้อใดเป็นการรับส่งข้อมูลของ mqtt message queue telemetry transport

– จะปรากฎ Range/progress ที่เราสร้างขึ้น และสามารถแสดงค่า Temp ถูก Publish มาจาก Client หรือ Broker ได้

ข้อใดเป็นการรับส่งข้อมูลของ mqtt message queue telemetry transport

– สร้าง Range/progress เพิ่มเพื่อแสดงค่า Humidity โดยรับค่าจาก Topic “Humi”

ข้อใดเป็นการรับส่งข้อมูลของ mqtt message queue telemetry transport

– สร้าง Switch/Button เพื่อควบคุม LED

ข้อใดเป็นการรับส่งข้อมูลของ mqtt message queue telemetry transport

ข้อใดเป็นการรับส่งข้อมูลของ mqtt message queue telemetry transport

– ตั้งชื่อ Object 
– กำหนด Topic ที่ต้องการ Subscribe (ในที่นี้คือ Topic “led”) 
– เลือกเครื่องหมายถูกหน้า Enable publishing และถ้าหากไม่มีการกำหนด Topic ที่จะ Publish จะเป็นการนำเอา Topic ที่ Subscribe เอาไว้ในขั้นตอนที่ 2 มาเป็น Topic สำหรับ Publish แทน

ข้อใดเป็นการรับส่งข้อมูลของ mqtt message queue telemetry transport


– กำหนด Message เมื่อกด On และ Off 
– เลือกรูปที่ใช้เป็น Button ขณะ On/Off
– กำหนดสีของ Button ขณะ On/Off
– Save การตั้งค่า

ข้อใดเป็นการรับส่งข้อมูลของ mqtt message queue telemetry transport

– ทดลองกดที่ object Switch/Button ที่สร้างขึ้น และสังเกตุ Websocket ว่ามี message เข้ามาที่ Broker เรียบร้อยจากนั้น Broker ก็จะทำการ publish ไปยัง Client อื่นๆที่ subscribe ไว้ต่อไป

ข้อใดเป็นการรับส่งข้อมูลของ mqtt message queue telemetry transport

        จากตัวอย่างการสื่อสารการทดลอง pubic และ subscribe ด้วยสมาร์ทโฟนจะเห็นได้ว่า เราสามารถใช้งานสมาร์ทโฟน ใน pubic และ subscribe ข้อมูลได้ดังนั้นเราสามารถประยุกต์ใช้งานเป็นมอนิเตอร์อุปกรณ์ที่ได้ทำการ publish ข้อมูลออกมา หรือสามารถใช้งานเป็นสวิทต์ควบคุมการทำงานของอุปกรณ์ที่ subscribe topic ได้เช่นเดียวกัน และในทำนองเดียวกันเราสามารถใช้เว็บไซต์เช่น freeboard ไปผูกกับ MQTT Broker ที่ใช้เพื่อใช้งานเป็นมอนิเตอร์หรือสวิทต์ควบคุมการทำงานได้เช่นกัน

ข้อใดเป็นการรับส่งข้อมูลของ mqtt message queue telemetry transport

ข้อมูลขอบคุณข้อมูลจาก

– http://mqtt.org/

– https://en.wikipedia.org/wiki/MQTT

องค์ประกอบของ MQTT (Message Queue Telemetry Transport) มีอะไรบ้าง

ซึ่ง MQTT เป็นชื่อเรียกสำหรับโปรโตคอลนี้เท่านั้น โดยหลักการทำงานของ MQTT จริง ๆนั้นมีส่วนประกอบ 3 อย่างคือ ผู้ส่ง (publish) , ผู้รับ (subscribe) และ ตัวกลาง (MQTT broker) โดยผู้รับหรือผู้ส่งจะใช้อุปกรณ์ชนิดไหนก็ได้ ขอเพียงมีแอพพลิเคชั่นหรือโปรแกรมที่รองรับโปรโตคอล MQTT ก็เพียงพอแล้ว

ข้อมใดเป็นวิธีการรับส่งข้อมูลของกลไกเอ็มคิวทีที

หลักการทำงานของ MQTT คือการการรับส่งข้อมูลระหว่าง Server (Broker) และ Clients (Publisher/Subscriber) โดยการประกาศหัวข้อการรับส่งข้อมูลเรียกว่า Topic ไว้ใน Broker จากนั้น Publisher จะส่งข้อมูลไปยัง Topic นั้นๆ และ Subscriber ก็จะได้รับข้อมูลทั้งหมดใน Topic นั้นๆ เช่นกัน เปรียบ MQTT เป็น Facebook.

MQTT ส่งข้อมูลในรูปแบบใด

Posted 16 Oct 2020 15:08 | 14,382 views. MQTT เป็น Protocol ที่ออกแบบมาเพื่อการเชื่อมต่อแบบ M2M (Machine-to-machine) คือ อุปกรณ์ติดต่อหรือสื่อสารกับอุปกรณ์ โดยเป็นส่วนหนึ่งของเทคโนโลยี IoT (Internet of Things) ซึ่งเป็นเทคโนโลยีที่อินเตอร์เน็ตเชื่อมต่อกับอุปกรณ์ต่างๆ MQTT กับระบบ IoT.

กลไกเอ็มคิวทีที (MQTT) สื่อสารผ่านตัวกลางที่เรียกว่าอะไร

โดยตัวโปรโตคอล MQTT เองไม่ได้ออกแบบให้เชื่อมต่อจากเซิร์ฟเวอร์เข้าไปยังไคลเอนต์แบบ HTTP ที่เว็บเบราว์เซอร์เชื่อมต่อกับเว็บเซิร์ฟเวอร์ แต่ MQTT อาศัยตัวกลางที่เรียกว่า broker ในการเชื่อมต่อไคลเอนต์ในระบบเข้าด้วยกัน ทำให้ไคลเอนต์แต่ละตัวสามารถรับข้อมูลจากไคลเอนต์ตัวอื่นๆ ได้