LoginSignup
1
1

More than 1 year has passed since last update.

HoloLens2でROS2を使う

Last updated at Posted at 2021-12-18

HoloLens2にてROS2を使う際の手順について記述します。

はじめに

これまでにHoloLens, HoloLens2にてROS1を利用するためには、ros-sharpを用いることが一般的だったと思います。
ROS2では、ros_msft_mrtkを利用することでHoloLens2との通信ができるようなので試してみようと思います。
(2021年12月18日現在、pre-release版0.0.1のみリリースされているのでその部分は注意が必要です。)

環境

実行環境

  • HoloLens2

開発環境・使用ツール

  • Unity2020.3.3f1
  • Mixed Reality Feature Tool
  • Visual Studio 2019

事前準備

以下をダウンロード

手順

  1. Unityプロジェクトの作成
    Unityで3Dにて新規プロジェクトを作成します。
    この時ファイルパスが長すぎるとWLTのimport時にエラーが発生するため、短くすることをお勧めします。
  2. Mixed Reality Feature Toolの利用
    作成したプロジェクトにMixed Reality Feature Toolを使用して以下をimportします。

    • Azure Spatial Anchors SDK Core
    • Azure Spatial Anchors SDK for iOS
    • Azure Spatial Anchors SDK for Windows
    • Mixed Reality Toolkit Extensions
    • Mixed Reality Toolkit Foundation
    • Mixed Reality Toolkit Standard Assets
    • Mixed Reality Toolkit Tools
    • Mixed Reality OpenXR Plugin
    • Microsoft Spatializer
    • WLT Core
      MRFeatureTool.png
  3. プラグイン設定
    Unity内でプロジェクトのプOpenXR等のラグイン設定を以下のように行います。

firstQ.png
表示される警告ウインドウ → 「Yes」
Unity再起動後にMRTK Project Configuratorの設定

OpenXRSettings.png
Unity OpenXR pluginを選択

MRTKconfig_showPlugin.png
Show XR Plug-in Management Settingsを選択

MRTKconfig_openxr-desktop.png MRTKconfig_openxr-windows.png
Desktop, WindowsそれぞれでOpenXRを有効にします。

MRTKconfig_ApplySettings.png
MRTK Project Configuratorに戻り、Apply Settingsを選択後、Nextを押下します。

MRTKconfig_audio.png
Audio spatializerの設定にて「Microsoft Spatializer」を選択し、Applyを押下します。

これで、プラグイン設定は終了です。


4. Nugetによるパッケージの追加
Nugetを利用してパッケージの追加を行います。

Import_nuget.png
ダウンロードしてきたnugetのunitypackageをimportします。

Nuget_settings.png]
Nuget_settings-02.png
import後に追加されたウインドウからManage Nuget Packagesを選択し、「Microsoft.MixedReality.QR」をimportします。


5. ROS2パッケージの追加
UnityのPackage Managerを利用してROS2関連のパッケージを追加します。

PackageManager_settings.png PackageManager_settings-02.png
Package Managerを開き、Add package from tarballを選択します。

ros_mrtk_import.png
事前準備でダウンロードしていた2つのTGZ形式ファイルをimportします。

ros_mrtk_native-link.png
Projectビューにて、Packages > ROS2 and ROS2.net Native Components..内にあるlink.xmlをAssets直下にドラッグ&ドロップします。


6. ビルドとプロジェクトの設定
まず、ビルド設定を行います。
build_settings.png
Build Settingsを開いて、Universal Windows Platformを選択後Switch Plaformを押下します。

次に、プロジェクトの設定を行います。

project_settings.png
project_settings-02.png
Project Settingsを開いて、Player > Capabilities の項目にて以下を有効にします。

  • InternetClient
  • InternetClientServer
  • PrivateNetworkClientServer
  • WebCam
  • Microphone
  • SpatialPerception

これで設定は終了です。
ここまでくれば、ROS2が利用可能になっていると思います。

次回はこの内容を基に、実際にHoloLens2とのROS2 Topicのやり取りを行ってみようと思います。

参考・お借りしたもの

1
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1