久しぶりにAzure IoT Centralをイジっていたら、、、テスト用のデバイスコードを自動生成する機能がありましたので試しました。
この機能、まぁまぁ以前からあったのかもしれません。気づいていませんでした。
Azure IoT Centralを立てる
料金プランの内容が補記されてた。これは分かりやすくてグー。
そうそう、そういえば今年の春ぐらいから(?)、場所に日本が選べるようになったんですよね。
デバイステンプレートを追加する
次に、デバイステンプレートを追加します。
今回は、実デバイスを用意してつなげるわけではないので、、、あらかじめ用意されているAzure Sphere Sample Deviceを追加することに。
デバイステンプレート > 新規 > Azure Sphere Sample Device を選択、作成します。
テスト用のデバイスコードを生成する
で、ここからが本題。
作成したデバイステンプレートのテストデバイスの管理で、テストデバイスのコードを自動生成、ダウンロードします。
現時点、選べる言語は4種類。
ここでは、CSharpを選んでみました。
ダウンロードしたzipの中に、C#プロジェクトファイル(.csproj)があります。
デバイスコードを実行
Visual StudioでC#プロジェクトファイルを開いて実行してみると、、、
黒画面が起動して、Sending telemetry ...と、送信されているっぽいメッセージが表示されて、
Azure IoT Centralのグラフに値が表示されました!
デバイスコードの中身
ふむふむ。.NET Core 3.1。
Azure IoT Centralへは、AMQPプロトコルで対称キー(!= クライアント証明書)を使ってAzure IoT DPSに接続している。
なので、Azure IoT Centralで事前にデバイスを作成しておく必要は無い。
500[ms] * 20 = 10秒周期にTelemetryとDeviceTwinを送信していて、
Telemetryの値は固定値。
まとめ
- デバイステンプレートに合わせた(テスト用途の)デバイスコードが自動生成できる。
- Azure IoT DPSに接続。事前にデバイスの追加は不要。
- 認証は対称キー。(クライアント証明書ではない。)
- データは固定値。周期は10秒。
デバイスを作る前に、Azure IoT Centralのデバイステンプレートを作って見た目とか動きを確認するときに使うと良さそう。