0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

使用 NVIDIA Isaac 仿真并定位 Husky 机器人

NVIDIA英伟达企业解决方案 来源:未知 2023-12-26 18:05 次阅读

由 Clearpath Robotics 公司开发的 Husky 机器人是一个多功能的四轮平台,可用于室内和室外研究。其改装非常简单,只需添加其他传感器和更改高级电路板即可。本文将介绍如何使用 ROS 2 Husky 官方软件包将该机器人导入 NVIDIA Isaac Sim 并创建仿真

本 Demo 中的 Husky 机器人配备了 NVIDIA Jetson Orin Nano 并在顶部安装了 ZED 2 摄像头。驾驶 Husky 机器人使用的是 Isaac ROS 2 的最新版本,其中包括用于机器人定位(NVIDIA Isaac ROS VSLAM)、地图构建(NVIDIA Isaac ROS NvBlox)和 Apriltag 检测(NVIDIA Isaac ROS AprilTag)的 Isaac ROS 软件包。

Isaac ROS Demo 的工作原理

Husky 的统一机器人描述格式(URDF)是从 ROS 2 话题中动态加载的。它用于在 ROS 可视化视图(rviz)中对机器人进行可视化,并将其加载到 NVIDIA Isaac Sim 中。

在加载该机器人后,Isaac Sim 主脚本会创建一个图形来驱动该机器人,将速度和转向命令转换为每个车轮的速度,并在 tf 中发布车轮状态(图 1)。

wKgaomWKpnqAE94PAABi0iEB4eg780.jpg

图 1. 从 ROS 2 话题加载 Husky 时

自动生成的电机控制动作图

该脚本会为每个摄像头生成一个图形并将输出结果发布到 ROS 2 话题中。每个摄像头都有 ROS 2 图像信息和摄像头信息。

wKgaomWKpnqAH7aoAABlA4uaC18742.jpg

图 2. 带有分辨率配置和发布 ROS 2 话题指令的摄像头图

如图 3 所示,在加载所有图形并成功导入 URDF 后,一个新的 Husky 机器人出现在 Isaac Sim 中。

wKgaomWKpnqAOWY2AAD7d3pI-XU028.jpg

图 3. NVIDIA Isaac Sim 2023.1.0 中的

Husky 机器人和所有摄像头输出结果

在成功加载 Husky 后,就可以使用 ROS 2 的不同选项,包括摄像头流、电机控制器和其他辅助输出。可以使用以下命令快速查看在另一个终端中正在运行的程序:

ros2 topic list

wKgaomWKpnqAc_K6AALk3f5SFWI551.png

图 4. Husky ROS 2 的所有话题列表

当 ROS 2 启动器启动时,所有必要的 ROS 2 节点和 Isaac ROS 节点都会运行。机器人将建立一个连接管道,其中,来自“Husky 描述”的 Husky URDF 将被用于 Isaac Sim 和机器人本身。Isaac ROS VSLAM 和 Isaac ROS NvBlox 也将被用于定位和构建实时地图。

当所有必需的软件包都在运行时,机器人就可以实现完全定位并构建一个 3D 地图。现在可以使用 Nav2、键盘或操纵杆来驱动它。

下一步是设置工作站和 Jetson Orin(可选),以便在 Isaac Sim 2023 和 Isaac ROS 2 上测试 Husky。

wKgaomWKpnuASuRMAAEZ2Or0nrY138.jpg

图 5. 移动中的 Husky 并生成 3D 地图

设置 Demo

有两种方法可以运行该 Demo:直接从工作站运行或使用硬件在环(HIL)配置。以下将介绍每种方法的设置要求。

无论采用哪种方式,首先都要安装最新版本的 Isaac Sim。详细说明参见 NVIDIA Omniverse 入门:

https://www.nvidia.com/en-us/omniverse/download/

注意:下载完成后请勿启动 Isaac Sim。

Husky Demo: 工作站版本

若要运行 Husky Demo,需要一台搭载 NVIDIA RTX GPU 的工作站,并安装有最新版本的 NVIDIA Isaac Sim 和 ROS 2 Humble。请记得安装桌面版本。

sudo apt install ros-humble-desktop

安装和运行

系统准备就绪后,可以克隆 Demo 版本,并使用以下脚本在工作站上试用:

git clone https://github.com/NVIDIA-AI-IOT/husky_demo.git
cd husky_demo

