Repository Summary
| Description | Simulator on Unity + PhysX communicating with ROS |
| Checkout URI | https://github.com/pwri-opera/operasim-physx.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2025-09-12 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| excavator_model | 0.0.0 |
| ic120_model | 0.0.0 |
| control_msgs | 3.0.0 |
| gazebo_msgs | 2.9.3 |
README
OperaSim-PhysX
Simulator on Unity + PhysX communicating with ROS
詳細マニュアル
概説
- 本シミュレータは自律施工技術開発基盤OPERA(Open Platform for Earth work with Robotics and Autonomy)の一部であり、どなたでも利用可能です
- シミュレータプラットフォームにUnity、物理エンジンにNvidia PhysXを利用しています
- Unityを利用するため、利用者が所属する組織に応じたUnityのライセンスが必要です。詳細はUnityの公式サイトをご確認の上、利用登録をしてください。
インストール方法
1. Unity(ver:2022.3.4f1)のインストール
使用しているPCのOSに応じて以下の通りUnityHubをインストールする
- windows 又は Macの場合: https://unity3d.com/jp/get-unity/download
- Linuxの場合(Linux版は動作確認していない):https://unity3d.com/get-unity/download
2. Projectファイルの開き方とUnity Editorのダウンロード
- UnityHubを起動し、画面右上の「追加」から
OperaSim_PhysX(Githubから自身のPCにダウンロードしたもの)選択し、クリックする(初回起動時には数分程度の時間がかかります)。クリックした際に指定のUnity Editorを選択しダウンロードする。
3. Sceneファイルの選択
- デモ用のサンプルSceneファイルが
Asset/Scenes/SampleScene.unityにあるので、これを開く.
4. ROS-TCP-Connectorの設定
- UnityEditorの上部ツールバーからRobotics > ROS Settingを開き”ROS IP Address”, “ROS Port”のところにROS側のIPアドレスおよびポート番号(defaultは10000)を入力する
- もしROS2を利用する場合は”Protocol”のところを”ROS1”->”ROS2”へ変更する

5. ROSとの連携方法

- 【初回のみ】ROS側でROS-TCP-Endpointパッケージをcloneし、buildとセットアップを行う。 ROS 1 の場合
$ cd (rosワークスペース)/src
$ git clone https://github.com/Unity-Technologies/ROS-TCP-Endpoint.git
$ cd ./ROS-TCP-Endpoint/
$ sudo chmod +x setup.py
$ ./setup.py
$ catkin build ros_tcp_endpoint
$ source ../../devel/setup.bash
ROS 2 の場合
$ cd (ros2ワークスペース)/src
$ git clone -b main-ros2 https://github.com/Unity-Technologies/ROS-TCP-Endpoint.git
$ cd ./ROS-TCP-Endpoint/
$ sudo chmod +x setup.py
$ ./setup.py
$ cd ../../
$ colcon build --packages-select ros_tcp_endpoint
$ . install/setup.bash
- ROS側でendpoint.launchを実行する
$ roslaunch ros_tcp_endpoint endpoint.launch
- Unity Editor上部の実行ボタンをクリックする

- ROS側で、対応する建機のunity用launch ファイルを起動する
- 油圧ショベル
$ roslaunch zx120_unity zx120_standby.launch
- クローラダンプ
$ roslaunch ic120_unity ic120_standby.launch
<!–
- 油圧ショベルとクローラダンプの両方
$ roslaunch zx120_ic120_standby.launch
–> #### ROSと連携時の送受信データ
- Cmd (ROS -> Unity)
| データの内容 | トピック名 | トピック型 | 物理量 | 単位 | 備考 |
|---|---|---|---|---|---|
| 建機の移動体部に対する対地速度指令値 | /(建機のns)/tracks/cmd_vel | geometry_msgs/Twist | 速度 | [m/s],[rad/s] | |
| ダンプトラックの荷台の傾斜角指令値 | /(建機のns)/vessel/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のスイング軸の角度指令値 | /(建機のns)/swing/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のブーム軸の角度指令値 | /(建機のns)/boom/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のアーム軸の角度指令値 | /(建機のns)/arm/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のバケット軸の角度指令値 | /(建機のns)/bucket/cmd | std_msgs/Float64 | 角度 | [rad] |
- Res(Unity -> ROS)
| データの内容 | トピック名 | トピック型 | 物理量 | 単位 | 備考 |
|---|---|---|---|---|---|
| 建機のベースリンクの座標 | /(建機のns) /base_link/pose | geometry_msgs/PoseStamped | 位置・姿勢 | 位置:[m] 姿勢:[-] | Unity内のworld座標系に対する座標の真値 |
| 建機のオドメトリ計算結果 | /(建機のns) /odom | nav_msgs/Odometry | オドメトリ | 位置:[m] 姿勢:[-] | 初期位置を原点として算出している |
| 建機の関節角度・角速度 | /(建機のns) /joint_states | sensor_msgs/JointState | 角度・角速度 | 角度:[rad] 角速度:[rad/s] | effortについては次節を参照 |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Description | Simulator on Unity + PhysX communicating with ROS |
| Checkout URI | https://github.com/pwri-opera/operasim-physx.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2025-09-12 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| excavator_model | 0.0.0 |
| ic120_model | 0.0.0 |
| control_msgs | 3.0.0 |
| gazebo_msgs | 2.9.3 |
README
OperaSim-PhysX
Simulator on Unity + PhysX communicating with ROS
詳細マニュアル
概説
- 本シミュレータは自律施工技術開発基盤OPERA(Open Platform for Earth work with Robotics and Autonomy)の一部であり、どなたでも利用可能です
- シミュレータプラットフォームにUnity、物理エンジンにNvidia PhysXを利用しています
- Unityを利用するため、利用者が所属する組織に応じたUnityのライセンスが必要です。詳細はUnityの公式サイトをご確認の上、利用登録をしてください。
インストール方法
1. Unity(ver:2022.3.4f1)のインストール
使用しているPCのOSに応じて以下の通りUnityHubをインストールする
- windows 又は Macの場合: https://unity3d.com/jp/get-unity/download
- Linuxの場合(Linux版は動作確認していない):https://unity3d.com/get-unity/download
2. Projectファイルの開き方とUnity Editorのダウンロード
- UnityHubを起動し、画面右上の「追加」から
OperaSim_PhysX(Githubから自身のPCにダウンロードしたもの)選択し、クリックする(初回起動時には数分程度の時間がかかります)。クリックした際に指定のUnity Editorを選択しダウンロードする。
3. Sceneファイルの選択
- デモ用のサンプルSceneファイルが
Asset/Scenes/SampleScene.unityにあるので、これを開く.
4. ROS-TCP-Connectorの設定
- UnityEditorの上部ツールバーからRobotics > ROS Settingを開き”ROS IP Address”, “ROS Port”のところにROS側のIPアドレスおよびポート番号(defaultは10000)を入力する
- もしROS2を利用する場合は”Protocol”のところを”ROS1”->”ROS2”へ変更する

