演習 - 風力発電所のパフォーマンス イベントを特定し、アクションを実行する

完了

実際の機能をエミュレートするには、シミュレーターを使用して、風力発電所用のデータ パイプライン内の実際の IoT デバイスを置き換えます。 シミュレーターによりテレメトリ データが IoT Hub に送信されます。 IoT Hub により、Azure SignalR Service とインターフェイスで接続する Azure Digital Twins サービスに通知されます。 その後、データは Mixed Reality アプリにプルされます。

風力発電所のデジタル ツインでは、シミュレーターにより、ユーザーからの要求時に Azure Digital Twins にプロパティの更新が送信され、アラートが通知されます。 このアラートは、操作イベントを知らせるもので、Mixed Reality アプリ エクスペリエンスで表示されます。 ユーザーは、たとえばボタンを押すことで、UI を使用してイベントを解決できます。 Azure Digital Twins とご自分のデジタル ツインの間の通信は、Azure Digital Twins REST API を介して行われます。 この情報は、実際のソリューション アーキテクチャを正確に表現するものではありませんが、このモジュールでのデジタル ツインのシミュレーターの実装を容易にします。 通常、IoT デバイスは Azure Digital Twins と直接通信しません。 これは Azure IoT Hub を介して行われます。

事前に構築した実行中のシミュレーターでは、スタンドアロン コンソール アプリケーションから Azure Digital Twin に 5 秒ごとにテレメトリが送信されます。 このテレメトリは正常な状態を表し、turbine OK というイベント コードを持ちます。 ユーザーがシミュレーターでアラートをトリガーすると、アラートの状況を表す変更されたテレメトリが送信されます。 シミュレーターにより、プロパティの更新が Azure Digital Twins に送信されます。 この更新プログラムにより、特定のタービンのデジタル ツインの Alert プロパティが True に設定されます。 シミュレーターでは、アラート プロパティが False に設定されるまで、一定の間隔で Azure Digital Twins のポーリングを開始します。これは、ユーザーがデバイス内のアプリからアラートをクリアすることによってトリガーされます。 アラートがクリアされると、シミュレーターは turbine OK のイベント コードで標準のテレメトリの送信を再開します。

データ シミュレーターは、次の 2 つの目的で Azure Digital Twin REST API に接続します。

  • Azure Digital Twins にプロパティの更新を送信するため。 つまり、turbine T102 のアラート状態を切り替えるためにプロパティが更新されます。
  • アラートの状態をポーリングする (ユーザーによってフラグが設定され、クリアされるまで、また通常のテレメトリ値のストリーミングが再開されるまで)。

Visual Studio DeviceSimulator ソリューションを使用して、Azure Digital Twins にテレメトリ データを送信する風力発電所をシミュレートします。 Unity で新しく構成されたデジタル ツインでは入力を受け取り、風力発電所の動作条件が表示されます。

Note

Azure アカウントで不要な料金が発生しないように、必要ないときは必ずシミュレーターを停止してください。

風力発電所のデバイス シミュレーションを開始する

  1. Visual Studio で、以前に構成した DeviceSimulator.sln を開いてください。
  2. [再生] ボタンまたは F5 キーを押して、DeviceSimulator を実行してください。
  3. 任意のキーを押して、シミュレーションを開始します。

風力発電所のパフォーマンスの概要を確認する

  1. Mixed Reality デバイスを装着してください。

  2. [サイトの概要] メニューにアクセスしてください。 デバイス上でビルドを実行する場合は、どちらかの手のひらを上向きにして、そこを見てください。 この動作により、[サイトの概要] パネルを表示するボタンを含むフローティング UI パネルが表示されます。 ボタンを選択します。 ユーザーがマップ内を移動すると、[サイトの概要] パネルも浮いている状態でユーザーと一緒に動きます。

    Screenshot of the site overview menu on HoloLens 2 displaying turbine data.

DeviceSimulator は、コンピューターで実行されているコンソール アプリケーションから Azure Digital Twins に 5 秒ごとにテレメトリ メッセージを送信するように構成されています。 既定では、テレメトリの読み取り値はイベント コードと共に送信されます。

Value: 100
Description: OK

1 つのタービンでのライト アイシング イベントをシミュレートする

  1. HoloLens 2 をフリップアップするか、Mixed Reality ヘッドセットを外して、PC に戻ってください。
  2. [DeviceSimulator] ウィンドウで、キーボードのスペース バーを押してください。 このアクションで、ライト アイシング アラートが Turbine T102 に送信されます。 タービン T102 を表す Azure Digital Twins オブジェクトは、True に設定されている Alert プロパティの更新プログラムを受け取ります。

テレメトリの読み取りを使用して、デバイス上の Azure Digital Twins 接続によって新しいイベント コードがアプリに返送されます。

Value: 400
Description: Light icing (rotor bl. ice sensor)

タービン T102 のアラートを確認する

  1. HoloLens 2 を元に戻すか、Mixed Reality ヘッドセットを装着して、イマーシブ エクスペリエンスを再開します。
  2. Mixed Reality アプリでタービン T102 を選択します。 マップ内のタービンの上にアラート アイコンが表示され、タービン T102 の UI パネルの横にアラート条件が強調表示されます。

この演習では、サイト上の問題を解決するためにオフラインでアクションが実行されます。 たとえば、技術者をタービンの場所に送る場合があります。 通常の稼働状態をシミュレートするには、アラートをクリアし、デジタル ツインを完全な運用サービスに戻し、強調表示されたタービンを選択して、[タービン パネル] からアラートを解決します。

タービン T102 のアラートをクリアする

[リセット コマンドの送信] ボタンを選択してください。 これにより、Azure Digital Twins にメッセージが送信され、タービン T102 のデジタル ツインのアラート プロパティが False に設定されます。

タービン T102 のアラートの更新を検証する

  1. UI パネルに、更新が成功したことを示すメッセージが表示されていることを確認してください。

  2. HoloLens 2 をフリップアップするか、Mixed Reality デバイスを外して、PC に戻ってください。

  3. 更新が成功したことを示すメッセージが、DeviceSimulator コンソール アプリに書き込まれたことに注目してください。

  4. イベント コードを 400 ではなく 100、タービン T102 の説明を Turbine OK と指定して、DeviceSimulator コンソール アプリがアラート以外の、または通常のテレメトリ メッセージを送信していることを確認してください。

    Note

    デジタル ツインのプロパティは、Azure Digital Twins で直接調べることができます。 Azure Digital Twins Explorer Web アプリまたは Azure CLI コマンドを使用して、デジタル ツインのプロパティを閲覧してください。

DeviceSimulator を停止する

コマンド ウィンドウで Ctrl+C キー、または Visual Studio で [停止] ボタンを押してください。

アプリの終了

  1. HoloLens 2 を元に戻すか、Mixed Reality ヘッドセットを装着して、イマーシブ エクスペリエンスを再開します。
  2. イマーシブ ビューを使用するアプリを終了するには、開始ジェスチャを使用してスタート メニューを起動し、Mixed Reality のホーム ボタンを選択してください。
  3. アプリを終了したら、ウィンドウの右上にある閉じるアイコンを使用してアプリ ウィンドウを閉じてください。