"); //-->
作者:Victor Mayoral-Vilches
赛灵思前系统架构师、AMD 咨询师,Acceleration Robotics 创始人
随着机器人专家不断面临传统处理器架构带来的局限性,他们需要定制化和并行性来应对未来的性能、数据安全和运行安全挑战
面向机器人应用的软件开发者所面临的挑战愈发严峻。他们既要满足性能要求,又要确保实时确定性、足够的安全与保密性。作为机器核心的标量( CPU )处理器架构的通用特性,以及性能扩展方面的限制,越发成为满足当今工业机器人多样化需求的阻碍。常见问题包括影响确定性的时间效率低下、功耗过大与安全问题。另一大安全挑战则在于,硬件无法重新配置,难以针对不断演进的网络威胁而更新防护能力。
更适合机器人技术需求的新一代计算平台正在涌现。这些模块由异构处理单元组成,可帮助机器人专家构建灵活的计算架构。本文通过研究机器人专家可用的各种计算资源来评估它们的构成,这些资源包括 CPU、DSP、GPU、FPGA 和 ASIC。每种架构各有所长,因此,随着机器人技术的演进,它们都将持续发挥作用。
面向机器人应用的计算技术
将自适应计算运用于机器人
机器人属于在整个设备范围内持续交换数据的复合网络,包含从传感器到计算引擎,再到终端执行器的整体系统。我们可以将这些网络视为机器人支持信息交换的神经系统。就像在人类神经系统中一样,这种信息交换非常依赖于确定性的性能和实时响应能力,这样机器人才能以一致的方式运行。由于标量处理器和矢量处理器的架构是固定的,因此,在这种场景下它们难以稳定满足需求。
实现在 FPGA 和 ASIC 中的定制、高度并行的架构有能力突破此类局限性。特别是对于 FPGA 而言,通过为机器人提供软件定义型硬件,在机器人软件开发方法上面带来了根本性转变。如果在 CPU 中进行功能编程,需要在 CPU 预定义的架构和约束限制内工作,而通过 FPGA 构建机器人行为,是对执行所需任务的架构本身进行编程。
机器人专家需要合适的工具和硬件来妥善利用 FPGA 的灵活性,从而构建具有确定性、实时行为的适应性机器人。AMD 赛灵思 Kria K26 这样的系统模块( SOM )就是一大范例。它专为边缘应用而设计,搭载了高速接口、内存和板载电源。它包含 Zynq® UltraScale+™ MPSoC 片上系统( SoC ),能够提供可编程逻辑单元和 DSP 片,同时使用四核应用处理器、双核实时处理器和 2D/3D GPU 处理标量和矢量处理工作负载。
图1 :FPGA 系统模块为实时、确定性机器人的开发提供了平台。
除 SOM 之外,还需要适当的库和实用工具来构建工业级机器人解决方案。Kria 机器人堆栈( KRS,即图2 )与机器人操作系统( ROS )紧密集成,为机器人应用开发提供了事实上的框架,并简化了硬件加速的使用。SOM 提供了对 ROS 2的原生支持,进而提高了机器人和工业自动化应用的性能。
图 2:硬件加速机器人的关键库和实用工具。
该堆栈使用 ROS 2 软件开发工具套件( SDK ),并兼容 ROS 2 生态系统,可帮助构建具有确定性实时性能的机器人系统(采用模块化方法)。它利用现有的技术,如服务质量( QoS )机制和时间敏感型网络( TSN ),并包括应用级加速内核、ROS 通信中间件以及促进与 FPGA 交互的运行时工具。虚拟机管理程序有助于支持使用虚拟机的混合临界系统。
# 结论
利用 FPGA 的自适应加速计算特性能够强化工业机器人的性能,同时还可提升能效,并支持兼容未来演进的灵活性和安全性。要实现这类新一代设备,需要适当的硬件支持,例如将 FPGA 逻辑与标量处理器和 GPU 相结合的SOM,以及可搭配机器人专家熟悉的框架(如 ROS 2)轻松开展工作的软件和工具。
*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。