5. ROSとの連携方法

- 【初回のみ】ROS側でROS-TCP-Endpointパッケージをcloneし、buildとセットアップを行う。 ROS 1 の場合
$ cd (rosワークスペース)/src
$ git clone https://github.com/Unity-Technologies/ROS-TCP-Endpoint.git
$ cd ./ROS-TCP-Endpoint/
$ sudo chmod +x setup.py
$ ./setup.py
$ catkin build ros_tcp_endpoint
$ source ../../devel/setup.bash
ROS 2 の場合
$ cd (ros2ワークスペース)/src
$ git clone -b main-ros2 https://github.com/Unity-Technologies/ROS-TCP-Endpoint.git
$ cd ./ROS-TCP-Endpoint/
$ sudo chmod +x setup.py
$ ./setup.py
$ cd ../../
$ colcon build --packages-select ros_tcp_endpoint
$ . install/setup.bash
- ROS側でendpoint.launchを実行する
$ roslaunch ros_tcp_endpoint endpoint.launch
- Unity Editor上部の実行ボタンをクリックする

- ROS側で、対応する建機のunity用launch ファイルを起動する
- 油圧ショベル
$ roslaunch zx120_unity zx120_standby.launch
- クローラダンプ
$ roslaunch ic120_unity ic120_standby.launch
<!–
- 油圧ショベルとクローラダンプの両方
$ roslaunch zx120_ic120_standby.launch
–> #### ROSと連携時の送受信データ
- Cmd (ROS -> Unity)
| データの内容 | トピック名 | トピック型 | 物理量 | 単位 | 備考 |
|---|---|---|---|---|---|
| 建機の移動体部に対する対地速度指令値 | /(建機のns)/tracks/cmd_vel | geometry_msgs/Twist | 速度 | [m/s],[rad/s] | |
| ダンプトラックの荷台の傾斜角指令値 | /(建機のns)/vessel/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のスイング軸の角度指令値 | /(建機のns)/swing/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のブーム軸の角度指令値 | /(建機のns)/boom/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のアーム軸の角度指令値 | /(建機のns)/arm/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のバケット軸の角度指令値 | /(建機のns)/bucket/cmd | std_msgs/Float64 | 角度 | [rad] |
- Res(Unity -> ROS)
| データの内容 | トピック名 | トピック型 | 物理量 | 単位 | 備考 |
|---|---|---|---|---|---|
| 建機のベースリンクの座標 | /(建機のns) /base_link/pose | geometry_msgs/PoseStamped | 位置・姿勢 | 位置:[m] 姿勢:[-] | Unity内のworld座標系に対する座標の真値 |
| 建機のオドメトリ計算結果 | /(建機のns) /odom | nav_msgs/Odometry | オドメトリ | 位置:[m] 姿勢:[-] | 初期位置を原点として算出している |
| 建機の関節角度・角速度 | /(建機のns) /joint_states | sensor_msgs/JointState | 角度・角速度 | 角度:[rad] 角速度:[rad/s] | effortについては次節を参照 |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Description | Simulator on Unity + PhysX communicating with ROS |
| Checkout URI | https://github.com/pwri-opera/operasim-physx.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2025-09-12 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| excavator_model | 0.0.0 |
| ic120_model | 0.0.0 |
| control_msgs | 3.0.0 |
| gazebo_msgs | 2.9.3 |
README
OperaSim-PhysX
Simulator on Unity + PhysX communicating with ROS
詳細マニュアル
概説
- 本シミュレータは自律施工技術開発基盤OPERA(Open Platform for Earth work with Robotics and Autonomy)の一部であり、どなたでも利用可能です
- シミュレータプラットフォームにUnity、物理エンジンにNvidia PhysXを利用しています
- Unityを利用するため、利用者が所属する組織に応じたUnityのライセンスが必要です。詳細はUnityの公式サイトをご確認の上、利用登録をしてください。
インストール方法
1. Unity(ver:2022.3.4f1)のインストール
使用しているPCのOSに応じて以下の通りUnityHubをインストールする
- windows 又は Macの場合: https://unity3d.com/jp/get-unity/download
- Linuxの場合(Linux版は動作確認していない):https://unity3d.com/get-unity/download
2. Projectファイルの開き方とUnity Editorのダウンロード
- UnityHubを起動し、画面右上の「追加」から
OperaSim_PhysX(Githubから自身のPCにダウンロードしたもの)選択し、クリックする(初回起動時には数分程度の時間がかかります)。クリックした際に指定のUnity Editorを選択しダウンロードする。
3. Sceneファイルの選択
- デモ用のサンプルSceneファイルが
Asset/Scenes/SampleScene.unityにあるので、これを開く.
4. ROS-TCP-Connectorの設定
- UnityEditorの上部ツールバーからRobotics > ROS Settingを開き”ROS IP Address”, “ROS Port”のところにROS側のIPアドレスおよびポート番号(defaultは10000)を入力する
- もしROS2を利用する場合は”Protocol”のところを”ROS1”->”ROS2”へ変更する

