一种轨迹插补方法、装置、计算机设备和存储介质制造方法及图纸

技术编号:38941249 阅读:17 留言:0更新日期:2023-09-25 09:40
本申请实施例公开了一种轨迹插补方法,将用于指导机器人的行进轨迹的曲线分割为多个第一级子曲线,获得多个第一级分割点作为机器人的多个行进参数;对每个第一级子曲线进行积分,获得每个第一级子曲线的曲线长度;进而确定行进轨迹的轨迹点;若第一差值大于或等于预设弧长精度值,将第一级子曲线分割为多个第二级子曲线,甚至继续分割为多个第三级子曲线,直至第n级子曲线的曲线长度的总长度与第n

【技术实现步骤摘要】
一种轨迹插补方法、装置、计算机设备和存储介质


[0001]本申请涉及机器人
,特别是涉及一种轨迹插补方法、装置、计算机设备和存储介质。

技术介绍

[0002]在机器人自动行进的过程中,需要保证速度与加速度连续,这也就要求机器人具有平滑的行进轨迹。当机器人非直线行进时,需要在对机器人的行进轨迹进行轨迹插补时,根据曲线为机器人生成一条合适的行进路线。
[0003]相关技术的轨迹插补方法为先得到用于目标机器人轨迹插补的曲线,进而在曲线上根据目标机器人的行进轨迹进行等距分割以得到多个分割点,计算相邻分割点之间的弧长,最后根据分割点和弧长拟合曲线从而实现目标机器人行进轨迹的轨迹插补。
[0004]但是,等距分割无法预知合适的分割间距,存在分割间距过大或过小的问题,无法获取较优的分割点,容易影响弧长计算,进而导致轨迹插补的精度下降,影响目标机器人行进中速度与加速度的连续性。

技术实现思路

[0005]为了解决上述技术问题,本申请提供了一种轨迹插补方法、装置、计算机设备和存储介质。
[0006]本申请实施例公开了如下技术方案:
[0007]第一方面,本申请实施例公开了一种轨迹插补方法,所述方法应用于机器人,所述方法包括:
[0008]将用于指导所述机器人的行进轨迹的曲线分割为多个第一级子曲线,获得多个第一级分割点作为所述机器人的多个行进参数;
[0009]根据所述曲线的第一表达式和每个所述第一级子曲线的两个端点对应的两个行进参数,以对每个所述第一级子曲线积分的方式计算每个所述第一级子曲线的曲线长度;
[0010]若多个所述第一级子曲线的曲线长度的总长度与所述曲线的总长度之间的第一差值小于预设弧长精度值,根据多个所述第一级子曲线的曲线长度与所述曲线的起点坐标,确定所述行进轨迹的轨迹点;
[0011]若所述第一差值大于或等于所述预设弧长精度值,针对每个所述第一级子曲线,将所述第一级子曲线分割为多个第二级子曲线,获得多个第二级分割点作为多个所述行进参数;
[0012]根据所述曲线的第一表达式和每个所述第二级子曲线的两个端点对应的两个行进参数,以对每个所述第二级子曲线积分的方式计算每个所述第二级子曲线的曲线长度;
[0013]若多个所述第二级子曲线的曲线长度的总长度与所述第一级子曲线的曲线长度之间的第二差值小于所述预设弧长精度值,根据多个所述第二级子曲线的曲线长度与所述曲线的起点坐标,确定所述行进轨迹的轨迹点;
[0014]若所述第二差值大于或等于所述预设弧长精度值,将所述第二子曲线继续分割为多个第三级子曲线,直至第n级子曲线的曲线长度的总长度与第n

