演習 - アラートを解決するために Azure Digital Twins REST API に接続する
実際の状況では、風力発電所は継続的には稼働しません。 タービン アセットで、稼働しきい値を超える異常が発生する場合もあります。 このような状況では、タービン アセットは、オペレーターとエンジニアが受信し、分析し、それに基づいて対応するアラート信号を送信します。 Mixed Reality アプリから Azure Digital Twins のタービン アセット アラートを解決するには、Azure Digital Twins REST API に要求を送信します。
REST API に要求を送信するには、認証する必要があります。 この学習モジュールのコンテキストでは、"アプリ登録" に対応するアプリ資格情報を使用して認証を行います。 これらの資格情報は、個人ではなくアプリを表し、Unity プロジェクトにコピーする必要があります。 アプリをビルドすると、これらの資格情報はアプリに直接コンパイルされます。 この方法は、ユーザーがサインインする必要がないため、運用システムの認証にはお勧めしません。 この方法では、承認されていないユーザーのアクセスを防げません。 この学習モジュールでは、わかりやすくするためにこの方法を使用します。
とりわけ、ARM テンプレートは必要なアプリ登録を作成します。 出力の一部として、Unity スクリプト可能オブジェクトの構成に必要な重要な変数を含む、AppCredentials.txt と Azure_config_settings.txt のテキスト ファイルを作成しました。 次の変数マッピングを使用して、Unity に値を入力します。
Azure_config_settings.txt | Unity |
---|---|
adtHostName | Adt Instance URL |
AppCredentials.txt | Unity |
---|---|
appId | クライアント ID |
password | クライアント シークレット |
tenant | テナント ID |
アプリが認証して Azure Digital Twins と対話できるように、これらの資格情報と URL を Unity プロジェクトに転送する必要があります。 具体的には、これらの値をプロジェクト内のスクリプト可能オブジェクトに割り当て、シーン内の特定の GameObject
からその ScriptableObject
を参照する必要があります。
Azure Digital Twins の資格情報を追加する
Unity プロジェクト パネルで Credentials フォルダーに移動します。[アセット]>[ScriptableObjects]>[AzureDigitalTwin]>[Credentials]。
資格情報のスクリプト可能オブジェクトを作成するには、[アセット]>[作成]>[ScriptableObjects]>[資格情報]>[ADT Rest API 資格情報] を選択します。
新たに作成したスクリプト可能なオブジェクトを [プロジェクト] パネルで選択し、[インスペクター] パネルでそのオブジェクトの構成パラメーターを確認します。 上記の変数マッピングに基づいて、AppCredentials.txt ファイルから値を転送します。
タービン アラート コントローラーを追加する
タービン アラート コントローラーをシーンに追加して認証するには、以下の手順を実行します。
ADTTurbineAlertController
は、特定のタービンのデジタル ツインのアラート プロパティを変更します。 このプロパティが Azure Digital Twins で変更されると、ADTConnection プレハブは通知を受信し、対応するアラート値をローカルで更新します。[アセット]>[ADTPrefabs]>[ADTTurbineAlertController] を [プロジェクト] パネルから一覧の下部にある [階層] パネルにドラッグします。
[インスペクター] で、ADT タービンアラート コントローラー (スクリプト) コンポーネントを探します。 [Adt 接続情報] という名前のフィールドの値ボックス内の円形アイコンを選択します。
[Adt 接続情報] でプロパティを選択し、ADTRestAPICredentials スクリプト可能オブジェクトを割り当てます。
[ファイル]>[保存] でファイルを保存します。