5. ROSとの連携方法

- 【初回のみ】ROS側でROS-TCP-Endpointパッケージをcloneし、buildとセットアップを行う。 ROS 1 の場合
$ cd (rosワークスペース)/src
$ git clone https://github.com/Unity-Technologies/ROS-TCP-Endpoint.git
$ cd ./ROS-TCP-Endpoint/
$ sudo chmod +x setup.py
$ ./setup.py
$ catkin build ros_tcp_endpoint
$ source ../../devel/setup.bash
ROS 2 の場合
$ cd (ros2ワークスペース)/src
$ git clone -b main-ros2 https://github.com/Unity-Technologies/ROS-TCP-Endpoint.git
$ cd ./ROS-TCP-Endpoint/
$ sudo chmod +x setup.py
$ ./setup.py
$ cd ../../
$ colcon build --packages-select ros_tcp_endpoint
$ . install/setup.bash
- ROS側でendpoint.launchを実行する
$ roslaunch ros_tcp_endpoint endpoint.launch
- Unity Editor上部の実行ボタンをクリックする

- ROS側で、対応する建機のunity用launch ファイルを起動する
- 油圧ショベル
$ roslaunch zx120_unity zx120_standby.launch
- クローラダンプ
$ roslaunch ic120_unity ic120_standby.launch
<!–
- 油圧ショベルとクローラダンプの両方
$ roslaunch zx120_ic120_standby.launch
–> #### ROSと連携時の送受信データ
- Cmd (ROS -> Unity)
| データの内容 | トピック名 | トピック型 | 物理量 | 単位 | 備考 |
|---|---|---|---|---|---|
| 建機の移動体部に対する対地速度指令値 | /(建機のns)/tracks/cmd_vel | geometry_msgs/Twist | 速度 | [m/s],[rad/s] | |
| ダンプトラックの荷台の傾斜角指令値 | /(建機のns)/vessel/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のスイング軸の角度指令値 | /(建機のns)/swing/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のブーム軸の角度指令値 | /(建機のns)/boom/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のアーム軸の角度指令値 | /(建機のns)/arm/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のバケット軸の角度指令値 | /(建機のns)/bucket/cmd | std_msgs/Float64 | 角度 | [rad] |
- Res(Unity -> ROS)
| データの内容 | トピック名 | トピック型 | 物理量 | 単位 | 備考 |
|---|---|---|---|---|---|
| 建機のベースリンクの座標 | /(建機のns) /base_link/pose | geometry_msgs/PoseStamped | 位置・姿勢 | 位置:[m] 姿勢:[-] | Unity内のworld座標系に対する座標の真値 |
| 建機のオドメトリ計算結果 | /(建機のns) /odom | nav_msgs/Odometry | オドメトリ | 位置:[m] 姿勢:[-] | 初期位置を原点として算出している |
| 建機の関節角度・角速度 | /(建機のns) /joint_states | sensor_msgs/JointState | 角度・角速度 | 角度:[rad] 角速度:[rad/s] | effortについては次節を参照 |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Description | Simulator on Unity + PhysX communicating with ROS |
| Checkout URI | https://github.com/pwri-opera/operasim-physx.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2025-09-12 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| excavator_model | 0.0.0 |
| ic120_model | 0.0.0 |
| control_msgs | 3.0.0 |
| gazebo_msgs | 2.9.3 |
README
OperaSim-PhysX
Simulator on Unity + PhysX communicating with ROS
詳細マニュアル
概説
- 本シミュレータは自律施工技術開発基盤OPERA(Open Platform for Earth work with Robotics and Autonomy)の一部であり、どなたでも利用可能です
- シミュレータプラットフォームにUnity、物理エンジンにNvidia PhysXを利用しています
- Unityを利用するため、利用者が所属する組織に応じたUnityのライセンスが必要です。詳細はUnityの公式サイトをご確認の上、利用登録をしてください。
インストール方法
1. Unity(ver:2022.3.4f1)のインストール
使用しているPCのOSに応じて以下の通りUnityHubをインストールする
- windows 又は Macの場合: https://unity3d.com/jp/get-unity/download
- Linuxの場合(Linux版は動作確認していない):https://unity3d.com/get-unity/download
2. Projectファイルの開き方とUnity Editorのダウンロード
- UnityHubを起動し、画面右上の「追加」から
OperaSim_PhysX(Githubから自身のPCにダウンロードしたもの)選択し、クリックする(初回起動時には数分程度の時間がかかります)。クリックした際に指定のUnity Editorを選択しダウンロードする。
3. Sceneファイルの選択
- デモ用のサンプルSceneファイルが
Asset/Scenes/SampleScene.unityにあるので、これを開く.
4. ROS-TCP-Connectorの設定
- UnityEditorの上部ツールバーからRobotics > ROS Settingを開き”ROS IP Address”, “ROS Port”のところにROS側のIPアドレスおよびポート番号(defaultは10000)を入力する
- もしROS2を利用する場合は”Protocol”のところを”ROS1”->”ROS2”へ変更する

