本章在操作臂运动学和动力学的基础上,讨论在关节空间和笛卡尔空间中机器人运动的轨迹规划和轨迹生成方法。所谓轨迹,是指操作臂在运动过程中的位移、速度和加速度。而轨迹规划是根据作业任务的要求,计算出预期的运动轨迹。首先对机器人的任务,运动路径和轨迹进行描述,轨迹规划器可使编程手续简化,只要求用户输入有关路径和轨迹的若干约束和简单描述,而复杂的细节问题则由规划器解决。例如,用户只需给出手部的目标位姿,让规划器确定到达该目标的路径点、持续时间、运动速度等轨迹参数。并且,在计算机内部描述所要求的轨迹,即选择习惯规定及合理的软件数据结构。最后,对内部描述的轨迹、实时计算机器人运动的位移、速度和加速度,生成运动轨迹。
4.1 机器人轨迹规划概述 一、机器人轨迹的概念
机器人轨迹泛指工业机器人在运动过程中的运动轨迹,即运动点的位移、速度和加速度。
机器人在作业空间要完成给定的任务,其手部运动必须按一定的轨迹(trajectory)进行。轨迹的生成一般是先给定轨迹上的若干个点,将其经运动学反解映射到关节空间,对关节空间中的相应点建立运动方程,然后按这些运动方程对关节进行插值,从而实现作业空间的运动要求,这一过程通常称为轨迹规划。工业机器人轨迹规划属于机器人低层规划,基本上不涉及人工智能的问题,本章仅讨论在关节空间或笛卡尔空间中工业机器人运动的轨迹规划和轨迹生成方法。
机器人运动轨迹的描述一般是对其手部位姿的描述,此位姿值可与关节变量相互转换。控制轨迹也就是按时间控制手部或工具中心走过的空间路径。 二、 轨迹规划的一般性问题
通常将操作臂的运动看作是工具坐标系{T}相对于工件坐标系{S}的一系列运动。这种描述方法既适用于各种操作臂,也适用于同一操作臂上装夹的各种工具。对于移动工作台(例如传送带),这种方法同样适用。这时,工作坐标{ S }位姿随时间而变化。
例如,图4.1所示将销插入工件孔中的作业可以借助工具坐标系的一系
图4.1 机器人将销插入工件孔中的作业描述
列位姿Pi (i=1,2,…,n)来描述。这种描述方法不仅符合机器人用户考虑问题的思路,而且有利于描述和生成机器人的运动轨迹。
用工具坐标系相对于工件坐标系的运动来描述作业路径是一种通用的作业描述方法。它把作业路径描述与具体的机器人、手爪或工具分离开来,形成了模型化的作业描述方法,
从而使这种描述既适用于不同的机器人,也适用于在同一机器人上装夹不同规格的工具。 在轨迹规划中,为叙述方便,也常用点来表示机器人的状态,或用它来表示工具坐标系的位姿,例如起始点、终止点就分别表示工具坐标系的起始位姿及终止位姿。
对点位作业(pick and place operation)的机器人(如用于上、下料),需要描述它的起始状 态和目标状态,即工具坐标系的起始值{T0}。目标值{Tf}。在此,用“点”这个词表示工具坐标系的位置和姿态(简称位姿),例如起始点和目标点等。
对于另外一些作业,如弧焊和曲面加工等,不仅要规定操作臂的起始点和终止点,而且要指明两点之间的若干中间点(称路径点),必须沿特定的路径运动(路径约束)。这类称为连续路径运动(continuous—Path motion)或轮廓运动(contour motion),而前者称点到点运动(PTP=point—to—point motion)。
在规划机器人的运动时.还需要弄清楚在其路径上是否存在障碍物(障碍约束)。路径约束和障碍约束的组合将机器人的规划与控制方式划分为四类、如表4-1所示。
表4.1 机器人的规划与控制方式
路径约束 有 无 障 碍 约 束 有 离线无碰撞路径规则+在线路径跟踪 位置控制+在线障碍探测和避障 位置控制 无 离线路径规划+在线路径跟踪
本章主要讨论连续路径的无障碍的轨迹规划方法。轨迹规划器可形象地看成为一个黑箱(图4—2),其输入包括路径的“设定”和“约束”,输出的是操作臂末端手部的“位姿序列”,表示手部在各离散时刻的中间形位。操作臂最常用的轨迹规划方法有两种: 第—种方法要求用户对于选定的轨迹结点(插值点)上的位姿、速度和加速度给出一组显
式约束(例如连续性和光滑程度等),轨迹规划器从一类函数(例如n次多项式)中选取参数化轨迹,对结点进行插值,并满足约束条件。
第二种方法要求用户给出运动路径的解析式;如直角坐标空间中的直线路径,轨迹规
划器在关节空间或直角坐标空间中确定一条轨迹来逼近预定的路径。
在第一种方法中,约束的设定和轨迹规划均在关节空间进行。由于对操作臂手部(直角坐标形位)没有施加任何约束,用户很难弄清手部的实际路径,因此可能会发生与障碍物相碰。第二种方法的路径约束是在直角坐标空间中给定的、而关节驱动器是在关节空间中受控的。因此,为了得到与给定路径十分接近的轨迹,首先必须采用某种函数逼近的方法将直角坐标路径约束转化为关节坐标路径约束,然后确定满足关节路径约束的参数化路径。
轨迹规划既可在关节空间也可在直角空间中进行.但是所规划的轨迹函数都必须连续和平滑,使得操作臂的运动平稳。在关节空间进行规划时、是将关节变量表示成时间的函数,并规划它的一阶和二阶时间导数;在直角空间进行规划是指将手部位姿、速度和加速度表示为时间的函数。而相应的关节位移、速度和加速度由手部的信息导出。通常通过运动学反解得出关节位移、用逆稚可比求出关节速度,用逆雅可比及其导数求解关节加速度。
用户根据作业给出各个路径结点后.规划器的任务包含:解变换方程、进行运动学反解和插值运算等;在关节空间进行规划时,大量工作是对关节变量的插值运算。下面讨论关节轨迹的插值计算。
三、轨迹的生成方式
运动轨迹的描述或生成有以下几种方式:
(1) 示教-再现运动。这种运动由人手把手示教机器人,定时记录各关节变量,得到沿路径运动时各关节的位移时间函数q(t);再现时,按内存中记录的各点的值产生序列动作。 (2) 关节空间运动。这种运动直接在关节空间里进行。由于动力学参数及其极限值直接在关节空间里描述,所以用这种方式求最短时间运动很方便。
(3) 空间直线运动。这是一种直角空间里的运动,它便于描述空间操作,计算量小,适宜简单的作业。
(4) 空间曲线运动。这是一种在描述空间中用明确的函数表达的运动,如圆周运动、螺旋运动等。
四、 轨迹规划涉及的主要问题
为了描述一个完整的作业,往往需要将上述运动进行组合。通常这种规划涉及到以下几方面的问题:
(1) 对工作对象及作业进行描述,用示教方法给出轨迹上的若干个结点(knot)。
(2) 用一条轨迹通过或逼近结点,此轨迹可按一定的原则优化,如加速度平滑得到直角空间的位移时间函数X(t)或关节空间的位移时间函数q(t);在结 点之间如何进行插补,即根据轨迹表达式在每一个采样周期实时计算轨迹上点的位姿和各关节变量值。
(3) 以上生成的轨迹是机器人位置控制的给定值,可以据此并根据机器人的动态参数设计一定的控制规律。
(4) 规划机器人的运动轨迹时,尚需明确其路径上是否存在障碍约束的组合。一般将机器人的规划与控制方式分为四种情况,如表4.1所示。
4.2 插补方式分类与轨迹控制
一、 插补方式分类
点位控制(PTP控制)通常没有路径约束,多以关节坐标运动表示。点位控制只要求满足起终点位姿,在轨迹中间只有关节的几何、最大速度和加速度约束;为了保证运动的连续性,要求速度连续,各轴协调。连续轨迹控制(CP控制)有路径约束,因此要对路径进行设计。路径控制与插补方式分类如表4.2所示。
表4.2 路径控制与插补方式分类
路径控制 点位控制 PTP 不插补 (1) 各轴快速到达。 (2) 各关节最大加速度 关节插补(平滑) (1) 各轴协调运动定时插补。 (2) 各关节最大加速度 空间插补 连续路径 控制CP (1) 在空间插补点间进行关(1) 直线、圆弧、节定时插补。 曲线等距插补。 (2) 用关节的低阶多项式拟合(2) 起停线速空间直线使各轴协调运动。 度、线加速度给(3) 各关节最大加速度 定,各关节速度、加速度 二、 机器人轨迹控制过程
机器人的基本操作方式是示教-再现,即首先教机器人如何做,机器人记住了这个过程,于是它可以根据需要重复这个动作。操作过程中,不可能把空间轨迹的所有点都示教一遍使机器人记住,这样太繁琐,也浪费很多计算机内存。实际上,对于有规律的轨迹,仅示教几个特征点,计算机就能利用插补算法获得中间点的坐标,如直线需要示教两点,圆弧需要示教三点,通过机器人逆向运动学算法由这些点的坐标求出机器人各关节的位置和角度(1, …, n),然后由后面的角位置闭环控制系统实现要求的轨迹上的一点。继续插补并重复上述过程,从而实现要求的轨迹。
机器人轨迹控制过程如图4.3所示。
图4.3 机器人轨迹控制过程
4.3 机器人轨迹插值计算
给出各个路径结点后,轨迹规划的任务包含解变换方程,进行运动学反解和插值计算。在关节空间进行规划时,需进行的大量工作是对关节变量的插值计算。
一、 直线插补
直线插补和圆弧插补是机器人系统中的基本插补算法。对于非直线和圆弧轨迹,可以采用直线或圆弧逼近,以实现这些轨迹。
空间直线插补是在已知该直线始末两点的位置和姿态的条件下,求各轨迹中间点(插补点)的位置和姿态。由于在大多数情况下,机器人沿直线运动时其姿态不变,所以无姿态插补,即保持第一个示教点时的姿态。当然在有些情况下要求变化姿态,这就需要姿态插补,
可仿照下面介绍的位置插补原理处理,也可参照圆弧的姿态插补方法解决,如图4.4所示。已知直线始末两点的坐标值P0(X0,Y0,Z0)、Pe(Xe,Ye,Ze)及姿态,其中P0、Pe是相对于基坐标系的位置。这些已知的位置和姿态通常是通过示教方式得到的。设v为要求的沿直线运动的速度; ts为插补时间间隔。
为减少实时计算量,示教完成后,可求出:
直线长度
ts间隔内行程d = vts;
插补总步数N为L/d+1的整数部分; 各轴增量
图4.4 空间直线插补
LXeX02YeY0ZeZ022;
XXeX0/NYYeY0/N
各插补点坐标值
Xi1XiiXYi1YiiYZZeZ0/N
式中:i=0,1,2,…,N。
Zi1ZiiZ
二、 圆弧插补
1.平面圆弧插补
平面圆弧是指圆弧平面与基坐标系的三大平面之一重合,以XOY平面圆弧为例。已知不在一条直线上的三点P1、P2、P3及这三点对应的机器人手端的姿态,如图4.5及图4.6所示。
图4.5 由已知的三点P1、P2、P3决定的圆弧 图4.6 圆弧插补
设v为沿圆弧运动速度;ts为插补时时间隔。类似直线插补情况计算出: (1) 由P1、P2、P3决定的圆弧半径R。 (2) 总的圆心角=1+2,即
21arccos(X2X1)2Y2Y12R2/2R2
2arccos(X3X)YY2R/2R
2222232(3) ts时间内角位移量θ=tsv/R,据图4.4所示的几何关系求各插补点坐标。 (4) 总插补步数(取整数)
N = /θ + 1
对Pi+1 点的坐标,有
Xi1Rcos(i)RcosicosRsinisinXicosYisin
式中:Xi=R cosθi;Yi=Rsinθi。
同理有
Yi1Rsin(i)RsinicosRcosisinYicosXisin
由θi+1=θi +θ可判断是否到插补终点。若θi+1,则继续插补下去;当 θi+1> 时,则修正最后一步的步长θ,并以表示,i,故平面圆弧位置插补为
Xi1XicosYisinYi1YicosXisini1i
2.空间圆弧插补
空间圆弧是指三维空间任一平面内的圆弧,此为空间一般平面的圆弧 问题。 空间圆弧插补可分三步来处理:
(1) 把三维问题转化成二维,找出圆弧所在平面。 (2) 利用二维平面插补算法求出插补点坐标(Xi+1, Yi+1)。 (3) 把该点的坐标值转变为基础坐标系下的值,如图4.7所示。
图4.7 基础坐标与空间圆弧平面的关系
通过不在同一直线上的三点P1、P2、P3可确定一个圆及三点间的圆弧,其圆心为OR,半径为R,圆弧所在平面与基础坐标系平面的交线分别为AB、BC、CA。
建立圆弧平面插补坐标系,即把ORXRYRZR坐标系原点与圆心OR重合,设ORXRYRZR平面为圆弧所在平面,且保持ZR为外法线方向。这样,一个三维问题就转化成平面问题,可以应用平面圆弧插补的结论。
求解两坐标系(图4.7)的转换矩阵。令TR表示由圆弧坐标ORXRYRZR至基础坐标系OX0Y0Z0的转换矩阵。
若ZR轴与基础坐标系Z0轴的夹角为,XR轴与基础坐标系的夹角为θ,则可完成下述步骤:
①将XRYRZR的原点OR放到基础原点O上;②绕ZR轴转θ,使X0与XR平行;③再绕XR轴转角,使Z0与ZR平行。
这三步完成了XRYRZR向X0Y0Z0的转换,故总转换矩阵应为
TRT(XOR,YOR,ZOR)R(Z,)R(X,)cossin00sincoscoscossin0sincoscossincos0XORYORZOR1 (4.1)
XYZ式中:OR、OR、OR为圆心OR在基础坐标系下的坐标值。
欲将基础坐标系的坐标值表示在ORXRYRZR坐标系,则要用到TR的逆矩阵
cossin0XORcosYORsinsincoscoscossinXsincosYcoscosZsinOROROR1TRsinsincossincosXsinsinYcossinZcosOROROR0001
三、定时插补与定距插补
由上述可知,机器人实现一个空间轨迹的过程即是实现轨迹离散的过程,如果这些离散点间隔很大,则机器人运动轨迹与要求轨迹可能有较大误差。只有这些插补得到的离散点彼此距离很近,才有可能使机器人轨迹以足够的精确度逼近要求的轨迹。模拟CP控制实际上是多次执行插补点的PTP控制,插补点越密集,越能逼近要求的轨迹曲线。
插补点要多么密集才能保证轨迹不失真和运动连续平滑呢?可采用定时插补和定距插补方法来解决。
1.定时插补
从图4.3所示的轨迹控制过程知道,每插补出一轨迹点的坐标值,就要转换成相应的关节角度值并加到位置伺服系统以实现这个位置,这个过程每隔一个时间间隔ts完成一次。为保证运动的平稳,显然ts不能太长。
由于关节型机器人的机械结构大多属于开链式,刚度不高,ts一般不超过25 ms(40 Hz),这样就产生了ts的上限值。当然ts越小越好,但它的下限值受到计算量,即对于机器人的控制,计算机要在ts时间里完成一次插补运算和一次逆向运动学计算。对于目前的大多数机器人控制器,完成这样一次计算约需几毫秒。这样产生了ts的下限值。当然,应当选择ts接近或等于它的下限值,这样可保证较高的轨迹精度和平滑的运动过程。
以一个XOY平面里的直线轨迹为例说明定时插补的方法。
设机器人需要的运动轨迹为直线,运动速度为v(mm/s),时间间隔为ts (ms),则每个ts
间隔内机器人应走过的距离为
Pi Pi+1= v ts
(4.2)
可见两个插补点之间的距离正比于要求的运动速度,两点之间的轨迹不受控制,只有插补点之间的距离足够小,才能满足一定的轨迹精度要求。
机器人控制系统易于实现定时插补,例如采用定时中断方式每隔ts中断一次进行一次插补,计算一次逆向运动学,输出一次给定值。由于ts仅为几毫秒,机器人沿着要求轨迹的速度一般不会很高,且机器人总的运动精度不如数控机床、加工中心高,故大多数工业机器人采用定时插补方式。
当要求以更高的精度实现运动轨迹时,可采用定距插补。
2.定距插补
由式(4.2)可知v是要求的运动速度,它不能变化,如果要两插补点的距离Pi Pi+1恒为一个足够小的值,以保证轨迹精度,ts就要变化。也就是在此方式下,插补点距离不变,但ts要随着不同工作速度v的变化而变化。
这两种插补方式的基本算法相同,只是前者固定ts,易于实现,后者保证轨迹插补精度,但ts要随之变化,实现起来比前者困难。
四、 关节空间插补
如上所述,路径点(结点)通常用工具坐标系以相对于工作坐标系位姿来表示。为了求得在关节空间形成所要求的轨迹,首先用运动学反解将路径点转换成关节矢量角度值,然后对每个关节拟合一个光滑函数,使之从起始点开始,依次通过所有路径点,最后到达目标点。
对于每一段路径,各个关节运动时间均相同,这样保证所有关节同时到达路径点和终止点,从而得到工具坐标系应有的位置和姿态。但是,尽管每个关节在同一段路径中的运动时间相同,各个关节函数之间却是相互的。
总之,关节空间法是以关节角度的函数来描述机器人的轨迹的,关节空间法不必在直角坐标系中描述两个路径点之间的路径形状,计算简单、容易。再者,由于关节空间与直角坐标空间之间并不是连续的对应关系,因而不会发生机构的奇异性问题。
在关节空间中进行轨迹规划,需要给定机器人在起始点、终止点手臂的形位。对关节进行插值时,应满足一系列约束条件,例如抓取物体时,手部运动方向(初始点),提升物体离开的方向(提升点),放下物体(下放点)和停止点等结点上的位姿、速度和加速度的要求;与此相应的各个关节位移、速度、加速度在整个时间间隔内连续性要求;其极值必须在各个关节变量的容许范围之内等。在满足所要求的约束条件下,可以选取不同类型的关节插值函数生成不同的轨迹。本节着重讨论关节轨迹的插值方法“
1.三次多项式插值
在操作臂运动的过程中,由于相应于起始点的关节角度0是已知的.而终止点的关节
角f可以通过运动学反解得到,因此,运动轨迹的描述,可用起始点关节角与终止点关节角度的一个平滑插值函数 (t)来表示。 (t)在t0=0时刻的值是起始关节角度0,终端时刻tf的值是终止关节角度f。显然,有许多平滑函数可作为关节插值函数,如图4—3所示。
为实现单个关节的平稳运动,轨迹函数 (t)至少需要满足四个约束条件,即两端点位置约束和两端点速度约束。
端点位置约束是指起始位姿和终止位姿分别所对应的关节角度。 (t)在时刻t0=0时的值是起始关节角度0,在终端时刻tf时的值是终止关节角度f,即
00
为满足关节运动速度的连续性要求,两外还有两个约束条件,即在起始点和终止点的关节速度要求。在但前的情况下,可简单地设定为零,即
tff
00
tf0
上面给出的四个约束条件可以惟一地确定一个三次多项式
ta0a1ta2t2a3t3
运动过程中的关节速度和加速度则为
ta12a2t3a3t2
为求得三次多项式的系数a0,a1,a2和a3,代以给定的约束条件,有方程组
0a0fa0a1tfa2tf2a3tf30a10a12a2tf3a3tf2 (4.7)
求解该方程组,可得
t2a26a3t
(4.8)
对于起始速度及终止速度为零的关节运动,满足连续平稳运动要求的三次多项式插值函数为
32(t)02(f0)t23(f0)t3tftf (4.9)
由式(4.9)可得关节角速度和角加速度的表达式为
66(t)2(f0)t3(f0)t2tftf
612()(f0)tf0tf2tf3 (4.10)
三次多项式插值的关节运动轨迹曲线如图4.8所示。由图可知,其速度曲线为抛物线,
a00a103a22f0tf2a33f0tf
(t)相应的加速度曲线为直线。
这里再次指出:这组解只适用于关节起始、终止速度为零的运动情况。对于其他情况,
后面另行讨论。
图4.8 三次多项式插值的关节运动轨迹
例4.1 设有一台具有转动关节的机器人,其在执行一项作业时关节运动历时2 s。根据需要,其上某一关节必须运动平稳,并具有如下作业状态:初始时,关节静止不动,位置θ0=0°;运动结束时θf =90°,此时关节速度为0。试根据上述要求规划该关节的运动。 解 根据要求,可以对该关节采用三次多项式插值函数来规划其运动。已知θ0=0°,θf =90°,tf =2 s,代入式(4.8)可得三次多项式的系数
a0=0.0,a1=0.0,a2=22.5,a3= –67.5
由式(4.5)和式(4.6)可确定该关节的运动轨迹,即
t22.5t267.5t3
t45.0 t202. 5 t2 t45405.0 t
2.过路径点的三次多项式插值
一般情况下.要求规划过路径点的轨迹。如图4.9所示,机器人作业除在A、B点有位姿要求外,在路径点C、D也有位姿要求。对于这种情况,假如末端执行器在路径点停留,即各路径点上速度为0,则轨迹规划可连续直接使用前面介绍的三次多项式插值方法;但若末端执行器只是经过,并不停留,就需要将前述方法推广。
实际上,可以把所有路径点也看作是“起始点”或“终止点”,求解逆运动学,得到相应的关节矢量值。然后确定所要求的三次多项式插值函数,把路径点平滑地连接起来。但是,在这些“起始点”和“终止点“的关节运动速度不再是零。
设路径点上的关节速度已知,在某段路径上,起始点为θ0和0,终止点为θf和f,这时,确定三次多项式系数的方法与前所述完全一致,只是速度约束条件变为
00
tff
利用约束条件确定三次多项式系数,有下列方程组
0a0
a3fa0a1t2fa2tf3tf图4.9 机器人作业路径点
a1
fa12a2tf3a3t2f
求解方程组,得ai(i0,1,2,3) 为
a00a10a3t2122f0ft0fftfa21
3t3f020fftf
(4.13)
实际上,由上式确定的三次多项式描述了起始点和终止点具有任意给定位置和速度的
运动轨迹,是式的推广。当路径点上的关节速度为0,即0=f=0时,式(4.13)与式(4.8)完
全相同,这就说明了由式(4.13)确定的三次多项式描述了起始点和终止点具有任意给定位置和速度约束条件的运动轨迹。
剩下的问题就是如何来确定路径点上的关节速度,可由以下三种方法规定:
(1) 根据工具坐标系在直角坐标空间中的瞬时线速度和角速度来确定每个路径点的关节速度。
(
(
对于方法(1),利用操作臂在此路径点上的逆雅可比,把该点的直角坐标速度“映射”为所要求的关节速度。当然,如果操作臂的某个路径点是奇异点,这时就不能任意设置速度值。按照方法(1)生成的轨迹虽然能满足用户设置速度的需要,但是逐点设置速度毕竟要耗费很大的工作量。因此。机器人的控制系统最好具有方法(2)或(3)的功能,或者二者兼而有之。
(2) 在直角坐标空间或关节空间中采用适当的启发式方法,由控制系统自动地选择路径点的速度。
对于方法(2)系统采用某种启发式方法自动选取合适的路径点速度。图4—5表示一种启发式选择路径点速度的方式。图中θ0为起始点;θD为终止点,θA,θB和θC是路径点,用细实线表示过路径点时的关节运动速度。这里所用的启发式信息从概念到计算方法都很简单,即,假设用宣线段把这些路径点依次连接起来,如果相邻线段的斜率在路径点处改变将号,则把速度选定为零;如果相邻线段不改变符号,则选取路径点两例的线段斜率的平均值作为该点的速度。因此,根据规定的路径点,系统就能够按此规则自动生成相应的路径点速度。
(3)为了保证每个路径点上的加速度连续,由控制系统按此要求自动地选择路径点的速度。
对于方法(3),为了保证路径点处的加速度连续,可以设法用两条三次曲线在路径点处按一定规则联接起来,拼凑成所要求的轨迹。其约束条件是:联接处不仅速度连续,而且加速度也连续,下面具体地说明这种方法。
设所经过的路径点处的关节角度为θv,与该点相邻的前后两点的关节角分别为θ0和θg。设其路径点处的关节加速度连续。如果路径点用三次多项式连接,试确定多项式的所有系数。
该机器人路径可分为0到v段及v到g段两段,可通过由两个三次多项式组成的样条函数连接。设从0到v的三次多项式插值函数为
1ta10a11ta12t2a13t3
而从v到g的三次多项式插值函数为
2ta20a21ta22t2a23t3
上述两个三次多项式的时间区间分别是[0,tf1]和[0,tf2],若要保证路径点处的速度及
加速度均连续,即存在下列约束条件
1tf12(0)
1tf12(0)
根据约束条件建立的方程组为
23va10a11tf1a12tf1a13tf1va2023ga20a21tf2a22tf2a23tf20a110a212a22tf23a23tf222a112a12tf13a13tf1a212a6at2a1213f122
上述约束条件组成含有8个未知数的8个线性方程。对于tf1=tf2=tf的情况,这个方程组的解为
a11012v3g90a1248v3g50a134tf3
a20v3g30a214tf6v3g30a222tf28v5g30a234tf3
在更一般的情况下,包含许多路径点的机器人轨迹可用多个三次多项式表示。包括各
a1000a10
路径点处加速度连续的约束条件构成的方程组能表示成矩阵的形 式,由于系数矩阵是三角阵,路径点的速度易于求出。
3.高阶多项式插值
若对于运动轨迹的要求更为严格,约束条件增多,三次多项式就不能满足需要,须用更高阶的多项式对运动轨迹的路径段进行插值。
例如,对某段路径的起始点和终止点都规定了关节的位置、速度和加速度,则要用一个五次多项式进行插值,即
ta0a1ta2t2a3t3a4t4a5t5
多项式的系数a0,a1,…,a5必须满足6个约束条件
(4.14)
0a0f0f0
fa0a1tfa2tf2a3tf3a4tf4a5tf5a1a12a2tf3a3tf24a4tf35a5tf42a2232a26a3tf12a4tf20a5tf
(4.15)
4.用抛物线过渡的线性插值
在关节空间轨迹规划中,对于给定起始点和终止点的情况选择线性函数插值较为简单,如图4.10所示。然而,单纯线性插值会导致起始点和终止点的关节运动速度不连续,且加速度无穷大,显然,在两端点会造成刚性冲击。
为此应对线性函数插值方案进行修正,在线性插值两端点的邻域内设置一段抛物线形缓冲区段。由于抛物线函数对于时间的二阶导数为常数,即相应区段内的加速度恒定,这样保证起始点和终止点的速度平滑过渡,从而使整个轨迹上的位置和速度连续。线性函数与两段抛物线函数平滑地衔接在一起形成的轨迹称为带有抛物线过渡域的线性轨迹,如图4.11所示。
图4.10 两点间的线性插值轨迹 图4.11 带有抛物线过渡域的线性轨迹
为了构造这段运动轨迹,假设两端的抛物线轨迹具有相同的持续时间ta,具有大小相同而符号相反的恒加速度。对于这种路径规划存在有多个解,其轨迹不惟一。如图4.12所示。但是,每条路径都对称于时间中点th和位置中点 h。
要保证路径轨迹的连续、光滑,即要求抛物线轨迹的终点速度必须等于线性段的速度,故有下列关系
tahathta
式中:a为对应于抛物线持续时间ta的关节角度。a的值可
图4.12 轨迹的多解性与对称性
以按式(4.17)求出:
(4.17)
设关节从起始点到终止点的总运动时间为tf ,则tf = 2th,并注意到
1h(0f)2 (4.18)
则由式(4.16)至(4.18)得
a0 ta212ta2tftaf00
(4.19)
一般情况下,0、f、tf是已知条件,这样,据式(4.16)可以选择相应的和ta,得到相应的轨迹。通常的做法是先选定加速度的值,然后按式(4.19)求出相应的ta:
2tf24f0tfta22 (4.20)
由式(4.20)可知,为保证ta有解,加速度值必须选得足够大,即
4f0tf2 (4.21)
当式(4.21)中的等号成立时,轨迹线性段的长度缩减为零,整个轨迹由两个过渡域组成,
这两个过渡域在衔接处的斜率(关节速度)相等;加速度的取值愈大,过渡域的长度会变得愈短,若加速度趋于无穷大,轨迹又复归到简单的线性插值情况。
例4.3 0、f和tf的定义同例4.1,若将已知条件改为θ0=15°,θf =75°,tf =3 s,试设计两条带有抛物线过渡的线性轨迹。
解 根据题意,按式(4.21)定出加速度的取值范围,为此,将已知条件代入式(4.21)中,有≥26.67°/s2
1) 设计第一条轨迹
对于第一条轨迹,如果选1= 42°/s2,由式(4.17)算出过渡时间ta1,则
42232442(7515)3ta1()s0.59s2242
用式(4.17)和(4.16)计算过渡域终了时的关节位置a1和关节速度1,得
1a115(420.592)22.3211ta1(420.59)/s24.78/s 据上面计算得出的数值可以绘出如图4.13(a)所示的轨迹曲线。
(a) 加速度较大时的位移、速度、加速度曲线
(b) 加速度较小时的位移、速度、加速度曲线
图4.13 带有抛物线过渡的线性插值
2) 设计第二条轨迹
对于第二条轨迹,若选择227°/s2,可求出 27232427 ( 7515 )3ta2()s1.33s2227
1a215(271.332)38.882
22ta2(271.33)/s35.91/s
相应的轨迹曲线如图4.13(b)所示。
用抛物线过渡的线性函数插值进行轨迹规划的物理概念非常清楚,即如果机器人每一关节电动机采用等加速、等速和等减速运动规律,则关节的位置、速度、加速度随时间变化的曲线如图4.13所示。
若某个关节的运动要经过一个路径点,则可采用带抛物线过渡域的线性路径方案。如图4.14所示,关节的运动要经过一组路径点,用关节角度 j、 k和l表示其中三个相邻的路径点,以线性函数将每两个相邻路径点之间相连,而所有路径点附近都采用抛物线过渡。
应该注意到:各路径段采用抛物线过渡域线性函数所进行的规划,机器人的运动关节并不能真正到达那些路径点。即使选取的加速度充分大,实际路径也只是十分接近理想路径点,如图4.14所示。
图4.14 多段带有抛物线过渡域的线性轨迹
4.4 机器人手部路径的轨迹规划
一、 操作对象的描述
由前述可知,任一刚体相对参考系的位姿是用与它固接的坐标系来描述的。刚体上相对于固接坐标系的任一点用相应的位置矢量P表示;任一方向用方向余弦表示。给出刚体的几何图形及固接坐标系后,只要规定固接坐标系的位姿,便可重构该刚体在空间的位姿。
例如如图4.15所示的螺栓,其轴线与固接坐标系的Z轴重合。螺栓头部直径为32 mm,中心取为坐标原点,螺栓长80 mm,直径20 mm,则可根据固接坐标系的位姿重构螺栓在空间的位姿和几何 形状。
图4.15 操作对象的描述
二、 作业的描述
机器人的作业过程可用手部位姿结点序列来规定,每个结点可用工具坐标系相对于作业坐标系的齐次变换来描述。相应的关节变量可用运动学反解程序计算。
如图4.16所示的机器人插螺栓作业,要求把螺栓从槽中取出并放入托架的一个孔中,用符号表示沿轨迹运动的各结点的位姿,使机器人能沿虚线运动并完成作业。设定Pi (i=0,l,2,3,4,5)为气动手爪必须经过的直角坐标结点。参照这些结点的位姿将作业描述为如表4.3所示的手部的一连串运动和动作。
图4.16 机器人插螺栓作业的轨迹
第一个结点P1对应一个变换方程,从而解出相应的机器人的变换0T6。由此得到作业描述的基本结构:作业结点Pi只对应机器人变换0T6 ,从一个变换到另一变换通过机器人运动实现。
表4.3 螺栓的抓紧和插入过程 结点 P0 P1 P2 P2 P3 P4 P5 P5 P6 运动 INIT MOVE MOVE GRASP MOVE MOVE MOVE RELEASE MOVE 接近接近托插入孔目标 原始 到达 抓住 提升 松夹 移开 螺栓 架 中 机器人完成此项作业时气动手爪的位姿可用一系列结点来表示。在直角坐标空间中进行轨迹规划的首要问题是在结点Pi和Pi+1所定义路径的起点和终点之间,如何生成一系列中间点。两结点之间最简单的路径是空间的一个直线移动和绕某定轴的转动。运动时间给定之后,则可以产生一个使线速度和角速度受控的运动。如图4.16所示,要生成从结点原位P0运动到接近螺栓P1的轨迹,更一般地,从任一结点Pi到下一结点Pi+1的运动可表示为从 即 到
的运动。
60T66TT 0TBBPi 0T60TBBPi6TT1 T60TBBPi16TT1
(4.22) (4.23)
0式中:TT为工具坐标系{T}相对末端连杆系{6}的变换;BPi和BPi+1分别为两结点Pi和Pi+1相对坐标系{B}的齐次变换。
可将气动手爪从结点Pi到结点Pi+1的运动看成是与气动手爪固接的坐标系的运动,按前述运动学知识可求其解,此处从略。
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- yule263.com 版权所有 湘ICP备2023023988号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务