1、16.1.1 机器人规划的基本概念 所谓机器人的规划(P1anning),指的是机器人根据自身的任务,求得完成这一任务的解决方案的过程。这里所说的任务,具有广义的概念,既可以指机器人要完成的某一具体任务,也可以是机器人的某个动作,比如手部或关节的某个规定的运动等。(Task planning),它完成总体任务的分解。(Motion P1anning),把实现每一个子任务的过程分解为一系列具体的动作。轨迹规划(Hand trajectory planning ),为了实现每一个动作,需要对手部的运动轨迹进行必要的规定。关节轨迹规划(Joint trajectory planning),为了使手部
2、实现预定的运动,就要知道各关节的运动规律。 2取一个杯子取一个杯子 找到水壶找到水壶 打开水壶打开水壶把水倒入杯中把水倒入杯中 把水送给主人把水送给主人给主人倒一杯水给主人倒一杯水 提起水壶到杯口上提起水壶到杯口上方方 把水壶倾把水壶倾斜斜 把水壶竖把水壶竖直直 把水壶放回原把水壶放回原处处 手部从手部从A点移到点移到B 点点 关节从关节从A点移到点移到B点点智能机器人的规划层次6.1.1 机器人规划的基本概念3 上述例子可以看出,机器人的规划是分层次的,从高层的任务规划,动作规划到手部轨迹规划和关节轨迹规划,最后才是底层的控制(见图)。在上述例子中,我们没有讨论力的问题,实际上,对有些机器人
3、来说,力的大小也是要控制的,这时,除了手部或关节的轨迹规划,还要进行手部和关节输出力的规划。 智能化程度越高,规划的层次越多,操作就越简单。 对工业机器人来说,高层的任务规划和动作规划一般是依赖人来完成的。而且一般的工业机器人也不具备力的反馈,所以,工业机器人通常只具有轨迹规划的和底层的控制功能。6.1.1 机器人规划的基本概念4工业机器人的轨迹规划5 轨迹规划的目的是将操作人员输入的简单的任务描述变为详细的运动轨迹描述。 例如,对一般的工业机器人来说,操作员可能只输入机械手末端的目标位置和方位,而规划的任务便是要确定出达到目标的关节轨迹的形状、运动的时间和速度等。这里所说的轨迹是指随时间变化
4、的位置、速度和加速度。6.1.1 机器人规划的基本概念6 简言之,机器人的工作过程,就是通过规划,将要求的任务变为期望的运动和力,由控制环节根据期望的运动和力的信号,产生相应的控制作用,以使机器人输出实际的运动和力,从而完成期望的任务。这一过程表述如下图所示。这里,机器人实际运动的情况通常还要反馈给规划级和控制级,以便对规划和控制的结果做出适当的修正。人人机机接接口口规规划划控控制制机机器器人人本本体体要求的任务要求的任务 期望的期望的运动和力运动和力 实际的实际的运动和力运动和力控制作用控制作用机器人的工作原理示意图6.1.1 机器人规划的基本概念7 上图中,要求的任务由操作人员输入给机器人
5、,为了使机器人操作方便、使用简单,必须允许操作人员给出尽量简单的描述。 上图中,期望的运动和力是进行机器人控制所必需的输入量,它们是机械手末端在每一个时刻的位姿和速度,对于绝大多数情况,还要求给出每一时刻期望的关节位移和速度,有些控制方法还要求给出期望的加速度等。6.1.1 机器人规划的基本概念8常见的机器人作业有三种:点位作业(PTP=point-to-point motion)直线作业(Continuous Path,CP)控制连续路径作业(continuous-path motion),或者称为轮廓运动(contour motion)。6.1.2 机器人规划作业分类9点位控制6.1.2
6、机器人规划作业分类10直线控制6.1.2 机器人规划作业分类11轮廓(Continuous Path,CP)控制6.1.2 机器人规划作业分类12操作臂最常用的轨迹规划方法有两种:第一种是要求对于选定的轨迹结点(插值点)上的位姿、速度和加速度给出一组显式约束(例如连续性和光滑程度等),轨迹规划器从一类函数(例如n次多项式)选取参数化轨迹,对结点进行插值,并满足约束条件。第二种方法要求给出运动路径的解析式。6.1.3 机器人规划方法13对于PTP控制: 通常只给出机械手末端的起点和终点,有时也给出一些中间经过点,所有这些点统称为路径点。应注意这里所说的“点” 不仅包括机械手末端的位置,而且包括方
7、位,因此描述一个点通常需要6个量。通常希望机械手末端的运动是光滑的,即它具有连续的一阶导数,有时甚至要求具有连续的二阶导数。不平滑的运动容易造成机构的磨损和破坏,甚至可能激发机械手的振动。因此规划的任务便是要根据给定的路径点规划出通过这些点的光滑的运动轨迹。6.1.3 机器人规划的方法14对于CP控制: 机械手末端的运动轨迹是根据任务的需要给定的,但是它也必须按照一定的采样间隔,通过逆运动学计算,将其变换到关节空间,然后在关节空间中寻找光滑函数来拟合这些离散点最后,还有在机器人的计算机内部如何表示轨迹,以及如何实时地生成轨迹的问题。 6.1.3 机器人规划的方法15 关节空间法首先将在工具空间
8、中期望的路径点,通过逆运动学计算,得到期望的关节位置,然后在关节空间内,给每个关节找到一个经过中间点到达目的终点的光滑函数,同时使得每个关节到达中间点和终点的时间相同,这样便可保证机械手工具能够到达期望的直角坐标位置。这里只要求各个关节在路径点之间的时间相同,而各个关节的光滑函数的确定则是互相独立的。6.2 关节空间法16下面具体介绍在关节空间内常用的两种规划方法1) 三次多项式函数插值 考虑机械手末端在一定时间内从初始位置和方位移动到目标位置和方位的问题。利用逆运动学计算,可以首先求出一组起始和终了的关节位置现在的问题是求出一组通过起点和终点的。满足这个条件的光滑函数可以有许多条,如下图所示
9、:6.2 关节空间法17 00q 0fq t 00qq ffq tq显然,这些光滑函数必须满足以下条件:同时若要求在起点和终点的速度为零,即:同时若要求在起点和终点的速度为零,即:那么可以选择如下的三次多项式:那么可以选择如下的三次多项式: 230123q taata ta t 作为所要求的光滑函数。式作为所要求的光滑函数。式4-3中有中有4个待定系数,而该式需满个待定系数,而该式需满足式足式4-1和和4-2的的4个约束条件,因此可以唯一地解出这些系数:个约束条件,因此可以唯一地解出这些系数:(4-3)(4-2)(4-1)6.2 关节空间法18(4-4)001202303032ffffaqaa
10、qqtaqqt 6.2 关节空间法19例: 设机械手的某个关节的起始关节角0150,并且机械手原来是静止的。要求在3秒钟内平滑地运动到f=750时停下来(即要求在终端时速度为零)。规划出满足上述条件的平滑运动的轨迹,并画出关节角位置、角速度及角加速度随时间变化的曲线。解: 根据所给约束条件,直接代入式(4-4),可得: a0=15, a1=0, a2=20, a3=-4.44 所求关节角的位置函数为: 2315204.44ttt对上式求导,可以得到角速度和角加速度 24013.334026.66ttttt(4-5)(4-6)(4-7)6.2 关节空间法20 根据式(4-5)(4-7)可画出它们
11、随时间的变化曲线如下图所示。由图看出,速度曲线为一抛物线,加速度则为一直线。利用三次多项式规划出的关节角的运动轨迹6.2 关节空间法212)抛物线连接的线性函数插值 前面介绍了利用三次多项式函数插值的规划方法。另外一种常用方法是线性函数插值法,即用一条直线将起点与终点连接起来。但是,简单的线性函数插值将使得关节的运动速度在起点和终点处不连续,它也意味着需要产生无穷大的加速度,这显然是不希望的。因此可以考虑在起点和终点处,用抛物线与直线连接起来,在抛物线段内,使用恒定的加速度来平滑地改变速度,从而使得整个运动轨迹的位置和速度是连续的。6.2 关节空间法22线性函数插值图线性函数插值图利用抛物线过
12、渡的线性函利用抛物线过渡的线性函数插值图数插值图6.2 关节空间法23 前面介绍的在关节空间内的规划,可以保证运动轨迹经过给定的路径点。但是在直角坐标空间,路径点之间的轨迹形状往往是十分复杂的,它取决于机械手的运动学机构特性。在有些情况下,对机械手末端的轨迹形状也有一定要求,如要求它在两点之间走一条直线,或者沿着一个圆弧运动以绕过障碍物等。这时便需要在直角坐标空间内规划机械手的运动轨迹 直角坐标空间的路径点,指的是机械手末端的工具坐标相对于基坐标的位置和姿态每一个点由6个量组成,其中3个量描述位置,另外3个量描述姿态。 在直角坐标空间内规划的方法主要有:线性函数插值法和圆弧插值法。6.3直角坐
13、标空间法 24前面轨迹规划的任务,是根据给定的路径点规划出运动轨迹的所有参数。 例如,在用三次多项式函数插值时,便是产生出多项式系数a0,a1,a2,a3从而得到整个轨迹的运动方程: 230123iiiiq taa ta ta t 2123232326iiiiiq taa ta tq taa t对上式求导,可以得到速度和加速度6.4 轨迹的实时生成25 前面讨论了在给定路径点的情况下如何规划出运动轨迹的问题。但是还有一个如何描述路径点并以合适的方式输入给机器人的问题。最常用的方法便是利用机器人语言。 用户将要求实现的动作编成相应的应用程序,其中有相应的语句用来描述轨迹规划,并通过相应的控制作用来实现期望的运动。6.4 路径的描述26THANK YOU