一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

机器人螺旋轨迹控制方法、装置、存储介质及电子设备与流程

2022-05-17 22:29:47 来源:中国专利 TAG:


1.本技术涉及机器人领域,具体而言,涉及一种机器人螺旋轨迹控制方法、装置、存储介质及电子设备。


背景技术:

2.随着工业发展,机器人被广泛应用于各个领域。例如,机械臂类的机器人被用于抓取、搬运以及打磨产品。但是,随着机器人应用范围的扩展,关节运动、笛卡尔空间直线圆弧运动等基本运动逐渐难以满足打磨、新零售等行业的要求,螺旋线运动成为机器人轨迹规划面临的挑战。
3.因此,如何快速、准确的完成机器人轨迹规划,成为了本领域技术人员所关注的重点。


技术实现要素:

4.本技术的目的在于提供一种机器人螺旋轨迹控制方法、装置、存储介质及电子设备,以至少部分改善上述问题。
5.为了实现上述目的,本技术实施例采用的技术方案如下:
6.第一方面,本技术实施例提供一种机器人螺旋轨迹控制方法,所述方法包括:
7.基于螺旋线参数获取螺旋线位置规划集合和螺旋线姿态规划集合,其中,所述螺旋线位置规划集合包括在机器人末端旋转至目标角度时在目标坐标系下的坐标信息,所述螺旋线姿态规划集合包括在机器人末端旋转至目标角度时在目标坐标系下的姿态信息,每圈螺旋线包含至少3个所述目标角度,任意相邻的两个所述目标角度之间的间隔弧度为所述机器人末端在一个控制周期内的旋转幅度;
8.基于所述螺旋线位置规划集合和所述螺旋线姿态规划集合,进行逆运动学解算,以获得每一个控制周期对应的插补指令,其中,所述插补指令包括所述机器人各个关节在所述控制周期内的位置变化。
9.第二方面,本技术实施例提供一种机器人螺旋轨迹控制装置,所述装置包括:
10.规划单元,用于基于螺旋线参数获取螺旋线位置规划集合和螺旋线姿态规划集合,其中,所述螺旋线位置规划集合包括在机器人末端旋转至目标角度时在目标坐标系下的坐标信息,所述螺旋线姿态规划集合包括在机器人末端旋转至目标角度时在目标坐标系下的姿态信息,每圈螺旋线包含至少3个所述目标角度,任意相邻的两个所述目标角度之间的间隔弧度为所述机器人末端在一个控制周期内的旋转幅度;
11.处理单元,用于基于所述螺旋线位置规划集合和所述螺旋线姿态规划集合,进行逆运动学解算,以获得每一个控制周期对应的插补指令,其中,所述插补指令包括所述机器人各个关节在所述控制周期内的位置变化。
12.第三方面,本技术实施例提供一种存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述的方法。
13.第四方面,本技术实施例提供一种电子设备,所述电子设备包括:处理器和存储器,所述存储器用于存储一个或多个程序;当所述一个或多个程序被所述处理器执行时,实现上述的方法。
14.相对于现有技术,本技术实施例所提供的一种机器人螺旋轨迹控制方法、装置、存储介质及电子设备,基于螺旋线参数获取螺旋线位置规划集合和螺旋线姿态规划集合,其中,螺旋线位置规划集合包括在机器人末端旋转至目标角度时在目标坐标系下的坐标信息,螺旋线姿态规划集合包括在机器人末端旋转至目标角度时在目标坐标系下的姿态信息,每圈螺旋线包含至少3个目标角度,任意相邻的两个目标角度之间的间隔弧度为机器人末端在一个控制周期内的旋转幅度;基于螺旋线位置规划集合和螺旋线姿态规划集合,进行逆运动学解算,以获得每一个控制周期对应的插补指令,其中,插补指令包括机器人各个关节在控制周期内的位置变化。
15.为使本技术的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
16.为了更清楚地说明本技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它相关的附图。
17.图1为本技术实施例提供的一种电子设备的结构示意图;
18.图2为本技术实施例提供的机器人螺旋轨迹控制方法的流程示意图;
19.图3为本技术实施例提供的s101的子步骤示意图;
20.图4为本技术实施例提供指令点示意图;
21.图5为本技术实施例提供的s102的子步骤示意图;
22.图6为本技术实施例提供的机器人螺旋轨迹控制方法的流程示意图之一;
23.图7为本技术实施例提供的空间螺旋线示意图;
24.图8为本技术实施例提供的机器人螺旋轨迹控制装置的单元示意图。
25.图中:10-处理器;11-存储器;12-总线;13-通信接口;201-规划单元;202-处理单元。
具体实施方式
26.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本技术实施例的组件可以以各种不同的配置来布置和设计。
27.因此,以下对在附图中提供的本技术的实施例的详细描述并非旨在限制要求保护的本技术的范围,而是仅仅表示本技术的选定实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
28.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本技术的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
29.需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
30.在本技术的描述中,需要说明的是,术语“上”、“下”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该申请产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本技术和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本技术的限制。
31.在本技术的描述中,还需要说明的是,除非另有明确的规定和限定,术语“设置”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本技术中的具体含义。
32.下面结合附图,对本技术的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
33.在一种可能的实现方式中,可以建立螺旋平面坐标系,根据指定的螺旋参数确定螺旋线轨迹,再将螺旋轨迹离散化,对离散后的路径重新进行速度规划和拟合,实现可控速度的机器人平面螺旋线打磨运动。但是该方式存在以下缺点:螺旋轨迹生成过程复杂,需要经过离散化、重新速度规划、拟合、坐标变换等步骤;螺旋轨迹只能生成平面螺旋线轨迹;螺旋轨迹只对机器人笛卡尔空间位置进行了规划,未涉及姿态部分规划。
34.本技术实施例提供了一种电子设备,可以是电脑、服务器或者包含控制系统的机器人。请参照图1,电子设备的结构示意图。电子设备包括处理器10、存储器11、总线12。处理器10、存储器11通过总线12连接,处理器10用于执行存储器11中存储的可执行模块,例如计算机程序。
35.处理器10可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,机器人螺旋轨迹控制方法的各步骤可以通过处理器10中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器10可以是通用处理器,包括中央处理器(central processing unit,简称cpu)、网络处理器(network processor,简称np)等;还可以是数字信号处理器(digital signal processor,简称dsp)、专用集成电路(application specific integrated circuit,简称asic)、现场可编程门阵列(field-programmable gate array,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
36.存储器11可能包含高速随机存取存储器(ram:random access memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。
37.总线12可以是isa(industry standard architecture)总线、pci(peripheral component interconnect)总线或eisa(extended industry standard architecture)总线等。图1中仅用一个双向箭头表示,但并不表示仅有一根总线12或一种类型的总线12。
38.存储器11用于存储程序,例如机器人螺旋轨迹控制装置对应的程序。机器人螺旋轨迹控制装置包括至少一个可以软件或固件(firmware)的形式存储于存储器11中或固化在电子设备的操作系统(operating system,os)中的软件功能模块。处理器10在接收到执行指令后,执行所述程序以实现机器人螺旋轨迹控制方法。
39.可能地,本技术实施例提供的电子设备还包括通信接口13。通信接口13通过总线与处理器10连接。在一种可能的实现方式中,接收其他终端,例如示教机传输的参数信息或指令信息。
40.应当理解的是,图1所示的结构仅为电子设备的部分的结构示意图,电子设备还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。
41.本技术实施例提供的一种机器人螺旋轨迹控制方法,可以但不限于应用于图1所示的电子设备,具体的流程,请参考图2,机器人螺旋轨迹控制方法包括:s101和s102,具体阐述如下。
42.s101,基于螺旋线参数获取螺旋线位置规划集合和螺旋线姿态规划集合。
43.其中,螺旋线位置规划集合包括在机器人末端旋转至目标角度时在目标坐标系下的坐标信息,螺旋线姿态规划集合包括在机器人末端旋转至目标角度时在目标坐标系下的姿态信息,每圈螺旋线包含至少3个目标角度,任意相邻的两个目标角度之间的间隔弧度为机器人末端在一个控制周期内的旋转幅度。
44.本技术实施例中的机器人可以为六轴机械臂,机器人末端可以为六轴机械臂中的加工臂。该加工臂可以对工件进行打磨。目标坐标系为世界坐标系或机器人的基坐标系。
45.应理解,每一个目标角度对应一个坐标。每圈螺旋线表示机器人末端旋转360度,每圈螺旋线对应的360度内,至少需要3个目标角度,即对应3个定位点,从而可以进行逆运动学解算。
46.本技术实施例中,基于螺旋线参数直接获得螺旋线位置规划集合和螺旋线姿态规划集合,不需要经过离散化、重新速度规划、拟合、坐标变换等步骤,也不需要经过坐标变换即可得到螺旋线轨迹,可极大简化规划过程复杂度,方便快速高效地获得运动轨迹。
47.同时还因为螺旋线姿态规划集合包含机器人末端旋转至目标角度时在目标坐标系下的姿态信息,可以实现姿态的自由控制。
48.s102,基于螺旋线位置规划集合和螺旋线姿态规划集合,进行逆运动学解算,以获得每一个控制周期对应的插补指令。
49.其中,插补指令包括机器人各个关节在控制周期内的位置变化。
50.应理解,机器人可以在对应的周期内执行插补指令,从而控制机器人各个关节在控制周期内的位置变化,以使机器人按照预设的螺旋线和姿态进行运动。
51.综上所述,本技术实施例提供了一种机器人螺旋轨迹控制方法,基于螺旋线参数获取螺旋线位置规划集合和螺旋线姿态规划集合,其中,螺旋线位置规划集合包括在机器人末端旋转至目标角度时在目标坐标系下的坐标信息,螺旋线姿态规划集合包括在机器人
末端旋转至目标角度时在目标坐标系下的姿态信息,每圈螺旋线包含至少3个目标角度,任意相邻的两个目标角度之间的间隔弧度为机器人末端在一个控制周期内的旋转幅度;基于螺旋线位置规划集合和螺旋线姿态规划集合,进行逆运动学解算,以获得每一个控制周期对应的插补指令,其中,插补指令包括机器人各个关节在控制周期内的位置变化。
52.在一种可能的实现方式中,螺旋线参数包括螺旋圈数、螺旋半径总增量、螺旋转轴方向总增量、姿态修正角以及初始弧段中的至少3个指令点的坐标信息。需要说明的是,螺旋半径总增量也可以替换为螺旋半径单圈增量,螺旋半径总增量为螺旋半径单圈增量与螺旋圈数的积。在此情况下,对于图2中s101的内容,本技术实施例还提供了一种可能地实现方式,请参考图3,s101包括:s101-1和s101-2,具体阐述如下。
53.s101-1,基于螺旋圈数、螺旋半径总增量、螺旋转轴方向总增量以及初始弧段中的至少3个指令点的坐标信息获取螺旋线位置规划集合。
54.可选地,依据以下算式获取螺旋线位置规划集合:
[0055][0056]
其中,θ表征目标角度,表征机器人末端旋转至目标角度时在目标坐标系下的坐标信息,n表征螺旋圈数,dr表征螺旋半径总增量,dx表征螺旋转轴方向总增量,表征目标角度所在螺旋线的起始位置的坐标信息,表征螺旋转轴方向向量,螺旋转轴方向向量为3个指令点构建的平面的法向量,表征螺旋半径方向向量。
[0057]
请参考图4,当指令点的数量为3时,3个指令点例如为图中的点1、点2以及点3,分别对应做坐标p1(x1,y1,z1)、p2(x2,y2,z2)以及p1(x3,y3,z3)。需要说明的是,3个指令点分布包括但不限于图4所示形式。
[0058]
可选地,可以根据3个指令点p1(x1,y1,z1)、p2(x2,y2,z2)以及p1(x3,y3,z3),确定初始弧段的圆心((x0,y0,z0)和半径,然后结合目标角度得到圆弧上目标坐标信息可以当末端位于初始弧段上任意一点时,机器人末端的坐标信息。
[0059]
在一种可能的实现方式中,当指令点的数量多于3点时,可以使用最小二乘法拟合确定初始弧段的圆心和半径,然后结合目标角度得到圆弧上目标坐标信息可选方法包括对同一指令点进行多次示教后取平均值,也包括使用其他拟合方法确定初始弧段,如高阶多项式拟合、机器学习方法等。
[0060]
可选地,螺旋半径方向向量表达式如下:
[0061][0062][0063]
在一种可能的实现方式中,当dr等于0,具体表达式如下:
[0064]
[0065]
此时,只有螺旋转轴方向位置变化,螺旋半径方向位置保持不变,此时的轨迹是半径不变的空间螺旋线轨迹。
[0066]
在一种可能的实现方式中,当dx等于0,具体表达式如下:
[0067][0068]
此时,只有螺旋半径方向位置变化,螺旋转轴方向位置保持不变,此时的轨迹是平面螺旋线轨迹。
[0069]
本技术方案中,通过螺旋参数配置既可得到空间螺旋线轨迹,又可得到平面螺旋线轨迹。
[0070]
s101-2,基于螺旋圈数和姿态修正角获取螺旋线姿态规划集合。
[0071]
可选地,依据以下算式获取螺旋线姿态规划集合:
[0072][0073]
其中,θ表征目标角度,表征机器人末端旋转至目标角度时在目标坐标系下的姿态信息,n表征螺旋圈数,表征目标角度所在螺旋线的起始位置的姿态信息,表征姿态修正角(r
x
,ry,rz),姿态修正角为初始姿态与目标姿态之间的夹角,目标姿态为运动完成时的姿态。
[0074]
应理解,通过示教器任意设置,通过修改姿态修正角得到任意期望姿态,实现姿态的自由控制。螺旋线的起始位置为由给定3个指令点的坐标信息确定的圆弧。
[0075]
在图2的基础上,关于s102中的内容,本技术实施例还提供了一种可能的实现方式,请参考图5,s102包括:s102-1和s102-2,具体阐述如下。
[0076]
s102-1,基于螺旋线位置规划集合和螺旋线姿态规划集合获得笛卡尔空间位姿指令。
[0077]
应理解,笛卡尔空间位姿指令的表达式可以为
[0078]
s102-2,对笛卡尔空间位姿指令,进行逆运动学解算,以获得每一个控制周期对应的插补指令。
[0079]
应理解,位置规划和姿态规划的集合包括笛卡尔空间的位置变化和姿态变化,经过逆运动学后,笛卡尔空间的位姿转换为各个关节的位置,插补指令为机器人各个关节在控制周期内的位置变化。
[0080]
在图2的基础上,对于如何控制机器人完成运动,本技术实施例还提供了一种可能的实现方式,请参考图6,机器人螺旋轨迹控制方法还包括:s103,具体阐述如下。
[0081]
s103,将插补指令下发给机器人的驱动器,以使驱动器依据插补指令驱动机器人各个关节。
[0082]
应理解,驱动器执行插补指令,从而控制机器人各个关节在控制周期内的位置变化,以使机器人按照预设的螺旋线和姿态进行运动。
[0083]
请参考图7,图7为本技术实施例提供的空间螺旋线示意图。
[0084]
本技术实施例提供的机器人螺旋轨迹控制方法直接在机器人基坐标系下进行规划,不需经过坐标变换,提高了规划效率,有效缩短了规划时间,通过螺旋参数设置实现平
面和空间螺旋轨迹示教和规划,通过姿态修正角实现姿态的自由控制。
[0085]
请参阅图8,图8为本技术实施例提供的一种机器人螺旋轨迹控制装置,可选的,该机器人螺旋轨迹控制装置被应用于上文所述的电子设备。
[0086]
机器人螺旋轨迹控制装置包括:规划单元201和处理单元202。
[0087]
规划单元201,用于基于螺旋线参数获取螺旋线位置规划集合和螺旋线姿态规划集合,其中,所述螺旋线位置规划集合包括在机器人末端旋转至目标角度时在目标坐标系下的坐标信息,所述螺旋线姿态规划集合包括在机器人末端旋转至目标角度时在目标坐标系下的姿态信息,每圈螺旋线包含至少3个所述目标角度,任意相邻的两个所述目标角度之间的间隔弧度为所述机器人末端在一个控制周期内的旋转幅度;
[0088]
处理单元202,用于基于所述螺旋线位置规划集合和所述螺旋线姿态规划集合,进行逆运动学解算,以获得每一个控制周期对应的插补指令,其中,所述插补指令包括所述机器人各个关节在所述控制周期内的位置变化。
[0089]
可选地,规划单元201可以执行上述的s101,处理单元202可以执行上述的s102和s103。
[0090]
需要说明的是,本实施例所提供的机器人螺旋轨迹控制装置,其可以执行上述方法流程实施例所示的方法流程,以实现对应的技术效果。为简要描述,本实施例部分未提及之处,可参考上述的实施例中相应内容。
[0091]
本技术实施例还提供了一种存储介质,该存储介质存储有计算机指令、程序,该计算机指令、程序在被读取并运行时执行上述实施例的机器人螺旋轨迹控制方法。该存储介质可以包括内存、闪存、寄存器或者其结合等。
[0092]
下面提供一种电子设备,可以电脑、服务器以及机器人,该电子设备如图1所示,可以实现上述的机器人螺旋轨迹控制方法;具体的,该电子设备包括:处理器10,存储器11、总线12。处理器10可以是cpu。存储器11用于存储一个或多个程序,当一个或多个程序被处理器10执行时,执行上述实施例的机器人螺旋轨迹控制方法。
[0093]
在本技术所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本技术的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0094]
另外,在本技术各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
[0095]
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计
算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0096]
以上所述仅为本技术的优选实施例而已,并不用于限制本技术,对于本领域的技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
[0097]
对于本领域技术人员而言,显然本技术不限于上述示范性实施例的细节,而且在不背离本技术的精神或基本特征的情况下,能够以其它的具体形式实现本技术。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本技术的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本技术内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献