Upgrade to Pro — share decks privately, control downloads, hide ads and more …

IBM CloudとNode-REDでMQTTしながらダァ シエリイェスなお正月

pokiiio
December 26, 2017

IBM CloudとNode-REDでMQTTしながらダァ シエリイェスなお正月

pokiiio

December 26, 2017
Tweet

More Decks by pokiiio

Other Decks in Technology

Transcript

  1. IBM CloudとNode-REDで
    MQTTしながら
    ダァ シエリイェスなお正月
    ポキオ

    View Slide

  2. ポキオ
    Twitter : @pokiiio
    Blog : Androidのメモとか
    (http://relativelayout.hatenablog.com/ )
    って誰?

    View Slide

  3. ポキオ
    って何してるの?
    某メーカーでAndroidエンジニア

    View Slide

  4. ポキオ
    のなまえの由来
    ポッキーよりプリッツが好き

    View Slide

  5. ダァシエリイェス…?

    View Slide

  6. View Slide

  7. 京急は神
    *個人の感想です

    View Slide

  8. デブサミ2017
    コミュニティ展示を
    させていただきました

    View Slide

  9. de:code 2017
    前夜祭(day0)
    LTしてきました

    View Slide

  10. dotstudioさんで
    記事も公開
    みんなもダァ!

    View Slide

  11. ハンズオン会も
    開催してます
    みんなでダァ!

    View Slide

  12. 京急が遅延したら
    LEDがチカチカするガジェットを
    色々作ってきた

    View Slide

  13. ダァ 初号機 ダァ 2号 ポキオ基板

    View Slide

  14. 2017年、
    Lチカしかしてない(震え声)

    View Slide

  15. 一応、光らせ方を工夫しています…

    View Slide

  16. ①HTTP-GET
    ②HTML取得
    京急の運行情報HP ESP8266 フルカラーLED
    ③HTMLパース
    ④運行状況判断
    ⑤何色で光らせるか決定
    ⑥LED制御
    ESP8266で愚直にパースする
    ライブラリ化してGitHubで公開中
    ①〜④: ESP8266Keikyu(https://github.com/pokiiio/ESP8266Keikyu)
    ESP32Keikyu(https://github.com/pokiiio/ESP32Keikyu)
    ⑥: EmotionalBlink(https://github.com/pokiiio/EmotionalBlink)

    View Slide

  17. ①HTTP-GET
    ③HTML取得
    京急の運行情報HP ESP8266 フルカラーLED
    メインのロジックをGoogle Apps Scriptに逃す
    Google Apps Script
    ②HTTP-GET
    ④HTMLパース
    ⑤運行状況判断
    ⑥何色で光らせるか決定
    ⑦色情報を通知 ⑧指定された
    色で光らせる
    ロジック変更が容易
    複雑なロジックでも対応可能、
    複数台のESP8266に対して簡単に同じロジックを適用できる
    結局、トリガーはESP8266が持つことになる

    View Slide

  18. そこで
    IBM Cloud x Node-RED x MQTT

    View Slide

  19. IBM Cloud? Node-RED? MQTT?
    ● IBM Cloud
    ○ IBMのPaaS
    ○ Bluemixのこと
    ○ 最近、ライトアカウント(無料プラン、クレジット登録不要)ができた!(アツい)
    ● Node-RED
    ○ ノードを繋ぐだけで処理を実装できる
    ○ ノンプログラミングに近い
    ○ IBM Cloud上で動く
    ● MQTT
    ○ 主にIoT向けの軽量な通信方式
    ○ IBM CloudアカウントでMQTTがサポートされている

    View Slide

  20. Node-RED:こんな感じでノードとノードを繋ぐ

    View Slide

  21. これを使って
    ダァ シエリイェスなガジェットをつくる

    View Slide

  22. ①情報更新を検知
    京急の運行情報HP ESP8266 フルカラーLED
    Node-RED
    on IBM Cloud
    ②HTMLパース
    ③運行状況判断
    ④何色で光らせるか決定
    ⑤色情報を通知
    (MQTT)
    ⑥指定された
    色で光らせる
    全体の構成
    運行状況の更新をトリガーにLEDを光らせられる
    (GAS同様に)ロジック変更が容易
    ライトアカウントだとMQTTの無料枠に上限がある

    View Slide

  23. Node-REDの構成

    View Slide

  24. ハードウェア
    鏡餅の中にLEDテープを装着
    LEDテープはESP8266で制御

    View Slide

  25. 12月中に鏡開きをする罰当たり

    View Slide

  26. デモ

    View Slide

  27. 遅延
    黄色点滅
    大幅なダイヤ乱れ
    オレンジ色点滅
    運転見合わせ
    赤色点滅
    JR振替輸送受託のために遅延
    赤色点滅
    ポキオの工作は平常運転

    View Slide

  28. サマリ
    ● IBM Cloudのライトアカウントは無料でいろいろ使える
    ● Node-REDで簡単プログラミング
    ● MQTTを使うとマイコンボードでも簡単に通知を受けられる
    ● サーバー側にロジックを寄せてマイコンはLEDだけ制御するよさみ
    ○ 多台数対応が容易
    ○ ロジック変更が容易
    ○ 非力なマイコンではできない処理も可能

    View Slide

  29. THANK YOU

    View Slide