掌桥专利:专业的专利平台
掌桥专利
首页

姿态样条的构造方法、装置及可读存储介质

文献发布时间:2024-04-18 19:57:31


姿态样条的构造方法、装置及可读存储介质

技术领域

本申请涉及机器人技术领域,特别是涉及一种姿态样条的构造方法、装置及可读存储介质。

背景技术

对于机器人来说,可以让机器人的工具中心点途径多个预先设置的示教点移动。这些示教点之间可以用PTP指令、line指定等运动。然而本申请的发明人发现,在经过设置的示教点时,机器人末端执行器姿态因为缺乏连续性,会发生突变而导致机器人运动不平滑。

发明内容

本申请提供一种姿态样条的构造方法、装置及可读存储介质,能够保证机器人的平滑运动。

本申请实施例第一方面提供一种姿态样条的构造方法,所述方法包括:生成目标样条曲线的球面表达式为:

本申请实施例第二方面提供一种构造装置,所述构造装置包括:元生成模块,用于生成目标样条曲线的球面表达式为:

本申请实施例第三方面提供一种构造装置,所述构造装置包括处理器、存储器以及通信电路,所述处理器分别耦接所述存储器、所述通信电路,所述存储器中存储有程序数据,所述处理器通过执行所述存储器内的所述程序数据以实现上述方法中的步骤。

本申请实施例第四方面提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序能够被处理器执行以实现上述方法中的步骤。

有益效果是:本申请给定相邻两个点的姿态之后,可以根据这两个点的姿态求取另一个点的姿态,使得该三个点构成连续的三个点,从而相比较于通过给定的两个点的姿态求取的样条曲线,本申请通过三个点的姿态求取的样条曲线更加平滑,从而可以保证机器人的平滑运行。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图,其中:

图1是现有技术中路径样条的示意图;

图2是本申请姿态样条的构造方法一实施方式的流程示意图;

图3是迭代之前第一姿态点和第二姿态点的示意图;

图4是迭代之后第一姿态点、第二姿态点以及第三姿态点的示意图;

图5是本申请构造装置一实施方式的结构示意图;

图6是本申请构造装置另一实施方式的结构示意图;

图7是本申请计算机可读存储介质一实施方式的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。

需要说明的是,本申请中的术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。

首先说明的是,本申请的样条曲线可以是Bézier曲线,也可以是B样条曲线,为了便于说明,本申请下面主要以样条曲线为Bézier曲线进行说明,当样条曲线是B样条曲线时,方案以此类推。

其中,对于三维空间的Bézier曲线,其曲线方程为:

其中,p

在介绍本申请的方案之前,本申请先做如下推导:

结合图1,对于一般曲线上目标点的位置,可以通过起点P0的位置加上速度乘单位时间,因此Pt点的位置为:

P(s)=P

从而得到:

其中,α

通过上面的推导,针对样条曲线,也设置对应的α

同理,

当样条曲线为Bézier曲线(贝塞尔曲线)时,B

其中,

进一步地,参考四元数的插补,可以将上述的曲线公式转化为S3球面(S3球面指的是四维空间的三维球面)的表达式为:

其中,上述的表达式为样条曲线的最终球面表达式。

下面介绍本申请的方案,参阅图2,本申请姿态样条的构造方法包括:

S110:生成目标样条曲线的球面表达式为:

其中,目标样条曲线可以是Bézier曲线(贝塞尔曲线),也可以是B样条曲线。本申请下面主要以目标样条曲线为Bézier曲线进行介绍,当目标样条曲线是B样条曲线时的情况,可以参照目标样条曲线是Bézier曲线时的做法以此类推。

其中,生成目标样条曲线的球面表达式的具体过程可参见上述推导过程,在此不做赘述。

S120:根据球面表达式,生成第一表达式:

具体地,给定三个控制点的姿态,分别为q

其中,令Q

由于s=0.5是在q

其中,对于三个控制点的二次Bézier曲线(二次贝塞尔曲线),满足如下条件:

B

B

因此当s=0.5时,

因此

从而可以得到如下表达式:

为了便于说明,将该表达式定义为第一表达式。

S130:根据第一表达式,生成求取q

具体地,在一应用场景中,将上述第一表达式

将得到的最终表达式

当然在其他应用场景中,也可以进行其他推导,只要自变量包括q

S140:获取第一姿态点的第一姿态,以及第二姿态点的第二姿态。

具体地,给定第一姿态点的第一姿态为q

