第四章轨迹规划Word文档下载推荐.docx
《第四章轨迹规划Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《第四章轨迹规划Word文档下载推荐.docx(23页珍藏版)》请在冰豆网上搜索。
对于另外一些作业,如弧焊和曲面加工等,不仅要规定操作臂的起始点和终止点,而且要指明两点之间的若干中间点(称路径点),必须沿特定的路径运动(路径约束)。
这类称为连续路径运动(continuous—Pathmotion)或轮廓运动(contourmotion),而前者称点到点运动(PTP=point—to—pointmotion)。
在规划机器人的运动时.还需要弄清楚在其路径上是否存在障碍物(障碍约束)。
路径约束和障碍约束的组合将机器人的规划与控制方式划分为四类、如表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)各轴协调运动定时插补。
连续路径
控制CP
(1)在空间插补点间进行关节定时插补。
(2)用关节的低阶多项式拟合空间直线使各轴协调运动。
(3)各关节最大加速度限制
(1)直线、圆弧、曲线等距插补。
(2)起停线速度、线加速度给定,各关节速度、加速度限制
二、机器人轨迹控制过程
机器人的基本操作方式是示教-再现,即首先教机器人如何做,机器人记住了这个过程,于是它可以根据需要重复这个动作。
操作过程中,不可能把空间轨迹的所有点都示教一遍使机器人记住,这样太繁琐,也浪费很多计算机内存。
实际上,对于有规律的轨迹,仅示教几个特征点,计算机就能利用插补算法获得中间点的坐标,如直线需要示教两点,圆弧需要示教三点,通过机器人逆向运动学算法由这些点的坐标求出机器人各关节的位置和角度(1,…,n),然后由后面的角位置闭环控制系统实现要求的轨迹上的一点。
继续插补并重复上述过程,从而实现要求的轨迹。
机器人轨迹控制过程如图4.3所示。
图4.3机器人轨迹控制过程
4.3机器人轨迹插值计算
给出各个路径结点后,轨迹规划的任务包含解变换方程,进行运动学反解和插值计算。
在关节空间进行规划时,需进行的大量工作是对关节变量的插值计算。
一、直线插补
直线插补和圆弧插补是机器人系统中的基本插补算法。
对于非直线和圆弧轨迹,可以采用直线或圆弧逼近,以实现这些轨迹。
图4.4空间直线插补
空间直线插补是在已知该直线始末两点的位置和姿态的条件下,求各轨迹中间点(插补点)的位置和姿态。
由于在大多数情况下,机器人沿直线运动时其姿态不变,所以无姿态插补,即保持第一个示教点时的姿态。
当然在有些情况下要求变化姿态,这就需要姿态插补,可仿照下面介绍的位置插补原理处理,也可参照圆弧的姿态插补方法解决,如图4.4所示。
已知直线始末两点的坐标值P0(X0,Y0,Z0)、Pe(Xe,Ye,Ze)及姿态,其中P0、Pe是相对于基坐标系的位置。
这些已知的位置和姿态通常是通过示教方式得到的。
设v为要求的沿直线运动的速度;
ts为插补时间间隔。
为减少实时计算量,示教完成后,可求出:
直线长度
;
ts间隔内行程d=vts;
插补总步数N为L/d+1的整数部分;
各轴增量
各插补点坐标值
式中:
i=0,1,2,…,N。
二、圆弧插补
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,即
(3)ts时间内角位移量θ=tsv/R,据图4.4所示的几何关系求各插补点坐标。
(4)总插补步数(取整数)
N=/θ+1
对Pi+1点的坐标,有
Xi=Rcosθi;
Yi=Rsinθi。
同理有
由θi+1=θi+θ可判断是否到插补终点。
若θi+1,则继续插补下去;
当θi+1>
时,则修正最后一步的步长θ,并以
表示,
,故平面圆弧位置插补为
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的转换,故总转换矩阵应为
(4.1)
、
为圆心OR在基础坐标系下的坐标值。
欲将基础坐标系的坐标值表示在ORXRYRZR坐标系,则要用到TR的逆矩阵
三、定时插补与定距插补
由上述可知,机器人实现一个空间轨迹的过程即是实现轨迹离散的过程,如果这些离散点间隔很大,则机器人运动轨迹与要求轨迹可能有较大误差。
只有这些插补得到的离散点彼此距离很近,才有可能使机器人轨迹以足够的精确度逼近要求的轨迹。
模拟CP控制实际上是多次执行插补点的PTP控制,插补点越密集,越能逼近要求的轨迹曲线。
插补点要多么密集才能保证轨迹不失真和运动连续平滑呢?
可采用定时插补和定距插补方法来解决。
1.定时插补
从图4.3所示的轨迹控制过程知道,每插补出一轨迹点的坐标值,就要转换成相应的关节角度值并加到位置伺服系统以实现这个位置,这个过程每隔一个时间间隔ts完成一次。
为保证运动的平稳,显然ts不能太长。
由于关节型机器人的机械结构大多属于开链式,刚度不高,ts一般不超过25ms(40Hz),这样就产生了ts的上限值。
当然ts越小越好,但它的下限值受到计算量限制,即对于机器人的控制,计算机要在ts时间里完成一次插补运算和一次逆向运动学计算。
对于目前的大多数机器人控制器,完成这样一次计算约需几毫秒。
这样产生了ts的下限值。
当然,应当选择ts接近或等于它的下限值,这样可保证较高的轨迹精度和平滑的运动过程。
以一个XOY平面里的直线轨迹为例说明定时插补的方法。
设机器人需要的运动轨迹为直线,运动速度为v(mm/s),时间间隔为ts(ms),则每个ts间隔内机器人应走过的距离为
PiPi+1=vts(4.2)
可见两个插补点之间的距离正比于要求的运动速度,两点之间的轨迹不受控制,只有插补点之间的距离足够小,才能满足一定的轨迹精度要求。
机器人控制系统易于实现定时插补,例如采用定时中断方式每隔ts中断一次进行一次插补,计算一次逆向运动学,输出一次给定值。
由于ts仅为几毫秒,机器人沿着要求轨迹的速度一般不会很高,且机器人总的运动精度不如数控机床、加工中心高,故大多数工业机器人采用定时插补方式。
当要求以更高的精度实现运动轨迹时,可采用定距插补。
2.定距插补
由式(4.2)可知v是要求的运动速度,它不能变化,如果要两插补点的距离PiPi+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,即
为满足关节运动速度的连续性要求,两外还有两个约束条件,即在起始点和终止点的关节速度要求。
在但前的情况下,可简单地设定为零,即
上面给出的四个约束条件可以惟一地确定一个三次多项式
运动过程中的关节速度和加速度则为
为求得三次多项式的系数a0,a1,a2和a3,代以给定的约束条件,有方程组
(4.7)
求解该方程组,可得
(4.8)
对于起始速度及终止速度为零的关节运动,满足连续平稳运动要求的三次多项式插值函数为
(4.9)
由式(4.9)可得关节角速度和角加速度的表达式为
(4.10)
三次多项式插值的关节运动轨迹曲线如图4.8所示。
由图可知,其速度曲线为抛物线,相应的加速度曲线为直线。
这里再次指出:
这组解只适用于关节起始、终止速度为零的运动情况。
对于其他情况,后面另行讨论。
图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)可确定该关节的运动轨迹,即
2.过路径点的三次多项式插值
一般情况下.要求规划过路径点的轨迹。
如图4.9所示,机器人作业除在A、B点有位姿要求外,在路径点C、D也有位姿要求。
对于这种情况,假如末端执行器在路径点停留,即各路径点上速度为0,则轨迹规划可连续直接使用前面介绍的三次多项式插值方法;
但若末端执行器只是经过,并不停留,就需要将前述方法推广。
实际上,可以把所有路径点也看作是“起始点”或“终止点”,求解逆运动学,得到相应的关节矢量值。
然后确定所要求的三次多项式插值函数,把路径点平滑地连接起来。
但是,在这些“起始点”和“终止点“的关节运动速度不再是零。
图4.9机器人作业路径点
设路径点上的关节速度已知,在某段路径上,起始点为θ0和
,终止点为θf和
,这时,确定三次多项式系数的方法与前所述完全一致,只是速度约束条件变为
(4.11)
利用约束条件确定三次多项式系数,有下列方程组
(4.12)
求解方程组,得
为
(4.13)
实际上,由上式确定的三次多项式描述了起始点和终止点具有任意给定位置和速度的运动轨迹,是式的推广。
当路径点上的关节速度为0,即
=
=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的三次多项式插值函数为
而从v到g的三次多项式插值函数为
上述两个三次多项式的时间区间分别是[0,tf1]和[0,tf2],若要保证路径点处的速度及加速度均连续,即存在下列约束条件
根据约束条件建立的方程组为
上述约束条件组成含有8个未知数的8个线性方程。
对于tf1=tf2=tf的情况,这个方程组的解为
在更一般的情况下,包含许多路径点的机器人轨迹可用多个三次多项式表示。
包括各路径点处加速度连续的约束条件构成的方程组能表示成矩阵的形式,由于系数矩阵是三角阵,路径点的速度易于求出。
3.高阶多项式插值
若对于运动轨迹的要求更为严格,约束条件增多,三次多项式就不能满足需要,须用更高阶的多项式对运动轨迹的路径段进行插值。
例如,对某段路径的起始点和终止点都规定了关节的位置、速度和加速度,则要用一个五次多项式进行插值,即
(4.14)
多项式的系数a0,a1,…,a5必须满足6个约束条件
(4.15)
4.用抛物线过渡的线性插值
在关节空间轨迹规划中,对于给定起始点和终止点的情况选择线性函数插值较为简单,如图4.10所示。
然而,单纯线性插值会导致起始点和终止点的关节运动速度不连续,且加速度无穷大,显然,在两端点会造成刚性冲击。
为此应对线性函数插值方案进行修正,在线性插值两端点的邻域内设置一段抛物线形缓冲