5. ROSとの連携方法

- 【初回のみ】ROS側でROS-TCP-Endpointパッケージをcloneし、buildとセットアップを行う。 ROS 1 の場合
$ cd (rosワークスペース)/src
$ git clone https://github.com/Unity-Technologies/ROS-TCP-Endpoint.git
$ cd ./ROS-TCP-Endpoint/
$ sudo chmod +x setup.py
$ ./setup.py
$ catkin build ros_tcp_endpoint
$ source ../../devel/setup.bash
ROS 2 の場合
$ cd (ros2ワークスペース)/src
$ git clone -b main-ros2 https://github.com/Unity-Technologies/ROS-TCP-Endpoint.git
$ cd ./ROS-TCP-Endpoint/
$ sudo chmod +x setup.py
$ ./setup.py
$ cd ../../
$ colcon build --packages-select ros_tcp_endpoint
$ . install/setup.bash
- ROS側でendpoint.launchを実行する
$ roslaunch ros_tcp_endpoint endpoint.launch
- Unity Editor上部の実行ボタンをクリックする

- ROS側で、対応する建機のunity用launch ファイルを起動する
- 油圧ショベル
$ roslaunch zx120_unity zx120_standby.launch
- クローラダンプ
$ roslaunch ic120_unity ic120_standby.launch
<!–
- 油圧ショベルとクローラダンプの両方
$ roslaunch zx120_ic120_standby.launch
–> #### ROSと連携時の送受信データ
- Cmd (ROS -> Unity)
| データの内容 | トピック名 | トピック型 | 物理量 | 単位 | 備考 |
|---|---|---|---|---|---|
| 建機の移動体部に対する対地速度指令値 | /(建機のns)/tracks/cmd_vel | geometry_msgs/Twist | 速度 | [m/s],[rad/s] | |
| ダンプトラックの荷台の傾斜角指令値 | /(建機のns)/vessel/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のスイング軸の角度指令値 | /(建機のns)/swing/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のブーム軸の角度指令値 | /(建機のns)/boom/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のアーム軸の角度指令値 | /(建機のns)/arm/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のバケット軸の角度指令値 | /(建機のns)/bucket/cmd | std_msgs/Float64 | 角度 | [rad] |
- Res(Unity -> ROS)
| データの内容 | トピック名 | トピック型 | 物理量 | 単位 | 備考 |
|---|---|---|---|---|---|
| 建機のベースリンクの座標 | /(建機のns) /base_link/pose | geometry_msgs/PoseStamped | 位置・姿勢 | 位置:[m] 姿勢:[-] | Unity内のworld座標系に対する座標の真値 |
| 建機のオドメトリ計算結果 | /(建機のns) /odom | nav_msgs/Odometry | オドメトリ | 位置:[m] 姿勢:[-] | 初期位置を原点として算出している |
| 建機の関節角度・角速度 | /(建機のns) /joint_states | sensor_msgs/JointState | 角度・角速度 | 角度:[rad] 角速度:[rad/s] | effortについては次節を参照 |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Description | Simulator on Unity + PhysX communicating with ROS |
| Checkout URI | https://github.com/pwri-opera/operasim-physx.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2025-09-12 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| excavator_model | 0.0.0 |
| ic120_model | 0.0.0 |
| control_msgs | 3.0.0 |
| gazebo_msgs | 2.9.3 |
README
OperaSim-PhysX
Simulator on Unity + PhysX communicating with ROS
詳細マニュアル
概説
- 本シミュレータは自律施工技術開発基盤OPERA(Open Platform for Earth work with Robotics and Autonomy)の一部であり、どなたでも利用可能です
- シミュレータプラットフォームにUnity、物理エンジンにNvidia PhysXを利用しています
- Unityを利用するため、利用者が所属する組織に応じたUnityのライセンスが必要です。詳細はUnityの公式サイトをご確認の上、利用登録をしてください。
インストール方法
1. Unity(ver:2022.3.4f1)のインストール
使用しているPCのOSに応じて以下の通りUnityHubをインストールする
- windows 又は Macの場合: https://unity3d.com/jp/get-unity/download
- Linuxの場合(Linux版は動作確認していない):https://unity3d.com/get-unity/download
2. Projectファイルの開き方とUnity Editorのダウンロード
- UnityHubを起動し、画面右上の「追加」から
OperaSim_PhysX(Githubから自身のPCにダウンロードしたもの)選択し、クリックする(初回起動時には数分程度の時間がかかります)。クリックした際に指定のUnity Editorを選択しダウンロードする。
3. Sceneファイルの選択
- デモ用のサンプルSceneファイルが
Asset/Scenes/SampleScene.unityにあるので、これを開く.
4. ROS-TCP-Connectorの設定
- UnityEditorの上部ツールバーからRobotics > ROS Settingを開き”ROS IP Address”, “ROS Port”のところにROS側のIPアドレスおよびポート番号(defaultは10000)を入力する
- もしROS2を利用する場合は”Protocol”のところを”ROS1”->”ROS2”へ変更する

5. ROSとの連携方法

