第4章工业机器人运动轨迹规划2020/6/27主要内容机器人运动轨迹规划基本方法轨迹规划问题与性能指标常用机器人路径控制方式机器人轨迹规划实例1234【学习目标】1.知识目标了解机器人轨迹规划的基本概念。熟悉机器人轨迹规划的性能指标。掌握机器人的路径控制方式。掌握机器人运动轨迹规划的基本方法。2.技能目标能够进行点位运动轨迹示教及程序编写与调试。能够进行连续路径轨迹示教及程序的编写与调试。能够进行复杂轨迹的程序编写与调试。3.情感目标培养严谨认真、规范操作的意识。培养合作学习、团结协作的精神。任务1轨迹规划问题与性能指标【任务描述】在本次任务中需要了解清楚轨迹规划的重要性,轨迹规划的基本概念和方式。路径和轨迹规划与受到控制的机器人从一个位置移动到另一个位置的方法有关。路径与轨迹规划既要用到机器人的运动学相关知识,也要用到机器人的动力学。本任务主要讨论机器人的轨迹规划问题和性能指标。任务1轨迹规划问题与性能指标【知识储备】一、轨迹规划问题工业机器人广泛的被用在各种行业应用中来实现快速、精确和高质量的生产任务。在抓取和放置操作,工业机器人的法兰盘工具必须在工作空间中两个特定的位置之间移动,而它在两者之间的路径却不被关心。在路径追踪应用中,比如焊接,切削,喷涂等,法兰盘末端工具必须在尽可能保持额定的速度下,在三维空间中遵循特定的轨迹运动。用工具坐标系相对于工件坐标系的运动来描述作业路径是一种通用的作业描述方法。它把作业路径描述与具体的工业机器人、手爪或工具分离开来,形成了模型化的作业描述方法,从而使这种描述既适用于不同的机器人,也适用于在同一机器人上装夹不同规格的工具。关节空间中拾取操作的轨迹规划,只是限定轨迹函数的启动和终止两个极限位置,对于函数曲线没有强制性,因此,我们也就有很大的自由度选择轨迹函数。任务1轨迹规划问题与性能指标【知识储备】二、轨迹规划性能指标分析在进行轨迹规划时,运动学的要求是工业机器人工作考虑的首要因素,同时还要综合考虑工业机器人的工作转速、质量以及载荷的大小等多种因素。1.最大速度:机器人运动的速度。2.最大加速度:机器人运动加速度最大值的大小,是影响机器人动力特性的主要因素。3.最大冲击:机器人冲击最大值的大小对机器人系统的动力特性有很大的影响,会直接影响机器人系统的残余振动,影响机器人的动力学特性。4.轨迹规划曲线的高阶导数:加速度曲线能不能连续决定了轨迹规划曲线能否接受刚性和柔性的冲击,而加速度的导数曲线一一冲击曲线是否连续,若其不连续,则冲击曲线的改变值的多少对机器人动力特性有很大的影响。任务1轨迹规划问题与性能指标【拓展与提高】机器人的作业过程可用手部位姿结点序列来规定,每个结点可用工具坐标系相对于作业坐标系的齐次变换来描述。相应的关节变量可用运动学反解程序计算。如图4-2所示的机器人插螺栓作业,要求把螺栓从槽中取出并放入托架的一个孔中,用符号表示沿轨迹运动的各结点的位姿,使机器人能沿虚线运动并完成作业。设定Pi(i=0,l,2,3,4,5)为气动手爪必须经过的直角坐标结点。参照这些结点的位姿将作业描述为如表4-2所示的手部的一连串运动和动作。图4-2机器人插螺栓作业的轨迹任务2常用机器人路径控制方式【任务描述】本次任务主要是了解工业机器人控制中的路径生成问题,以及路径控制的分类。针对ABB的工业机器人路径运动,主要介绍其运动控制指令。【知识储备】运动轨迹是机器人为完成某一作业,工具中心点(TCP)所掠过的路径,是机器示教的重点。从运动方式上看,工业机器人具有点到点(PTP)运动和连续路径(CP)运动2种形式。按运动路径种类区分,工业机器人具有直线和圆弧2种动作类型。任务2常用机器人路径控制方式【知识储备】一、点位控制方式(PointToPoint)这种控制方式的特点是只控制工业机器人末端执行器在作业空间中某些规定的离散点上的位姿,如图4-3所示。控制时只要求工业机器人快速、准确地实现相邻各点之间的运动,而对达到目标点的运动轨迹则不作任何规定。ABCDE图4-3点位控制方式示意图任务2常用机器人路径控制方式【知识储备】二、连续轨迹控制方式(ContinuousPoint)这种控制方式的特点是连续地控制工业机器人末端执行器在作业空间中的位姿,如图4-4所示。要求其严格按照预定的轨迹和速度在一定的精度范围内运动,而且速度可控,轨迹光滑,运动平稳,以完成作业任务。图4-4连续轨迹控制方式示意图ABCDE任务2常用机器人路径控制方式【知识储备】三、常用轨迹运动控制指令1.MoveL-让机器人作直线运动MoveL用来让机器人TCP直线运动到给定的目标位置,如图4-5示意。当TCP仍旧固定的时候,该指令也可以重新给工具定方向。该指令只能用在主任务T_ROB1,或者多运动系统的运动任务中。图4-5直线运动示意图p1p2任务2常用机器人路径控制方式【知识储备】三、常用轨迹运动控制指令1.MoveL-让机器人作直线运动指令书写格式为:MoveL[\Conc]ToPoint[\ID]Speed[\V]|[\T]Zone[\Z][\Inpos]Tool[\WObj][\Corr][\Conc]:并发事件,数据类型:switchToPoint:数据类型为robtarget[\ID]:同步ID,数据类型:identnoSpeed:数据类型为speeddata[\V]:速度,数据类型:num[\T]:时间,数据类型:numZone:数据类型为zonedata任务2常用机器人路径控制方式【知识储备】三、常用轨迹运动控制指令1.MoveL-让机器人作直线运动指令书写格式为:[\Z]:Zone,数据类型:num[\Inpos]:到位,数据类型:stoppointdata(停止点数据)Tool:数据类型为tooldata[\Wobj]:工作对象,数据类型为wobjdata[\Corr]:改正,数据类型:switch任务2常用机器人路径控制方式【知识储备】三、常用轨迹运动控制指令2.MoveJ-通过关节移动移动机器人当运动不必是直线的时候,MoveJ用来快速将机器人从一个点运动到另一个点,如图4-6示意。机器人和外部轴沿着一个非直线的路径移动到目标点,所有轴同时到达目标点。该指令只能用在主任务T_ROB1中,或者在多运动系统中的运动任务中。MoveJ[\Conc]ToPoint[\ID]Speed[\V]|[\T]Zone[\Z][\Inpos]Tool[\WObj]p1p2图4-6关节运动示意图任务2常用机器人路径控制方式【知识储备】三、常用轨迹运动控制指令3.MoveC—让机器人做圆弧运动该指令用来让机器人TCP沿圆弧运动到一个给定的目标点,如图4-7示意。在运动过程中,相对圆的方向通常保持不变。该指令只能在主任务T_ROB1中使用,在多运动系统中的运动任务中使用。该指令的基本范例说明如下:MoveC[\Conc]CirPointToPoint[\ID]Speed[\V]|[\T]Zone[\z][\Inpos]Tool[\Wobj][\Corr]图4-7圆弧运动示意图p1起点p2圆弧上的点p1终点任务2常用机器人路径控制方式【知识储备】三、常用轨迹运动控制指令4.MoveAbsJ—把机器人移动到绝对轴位置MoveAbsJ(绝对关节移动)用来把机器人或者外部轴移动到一个绝对位置,该位置在轴定位中定义。机器人和外部轴沿着一个非直线的路径移动到目标位置,所有轴在同一时间运动到目标位置。MoveAbsJ指令中机器人的最终位置,既不受工具或者工作对象的影响,也不受激活程序更换的影响,但是机器人要用到这些数据来计算负载、TCP速度和转角点。相同的工具可以被用在相邻的运动指令中。该指令只能被用在主任务T_ROB1中,或者在多运动系统中的运动任务中。图4-7圆弧运动示意图任务2常用机器人路径控制方式【拓展与提高】在进行轨迹示教时,直线轨迹示教2个程序点(直线起始点和直线结束点);圆弧轨迹示教3个程序点(圆弧起始点、圆弧中间点和圆弧结束点)。机器人运动轨迹的示教主要是确认程序点的属性。每个程序点主要包含:①位置坐标:描述机器人TCP的6个自由度(3个平动自由度和3个转动自由度)。②插补方式:机器人再现时,从前一程序点移动到当前程序点的动作类型。③再现速度:机器人再现时,从前一程序点移动到当前程序点的速度。④空走点:指从当前程序点移动到下一程序点的整个过程不需要实施作业,用于示教除作业开始点和作业中间点之外的程序点。⑤作业点:指从当前程序点移动到下一程序点的整个过程需要实施作业,用于作业开始点和作业中间点。任务3机器人运动轨迹规划基本方法【任务描述】本任务主要讨论连续路径的无障碍的轨迹规划方法。轨迹规划器可形象地看成为一个黑箱如图4-8所示,其输入包括路径的“设定”和“约束”,输出的是操作臂末端手部的“位姿序列”,表示手部在各离散时刻的中间形位。路径规划器路径设定路径约束动力学约束图4-8路径规划示意图任务3机器人运动轨迹规划基本方法【知识储备】一、轨迹规划基本方法分类在工业机器人末端执行工具的轨迹路径控制方法中,最常用的轨迹规划方法有两种:第—种方法要求用户对于选定的轨迹结点(插值点)上的位姿、速度和加速度给出一组显式约束(例如连续性和光滑程度等),轨迹规划器从一类函数(例如n次多项式)中选取参数化轨迹,对结点进行插值,并满足约束条件。第二种方法要求用户给出运动路径的解析式:如直角坐标空间中的直线路径,轨迹规划器在关节空间或直角坐标空间中确定一条轨迹来逼近预定的路径。二、插补方法分类点位控制,即PTP控制,通常没有路径约束,多以关节坐标运动表示。点位控制只要求满足起终点位姿,在轨迹中间只有关节的几何限制、最大速度和加速度约束,为了保证运动的连续性,要求速度连续,各轴协调。任务3机器人运动轨迹规划基本方法【知识储备】三、工业机器人轨迹控制过程机器人的基本操作方式是示教-再现,即首先教机器人如何做,机器人记住了这个过程,于是它可以根据需要重复这个动作。实际上,对于有规律的轨迹,仅示教几个特征点,计算机就能利用插补算法获得中间点的坐标,如直线需要示教两点,圆弧需要示教三点,通过机器人逆向运动学算法由这些点的坐标求出机器人各关节的位置和角度(1,…,n),然后由后面的角位置闭环控制系统实现要求的轨迹上的一点。继续插补并重复上述过程,从而实现要求的轨迹。机器人轨迹控制过程如图4-9所示。轨迹上示教点的位置及姿态插补算法机器人逆运算学Θ1,…,θnn个角度位置控制系统要求的位置、姿态图4-9机器人轨迹控制过程任务3机器人运动轨迹规划基本方法【拓展与提高】一、直线插补工业机器人轨迹控制的算法主要有直线轨迹插补算法以及和圆弧轨迹插补算法,对于非直线和圆弧轨迹,可以采用直线或圆弧逼近的方式实现这些轨迹。在有些情况下要求变化姿态,这就需要姿态插补,可仿照下面介绍的位置插补原理处理,也可参照圆弧的姿态插补方法解决,如图4-10所示。图4-10空间直线插补任务3机器人运动轨迹规划基本方法【拓展与提高】二、圆弧插补1.平面圆弧插补平面圆弧是指圆弧平面与基坐标系的三大平面之一重合,以XOY平面圆弧为例。已知不在一条直线上的三点P1、P2、P3及这三点对应的机器人手端的姿态,如图4-11及图4-12所示。图4-11由已知的三点P1、P2、P3决定的圆弧图4-12圆弧插补任务3机器人运动轨迹规划基本方法【拓展与提高】二、圆弧插补2.空间圆弧插补空间圆弧是指三维空间任一平面内的圆弧,此为空间一般平面的圆弧问题。空间圆弧插补可分三步来处理:①把三维问题转化成二维,找出圆弧所在平面。②利用二维平面插补算法求出插补点坐标(Xi+1,Yi+1)。③把该点的坐标值转变为基础坐标系下的值,如图4-13所示。图4-13基础坐标与空间圆弧平面的关系任务3机器人运动轨迹规划基本方法【拓展与提高】二、圆弧插补3.关节空间插补如上所述,路径点(结点)通常用工具坐标系以相对于工作坐标系位姿来表示。为了求得在关节空间形成所要求的轨迹,首先用运动学反解将路径点转换成关