S150:设置第一辅助点的第一辅助姿态等于第一姿态,以及设置Q

具体地,构造第一辅助点的第一辅助姿态q

S160:将第一辅助姿态作为q

具体地,按照如下公式确定第一目标姿态

S170:将第一姿态点的第一姿态更新为第一目标姿态。

具体地,按照如下公式更新第一姿态q

S180:将第一姿态作为q

具体地,计算

S190:判断第二目标姿态与Q

若判断为是,则进入步骤S200,否则返回执行步骤S160。

具体地,判断

其中,如果

S200:将第一姿态作为第三姿态点的第三姿态。

具体地,在迭代过程停止后,输出最终的q

S210:将第三姿态点的第三姿态、第一辅助点的第一辅助姿态以及第二姿态点的第二姿态作为三个连续的姿态点的姿态代入球面表达式,确定经过第一姿态点以及第二姿态点的样条曲线。

具体地,结合图3,在迭代开始之前,给定第一姿态点的第一姿态q

在一应用场景中,步骤S210具体包括,将最终的q

其中,q

其中,在得到经过第一姿态点与第二姿态点的样条曲线之后,就可以去取该样条曲线上每个点的姿态。

其中,样条曲线可以保证机器人运动姿态的平滑,通常用于规划机器人的运动,以便机器人能够在给定的起始和目标姿态之间以平滑、连续的运动,而通过本申请的方法确定的样条曲面在具备这些优点的同时,还能保证求取的样条曲线更加平滑,从而可以保证机器人更加平滑地运行。

参阅图5,图5是本申请构造装置一实施方式的结构示意图。该构造装置200包括处理器210以及存储器220,处理器210耦接存储器220,存储器220中存储有程序数据,处理器210通过执行存储器220内的程序数据以实现上述任一项实施方式方法中的步骤,其中详细的步骤可参见上述实施方式,在此不再赘述。

其中,构造装置200可以是机器人控制柜、电脑、手机等任一项具有算法处理能力的装置,在此不做限制。

参阅图6,图6是本申请构造装置另一实施方式的结构示意图,该构造装置20包括元生成模块201、第一生成模块202、第二生成模块203、获取模块204、设置模块205、第一代入模块206、更新模块207、第二代入模块208、迭代模块209以及曲线模块210。

元生成模块201,用于生成目标样条曲线的球面表达式为:

第一生成模块202与元生成模块201连接,用于根据球面表达式,生成第一表达式:

第二生成模块203与第一生成模块202连接,用于根据第一表达式,生成求取q

获取模块204与第二生成模块203连接,用于获取第一姿态点的第一姿态,以及第二姿态点的第二姿态。

设置模块205与获取模块204连接,用于设置第一辅助点的第一辅助姿态等于第一姿态,以及设置Q

第一代入模块206与设置模块205连接,用于将第一辅助姿态作为q

更新模块207与第一代入模块206连接,用于将第一姿态点的第一姿态更新为第一目标姿态。

第二代入模块208与更新模块207连接,用于将第一姿态作为q

迭代模块209与第二代入模块208连接,用于响应于第二目标姿态与Q

曲线模块210与迭代模块209连接,用于将第三姿态点的第三姿态、第一辅助点的第一辅助姿态以及第二姿态点的第二姿态作为三个连续的姿态点的姿态代入球面表达式,确定经过第一姿态点以及第二姿态点的样条曲线。

其中,构造装置20在工作时执行上述任一项方法中的步骤,详细的步骤可参见上述相关内容,在此不再赘述。

其中,构造装置20可以是手机、电脑、机器人控制柜等任一项具有算法处理能力的装置,在此不做限制。

在一实施方式中,目标样条曲线为贝塞尔曲线,其中,

在一实施方式中,第二生成模块203具体用于:按照如下公式确定第二表达式:

在一实施方式中,曲线模块210具体用于:按照如下公式,确定经过第一姿态点以及第二姿态点的样条曲线:

其中,q

参阅图7,图7是本申请计算机可读存储介质一实施方式的结构示意图。该计算机可读存储介质400存储有计算机程序410,计算机程序410能够被处理器执行以实现上述任一项方法中的步骤。

其中,计算机可读存储介质400具体可以为U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等可以存储计算机程序410的装置,或者也可以为存储有该计算机程序410的服务器,该服务器可将存储的计算机程序410发送给其他设备运行,或者也可以自运行该存储的计算机程序410。

以上所述仅为本申请的实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本申请的专利保护范围内。

技术分类

06120116458956