本日は HoloLens2 の技術調査枠です。
HoloLens2でAzure Digital Twinのラーニングパスを試して実施記録を記事にします。
前提条件
前回記事の続きです。
bluebirdofoz.hatenablog.com
アラートを解決するためにAzure Digital Twins REST APIに接続する
タービンアセットはオペレーターとエンジニアが傍受し、分析し、それに基づいて対応するアラート信号を送信します。
Azure Digital Twins のタービンアセットアラートを HoloLens 2 アプリから解決するには ADT REST API に要求を送信します。
REST API に要求を送信するには最初に認証を行う必要があります。
このチュートリアルではアプリ登録に対応するアプリ資格情報を使用して認証します。
これらの資格情報は個人ではなくアプリを表し、Unity プロジェクトにコピーする必要があります。
アプリが HoloLens 2 用に構築されている場合、これらの資格情報はアプリに直接コンパイルされます。
この認証方法ではユーザーがログインする必要がなくなるので、実稼働システムでは推奨されません。
アプリ登録の設定
ARM テンプレートではアプリ登録のための情報を作成しました。
AppCredentials.txt と Azure_config_settings.txt テキストファイルがこれに当たります。
次のファイルとUnity変数のマッピングを使用して、Unity に値を入力します。
Azure_config_settings.txt
Azure_config_settings.txt | Unity |
adtHostName | Adt Instance URL |
AppCredentials.txt
AppCredentials.txt | Unity |
appId | Client Id |
password | Client Secret |
tenant | Tenant Id |
アプリが Azure Digital Twin と対話できるように、これらの資格情報を Unity プロジェクトに設定する必要があります。
具体的には、これらの値をプロジェクトの ScriptableObject に割り当てて、シーン内の特定の GameObject から参照します。
Azure Digital Twinsの資格情報を追加する
1.Unityプロジェクトを開きます。
2. Assets/ScriptableObjects/AzureDigitalTwin/Credentials フォルダを開きます。
3. メニューから[Assets -> Create -> ScriptableObjects -> Credentials -> ADT Rest API Credentials]を実行します。
4. 作成した ScriptableObject を選択し、Inspector ビューを開き、[ADT Connection Info]パラメータを確認します。
前述の変数マッピングに基づいて、値を設定します。
タービンアラートコントローラーをシーンに追加して認証する
ADTTurbineAlertController は特定のタービンの Digital Twin のアラートプロパティを変更します。
このプロパティが Azure Digital Twin で変更されると、ADTConnection プレハブは通知を受信し、対応するアラート値をローカルで更新します。
次の手順に従い、シーンを設定します。
1. Assets/ADTPrefabs ディレクトリを開き、ADTTurbineAlertController.prefab をシーンにドラッグして配置します。
2. Inspector ビューを開き、[ADT Turbin Alert Controller]スクリプトを探します。
[ADT Connection Info]という名前のフィールドの円形アイコンを選択します。
3. 先ほど作成した ADT Rest API Credentials スクリプトを割り当てます。
4. [File -> Save]で変更を保存します。
記事が長くなったので分けます。
次はHoloLens2にデプロイしてテストを行います。
bluebirdofoz.hatenablog.com