ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

使用IsaacSim与ros2控制机器人

2026/10/2 15:03:11 拓冰建站 浏览量
使用IsaacSim与ros2控制机器人

前言

在机器人仿真领域,NVIDIA Isaac Sim凭借其强大的物理引擎和逼真的渲染效果正成为行业新宠。本文将详细记录我如何将Isaac Sim与ROS 2进行集成,实现虚拟场景中的机器人控制。整个过程充满挑战,但也收获颇丰。

1. 安装isaacsim与ros2

提供两个官方链接, 分别是安装ros2和isaacsim, 其中isaacsim是通过pip安装, 这里基本没啥坑

Windows (binary) — ROS 2 Documentation: Humble documentation

Installation using Isaac Sim pip — Isaac Lab Documentation

2. 在isaacsim中接通ros2

接通ros2需要在启动isaacsim前应用ros环境:

source /opt/ros/humble/setup.sh

因为我的isaacsim在服务器上, 可以使用无窗口启动:

isaacsim isaacsim.exp.full.streaming --no-window

无窗口启动需要在本地下载IsaacSim  Streaming Client:

Livestream Clients — Isaac Sim Documentation

启动并输入服务器的ip:

3. isaacsim中创建场景

这里按照教程, 创建场景:

Driving TurtleBot via ROS2 messages — Isaac Sim Documentation

创建后的场景如图:

其中要注意:

1. ros2_subscribe_twist要设置topicName

2. constant token 要设置value为wheel_left_joint和wheel_right_joint

3. differential_controller要设置wheelradius,wheeldistance,maxlinearspeed

4.articulation_controller要设置targetprim

4. 使用ros2消息控制机器人移动

在isaacsim中play, 然后新开一个端口, 运行:

source /opt/ros/humble/setup.sh
ros2 run teleop_twist_keyboard teleop_twist_keyboard

即可通过键盘控制isaacsim的机器人移动, 运行场景如图: