at_ito
2015年8月31日 8時52分
M2MやIoTの実現に適したシンプルで軽量なプロトコルとしてMQTTというものがあります。MQTTはセンサー等のデバイスからデータを送受信する用途に使われることを想定しています。
Armadillo-IoTには、Rubyから簡単にMQTTが扱えますので、Armadillo-IoTの内部温度センサーの値を送信するサンプルプログラムを紹介します。
ソースコードは以下の通りです。
#!/usr/bin/env ruby
require 'mqtt'
host = ''
port = 1883
username = ''
password = ‘'
topic = ''
temp = `cat /sys/devices/platform/i2c-gpio.3/i2c-3/3-0048/temp1_input`
msg = temp.to_f / 1000
client = MQTT::Client.connect(:remote_host => host, :remote_port => port,
:username => username, :password => password)
loop do
client.publish(topic, msg, retain=false)
sleep(1)
end
MQTTはブローカーに接続する必要があるため、上記スクリプトの「host」、「port」、「username」、「password」、「topic」を適切に設定してお使いください。