- 【初回のみ】ROS側でROS-TCP-Endpointパッケージをcloneし、buildとセットアップを行う。 ROS 1 の場合
$ cd (rosワークスペース)/src
$ git clone https://github.com/Unity-Technologies/ROS-TCP-Endpoint.git
$ cd ./ROS-TCP-Endpoint/
$ sudo chmod +x setup.py
$ ./setup.py
$ catkin build ros_tcp_endpoint
$ source ../../devel/setup.bash
ROS 2 の場合
$ cd (ros2ワークスペース)/src
$ git clone -b main-ros2 https://github.com/Unity-Technologies/ROS-TCP-Endpoint.git
$ cd ./ROS-TCP-Endpoint/
$ sudo chmod +x setup.py
$ ./setup.py
$ cd ../../
$ colcon build --packages-select ros_tcp_endpoint
$ . install/setup.bash
- ROS側でendpoint.launchを実行する
$ roslaunch ros_tcp_endpoint endpoint.launch
- Unity Editor上部の実行ボタンをクリックする

- ROS側で、対応する建機のunity用launch ファイルを起動する
- 油圧ショベル
$ roslaunch zx120_unity zx120_standby.launch
- クローラダンプ
$ roslaunch ic120_unity ic120_standby.launch
<!–
- 油圧ショベルとクローラダンプの両方
$ roslaunch zx120_ic120_standby.launch
–> #### ROSと連携時の送受信データ
- Cmd (ROS -> Unity)
| データの内容 | トピック名 | トピック型 | 物理量 | 単位 | 備考 |
|---|---|---|---|---|---|
| 建機の移動体部に対する対地速度指令値 | /(建機のns)/tracks/cmd_vel | geometry_msgs/Twist | 速度 | [m/s],[rad/s] | |
| ダンプトラックの荷台の傾斜角指令値 | /(建機のns)/vessel/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のスイング軸の角度指令値 | /(建機のns)/swing/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のブーム軸の角度指令値 | /(建機のns)/boom/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のアーム軸の角度指令値 | /(建機のns)/arm/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のバケット軸の角度指令値 | /(建機のns)/bucket/cmd | std_msgs/Float64 | 角度 | [rad] |
- Res(Unity -> ROS)
| データの内容 | トピック名 | トピック型 | 物理量 | 単位 | 備考 |
|---|---|---|---|---|---|
| 建機のベースリンクの座標 | /(建機のns) /base_link/pose | geometry_msgs/PoseStamped | 位置・姿勢 | 位置:[m] 姿勢:[-] | Unity内のworld座標系に対する座標の真値 |
| 建機のオドメトリ計算結果 | /(建機のns) /odom | nav_msgs/Odometry | オドメトリ | 位置:[m] 姿勢:[-] | 初期位置を原点として算出している |
| 建機の関節角度・角速度 | /(建機のns) /joint_states | sensor_msgs/JointState | 角度・角速度 | 角度:[rad] 角速度:[rad/s] | effortについては次節を参照 |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Description | Simulator on Unity + PhysX communicating with ROS |
| Checkout URI | https://github.com/pwri-opera/operasim-physx.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2025-09-12 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| excavator_model | 0.0.0 |
| ic120_model | 0.0.0 |
| control_msgs | 3.0.0 |
| gazebo_msgs | 2.9.3 |
README
OperaSim-PhysX
Simulator on Unity + PhysX communicating with ROS
詳細マニュアル
概説
- 本シミュレータは自律施工技術開発基盤OPERA(Open Platform for Earth work with Robotics and Autonomy)の一部であり、どなたでも利用可能です
- シミュレータプラットフォームにUnity、物理エンジンにNvidia PhysXを利用しています
- Unityを利用するため、利用者が所属する組織に応じたUnityのライセンスが必要です。詳細はUnityの公式サイトをご確認の上、利用登録をしてください。
インストール方法
1. Unity(ver:2022.3.4f1)のインストール
使用しているPCのOSに応じて以下の通りUnityHubをインストールする
- windows 又は Macの場合: https://unity3d.com/jp/get-unity/download
- Linuxの場合(Linux版は動作確認していない):https://unity3d.com/get-unity/download
2. Projectファイルの開き方とUnity Editorのダウンロード
- UnityHubを起動し、画面右上の「追加」から
OperaSim_PhysX(Githubから自身のPCにダウンロードしたもの)選択し、クリックする(初回起動時には数分程度の時間がかかります)。クリックした際に指定のUnity Editorを選択しダウンロードする。
3. Sceneファイルの選択
- デモ用のサンプルSceneファイルが
Asset/Scenes/SampleScene.unityにあるので、これを開く.
4. ROS-TCP-Connectorの設定
- UnityEditorの上部ツールバーからRobotics > ROS Settingを開き”ROS IP Address”, “ROS Port”のところにROS側のIPアドレスおよびポート番号(defaultは10000)を入力する
- もしROS2を利用する場合は”Protocol”のところを”ROS1”->”ROS2”へ変更する

5. ROSとの連携方法

- 【初回のみ】ROS側でROS-TCP-Endpointパッケージをcloneし、buildとセットアップを行う。 ROS 1 の場合
$ cd (rosワークスペース)/src
$ git clone https://github.com/Unity-Technologies/ROS-TCP-Endpoint.git
$ cd ./ROS-TCP-Endpoint/
$ sudo chmod +x setup.py
$ ./setup.py
$ catkin build ros_tcp_endpoint
$ source ../../devel/setup.bash
ROS 2 の場合
$ cd (ros2ワークスペース)/src
$ git clone -b main-ros2 https://github.com/Unity-Technologies/ROS-TCP-Endpoint.git
$ cd ./ROS-TCP-Endpoint/
$ sudo chmod +x setup.py
$ ./setup.py
$ cd ../../
$ colcon build --packages-select ros_tcp_endpoint
$ . install/setup.bash
- ROS側でendpoint.launchを実行する
$ roslaunch ros_tcp_endpoint endpoint.launch
- Unity Editor上部の実行ボタンをクリックする