1级子曲线的曲线长度之间的的差值小于所述预设弧长精度值,n为正整数,n≥3;
[0015]根据多个所述第一级子曲线的曲线长度、多个所述第n级子曲线的曲线长度,以及所述曲线的起点坐标,确定所述行进轨迹的轨迹点。
[0016]可选的,所述方法还包括:
[0017]对所述第一表达式进行积分运算,获得第三表达式;
[0018]对所述第三表达式进行简化,获得第二表达式;所述第二表达式的复杂度小于所述第一表达式的复杂度;
[0019]所述根据所述曲线的第一表达式和每个所述第一级子曲线的两个端点对应的两个行进参数对每个所述第一级子曲线进行积分,获得每个所述第一级子曲线的曲线长度,包括:
[0020]根据所述第二表达式和每个所述第一级子曲线的两个端点对应的两个行进参数对每个所述第一级子曲线进行积分,获得每个所述第一级子曲线的曲线长度;
[0021]所述根据所述曲线的第一表达式和每个所述第二级子曲线的两个端点对应的两个行进参数对每个所述第二级子曲线进行积分,获得每个所述第二级子曲线的曲线长度,包括:
[0022]根据所述第二表达式和每个所述第二级子曲线的两个端点对应的两个行进参数对每个所述第二级子曲线进行积分,获得每个所述第二级子曲线的曲线长度。
[0023]可选的,所述方法还包括:
[0024]获取待插补轨迹的待插补长度;
[0025]根据所述待插补长度,确定所述曲线上所述待插补轨迹相邻的两个轨迹点间的曲线区间;
[0026]根据所述曲线上所述机器人的行进参数与所述机器人的行进距离的对应关系,计算所述机器人在所述曲线上行进所述待插补长度所需的第一行进参数;所述行进距离是指从所述曲线起点确定的;
[0027]根据所述对应关系与所述两个轨迹点,计算所述两个轨迹点间的曲线轨迹长度与所述机器人行进所述曲线轨迹长度所需的第二行进参数;
[0028]根据所述对应关系、所述曲线轨迹长度、所述第一行进参数、所述第二行进参数以及所述起点坐标,将所述待插补轨迹插补到所述曲线上。
[0029]可选的,所述对应关系的建立步骤,包括:
[0030]根据多个所述第n级子曲线的曲线长度,计算多个所述第n级子曲线对应的第n级分割点与所述起点间的多个曲线长度作为所述机器人的多个行进距离;
[0031]根据多个所述第n级分割点所对应的多个行进参数,与所述机器人的多个行进距离,建立所述对应关系。
[0032]可选的,所述根据所述待插补长度,确定所述曲线上所述待插补轨迹相邻的两个轨迹点间的曲线区间,包括:
[0033]若所述待插补轨迹的待插补长度和对应的历史插补轨迹的待插补长度的总长度小于所述曲线的总长度,确定所述曲线上所述待插补轨迹相邻的两个轨迹点间的曲线区
间。
[0034]可选的,在将用于指导所述机器人的行进轨迹的曲线分割为多个第一级子曲线,获得多个第一级分割点作为所述机器人的多个行进参数之前,所述方法还包括:
[0035]将所述曲线分割为多个预设曲线;
[0036]将每个所述预设曲线作为所述曲线执行所述轨迹插补方法。
[0037]第二方面,本申请实施例公开了一种轨迹插补装置,其特征在于,所述装置包括:
[0038]第一分割单元,用于将用于指导所述机器人的行进轨迹的曲线分割为多个第一级子曲线,获得多个第一级分割点作为所述机器人的多个行进参数;
[0039]第一积分单元,用于根据所述曲线的第一表达式和每个所述第一级子曲线的两个端点对应的两个行进参数,以对每个所述第一级子曲线积分的方式计算每个所述第一级子曲线的曲线长度;
[0040]第一轨迹点确定单元,用于若多个所述第一级子曲线的曲线长度的总长度与所述曲线的总长度之间的第一差值小于预设弧长精度值,根据多个所述第一级子曲线的曲线长度与所述曲线的起点坐标,确定所述行进轨迹的轨迹点;
[0041]第二分割单元,用于若所述第一差值大于或等于所述预设弧长精度值,针对每个所述第一级子曲线,将所述第一级子曲线分割为多个第二级子曲线,获得多个第二级分割点作为多个所述行进参数;
[0042]第二积分单元,用于根据所述曲线的第一表达式和每个所述第二级子曲线的两个端点对应的两个行进参数,以对本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种轨迹插补方法,其特征在于,所述方法应用于机器人,所述方法包括:将用于指导所述机器人的行进轨迹的曲线分割为多个第一级子曲线,获得多个第一级分割点作为所述机器人的多个行进参数;根据所述曲线的第一表达式和每个所述第一级子曲线的两个端点对应的两个行进参数,以对每个所述第一级子曲线积分的方式计算每个所述第一级子曲线的曲线长度;若多个所述第一级子曲线的曲线长度的总长度与所述曲线的总长度之间的第一差值小于预设弧长精度值,根据多个所述第一级子曲线的曲线长度与所述曲线的起点坐标,确定所述行进轨迹的轨迹点;若所述第一差值大于或等于所述预设弧长精度值,针对每个所述第一级子曲线,将所述第一级子曲线分割为多个第二级子曲线,获得多个第二级分割点作为多个所述行进参数;根据所述曲线的第一表达式和每个所述第二级子曲线的两个端点对应的两个行进参数,以对每个所述第二级子曲线积分的方式计算每个所述第二级子曲线的曲线长度;若多个所述第二级子曲线的曲线长度的总长度与所述第一级子曲线的曲线长度之间的第二差值小于所述预设弧长精度值,根据多个所述第二级子曲线的曲线长度与所述曲线的起点坐标,确定所述行进轨迹的轨迹点;若所述第二差值大于或等于所述预设弧长精度值,将所述第二子曲线继续分割为多个第三级子曲线,直至第n级子曲线的曲线长度的总长度与第n

