Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

EdisonでMQTT

4,299 views

Published on

Edison経由でBLEの情報をMQTTに出してみる

Published in: Technology
  • Login to see the comments

EdisonでMQTT

  1. 1. EdisonでMQTT 若山史郎 (@r_rudi) ツキノワ株式会社
  2. 2. お前だれよ • 若山史郎 (ツキノワ株式会社) • github: shirou / twitter: r_rudi • 普段はgo言語とJSを使ってWebアプリを書いてます • Ansibleもやってます • MQTTのサービスをやってます • GitHubアカウントでだれでもすぐに使えます
  3. 3. MQTTとは • "Internet of Things" (IoT) 向けプロトコル (TCP/IP上) • 大量のクライアントから小さいデータを送受信するの に向いている • センサー • スマホ • (Message Queueではありません)
  4. 4. MQTTの特長 • 軽量 (固定ヘッダ長2byte、実装のfootprintが小さい) • 1対多、多対多のメッセージ配布 • publish/subscribeモデル • 双方向 • client と server がお互いに通信できる • 切断を検知など不安定な環境での動作に便利な機能
  5. 5. Publish/Subscribe型 Server Topic Topic Topic PublisherSubscriber 1. 事前に登録 Subscriber 2. メッセージ送信 3. 配信 • お互いに知らない • 勝手に送って勝手 に受け取る • 必要なtopicだけ登録
  6. 6. EdisonでMQTT • 実は最初からMQTTが使えます • mosquito というOSS実装を標準搭載 • rootで(未修正の課題) • しかも初期状態でサーバーが起動している
  7. 7. Intel IoT Analytics • https://dashboard.us.enableiot.com/ • IntelのIoTプラットフォーム • iotkit-agent というサービスが動いている • HTTPの他、MQTTでも情報を登録できる
  8. 8. デモ: MQTTで送る • WICEDという BLE モジュール • 温度、湿度、加速度計など5種類のセンサ • cylonjs (http://cylonjs.com/) から簡単に扱える • MQTTは標準のmosquitto_pubコマンドで送信 • mqttcli (https://github.com/shirou/mqttcli)
 はもうちょっと便利
  9. 9. 実行コマンド node get_info.js | mosquitto_pub -h “sango-liteplan”  -t “shirou@github/edison/elb” —l
  10. 10. まとめ • MQTTという軽量プロトコルがあります • 多対多、双方向で通信できて便利 • EdisonはBLEとWiFiが載ってるのでセンサー環境 構築に便利 • sango: http://sango.shiguredo.jp/
 をぜひ使ってみてください!

×