【Azure】Azure IoT Hubのオンラインシミュレータを試してみる

はじめに

こんにちは、がんがんです。
Raspberry Piを用いたIoTの実験を進めております。
今回は比較的簡単に行えるということで、Azureさんが提供しているRaspberry pi Web シミュレータを用いたIoT Hub実験を行ってみます。

目的

  • Azure IoTのオンラインシミュレータを使用してみる
  • Azure IoT Hubの設定

実験

まずはRaspberry Pi Web シミュレータを起動します。

全体の画面はこんな感じです。回路とコードとターミナルが1つのブラウザに表示されています。fritzingを用いて回路を構成しているのは個人的にわくわくポイントです。

f:id:gangannikki:20190717033412j:plain
ブラウザ全体

IoT Hub側の設定

Azure IoT Hubの作成

Azure PotalからAzure IoT Hubを作成します。Azure IoT Hubの選択画面はこちらです。
f:id:gangannikki:20190712234012j:plain

今回気を付けるべきはIoTHub名とその次のサイズとスケールです。
IoTHub名はエンドポイントとして公開されるらしいので(公式より)、名前の付け方には注意です。

サイズとスケールではプランの設定を行います。今回はF1 - Freeプランを設定しました。
Basic、Standard、Freeはそれぞれメッセージの送信量などが異なるようなので詳しくは本家サイトを確認ください。

バイスの登録

次はAzure IoT Hubに新しいデバイスを登録します。
IoT デバイス追加から新しいデバイスを追加します。
f:id:gangannikki:20190727102511j:plain

接続文字列 --- 主キーを後ほど使用するのでコピーしておきます。

Raspberry Pi Web シミュレータを実行

動作実験を行っていきます。デバイス作成時に生成される接続文字列 -- 主キーをコードの15行目(図の赤い部分)に置き換えます。
f:id:gangannikki:20190717034503j:plain

実験結果

実験結果は以下の通りです。まずはLED消灯時です。

f:id:gangannikki:20190717033656j:plain
LED消灯時

次に点灯時です。きちんと点灯しているのがなんかいいですね。

f:id:gangannikki:20190717033738j:plain
LED点灯時

出力としてはこんな感じでした。メッセージ番号・デバイスID・温度・湿度の4パラメータがSendされています。

> 
Sending message: {"messageId":1,"deviceId":"Raspberry Pi Web Client","temperature":23.00715591212221,"humidity":68.91515106664123}
> 
Message sent to Azure IoT Hub
> 
Sending message: {"messageId":2,"deviceId":"Raspberry Pi Web Client","temperature":29.36336087400903,"humidity":75.859624958034}
> 
Message sent to Azure IoT Hub
> 

Azure Portalをのぞいてみるときちんとカウントされていることが分かります。
f:id:gangannikki:20190717035417j:plain

まとめ

今回はAzureで提供されているオンラインシミュレータを試してみました。ブラウザがあればいろいろと実験できるのでラズパイがない環境でも実験できて便利ですね。
次のステップとして物理デバイスでIoT接続を試してみます。