-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
108 changed files
with
16,885 additions
and
1,810 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,26 @@ | ||
# isaac_ros2_utils | ||
This ROS 2 package provides various utilities (operation with ros2_control, automatic sensor generation and sensor data publishing) for easy use of Isaac Sim. | ||
# ROS 2 utilities for Isaac Sim | ||
|
||
This repository provides utilities to use [Isaac Sim](https://developer.nvidia.com/isaac-sim) like [Gazebo classic](https://classic.gazebosim.org/). | ||
|
||
## Features | ||
|
||
- This spawns URDF model at the desired timing and position. | ||
- This provide ros2_control plugin to use ros2_controller, for example diff_drive_controller. | ||
- This supports rotational and prismatic joints using position and velocity control. | ||
- This sends joint status (position, velocity and effort) to ros2_control from Isaac Sim. | ||
- This launches sensors from URDF description. | ||
- This launchs sensors and controller at the desired timing. | ||
|
||
## System Requirements | ||
|
||
| Element | Minimum Spec | | ||
|----|--------------------| | ||
| OS | Ubuntu 22.04 | | ||
| CPU | Intel Core i7 (7th Generation) <br/> AMD Ryzen 5 | | ||
| Cores | 4 | | ||
| RAM | 32GB | | ||
| Storage | 50GB SSD | | ||
| GPU | GeForce RTX 2070 | | ||
| VRAM | 8GB | | ||
| ROS 2 | Humble | | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,48 @@ | ||
# Demo For Arm Robot | ||
|
||
![demo movie](../figs/arm_robot_test.gif) | ||
|
||
1. Install Docker and pull [Isaac Sim Docker Image](https://docs.omniverse.nvidia.com/app_isaacsim/app_isaacsim/install_container.html). | ||
|
||
2. Clone the repo to your ros2 workspace<br/> | ||
```bash | ||
git clone https://github.com/hijimasa/isaac-ros2-control-sample.git | ||
``` | ||
|
||
3. Get git submodules<br/> | ||
```bash | ||
cd isaac-ros2-control-sample | ||
git submodule update --init --recursive | ||
``` | ||
|
||
4. Build a docker image with shell script.<br/> | ||
```bash | ||
cd docker | ||
./build_docker_image.sh | ||
``` | ||
|
||
5. Launch a docker container<br/> | ||
```bash | ||
./launch_docker.sh | ||
``` | ||
|
||
6. Build ros2 source codes<br/> | ||
```bash | ||
colcon build && source install/setup.bash | ||
``` | ||
|
||
7. Launch simulator<br/> | ||
```bash | ||
ros2 run isaac_ros2_scripts launcher | ||
``` | ||
|
||
8. To spawn robot (another terminal)<br/> | ||
```bash | ||
docker exec -it isaac-sim /bin/bash | ||
ros2 launch franka_moveit_config demo.launch.py | ||
``` | ||
<br/>You can control the robot from RViz. | ||
|
||
> [!NOTE] | ||
> For the first time, launching Isaac Sim takes a very long time. | ||
> Isaac Sim must be fully launched to spawn the robot. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,53 @@ | ||
# Demo For Mobile Robot | ||
|
||
![demo movie](../figs/shm_movie-2023-08-05_13.14.29.gif) | ||
|
||
1. Install Docker and pull [Isaac Sim Docker Image](https://docs.omniverse.nvidia.com/app_isaacsim/app_isaacsim/install_container.html). | ||
|
||
2. Clone the repo to your ros2 workspace<br/> | ||
```bash | ||
git clone https://github.com/hijimasa/isaac-ros2-control-sample.git | ||
``` | ||
|
||
3. Get git submodules<br/> | ||
```bash | ||
cd isaac-ros2-control-sample | ||
git submodule update --init --recursive | ||
``` | ||
|
||
4. Build a docker image with shell script.<br/> | ||
```bash | ||
cd docker | ||
./build_docker_image.sh | ||
``` | ||
|
||
5. Launch a docker container<br/> | ||
```bash | ||
./launch_docker.sh | ||
``` | ||
|
||
6. Build ros2 source codes<br/> | ||
```bash | ||
colcon build && source install/setup.bash | ||
``` | ||
|
||
7. Launch simulator<br/> | ||
```bash | ||
ros2 run isaac_ros2_scripts launcher | ||
``` | ||
|
||
8. Spawn robot (another terminal)<br/> | ||
```bash | ||
docker exec -it isaac-sim /bin/bash | ||
ros2 launch isaac_diffbot_sim diffbot_spawn.launch.py | ||
``` | ||
|
||
9. Launch teleop_twist_keyboard (another terminal)<br/> | ||
```bash | ||
docker exec -it isaac-sim /bin/bash | ||
ros2 run teleop_twist_keyboard teleop_twist_keyboard | ||
``` | ||
|
||
> [!NOTE] | ||
> For the first time, launching Isaac Sim takes a very long time. | ||
> Isaac Sim must be fully launched to spawn the robot. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
# LICENCE | ||
|
||
``` | ||
MIT License | ||
Copyright (c) 2024 Masaaki Hijikata | ||
Permission is hereby granted, free of charge, to any person obtaining a copy | ||
of this software and associated documentation files (the "Software"), to deal | ||
in the Software without restriction, including without limitation the rights | ||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||
copies of the Software, and to permit persons to whom the Software is | ||
furnished to do so, subject to the following conditions: | ||
The above copyright notice and this permission notice shall be included in all | ||
copies or substantial portions of the Software. | ||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||
SOFTWARE. | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
# Tutorials | ||
|
||
- Set up URDF for ros2_control | ||
|
||
- Set up URDF for Sensors | ||
|
||
- How to Use Simulator Launcher | ||
|
||
- How to Spawn Robot | ||
|
||
- How to Launch ros2_control | ||
|
||
- How to Launch Sensors |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,48 @@ | ||
# Introduction | ||
|
||
![demo movie](./figs/shm_movie-2023-06-13_21.52.52.gif) | ||
|
||
[This repository](https://github.com/hijimasa/isaac_ros2_utils) provides utilities to use [Isaac Sim](https://developer.nvidia.com/isaac-sim) like [Gazebo classic](https://classic.gazebosim.org/). | ||
|
||
## Features | ||
|
||
- This spawns URDF model at the desired timing and position. | ||
- This provide ros2_control plugin to use ros2_controller, for example diff_drive_controller. | ||
- This supports rotational and prismatic joints using position and velocity control. | ||
- This sends joint status (position, velocity and effort) to ros2_control from Isaac Sim. | ||
- This launches sensors from URDF description. | ||
- This launchs sensors and controller at the desired timing. | ||
|
||
## System Requirements | ||
|
||
| Element | Minimum Spec | | ||
|----|--------------------| | ||
| OS | Ubuntu 22.04 | | ||
| CPU | Intel Core i7 (7th Generation) <br/> AMD Ryzen 5 | | ||
| Cores | 4 | | ||
| RAM | 32GB | | ||
| Storage | 50GB SSD | | ||
| GPU | GeForce RTX 2070 | | ||
| VRAM | 8GB | | ||
| ROS 2 | Humble | | ||
|
||
Please refer to [Isaac Sim System Requirements](https://docs.omniverse.nvidia.com/isaacsim/latest/installation/requirements.html#system-requirements). | ||
|
||
## Demo | ||
|
||
[This sample repository](https://github.com/hijimasa/isaac-ros2-control-sample) provides demonstlations for mobile robot and arm robot. | ||
|
||
Please check following documents. | ||
|
||
[For Mobile Robot](./Demos/demo_for_mobile_robot.md) | ||
|
||
[For Arm Robot](./Demos/demo_for_arm_robot.md) | ||
|
||
## How to Use | ||
|
||
Check [this tutorial](./Tutorials/tutorial.md). | ||
|
||
## LICENCE | ||
|
||
This repository is provided with MIT licence. | ||
Please refer to [this](./LICENCE.md). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
# ライセンス |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,48 @@ | ||
# はじめに | ||
|
||
![demo movie](../figs/shm_movie-2023-06-13_21.52.52.gif) | ||
|
||
[このリポジトリ](https://github.com/hijimasa/isaac_ros2_utils)は、[Gazebo Classic](ttps://classic.gazebosim.org/)のような使いやすいユーティリティツールを[Isaac Sim](https://developer.nvidia.com/isaac-sim)で提供するためのものです。 | ||
|
||
## 特徴 | ||
|
||
- URDFモデルを任意のタイミングと位置姿勢で生成できます。 | ||
- ros2_controller(例:diff_drive_controller)を使用するためのros2_controlプラグインを提供します。 | ||
- 位置制御と速度制御を使った回転関節と角柱関節をサポートしています。 | ||
- Isaac Simからros2_controlに関節の状態(位置、速度、力)を送信します。 | ||
- URDFの記述からセンサを起動します。 | ||
- センサとコントローラを任意のタイミングで起動できます。 | ||
|
||
## システム要件 | ||
|
||
| 要素 | 最小スペック | | ||
|----|--------------------| | ||
| OS | Ubuntu 22.04 | | ||
| CPU | Intel Core i7 (7th Generation) <br/> AMD Ryzen 5 | | ||
| Cores | 4 | | ||
| RAM | 32GB | | ||
| Storage | 50GB SSD | | ||
| GPU | GeForce RTX 2070 | | ||
| VRAM | 8GB | | ||
| ROS 2 | Humble | | ||
|
||
[こちら](https://docs.omniverse.nvidia.com/isaacsim/latest/installation/requirements.html#system-requirements)のIsaac Simのシステム要件を参照してください。 | ||
|
||
## デモ | ||
|
||
[サンプルリポジトリ](https://github.com/hijimasa/isaac-ros2-control-sample)で移動ロボットとアームロボットのデモンストレーションを提供しています。 | ||
|
||
使い方は下記のドキュメントを参照ください。 | ||
|
||
- [移動ロボット向け](./デモ/demo_for_mobile_robot.md) | ||
|
||
- [アームロボット向け](./デモ/demo_for_arm_robot.md) | ||
|
||
## 使い方 | ||
|
||
[こちら](./チュートリアル/tutorial.md)のドキュメントを参照ください。 | ||
|
||
## ライセンス | ||
|
||
このリポジトリはMITライセンスで提供されます。 | ||
詳細は[こちら](./LICENCE.md)を参照ください。 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
# チュートリアル | ||
|
||
- URDFへのros2_cotnrolタグの記述方法 | ||
|
||
- URDFへのセンサ情報の記述方法 | ||
|
||
- シミュレーションランチャーの使い方 | ||
|
||
- ロボットの生成方法 | ||
|
||
- ros2_controlの立ち上げ方 | ||
|
||
- センサの立ち上げ方 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
# アームロボット向けデモ | ||
|
||
1. Install Docker and pull [Isaac Sim Docker Image](https://docs.omniverse.nvidia.com/app_isaacsim/app_isaacsim/install_container.html). | ||
|
||
2. Clone the repo to your ros2 workspace<br/> | ||
```bash | ||
git clone https://github.com/hijimasa/isaac-ros2-control-sample.git | ||
``` | ||
|
||
3. Get git submodules<br/> | ||
```bash | ||
cd isaac-ros2-control-sample | ||
git submodule update --init --recursive | ||
``` | ||
|
||
4. Build a docker image with shell script.<br/> | ||
```bash | ||
cd docker | ||
./build_docker_image.sh | ||
``` | ||
|
||
5. Launch a docker container<br/> | ||
```bash | ||
./launch_docker.sh | ||
``` | ||
|
||
6. Build ros2 source codes<br/> | ||
```bash | ||
colcon build && source install/setup.bash | ||
``` | ||
|
||
7. Launch simulator<br/> | ||
```bash | ||
ros2 run isaac_ros2_scripts launcher | ||
``` | ||
|
||
8. To spawn robot (another terminal)<br/> | ||
```bash | ||
docker exec -it isaac-sim /bin/bash | ||
ros2 launch franka_moveit_config demo.launch.py | ||
``` | ||
<br/>You can control the robot from RViz. | ||
|
||
> [!NOTE] | ||
> For the first time, launching Isaac Sim takes a very long time. | ||
> Isaac Sim must be fully launched to spawn the robot. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,51 @@ | ||
# 移動ロボット向けデモ | ||
|
||
1. Install Docker and pull [Isaac Sim Docker Image](https://docs.omniverse.nvidia.com/app_isaacsim/app_isaacsim/install_container.html). | ||
|
||
2. Clone the repo to your ros2 workspace<br/> | ||
```bash | ||
git clone https://github.com/hijimasa/isaac-ros2-control-sample.git | ||
``` | ||
|
||
3. Get git submodules<br/> | ||
```bash | ||
cd isaac-ros2-control-sample | ||
git submodule update --init --recursive | ||
``` | ||
|
||
4. Build a docker image with shell script.<br/> | ||
```bash | ||
cd docker | ||
./build_docker_image.sh | ||
``` | ||
|
||
5. Launch a docker container<br/> | ||
```bash | ||
./launch_docker.sh | ||
``` | ||
|
||
6. Build ros2 source codes<br/> | ||
```bash | ||
colcon build && source install/setup.bash | ||
``` | ||
|
||
7. Launch simulator<br/> | ||
```bash | ||
ros2 run isaac_ros2_scripts launcher | ||
``` | ||
|
||
8. Spawn robot (another terminal)<br/> | ||
```bash | ||
docker exec -it isaac-sim /bin/bash | ||
ros2 launch isaac_diffbot_sim diffbot_spawn.launch.py | ||
``` | ||
|
||
9. Launch teleop_twist_keyboard (another terminal)<br/> | ||
```bash | ||
docker exec -it isaac-sim /bin/bash | ||
ros2 run teleop_twist_keyboard teleop_twist_keyboard | ||
``` | ||
|
||
> [!NOTE] | ||
> For the first time, launching Isaac Sim takes a very long time. | ||
> Isaac Sim must be fully launched to spawn the robot. |
Oops, something went wrong.