AWS IoTは何を可能にするのか
AWSはハードウェアやネットワークなどのインフラストラクチャーの提供(IaaS)、アプリケーションの開発・実行基盤提供(PaaS)やソフトウェア提供サービス(SaaS)も行う総合的なプラットフォームですが、AWS IoTはAWSの各種サービスと連携して、デバイスとの同期やデバイスをまたぐセキュリティなどについてのプラットフォームを提供します。
AWSによってマネージドされたIoTサービスではいったいどんなことができるのか、さっそく見てみましょう。
AWS IoTとは
■AWS IoT デバイス SDK
AWS IoT デバイス SDKは、AWSで制御されたハードウェアやアプリケーションを相互に接続するためのキットです。接続方式としてはMQTT、HTTP、WebSocketsの各方式があります。この接続によってデバイス相互の接続・認証・メッセージ交換が可能となります。SDKはC言語、JavaScript、Arduinoで書かれています。
■デバイスゲートウェイ
AWS IoT のデバイスゲートウェイは、各端末と AWS IoT との間の接続を確立します。接続方式はMQTT、WebSocket、および HTTPがあります。端末対端末の一対一の接続だけでなく、一つの端末から複数の端末への接続も可能にし、10 億台以上接続されても自動的に最適にスケールされていきます。
■認証および認可について
10億台以上の端末接続を実現するAWS IoTでは、端末同士のすべての接続箇所での相互認証と暗号化が可能です。この相互認証と認可の接続方式としては、HTTP、MQTT、WebSocketsがあり、認証にはAWS IoTによって生成された証明書、および正式な認証機関によって署名が確認された証明書が使用できます。
■レジストリ
AWS IoTに接続された各端末には、デバイスのタイプや接続方法にかかわらず、永続化された固有の ID がレジストリによってアサインされます。もともと固有の番号がないデバイスに対してもAWS IoTのデバイスレジストリ側で独自の番号を割り当てて管理することもできます。
■デバイスのシャドウ
IoTの管理では、オフライン状態の端末をどうやって管理するかが課題になりますが、AWS IoTのデバイスシャドウには、端末が接続されていない状態のときでも、各デバイスについての最終接続状態がキープされます。
■ルールエンジン
ルールエンジンによって、接続されたデバイスによって生成されるデータを収集・処理・分析します。ユーザーがあらかじめ定義したルールにしたがって、AWS IoT に向けて発行された入力メッセージが評価・変換され、別の端末やサービスへと配信されます。
AWS IoTを使った事例
AWSの豊富なサービスと連携したAWS IoTは、日本でもすでに著名なサービスで稼働しています。その例をいくつかあげてみましょう。
【あきんどスシロー事例】
あきんどスシローでは、回転ずしの皿の後ろにタグがついていて、そのタグをセンサーで読み取ることで、どの寿司が食べられたかをリアルタイムに把握しています。店員が入店したお客様の構成を、例えば「大人の男性4名」と入力すると、これまで収集したデータを元に、厨房内のディスプレイに1分後と15分後の食欲について需要予測が出てきます。
AWS IoTを利用する以前は店長の勘と経験で需要を予測し材料の発注を行っていましたが、AWS IoTの需要予測により、食材の廃棄率が1/3に減少するという効果を出しています。
【まとめ】
今、時代は大きくIoTの方向へ進んでいます。AWSが多くのインターネットサービス事業者にとってインフラストラクチャーサービス(IaaS)、アプリケーションの開発・実行環境(PaaS)、ソフトウェアサービス(SaaS)提供プラットフォームとして存在感を増す中、AWS IoTも時代のニーズに応えて今後ますます進化し続けていくものと思われます。