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

原创 英伟达NVIDIA中国 2023-06-14 18:25


Hardware-in-the-Loop(硬件在环,HIL)测试是一种强大的工具,用于验证和核实包括机器人技术和计算机视觉在内的复杂系统的性能。本文探讨了 HIL 测试是如何通过 NVIDIA Isaac 平台应用于这些领域的。


NVIDIA Isaac 平台由 NVIDIA Isaac Sim NVIDIA Isaac ROS 组成。前者是一个仿真器,为测试机器人算法提供仿真环境,后者是针对 NVIDIA Jetson 优化的硬件加速软件,其中包含机器学习、计算机视觉和定位算法。基于 NVIDIA Isaac 平台进行 HIL 测试,您可以验证和优化机器人软件栈的性能,从而获得更安全、更可靠、更高效的产品。


下文将讨论 HIL 系统的各个组件,包括 NVIDIA Isaac 平台的软件和硬件。此外还会研究它们如何协同工作,以优化机器人和计算机视觉算法的性能。我们也将探讨使用 NVIDIA Isaac 平台进行 HIL 测试的好处,并与其他测试方法进行比较。


NVIDIA Isaac Sim


基于 Omniverse 的 NVIDIA Isaac Sim 为测试机器人和计算机视觉算法提供了一个照片级真实、物理精准的虚拟环境,使用户能够在无损坏物理硬件风险的前提下对性能进行微调。同时,该仿真器也是高度可定制的,是测试各种场景和用例的理想选择。


您可以利用 NVIDIA Isaac Sim 创造更智能、更先进的机器人。平台提供了一套能够帮您构建复杂算法的工具和技术,使机器人能够执行复杂的任务。


通过使用 Omniverse Nucleus 和 Omniverse ConnectorsNVIDIA Isaac Sim 可以轻松协作、共享和导入通用场景描述(USD)格式的环境和机器人模型。通过集成 Isaac ROS/ROS 2 接口、全功能的 Python 脚本,以及用于导入机器人和环境模型的插件,可以实现更加高效和有效的机器人仿真。



图 1. NVIDIA Isaac Sim 堆栈


您可以使用 ROS 或 ROS 2,又或是 Python 与 NVIDIA Isaac Sim 进行交互。运行 NVIDIA Isaac GymNVIDIA Isaac Cortex,生成合成数据,或者将其用于数字孪生。


NVIDIA Isaac Sim 在内部采用定制版本ROS Noetic,使用 roscpp 构建用于 ROS Bridge,与 Omniverse 框架和 Python 3.7 无缝协作。这个版本与 ROS Melodic 兼容。


NVIDIA Isaac Sim 目前支持 ROS 2 Foxy 和 Humble 的 ROS 2 Bridge,建议将 Ubuntu 20.04 用于 ROS 2。


了解更多详细信息,请参阅 NVIDIA Isaac Simhttps://developer.nvidia.com/isaac-sim


NVIDIA Isaac ROS


