仮想世界を構築。Unityにロボットを呼ぶための「翻訳機」を導入!
LOG24R2R2R2026/1/2

仮想世界を構築。Unityにロボットを呼ぶための「翻訳機」を導入!

mechArmの遺伝子とも言える設計図(URDF)をMacに迎え入れました。

設計図を読み込んでロボットを形作るための仮想世界(Unity)を立ち上げ、特別なツールをインストールする工程をお届けします。

※本プロジェクトの目的:実機「mechArm 270 M5」の制御を通じて、AIの判断をいかに物理的な動きへ変換するか。そのロボット制御の仕組みを理解するプロセスを記録・検証するものです。

Unity (Silicon)の選択

仮想世界を構築。Unityにロボットを呼ぶための「翻訳機」を導入!|Unity (Silicon)の選択

ロボットが活動するための舞台作りです。ここで重要なのは、Intel版ではなくApple Silicon対応版のUnityを使うことです。

  • Unity Hubの起動: Dockに常駐させておいたUnity Hubを開きます。

  • テンプレートの選択: 物理演算に最適な3D (Core)を選択。

  • テンプレートを「コア」に切り替える: 現在は「コア」「サンプル」「使い方を学ぶ」タブが並んでいます。ロボットシミュレーションには コア(Core)タブの中にある3D (Built-In Render Pipeline)を選ぶのが正解です。

  • Silicon版の指定: バージョン名にSiliconと記載されたエディタを選ぶことで、M1チップのパワーを最大限に活かした、静かで爆速なシミュレーション環境が手に入ります。

  • ダウンロード: タイルの右上に下向き矢印のアイコンが表示されている場合は、まずそのアイコンをクリックしてテンプレートをダウンロードします。

  • プロジェクトを作成: 選択できたら、右下の青いボタン 「+ プロジェクトを作成」 をクリックしてください。

ロボットの設計図を読み解く「URDF Importer」の導入

Unityを立ち上げただけでは、まだROS 2の設計図(URDF)を理解できません。そこで、Unityとロボット工学の架け橋となるURDF Importerというプラグインを導入します。

インストールの手順

  1. Unity上部のメニューから Window ➔ Package Manager を開きます。

  2. 左上の「+」ボタンから「Add package from git URL...」を選択。

  3. 以下の公式URLを入力して追加します。

https://github.com/Unity-Technologies/Unity-Robotics-Hub.git?path=/com.unity.robotics.urdf-importer

これが、ROS 2の複雑なデータをUnityが理解できる3Dモデルと関節のルールに変換してくれる翻訳機になります。

インストール完了を確認する「2つのチェック」

以下の方法で、翻訳機(URDF Importer)があなたのUnityに無事入ったか確認してみましょう。

① 「GameObject」メニューを確認する(一番確実!)

Unityのメイン画面(Package Managerの裏側にある画面)の一番上にあるメニューバーを見てください。

  • GameObject ➔ ROS ➔ Import Robot from URDF という項目が増えていますか?

  • これがあれば、インストールは大成功です!

② Package Managerのリストをスクロールする

Package Managerの左側のリスト(In Project)を下にスクロールしてみてください。

  • URDF Importerという名前の項目が見つかればOKです。

  • もしリストにURDF Importerが見当たらず、手順①のメニューも増えていない場合は、インストールが途中で失敗した可能性があります。

もしダウンロードエラーが出ていた時は?

仮想世界を構築。Unityにロボットを呼ぶための「翻訳機」を導入!|もしダウンロードエラーが出ていた時は?

Unityで外部ツールを入れる際、URLからの追加がうまくいかないことがあるとのこと。 これはエンジニアあるあるな壁みたいです。ここを乗り越えるための、最も確実なディスクから直接追加する(Add package from disk)という方法で行います。

翻訳機(URDF Importer)をブラウザで直接ダウンロード

URL通信がダメなら、先に「実物」をMacにダウンロードしてしまいましょう。

  • ブラウザで Unity-Technologies / URDF-Importer (GitHub) にアクセスします。

  • 緑色の 「Code」 ボタン ➔ 「Download ZIP」 をクリックして保存します。

  • ダウンロードされた URDF-Importer-main.zip を解凍します。今度はフォルダを開いてすぐの場所に、package.json が入っています。