运行后使用以下命令启动 Isaac Sim 并打开一个新的终端,其中构建了 Docker,以使用 Isaac ROS 和 Demo 所需的所有软件包:

./husky_demo.sh

该命令将:

  • 克隆所需的所有资源库

  • 克隆 Isaac ROS Docker 镜像

  • 构建新的镜像

构建完成后,该终端将等待新命令(图 6)。图 7 显示 Isaac Sim 正在运行,环境已完全加载。

wKgaomWKpnuAalf_AAFLd4imEJI310.png

图 6. 带有 Isaac ROS 提示的

Docker 容器终端正在等待命令

wKgaomWKpnuADaAwAAaqO66MX_w352.png

图 7. Isaac Sim 在已加载的仓库环境中运行

现在,可以在第二个终端上运行这个脚本:

bash src/husky_isaac_sim/scripts/run_in_docker.sh

脚本 run_in_docker.sh 将在运行 Isaac ROS 启动文件之前执行一些步骤。第一阶段将更新并构建所有必需的 ROS 2 和 Isaac ROS 软件包。然后该脚本将执行启动文件:

ros2 launch husky_isaac_sim allinone.launch.py

这个 ROS 2 脚本会启动所有 Isaac ROS 软件包来定位机器人,并开始绘制地图和启动 rviz,以在地图上可视化 Husky。

该脚本还将在环境中加载 Husky,并自动设置摄像头和控制器。

Husky Demo: HIL 版本

要使用 HIL 版本,需要一台装有 NVIDIA RTX GPU 和最新版本 NVIDIA Isaac Sim 2023.1.0 的工作站、一台路由器以及 NVIDIA Jetson Orin Nano(请注意,其他型号的 Jetson Orin 也能胜任这项工作)。

在工作站和 Jetson 之间建立有线连接是很重要的,强烈建议在它们之间配置一台好的路由器。请记住,工作站和 Jetson 之间将共享大量数据,因此仅靠 Wi-Fi 连接是不够的。

您的 NVIDIA Jetson Orin Nano 必须使用最新的 Jetpack 5.1.2 并已安装完毕。请保留 IP 地址。如果使用主机名,则需要从工作站进行远程连接。

运行此配置所需的组件如下:

  • 装有 Ubuntu 22.04 的 x86/64 机器

  • NVIDIA RTX GPU

  • 内置 Jetpack 5.1.2 的 NVIDIA Jetson Orin Nano 开发者套件

  • 路由器和电缆

图 8 显示了如何设置硬件环境。

wKgaomWKpnuAbA6JAABS3eOsgmk863.png

图 8. 硬件设置:带有 NVIDIA RTX 显卡(左)、

路由器(中)和 NVIDIA Jetson

Orin Nano 开发者套件(右)的台式机

安装与运行

系统准备就绪后,克隆 Demo 版本,并使用以下命令在工作站上试用:

git clone https://github.com/NVIDIA-AI-IOT/husky_demo.git
cd husky_demo

运行后,使用以下命令:

./husky_demo.sh --HIL

该脚本将自动:

  • 克隆该 Demo 所需的所有资源库

  • 构建所有 ROS 2 软件包

  • 启动 Isaac Sim

构建完成后,终端将等待新的命令。运行以下脚本:

ros2 launch husky_isaac_sim robot_display.launch.py

您将看到 Isaac Sim 上的 Husky 图像显示在工作站上。

接下来,打开一个新终端,远程连接 NVIDIA Jetson Orin 系列。

登录 Jetsterminal 后,克隆 Husky Demo 资源库:

git clone https://github.com/NVIDIA-AI-IOT/husky_demo.git
cd husky_demo

运行后,使用以下命令:

./husky_demo.sh

该脚本将自动:

  • 克隆该 Demo 所需的所有资源库

  • 克隆 Isaac ROS docker 镜像
  • 构建新镜像

接下来,在 Docker 容器中运行以下脚本:

bash src/husky_isaac_sim/scripts/run_in_docker.sh

该脚本将自动:

  • 构建所有 ROS 2 软件包

  • 启动 Isaac ROS

然后您将看到所有在终端上运行的 Isaac ROS 软件包(图 9)。

wKgaomWKpnyAfy0yAAqHJHrfmiQ693.png

图 9. Isaac ROS 在 Jetson Orin Nano 上

运行并传输数据

驾驶您的 Husky

如果 Isaas Sim 和 Isaac ROS 都已启动并运行(根据个人喜好,可以在工作站或 Jetson 上运行)且没有任何问题,那么您应该可以在 rviz 上看到机器人成功定位。定位完成后,它应该会开始构建 3D 地图(图 10)。