NVIDIA Isaac ROS 建立在机器人操作系统(ROS)之上,提供了一系列先进的功能和工具,帮您打造更智能、更强大的机器人。这些功能包括先进的绘图和定位,以及物体检测和跟踪。有关最新功能的更多信息,请参阅 Isaac ROS Developer Preview 3 (https://developer.nvidia.com/blog/build-high-performance-robotic-applications-with-nvidia-isaac-ros-developer-preview-3/


通过使用 NVIDIA Isaac 平台的 Isaac ROS,您可以创建复杂的机器人应用程序,精确地执行复杂的任务。凭借强大的计算机视觉和定位算法,Isaac ROS 对于任何希望创建高级机器人应用程序的开发人员来说都是一个有价值的工具。



图 2. Isaac ROS 和软件层


Isaac GEMs for ROS 是一套为机器人社区发布的 GPU 加速 ROS 2 软件包,是 NVIDIA Jetson 平台的一部分。


Isaac ROS 提供了一套用于感知及 AI 的软件包,以及被称为 NVIDIA Isaac Transport for ROS (NITROS) 的完整管线。这些软件包已经针对 NVIDIA GPU 和 Jetson 平台进行了优化,具有图像处理和计算机视觉的功能。


在这篇文章中,我们收录了如何为以下软件包运行 HIL 的示例:


  • NVIDIA Isaac ROS vslam

  • NVIDIA Isaac ROS apriltag

  • NVIDIA Isaac ROS nvblox

  • NVIDIA Isaac ROS Proximity segmentation


有关其他 Isaac ROS 软件包和最新 Isaac ROS Developer Preview 3 的更多信息,请参阅 NVIDIA Isaac ROS (https://developer.nvidia.com/isaac-ros)


硬件规格和设置


对于此测试,您需要一个工作站或笔记本电脑,以及一个 NVIDIA Jetson 平台:


  • 搭载 Ubuntu 20.04 的 x86/64 计算机

  • 带 NVIDIA RTX 的 NVIDIA 显卡 

  • 显示器

  • 键盘和鼠标

  • NVIDIA Jetson AGX Orin 或 NVIDIA Jetson Orin NX

  • NVIDIA JetPack 5+(测试版本为 5.1.1)

  • 路由器

  • 以太网电缆



图 3. 硬件设置


当在设备之间(如 NVIDIA Jetson 模块和电脑传输大量数据时,通常首选使用有线以太网连接而不是 Wi-Fi。这是因为以太网连接提供了更快、更可靠的数据传输速率,对于实时数据处理和机器学习任务尤为重要。


在 Jetson 模块和电脑之间建立以太网连接,您需要按照以下步骤操作:


  1. 准备一根以太网电缆和一个带有免费以太网端口的路由器。

  2. 将电缆的一端插入设备的以太网端口。

  3. 将电缆的另一端插入路由器上其他未使用的以太网端口。

  4. 打开设备,等待其完全启动。

  5. 通过查找以太网图标,或使用如 ifconfig 或 ipconfig 的网络诊断工具。


当电脑和 NVIDIA Jetson 准备就绪并连接后,请按照 /NVIDIA-AI-IOT/isaac_demo (https://github.com/NVIDIA-AI-IOT/isaac_demo)进行操作。


运行 Demo 和驱动


第一步,在工作站上运行 NVIDIA Isaac Sim。使用 ./isaac_ros.sh 脚本运行一个 Carter 机器人的 Demo。


Carter 1.0 是一个机器人平台,使用了 Segway 的差速器底座、一个用于 3D 范围扫描的 Velodyne P16、一个 ZED 摄像头、一个 IMU 以及一个作为系统核心的 Jetson 模块,与定制的安装支架一起,为 NVIDIA Isaac 导航堆栈提供了一个强大而坚固的演示平台。


当仿真开始时,您可以看到 NVIDIA Isaac Sim 的立体相机进行输出。使用两个摄像头,机器人已经准备好接收在 NVIDIA Jetson 模块上运行的 Isaac ROS 的输入。



图 4. NVIDIA Isaac Sim 上的 Carter


在 Demo 中试用 Isaac ROS 软件包


在这篇文章中,我们探讨用于 AMR 机器人或轮式机器人的 NVIDIA Isaac ROS 软件包。我们会重点讨论用于定位、绘图和 AprilTag 检测的软件包,您也可以根据需要修改资源库,以测试其他需要使用的软件包。


Isaac ROS Visual SLAM


NVIDIA Isaac ROS Visual SLAM 采用了视觉里程计和同步定位与建图技术(SLAM)的结合。


视觉里程计用于估计摄像机相对于其起始位置的位置。该技术涉及分析两个连续输入帧或立体声对识别关键点集合的迭代过程。通过匹配这两个集合的关键点,可以确定摄像机的过渡和帧之间的相对旋转。


SLAM 是一种通过结合先前获得的轨迹来增强视觉 SLAM 准确性的方法。通过检测当前场景是否曾被看过(摄像机运动的循环),就可以优化先前估计的摄像机姿势。



图 5. Isaac ROS vslam 和 nvblox 



图 6. Isaac ROS vslam 和 nvblox 运行状态


Isaac ROS nvblox


nvblox 软件包通过使用传感器观测数据,实时建立机器人周围环境的 3D 模型,路径规划人员可以使用该模型来创建无碰撞路径。软件包使用 NVIDIA CUDA 技术来加速这一过程,以获得实时性能。这个存储库包括用于 nvblox 库的 ROS 2 集成。



图 7. Isaac ROS NVblox 工作流程



图 8. Isaac ROS vs.lam 输出


按照 /NVIDIA-AI-IOT/isaac_demo (https://github.com/NVIDIA-AI-IOT/isaac_demo进行操作,Isaac ROS vslam 软件包即可在 Demo 上运行。


NVIDIA Isaac ROS apriltag


ROS 2 apriltag 软件包使用 NVIDIA GPU 来加速图像中的检测,并发布位姿、ID 和其他元数据。这个软件包可与 ROS 2 节点的 CPU AprilTag 检测相媲美。


这些标签是驱动机器人或操纵者从特定点开始动作或完成作业的基准。它们也被用于增强现实,以校准观察孔的测距。这些标签在许多系列中都可用,也易用桌面打印机打印,如图 9 中的标签。


图 9. AprilTags 代替二维码的例子



图 10. Isaac ROS apriltag 检测 Demo


Isaac ROS proximity segmentation


isaac_ros_bi3d 软件包采用了一个 Bi3D 模型,该模型经过优化,通过二元分类可执行立体深度评估。这个过程被用于 proximity segmentation,有助于识别某个范围内是否存在障碍物,并有助于在环境中导航时防止碰撞。



图 11. Isaac ROS proximity segmentation


使用 rviz 驱动 Carter


当读取 rviz 并全部运行时,rviz 显示了下图中的输出。图 12 显示了 Carter 在地图的中心和所有区块的位置。



图 12. 使用 Isaac ROS vslam 和 

Isaac ROS nvblox 构建地图的 rviz


以下视频展示的是您可以使用 rviz 在所有环境中驱动机器人,并查看由 nvblox 生成的地图。



视频 1. NVIDIA Orin NX 上的 HIL,基于

 Isaac ROS vslam 和 nvblox


您也可以使用 Foxglove 来测试仿真。



图 13. 使用 Foxglove 进行仿真测试


总结


在这篇文章中,我们向您展示了如何设置 HIL 使用 NVIDIA Jetson Isaac ROS 模块进行测试,以及如何尝试 NVIDIA Isaac Sim。请在桌面电脑和 Jetson 模块之间使用有线连接。想要显示所有遥测的原始数据,您需要一个可靠的连接。


您也可以测试刚刚添加到 /isaac-ros_dev 文件夹的其他 NVIDIA Isaac ROS 软件包。更多详细信息,请参阅 readme . md 文件,位置是 /NVIDIA-AI-IOT/isaac_demo (https://github.com/NVIDIA-AI-IOT/isaac_demo


更多详细信息,请参阅 Isaac ROS 系列网络研讨会https://gateway.on24.com/wcc/experience/elitenvidiabrill/1407606/3998202/isaac-ros-webinar-series)


点击 “阅读原文”,或扫描下方海报二维码观看 NVIDIA 创始人兼 CEO 黄仁勋在 COMPUTEX 2023 的主题演讲直播回放,主题演讲中文字幕版已上线,了解 AI、图形及其他领域的最新进展!


评论
  • RDDI-DAP错误通常与调试接口相关,特别是在使用CMSIS-DAP协议进行嵌入式系统开发时。以下是一些可能的原因和解决方法: 1. 硬件连接问题:     检查调试器(如ST-Link)与目标板之间的连接是否牢固。     确保所有必要的引脚都已正确连接,没有松动或短路。 2. 电源问题:     确保目标板和调试器都有足够的电源供应。     检查电源电压是否符合目标板的规格要求。 3. 固件问题: &n
    丙丁先生 2024-12-01 17:37 114浏览
  • 当前,智能汽车产业迎来重大变局,随着人工智能、5G、大数据等新一代信息技术的迅猛发展,智能网联汽车正呈现强劲发展势头。11月26日,在2024紫光展锐全球合作伙伴大会汽车电子生态论坛上,紫光展锐与上汽海外出行联合发布搭载紫光展锐A7870的上汽海外MG量产车型,并发布A7710系列UWB数字钥匙解决方案平台,可应用于数字钥匙、活体检测、脚踢雷达、自动泊车等多种智能汽车场景。 联合发布量产车型,推动汽车智能化出海紫光展锐与上汽海外出行达成战略合作,联合发布搭载紫光展锐A7870的量产车型
    紫光展锐 2024-12-03 11:38 147浏览
  • 11-29学习笔记11-29学习笔记习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习笔记&记录学习习笔记&记学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&学习学习笔记&记录学习学习笔记&记录学习学习笔记&记
    youyeye 2024-12-02 23:58 110浏览
  • CS5466AUUSB-C  (2lanes)to HDMI2.1 8K@30HZ(4K@144) +PD3.1  CS5563DP  (4lanes) to HDMI2.1 10k@60Hz CS5565USB-C  (4lanes) to HDMI2.1 10k@60Hz CS5569USB-C (4lanes) to HDMI2.1 10k@60Hz +PD3.1CS5228ANDP++ to HDMI(4K
    QQ1540182856 2024-12-05 15:56 68浏览
  • 最近几年,新能源汽车愈发受到消费者的青睐,其销量也是一路走高。据中汽协公布的数据显示,2024年10月,新能源汽车产销分别完成146.3万辆和143万辆,同比分别增长48%和49.6%。而结合各家新能源车企所公布的销量数据来看,比亚迪再度夺得了销冠宝座,其10月新能源汽车销量达到了502657辆,同比增长66.53%。众所周知,比亚迪是新能源汽车领域的重要参与者,其一举一动向来为外界所关注。日前,比亚迪汽车旗下品牌方程豹汽车推出了新车方程豹豹8,该款车型一上市就迅速吸引了消费者的目光,成为SUV
    刘旷 2024-12-02 09:32 152浏览
  • 光伏逆变器是一种高效的能量转换设备,它能够将光伏太阳能板(PV)产生的不稳定的直流电压转换成与市电频率同步的交流电。这种转换后的电能不仅可以回馈至商用输电网络,还能供独立电网系统使用。光伏逆变器在商业光伏储能电站和家庭独立储能系统等应用领域中得到了广泛的应用。光耦合器,以其高速信号传输、出色的共模抑制比以及单向信号传输和光电隔离的特性,在光伏逆变器中扮演着至关重要的角色。它确保了系统的安全隔离、干扰的有效隔离以及通信信号的精准传输。光耦合器的使用不仅提高了系统的稳定性和安全性,而且由于其低功耗的
    晶台光耦 2024-12-02 10:40 159浏览
  • TOF多区传感器: ND06   ND06是一款微型多区高集成度ToF测距传感器,其支持24个区域(6 x 4)同步测距,测距范围远达5m,具有测距范围广、精度高、测距稳定等特点。适用于投影仪的无感自动对焦和梯形校正、AIoT、手势识别、智能面板和智能灯具等多种场景。                 如果用ND06进行手势识别,只需要经过三个步骤: 第一步&
    esad0 2024-12-04 11:20 132浏览
  • 遇到部分串口工具不支持1500000波特率,这时候就需要进行修改,本文以触觉智能RK3562开发板修改系统波特率为115200为例,介绍瑞芯微方案主板Linux修改系统串口波特率教程。温馨提示:瑞芯微方案主板/开发板串口波特率只支持115200或1500000。修改Loader打印波特率查看对应芯片的MINIALL.ini确定要修改的bin文件#查看对应芯片的MINIALL.ini cat rkbin/RKBOOT/RK3562MINIALL.ini修改uart baudrate参数修改以下目
    Industio_触觉智能 2024-12-03 11:28 137浏览
  • 概述 说明(三)探讨的是比较器一般带有滞回(Hysteresis)功能,为了解决输入信号转换速率不够的问题。前文还提到,即便使能滞回(Hysteresis)功能,还是无法解决SiPM读出测试系统需要解决的问题。本文在说明(三)的基础上,继续探讨为SiPM读出测试系统寻求合适的模拟脉冲检出方案。前四代SiPM使用的高速比较器指标缺陷 由于前端模拟信号属于典型的指数脉冲,所以下降沿转换速率(Slew Rate)过慢,导致比较器检出出现不必要的问题。尽管比较器可以使能滞回(Hysteresis)模块功
    coyoo 2024-12-03 12:20 203浏览
  • 作为优秀工程师的你,已身经百战、阅板无数!请先醒醒,新的项目来了,这是一个既要、又要、还要的产品需求,ARM核心板中一个处理器怎么能实现这么丰富的外围接口?踌躇之际,你偶阅此文。于是,“潘多拉”的魔盒打开了!没错,USB资源就是你打开新世界得钥匙,它能做哪些扩展呢?1.1  USB扩网口通用ARM处理器大多带两路网口,如果项目中有多路网路接口的需求,一般会选择在主板外部加交换机/路由器。当然,出于成本考虑,也可以将Switch芯片集成到ARM核心板或底板上,如KSZ9897、
    万象奥科 2024-12-03 10:24 115浏览
  • 《高速PCB设计经验规则应用实践》+PCB绘制学习与验证读书首先看目录,我感兴趣的是这一节;作者在书中列举了一条经典规则,然后进行详细分析,通过公式推导图表列举说明了传统的这一规则是受到电容加工特点影响的,在使用了MLCC陶瓷电容后这一条规则已经不再实用了。图书还列举了高速PCB设计需要的专业工具和仿真软件,当然由于篇幅所限,只是介绍了一点点设计步骤;我最感兴趣的部分还是元件布局的经验规则,在这里列举如下:在这里,演示一下,我根据书本知识进行电机驱动的布局:这也算知行合一吧。对于布局书中有一句:
    wuyu2009 2024-11-30 20:30 153浏览
  • 在电子工程领域,高速PCB设计是一项极具挑战性和重要性的工作。随着集成电路的迅猛发展,电路系统的复杂度和运行速度不断提升,对PCB设计的要求也越来越高。在这样的背景下,我有幸阅读了田学军老师所著的《高速PCB设计经验规则应用实践》一书,深感受益匪浅。以下是我从本书中学习到的新知识和经验分享,重点涵盖特殊应用电路的PCB设计、高速PCB设计经验等方面。一、高速PCB设计的基础知识回顾与深化 在阅读本书之前,我对高速PCB设计的基础知识已有一定的了解,但通过阅读,我对这些知识的认识得到了进一步的深
    金玉其中 2024-12-05 10:01 140浏览
  • 戴上XR眼镜去“追龙”是种什么体验?2024年11月30日,由上海自然博物馆(上海科技馆分馆)与三湘印象联合出品、三湘印象旗下观印象艺术发展有限公司(下简称“观印象”)承制的《又见恐龙》XR嘉年华在上海自然博物馆重磅开幕。该体验项目将于12月1日正式对公众开放,持续至2025年3月30日。双向奔赴,恐龙IP撞上元宇宙不久前,上海市经济和信息化委员会等部门联合印发了《上海市超高清视听产业发展行动方案》,特别提到“支持博物馆、主题乐园等场所推动超高清视听技术应用,丰富线下文旅消费体验”。作为上海自然
    电子与消费 2024-11-30 22:03 116浏览
  •         温度传感器的精度受哪些因素影响,要先看所用的温度传感器输出哪种信号,不同信号输出的温度传感器影响精度的因素也不同。        现在常用的温度传感器输出信号有以下几种:电阻信号、电流信号、电压信号、数字信号等。以输出电阻信号的温度传感器为例,还细分为正温度系数温度传感器和负温度系数温度传感器,常用的铂电阻PT100/1000温度传感器就是正温度系数,就是说随着温度的升高,输出的电阻值会增大。对于输出
    锦正茂科技 2024-12-03 11:50 169浏览
我要评论
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