Unityへ「ディスクから」追加する

URLではなく、今Macにあるフォルダを直接Unityに教えてあげます。

  • Unity の Package Manager をもう一度開きます。

  • 左上の 「+」 ボタンをクリック。

  • 今度は 「Add package from disk...」 を選択します。

  • 先ほど解凍したフォルダの中にある package.json というファイルを選択して開きます。

これで、通信環境に左右されず、確実にインストールが完了します。

「召喚」の準備が整った!

仮想世界の土台ができ、翻訳機(URDF Importer)もセット完了。

これで、先日デスクトップにダウンロードした mycobot_ros2 フォルダ内の設計図 を、Unityがロボットとして認識できるようになりました。

いよいよこの真っ白な3D空間に、本物と同じサイズの mechArm 270 M5 が姿を現します。

次にやるべき「召喚」のワンステップ

  • 「設計図」を見つける: mycobot_ros2 フォルダの中にある mycobot_description というフォルダを探します。

  • Unityへ放り込む: そのフォルダを、Unityエディタ画面の左下にあるProjectウィンドウ(Assetsと書かれた場所)へドラッグ&ドロップ してください。

これが完了すると、Unityの中にロボットのデータがコピーされ、いよいよ実物を画面に出現させる準備が整います。

注意!:黄色のメッセージの正体

仮想世界を構築。Unityにロボットを呼ぶための「翻訳機」を導入!|注意!:黄色のメッセージの正体

画面下に表示されている「Identifier uniqueness violation...」という警告は、インポートした3Dモデルデータ(Mesh)の中に、同じ名前(Brep)を持つ部品が複数含まれていることをUnityが教えてくれています。

  • エラー(赤)ではない: プログラムが止まる致命的な問題ではありません。

  • ロボット開発では「あるある」: CADで作られた複雑なロボットの3Dデータ(STLやDAEファイル)をUnityに入れると、よく発生する警告です。

  • 影響: 3Dモデルの見た目が少しおかしな箇所が出る可能性はありますが、ロボットを動かすシミュレーション自体には影響しません。

いよいよ「召喚(インポート)」の最後の一押しです!

仮想世界を構築。Unityにロボットを呼ぶための「翻訳機」を導入!|いよいよ「召喚(インポート)」の最後の一押しです!

設計図データがUnityの中に入ったので、これを使って3D空間にロボットを出現させます。

  • URDFファイルを探す: Unity画面左下の Project ウィンドウで、フォルダを以下のように辿ってください。 Assets ➔ mycobot_description ➔ urdf ➔ mecharm_270_m5

  • 設計図を選択: その中にある mecharm_270_m5.urdf というファイルを 右クリック します。

  • インポートを実行: メニューの一番下あたりにある URDF Importer ➔ Import Robot from Selected URDF をクリックしてください。

  • 成功の鍵は「右クリック」にあり: 右クリックメニューから URDF Importer を呼び出すこと。これが、MacのOSに邪魔されずにUnityのプラグインを直接動かすための正解ルートです。これを乗り越えれば、いよいよ銀色のボディが画面に現れます。

Macの親切心によるトラップ

仮想世界を構築。Unityにロボットを呼ぶための「翻訳機」を導入!|Macの親切心によるトラップ

このメッセージが出た時は、Unity初心者の方が最初によく遭遇するMacの親切心によるトラップ」す。

ファイルをダブルクリックしてしまったために、Macがこの見慣れない拡張子(.urdf)をどのアプリで開けばいいの?と聞いてきている状態です。

ファイルを開くのではなく、Unityのプラグインに読み込ませるのが目的なので、以下の手順で進めてください。

回避手順

  • キャンセルを押す: 表示されているMacのメッセージウィンドウで「キャンセル」を押して閉じてください。

  • 右クリックでメニューを出す: Unityの画面内にある mecharm_270_m5 ファイルを、今度は右クリック(またはControlキーを押しながらクリック)してください。

  • インポートを実行する: 出てきたメニューの中から URDF Importer ➔ Import Robot from Selected URDF をクリックします。

これで、Macのシステムを通さず、Unity内の翻訳機が直接ロボットを組み立て始めます。