wKgaomWKpnyAZBzbAAM6uUlLwTU358.png

图 10. Husky 已在 rviz 上定位并使用

NvBlox 绘制了 3D 地图的第一张切片

现在,您可以使用键盘、操纵杆或 Nav2 来驾驶 Husky。只需简单几步,就可以控制 Husky 在环境中移动。

总结

本文介绍了如何使用 NVIDIA Isaac ROS 操作 Husky 机器人,包括如何加载从机器人描述中导出的 URDF 以及如何在 rviz 上驱动机器人。该 Demo 可以通过多种方式运行,既可以直接从搭载 NVIDIA RTX 显卡的工作站运行,也可以在硬件在环配置中运行,即在 NVIDIA Jetson 上运行 Isaac ROS。

如要了解有关 Isaac Sim 和 Isaac ROS 的更多信息,请查看并加入 NVIDIA 开发者机器人技术论坛上的讨论

https://forums.developer.nvidia.com/c/agx-autonomous-machines/isaac/67

NVIDIA 携手中国百万开发者,有奖征集作品秀。即日起至 2024 年 1 月 12 日,点击“阅读原文”或下方海报,一起来分享您的开发故事或实践心得吧! #1M Strong#

扫描海报二维码,锁定北京时间 1 月 9 日 (星期二) 凌晨 0 点举行的线上 NVIDIA CES 2024 特别演讲。


原文标题:使用 NVIDIA Isaac 仿真并定位 Husky 机器人

文章出处:【微信公众号:NVIDIA英伟达企业解决方案】欢迎添加关注!文章转载请注明出处。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 英伟达
    +关注

    关注

    22

    文章

    3329

    浏览量

    87773

原文标题:使用 NVIDIA Isaac 仿真并定位 Husky 机器人