- ROS側で、対応する建機のunity用launch ファイルを起動する
- 油圧ショベル
$ roslaunch zx120_unity zx120_standby.launch
- クローラダンプ
$ roslaunch ic120_unity ic120_standby.launch
<!–
- 油圧ショベルとクローラダンプの両方
$ roslaunch zx120_ic120_standby.launch
–> #### ROSと連携時の送受信データ
- Cmd (ROS -> Unity)
| データの内容 | トピック名 | トピック型 | 物理量 | 単位 | 備考 |
|---|---|---|---|---|---|
| 建機の移動体部に対する対地速度指令値 | /(建機のns)/tracks/cmd_vel | geometry_msgs/Twist | 速度 | [m/s],[rad/s] | |
| ダンプトラックの荷台の傾斜角指令値 | /(建機のns)/vessel/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のスイング軸の角度指令値 | /(建機のns)/swing/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のブーム軸の角度指令値 | /(建機のns)/boom/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のアーム軸の角度指令値 | /(建機のns)/arm/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のバケット軸の角度指令値 | /(建機のns)/bucket/cmd | std_msgs/Float64 | 角度 | [rad] |
- Res(Unity -> ROS)
| データの内容 | トピック名 | トピック型 | 物理量 | 単位 | 備考 |
|---|---|---|---|---|---|
| 建機のベースリンクの座標 | /(建機のns) /base_link/pose | geometry_msgs/PoseStamped | 位置・姿勢 | 位置:[m] 姿勢:[-] | Unity内のworld座標系に対する座標の真値 |
| 建機のオドメトリ計算結果 | /(建機のns) /odom | nav_msgs/Odometry | オドメトリ | 位置:[m] 姿勢:[-] | 初期位置を原点として算出している |
| 建機の関節角度・角速度 | /(建機のns) /joint_states | sensor_msgs/JointState | 角度・角速度 | 角度:[rad] 角速度:[rad/s] | effortについては次節を参照 |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Description | Simulator on Unity + PhysX communicating with ROS |
| Checkout URI | https://github.com/pwri-opera/operasim-physx.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2025-09-12 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| excavator_model | 0.0.0 |
| ic120_model | 0.0.0 |
| control_msgs | 3.0.0 |
| gazebo_msgs | 2.9.3 |
README
OperaSim-PhysX
Simulator on Unity + PhysX communicating with ROS
詳細マニュアル
概説
- 本シミュレータは自律施工技術開発基盤OPERA(Open Platform for Earth work with Robotics and Autonomy)の一部であり、どなたでも利用可能です
- シミュレータプラットフォームにUnity、物理エンジンにNvidia PhysXを利用しています
- Unityを利用するため、利用者が所属する組織に応じたUnityのライセンスが必要です。詳細はUnityの公式サイトをご確認の上、利用登録をしてください。
インストール方法
1. Unity(ver:2022.3.4f1)のインストール
使用しているPCのOSに応じて以下の通りUnityHubをインストールする
- windows 又は Macの場合: https://unity3d.com/jp/get-unity/download
- Linuxの場合(Linux版は動作確認していない):https://unity3d.com/get-unity/download
2. Projectファイルの開き方とUnity Editorのダウンロード
- UnityHubを起動し、画面右上の「追加」から
OperaSim_PhysX(Githubから自身のPCにダウンロードしたもの)選択し、クリックする(初回起動時には数分程度の時間がかかります)。クリックした際に指定のUnity Editorを選択しダウンロードする。
3. Sceneファイルの選択
- デモ用のサンプルSceneファイルが
Asset/Scenes/SampleScene.unityにあるので、これを開く.
4. ROS-TCP-Connectorの設定
- UnityEditorの上部ツールバーからRobotics > ROS Settingを開き”ROS IP Address”, “ROS Port”のところにROS側のIPアドレスおよびポート番号(defaultは10000)を入力する
- もしROS2を利用する場合は”Protocol”のところを”ROS1”->”ROS2”へ変更する

5. ROSとの連携方法

- 【初回のみ】ROS側でROS-TCP-Endpointパッケージをcloneし、buildとセットアップを行う。 ROS 1 の場合
$ cd (rosワークスペース)/src
$ git clone https://github.com/Unity-Technologies/ROS-TCP-Endpoint.git
$ cd ./ROS-TCP-Endpoint/
$ sudo chmod +x setup.py
$ ./setup.py
$ catkin build ros_tcp_endpoint
$ source ../../devel/setup.bash
ROS 2 の場合
$ cd (ros2ワークスペース)/src
$ git clone -b main-ros2 https://github.com/Unity-Technologies/ROS-TCP-Endpoint.git
$ cd ./ROS-TCP-Endpoint/
$ sudo chmod +x setup.py
$ ./setup.py
$ cd ../../
$ colcon build --packages-select ros_tcp_endpoint
$ . install/setup.bash
- ROS側でendpoint.launchを実行する
$ roslaunch ros_tcp_endpoint endpoint.launch
- Unity Editor上部の実行ボタンをクリックする

