专注工科类创新实验教学、科研开发20余年!方案覆盖嵌入式、IOT、AI、机器人、集成电路、新能源等领域。
 
  当前位置:首页 >> 新闻动态 >> 行业新闻
 
公司新闻
 
培训与竞赛
行业新闻
 
产品资讯

 
基于FPGA打造ROS 2定义硬件 自适应机器人获得灵活大脑(上)
     革新科技  来源:赛灵思公司 日期:2021/12/21 10:19:16 阅读:947 次
- 返回 -
 

传统的机器人软件开发,是使用预定义的架构和约束条件在给定机器人CPU中进行功能程序设计。然而采用自我调整运算后,构建机器人行为则是在进行架构程序设计。透过采用自我调整运算,机器人专家能在运行中适配机器人运算系统的一个或多个属性(如它的确定性、功耗、安全态势或吞吐量)。

机器人专家花费大量时间,以运算图形式构建机器人行为,解决已知的机器人任务。他们经常使用现代的C++语言,透过高阶软件工程操作,构建复杂的实时系统。然而,他们并不是硬件工程师。机器人专家普遍缺乏硬件和嵌入式技术专业知识,因而妨碍了FPGA等自我调整运算技术的广泛采用。本文在既往研究的启发下,介绍机器人自适应运算的基础知识,并提出一种生成ROS 2软件定义硬件的架构。与过去的其他方法相比,本架构假定面对的是没有硬件或嵌入式技术专业知识的机器人专家,可说是以机器人专家为中心的角度提出的。

本文首先将指出开发机器人时选择正确运算平台的重要性,以及机器人内部软硬件之间的重要关系。然后使用工厂做模拟,简要讲解CPU、GPU、FPGA和ASIC的运算原理并回顾相关研究文献,发现FPGA因低功耗、高性能、确定性、可重配置能力、安全性和自适应特征,在用于机器人时具有显著的优势。此外,作者回顾了有关将ROS整合到FPGA平台的既往研究,发现这些研究都从硬件工程师的角度出发,导致做出的设计决策往往严重制约性能空间。出于这个原因,本文从ROS 2机器人专家的视角提出建议,即全面考虑ROS 2的硬件加速。这一视角能体现:优化流程中、流程内、网络内(含底层)的ROS 2运算图交互;以及加速ROS上运行的应用。

在此将提出一种能够实现上述目标的架构。该架构由一套ROS 2套件构成,能够将硬件加速整合到ROS工作空间。这种架构适用于各种平台(支持边缘、工作站、数据中心或云端)和各种技术(支持FPGA和GPU),并且能够轻松地移植到其他电路板上。该架构的核心组件已经在Apache 2.0授权下开源,对三种电路板的基本支持也已经过展示。此外,提供的架构还适用于各种应用,将来可以透过包含catkin扩展(非ament)轻松移植到ROS。

机器人软件系统

机器人是一种系统级的系统,它由感知周边环境的传感器、根据感知采取行动的致动器和负责处理数据的运算构成,用于对其应用做出连贯一致的响应。在很大程度上机器人技术是一种系统整合的艺术,从软件的角度和硬件的角度看皆是如此。以往的研究揭示,在机器人领域中多达70%的资源被用于整合,而不是用于开发最终应用。直到最近,随着较低端的工业机器人走向大规模普及化,机器人公司才开始在硬件基础上着重软件开发。尽管如此,机器人仍然是高度专业化的系统,旨在以高可靠性和高精度执行一系列任务。因此,机器人内部的硬件和软件能力之间的关系十分重要。

大多数机器人透过内部网络交换信息并满足时序要求。从这种意义上来讲,机器人属于一种时间敏感型网络。

机器人系统机载资源通常有限,包括内存、I/O和磁盘或运算功能,进而阻碍了系统整合进程,使之难以满足非结构化、动态和不断变化环境的实时性要求。随着机器人内部网络安全的发展,这一点更是如此,因为它经常会在使用寿命方面给机器人带来新的要求,这需要修改机器人的逻辑,进而对实时环路产生影响。因此,为机器人系统选择合适的运算平台至关重要,该平台既要简化系统整合、符合功耗限制,同时也要适应机器人应用不断变化的需求。

自我调整机器人是指那些能够成功应对新状况的机器人。要成为一个名副其实的自我调整机器人,必须具备以下三大基本特征中的至少一项:自我调整行为、自我调整机电一体化(Adaptive Mechatronics)、自我调整运算。拥有全部三大基本特征的机器人,则可被视为「全自我调整机器人」。

总而言之,机器人是能够以高可靠性和高精度执行一系列任务的高度专业化的系统。机器人内部的硬件和软件能力之间的关系十分重要。因此,为机器人系统选择合适的运算平台至关重要。该平台既要能够简化系统整合、符合功耗需求,同时也要能够适应机器人应用不断变化的需求。

