Isaac Lab 中的 URDF 导入与处理
注意
本篇内容基于 Isaac Sim 4.5.0、Isaac Lab 2.0.0 版本。
将 URDF 转换 USD
将 SolidWorks 导出为 URDF 之后,需要将其转换为 USD 格式,以便在 Isaac Lab 中使用。 此时,需要使用 Isaac Lab 中的 convert_urdf.py
脚本,这个脚本位于 IsaacLab 目录中 scripts/tools/convert_urdf.py
,在使用该脚本的过程,实际就是将 URDF 转换为 USD 格式,并将转换后的 USD 文件保存到指定的位置。
省流
通过官方脚本实现将自定义URDF
转换为 Isaac_Asset
资产
以 tianracer_t110
为例,将 URDF 转换为 USD 的方法如下:
bash
(.ros2) tianbot@ros2go:~/isaacsim_ws/IsaacLab-2.0.0$ ./isaaclab.sh -p scripts/tools/convert_urdf.py \ # 脚本路径
~/tianbot_ws/src/tianracer/tianracer_description/urdf/tianracer_compact.urdf \ # urdf 路径
source/isaaclab_assets/data/Robots/Tianbotics/tianracer_110.usd \ # usd 路径
--merge-joints \ # 参数
--joint-stiffness 0.0 \
--joint-damping 0.0 \
--joint-target-type none
技巧
如果希望过程是headless
模式,则可以在最后再添加--headless
参数
添加驱动消息订阅节点
添加传感器
对于一个从SolidWorks
中导出的URDF
模型来说,通常已有的是各传感器
与base_link的
坐标变换关系,在完成
URDF到
USD模型的转换后,还需要基于
Isaac Sim补充
各种传感器的
数据源。 那么接下来的工作就是将
传感器数据源添加到
USD模型中,以便
Isaac Lab`能够识别并使用。
Camera
完整的RGBD
传感器数据源添加方法,可以直接参考官方的文档,这里不再赘述。
Lidar
IMU
添加 Action Graph ros2 发布节点
Clock 发布
TF 发布
rqt 验证
我们可以通过rqt
来验证传感器数据源
是否添加成功,具体操作如下:
- 打开
rqt
,选择Plugins
->Topics
->Topic Monitor
,查看话题发布的数据
传感器参数配置
TODO