はじめに
今回Azure IoTについて勉強してみたいので備忘録として記事にしています。
IoT、Azure IoTとは
IoTとは「Internet of Things(モノのインターネット)」の略で、従来インターネットに接続されていなかった様々なモノ(センサー機器、駆動装置(アクチュエーター)、住宅・建物、車、家電製品、電子機器など)が、ネットワークを通じてサーバーやクラウドサービスに接続され、相互に情報交換をする仕組。
Azure IoTは、IoTを高い可用性およびセキュリティで実現するためのサービス群のことを言うようです。
Azure IoTはいろいろなサービスからなっている
Microsoftの公式サイトには以下のようなイメージが載っています。
たくさんのサービス(サービス以外もありますが)が書かれておりうんざりしてしまいますが、すべてを知っている必要はありません(後ろの方はIoT用のサービスというわけでもないですし)。ここでは代表的なサービスについて記載します。
中核となるのはAzure IoT Hubで、すべてのデバイスの情報がここに集められて後続サービスに回されます。
分類 | サービス名 | 説明 |
---|---|---|
Devices | - | デバイス側に組み込むSDKやOSがここに含まれる。これらを利用し簡単にAzue IoTに通信できたり、高いセキュリティを担保したIoT機器を作ることができる。 |
- | Azure IoT Edge | デバイスからの情報を直接Azureに送信せず一旦受け取るHubの役割をするもの。プロトコル変換やできるだけNW帯域を消費しないようデータの整形や集約を行う。 |
Ingestion & provisioning | Azure IoT Hub | デバイスとクラウドの接続点となるサービス。機器から流れてくるデータ蓄積や機器の状態監視などを行う。 |
Ingestion & provisioning | Device Provisioning Service(DPS) | IoTの運用コストを抑えるためのサービス。デバイスをIoT Hubに自動で接続でき機器を追加するたびに接続先情報を書き込む必要が無い、障害時などにIoT Hubの接続先を切り替えたい場合などに機器を触る必要が無いなどの利点がある。 |
Hot path | - | リアルタイムな情報を取り扱うところ。故障検知や予兆警告などに利用する。Azure Stream Analyticsは、IoT Hubからデータを読み込み、および加工を行い後続サービスへのデータの受け渡しを行う感じ。 |
Warm path | - | リアルタイムというほどではなく数時間単位ぐらいのデータを取り扱うところらしいが、いまいち使い道が分からない。。。 |
Cold path | - | 日、月単位などの過去データを取り扱うところ。統計分析や機械学習などを行いHot pathの閾値に利用したり、Hot pathでは検知できない故障予知などを行う。 |
Management & business integration | - | データの可視化を行うサービス群。 |
Azureに接続できるデバイス
いざAzureへ繋げようと思っても既存の機器でそれができるのか?、新規に導入するとして何を使えばいいのか?という疑問に対しては「Azure Certified Device プログラム」というものがあります。
Azure Certified Device プログラムで認定されている機器は、Azureで適切に動作することが保証保証されています。以下のサイトに各機器がカタログ化されています。