自我调整机电一体化是一个业已存在数十年的概念。学者Clément Gosselin从机械的角度探讨这个课题,并将自适应系统定义为能够成功响应新状况的系统。此外,他还将该机器人机械系统定义为自适应系统,即透过高度依赖机械属性,能够适应外部的新状况。他还举出了各种纯粹依靠机械构造的自适应机器人系统的雏形示例,包括自我调整机器人手。此外,Ivanov也从纯机械角度研究自我调整机器人,在研究中他提议自我调整机器人应考虑使用自适应电力驱动装置,根据载荷改变电力驱动装置的输出。他将这种自我调整行为命名为自调节(Self-regulation),并认为自适应电力驱动装置能在机器人应用中实现高能效。透过采用传感器输入控制机制将这项研究延伸到机电一体化领域,产生了一项有关采用传感器回馈实现自我调整机器人控制的研究。示例包括视觉回馈或力传感器回馈等。

机器人的自我调整行为并非新颖概念。它可追溯到上世纪80年代中期Brooks提出的使用行为的机器人方法和他的包容式架构(Subsumption Architecture)。在上世纪90年代,不同的研究小组都在研究如何让机器人具备灵活应变能力和自我组织能力,进而提高机器人的自主性。他们往往是透过某种控制机制(使用某种形式的人工神经网络与机器人的传感器和致动器相连)来实现的。后来的Ziemke在其研究中总结了这种方法,提出了自我调整神经机器人的概念。这种概念创造性地率先使用「自我调整机器人」一词,指代用人工神经系统和自适应技术控制自主主体。最近,在《Robotic Fabrication in Architecture, Art and Design 2018》的机器人专辑中,作者援引「自我调整机器人」的说法,指透过添加感知和处理实现的完全自我调整行为(与Ivanov提出的「自我调整机器人」概念不同,后者主要关注机械构造角度)。根据原文,自我调整机器人是指能够透过加装传感器,适应不断变化的环境条件和材料特性,同时在一定程度上保持可预测性的机器人。与该研究同时代、同思路的Mayoral-Vilches等提出自主适配机器人的概念。利用硬件模块化和人工智能(指上世纪90年代的自我调整神经机器人趋势)节省构建这种机器人所需的工作量和时间。

自适应运算是自适应机器人第三大基本特征。对于机器人而言,它指的是机器人能够在运行过程中适配其运算系统的一个或多个属性(如确定性、功耗或吞吐量)。正如「What is Adaptive Computing?」中介绍的,FPGA是实现自我调整运算较理想的技术。FPGA最早由赛灵思(Xilinx)联合创始人之一Freeman在1984年提出,它为自我调整运算奠定了基础。FPGA兼具通用性和强大功能,同时效率高、成本低。因为在FPGA上实现其他处理架构,还可以实现并行处理,因此FPGA可以用于处理几乎任何机器人内部的任务。让FPGA成为自适应运算的另一特征在于,能够针对每一种机器人应用的需求专门客制化数据路径宽度和寄存器长度。如何在机器人中使用自我调整运算的示例包括为加速运动规画而设计的运算流水线、分布式同步或时间敏感型弹性通讯等。

何种平台更适合机器人运算

CPU和通用GPU(GPGPU)是两种广泛使用的商业运算平台,因为它们可用性高且具有通用性。这些运算技术的通用性,是机器人专家对其特别感兴趣的原因。但是通用性的代价是:

1.通用平台的固定架构难以适应新的机器人场景。追加功能往往需要追加硬件,这通常也意谓着要花时间对新的硬件进行新的系统整合度。
2.通用性必然导致其在时效上的缺陷,进而影响确定性形成(难以满足严格的实时性要求)。
3.其功耗通常比专用运算架构(如FPGA或ASIC)高一到两个数量级。
4.固定的、不具备灵活应变能力的架构,导致其对网络安全威胁和恶意行为的抵御能力减弱。熔毁(Meltdown)或者幽灵(Spectre)等网络攻击示例表明,如果缺乏重新配置数据流流水线的能力,运算平台最终将丧失安全性。

总体而言,CPU、GPU和ASIC等采用固定架构的组件,在为开发者提供优势的同时,也让其付出了代价。它们所缺乏的灵活应变能力,导致缺乏时效性、能耗增加。而且由于无法透过重新配置架构来提高硬件的抗风险能力,因此在日新月异的网络威胁面前更加脆弱。

.CPU工业模拟

CPU的工业模拟,它将CPU理解成一系列车间,并且每个车间安排一位技能非常娴熟的工人。

这些工人每人都能使用通用工具生产出几乎任何产品。每位工人按顺序使用不同的工具,将原材料制造为成品,一次生产一件产品。根据任务的性质,这种串行生产流程可能用到大量步骤。这些车间基本(不考虑快取的情况下)彼此独立,工人能全身心地完成不同任务,不必担心干扰或协调问题。尽管CPU十分灵活,但它的底层硬件是固定的。CPU仍然在基本的冯纽曼架构(或者更确切地说,储存程序计算机)上运行。数据从内存读取到处理器进行运算,然后写回到内存。基本上每个CPU都以串行方式运行,一次一个指令。同时架构以算术逻辑单元(ALU)为中心,每次运算都需要将数据输入到ALU并从ALU输出数据。


 
 
   
销售电话:010-82608898     技术支持:82608898-800    Email:sales@gexin.com.cn
Copyright © 2012-2024 版权所有:北京革新创展科技有限公司   京ICP备20004067号-1