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

AWS IoT Events はステートマシンですから。/aws-iot-events-is-statemachine-for-iot-devices

AWS IoT Events はステートマシンですから。/aws-iot-events-is-statemachine-for-iot-devices

JAWS-UG広島14回目@酒まつり
Oct. 13, 2019 / 広島大学
Max@SORACOM

Kohei "Max" MATSUSHITA

October 13, 2019
Tweet

More Decks by Kohei "Max" MATSUSHITA

Other Decks in Technology

Transcript

  1. AWS IoT Events は
    ステートマシンですから。
    JAWS-UG広島14回目@酒まつり
    Oct. 13, 2019 / 広島大学
    Max@SORACOM

    View Slide

  2. 株式会社ソラコム
    テクノロジー・エバンジェリスト
    松下享平 (まつした こうへい)
    "Max"
    講演回数 140超/年
    保有スライド枚数 8000枚超
    オーバーラン常習犯

    View Slide

  3. Max の好きな AWS サービス
    AWS IoT Core

    View Slide

  4. View Slide

  5. IoT やってる??

    View Slide

  6. #あのボタン
    の会社

    View Slide

  7. クラウド
    ネットワーク
    センサー/デバイス
    “モノ”
    「IoT」とは?
    モノやコトをデジタル化

    View Slide










  8. View Slide

  9. AWS IoT Core
    この辺で使う
    サービスの話。

    View Slide

  10. Lambda アーキテクチャ
    コンテナ

    View Slide

  11. 時代はステートレス

    View Slide

  12. ステートが必要になることも
    あるんです

    View Slide

  13. Open Close
    ステート
    どこに保存しておこうか?

    View Slide

  14. デバイスシャドウで「デジタルツイン」
    Close

    View Slide

  15. シャドウステータスの更新方法
    クラウド上:
    •AWS IoT Core のルールエンジン
    •その先の AWS Lambda
    デバイス上:
    •AWS IoT Greengrass
    (ってかLambda)

    View Slide

  16. 結局 AWS Lambda じゃねぇか!!

    View Slide

  17. ステート実装の面倒な事
    どんなステート
    があるの?
    どういう条件で
    ステート移行
    するの?

    View Slide

  18. AWS IoT Events

    View Slide

  19. View Slide

  20. AWS IoT Events 「探知機モデル」編集画面
    これは…ステートマシンの味だぜ!!!!

    View Slide

  21. ステートマシンって?
    • いわゆる「状態遷移(図)」だよ。

    View Slide

  22. 変数 => [距離]
    [距離] 200 以上
    [距離] 200 未満
    AWS IoT Events が
    • 最終的なステートを保存してくれる
    • 次回はそのステートからスタートしてくれる
    [距離] = 250 →
    ← [距離] = 100
    ※ Close に移行
    ← [距離] = 300
    ※ Open のまま

    View Slide

  23. 変数 => [距離]
    [距離] 200 以上
    [距離] 200 未満
    • OnEnter
    • OnInput
    • OnExit
    • OnEnter
    • OnInput
    • OnExit
    ステートに遷移した際の
    アクションを指定できる

    View Slide

  24. 結局 AWS Lambda じゃねぇか!!
    とはいえ、コード内には
    ステート移行条件の If 文とか
    書く必要が無い。
    「Lambda が Lambda であるために」

    View Slide

  25. AWS IoT Core からの
    Invoke 方法は?

    View Slide

  26. View Slide

  27. AWS IoT Events は
    ステートマシーン
    ステートは
    AWS IoT Events に
    任せよう

    View Slide

  28. View Slide

  29. 幸運の女神は前髪しかない
    いや、つるっぱげなので
    準備して両手でキャッチしろ。

    View Slide

  30. Max でした!

    View Slide