文章出处:【微信号:NVIDIA-Enterprise,微信公众号:NVIDIA英伟达企业解决方案】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    NVIDIA Isaac机器人平台升级,加速AI机器人技术革新

    NVIDIA Isaac机器人平台近期实现重大升级,通过引入最新的生成式AI技术和先进的仿真技术,显著加速了AI机器人技术的发展步伐。该平台
    的头像 发表于 03-27 10:36 198次阅读

    NVIDIA入局人形机器人Isaac平台迎来重要更新

    NVIDIA Isaac 机器人平台利用最新的生成式 AI 和先进的仿真技术,加速 AI 机器人技术的发展。
    的头像 发表于 03-26 09:07 427次阅读
    <b class='flag-5'>NVIDIA</b>入局人形<b class='flag-5'>机器人</b>!<b class='flag-5'>Isaac</b>平台迎来重要更新

    NVIDIA Isaac将生成式AI应用于制造业和物流业

    NVIDIA Isaac 机器人平台利用最新的生成式 AI 和先进的仿真技术,加速 AI 机器人技术的发展。
    的头像 发表于 03-22 10:06 178次阅读
    <b class='flag-5'>NVIDIA</b> <b class='flag-5'>Isaac</b>将生成式AI应用于制造业和物流业

    NVIDIA Isaac平台为AI机器人开发提供支持

    在今日的CES特别演讲中,NVIDIA机器人和边缘计算副总裁Deepu Talla揭示了NVIDIA及其合作伙伴如何将生成式AI与机器人技术融为一体。
    的头像 发表于 01-09 15:00 718次阅读

    LabVIEW的六轴工业机器人运动控制系统

    空间的轨迹构造方法,包括直线、圆弧、NURBS自由曲线等轨迹的构造方程。 模型机器人测试与仿真:通过LabVIEW编程,项目在PC端实现了算法和运动仿真。六轴模型机器人被用作实体测试对
    发表于 12-21 20:03

    NVIDIA Isaac 平台先进的仿真和感知工具助力 AI 机器人技术加速发展

    在 ROSCon 2023 上,NVIDIA 发布了  NVIDIA Isaac Robotics  平台的重大更新。该平台可为全球机器人开发者提供高性能感知和高保真
    的头像 发表于 10-20 02:00 448次阅读
    <b class='flag-5'>NVIDIA</b> <b class='flag-5'>Isaac</b> 平台先进的<b class='flag-5'>仿真</b>和感知工具助力 AI <b class='flag-5'>机器人</b>技术加速发展

    基于Matlab和VR技术的移动机器人建模及仿真

    利用 Matlab 建立移动机器人的动力学模型 ,在虚拟现实 (VR )环境下 ,实时仿真移动机器人路径跟踪的运动特性 ,为基于 Internet 的机器人遥操作试验搭建了
    发表于 09-20 06:24

    从 0 到 1 搭建机器人 | 利用 NVIDIA Isaac Sim 创建虚拟环境进行仿真开发与测试

    的第一步——生成合成数据然后进行训练。从 0 到 1 搭建机器人系列文章第二篇将带领大家继续学习如何创建虚拟环境,进行机器人仿真开发与测试。本次要使用的工具是 NVIDIA
    的头像 发表于 08-07 19:10 545次阅读
    从 0 到 1 搭建<b class='flag-5'>机器人</b> | 利用 <b class='flag-5'>NVIDIA</b> <b class='flag-5'>Isaac</b> Sim 创建虚拟环境进行<b class='flag-5'>仿真</b>开发与测试

    从 0 到 1 搭建机器人 | 使用 NVIDIA Isaac Sim Replicator 和 TAO 套件进行数据合成和训练

    文章 将从第一步开始,拆解并串联起关于机器人创建的必要知识和所涉工具,希望能以 NVIDIA 提供的前沿解决方案为您铺平开发实践的道路。 今天我们将先从数据标记、模型训练开始,出场的是  Isaac Sim Replicator
    的头像 发表于 07-17 19:45 399次阅读

    Omniverse 中文课程系列 7:使用 Isaac Sim 实现机器人仿真入门

    ! 使用 Isaac Sim 实现机器人仿真入门 学习目标 通过本课程,您将学习如何: 使用交互式 Python 脚本编程接口开发仿真应用 使用 USD 组件指定场景并强制应用
    的头像 发表于 06-30 17:35 508次阅读
    Omniverse 中文课程系列 7:使用 <b class='flag-5'>Isaac</b> Sim 实现<b class='flag-5'>机器人</b><b class='flag-5'>仿真</b>入门

    基于 NVIDIA Jetson 使用硬件在环设计机器人

    Isaac 平台 应用于这些领域的。 NVIDIA Isaac 平台由 NVIDIA Isaac Sim 和
    的头像 发表于 06-14 18:35 391次阅读
    基于 <b class='flag-5'>NVIDIA</b> Jetson 使用硬件在环设计<b class='flag-5'>机器人</b>

    使用 NVIDIA Isaac Sim、ROS 和 Nimbus 开发多机器人环境

    随着现实场景中部署的自主机器人越来越多,对高保真多机器人仿真环境的需求也在迅速增长。本文将回顾笔者过去在 Cogniteam 使用的仿真机器人
    的头像 发表于 06-07 08:45 421次阅读
    使用 <b class='flag-5'>NVIDIA</b> <b class='flag-5'>Isaac</b> Sim、ROS 和 Nimbus 开发多<b class='flag-5'>机器人</b>环境

    COMPUTEX2023 | NVIDIA Isaac AMR 助力移动机器人实现高级自动化

    Isaac AMR 将很快开启客户抢先体验,可使用基于 Nova Orin 的参考机器人进行评估。 想要提高运营效率的行业对移动机器人的需求日益增长,使得移动机器人的出货量激增,
    的头像 发表于 06-04 02:25 459次阅读
    COMPUTEX2023 | <b class='flag-5'>NVIDIA</b> <b class='flag-5'>Isaac</b> AMR 助力移动<b class='flag-5'>机器人</b>实现高级自动化

    COMPUTEX2023 | 达明机器人采用 NVIDIA Isaac Sim 优化自动光学检测

    ,广达子公司达明机器人(Techman Robot)的机器人如何运用 NVIDIA Isaac Sim ,一款基于 NVIDIA Omn
    的头像 发表于 05-30 01:40 614次阅读

    使用 ROS 2 MoveIt 和 NVIDIA Isaac Sim 创建逼真的机器人模拟

    项目中使用 NVIDIA Isaac Sim 。项目的目标是提高对操纵的感知,并通过 PickNik 的商业机器人开发平台 MoveIt Studio 让机器人具有更自主的行为。 本文
    的头像 发表于 05-12 10:45 586次阅读
    使用 ROS 2 MoveIt 和 <b class='flag-5'>NVIDIA</b> <b class='flag-5'>Isaac</b> Sim 创建逼真的<b class='flag-5'>机器人</b>模拟