1级子曲线的曲线长度之间的的差值小于所述预设弧长精度值,n为正整数,n≥3;根据多个所述第一级子曲线的曲线长度、多个所述第n级子曲线的曲线长度,以及所述曲线的起点坐标,确定所述行进轨迹的轨迹点。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:对所述第一表达式进行积分运算,获得第三表达式;对所述第三表达式进行简化,获得第二表达式;所述第二表达式的复杂度小于所述第一表达式的复杂度;所述根据所述曲线的第一表达式和每个所述第一级子曲线的两个端点对应的两个行进参数对每个所述第一级子曲线进行积分,获得每个所述第一级子曲线的曲线长度,包括:根据所述第二表达式和每个所述第一级子曲线的两个端点对应的两个行进参数对每个所述第一级子曲线进行积分,获得每个所述第一级子曲线的曲线长度;所述根据所述曲线的第一表达式和每个所述第二级子曲线的两个端点对应的两个行进参数对每个所述第二级子曲线进行积分,获得每个所述第二级子曲线的曲线长度,包括:根据所述第二表达式和每个所述第二级子曲线的两个端点对应的两个行进参数对每个所述第二级子曲线进行积分,获得每个所述第二级子曲线的曲线长度。3.根据权利要求1所述的方法,其特征在于,所述方法还包括:获取待插补轨迹的待插补长度;根据所述待插补长度,确定所述曲线上所述待插补轨迹相邻的两个轨迹点间的曲线区间;根据所述曲线上所述机器人的行进参数与所述机器人的行进距离的对应关系,计算所述机器人在所述曲线上行进所述待插补长度所需的第一行进参数;所述行进距离是指从所
述曲线起点确定的;根据所述对应关系与所述两个轨迹点,计算所述两个轨迹点间的曲线轨迹长度与所述机器人行进所述曲线轨迹长度所需的第二行进参数;根据所述对应关系、所述曲线轨迹长度、所述第一行进参数、所述第二行进参数以及所述起点坐标,将所述待插补轨迹插补到所述曲线上。4.根据权利要求3所述的方法,其特征在于,所述对应关系的建立步骤,包括:根据多个所述第n级子曲线的曲线长度,计算多个所述第n级子曲线对应的第n级分割点与所述起点间的多个曲线长度作为所述机器人的多个行进距离;根据多个所述第n级分割点所对应的多个行进参数,与所述机器人的多个行进距离,建立所述对应关系。5.根据权利要求3...

【专利技术属性】
技术研发人员:魏洪兴崔元洋赵锦强刘刚
申请(专利权)人:遨博北京智能科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1