- ROS側で、対応する建機のunity用launch ファイルを起動する
- 油圧ショベル
$ roslaunch zx120_unity zx120_standby.launch
- クローラダンプ
$ roslaunch ic120_unity ic120_standby.launch
<!–
- 油圧ショベルとクローラダンプの両方
$ roslaunch zx120_ic120_standby.launch
–> #### ROSと連携時の送受信データ
- Cmd (ROS -> Unity)
| データの内容 | トピック名 | トピック型 | 物理量 | 単位 | 備考 |
|---|---|---|---|---|---|
| 建機の移動体部に対する対地速度指令値 | /(建機のns)/tracks/cmd_vel | geometry_msgs/Twist | 速度 | [m/s],[rad/s] | |
| ダンプトラックの荷台の傾斜角指令値 | /(建機のns)/vessel/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のスイング軸の角度指令値 | /(建機のns)/swing/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のブーム軸の角度指令値 | /(建機のns)/boom/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のアーム軸の角度指令値 | /(建機のns)/arm/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のバケット軸の角度指令値 | /(建機のns)/bucket/cmd | std_msgs/Float64 | 角度 | [rad] |
- Res(Unity -> ROS)
| データの内容 | トピック名 | トピック型 | 物理量 | 単位 | 備考 |
|---|---|---|---|---|---|
| 建機のベースリンクの座標 | /(建機のns) /base_link/pose | geometry_msgs/PoseStamped | 位置・姿勢 | 位置:[m] 姿勢:[-] | Unity内のworld座標系に対する座標の真値 |
| 建機のオドメトリ計算結果 | /(建機のns) /odom | nav_msgs/Odometry | オドメトリ | 位置:[m] 姿勢:[-] | 初期位置を原点として算出している |
| 建機の関節角度・角速度 | /(建機のns) /joint_states | sensor_msgs/JointState | 角度・角速度 | 角度:[rad] 角速度:[rad/s] | effortについては次節を参照 |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Description | Simulator on Unity + PhysX communicating with ROS |
| Checkout URI | https://github.com/pwri-opera/operasim-physx.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2025-09-12 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| excavator_model | 0.0.0 |
| ic120_model | 0.0.0 |
| control_msgs | 3.0.0 |
| gazebo_msgs | 2.9.3 |
README
OperaSim-PhysX
Simulator on Unity + PhysX communicating with ROS
詳細マニュアル
概説
- 本シミュレータは自律施工技術開発基盤OPERA(Open Platform for Earth work with Robotics and Autonomy)の一部であり、どなたでも利用可能です
- シミュレータプラットフォームにUnity、物理エンジンにNvidia PhysXを利用しています
- Unityを利用するため、利用者が所属する組織に応じたUnityのライセンスが必要です。詳細はUnityの公式サイトをご確認の上、利用登録をしてください。
インストール方法
1. Unity(ver:2022.3.4f1)のインストール
使用しているPCのOSに応じて以下の通りUnityHubをインストールする
- windows 又は Macの場合: https://unity3d.com/jp/get-unity/download
- Linuxの場合(Linux版は動作確認していない):https://unity3d.com/get-unity/download
2. Projectファイルの開き方とUnity Editorのダウンロード
- UnityHubを起動し、画面右上の「追加」から
OperaSim_PhysX(Githubから自身のPCにダウンロードしたもの)選択し、クリックする(初回起動時には数分程度の時間がかかります)。クリックした際に指定のUnity Editorを選択しダウンロードする。
3. Sceneファイルの選択
- デモ用のサンプルSceneファイルが
Asset/Scenes/SampleScene.unityにあるので、これを開く.
4. ROS-TCP-Connectorの設定
- UnityEditorの上部ツールバーからRobotics > ROS Settingを開き”ROS IP Address”, “ROS Port”のところにROS側のIPアドレスおよびポート番号(defaultは10000)を入力する
- もしROS2を利用する場合は”Protocol”のところを”ROS1”->”ROS2”へ変更する

5. ROSとの連携方法

- 【初回のみ】ROS側でROS-TCP-Endpointパッケージをcloneし、buildとセットアップを行う。 ROS 1 の場合
$ cd (rosワークスペース)/src
$ git clone https://github.com/Unity-Technologies/ROS-TCP-Endpoint.git
$ cd ./ROS-TCP-Endpoint/
$ sudo chmod +x setup.py
$ ./setup.py
$ catkin build ros_tcp_endpoint
$ source ../../devel/setup.bash
ROS 2 の場合
$ cd (ros2ワークスペース)/src
$ git clone -b main-ros2 https://github.com/Unity-Technologies/ROS-TCP-Endpoint.git
$ cd ./ROS-TCP-Endpoint/
$ sudo chmod +x setup.py
$ ./setup.py
$ cd ../../
$ colcon build --packages-select ros_tcp_endpoint
$ . install/setup.bash
- ROS側でendpoint.launchを実行する
$ roslaunch ros_tcp_endpoint endpoint.launch
- Unity Editor上部の実行ボタンをクリックする

