MQTT - Message Queuing Telemetry Transport
WWW.HAMSIAM.IN.TH # แฮมสยามอินไทยแลนด์ HAM COMMUNITY OF THAILAND
วันที่ 29 มีนาคม 2024 เวลา 00:14:31 *
ยินดีต้อนรับคุณ, บุคคลทั่วไป กรุณา เข้าสู่ระบบ หรือ ลงทะเบียน

เข้าสู่ระบบด้วยชื่อผู้ใช้ รหัสผ่าน และระยะเวลาในเซสชั่น
ข่าว: ต้องขออภัย!!! เนื่องจากตอนนี้เว็บไซต์กำลังอยู่ในช่วงพัฒนา หากมีความผิดพลาดในเว็บประการใด ต้องขออภัยมา ณ ที่นี้ และจะเป็นการขอบพระคุณเป็นอย่างยิ่ง หากท่านนำความผิดพลาดนั้นมาแจ้งให้กับผู้ดูแลฯ แล้วทางเราจะรีบเข้าไปแก้ไขในความผิดพลาดนั้นๆให้เร็วที่สุด
   หน้าแรก   ช่วยเหลือ ค้นหา เข้าสู่ระบบ สมัครสมาชิก  
หน้า: [1] 2   ลงล่าง
  พิมพ์  
ผู้เขียน หัวข้อ: MQTT - Message Queuing Telemetry Transport  (อ่าน 698 ครั้ง)
0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้
deam205
Super Hero Member III
*
ออฟไลน์ ออฟไลน์

กระทู้: 11960


« เมื่อ: วันที่ 16 พฤศจิกายน 2020 เวลา 16:46:26 »


อินเทอร์เน็ตทุกวันนี้เราอาจจะมองแทบทุกอย่างเป็นเว็บไปได้เพราะการสื่อสารส่วนมากบนอินเทอร์เน็ตส่งข้อมูลผ่านโปรโตคอล HTTP แต่ในโลกยุค Internet of Things (IoT) อีกโปรโตคอลที่กำลังมีการใช้งานมากขึ้นเรื่อยๆ คือ MQTT หรือ MQ Telemetry Transport โปรโตคอลสำหรับการเชื่อมต่อแบบ machine-to-machine หรือคอมพิวเตอร์สู่คอมพิวเตอร์

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 จะสามารถประยุกต์ให้อุปกรณ์ต่างๆเชื่อมต่อกันผ่านเครือข่ายของอินเทอร์เน็ตได้ ทำให้เราสามารถสร้างสรรค์โครงงานที่เกี่ยวกับการติดตามอุปกรณ์ เช่น มอนิเตอร์อุปกรณ์ผ่านอินเทอร์เน็ต ควบคุมอุปกรณ์ผ่านอินเทอร์เน็ต เป็นต้น

สำหรับระบบ IoT นั้น การติดต่อสู่ Internet นั้นเป็นสิ่งสำคัญอย่างยิ่งเพราะอินเทอเน็ตทำให้อุปกรณ์ IoT ต่าง ๆสามารถติดต่อสื่อสารและแลกเปลี่ยนข้อมูลกันได้ MQTT (Message Queue Telemetry Transport) ซึ่งพัฒนาต่อมาจาก TCP/IP อีกทีนั้นได้กลายเป็น protocol มาตรฐานสำหรับระบบ IoT และเนื่องจากมันสร้างมาจาก TCP/IP นั้นทำให้ MQTT ประกันว่าข้อมูลที่ส่งกันระหว่างอุปกรณ์ IoT นั้นไม่มีการหล่นหายระหว่างทาง

MQTT ประกอบด้วย อะไรบ้าง
– 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

