CN109074067B - 机器人运动控制方法及相关装置 - Google Patents

机器人运动控制方法及相关装置 Download PDF

Info

Publication number
CN109074067B
CN109074067B CN201680037942.4A CN201680037942A CN109074067B CN 109074067 B CN109074067 B CN 109074067B CN 201680037942 A CN201680037942 A CN 201680037942A CN 109074067 B CN109074067 B CN 109074067B
Authority
CN
China
Prior art keywords
point
bezier curve
time
path
order bezier
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201680037942.4A
Other languages
English (en)
Other versions
CN109074067A (zh
Inventor
张志明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen A&E Intelligent Technology Institute Co Ltd
Original Assignee
Shenzhen A&E Intelligent Technology Institute Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen A&E Intelligent Technology Institute Co Ltd filed Critical Shenzhen A&E Intelligent Technology Institute Co Ltd
Publication of CN109074067A publication Critical patent/CN109074067A/zh
Application granted granted Critical
Publication of CN109074067B publication Critical patent/CN109074067B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot

Abstract

本申请涉及运动控制领域,尤其涉及机器人运动控制技术。本申请使用关于路径的n阶(n为不小于4的整数)Bezier曲线作为机器人从前段轨迹运动至后段轨迹的平滑轨迹,并且使用关于时间的n阶Bezier曲线对运动速度进行规划,规划的速度用于确定每个控制周期内机器人需运动至的位置点,各个位置点组成上述平滑轨迹,本申请的控制精准度较高且应用范围较广,并且机器人在平滑轨迹上运动的速度及加速度均连续。

Description

机器人运动控制方法及相关装置
技术领域
本发明涉及运动控制领域,更具体地说,涉及机器人运动控制技术。
背景技术
机器人的运动,是按照预先规划的轨迹进行的。规划的运动轨迹,可以分解为多段,见图1a,一段运动轨迹包含lc及ln两段,机器人需要从轨迹lc运动到轨迹ln上,轨迹lc可以称为前段轨迹,ln可以称为后段轨迹。
两段轨迹的过渡方式可以是尖角转接,如图1a所示,机器人运动到轨迹lc的末端(点O处)后,速度降为0,然后再以一定的速度在轨迹ln上运动。该种过渡方式中,单段轨迹(lc或ln)上的初速度和末速度均为0,会大大降低机器人的工作效率,且频繁的加减速运动也会对电机及减速器的使用寿命产生影响。
为了解决以上问题,可以在两端轨迹之间使用平滑转接方式。即在两段轨迹之间规划平滑曲线,机器人以平滑曲线方式从一段轨迹过渡到另一段轨迹时,速度不为0。目前规划平滑曲线的方法有矢量加减法及圆弧转接法。
见图1b,矢量加减法是通过空间向量加法,使前段轨迹lc从拐点到交点O的插补点,与后段轨迹ln从拐点到交点O的插补点重合,被叠加后的插补点会组成空间的一段弧形,使轨迹平滑。但是,该种叠加的平滑轨迹是不确定的,会随着前后两段轨迹速度的变化而变化,精准度较低。
见图1c,圆弧转接法中,确定前段轨迹lc的拐出点A及后段轨迹ln上的拐出点B,求经过拐出点及拐入点的前后两段轨迹的公切圆,该公切圆上由拐出点及拐入点组成的圆弧AB为平滑转接轨迹。但是,该种方式的应用范围较小,只有在两段轨迹需均为直线的情况下肯定适用。但机器人的运动轨迹除了包含直线与直线转接,还包含直线与圆弧转接、圆弧与圆弧转接。在后两种转接中,由于直线与圆弧、圆弧与圆弧不一定共面,因此,并不一定能找到公切圆,从而导致该方式并不能适用。
因此,需要为机器人规划一种过渡的平滑轨迹,使机器人可以速度连续且加速度连续地通过该平滑轨迹。
发明内容
有鉴于此,本发明提供了一种机器人运动控制方法,用于控制机器人按照预先构建的关于路径的n(n为不小于4的整数)阶Bezier曲线表示的平滑轨迹进行运动。
本申请提供如下技术方案:
一方面,本申请提供了一种机器人运动控制方法,用于控制机器人按照预先构建的关于路径的n(n为不小4的整数)阶Bezier曲线表示的平滑轨迹进行运动,所述控制方法用于在多个控制周期中的每个控制周期内确定机器人需运动至的位置点,其中每个控制周期内包括以下步骤:
确定从首个控制周期到当前控制周期的时长值;
使用预先构建的关于时间的n阶Bezier曲线的表达式,求解所述时长值对应的Bezier参数的值;其中,所述关于时间的n阶Bezier曲线表示的是Bezier参数与时长之间的曲线关系;
将所述Bezier参数的值代入所述关于路径的n阶Bezier曲线的表达式中,获得位置坐标值;其中,所述关于路径的n阶Bezier曲线表示的是Bezier参数与位置坐标之间的曲线关系;
向驱动装置发送所述位置坐标值,以使所述驱动装置将所述机器人移动至所述位置坐标值表示的位置点。
另一方面,本申请提供了一种机器人运动控制装置,该装置具有实现上述方法中机器人运动控制行为的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。
在一个可能的设计中,机器人运动控制装置的结构包括通信接口、处理器以及存储器,所述通信接口与驱动装置相连,所述存储器内存储有安装于所述机器人运动控制装置中的程序代码及数据,所述处理器用于调用所述存储器中的程序代码及数据以确定机器人在多个控制周期中的每个控制周期内需运动至的位置点,具体执行上述方法。
再一方面,本发明实施例提供了一种机器人,其包括上述的机器人运动控制装置,以及驱动所述机器人移动至所述位置坐标值表示的位置点的驱动装置。
相较于现有技术,本申请使用关于路径的n阶(n为不小于4的整数)Bezier曲线作为机器人从前段轨迹运动至后段轨迹的平滑轨迹,并且使用关于时间的n阶Bezier曲线对运动速度进行规划,规划的速度用于确定每个控制周期内机器人需运动至的位置点,各个位置点组成上述平滑轨迹,本申请的控制精准度较高且应用范围较广,并且机器人在平滑轨迹上运动的速度及加速度均连续。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1a为机器人运动轨迹的一种示意图;
图1b为现有技术中矢量加减法进行路径规划的示意图;
图1c为现有技术中圆弧转接法进行路径规划的示意图;
图2为本申请提供的关于路径的四阶Bezier曲线的示意图;
图3为本申请提供的控制机器人沿n阶Bezier曲线运动的示意图;
图4为本申请提供的控制机器人运动控制方法的一个流程图;
图5为本申请提供的控制机器人运动控制装置的一个结构示意图;
图6为本申请提供的控制机器人运动控制装置的另一结构示意图;
图7为本申请提供的控制机器人运动控制装置的硬件结构示意图。
具体实施方式
本发明可能使用的技术名词、简写或缩写如下:
TCP点:工具坐标中心点;
直线运动:机器人TCP点在笛卡尔空间内沿直线轨迹运动;
圆弧运动:机器人TCP点在笛卡尔空间内沿圆弧轨迹运动;
CP:连续运动,笛卡尔空间下的轨迹运动方式,包括直线运动和圆弧运动;
PTP:点到点运动,关节空间下的轨迹运动方式;
Bezier(贝塞尔)曲线,是由线段及节点组成的曲线,可以使用阶来表示不同形态的贝塞尔曲线。
n阶Bezier曲线的公式为:
Figure BDA0001527172280000041
其中bi,n(t)为Bernstein基函数,
Figure BDA0001527172280000042
P0-Pn可以称为Bezier曲线的特征点或控制点,特征点可以用来定义Bezier曲线,特征点组成的多边形称为特征多边形。t=0对应Beizer曲线的起始点P0,t=1对应Beizer曲线的终止点Pn
根据以上n阶Bezier曲线的通用公式可知四阶Bezier曲线的公式,即将n=4代入公式得出四阶Bezier曲线的公式为:
B(t)=P0(1-t)4+4P1t(1-t)3+6P2t2(1-t)2+4P3t3(1-t)+P4t4,t∈[0,1]。
同理,可以确定出五阶Bezier曲线的公式为:
B(t)=P0(1-t)5+5P1t(1-t)4+10P2t2(1-t)3+10P3t3(1-t)2+5P4t4(1-t)+P5t5,t∈[0,1]。
如图2所示的四阶Bezier曲线P0P4,其中,P0、P1、P2、P3及P4五个点可定义该Bezier曲线。该曲线起始于P0走向P1,从P1方向到P2从P2方向到P3,并从P3方向到P4。需要说明的是,一般四阶Bezier曲线不经过P1、P2、P3这三个点,该三个点只提供方向而已。
对于五阶Bezier曲线而言,P0、P1、P2、P3、P4及P5六个点可定义该Bezier曲线。此六个点为五阶Bezier曲线的特征点。
不论是四阶还是五阶及以上阶数的Bezier曲线,对Bezier曲线求导,便可获得Bezier曲线在始末点的切矢量为
Figure BDA0001527172280000043
则:
当t=0时,B′(0)=n(P1-P0),B′(0)即为n阶Bezier曲线在起始点的切矢量;
当t=1时B′(1)=n(Pn-Pn-1),B′(1)即为n阶Bezier曲线在终止点的切矢量。
其中,切矢量即切线方向,由上述切矢量可知,n阶Bezier曲线在起始点和终止点处的切线方向和特征多边形的第一条边及最后一条边走向一致。以图2所示四阶Bezier曲线为例,B′(0)=4(P1-P0),B′(1)=4(P4-P3),而图2的第一条边是P1P0,最后一条边是P4P3
同理,对Bezier曲线求二阶导,便可获得Bezier曲线在始末点的二阶切矢量为
Figure BDA0001527172280000051
则:
当t=0时,B”(0)=n(n-1)(P2-2P1+P0)B”(0)即为n阶Bezier曲线在起始点的二阶切矢量;
当t=1时,B”(1)=n(n-1)(Pn-2Pn-1+Pn-2),B”(1)即为n阶Bezier曲线在终止点的二阶切矢量;
上述公式表明,二阶切矢量只与相邻的3个控制点有关。
本申请使用Bezier曲线作为转接两段轨迹的平滑轨迹。机器人按照该平滑轨迹,从前段轨迹通过Bezier曲线过渡到后段轨迹上,且过渡运动中速度连续及加速度连续。
本申请中,将四阶Bezier曲线作为平滑轨迹,当然,平滑轨迹还可以使用五阶或五阶以上的Bezier曲线。以下首先介绍n阶Bezier曲线的构建方式,其中,n为不小于4的整数。需要说明的是,此处的Bezier曲线可以称为关于路径的Bezier曲线,以便与下文关于时间的Bezier曲线区分。
根据前段轨迹及后段轨迹确定n阶Bezier曲线的位置特征点,根据确定出的位置特征点,构建n阶Bezier曲线作为平滑轨迹。其中,位置特征点中包含起始点及终止点。
可以理解的是,如图2所示,运动过程中,机器人在前段轨迹lc的末端及后段轨迹ln的初端会脱离原来的轨迹,因此,在前端轨迹lc的末端有拐出点A,在后段轨迹ln的初端有拐入点B。
在构建关于路径的n阶Bezier曲线时,需要保证Bezier曲线的起始点与前段轨迹的拐出点重合,Bezier曲线的终止点与后段轨迹的拐入点重合,且Bezier曲线在起始点的切矢量方向与前段轨迹在拐出点的切矢量方向相同、Bezier曲线在终止点的切矢量方向与后段轨迹在拐入点的切矢量方向相同。
以上构建的关于路径的n(n为不小于4的整数)阶Bezier曲线可以作为转接前段轨迹及后段轨迹的平滑轨迹。
本申请提供了一种机器人运动控制方法,该方法用于控制机器人按照上述关于路径的n(n为不小于4的整数)阶Bezier曲线表示的平滑轨迹进行运动。控制方法用于在多个控制周期(也可以称为插补周期)中的每个控制周期内确定机器人需运动至的位置点,如图3所示,n阶Bezier曲线表示的平滑轨迹上的各个小圆点,表示的是各个控制周期内机器人运动到的位置点。
如图4所示,在每个控制周期执行以下步骤S41~S41。
步骤S41:确定从首个控制周期到当前控制周期的时长值。
其中,时长值为从首个控制周期到当前控制周期的时间长度,例如控制周期为1毫秒,当前控制周期为第81个控制周期,则从首个控制周期到当前控制周期的时长值为0.08s。
步骤S42:使用关于时间的n阶Bezier曲线的表达式,求解时长值对应的Bezier参数的值,其中,n为不小于4的整数。
其中,关于时间的n阶Bezier曲线的表达式为预先构建的,关于时间的n阶Bezier曲线表示的是Bezier参数与时长之间的关系,具体地,该关于时间的n(n为不小于四的整数)阶Bezier曲线的表达式为:
Figure BDA0001527172280000061
其中,bi,n(u)为Bernstein基函数,且
Figure BDA0001527172280000062
以关于时间的四阶Bezier曲线为例,该曲线的表达式为:
T(u)=T0(1-u)4+4T1u(1-u)3+6T2u2(1-u)2+4T3u3(1-u)+T4u4
其中,T(u)表示沿着所述关于路径的四阶Bezier曲线表示的平滑轨迹运动所需的时长,T0、T1、T2、T3及T4为所述关于时间的四阶Bezier曲线的时间特征点,在已构建的上述表达式中,时间特征点T0、T1、T2、T3及T4为已知值,关于如何确定四个时间特征点的值请见下文,此处并不赘述。
将步骤S41确定的时长值作为T(u)代入已构建的上述表达式中,可求得时长值对应的Bezier参数u的值,Bezier参数可简称为参数。需要说明的是,求解到的Bezier参数u有四个,但u∈[0,1],因此将属于[0,1]范围内的值确定为Bezier参数u的值。
步骤S43:将Bezier参数的值代入关于路径的n阶Bezier曲线的表达式中,获得位置坐标值。
其中,关于路径的n阶Bezier曲线的表达式为预先构建的,关于路径的n阶Bezier曲线表示的是Bezier参数与位置坐标之间的关系,具体地,表达式为:
Figure BDA0001527172280000071
其中,bin(u)为Bernstein基函数,且
Figure BDA0001527172280000072
以关于路径的四阶Bezier曲线为例,该曲线的表达式为:
P(u)=P0(1-u)4+4P1u(1-u)3+6P2u2(1-u)2+4P3u3(1-u)+P4u4
其中,P(u)表示关于路径的四阶Bezier曲线中的位置坐标,P0、P1、P2、P3及P4为关于路径的四阶Bezier曲线的位置特征点,在已构建的上述表达式中,P0、P1、P2、P3及P4均为已知值。
需要说明的是,关于路径的四阶Bezier曲线与关于时间的四阶Bezier曲线是具有关联关系的,两个表达式中的Bezier参数u为相同值。因此,将步骤S42中根据关于时间的四阶Bezier曲线求解到的Bezier参数u的值代入上述关于路径的四阶Bezier曲线的表达式,便可求解出P(u)。
步骤S44:向驱动装置发送位置坐标值,以使驱动装置将机器人移动至位置坐标值表示的位置点。
其中,机器人中设置驱动装置(如驱动控制器等),以控制机器人的移动旋转等动作。向驱动装置发送步骤S43求解到的位置坐标值P(u),驱动装置根据位置坐标值生成相应的移动命令,并向机械臂等运动部件发送该移动命令,以控制机器人移动至该位置坐标值所表示的位置点。如图3所示,若当前控制周期为首个控制周期,则控制机器人移动至第一个小圆点处,若当前控制周期为第二个控制周期,则控制机器人移动至第二个小圆点处,以此类推,在最后一个控制周期,控制机器人移动至平滑轨迹的终点。
以上机器人运动控制方法中,使用关于路径的n阶Bezier曲线作为机器人从前段轨迹运动至后段轨迹的平滑轨迹,并且使用关于时间的n(n为不小于四的整数)阶Bezier曲线对运动速度进行规划,规划的速度用于确定每个控制周期内机器人需运动至的位置点,各个位置点组成上述平滑轨迹。
在本申请中,机器人可以速度连续且加速度连续地从前段轨迹转接至后段轨迹,该转接轨迹为关于路径的n阶Bezier曲线,由于曲线的构建并不需要依赖机器人在前后两段轨迹上的速度,因此,可以避免矢量加减法构建的平滑轨迹精准度较低的问题。并且,该曲线并非确定前段轨迹与后段轨迹的公切圆,可以解决适用性较小的问题,本申请可以应用在各种形状的轨迹转接场景中,应用范围较广。
构建平滑轨迹后,需要控制机器人按照该平滑轨迹运动。控制过程中包括速度规划过程,速度规划过程即确定机器人以怎样的速度通过该平滑轨迹。
可以理解的是,速度与时间及路径是有关联关系的,规划的速度需要转化为路径上的位置点,控制机器人在一定时间内移动至该位置点,便可以体现出机器人是按照规划的速度运动。因此,以上图4所示的机器人运动控制方法中,为每个控制周期确定所需运动到的位置点,从整个运动过程来看,机器人是按照一定的速度运动的。
速度的变化体现为加速度,在本申请中,需要保证机器人在按照平滑轨迹运动时,加速度也是连续的。目前对加速度规划的方案有S型速度规划及T型速度规划,该两种规划方案是根据已知路径长度及始末速度,对目标速度或目标时间进行速度规划,需要保证等差参数对应等差路径长度,因此,只能适用于直线或者圆弧。
然而,本申请使用Bezier曲线作为平滑轨迹,Bezier曲线为参数曲线,路径长度无法精确计算,只能通过数值积分计算得出,且由于路径点稀疏密集程度不同,等差参数不一定对应等差路径长度,因此,现有的加速度规划方案并不能精确地对Bezier曲线进行加速度规划。
对此,本申请针对关于路径的n(n为不小于四的整数)阶Bezier曲线,确定相对应的加速度规划方案,即在Bezier曲线坐标维度的基础上,增加时间维度。通过控制时间维度上的时间特征点,来控制机器人满足预先设置的始末速度及始末加速度,这样,加速度规划的插补周期与Bezier曲线的参数一一对应,并且,Bezier曲线的每个点都是通过时间来控制速度及加速度变化,从而达到始末速度及加速度连续的目的。
其中,增加时间维度的Bezier曲线可以为上述关于时间的n(n为不小于四的整数)阶Bezier曲线的表达式,即:
Figure BDA0001527172280000091
其中,bi,n(u)为Bernstein基函数,且
Figure BDA0001527172280000092
可以理解的是,该表达式中Bezier参数u为变量,但需确定出时间控制点Ti的值。确定出各个时间特征点后,代入上述表达式便可以构建出关于时间的n阶Bezier曲线。
需要说明的是,关于时间的四阶Bezier曲线与关于时间的五阶及以上阶数的Bezier曲线的时间特征点的值确定方法不同,因此,以下单独对关于时间的四阶Bezier曲线中的时间特征点的确定方法进行介绍。
可以理解的是,关于时间的四阶Bezier曲线中,时间特征点有五个,分别为T0、T1、T2、T3及T4
依据关于路径的四阶Bezier曲线的位置特征点(P0、P1、P2、P3及P4)、预设的起始点的速度、预设的终止点的速度、预设的起始点的加速度及预设的终止点的加速度,确定所述关于时间的四阶Bezier曲线的时间特征点T0、T1、T2、T3及T4
具体地,可以将时间特征点T0确定为0,且T4=Tf(总时长)。
将位置特征点P0、位置特征点P1及速度υs代入表达式
Figure BDA0001527172280000093
求解时间特征点T1,其中,所述速度υs为预先设置的机器人在所述平滑轨迹的起始点的速度,起始点即位置特征点P0
将位置特征点P2、位置特征点P1、位置特征点P0、时间特征点T1、加速度as及角度α代入表达式l1=cosα|P0-P2|及
Figure BDA0001527172280000101
中,求解时间特征点T2,其中,加速度as为预先设置的机器人在平滑轨迹的起始点的加速度,起始点为位置特征点P0,角度α为线段P0P1与线段P0P2之间的夹角,|P0-P2|为线段P0P2的长度。
将位置特征点P4、位置特征点P3、位置特征点P2、时间特征点T2、速度υf、加速度af及角度β代入表达式l2=cosβ|P2-P4|及
Figure BDA0001527172280000102
中,求解时间特征点T4,其中,加速度af为预先设置的机器人在平滑轨迹的终止点的加速度,速度υf为预先设置的机器人在所述平滑轨迹的终止点的速度,终止点为位置特征点P4,角度β为线段P4P3与线段P4P2之间的夹角,|P2-P4|为线段P4P2的长度。
将位置特征点P4、位置特征点P3、速度υf及时间特征点T4代入表达式
Figure BDA0001527172280000103
中,求解时间特征点T3
以下说明各个时间特征点的表达式的获得方式。
第一,关于表达式
Figure BDA0001527172280000104
分别对关于路径的四阶Bezier曲线的表达式P(u)=P0(1-u)4+4P1u(1-u)3+6P2u2(1-u)2+4P3u3(1-u)+P4u4在起始点P0及终止点P4处求导,获得P'(0)=-4P0+4P1及P'(1)=-4P3+4P4
分别对关于时间的四阶Bezier曲线的表达式T(u)=T0(1-u)4+4T1u(1-u)3+6T2u2(1-u)2+4T3u3(1-u)+T4u4在起始点P0及终止点P4处求导,获得T'(0)=-4T0+4T1及T'(1)=-4T3+4T4
其中,u=0对应的是起始点P0,u=1对应的是终止点P4。根据一阶导可以看出,起止点处的一阶导与临近始末的两个位置特征点有关。
根据P'(0)=-4P0+4P1及T'(0)=-4T0+4T1可以得出有关起始点处速度的以下表达式:
Figure BDA0001527172280000111
又由于设T0=0,则可以得出:
Figure BDA0001527172280000112
其中P1-P0表示位置特征点P0与P1之间的距离,可以表示为|P1-P0|。
第二,关于表达式
Figure BDA0001527172280000113
分别对关于路径的四阶Bezier曲线的表达式P(u)=P0(1-u)4+4P1u(1-u)3+6P2u2(1-u)2+4P3u3(1-u)+P4u4在起始点P0及终止点P4处求二阶导,获得P”(0)=12P0-24P1+12P2及P”(1)=12P2-24P3+12P4
分别对关于时间的四阶Bezier曲线的表达式T(u)=T0(1-u)4+4T1u(1-u)3+6T2u2(1-u)2+4T3u3(1-u)+T4u4在起始点P0及终止点P4处求导,获得T”(0)=12T0-24T1+12T2及T”(1)=12T2-24T3+12T4
其中,u=0对应的是起始点P0,u=1对应的是终止点P4。并且,根据二阶导可以看出,起止点处的一阶导与临近始末的三个位置特征点有关。
根据P”(0)=12P0-24P1+12P2、T'(0)=-4T0+4T1、P'(0)=-4P0+4P1、T”(0)=12T0-24T1+12T2可以得出有关起始点处加速度的以下表达式:
Figure BDA0001527172280000114
Figure BDA0001527172280000121
又由于
Figure BDA0001527172280000122
从而求解出
Figure BDA0001527172280000123
第三,关于表达式
Figure BDA0001527172280000124
根据P”(1)=12P2-24P3+12P4、T'(1)=-4T3+4T4、P'(1)=-4P3+4P4、T”(1)=12T2-24T3+12T4可以得出有关终止点处加速度的以下表达式:
Figure BDA0001527172280000125
又由于
Figure BDA0001527172280000126
从而求解出
Figure BDA0001527172280000127
第四,关于表达式
Figure BDA0001527172280000128
根据P'(1)=-4P3+4P4、T'(1)=-4T3+4T4可以得出有关终止点处速度的以下表达式:
Figure BDA0001527172280000129
其中,P4-P3表示表示位置特征点P4与P3之间的距离,可以表示为|P4-P3|。
将上述关于νf的表达式变形后,便可以获得
Figure BDA00015271722800001210
以上是关于时间特征点T0、T1、T2、T3及T4的计算过程,根据计算出的时间特征点,便可以构建出关于时间的四阶Bezier曲线的表达式。进而,可以使用该表达式,执行上述图4中的插补过程,以确定机器人在每个插补周期内需要行进至的位置坐标点,实现机器人按照贝塞尔曲线进行平滑转接。
以上说明了如何构建关于时间的四阶Bezier曲线及使用该曲线进行插补的过程。但若想要达到初始速度及加速度连续的目的,可以使用5次及以上的Bezier曲线。使用5次及以上的Bezier曲线进行插补具有如下优点:
1、可以控制平滑过渡的总时长。由于关于时间的四阶Bezier曲线有5个时间特征点,控制始末加速度需要控制边界的三个时间特征点,所有始末加速度的控制均会使用第三个时间特征点,导致没有自由度去改变总时长。但是,关于时间的五阶及以上的Bezier曲线至少有6个时间特征点,所以并没有任何一个时间特征点会复用,从而可以有改变总时长的自由度。
2、可以控制平滑过渡的加减速。
以下以5次Bezier曲线为例,说明关于时间的五阶Bezier曲线的构建过程,需要说明的是,五阶以上的Bezier曲线的构建过程与五阶类似,并不赘述。
关于路径的五阶Bezier曲线的表达式为:
P(u)=P0(1-u)5+5P1u(1-u)4+10P2u2(1-u)3+10P3u3(1-u)2+5P4u4(1-u)+P5u5
其中,P(u)表示关于路径的四阶Bezier曲线中的位置坐标,P0、P1、P2、P3、P4及P5为关于路径的四阶Bezier曲线的位置特征点,在已构建的上述表达式中,P0、P1、P2、P3、P4及P5均为已知值。
关于时间的五阶Bezier曲线的表达式为:
T(u)=T0(1-u)5+5T1u(1-u)4+10T2u2(1-u)3+10T3u3(1-u)2+5T4u4(1-u)+T5u5
其中,T0、T1、T2、T3、T4及T5为所述关于时间的五阶Bezier曲线的时间特征点,为了构建该关于时间的五阶Bezier曲线,需要求解该6个时间特征点的值。
依据关于路径的五阶Bezier曲线的位置特征点(P0、P1、P2、P3、P4及P5)、预设的起始点的速度、预设的终止点的速度、预设的起始点的加速度及预设的终止点的加速度,确定所述关于时间的五阶Bezier曲线的时间特征点T0、T1、T2、T3、T4及T5
具体地,可以将时间特征点T0确定为0。
将位置特征点P0、位置特征点P1及速度υs代入表达式
Figure BDA0001527172280000141
求解时间特征点T1,其中,所述速度υs为预先设置的机器人在所述平滑轨迹的起始点的速度,起始点即位置特征点P0
将位置特征点P2、位置特征点P1、位置特征点P0、时间特征点T1、加速度as及角度α代入表达式l1=cosα|P0-P2|及
Figure BDA0001527172280000142
中,求解时间特征点T2,其中,加速度as为预先设置的机器人在平滑轨迹的起始点的加速度,起始点为位置特征点P0,角度α为线段P0P1与线段P0P2之间的夹角,|P0-P2|为线段P0P2的长度。
将位置特征点P3、位置特征点P2、速度υs、速度υf及时间特征点T2代入表达式
Figure BDA0001527172280000143
中,求解时间特征点T3,其中,速度υf为预先设置的机器人在所述平滑轨迹的终止点的速度,终止点为位置特征点P5
将位置特征点P5、位置特征点P4、位置特征点P3、时间特征点T3、速度υf、加速度af及角度β代入表达式l2=cosβ|P3-P5|及
Figure BDA0001527172280000144
中,求解时间特征点T5,其中,加速度af为预先设置的机器人在平滑轨迹的终止点的加速度,角度β为线段P5P4与线段P5P3之间的夹角,|P3-P5|为线段P5P3的长度。
将位置特征点P5、位置特征点P4、速度υf及时间特征点T5代入表达式
Figure BDA0001527172280000145
中,求解时间特征点T4
以下说明各个时间特征点的表达式的获得方式与四阶类似,此处并不赘述。
需要说明的是,以上计算过程中的T3的表达式为预设的,即为了使速度平稳而预设的一种计算方式。但是T3可以不受约束,即不使用上述表达式。当然,可以根据想要达到的运动情况,来设置T3的表达式。
另外,计算T3的方式还可以是预先设置Tf的值,即Tf的值为已知值。这样,根据上述
Figure BDA0001527172280000151
可以确定出T3的值。
以上是关于时间特征点T0、T1、T2、T3、T4及T5的计算过程,根据计算出的时间特征点,便可以构建出关于时间的五阶Bezier曲线的表达式。进而,可以使用该表达式,执行图4所示的插补过程,以确定机器人在每个插补周期内需要行进至的位置坐标点,实现机器人按照贝塞尔曲线进行平滑转接。
见图5,其示出了本申请提供的机器人运动控制装置的结构。
机器人运动控制装置应用于机器人中,具体可为机器人的控制器或处理器,用于控制机器人按照预先构建的关于路径的三阶Bezier曲线表示的平滑轨迹进行运动,所述控制装置在每个控制周期内确定机器人需运动至的位置点。
其中,如图5所示,所述控制装置具体包括:
时长值确定单元51,用于确定从首个控制周期到当前控制周期的时长值;
参数值确定单元52,用于使用预先构建的关于时间的n阶Bezier曲线的表达式,求解所述时长值对应的Bezier参数的值;其中,所述关于时间的n阶Bezier曲线表示的是Bezier参数与时长之间的曲线关系;
坐标值确定单元53,用于将所述Bezier参数的值代入所述关于路径的n阶Bezier曲线的表达式中,获得位置坐标值;其中,所述关于路径的n阶Bezier曲线表示的是Bezier参数与位置坐标之间的曲线关系;
移动至坐标值单元54,用于向驱动装置发送所述位置坐标值,以使所述驱动装置将所述机器人移动至所述位置坐标值表示的位置点。
另外,见图6,其示出了本申请提供的机器人运动控制装置的另一种结构。该控制装置在上述图5所示的控制装置的基础上,还可以包括:时间曲线构建单元55及路径曲线构建单元56。需要说明的是,图6中的部件51~54可以参见上述说明,此处并不赘述。
时间曲线构建单元55,用于构建关于路径的n阶Bezier曲线;
路径曲线构建单元56,用于构建关于路径的n阶Bezier曲线,所述关于路径的三阶Bezier曲线作为机器人从前段轨迹运动到后段轨迹的平滑轨迹。
时间曲线构建单元及路径曲线构建单元可以执行以上控制方法中相关的步骤以具体构建时间Bezier曲线及路径Bezier曲线,参照上文说明,此处并不赘述。
见图7,其示出了本申请提供的机器人运动控制装置的硬件结构示意图。如图7所示,该机器人运动控制装置可以包括:处理器1,通信接口2,存储器3以及通信总线4;其中处理器1、通信接口2、存储器3通过通信总线4完成相互间的通信。
存储器3,用于存放安装于该机器人运动控制装置中的程序代码以及数据。存储器3可以是高速RAM存储器,也可以是非易失性存储器(non-volatile memory),例如磁盘存储器。所述程序代码包括处理器的操作指令。
处理器1可能是一个中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本申请实施例的一个或多个集成电路。
所述处理器1用于调用所述存储器3中的程序代码及数据以确定机器人在多个控制周期中的每个控制周期内需运动至的位置点,从而控制机器人按照预先构建的关于路径的n(n为不小4的整数)阶Bezier曲线表示的平滑轨迹进行运动。所述处理器1用于调用所述存储器3中的程序代码及数据以确定机器人在多个控制周期中的每个控制周期内需运动至的位置点,具体包括以下步骤:
确定从首个控制周期到当前控制周期的时长值;
使用预先构建的关于时间的n阶Bezier曲线的表达式,求解所述时长值对应的Bezier参数的值;其中,所述关于时间的n阶Bezier曲线表示的是Bezier参数与时长之间的曲线关系;
将所述Bezier参数的值代入预先构建的关于路径的n阶Bezier曲线的表达式中,获得位置坐标值;其中,所述关于路径的n阶Bezier曲线表示的是Bezier参数与位置坐标之间的曲线关系;
通过所述通信接口2向驱动装置发送所述位置坐标值,以使所述驱动装置将所述机器人移动至所述位置坐标值表示的位置点。
所述通信接口2用于与驱动装置相连,从而向驱动装置发送位置坐标。所述通信接口2可以为通信模块的接口,如GSM模块的接口,PCI模块的接口等。
本申请还提供了一种机器人,包括:机器人运动控制装置及驱动装置,其中:
所述机器人运动控制装置,用于确定从首个控制周期到当前控制周期的时长值;使用预先构建的关于时间的n(n为不小于4的整数)阶Bezier曲线的表达式,求解所述时长值对应的Bezier参数的值;其中,所述关于时间的n阶Bezier曲线表示的是Bezier参数与时长之间的曲线关系;将所述Bezier参数的值代入预先构建的关于路径的n阶Bezier曲线的表达式中,获得位置坐标值;其中,所述关于路径的n阶Bezier曲线表示的是Bezier参数与位置坐标之间的曲线关系;向驱动装置发送所述位置坐标值;
所述驱动装置,用于驱动所述机器人移动至所述位置坐标值表示的位置点。
其中,机器人可以具体为机械臂。
结合本发明公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、移动硬盘、CD-ROM或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在可读介质中或者作为可读介质上的一个或多个指令或代码进行传输。。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。

Claims (10)

1.一种机器人运动控制方法,其特征在于,用于控制机器人按照预先构建的关于路径的n阶Bezier曲线表示的平滑轨迹进行运动,其中,n为不小于4的整数,所述控制方法用于在多个控制周期中的每个控制周期内确定机器人需运动至的位置点,其中每个控制周期内包括以下步骤:
确定从首个控制周期到当前控制周期的时长值;
使用预先构建的关于时间的n阶Bezier曲线的表达式,求解所述时长值对应的Bezier参数的值;其中,所述关于时间的n阶Bezier曲线表示的是Bezier参数与时长之间的曲线关系;
将所述Bezier参数的值代入所述关于路径的n阶Bezier曲线的表达式中,获得位置坐标值;其中,所述关于路径的n阶Bezier曲线表示的是Bezier参数与位置坐标之间的曲线关系;
向驱动装置发送所述位置坐标值,以使所述驱动装置将所述机器人移动至所述位置坐标值表示的位置点;
其中,构建所述关于时间的n阶Bezier曲线的方法包括:
依据关于路径的n阶Bezier曲线的位置特征点、预设的起始点的速度、预设的终止点的速度、预设的起始点的加速度以及预设的终止点的加速度,确定所述关于时间的n阶Bezier曲线的时间特征点;
依据所述时间特征点,构建的关于时间的n阶Bezier曲线的表达式;
其中,在n为4的情况下,关于路径的四阶Bezier曲线的表达式为:
P(u)=P0(1-u)4+4P1u(1-u)3+6P2u2(1-u)2+4P3u3(1-u)+P4u4
其中,u为Bezier参数且u∈[0,1],P(u)表示关于路径的四阶Bezier曲线中的位置坐标,P0、P1、P2、P3及P4为关于路径的四阶Bezier曲线的位置特征点;
所述关于时间的四阶Bezier曲线的表达式为:
T(u)=T0(1-u)4+4T1u(1-u)3+6T2u2(1-u)2+4T3u3(1-u)+T4u4
其中,u为Bezier参数且u∈[0,1],T(u)表示沿着所述关于路径的四阶Bezier曲线表示的平滑轨迹运动所需的时长;T0、T1、T2、T3及T4为关于时间的四阶Bezier曲线的时间特征点。
2.根据权利要求1所述的方法,其特征在于,依据关于路径的四阶Bezier曲线的位置特征点、预设的起始点的速度、预设的终止点的速度、预设的起始点的加速度以及预设的终止点的加速度,确定所述关于时间的四阶Bezier曲线的时间特征点T0、T1、T2、T3及T4,包括:
确定时间特征点T0为0;
将位置特征点P0、位置特征点P1及速度υs代入表达式
Figure FDA0003216020840000021
求解时间特征点T1,其中,所述速度υs为预先设置的机器人在所述平滑轨迹的起始点的速度,起始点即位置特征点P0
将位置特征点P2、位置特征点P1、位置特征点P0、时间特征点T1、加速度as及角度α代入表达式l1=cosα|P0-P2|及
Figure FDA0003216020840000022
中,求解时间特征点T2,其中,加速度as为预先设置的机器人在平滑轨迹的起始点的加速度,起始点为位置特征点P0,角度α为线段P0P1与线段P0P2之间的夹角,|P0-P2|为线段P0P2的长度;
将位置特征点P4、位置特征点P3、位置特征点P2、时间特征点T2、速度υf、加速度af及角度β代入表达式l2=cosβ|P2-P4|及
Figure FDA0003216020840000023
中,求解时间特征点T4,其中,加速度af为预先设置的机器人在平滑轨迹的终止点的加速度,速度υf为预先设置的机器人在所述平滑轨迹的终止点的速度,终止点为位置特征点P4,角度β为线段P4P3与线段P4P2之间的夹角,|P2-P4|为线段P4P2的长度;
将位置特征点P4、位置特征点P3、速度υf及时间特征点T4代入表达式
Figure FDA0003216020840000031
中,求解时间特征点T3
3.根据权利要求1所述的方法,其特征在于,在n等于5的情况下,关于路径的五阶Bezier曲线的表达式为:
P(u)=P0(1-u)5+5P1u(1-u)4+10P2u2(1-u)3+10P3u3(1-u)2+5P4u4(1-u)+P5u5
其中,u为Bezier参数且u∈[0,1],P(u)表示关于路径的五阶Bezier曲线中的位置坐标,P0、P1、P2、P3、P4及P5为关于路径的五阶Bezier曲线的位置特征点;
所述关于时间的五阶Bezier曲线的表达式为:
T(u)=T0(1-u)5+5T1u(1-u)4+10T2u2(1-u)3+10T3u3(1-u)2+5T4u4(1-u)+T5u5
其中,u为Bezier参数且u∈[0,1],T(u)表示沿着所述关于路径的五阶Bezier曲线表示的平滑轨迹运动所需的时长;T0、T1、T2、T3、T4及T5为关于时间的五阶Bezier曲线的时间特征点。
4.根据权利要求3所述的方法,其特征在于,确定所述关于时间的五阶Bezier曲线的时间特征点T0、T1及T2,包括:
确定时间特征点T0为0;
将位置特征点P0、位置特征点P1及速度υs代入表达式
Figure FDA0003216020840000032
求解时间特征点T1,其中,所述速度υs为预先设置的机器人在所述平滑轨迹的起始点的速度,起始点即位置特征点P0
将位置特征点P2、位置特征点P1、位置特征点P0、时间特征点T1、加速度as及角度α代入表达式l1=cosα|P0-P2|及
Figure FDA0003216020840000033
中,求解时间特征点T2,其中,加速度as为预先设置的机器人在平滑轨迹的起始点的加速度,起始点为位置特征点P0,角度α为线段P0P1与线段P0P2之间的夹角,|P0-P2|为线段P0P2的长度。
5.根据权利要求4所述的方法,其特征在于,确定所述关于时间的五阶Bezier曲线的时间特征点T3、T4及T5,包括:
将位置特征点P3、位置特征点P2、速度υs、速度υf及时间特征点T2代入表达式
Figure FDA0003216020840000041
中,求解时间特征点T3,其中,速度υf为预先设置的机器人在所述平滑轨迹的终止点的速度,终止点为位置特征点P5
将位置特征点P5、位置特征点P4、位置特征点P3、时间特征点T3、速度υf、加速度af及角度β代入表达式l2=cosβ|P3-P5|及
Figure FDA0003216020840000042
中,求解时间特征点T5,其中,加速度af为预先设置的机器人在平滑轨迹的终止点的加速度,角度β为线段P5P4与线段P5P3之间的夹角,|P3-P5|为线段P5P3的长度;
将位置特征点P5、位置特征点P4、速度υf及时间特征点T5代入表达式
Figure FDA0003216020840000043
中,求解时间特征点T4
6.根据权利要求4所述的方法,其特征在于,确定所述关于时间的五阶Bezier曲线的时间特征点T3、T4及T5,包括:
获得预先设置的Tf,并根据T5=Tf确定时间特征点T5
将位置特征点P5、位置特征点P4、速度υf及时间特征点T5代入表达式
Figure FDA0003216020840000051
中,求解时间特征点T4
将位置特征点P5、位置特征点P4、位置特征点P3、时间特征点T3、速度υf、加速度af及角度β代入表达式l2=cosβ|P3-P5|及
Figure FDA0003216020840000052
中,求解时间特征点T3
7.根据权利要求1所述的方法,其特征在于,所述关于路径的n阶Bezier曲线作为机器人从前段轨迹运动到后段轨迹的平滑轨迹,构建所述关于路径的n阶Bezier曲线的方法包括:
根据所述前段轨迹及所述后段轨迹确定n阶Bezier曲线的位置特征点,根据所述位置特征点,构建关于路径的n阶Bezier曲线;
其中,所述位置特征点中包含起始点及终止点,所述前段轨迹具有拐出点,所述后段轨迹具有拐入点,且所述起始点与所述拐出点重合,所述终止点与所述拐入点重合,所述起始点的切矢量方向与所述拐出点的切矢量方向相同,所述终止点的切矢量方向与所述拐入点的切矢量方向相同。
8.一种机器人运动控制装置,其特征在于,用于控制机器人按照预先构建的关于路径的n阶Bezier曲线表示的平滑轨迹进行运动,其中,n为不小于4的整数,该控制装置用于在多个控制周期中的每个控制周期内确定机器人需运动至的位置点,该装置包括:
时长值确定单元,用于确定从首个控制周期到当前控制周期的时长值;
参数值确定单元,用于使用预先构建的关于时间的n阶Bezier曲线的表达式,求解所述时长值对应的Bezier参数的值;其中,所述关于时间的n阶Bezier曲线表示的是Bezier参数与时长之间的曲线关系;
坐标值确定单元,用于将所述Bezier参数的值代入所述关于路径的n阶Bezier曲线的表达式中,获得位置坐标值;其中,所述关于路径的n阶Bezier曲线表示的是Bezier参数与位置坐标之间的曲线关系;
移动至坐标值单元,用于向驱动装置发送所述位置坐标值,以使所述驱动装置将所述机器人移动至所述位置坐标值表示的位置点;
依据关于路径的n阶Bezier曲线的位置特征点、预设的起始点的速度、预设的终止点的速度、预设的起始点的加速度以及预设的终止点的加速度,确定所述关于时间的n阶Bezier曲线的时间特征点;
依据所述时间特征点,构建的关于时间的n阶Bezier曲线的表达式;
其中,在n为4的情况下,关于路径的四阶Bezier曲线的表达式为:
P(u)=P0(1-u)4+4P1u(1-u)3+6P2u2(1-u)2+4P3u3(1-u)+P4u4
其中,u为Bezier参数且u∈[0,1],P(u)表示关于路径的四阶Bezier曲线中的位置坐标,P0、P1、P2、P3及P4为关于路径的四阶Bezier曲线的位置特征点;
所述关于时间的四阶Bezier曲线的表达式为:
T(u)=T0(1-u)4+4T1u(1-u)3+6T2u2(1-u)2+4T3u3(1-u)+T4u4
其中,u为Bezier参数且u∈[0,1],T(u)表示沿着所述关于路径的四阶Bezier曲线表示的平滑轨迹运动所需的时长;T0、T1、T2、T3及T4为关于时间的四阶Bezier曲线的时间特征点。
9.一种机器人运动控制装置,其特征在于,包括通信接口、处理器以及存储器,所述通信接口与驱动装置相连,所述存储器内存储有安装于所述机器人运动控制装置中的程序代码及数据,所述处理器用于调用所述存储器中的程序代码及数据以确定机器人在多个控制周期中的每个控制周期内需运动至的位置点,具体包括以下步骤:
确定从首个控制周期到当前控制周期的时长值;
使用预先构建的关于时间的n阶Bezier曲线的表达式,求解所述时长值对应的Bezier参数的值;其中,所述关于时间的n阶Bezier曲线表示的是Bezier参数与时长之间的曲线关系;
将所述Bezier参数的值代入预先构建的关于路径的n阶Bezier曲线的表达式中,获得位置坐标值;其中,所述关于路径的n阶Bezier曲线表示的是Bezier参数与位置坐标之间的曲线关系;
通过所述通信接口向驱动装置发送所述位置坐标值,以使所述驱动装置将所述机器人移动至所述位置坐标值表示的位置点;
依据关于路径的n阶Bezier曲线的位置特征点、预设的起始点的速度、预设的终止点的速度、预设的起始点的加速度以及预设的终止点的加速度,确定所述关于时间的n阶Bezier曲线的时间特征点;
依据所述时间特征点,构建的关于时间的n阶Bezier曲线的表达式;
其中,在n为4的情况下,关于路径的四阶Bezier曲线的表达式为:
P(u)=P0(1-u)4+4P1u(1-u)3+6P2u2(1-u)2+4P3u3(1-u)+P4u4
其中,u为Bezier参数且u∈[0,1],P(u)表示关于路径的四阶Bezier曲线中的位置坐标,P0、P1、P2、P3及P4为关于路径的四阶Bezier曲线的位置特征点;
所述关于时间的四阶Bezier曲线的表达式为:
T(u)=T0(1-u)4+4T1u(1-u)3+6T2u2(1-u)2+4T3u3(1-u)+T4u4
其中,u为Bezier参数且u∈[0,1],T(u)表示沿着所述关于路径的四阶Bezier曲线表示的平滑轨迹运动所需的时长;T0、T1、T2、T3及T4为关于时间的四阶Bezier曲线的时间特征点。
10.一种机器人,其特征在于,包括:机器人运动控制装置及驱动装置,其中:
所述机器人运动控制装置,用于确定从首个控制周期到当前控制周期的时长值;使用预先构建的关于时间的n阶Bezier曲线的表达式,其中,n为不小于4的整数,求解所述时长值对应的Bezier参数的值;其中,所述关于时间的n阶Bezier曲线表示的是Bezier参数与时长之间的曲线关系;将所述Bezier参数的值代入预先构建的关于路径的n阶Bezier曲线的表达式中,获得位置坐标值;其中,所述关于路径的n阶Bezier曲线表示的是Bezier参数与位置坐标之间的曲线关系;向驱动装置发送所述位置坐标值;
依据关于路径的n阶Bezier曲线的位置特征点、预设的起始点的速度、预设的终止点的速度、预设的起始点的加速度以及预设的终止点的加速度,确定所述关于时间的n阶Bezier曲线的时间特征点;
依据所述时间特征点,构建的关于时间的n阶Bezier曲线的表达式;
其中,在n为4的情况下,关于路径的四阶Bezier曲线的表达式为:
P(u)=P0(1-u)4+4P1u(1-u)3+6P2u2(1-u)2+4P3u3(1-u)+P4u4
其中,u为Bezier参数且u∈[0,1],P(u)表示关于路径的四阶Bezier曲线中的位置坐标,P0、P1、P2、P3及P4为关于路径的四阶Bezier曲线的位置特征点;
所述关于时间的四阶Bezier曲线的表达式为:
T(u)=T0(1-u)4+4T1u(1-u)3+6T2u2(1-u)2+4T3u3(1-u)+T4u4
其中,u为Bezier参数且[∈u 0,]1,T(u)表示沿着所述关于路径的四阶Bezier曲线表示的平滑轨迹运动所需的时长;T0、T1、T2、T3及T4为关于时间的四阶Bezier曲线的时间特征点;
所述驱动装置,用于驱动所述机器人移动至所述位置坐标值表示的位置点。
CN201680037942.4A 2016-12-28 2016-12-28 机器人运动控制方法及相关装置 Active CN109074067B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2016/112635 WO2018119745A1 (zh) 2016-12-28 2016-12-28 机器人运动控制方法及相关装置

Publications (2)

Publication Number Publication Date
CN109074067A CN109074067A (zh) 2018-12-21
CN109074067B true CN109074067B (zh) 2021-11-05

Family

ID=62706751

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680037942.4A Active CN109074067B (zh) 2016-12-28 2016-12-28 机器人运动控制方法及相关装置

Country Status (2)

Country Link
CN (1) CN109074067B (zh)
WO (1) WO2018119745A1 (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110135644B (zh) * 2019-05-17 2020-04-17 北京洛必德科技有限公司 一种用于目标搜索的机器人路径规划方法
CN111708327B (zh) * 2020-07-14 2023-07-11 中国石油大学(华东) 一种具有g2连续性的ph样条过渡线性路径加工方法
CN112129296B (zh) * 2020-09-25 2022-10-11 山东大学 一种机器人轨迹规划方法及系统
CN114593742B (zh) * 2020-12-04 2024-04-19 上海汽车集团股份有限公司 一种智能驾驶车辆的局部路径规划方法、装置及设备
CN112947423A (zh) * 2021-01-29 2021-06-11 深圳市银星智能科技股份有限公司 清洁路径规划方法、移动机器人及存储介质
CN113689468A (zh) * 2021-08-17 2021-11-23 珠海格力智能装备有限公司 工件加工装置的控制方法及其装置、计算机可读存储介质
CN113814976B (zh) * 2021-09-16 2023-08-15 苏州灵猴机器人有限公司 一种飞拍运动的控制方法、装置、设备和介质
CN113686345B (zh) * 2021-10-25 2022-01-25 上海仙工智能科技有限公司 多段导航路径曲率连续拼接优化处理机、方法及存储介质
CN114310921B (zh) * 2022-03-16 2022-06-10 珞石(北京)科技有限公司 一种最小曲率的直线过渡路径生成方法
CN115314534A (zh) * 2022-07-12 2022-11-08 埃夫特智能装备股份有限公司 一种基于EtherCAT通信协议的实时性优化模拟机器人系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5920679A (en) * 1997-08-25 1999-07-06 The Research Foundation Of State University Of New York Apparatus and method for computer-aided low-harmonic trajectory planning for computer-controlled machinery
CN102129710A (zh) * 2010-12-30 2011-07-20 北京像素软件科技股份有限公司 一种飞行路径模拟方法及系统
DE102010012750A1 (de) * 2010-03-25 2011-09-29 Kuka Laboratories Gmbh Verfahren zum Betreiben eines holonomen/omnidirektionalen Flurförderfahrzeugs
CN102207736A (zh) * 2010-03-31 2011-10-05 中国科学院自动化研究所 基于贝塞尔曲线的机器人路径规划方法及装置
CN103180791A (zh) * 2010-10-13 2013-06-26 欧姆龙株式会社 控制装置、控制系统及控制方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2280241A3 (en) * 2009-07-30 2017-08-23 QinetiQ Limited Vehicle control

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5920679A (en) * 1997-08-25 1999-07-06 The Research Foundation Of State University Of New York Apparatus and method for computer-aided low-harmonic trajectory planning for computer-controlled machinery
DE102010012750A1 (de) * 2010-03-25 2011-09-29 Kuka Laboratories Gmbh Verfahren zum Betreiben eines holonomen/omnidirektionalen Flurförderfahrzeugs
CN102207736A (zh) * 2010-03-31 2011-10-05 中国科学院自动化研究所 基于贝塞尔曲线的机器人路径规划方法及装置
CN103180791A (zh) * 2010-10-13 2013-06-26 欧姆龙株式会社 控制装置、控制系统及控制方法
CN102129710A (zh) * 2010-12-30 2011-07-20 北京像素软件科技股份有限公司 一种飞行路径模拟方法及系统

Non-Patent Citations (8)

* Cited by examiner, † Cited by third party
Title
A path generation for automated vehicle based on Bezier curve and via-points;Kuniaki Kawabata 等;《Robotics and Autonomous Systems》;20150814;第74卷;第243-252页 *
Bezier 分形曲线的细分叠加生成方法;王睿 等;《计算机工程与应用》;20071231;第39-43页 *
Path planning algorithm for mobile robot obstacle avoidance adopting Bezier curve based on Genetic Algorithm;Yang Linquan 等;《2008 Chinese Control and Decision Conference》;IEEE;20080812;第3268-3289页 *
关于Bezier-Bernstein曲线及其矩阵形式;王乐琳;《重庆建筑工程学院学报》;19890930;第11卷(第3期);第44-49页 *
基于四阶贝塞尔曲线的无人车可行轨迹规划;陈成 等;《自动化学报》;20150331;第41卷(第3期);第486-496页 *
基于贝塞尔曲线的机器人非时间轨迹跟踪方法;余伶俐 等;《仪器仪表学报》;20160731;第37卷(第7期);第1564-1572页 *
广义Bernstein-Bezier多项式的若干性质;程海来 等;《工科数学》;19950630;第11卷(第2期);第98-101页 *
广义Bernstein-Bezier多项式的逼近阶;李平 等;《中国科学技术大学学报》;19850331;第15卷(第1期);第15-18页 *

Also Published As

Publication number Publication date
CN109074067A (zh) 2018-12-21
WO2018119745A1 (zh) 2018-07-05

Similar Documents

Publication Publication Date Title
CN109074067B (zh) 机器人运动控制方法及相关装置
CN106647282B (zh) 一种考虑末端运动误差的六自由度机器人轨迹规划方法
CN106863306B (zh) 一种机器人关节空间平滑轨迹规划方法
CN108340351B (zh) 一种机器人示教装置、方法及示教机器人
JP5426722B2 (ja) ロボットプログラム変更装置
EP3486612B1 (en) Method for generating a trajectory
CN103676787B (zh) 一种用于运动控制系统的圆心模式空间圆弧插补方法
CN108513636B (zh) 机器人运动控制方法及相关装置
WO2018209864A1 (zh) 移动控制方法、装置、机器人及存储介质
CN114466730B (zh) 用于使机器人优化速度同时保持对加速度和加加速度的限制的运动规划
CN111796558B (zh) 多轴联动实时动态前瞻轨迹规划方法、装置及存储介质
JP2009053926A (ja) 経路計画装置及び経路計画方法
KR100743143B1 (ko) 로봇의 연속 모션 처리를 위한 연결경로 계획 장치
WO2015083513A1 (en) Method for controlling an operation of a laser processing machine and controller for controlling an operation of a first actuator of a laser processing machine
CN111604905A (zh) 关节轨迹规划的方法、装置、系统及存储介质
JP2016055404A (ja) 軌道生成方法、軌道生成装置、ロボット装置、プログラム及び記録媒体
CN103454979B (zh) 一种封装成PLCOpen指令的变速曲线圆弧快速插补方法
JP6360301B2 (ja) 動作プログラム作成方法およびロボットの制御方法
CN112965443A (zh) 一种裁床拐角轨迹跟踪高精度插值控制方法
CN113618741B (zh) 机器人关节位姿优化方法、机器人控制方法和机器人
CN111195913A (zh) 机器人处理方法、装置及工业机器人
CN104865898A (zh) 数控机床中处理微小路径段的方法及设备
JP2007216232A5 (zh)
JP2014076498A (ja) 多関節ロボット及び半導体ウェハ搬送装置
CN113276116B (zh) 一种误差可控的机器人轨迹同步过渡方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant