มาเล่น Telegraf กับ MQTT Broker กัน

Telegraf มี plugin ให้ใช้งานได้หลายรูปแบบทั้ง input, output, process และ service ขึ้นอยู่กับเราต้องการใช้งานแบบไหน ครั้งนี้เราจะใช้ MQTT Consumer สำหรับเชื่อมต่อไปยัง MQTT Broker เพื่อ Subscribe ใน Topic ที่เราต้องการเอาข้อมูลมาใช้ แล้วให้ Telegraf ส่งข้อมูลไปเก็บใน InfluxDB และใช้ Grafana ในการแสดงผลต่อไป

มาสร้าง config กันก่อน ใช้ docker เหมือนเดิมดังนี้

docker run --rm telegraf --input-filter mqtt_consumer --output-filter influxdb config > mqtt-telegraf.conf

แก้ไข MQTT Broker, Topic, InfluxDB Database, Data Type

Continue reading

มาเล่น Raspberry Pi เชื่อมต่อกับ Arduino Sensor กัน

ครั้งที่แล้วได้ลองเล่น MQTT Broker บน Linux Server ครั้งนี้ขอมัดรวมรวดเดียวเลยละกัน เพราะเดี๋ยวจะไม่ได้ blog สักทีดองไว้นานมาก ครั้งนี้เราจะมาลองเชื่อมต่อ Arduino + Sensor ส่งข้อมูลไปยัง Raspberry Pi โดยใช้ MQTT ผ่าน LAN หากลองมาดู diagram เราจะได้ภาพแบบนี้

ลองมาดูทีละส่วน เริ่มจาก Raspberry Pi ก่อน ติดตั้ง MQTT Broker ก่อน เราใช้ Mosquitto เหมือนเดิมดังนี้

Continue reading

ติดตั้งและใช้งาน MQTT Broker กัน

MQTT (Message Queue Telemetry Transport) เป็นโปรโตคอลสำหรับ Internet of Things โปรโตคอลนี้ใช้วิธีการเหมือนกับ Message Queue ปกติแต่พัฒนาให้รองรับงานด้าน Internet of Things นอกจากจะรอรับและอ่านค่าแล้ว ยังสามารถสั่งงานอุปกรณ์ที่ใช้ MQTT ได้ด้วย การใช้งานโปรโตคอลนี้ต้องจะต้องมีอุปกรณ์ที่ฝัง MQTT Broker มาเพื่อทำหน้าที่รับส่งข้อมูลไปยังอุปกรณ์อื่นที่ใช้ MQTT เหมือนกัน เนื่องจากไม่มีอุปกรณ์ที่เล่นกับ MQTT ได้ก็ต้องจำลองกันสักหน่อย

MQTT Broker มีหลายค่ายให้ใช้งาน เราเลือกใช้ของง่ายๆ กันก่อน คือ Mosquitto เจ้ายุงนี้เป็น OpenSource MQTT Broker สนับสนุน MQTT Broker v3.1/3.1.1 วิธีการติดตั้งก็ง่ายมาก ติดตั้งผ่าน PPA ได้เลยดังนี้

sudo apt-add-repository ppa:mosquitto-dev/mosquitto-ppa

sudo apt-get update

sudo apt-get install mosquitto python-software-properties

เท่านี้ก็ใช้งานได้แล้ว อ้อเกือบลืม mosquitto ทำงานบน port 1883 ครับ ได้ Broker แล้วจะทดลองเล่นยังไง มี 2 ทางเลือกคือ ใช้ MQTT Client หรือเขียนโปรแกรมเชื่อมต่อ ทางเลือกที่ดีที่สุดคือใช้ Client ครับ :) ผมเลือก Client ที่คิดว่าน่าจะใช้ง่ายที่สุดคือ MQTT Spy ครับ ดาวน์โหลดมาแล้วเรียกใช้งาน เราจะได้หน้าตาแบบนี้ Continue reading