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

KASHIKOIHAKO

ufoo68
October 16, 2021

 KASHIKOIHAKO

ufoo68

October 16, 2021
Tweet

More Decks by ufoo68

Other Decks in Technology

Transcript

  1. スマートボックスとは • 箱の開閉をスマートに制御できる ◦ PC・スマホのアプリを用いた開閉制御 ◦ 箱の開閉者の認証 • 箱の状態管理ができる ◦

    GPSを使った位置情報のトラッキング ◦ 内包物の状態の確認 つまりは、より賢い(KASHIKOI)ことができる箱のことをいう
  2. 最初にやったこと • ロック機構の実装 ◦ サーボモータを使用 • セキュアな通信 ◦ M5Stack Core2

    for AWSに内蔵されたセキュア通信の機能を使用 ◦ MQTT + TLSでAWS IoT coreと通信
  3. Cognitoとはなにか • AWSが提供する認証サービス • Apple、Facebook、Google、Amazon などのソーシャル ID プロバイダー、SAML 2.0 および

    OpenID Connect によるエンタープライズ ID プロバイダーを使用した サインインをサポート • 早い話がログインとかパスワード管理とかの機能を作りたいときに使うサービス
  4. AWS IoTと連携する 1. Cognitoでユーザーを作成する 2. 以下のコマンドを実行する aws iot attach-policy --policy-name

    {{policy name}} --target {{cognito identity id}} policyは証明書を持ったデバイスが持つ権限。Cognitoのユーザーをpolicyにア タッチすることで、証明書と同じ権限をユーザーが持つことができる。
  5. デバイスシャドウを使ってみた デバイスの状態を管理するためのAWS IoTの機能 { "desired": { "boxStatus": "open" }, "reported":

    { "boxStatus": "open" } } desired: { “boxStatus”: “open” } reported: { “boxStatus”: “open” }
  6. デモ動画 使用技術 • ハードウェア ◦ M5Stack Core2 for AWS ◦

    Free RTOS • バックエンド ◦ AWS Cognito ◦ AWS IoT • フロントエンド ◦ Amplify ◦ React ◦ Material UI
  7. さいごに • まとめ ◦ AWS IoTとAmplifyを組み合わせることで、手軽に IoTのウェブアプリケーションをつくることができた ◦ M5Stack core2

    for AWSを使うと手軽にデバイスと AWS IoTとの連携が実現できる(ただし FreeRTOSでの開発となる) ◦ PWAを導入することでネイティブアプリのような動きを実装できた • 今後やってみたいこと ◦ プッシュ通知をなにかに活かしたい ◦ 箱をもう少しかっこよくしたい ◦ ロック機構とかも本格的なものを作ってみたい