IoT Plug and Playデバイスの開発とAzureデバイス認定の流れ

3 min read読了の目安(約3100字

概要

マイクロソフトが推進しているIoT Plug and Playに対応したデバイスの開発と、これが正しく実装されていてきちんと動くことを示すAzureデバイス認定を取得する際の全体の作業フロー(流れ)です。

IoT Plug and Playデバイス開発とAzureデバイス認定の両方とも、マイクロソフトのドキュメントに詳しく書かれています。まぁまぁ文書が多くて長く、全容が掴みにくいので、ここに簡単にまとめておきます。

IoT Plug and Playとは?

「デバイスの持つ機能をクラウドにハードコードせず、疎結合する仕組み、ルール」です。

具体的には、デバイスの持つ機能[テレメトリ,プロパティ,コマンド]をモデルに記述して公開しておき、デバイスがクラウドに接続するときにモデルを一意に決めるID(DTMI)を送ります。DTMIを受け取ったクラウドは、DTMIが一致するモデルを読み込んでデバイスの持つ機能を把握し、データ保存や分析、グラフ表示などに利用します。

こうすることで、デバイス開発者の側からは、複数のクラウドサービスに利用してもらう機会が増えます。クラウドがIoT Plug and Playに対応していれば、デバイス個別にクラウドをカスタマイズする必要が無いからです。クラウド開発者の側からは、複数のデバイスを利用することが可能になります。いまあるIoT Plug and Playデバイスに加え、これから発売されるIoT Plug and Playデバイスも利用することができます。

  • デバイス開発者は、複数のクラウドサービスに利用してもらう機会が増える
  • クラウド開発者は、複数のデバイスを利用できる

モデルがどんな定義で、どのようにしてクラウドへ公開、共有してもらうか?がポイントです。
モデルの定義はデジタルツイン定義言語(Digital Twins Definition Language, DTDL)で記述します。DTDLは現在v2で、Digital Twins Definition Language(DTDL)で規定されています。雰囲気だけ掴みたいなら、IoT プラグ アンド プレイ モデリング ガイドを見るのも良いです。
モデルの公開、共有はいくつか方法がありますが、マイクロソフトが運用しているパブリックデバイスモデルリポジトリ(パブリックDMR)に公開するのがオススメです。ここにモデルをアップロードすることで、不特定のクラウドからモデルを検索できるようになります。

Azureデバイス認定とは?

「Azureデバイス認定」は、勝手に作った文言で、、、正しくは「Azure Certified Deviceプログラム」と言います。
デバイスが決められた基準に適合していることを、マイクロソフトが保証する認定制度です。

現在、Azureデバイス認定は4つあります。

  1. Azure Certified Device
  2. IoT Plug and Play
  3. Edge Managed
  4. Edge Secured-core

Azureデバイス認定を取得すると、マイクロソフトから「きちんと動くデバイスですよ!」と認められるとともに、次の特典が得られます。

  • Azure認定デバイスカタログ(Azure Certified Device catalog)に掲載
  • Azure認定デバイスロゴ(Azure Certified Device badge)の使用
  • 「xxx is Microsoft Azure Certified.」と言って良い

IoT Plug and Playデバイスの開発とAzureデバイス認定の流れ

では、IoT Plug and Playデバイスを開発とは?いったいどんなことをすれば良いのでしょうか?

詳しくはIoT プラグ アンド プレイ デバイス開発者ガイドに書かれていますが、Azureデバイス認定まで含めて要約すると次の作業があります。

  1. モデルを作成
    1-1. モデルファイルを作成
  2. デバイスを作成
    2-1. Azure IoT Hubに接続
    2-2. DTMIを通知
    2-3. テレメトリ、プロパティ、コマンドを実装
  3. モデルを公開
    3-1. パブリックDMRにモデルファイルをプルリクエスト
    (3-2. パブリックDMRにモデルファイルをマージ)
  4. デバイスを機能アップ
    4-1. Azure IoT Hub DPSに接続
    4-2. DTMIを通知
    4-3. プロビジョニングを実装
  5. Azureデバイス認定
    5-1. デバイス情報を入力
    5-2. Get Started Guideを作成
    5-3. 接続テスト
    5-4. レビュー、公開

モデルを公開するか否か、Azureデバイス認定を取るか否かでやること(範囲)が変わります。

モデル公開をせず、個人や特定組織内だけで使うデバイスのときは、1~2。
モデルをパブリックDMRに公開するときは、1~3。
デバイスをAzure IoT Centralでパッと使えるようにするには、1~4。
Azureデバイス認定取得を狙うなら、1~5。