1. กำหนดให้ Client Device ในตัวอย่างนี้จะเป็นสมาร์ทโฟน ทำการ Subscribe MQTT Broker ตาม Topic ที่ต้องการ ตัวอย่างนี้ติดตาม Topic “temp” ไว้
2. กำหนดให้ Client Device (Device ที่ต่อกับเซ็นเซอร์วัดอุณหภูมิ) แล้วทำการ Publish ค่าขึ้นไปยัง MQTT Broker
3. MQTT Broker Publish ไปยังอุปกรณ์ที่ Subscribe ไว้ ดังนั้นในตัวอย่างนี้สมาร์ทโฟนจะได้รับข้อมูลจาก Client ที่ต่ออยู่กับเซ็นเซอร์เรียบร้อย
จากตัวอย่างการสื่อสารเบื้องต้นของ MQTT จะเห็นได้ว่าการสื่อสารระหว่างอุปกรณ์นั้นสามารถเชื่อมต่อกันได้อย่างกว้างขวาง ไม่จำกัดในเรื่องชนิดอุปกรณ์ว่าจำเป็นต้องเป็นอุปกรณ์ชนิดเดียวกัน สามารถสื่อสารกันได้หลากหลายแพลตฟอร์ม มีตัวอย่างการใช้งานสำหรับการพัฒนาโปรแกรมด้วยภาษาต่างๆ มากมายเช่น ภาษา C, Python และอื่นๆ ทำให้การเชื่อมต่อแบบ MQTT นี้น่าสนใจสำหรับการนำมาประยุกต์ใช้เป็นงานพอสมควร

สรุปประโยนชน์ของ MQTT

1. แค่เขียนโค้ดง่ายๆจากอุปกรณืของเราก็สามารถ เข้าถึงการทำงานของ MQTT ได้แล้ว

2. ประหยัดพลังงานในการส่งข้อมูล ซึ่งใช่กับอุปกรณ์ที่ใช่แค่ ถ่ายแบตเตอร์รี่ หรือ มีขนาด CPU น้อยๆ ได้

3. ติดตั้งระบบง่ายไม่ว่าจะเป็นฝั่ง broker หรือ client ซึ่งใน Python ก็มี library แล้ว

4. เป็น ระบบแบบ event-driven หรือก็คือสามารถรับข้อมูลได้ตลอดเวลาที่ topic นั้นๆ ถูก publish

5. เพิ่มความเร็วในการส่งข้อมูล เนื่องจาก headers ของข้อมูลนั้นมีขนาดเล็ก

6. สามารถแชร์ข้อมูลจาก อุปกรณ์ ไปยังอุปกรณ์อื่นๆได้ง่าย

ก็จบไปแล้วสำหรับบทความนี้หวังว่าจะเป็นประโยชน์ต่อหลายๆคนที่กำลังตั้งใจจะศึกษาเกี่ยวกับระบบ IoT ซึ่งความรู้ตรงนี้จะเอาไปต่อยอดเวลาตอนที่เราจะ ดีไซน์ ระบบของเราได้
บันทึกการเข้า
deam205
Super Hero Member III
*
ออฟไลน์ ออฟไลน์

กระทู้: 11960


« ตอบ #1 เมื่อ: วันที่ 18 พฤศจิกายน 2020 เวลา 10:26:21 »

MQTT - Message Queuing Telemetry Transport อ่านบทความเพิ่มเติม

บริการติดตั้งและออกแบบ ระบบกล้องวงจรปิด, Access Control, Hotel Lock, ไม้กั้นรถยนต์, MATV, ระบบไฟฟ้าอื่น

P.CCTV Network Engineering :: https://www.pi-tech.biz/
บันทึกการเข้า
deam205
Super Hero Member III
*
ออฟไลน์ ออฟไลน์

กระทู้: 11960


« ตอบ #2 เมื่อ: วันที่ 19 พฤศจิกายน 2020 เวลา 12:12:16 »

MQTT - Message Queuing Telemetry Transport อ่านบทความเพิ่มเติม

บริการติดตั้งและออกแบบ ระบบกล้องวงจรปิด, Access Control, Hotel Lock, ไม้กั้นรถยนต์, MATV, ระบบไฟฟ้าอื่น

P.CCTV Network Engineering :: https://www.pi-tech.biz/
บันทึกการเข้า
deam205
Super Hero Member III
*
ออฟไลน์ ออฟไลน์

กระทู้: 11960


« ตอบ #3 เมื่อ: วันที่ 20 พฤศจิกายน 2020 เวลา 15:15:54 »

MQTT - Message Queuing Telemetry Transport อ่านบทความเพิ่มเติม

บริการติดตั้งและออกแบบ ระบบกล้องวงจรปิด, Access Control, Hotel Lock, ไม้กั้นรถยนต์, MATV, ระบบไฟฟ้าอื่น

