Arduino IoTs – MQTT and Anto Interface
1. IoT and MQTT
Message Queuing Telemetry Transport (MQTT) เป็นProtocol ที่ออกแบบมาเพื่อการเชื่อมต่อแบบ M2M (machine-to-machine) คืออุปกรณ์กับอุปกรณ์ สนับสนุนเทคโนโลยีiot (Internet of Things) คือเทคโนโลยีที่อินเทอร์เน็ตเชื่อมต่อกับอุปกรณ์ต่าง ๆ เช่น โทรศัพท์มือถือ รถยนต์ โทรทัศน์ ตู้เย็น เข้ากับอินเทอร์เน็ตทำให้สามารถเชื่อมโยงสื่อสารกับอุปกรณ์ต่าง ๆ ได้ โดยผ่านเครือข่ายอินเทอร์เน็ต ซึ่งจะทำให้มนุษย์สามารถ ควบคุมอุปกรณ์ต่าง ๆ จากที่อื่นได้ เช่นการสั่งปิดเปิดไฟในบ้านจากที่อื่น ๆ
เนื่องจาก โปรโตคอลตัวนี้มีน้ำหนักเบา ออกแบบมาเพื่อ ใช้งานกับอุปกรณ์อิเล็กทรอนิกส์ขนาดเล็ก การรับส่งข้อมูลในเครื่อข่ายที่มีขนาดเล็ก แบนร์วิธต่ำ ใช้หลักการแบบ publisher / subscriber คล้ายกับหลักการที่ใช้ใน Web Service ที่ต้องใช้ Web Server เป็นตัวกลางระหว่างคอมพิวเตอร์ของผู้ใช้ แต่ MQTT จะใช้ตัวกลางที่เรียกว่า Brokerเพื่อทำหน้าที่ จัดการคิว รับ - ส่ง ข้อมูลระหว่างอุปกรณ์ และทั้งในส่วนที่เป็น Publisher และSubscriber ปัจจุบันเทคโนโลยีที่กำลังมาแรงสำหรับนักพัฒนาด้าน Embedded
IoT มันคืออะไร พอค้นดูมีหลายลิงค์อธิบายไว้มากมาย เช่น Internet of Things เมื่อคอมพิวเตอร์เริ่มคุยกันเองได้ , โลกแห่ง IoT มาถึงแล้ว , IoT เทคโนโลยีที่ธุรกิจต้องรู้. ลองนึกภาพดูครับว่าถ้าหากอุปกรณ์สามารถสั่งงานไปมาหากันได้ผ่าน www ไม่ว่าจะเป็น PC, Smart Phone หรือแม้แต่อุปกรณ์ขนาดเล็กพวก Micro-Controller, PLC, HUB, Switchหรืออะไรก็แล้วแต่ที่มันสามารถต่อระบบ Network ไม่ว่ามันจะอยู่ที่บ้าน ที่โรงงาน ไร่ นา ฟาร์มโรงเรือน โรงงานอุตสาหกรรมหรือที่อื่นๆที่มีระบบเน็ตเวอร์ที่เข้าถึง www ได้เราจะสามารถควบคุมมันได้ทั้งหมดที่ไหนก็ได้ในโลกใบนี้ IoT ทำมีวิธีการทำงานอย่างไร องค์ประกอบหลักของ IoT จะมี 3 ส่วนคือ Broker, Publisher และ Subscriber. ซึ่งการรับและส่งข้อมูลนั้นมันจะส่งข้อมูลไปมาหากันนั้นจะส่งผ่านตัวกลางนั้นก็คือ Broker Server โดยตัวส่งนี้จะเรียกว่า Publisher ส่งข้อมูลขึ้นไปยัง Broker พร้อมระบุหัวข้อ (Topic)ที่ต้องการส่งข้อออกไป จากนั้นตัวรับซึ่งเรียกว่า Subscriber ถ้าหากตัวรับต้องการรับข้อมูลจากตัวส่งจะต้องทำการ Subscribe หัวข้อ Topic ของ Publisher นั้นๆ ผ่าน Broker เช่นกัน
จากรูปภาพด้านบนจะมีตัว Publisher ทำการ Public ข้อความ “Hello” ใน Topic Device1 เมื่อและถ้าหากมีคอมพิวเตอร์ หรืออุปกรณ์อื่นๆทำการ Subscribe หัวข้อ Topic Device1 เมื่อ Publisher ทำการส่งข้อมูลไปยัง Topic อุปกรณ์ Subscribe จะได้ข้อความ“Hello” เช่นเดียวกัน. ก็คล้ายๆกับที่ใช้งานไลน์ที่คุยกันเป็นกลุ่มนั้นเลยครับ. ซึ่งจะเห็นข้อความ“Hello” ในเวลาเดียวกันนั้นหมายความว่าอุปกรณ์ใดๆที่ทำการ Subscribe Topicเดียวกันก็จะได้ข้อความเดียวกันครับ
โปรโตคอลที่ใช้สำหรับรับและส่งข้อมูลนั้นคือ MQTT ปัจจุบันถึง Version 3. 1 ในที่นี้จะมาทำการทดลองส่งข้อมูลกันตัว Server จะมีอยู่ด้วยกันหลายค่ายครับสำหรับที่ลิสมาด้านล่างนี้
Open Source MQTT Broker Server
· Mosquitto
· RSMB
· ActiveMQ
· Apollo
· Moquette
· Mosca
· RabbitMQ
|
MQTT Client
· Paho
· Xenqtt
· mqtt.js
· node_mqtt_client
· Ascoltatori
· Arduino MQTT Client
|
สำหรับ MQTT Broker Server ฟรีที่พอค้นได้ก็มีดังนี้
· test.mosquitto.org
· broker.mqttdashboard.com
|
ไม่มีความคิดเห็น:
แสดงความคิดเห็น