MRが楽しい

MRやVRについて学習したことを書き残す

HoloLens2でAzure Digital Twinのラーニングパスを試す その1

本日は HoloLens2 の技術調査枠です。
HoloLens2でAzure Digital Twinのラーニングパスを試して実施記録を記事にします。
f:id:bluebirdofoz:20210609225333j:plain

実施内容

以下のラーニングパスを実施して HoloLens2 で Azure Digital Twin を試します。
docs.microsoft.com

概要

シミュレートされた運用テレメトリデータを physical assets から Azure Digital Twin にストリーミングし、Unity と HoloLens で視覚化します。

前提条件

・Unity 2020.3のインストール
Visual Studio 2019のインストール
・Azure CLIのインストール
・Azureアカウント

Azureサービス

本項で使用される Azure サービスは以下の通りです。

・Azure SignalR
・Managed Identity
・Container instances
・Storage account
・Event grid topic
・Azure Digital Twins
・Application Insights
・Event grid system topic
・App Service plan
・Function app
・IoT Hub
・Deployment Script

本項ではこれらの Azure サービスのセットアップを簡略化するため、Azure Resource Manager (ARM) テンプレートを使用します。
docs.microsoft.com

視覚化を行うUnityプロジェクトの作成

Azure Digital Twins プレハブを Unity プロジェクトに追加します。
ここでは次の手順に従って、すでに構築されている Unity シーンを起動して実行します。

1. 以下のGitHubからプロジェクトを複製またはダウンロードします。
https://github.com/MicrosoftDocs/mslearn-mr-adt-in-unity\Unity-Project
f:id:bluebirdofoz:20210609224912j:plain

2. ダウンロードしたフォルダ内の以下の Unity プロジェクトを開きます。

mslearn-mr-adt-in-unity-main\mslearn-mr-adt-in-unity-main

f:id:bluebirdofoz:20210609224923j:plain

3. プロジェクトの Unity バージョンは 2020.3 で作成されています。
f:id:bluebirdofoz:20210609224932j:plain

4. [Project]パネルから[Assets -> Scene -> SupportingScene -> ModuleStartScenes]フォルダを開きます。
f:id:bluebirdofoz:20210609224941j:plain

5. 2_PlaceDigitalTwinAssets.unity を開きます。
このシーンには使用する Bing Maps.prefab プレハブが含まれています。
f:id:bluebirdofoz:20210609224955j:plain

6. Bing Maps オブジェクトの Inspcetor ビューを開き、開発者キーを登録します。
f:id:bluebirdofoz:20210609225005j:plain

Bing Maps アカウントとキーの作成手順

Bing Maps アカウントを持っていない場合は以下の手順に従って Bing Maps アカウントを作成し、キーを作成します。

1. Bing Maps サイトの[Sign in]ボタンから Microsoft アカウントを使ってログインします。
www.bingmapsportal.com
f:id:bluebirdofoz:20210609225024j:plain

2. [Yes, let's create a new account]をクリックするとログインした Microsoft アカウントで Bing Maps アカウントが作成されます。
f:id:bluebirdofoz:20210609225034j:plain

3. アカウント名、表示名、会社名、eメールアドレス、電話番号を設定します。
利用規約の同意にチェックを入れて[Create]ボタンを実行します。
f:id:bluebirdofoz:20210609225046j:plain

4. ログインページが開きます。次にキーの作成を行います。
[My account]のプルダウンを開き、[My Keys]を選択します。
f:id:bluebirdofoz:20210609225055j:plain

5. キーの作成画面が表示されます。
以下の項目を入力し、[Create]ボタンを実行します。

Application name:アプリケーション名(必須項目)
Application URL :アプリケーションURL
Key type        :キータイプ(必須項目)
Application type:アプリケーションタイプ(必須項目)

今回はキータイプは[Basic]、アプリケーションタイプは[Dev/Test]を選択しました。
f:id:bluebirdofoz:20210609225107j:plain

キータイプの種別は以下のページに説明があります。
www.microsoft.com

6. これでキーが作成されました。
[Show key]をクリックしてキーを確認します。
f:id:bluebirdofoz:20210609225142j:plain

7. ここで表示されるキーをコピーします。
f:id:bluebirdofoz:20210609225153j:plain

Bing Mapsの設定

Bing Maps オブジェクトに作成したキーを設定し、Bing Maps の表示設定を行います。

1. [Developer Key]に作成したキーを設定すると、Bing Maps オブジェクトにマップが表示されます。
f:id:bluebirdofoz:20210609225204j:plain

2. [Location]の情報を以下の通り変更します。

Latitude  : 48.38
Longitude :-67.703
Zoom Level: 15.5

f:id:bluebirdofoz:20210609225214j:plain

3. 次に[Map Layout]の情報を以下の通り変更します。

Map Shape        :Cylinder
Local Map Radius :1
Local Base Height:0.3

f:id:bluebirdofoz:20210609225224j:plain

これで Bing Maps オブジェクトの設定は完了です。

ADT接続プレハブの追加

最後にシーンへ ADTConnection プレハブを追加します。
ADTConnection プレハブは Azure SignalR サービスを介して ADT からの全ての受信データを処理します。

1. [Project]パネルから[Assets -> ADTPrefabs]フォルダを開きます。
f:id:bluebirdofoz:20210609225236j:plain

2. ADTConnection.prefab を Hierarchy にドラッグしてシーンに追加します。
f:id:bluebirdofoz:20210609225249j:plain

本プレハブには関連するデータハンドラースクリプトが含まれます。
このスクリプトは各タービンの稼働情報を使用して TurbineSiteData ScriptableObject を自動的に更新します。
TurbineSiteData ScriptableObject は発生したイベントに基づいて OperateSceneUI でコントロールを更新するために使用されます。


記事が長くなったので分けます。
次は Azure リソースのアクセス設定を行います。
bluebirdofoz.hatenablog.com