工业机器人技术
工业机器人通常工作于工厂车间,能够执行各种任务,尤其是对人体有害或其所要求的精度和速度人类很难甚至无法做到的任务。
正如ISO 8373所定义的,工业机器人是能够自动控制的可重复编程的多用途机械装置,它可以在三轴甚至更多轴上进行编程,可以是固定的,也可以是移动的,用在工业自动化应用领域。
2010年以来,工业机器人自动化水平不断提高,技术持续创新,对工业机器人的需求也日益增长。2015年,全球有1 50万台工业机器人在工作。
工业机器人技术指的是对构成机器人的电动机械臂和关节的设计、构建、操作和装配。机器人控制的核心是致动关节,它按照设定的轨迹移动机器人。除了控制关节,机器人技术还包括建模、识别、设计、轨迹规划和学习等。
缘起:汽车工业
汽车工业是首先大批量应用工业机器人的行业。机器人应用在汽车工业领域完成点焊、搬运(包括工件的抓起、放下和取出等)、车体装配、喷漆和涂覆等任务。
正如任何新技术一样,工业机器人凭借技术战略上的优势,包括制造质量的提升、制造时间的缩短、缺陷的减少等,推动了其最初的应用部署。
工业机器人发展趋势
随着机器人技术的成熟,制造商和最终用户已经开始探索如何超越最初的战略优势。工业机器人目前的发展趋势包括:
·对高可靠性和生产率的、具有成本效益的机器人的需求。
·用于高性能应用机器人,例如水射流和激光切割、物料输送、电弧焊接、胶合、去毛刺和倒角等,其控制策略不同于装配。
·协同机器人协调工作,两个或者多个机器人一起处理由第三个机器人持有的工件;例如,电弧焊接。
·机器视觉引导的机器人控制,机器视觉系统根据自己的“所见”来控制机器人轨迹,例如,抓取和排列操作。
·能够满足功能安全的机器人,这对于自动防故障操作和人机协同非常重要。
这些新出现的发展趋势开辟了新市场和应用。但是,也给机器人控制带来了挑战。
机器人技术面临的实际挑战
要认识到工业机器人目前的发展趋势给机器人设计人员带来多大的挑战,应首先研究机器人技术所面临的主要控制问题。
很显然,机器人技术主要是关于运动控制的。这与电机控制不同。电机控制是指通过算法来高效地驱动每一个电机轴,达到所要求的速度、位置和扭矩。运动控制是指能够控制运动点的轨迹或者点位(例如,路径;参见图1)——通常,机器人臂的工具末端有多个自由度。通过多个电机、齿轮、杠杆、弹簧、轴承和关节来定位运动点,在三维空间中按照所要求的轨迹行进。
图1.曲线P1-P2表示一个六轴机器人的工具控制路径。(有趣的直觉推论:最短的路径未必是最快的路径。)
实际的挑战源自运动控制领域的复杂性,在管理上这被统称为“扰动”。扰动包括惯性、共振、转矩波动、齿轮滞后和轴承摩擦等(参见图2)。表1总结了机器人制造商面临的一些常见的实际复杂问题,以及给机器人设计人员带来的挑战。
表1.实际的机器人复杂性和挑战
图2.实际扰动及其对机器人控制影响的实例
模型预测控制
模型预测控制(model predictive control, MPC)的出现已成为工业机器人领域最重要的模式。MPC以实时、随时的方式连续计算和重新计算机器人控制输入(在业界被称为“在线”),补偿实际扰动,从而减轻甚至消除了上述挑战的影响。
MPC预测建模系统中由独立变量的变化造成的相关变量的变化。
有两类独立变量:由控制器可调的变量,以及不可调的变量。
能够由控制器调整的独立变量是控制输入,例如电机的瞬时转轴角度,需要这些输入用于在三维空间中通过一系列坐标来移动机器人工具,这些坐标代表了所要求的工具路径。控制器不能调整的独立变量是前面所描述的扰动。
相关变量是表示控制目标的坐标,例如,要求的工具路径。也可以表示必须避开的坐标点等约束,以避免与邻近的结构(例如容器壁等)或者其他机器人相碰撞。
MPC使用当前瞬时机器人系统测量结果、系统和MPC模型当前瞬时动态状态,以及系统变量目标和限制等,来计算可控独立变量下一步的变化。MPC计算出这些变化,使得相关变量尽可能靠近目标值,以实现对独立变量和相关变量的约束。
在时间t,MPC对机器人系统当前状态进行采样,预测相对短的未来时间范围内 (t, t + T) 的最优控制策略,这称为预测时域(参见图3)。当MPC计算整个预测时域内所有必要的控制输入时,它只将控制策略中的第一条命令发送给致动器。当机器人执行第一条命令时,MPC再次对系统采样,重复计算过程,但是采用了时间t + 1的当前新状态。它现在确定最新的控制输入以及最新的预测工具路径。通过不断的重复采样和计算过程,同时将预测时域等间隔向前移动,间隔时间与采样时间相等,MPC连续确定不断优化的一组控制输入。控制输入是通过对系统瞬时状态的连续实时采样进行计算得出的,因此,MPC计算控制输入以维持所要求的工具路径,同时处理瞬时扰动。由于是在预测时域内不断向前移动,因此,MPC也被称为滚动时域控制。
图3. Martin Behrendt提出的MPC 基础方案 ——通过维基百科共享资源得到了CC BY-SA 3.0许可
MPC不同于简单的比例积分微分(proportional-integral-derivative, PID)控制。MPC通常用于表示复杂动态系统的行为。机器人很普通的特性对于PID控制器来说却很复杂,例如高阶动态变化。对于具有高阶动态变化的控制问题,MPC通过超前预测来规划控制,因此,MPC要比PID好很多。
直到最近,由于对计算硬件完成优化算法的要求很高,MPC还是限于处理较慢的动态变化。MPC算法包括复杂的数学运算,例如,解决含有浮点加法、矩阵乘法、除法、替换和Cholesky分解在内的内点二次规划(quadratic programming, QP)问题等。使用各种基于传感器的监测器来增强对控制电机转轴位置的估算,进一步调整MPC。一种常用的监测器使用了卡尔曼滤波器或者扩展卡尔曼滤波器(extended Kalman filter, EKF)。
在FPGA中,采用硬件浮点算子加速MPC算法的执行
传统上采用高性能通用CPU来处理MPC问题。最近的硬件发展趋势是采用现场可编程门阵列(FPGA)来加速MPC算法,超越了CPU的能力所及。使用单精度浮点算法,Cholesky分解和EKF等数学运算算法能够在FPGA中高效地实现,与基于CPU的系统相比较,不但显著缩短了计算时间,而且还大幅度降低了功耗。
基于硬件的浮点能力,目前这是FPGA供应商Altera在FPGA器件中所独有的,进一步加速了基于FPGA的浮点算法。Altera 20nm Arria? 10 FPGA和SoC是业界第一款具有硬核浮点运算功能的器件,性能达到每秒1.5万亿次浮点运算(TFLOPS)。Altera 14nm Stratix? 10 FPGA和SoC的浮点性能是业界最好的,性能达到10 TFLOPS。
浮点DSP模块列协同工作时还支持矢量模式。这些矢量模式支持MPC等高性能计算应用中典型的线性代数函数。
FPGA与基于硬件的浮点运算相结合,与传统方法相比,MPC速度提高了几倍,而且还大幅度降低了功耗。
工业机器人的未来机遇
从2015年到2018年,预计全世界工厂会安装130万台新工业机器人。国际机器人联合会预计工业机器人全球市场会从2015年的110亿美元增长到2025年的244亿美元。
工业机器人的未来创新会围绕基于传感器的控制而展开。更多传感器的实际信息被传递给MPC,满足了复杂模型的增强可视化需求,从而高效地处理高速操作和低成本材料使用带来的扰动问题。基于传感器的控制还有助于满足功能安全要求,提高故障探测和失败模式分析能力。小型化和新传感功能,包括触觉和受力反馈等,将有助于机器人应用于更多的工业领域,例如,离散组件的电子装配线等小尺寸而且尺寸各不相同的材料和产品应用行业。
要求能够快速重新配置和重新校准机器人,以支持工业4.0和IoT推动的大规模定制和智能工厂的运行。
工业4.0的一项基本要求是,通过搭载能够互相通信的自主机器人实现自动生产。把机器人与中心服务器或者数据库连接,机器人能够自动协同工作。它们能够以最少的人力投入智能地完成任务:例如采用自主移动机器人(autonomous mobile robots, AMR)在工厂车间里搬运材料,这些机器人会避开障碍物,与其他AMR协同工作,实时确定需要在哪里抓取物体,在哪里放下物体。可以在企业层面上独立保有中心数据库服务器,也可以将其外包给安全的云服务提供商。
智能工厂目前的趋势是自主机器人今后五年内成为主流应用。FPGA能够在单个芯片中集成控制和通信功能,包括为机器人间的精确时序提供的确定性以太网802.1 TSN,以及工厂到云端通信等,这些对于工业机器人自主革命至关重要。传感器处理也将极大地受益于FPGA 。
工业机器人的未来会非常令人振奋。FPGA等高性能计算硬件也将推动控制创新。FPGA基于硬件的浮点运算等特性将有助于实现计算能力的突破,这对于机器人加速控制算法非常关键。机器人控制领域的FPGA应用会越来越多,不仅仅是由于机器人控制算法极高的计算需求,而且还在于FPGA为机器人领域带来的低成本、低功耗和工业4.0功能等优势。