- ROS側で、対応する建機のunity用launch ファイルを起動する
- 油圧ショベル
$ roslaunch zx120_unity zx120_standby.launch
- クローラダンプ
$ roslaunch ic120_unity ic120_standby.launch
<!–
- 油圧ショベルとクローラダンプの両方
$ roslaunch zx120_ic120_standby.launch
–> #### ROSと連携時の送受信データ
- Cmd (ROS -> Unity)
| データの内容 | トピック名 | トピック型 | 物理量 | 単位 | 備考 |
|---|---|---|---|---|---|
| 建機の移動体部に対する対地速度指令値 | /(建機のns)/tracks/cmd_vel | geometry_msgs/Twist | 速度 | [m/s],[rad/s] | |
| ダンプトラックの荷台の傾斜角指令値 | /(建機のns)/vessel/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のスイング軸の角度指令値 | /(建機のns)/swing/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のブーム軸の角度指令値 | /(建機のns)/boom/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のアーム軸の角度指令値 | /(建機のns)/arm/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のバケット軸の角度指令値 | /(建機のns)/bucket/cmd | std_msgs/Float64 | 角度 | [rad] |
- Res(Unity -> ROS)
| データの内容 | トピック名 | トピック型 | 物理量 | 単位 | 備考 |
|---|---|---|---|---|---|
| 建機のベースリンクの座標 | /(建機のns) /base_link/pose | geometry_msgs/PoseStamped | 位置・姿勢 | 位置:[m] 姿勢:[-] | Unity内のworld座標系に対する座標の真値 |
| 建機のオドメトリ計算結果 | /(建機のns) /odom | nav_msgs/Odometry | オドメトリ | 位置:[m] 姿勢:[-] | 初期位置を原点として算出している |
| 建機の関節角度・角速度 | /(建機のns) /joint_states | sensor_msgs/JointState | 角度・角速度 | 角度:[rad] 角速度:[rad/s] | effortについては次節を参照 |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Description | Simulator on Unity + PhysX communicating with ROS |
| Checkout URI | https://github.com/pwri-opera/operasim-physx.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2025-09-12 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| excavator_model | 0.0.0 |
| ic120_model | 0.0.0 |
| control_msgs | 3.0.0 |
| gazebo_msgs | 2.9.3 |
README
OperaSim-PhysX
Simulator on Unity + PhysX communicating with ROS
詳細マニュアル
概説
- 本シミュレータは自律施工技術開発基盤OPERA(Open Platform for Earth work with Robotics and Autonomy)の一部であり、どなたでも利用可能です
- シミュレータプラットフォームにUnity、物理エンジンにNvidia PhysXを利用しています
- Unityを利用するため、利用者が所属する組織に応じたUnityのライセンスが必要です。詳細はUnityの公式サイトをご確認の上、利用登録をしてください。
インストール方法
1. Unity(ver:2022.3.4f1)のインストール
使用しているPCのOSに応じて以下の通りUnityHubをインストールする
- windows 又は Macの場合: https://unity3d.com/jp/get-unity/download
- Linuxの場合(Linux版は動作確認していない):https://unity3d.com/get-unity/download
2. Projectファイルの開き方とUnity Editorのダウンロード
- UnityHubを起動し、画面右上の「追加」から
OperaSim_PhysX(Githubから自身のPCにダウンロードしたもの)選択し、クリックする(初回起動時には数分程度の時間がかかります)。クリックした際に指定のUnity Editorを選択しダウンロードする。
3. Sceneファイルの選択
- デモ用のサンプルSceneファイルが
Asset/Scenes/SampleScene.unityにあるので、これを開く.
4. ROS-TCP-Connectorの設定
- UnityEditorの上部ツールバーからRobotics > ROS Settingを開き”ROS IP Address”, “ROS Port”のところにROS側のIPアドレスおよびポート番号(defaultは10000)を入力する
- もしROS2を利用する場合は”Protocol”のところを”ROS1”->”ROS2”へ変更する

5. ROSとの連携方法

- 【初回のみ】ROS側でROS-TCP-Endpointパッケージをcloneし、buildとセットアップを行う。 ROS 1 の場合
$ cd (rosワークスペース)/src
$ git clone https://github.com/Unity-Technologies/ROS-TCP-Endpoint.git
$ cd ./ROS-TCP-Endpoint/
$ sudo chmod +x setup.py
$ ./setup.py
$ catkin build ros_tcp_endpoint
$ source ../../devel/setup.bash
ROS 2 の場合
$ cd (ros2ワークスペース)/src
$ git clone -b main-ros2 https://github.com/Unity-Technologies/ROS-TCP-Endpoint.git
$ cd ./ROS-TCP-Endpoint/
$ sudo chmod +x setup.py
$ ./setup.py
$ cd ../../
$ colcon build --packages-select ros_tcp_endpoint
$ . install/setup.bash
- ROS側でendpoint.launchを実行する
$ roslaunch ros_tcp_endpoint endpoint.launch
- Unity Editor上部の実行ボタンをクリックする

- ROS側で、対応する建機のunity用launch ファイルを起動する
- 油圧ショベル
$ roslaunch zx120_unity zx120_standby.launch
- クローラダンプ
$ roslaunch ic120_unity ic120_standby.launch
<!–
- 油圧ショベルとクローラダンプの両方
$ roslaunch zx120_ic120_standby.launch
–> #### ROSと連携時の送受信データ
- Cmd (ROS -> Unity)
| データの内容 | トピック名 | トピック型 | 物理量 | 単位 | 備考 |
|---|---|---|---|---|---|
| 建機の移動体部に対する対地速度指令値 | /(建機のns)/tracks/cmd_vel | geometry_msgs/Twist | 速度 | [m/s],[rad/s] | |
| ダンプトラックの荷台の傾斜角指令値 | /(建機のns)/vessel/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のスイング軸の角度指令値 | /(建機のns)/swing/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のブーム軸の角度指令値 | /(建機のns)/boom/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のアーム軸の角度指令値 | /(建機のns)/arm/cmd | std_msgs/Float64 | 角度 | [rad] | |
| 建機のバケット軸の角度指令値 | /(建機のns)/bucket/cmd | std_msgs/Float64 | 角度 | [rad] |
- Res(Unity -> ROS)
| データの内容 | トピック名 | トピック型 | 物理量 | 単位 | 備考 |
|---|---|---|---|---|---|
| 建機のベースリンクの座標 | /(建機のns) /base_link/pose | geometry_msgs/PoseStamped | 位置・姿勢 | 位置:[m] 姿勢:[-] | Unity内のworld座標系に対する座標の真値 |
| 建機のオドメトリ計算結果 | /(建機のns) /odom | nav_msgs/Odometry | オドメトリ | 位置:[m] 姿勢:[-] | 初期位置を原点として算出している |
| 建機の関節角度・角速度 | /(建機のns) /joint_states | sensor_msgs/JointState | 角度・角速度 | 角度:[rad] 角速度:[rad/s] | effortについては次節を参照 |
File truncated at 100 lines see the full file