工业机器人的轨迹规划资料讲解.ppt
工业机器人的轨迹规划主要内容主要内容7.1 7.1 机器人规划的基本概念机器人规划的基本概念7.2 7.2 关节空间法关节空间法7.3 7.3 直角坐标空间法直角坐标空间法7.4 7.4 轨迹的实时生成轨迹的实时生成7.5 7.5 路径的描述路径的描述 2 2 2 27.1 7.1 机器人规划的基本概念机器人规划的基本概念 所谓机器人的规划所谓机器人的规划(P1anning)(P1anning),指的是,指的是机器人根据自身的任务,求得完成这一任务机器人根据自身的任务,求得完成这一任务的解决方案的过程的解决方案的过程。这里所说的任务,具有广。这里所说的任务,具有广义的概念,既可以指机器人要完成的某一具体义的概念,既可以指机器人要完成的某一具体任务,也可以是机器人的某个动作,比如手部任务,也可以是机器人的某个动作,比如手部或关节的某个规定的运动等。或关节的某个规定的运动等。3 3 3 3 为说明机器人规划的概念,我们举下面的为说明机器人规划的概念,我们举下面的例子:例子:在一些老龄化比较严重的国家,开发了各种各在一些老龄化比较严重的国家,开发了各种各样的机器人专门用于伺候老人,这些机器人有不少是样的机器人专门用于伺候老人,这些机器人有不少是采用声控的方式比如主人用声音命令机器人采用声控的方式比如主人用声音命令机器人“给我给我倒一杯开水倒一杯开水”,我们先不考虑机器人是如何识别人的,我们先不考虑机器人是如何识别人的自然语言,而是着重分析一下机器人在得到这样一个自然语言,而是着重分析一下机器人在得到这样一个命今后,如何来完成主人交给的任务。命今后,如何来完成主人交给的任务。4 4 4 4 首先,机器人应该把任务进行分解,把主人交代的任务分解成为“取一个杯子”、“找到水壶”、“打开瓶塞”、“把水倒人杯中”、“把水送给主人”等一系列子任务。这一层次的规划称为任务规划任务规划任务规划任务规划(Task planning),它完成总体任务的分解。然后再针对每一个子任务进行进一步的规划。以“把水倒入杯中”这一子任务为例,可以进一步分解成为“把水壶提到杯口上方”、“把水壶倾斜倒水入杯”、“把水壶竖直“、“把水壶放回原处”等一系列动作,这一层次的规划称为动作规划动作规划动作规划动作规划(Motion P1anning),它把实现每一个子任务的过程分解为一系列具体的动作。为了实现每一个动作,需要对手部的运动轨迹进行必要的规定,这是手部轨迹规划轨迹规划(Hand trajectory planning)。为了使手部实现预定的运动,就要知道各关节的运动规律,这是关节轨迹规划关节轨迹规划(Joint trajectory planning)。最后才是关节的运动控制运动控制(Motion control)。5 5 5 5 上述例子可以看出,机器人的规划是分层次的,上述例子可以看出,机器人的规划是分层次的,从高层的从高层的任务规划任务规划,动作规划动作规划到到手手部轨迹规划部轨迹规划和和关节关节轨迹规划轨迹规划,最后才是,最后才是底层的控制底层的控制(见图见图)。在上述例子。在上述例子中,我们没有讨论力的问题,实际上,对有些机器人中,我们没有讨论力的问题,实际上,对有些机器人来说,力的大小也是要控制的,这时,除了手部或关来说,力的大小也是要控制的,这时,除了手部或关节的轨迹规划,还要进行手部和关节输出节的轨迹规划,还要进行手部和关节输出力的规划力的规划。智能化程度越高,规划的层次越多,操作就越简智能化程度越高,规划的层次越多,操作就越简单。单。对工业机器人来说,高层的任务规划和动作规划对工业机器人来说,高层的任务规划和动作规划一般是依赖人来完成的。而且一般的工业机器人也不一般是依赖人来完成的。而且一般的工业机器人也不具备力的反馈,所以,工业机器人通常只具有轨迹规具备力的反馈,所以,工业机器人通常只具有轨迹规划的和底层的控制功能。划的和底层的控制功能。6 6 6 6取一个杯子取一个杯子 找到水壶找到水壶 打开水壶打开水壶把水倒入杯中把水倒入杯中 把水送给主人把水送给主人给主人倒一杯水给主人倒一杯水 提起水壶到杯口上方提起水壶到杯口上方 把水壶倾斜把水壶倾斜 把水壶竖直把水壶竖直 把水壶放回原处把水壶放回原处 手部从手部从A点移到点移到B 点点 关节从关节从A点移到点移到B点点图图 智能机器人的规划层次智能机器人的规划层次7 7 7 7 轨迹规划的目的是轨迹规划的目的是将操作人员输入的将操作人员输入的简单的简单的任务描述任务描述变为详细的变为详细的运动轨迹描述运动轨迹描述。例如,对一般的工业机器人来说,操作员可能只例如,对一般的工业机器人来说,操作员可能只输入机械手末端的目标位置和方位,而规划的任务便输入机械手末端的目标位置和方位,而规划的任务便是要确定出达到目标的关节轨迹的形状、运动的时间是要确定出达到目标的关节轨迹的形状、运动的时间和速度等。这里所说的轨迹是指随时间变化的位置、和速度等。这里所说的轨迹是指随时间变化的位置、速度和加速度。速度和加速度。8 8 8 8 简言之,机器人的工作过程,就是通过规划,将要求的任简言之,机器人的工作过程,就是通过规划,将要求的任务变为期望的运动和力,由控制环节根据期望的运动和力的信务变为期望的运动和力,由控制环节根据期望的运动和力的信号,产生相应的控制作用,以使机器人输出实际的运动和力,号,产生相应的控制作用,以使机器人输出实际的运动和力,从而完成期望的任务。这一过程表述如下图所示。这里,机器从而完成期望的任务。这一过程表述如下图所示。这里,机器人实际运动的情况通常还要反馈给规划级和控制级,以便对规人实际运动的情况通常还要反馈给规划级和控制级,以便对规划和控制的结果做出适当的修正。划和控制的结果做出适当的修正。人人机机接接口口规规划划控控制制机机器器人人本本体体要求的任务要求的任务 期望的期望的运动和力运动和力 实际的实际的运动和力运动和力控制作用控制作用图图 机器人的工作原理示意图机器人的工作原理示意图9 9 9 9 上图中,要求的任务由操作人员输入给机器人,上图中,要求的任务由操作人员输入给机器人,为了使机器人操作方便、使用简单,必须允许操作人为了使机器人操作方便、使用简单,必须允许操作人员给出尽量简单的描述。员给出尽量简单的描述。上图中,期望的运动和力是进行机器人控制所必上图中,期望的运动和力是进行机器人控制所必需的输入量,它们是机械手末端在每一个时刻的位姿需的输入量,它们是机械手末端在每一个时刻的位姿和速度,对于绝大多数情况,还要求给出每一时刻期和速度,对于绝大多数情况,还要求给出每一时刻期望的关节位移和速度,有些控制方法还要求给出期望望的关节位移和速度,有些控制方法还要求给出期望的加速度等。的加速度等。10101010对于对于PTPPTP控制控制:通常只给出机械手末端的起点和终点,有时也通常只给出机械手末端的起点和终点,有时也给出一些中间经过点,所有这些点统称为路径点。给出一些中间经过点,所有这些点统称为路径点。应注意这里所说的应注意这里所说的“点点”不仅包括机械手末端的位不仅包括机械手末端的位置,而且包括方位,因此描述一个点通常需要置,而且包括方位,因此描述一个点通常需要6 6个量。个量。通常希望机械手末端的运动是光滑的,即它具有连通常希望机械手末端的运动是光滑的,即它具有连续的一阶导数,有时甚至要求具有连续的二阶导数。续的一阶导数,有时甚至要求具有连续的二阶导数。不平滑的运动容易造成机构的磨损和破坏,甚至可不平滑的运动容易造成机构的磨损和破坏,甚至可能激发机械手的振动。因此规划的任务便是要根据能激发机械手的振动。因此规划的任务便是要根据给定的路径点规划出通过这些点的光滑的运动轨迹。给定的路径点规划出通过这些点的光滑的运动轨迹。11111111对于对于CPCP控制控制:机械手末端的运动轨迹是根据任务的需要给定机械手末端的运动轨迹是根据任务的需要给定的,但是它也必须按照一定的采样间隔,通过逆运的,但是它也必须按照一定的采样间隔,通过逆运动学计算,将其变换到关节空间,然后在关节空间动学计算,将其变换到关节空间,然后在关节空间中寻找光滑函数来拟合这些离散点最后,还有在中寻找光滑函数来拟合这些离散点最后,还有在机器人的计算机内部如何表示轨迹,以及如何实时机器人的计算机内部如何表示轨迹,以及如何实时地生成轨迹的问题。地生成轨迹的问题。12121212 轨迹规划问题又可以分为轨迹规划问题又可以分为关节空间的轨迹规划关节空间的轨迹规划和和直角空间的轨迹规划直角空间的轨迹规划。7.2 7.2 关节空间法关节空间法 关节空间法首先将在工具空间中期望的路径点,关节空间法首先将在工具空间中期望的路径点,通过逆运动学计算,得到期望的通过逆运动学计算,得到期望的关节位置关节位置,然后在关,然后在关节空间内,给每个关节找到一个经过中间点到达目的节空间内,给每个关节找到一个经过中间点到达目的终点的终点的光滑函数光滑函数,同时使得每个关节到达中间点和终,同时使得每个关节到达中间点和终点的点的时间相同时间相同,这样便可保证机械手工具能够到达期,这样便可保证机械手工具能够到达期望的直角坐标位置。这里只要求各个关节在路径点之望的直角坐标位置。这里只要求各个关节在路径点之间的间的时间相同时间相同,而,而各个关节的光滑函数的确定则是互各个关节的光滑函数的确定则是互相独立的相独立的。13131313下面具体介绍在关节空间内常用的两种规划方法下面具体介绍在关节空间内常用的两种规划方法1 1)三次多项式函数插值三次多项式函数插值 考虑机械手末端在一定时间内从初始位置和方位移动到考虑机械手末端在一定时间内从初始位置和方位移动到目标位置和方位的问题。利用逆运动学计算,可以首先求目标位置和方位的问题。利用逆运动学计算,可以首先求出一组起始和终了的关节位置现在的问题是求出一组通出一组起始和终了的关节位置现在的问题是求出一组通过起点和终点的过起点和终点的光滑函数光滑函数光滑函数光滑函数。满足这个条件的光滑函数可以。满足这个条件的光滑函数可以有许多条,如下图所示:有许多条,如下图所示:14141414显然,这些光滑函数必须满足以下条件显然,这些光滑函数必须满足以下条件:同时若要求在起点和终点的速度为零,即:同时若要求在起点和终点的速度为零,即:那么可以选择如下的三次多项式:那么可以选择如下的三次多项式:作为所要求的光滑函数。式作为所要求的光滑函数。式7-3中有中有4个待定系数,而个待定系数,而该式需满足式该式需满足式7-1和和7-2的的4个约束条件,因此可以唯一地解个约束条件,因此可以唯一地解出这些系数:出这些系数:(7-3)(7-2)(7-1)15151515(7-4)16161616例:例:设机械手的某个关节的起始关节角设机械手的某个关节的起始关节角0 015150 0,并且机械手,并且机械手原来是静止的。要求在原来是静止的。要求在3 3秒钟内平滑地运动到秒钟内平滑地运动到f f=75=750 0时停下来时停下来(即要求在终端时速度为零即要求在终端时速度为零)。规划出满足上述条件的平滑运动。规划出满足上述条件的平滑运动的轨迹,并画出关节角位置、角速度及角加速度随时间变化的的轨迹,并画出关节角位置、角速度及角加速度随时间变化的曲线。曲线。解:解:根据所给约束条件,直接代入式根据所给约束条件,直接代入式(7-4)(7-4),可得:,可得:a0=15,a1=0,a2=20,a3=-4.44 所求关节角的位置函数为:所求关节角的位置函数为:对上式求导,可以得到角速度和角加速度对上式求导,可以得到角速度和角加速度(7-5)(7-6)(7-7)17171717 根据式根据式(7-5)(7-5)(7-7)(7-7)可画出它们随时间的变可画出它们随时间的变化曲线如下图所示。由图看出,速度曲线为一抛化曲线如下图所示。由图看出,速度曲线为一抛物线,加速度则为一直线。物线,加速度则为一直线。利用三次多项式规划出的关节角的运动轨迹利用三次多项式规划出的关节角的运动轨迹181818182 2)抛物线连接的线性函数插值)抛物线连接的线性函数插值 前面介绍了利用三次多项式函数插值的规划方前面介绍了利用三次多项式函数插值的规划方法。另外一种常用方法是线性函数插值法,即用一法。另外一种常用方法是线性函数插值法,即用一条直线将起点与终点连接起来。但是,简单的线性条直线将起点与终点连接起来。但是,简单的线性函数插值将使得关节的运动速度在起点和终点处不函数插值将使得关节的运动速度在起点和终点处不连续,它也意味着需要产生无穷大的加速度,这显连续,它也意味着需要产生无穷大的加速度,这显然是不希望的。因此可以考虑在起点和终点处,用然是不希望的。因此可以考虑在起点和终点处,用抛物线与直线连接起来,在抛物线段内,使用恒定抛物线与直线连接起来,在抛物线段内,使用恒定的加速度来平滑地改变速度,从而使得整个运动轨的加速度来平滑地改变速度,从而使得整个运动轨迹的位置和速度是连续的。迹的位置和速度是连续的。19191919线性函数插值图线性函数插值图利用抛物线过渡的线性函利用抛物线过渡的线性函数插值图数插值图202020207.3 7.3 直角坐标直角坐标空间法空间法 前面介绍的在关节空间内的规划,可以保证运动前面介绍的在关节空间内的规划,可以保证运动轨迹经过给定的路径点。但是在直角坐标空间,路径轨迹经过给定的路径点。但是在直角坐标空间,路径点之间的轨迹形状往往是十分复杂的,它取决于机械点之间的轨迹形状往往是十分复杂的,它取决于机械手的运动学机构特性。在有些情况下,对机械手末端手的运动学机构特性。在有些情况下,对机械手末端的轨迹形状也有一定要求,如要求它在两点之间走一的轨迹形状也有一定要求,如要求它在两点之间走一条直线,或者沿着一个圆弧运动以绕过障碍物等。这条直线,或者沿着一个圆弧运动以绕过障碍物等。这时便需要在直角坐标空间内规划机械手的运动轨迹时便需要在直角坐标空间内规划机械手的运动轨迹 直角坐标空间的路径点,指的是机械手末端的工直角坐标空间的路径点,指的是机械手末端的工具坐标相对于基坐标的位置和姿态每一个点由具坐标相对于基坐标的位置和姿态每一个点由6 6个个量组成,其中量组成,其中3 3个量描述位置,另外个量描述位置,另外3 3个量描述姿态。个量描述姿态。在直角坐标空间内规划的方法主要有:在直角坐标空间内规划的方法主要有:线性函数线性函数插值法插值法和和圆弧插值法圆弧插值法。212121217.4 7.4 轨迹的实时生成轨迹的实时生成 前面轨迹规划的任务,是根据给定的路径点规前面轨迹规划的任务,是根据给定的路径点规划出运动轨迹的所有参数。划出运动轨迹的所有参数。例如,在用三次多项式函数插值时,便是产生例如,在用三次多项式函数插值时,便是产生出多项式系数出多项式系数a a0 0,a,a1 1,a,a2 2,a,a3 3从而得到整个轨迹的运动从而得到整个轨迹的运动方程:方程:对上式求导,可以得到速度和加速度对上式求导,可以得到速度和加速度222222227.5 7.5 路径的描述路径的描述 前面讨论了在给定路径点的情况下如何规划出前面讨论了在给定路径点的情况下如何规划出运动轨迹的问题。但是还有一个如何描述路径点并运动轨迹的问题。但是还有一个如何描述路径点并以合适的方式输入给机器人的问题。最常用的方法以合适的方式输入给机器人的问题。最常用的方法便是利用机器人语言。便是利用机器人语言。用户将要求实现的动作编成相应的应用程序,用户将要求实现的动作编成相应的应用程序,其中有相应的语句用来描述轨迹规划,并通过相应其中有相应的语句用来描述轨迹规划,并通过相应的控制作用来实现期望的运动。的控制作用来实现期望的运动。23232323此课件下载可自行编辑修改,仅供参考!此课件下载可自行编辑修改,仅供参考!感谢您的支持,我们努力做得更好!谢谢感谢您的支持,我们努力做得更好!谢谢