P.CCTV Network Engineering :: https://www.pi-tech.biz/
บันทึกการเข้า
deam205
Super Hero Member III
*
ออฟไลน์ ออฟไลน์

กระทู้: 11960


« ตอบ #4 เมื่อ: วันที่ 21 พฤศจิกายน 2020 เวลา 16:06:00 »

MQTT - Message Queuing Telemetry Transport อ่านบทความเพิ่มเติม

บริการติดตั้งและออกแบบ ระบบกล้องวงจรปิด, Access Control, Hotel Lock, ไม้กั้นรถยนต์, MATV, ระบบไฟฟ้าอื่น

P.CCTV Network Engineering :: https://www.pi-tech.biz/
บันทึกการเข้า
deam205
Super Hero Member III
*
ออฟไลน์ ออฟไลน์

กระทู้: 11960


« ตอบ #5 เมื่อ: วันที่ 22 พฤศจิกายน 2020 เวลา 13:42:19 »

MQTT - Message Queuing Telemetry Transport อ่านบทความเพิ่มเติม

บริการติดตั้งและออกแบบ ระบบกล้องวงจรปิด, Access Control, Hotel Lock, ไม้กั้นรถยนต์, MATV, ระบบไฟฟ้าอื่น

P.CCTV Network Engineering :: https://www.pi-tech.biz/
บันทึกการเข้า
deam205
Super Hero Member III
*
ออฟไลน์ ออฟไลน์

กระทู้: 11960


« ตอบ #6 เมื่อ: วันที่ 25 พฤศจิกายน 2020 เวลา 11:12:20 »

MQTT - Message Queuing Telemetry Transport อ่านบทความเพิ่มเติม

บริการติดตั้งและออกแบบ ระบบกล้องวงจรปิด, Access Control, Hotel Lock, ไม้กั้นรถยนต์, MATV, ระบบไฟฟ้าอื่น

P.CCTV Network Engineering :: https://www.pi-tech.biz/
บันทึกการเข้า
deam205
Super Hero Member III
*
ออฟไลน์ ออฟไลน์

กระทู้: 11960


« ตอบ #7 เมื่อ: วันที่ 26 พฤศจิกายน 2020 เวลา 17:24:43 »

MQTT - Message Queuing Telemetry Transport อ่านบทความเพิ่มเติม

บริการติดตั้งและออกแบบ ระบบกล้องวงจรปิด, Access Control, Hotel Lock, ไม้กั้นรถยนต์, MATV, ระบบไฟฟ้าอื่น

P.CCTV Network Engineering :: https://www.pi-tech.biz/
บันทึกการเข้า
deam205
Super Hero Member III
*
ออฟไลน์ ออฟไลน์

กระทู้: 11960


« ตอบ #8 เมื่อ: วันที่ 27 พฤศจิกายน 2020 เวลา 19:06:01 »

MQTT - Message Queuing Telemetry Transport อ่านบทความเพิ่มเติม

บริการติดตั้งและออกแบบ ระบบกล้องวงจรปิด, Access Control, Hotel Lock, ไม้กั้นรถยนต์, MATV, ระบบไฟฟ้าอื่น

P.CCTV Network Engineering :: https://www.pi-tech.biz/
บันทึกการเข้า
deam205
Super Hero Member III
*
ออฟไลน์ ออฟไลน์

กระทู้: 11960


« ตอบ #9 เมื่อ: วันที่ 28 พฤศจิกายน 2020 เวลา 15:56:39 »

MQTT - Message Queuing Telemetry Transport อ่านบทความเพิ่มเติม

บริการติดตั้งและออกแบบ ระบบกล้องวงจรปิด, Access Control, Hotel Lock, ไม้กั้นรถยนต์, MATV, ระบบไฟฟ้าอื่น

P.CCTV Network Engineering :: https://www.pi-tech.biz/
บันทึกการเข้า
หน้า: [1] 2   ขึ้นบน
  พิมพ์  
 
กระโดดไป:  

เริ่มนับสถิติตั้งแต่วันที่ 12 มิถุนายน 2556 เวลา 18.24.52 น. (วันและเวลาตอนเปิดเว็บ)
รวมเพ็จวิวทั้งสิ้นจนถึงวันนี้ free counter ครั้ง

Powered by SMF 1.1.15 | SMF © 2006-2009, Simple Machines | Thai language by ThaiSMF