CN112388633A - 生成机器人加工运动轨迹的方法、存储装置及机器人 - Google Patents
生成机器人加工运动轨迹的方法、存储装置及机器人 Download PDFInfo
- Publication number
- CN112388633A CN112388633A CN202011168059.3A CN202011168059A CN112388633A CN 112388633 A CN112388633 A CN 112388633A CN 202011168059 A CN202011168059 A CN 202011168059A CN 112388633 A CN112388633 A CN 112388633A
- Authority
- CN
- China
- Prior art keywords
- track
- point
- track point
- angle
- points
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 49
- 230000033001 locomotion Effects 0.000 title claims abstract description 44
- 238000003754 machining Methods 0.000 title claims abstract description 25
- 230000009466 transformation Effects 0.000 claims abstract description 32
- 230000008859 change Effects 0.000 claims description 34
- 239000013598 vector Substances 0.000 claims description 20
- 230000008569 process Effects 0.000 claims description 13
- 238000009987 spinning Methods 0.000 claims description 11
- 230000001131 transforming effect Effects 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 11
- 238000005516 engineering process Methods 0.000 description 6
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000007517 polishing process Methods 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Automation & Control Theory (AREA)
- Manipulator (AREA)
Abstract
本申请公开了一种生成机器人加工运动轨迹的方法、存储装置及机器人。该方法包括:提取机器人的工具中心点在工件上的循环运行轨迹;将所述循环运行轨迹离散为一系列有序的轨迹点;获取每个所述轨迹点的位姿信息,根据所述位姿信息获得每个所述轨迹点在所述循环运行轨迹的运行方向的切向和所述轨迹点所在工件表面的法向;对至少2个所述轨迹点的切向和法向进行旋转变换,使得完成一圈所述循环运行轨迹的所有所述轨迹点后,所述工具中心点的法向方向自旋360°。通过上述方式,能够提高整个加工工艺的运行效率,并且保证加工工艺在各个轨迹位置的均匀性和连贯性。
Description
技术领域
本发明涉及机器人领域,特别是涉及一种生成机器人加工运动轨迹的方法、存储装置及机器人。
背景技术
使用机器人离线编程软件生成闭合轨迹时,由于起点和终点具有相同的工具中心点位姿,并且在轨迹上工具中心点的某个坐标轴始终沿轨迹的切线方向,因此机器人需要在终点附近进行一次较大的姿态调整,使得各轴旋转角度在限制的范围以内。当需要沿闭合轨迹循环运行时,比如打磨手机壳边缘,每个周期都要在某个位置进行定点变姿态运动,这不仅影响了运行效率,而且破坏了整个工艺的均匀性。
发明内容
本申请提供一种生成机器人加工运动轨迹的方法、存储装置及机器人,能够提高整个加工工艺的运行效率,同时提高加工过程中各个轨迹点之间运行的均匀性和连贯性。
为解决上述技术问题,本申请采用的一个技术方案是:提供一种生成机器人加工运动轨迹的方法,包括:
提取机器人的工具中心点在工件上的循环运行轨迹;
将所述循环运行轨迹离散为一系列有序的轨迹点;
获取每个所述轨迹点的位姿信息,根据所述位姿信息获得每个所述轨迹点在所述循环运行轨迹的运行方向的切向和所述轨迹点所在工件表面的法向;
对至少2个所述轨迹点的切向和法向进行旋转变换,使得完成一圈所述循环运行轨迹的所有所述轨迹点后,所述工具中心点的法向方向自旋360°。
根据本申请的一个实施例,对每个所述轨迹点的切向和法向进行旋转变换,使得完成一圈循环运行轨迹的所有所述轨迹点后,所述工具中心点的法向方向自旋360°,包括:
在所述轨迹点中选取起始点,预设所述起始点的角度变化量和角度变化方向均为零,所述起始点不做旋转变换;
沿所述循环运行轨迹的运行方向,从所述起始点相邻的下一个轨迹点开始,计算每个所述轨迹点相对于相邻的上一个轨迹点的切向的角度变化量和角度变化方向;
根据所述角度变化量和所述角度变化方向计算每个所述轨迹点绕法向的旋转角度;
确定每个所述轨迹点的旋转方向;
每个所述轨迹点根据所述旋转角度和所述旋转方向进行旋转变换,使得完成一圈循环运行轨迹的所有所述轨迹点后,所述工具中心点的法向方向自旋360°。
根据本申请的一个实施例,所述确定每个所述轨迹点的旋转方向包括:
获取机器人的位置和所述循环运行轨迹的运行方向;
根据所述运行方向和所述机器人的位置确定每个所述轨迹点的所述旋转方向。
根据本申请的一个实施例,所述计算每个所述轨迹点相对于相邻的上一个轨迹点的切向的角度变化量和角度变化方向包括:
计算每个所述轨迹点相对于相邻的上一个轨迹点的切向的角度变化量,所述角度变化量的计算公式为:
θi=arccos(Pi·Pi-1),其中,θi为Pi相对于Pi-1的角度变化量,i为当前轨迹点,i-1为与所述当前轨迹点相邻的上一个轨迹点,Pi为所述当前轨迹点的切向单位向量,Pi-1为与所述当前轨迹点相邻的上一个轨迹点的切向单位向量,2≤i;
计算每个所述轨迹点相对于相邻的上一个轨迹点的切向的角度变化方向,所述角度变化方向的计算公式为:
其中,·为点积,^为叉积,i为当前轨迹点,Si为所述当前轨迹点的切向的角度变化方向,N为所述循环运行轨迹的平面的法向,Pi为所述当前轨迹点的切向单位向量,i-1为与所述当前轨迹点相邻的上一个轨迹点,Pi-1为与所述当前轨迹点相邻的上一个轨迹点的切向单位向量,2≤i。
根据本申请的一个实施例,所述旋转角度为:所述起始点至所述当前轨迹点中的每个所述轨迹点的角度变化量和角度变化方向的乘积之和。
根据本申请的一个实施例,在根据所述位姿信息获得每个所述轨迹点在所述循环运行轨迹的运行方向的切向和所述轨迹点所在工件表面的法向之后,包括:
预设所述工具中心点的坐标系原点与所述轨迹点重合,所述工具中心点的坐标系X轴与所述轨迹点的切向重合,所述工具中心点的坐标系Z轴与所述轨迹点的法向重合。
根据本申请的一个实施例,所述对至少2个所述轨迹点的切向和法向进行旋转变换,使得完成一圈所述循环运行轨迹的所有所述轨迹点后,所述工具中心点的法向方向自旋360°,包括:
在所述轨迹点中选取起始点,预设所述起始点的角度变化量和角度变化方向均为零,所述起始点不做旋转变换;
沿所述循环运行轨迹的运行方向,从所述起始点相邻的下一个轨迹点开始,计算每个所述轨迹点相对于相邻的上一个轨迹点的切向的角度变化量和角度变化方向;
根据所述角度变化量和所述角度变化方向确定自旋轨迹点;
计算所述自旋轨迹点绕法向的旋转角度;
确定所述自旋轨迹点的旋转方向;
将所述自旋轨迹点根据所述旋转角度和所述旋转方向进行旋转变换,使得完成一圈循环运行轨迹的所有所述轨迹点后,所述工具中心点的法向方向自旋360°。
根据本申请的一个实施例,所述根据所述角度变化量和所述角度变化方向确定自旋轨迹点包括:
根据所述角度变化量和所述角度变化方向计算轨迹点的旋转角度;
若轨迹点相对于所述起始点的旋转角度的变化量为预设阈值时,确定所述轨迹点为第一自旋轨迹点;
将所述第一自旋轨迹点作为参考自旋轨迹点并记录,从所述参考自旋轨迹点起,依次判断第i个轨迹点相对与所述参考自旋轨迹点的旋转角度的变化量是否等于所述预设阈值;
若是,确定所述第i个轨迹点为所述参考自旋轨迹点并记录,其中,1≤i≤n,n为轨迹点个数;
继续执行将所述参考自旋轨迹点起,依次判断所述第i个轨迹点相对与所述参考自旋轨迹点的旋转角度的变化量是否等于预设阈值,若是,确定所述第i个轨迹点为所述参考自旋轨迹点并记录的过程,直至所述参考自旋轨迹点的个数达到360°/所述预设阈值。
为解决上述技术问题,本申请采用的再一个技术方案是:提供一种机器人,所述机器人包括处理器、与所述处理器耦接的存储器,其中,
所述存储器存储有用于实现所述的生成机器人加工运动轨迹的方法的程序指令;
所述处理器用于执行所述存储器存储的所述程序指令以生成机器人加工运动轨迹。
为解决上述技术问题,本申请采用的再一个技术方案是:提供一种存储装置,存储有能够实现上述生成机器人加工运动轨迹的方法的程序文件。
本申请的有益效果是:当机器人的工具中心点需要沿生成的加工运动轨迹循环运行时,每个循环周期结束都会还原到起始的位姿以及各轴角度,这使得该过程可以不经过定点变姿态而无限循环下去,这大大提高了整个加工工艺的运行效率,并且保证了加工工艺在各个轨迹位置的均匀性。
附图说明
图1是本申请实施例的生成机器人加工运动轨迹的方法的流程示意图;
图2是本申请实施例的生成机器人加工运动轨迹的方法中步骤S104的一种流程示意图;
图3是本申请实施例的凸图形的循环运行轨迹示意图;
图4是本申请实施例的凹图形的循环运行轨迹示意图;
图5是本申请实施例的手机壳的循环运行轨迹示意图;
图6是本申请实施例按照图5的循环运行轨迹进行手机壳打磨的过程示意图;
图7是本申请实施例的生成机器人加工运动轨迹的方法中步骤S104的另一种流程示意图;
图8是本申请实施例的生成机器人加工运动轨迹的装置的结构示意图;
图9是图8的第一实施例的旋转变换模块的结构示意图;
图10是图8的第二实施例的旋转变换模块的结构示意图;
图11是本申请实施例的机器人的结构示意图;
图12是本申请实施例的存储装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请中的术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”、“第三”的特征可以明示或者隐含地包括至少一个该特征。本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。本申请实施例中所有方向性指示(诸如上、下、左、右、前、后……)仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
图1是本申请第一实施例的生成机器人加工运动轨迹的方法的流程示意图。需注意的是,若有实质上相同的结果,本申请的方法并不以图1所示的流程顺序为限。如图1所示,该方法包括步骤:
步骤S101:提取机器人的工具中心点在工件上的循环运行轨迹。
在步骤S101中,根据工艺流程的需要,可以在工件CAD模型上提取机器人的工具中心点在工件上的循环运行轨迹。
步骤S102:将循环运行轨迹离散为一系列有序的轨迹点。
在步骤S102中,循环运行轨迹的曲率越大的位置离散的轨迹点越多,密度越大,则精度越高。
步骤S103:获取每个轨迹点的位姿信息,根据位姿信息获得每个轨迹点在循环运行轨迹的运行方向的切向和轨迹点所在工件表面的法向。
在步骤S103中,每一个轨迹点的位姿信息用一个坐标系表示,坐标系原点与轨迹点重合,坐标系X轴为轨迹点的切向,坐标系Z轴为轨迹点的法向,因此,每个轨迹点的位姿都可以被唯一确定。在本实施例中,根据位姿信息获得每个轨迹点在循环运行轨迹的运行方向的切向和轨迹点所在工件表面的法向之后,预设工具中心点的坐标系原点与轨迹点重合,工具中心点的坐标系X轴与轨迹点的切向重合,工具中心点的坐标系Z轴与轨迹点的法向重合。机器人按照加工运动轨迹运行即机器人的工具中心点按照轨迹点的顺序依次与轨迹点的坐标系重合。
步骤S104:对至少2个轨迹点的切向和法向进行旋转变换,使得完成一圈循环运行轨迹的所有轨迹点后,工具中心点的法向方向自旋360°。
本申请第一实施例的生成机器人加工运动轨迹的方法通过对每个轨迹点的切向和法向进行旋转变换,使得完成一圈循环运行轨迹的所有轨迹点后,法向方向自旋360°。
具体地,在一种实施例中,请参见图2,步骤S104包括以下步骤:
步骤S201:在轨迹点中选取起始点,预设起始点的角度变化量和角度变化方向均为零,起始点不做旋转变换。
在步骤S201中,定义起始点为第一个轨迹点,起始点位于机器人六轴的量程的中间位置,如机器人六轴的量程为-360°-360°,则起始点在机器人六轴为0°时的位置。起始点的选取直接影响机器人沿加工运行轨迹运行时工具中心点是否能够达到所有轨迹点。
步骤S202:沿循环运行轨迹的运行方向,从起始点相邻的下一个轨迹点开始,计算每个轨迹点相对于相邻的上一个轨迹点的切向的角度变化量和角度变化方向。
在步骤S202中,计算每个轨迹点的切向的角度变化量包括:确定当前轨迹点和相邻的上一个轨迹点的切向单位向量;计算两个切向单位向量之间的夹角,夹角为当前轨迹点的切向的角度变化量。
本实施例中,假设轨迹点有n个,第i个轨迹点为当前轨迹点,第i个轨迹点的切向单位向量为Pi,第i-1个轨迹点为上一个轨迹点,第i-1个轨迹点的切向单位向量为Pi-1,其中,2≤i≤n,Pi与Pi-1的夹角为θi,则有θi=arccos(Pi·Pi-1)。
进一步地,计算每个轨迹点的切向的角度变化方向包括:将两个切向单位向量叉积的结果与当前轨迹点的法向进行点积,获得计算结果;计算计算结果与计算结果的绝对值的比率,获得当前轨迹点的切向的角度变化方向。
本实施例中,按照以下公式计算当前轨迹点的切向的角度变化方向,其中,·为点积,^为叉积,2≤i≤n,Si为当前轨迹点的切向的角度变化方向,Si取1或-1,1为当前轨迹点的切向的角度增加,-1为当前轨迹点的切向的角度减小,N为循环运行轨迹的平面的法向,为当前轨迹点,Pi为当前轨迹点的切向单位向量,i-1为上一个轨迹点,Pi-1为上一个轨迹点的切向单位向量。
步骤S203:根据角度变化量和角度变化方向计算每个轨迹点绕法向的旋转角度。
在步骤S203中,旋转角度为:起始点至当前轨迹点中的每个轨迹点的角度变化量和角度变化方向的乘积之和,具体为其中,2≤i≤n,为轨迹点的个数,i为当前轨迹点,j为起始点至当前轨迹点中的轨迹点,ωi为当前轨迹点的旋转角度,S为切向的角度变化方向,θ为切向的角度变化量。如图3和图4所示,无论是凸图形还是凹图像,假设闭合曲线的方向为逆时针,根据右手定则确定图形方向(法向)N为垂直纸面向上。在轨迹上,按照轨迹方向任意选取n个点,其中n>2,并且在n个点中,相邻两点方向变换小于180°。第i个点的切线方向单位向量为Pi,第i+1个点的切线方向单位向量为Pi+1,1≤i≤n。第i个点的切线方向与第i+1个点的切线方向夹角大小定义为θi=arccos(Pi·Pi+1),角度变化方向为其中,·为点积,∧为叉积,当i=n时,Pi+1取P1,轨迹点运动一圈后,根据即法向方向自转360°。因此,当机器人的工具中心点沿循环运行轨迹运行一圈,工具中心点沿法向方向也自旋360°,即运行一圈,工具中心点恢复到起始姿态。机器人的工具中心点按照图5生成的加工运动轨迹进行手机壳10打磨的过程如图6的(a)-(d)所示,其中(a)为起始状态。机器人的工具中心点可以沿图5生成的加工运动轨迹连贯地进行无限循环运动。
步骤S204:确定每个轨迹点的旋转方向。
在步骤S204中,包括获取机器人的位置和循环运行轨迹的运行方向;循环运行轨迹的运行方向是指从起始点开始,按照顺序依次指向下一个轨迹点。在本实施例中,根据运行方向和机器人的位置采用右手定则确定每个轨迹点的旋转方向。如图5和图6所示,工件位于机器人的前方,以圆球20为起始点,循环运行轨迹的运行方向为竖直向上(即俯视逆时针),则轨迹点的旋转方向指向手机壳10内。
步骤S205:每个轨迹点根据旋转角度和旋转方向进行旋转变换,使得完成一圈循环运行轨迹的所有轨迹点后,工具中心点的法向方向自旋360°。
本实施例中,生成的加工运动轨迹如图5所示,如图5圆球20为起始点,循环运行轨迹的运行方向为俯视逆时针。在相邻两个离散点之间,机器人的工具中心点将以差值的方式平滑地进行自旋变化。
本实施例通过对每个轨迹点的切向和法向进行旋转变换,使得完成一圈循环运行轨迹的所有轨迹点后,法向方向自旋360°,当机器人的工具中心点需要沿生成的加工运动轨迹循环运行时,每个循环周期结束都会还原到起始的位姿以及各轴角度,这使得该过程可以不经过定点变姿态而无限循环下去,这大大提高了整个加工工艺的运行效率,并且保证了加工工艺在各个轨迹位置的均匀性。
具体地,在另一种实施例中,请参见图7,步骤S104包括以下步骤:
步骤S701:在轨迹点中选取起始点,预设起始点的角度变化量和角度变化方向均为零,起始点不做旋转变换。
在本实施例中,图7中的步骤S701和图2中的步骤S201类似,为简约起见,在此不再赘述。
步骤S702:沿循环运行轨迹的运行方向,从起始点相邻的下一个轨迹点开始,计算每个轨迹点相对于相邻的上一个轨迹点的切向的角度变化量和角度变化方向。
在本实施例中,图7中的步骤S702和图2中的步骤S202类似,为简约起见,在此不再赘述。
步骤S703:根据角度变化量和角度变化方向确定自旋轨迹点。
在步骤S703中,根据角度变化量和角度变化方向计算轨迹点的旋转角度,若轨迹点相对于起始点的旋转角度的变化量为预设阈值时,确定轨迹点为第一自旋轨迹点,将第一自旋轨迹点作为参考自旋轨迹点并记录。从参考自旋轨迹点起,依次判断第i个轨迹点相对于参考自旋轨迹点的旋转角度的变化量是否等于预设阈值,若是,确定第i个轨迹点为参考自旋轨迹点并记录,其中,1≤i≤n,n为轨迹点个数。继续执行从所述参考自旋轨迹点起,依次判断第i个轨迹点相对与参考自旋轨迹点的旋转角度的变化量是否等于预设阈值,若是,确定第i个轨迹点为参考自旋轨迹点并记录的过程;直至参考自旋轨迹点的个数达到360°/预设阈值。预设阈值在0至360°之间,例如,预设阈值为60°,若轨迹点相对于起始点的旋转角度的变化量为60°时,确定轨迹点为第一自旋轨迹点;将第一自旋轨迹点作为参考自旋轨迹点并记录,从该参考自旋轨迹点起,当某第i个轨迹点相对于参考自旋轨迹点的旋转角度的变化量为60°时,确定该轨迹点为新的参考自旋轨迹点并记录,从新的参考自旋轨迹点起,再依次判断第i个轨迹点相对与新的参考自旋轨迹点的旋转角度的变化量是否等于60°,若是,确定该第i个轨迹点为新的参考自旋轨迹点并记录,重复上述步骤直至参考自旋轨迹点的个数达到6个;由此可以得到6个自旋轨迹点。
步骤S704:计算自旋轨迹点绕法向的旋转角度。
在本实施例中,图7中的步骤S704和图2中的步骤S203类似,为简约起见,在此不再赘述。
步骤S705:确定自旋轨迹点的旋转方向。
在本实施例中,图7中的步骤S705和图2中的步骤S204类似,为简约起见,在此不再赘述。
步骤S706:将自旋轨迹点根据旋转角度和旋转方向进行旋转变换,使得完成一圈循环运行轨迹的所有轨迹点后,工具中心点的法向方向自旋360°。
在本实施例中,在整个运动过程中,可以按角度变化量每隔60°确定自旋轨迹点,则整个循环运行轨迹共有6个自旋轨迹点,工具中心点总共发生6次自旋运动;也可以按角度变化量每隔45°确定自旋轨迹点,则整个循环运行轨迹共有8个自旋轨迹点,工具中心点总共发生8次自旋运动。
本实施例中,机器人的工具中心点可以进行固定次数的自旋变化,能够保证轨迹点之间进行平滑的位姿变换同时提高了整个加工工艺的运行效率。当机器人的工具中心点需要沿生成的加工运动轨迹循环运行时,每个循环周期结束都会还原到起始的位姿以及各轴角度,这使得该过程可以不经过定点变姿态而无限循环下去,这大大提高了整个加工工艺的运行效率,并且保证了加工工艺在各个轨迹位置的均匀性。
图8是本申请实施例的生成机器人加工运动轨迹的装置的结构示意图。如图8所示,该装置80包括轨迹获取模块81、离散模块82、位姿获取模块83和旋转变换模块84。
轨迹获取模块81用于提取机器人的工具中心点在工件上的循环运行轨迹。
离散模块82与轨迹获取模块81耦接,用于将循环运行轨迹离散为一系列有序的轨迹点。
位姿获取模块83与离散模块82耦接,用于获取每个轨迹点的位姿信息,根据位姿信息获得每个轨迹点在循环运行轨迹的运行方向的切向和轨迹点所在工件表面的法向。
可选地,在位姿获取模块83根据位姿信息获得每个轨迹点的切向和法向之后,预设工具中心点的坐标系原点与轨迹点重合,工具中心点的坐标系X轴与轨迹点的切向重合,工具中心点的坐标系Z轴与轨迹点的法向重合。
旋转变换模块84与位姿获取模块83耦接,用于对至少2个轨迹点的切向和法向进行旋转变换,使得完成一圈循环运行轨迹的所有轨迹点后,工具中心点的法向方向自旋360°。
可选地,请参见图9,旋转变换模块84包括起始点选取单元90、角度变化量确定单元91、角度变化方向确定单元92、旋转角度确定单元93、旋转方向确定单元94以及旋转变换单元95。
起始点选取单元90用于在轨迹点中选取起始点,预设起始点的角度变化量和角度变化方向均为零,起始点不做旋转变换。
角度变化量确定单元91与起始点选取单元90耦接,用于沿循环运行轨迹的运行方向,从起始点相邻的下一个轨迹点开始,计算每个轨迹点相对于相邻的上一个轨迹点的切向的角度变化量。可选地,角度变化量确定单元91确定当前轨迹点和相邻的上一个轨迹点的切向单位向量;计算两个切向单位向量之间的夹角,夹角为当前轨迹点的切向的角度变化量。
角度变化方向确定单元92与起始点选取单元90耦接,用于沿循环运行轨迹的运行方向,从起始点相邻的下一个轨迹点开始,计算每个轨迹点相对于相邻的上一个轨迹点的切向的角度变化方向。可选地,角度变化方向确定单元92将两个切向单位向量叉积的结果与轨迹点的法向进行点积,获得计算结果;计算计算结果与计算结果的绝对值的比率,获得当前轨迹点的切向的角度变化方向。
旋转角度确定单元93分别与角度变化量确定单元91、角度变化方向确定单元92耦接,用于根据角度变化量和角度变化方向计算每个轨迹点绕法向的旋转角度。旋转角度为:起始点至当前轨迹点中的每个轨迹点的角度变化量和角度变化方向的乘积之和。
旋转方向确定单元94用于获取机器人的位置和循环运行轨迹的运行方向并根据运行方向和机器人的位置确定每个轨迹点的旋转方向。
旋转变换单元95分别与旋转角度确定单元93、旋转方向确定单元94耦接,用于将每个轨迹点根据旋转角度和旋转方向进行旋转变换。
可选地,请参见图10,旋转变换模块84包括起始点选取单元100、角度变化量确定单元101、角度变化方向确定单元102、自旋轨迹点确定单元103、旋转角度确定单元104、旋转方向确定单元105以及旋转变换单元106。
本实施例中图10的起始点选取单元100与图9的起始点选取单元90类似,在此不再一一赘述。
角度变化量确定单元101与起始点选取单元100耦接,本实施例中图10的角度变化量确定单元101与图9的角度变化量确定单元91类似,在此不再一一赘述。
角度变化方向确定单元102与起始点选取单元100耦接,本实施例中图10的角度变化方向确定单元102与图9的角度变化方向确定单元92类似,在此不再一一赘述。
自旋轨迹点确定单元103分别与角度变化量确定单元101、角度变化方向确定单元102耦接,用于根据角度变化量和角度变化方向确定自旋轨迹点。
旋转角度确定单元104与自旋轨迹点确定单元103耦接,本实施例中图10的旋转角度确定单元103与图9的旋转角度确定单元93类似,在此不再一一赘述。
旋转方向确定单元105用于确定自旋轨迹点的旋转方向。
旋转变换单元106分别与旋转角度确定单元104、旋转方向确定单元105耦接,用于将自旋轨迹点根据旋转角度和旋转方向进行旋转变换,使得完成一圈循环运行轨迹的所有轨迹点后,工具中心点的法向方向自旋360°。
请参阅图11,图11为本申请实施例的机器人的结构示意图。如图11所示,该机器人110包括处理器111及和处理器111耦接的存储器112。
存储器112存储有用于实现上述任一实施例的生成机器人加工运动轨迹的方法的程序指令。
处理器111用于执行存储器112存储的程序指令以生成机器人加工运动轨迹。
其中,处理器111还可以称为CPU(Central Processing Unit,中央处理单元)。处理器111可能是一种集成电路芯片,具有信号的处理能力。处理器111还可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
参阅图12,图12为本申请实施例的存储装置的结构示意图。本申请实施例的存储装置存储有能够实现上述所有方法的程序文件121,其中,该程序文件121可以以软件产品的形式存储在上述存储装置中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式所述方法的全部或部分步骤。而前述的存储装置包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质,或者是计算机、服务器、手机、平板等终端设备。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上仅为本申请的实施方式,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (10)
1.一种生成机器人加工运动轨迹的方法,其特征在于,包括:
提取机器人的工具中心点在工件上的循环运行轨迹;
将所述循环运行轨迹离散为一系列有序的轨迹点;
获取每个所述轨迹点的位姿信息,根据所述位姿信息获得每个所述轨迹点在所述循环运行轨迹的运行方向的切向和所述轨迹点所在工件表面的法向;
对至少2个所述轨迹点的切向和法向进行旋转变换,使得完成一圈所述循环运行轨迹的所有所述轨迹点后,所述工具中心点的法向方向自旋360°。
2.根据权利要求1所述的方法,其特征在于,对每个所述轨迹点的切向和法向进行旋转变换,使得完成一圈循环运行轨迹的所有所述轨迹点后,所述工具中心点的法向方向自旋360°,包括:
在所述轨迹点中选取起始点,预设所述起始点的角度变化量和角度变化方向均为零,所述起始点不做旋转变换;
沿所述循环运行轨迹的运行方向,从所述起始点相邻的下一个轨迹点开始,计算每个所述轨迹点相对于相邻的上一个轨迹点的切向的角度变化量和角度变化方向;
根据所述角度变化量和所述角度变化方向计算每个所述轨迹点绕法向的旋转角度;
确定每个所述轨迹点的旋转方向;
每个所述轨迹点根据所述旋转角度和所述旋转方向进行旋转变换,使得完成一圈循环运行轨迹的所有所述轨迹点后,所述工具中心点的法向方向自旋360°。
3.根据权利要求2所述的方法,其特征在于,所述确定每个所述轨迹点的旋转方向包括:
获取机器人的位置和所述循环运行轨迹的运行方向;
根据所述运行方向和所述机器人的位置确定每个所述轨迹点的所述旋转方向。
4.根据权利要求2所述的方法,其特征在于,所述计算每个所述轨迹点相对于相邻的上一个轨迹点的切向的角度变化量和角度变化方向包括:
计算每个所述轨迹点相对于相邻的上一个轨迹点的切向的角度变化量,所述角度变化量的计算公式为:
θi=arccos(Pi·Pi-1),其中,θi为Pi相对于Pi-1的角度变化量,i为当前轨迹点,i-1为与所述当前轨迹点相邻的上一个轨迹点,Pi为所述当前轨迹点的切向单位向量,Pi-1为与所述当前轨迹点相邻的上一个轨迹点的切向单位向量,2≤i;
计算每个所述轨迹点相对于相邻的上一个轨迹点的切向的角度变化方向,所述角度变化方向的计算公式为:
5.根据权利要求4所述的方法,其特征在于,所述旋转角度为:所述起始点至所述当前轨迹点中的每个所述轨迹点的角度变化量和角度变化方向的乘积之和。
6.根据权利要求1所述的方法,其特征在于,在根据所述位姿信息获得每个所述轨迹点在所述循环运行轨迹的运行方向的切向和所述轨迹点所在工件表面的法向之后,包括:
预设所述工具中心点的坐标系原点与所述轨迹点重合,所述工具中心点的坐标系X轴与所述轨迹点的切向重合,所述工具中心点的坐标系Z轴与所述轨迹点的法向重合。
7.根据权利要求1所述的方法,其特征在于,所述对至少2个所述轨迹点的切向和法向进行旋转变换,使得完成一圈所述循环运行轨迹的所有所述轨迹点后,所述工具中心点的法向方向自旋360°,包括:
在所述轨迹点中选取起始点,预设所述起始点的角度变化量和角度变化方向均为零,所述起始点不做旋转变换;
沿所述循环运行轨迹的运行方向,从所述起始点相邻的下一个轨迹点开始,计算每个所述轨迹点相对于相邻的上一个轨迹点的切向的角度变化量和角度变化方向;
根据所述角度变化量和所述角度变化方向确定自旋轨迹点;
计算所述自旋轨迹点绕法向的旋转角度;
确定所述自旋轨迹点的旋转方向;
将所述自旋轨迹点根据所述旋转角度和所述旋转方向进行旋转变换,使得完成一圈循环运行轨迹的所有所述轨迹点后,所述工具中心点的法向方向自旋360°。
8.根据权利要求7所述的方法,其特征在于,所述根据所述角度变化量和所述角度变化方向确定自旋轨迹点包括:
根据所述角度变化量和所述角度变化方向计算轨迹点的旋转角度;
若轨迹点相对于所述起始点的旋转角度的变化量为预设阈值时,确定所述轨迹点为第一自旋轨迹点;
将所述第一自旋轨迹点作为参考自旋轨迹点并记录,从所述参考自旋轨迹点起,依次判断第i个轨迹点相对与所述参考自旋轨迹点的旋转角度的变化量是否等于所述预设阈值;
若是,确定所述第i个轨迹点为所述参考自旋轨迹点并记录,其中,1≤i≤n,n为轨迹点个数;
继续执行从所述参考自旋轨迹点起,依次判断所述第i个轨迹点相对与所述参考自旋轨迹点的旋转角度的变化量是否等于预设阈值,若是,确定所述第i个轨迹点为所述参考自旋轨迹点并记录的过程,直至所述参考自旋轨迹点的个数达到360°/预设阈值。
9.一种机器人,其特征在于,所述机器人包括处理器、与所述处理器耦接的存储器,其中,
所述存储器存储有用于实现如权利要求1-8中任一项所述的生成机器人加工运动轨迹的方法的程序指令;
所述处理器用于执行所述存储器存储的所述程序指令以生成机器人加工运动轨迹。
10.一种存储装置,其特征在于,存储有能够实现如权利要求1-8中任一项所述的生成机器人加工运动轨迹的方法的程序文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011168059.3A CN112388633A (zh) | 2020-10-27 | 2020-10-27 | 生成机器人加工运动轨迹的方法、存储装置及机器人 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011168059.3A CN112388633A (zh) | 2020-10-27 | 2020-10-27 | 生成机器人加工运动轨迹的方法、存储装置及机器人 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112388633A true CN112388633A (zh) | 2021-02-23 |
Family
ID=74597691
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011168059.3A Pending CN112388633A (zh) | 2020-10-27 | 2020-10-27 | 生成机器人加工运动轨迹的方法、存储装置及机器人 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112388633A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113370213A (zh) * | 2021-06-25 | 2021-09-10 | 成都飞机工业(集团)有限责任公司 | 一种机器人末端执行器的姿态计算方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109719438A (zh) * | 2017-10-31 | 2019-05-07 | 无锡威卓智能机器人有限公司 | 一种工业焊接机器人焊缝自动跟踪方法 |
CN111002315A (zh) * | 2019-12-27 | 2020-04-14 | 深圳市越疆科技有限公司 | 一种轨迹规划方法、装置及机器人 |
CN111300425A (zh) * | 2020-03-19 | 2020-06-19 | 南京溧航仿生产业研究院有限公司 | 一种超冗余机械臂末端轨迹运动规划方法 |
CN111421573A (zh) * | 2020-03-30 | 2020-07-17 | 伯朗特机器人股份有限公司 | 一种工业机器人拐角偏差性能测试方法 |
CN111791236A (zh) * | 2020-07-17 | 2020-10-20 | 广东拓斯达科技股份有限公司 | 一种工业机器人笛卡尔空间轨迹过渡方法 |
-
2020
- 2020-10-27 CN CN202011168059.3A patent/CN112388633A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109719438A (zh) * | 2017-10-31 | 2019-05-07 | 无锡威卓智能机器人有限公司 | 一种工业焊接机器人焊缝自动跟踪方法 |
CN111002315A (zh) * | 2019-12-27 | 2020-04-14 | 深圳市越疆科技有限公司 | 一种轨迹规划方法、装置及机器人 |
CN111300425A (zh) * | 2020-03-19 | 2020-06-19 | 南京溧航仿生产业研究院有限公司 | 一种超冗余机械臂末端轨迹运动规划方法 |
CN111421573A (zh) * | 2020-03-30 | 2020-07-17 | 伯朗特机器人股份有限公司 | 一种工业机器人拐角偏差性能测试方法 |
CN111791236A (zh) * | 2020-07-17 | 2020-10-20 | 广东拓斯达科技股份有限公司 | 一种工业机器人笛卡尔空间轨迹过渡方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113370213A (zh) * | 2021-06-25 | 2021-09-10 | 成都飞机工业(集团)有限责任公司 | 一种机器人末端执行器的姿态计算方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1460577B1 (en) | Motion detection for handwriting recognition | |
Horaud et al. | Object pose: The link between weak perspective, paraperspective, and full perspective | |
Song et al. | Customizing PRM roadmaps at query time | |
CN111857037B (zh) | 一种过渡轨迹的生成方法、机器人及计算机可读存储介质 | |
CN112388633A (zh) | 生成机器人加工运动轨迹的方法、存储装置及机器人 | |
CN110646006A (zh) | 装配路径规划方法及相关装置 | |
CN113182681A (zh) | 一种壳盖侧缝的焊接轨迹获取方法及焊接方法 | |
CN113341962A (zh) | 一种动态窗口循迹优化方法、装置、终端及存储介质 | |
CN112276340A (zh) | 针对复杂曲面的加工路径碰撞检测方法、装置及存储介质 | |
CN111389613A (zh) | 喷胶轨迹信息确定方法及装置 | |
CN104850820B (zh) | 一种脸部识别方法及装置 | |
CN115375699B (zh) | 点云分割方法、移动机器人及计算机可读存储介质 | |
CN116385538A (zh) | 一种面向动态场景的视觉slam方法、系统及存储介质 | |
Francis et al. | Multi-axis tool path generation for surface finish machining of a rapid manufacturing process | |
CN115371596A (zh) | 一种基于迭代搜索的直线度测量方法和装置 | |
CN112659121B (zh) | 机器人磨轮半径补偿方法、装置、机器人及存储介质 | |
CN115179298A (zh) | 一种笛卡尔空间的轨迹规划方法及装置 | |
Chen et al. | Egocentric indoor localization from coplanar two-line room layouts | |
CN115439554A (zh) | 标靶、信息检测方法、装置、终端及存储介质 | |
CN102855279B (zh) | 基于细节点隆线形状的目标指纹快速查找方法 | |
CN113420576A (zh) | 基于rfid的机器人自主定位方法、系统、存储介质及终端 | |
CN112643674A (zh) | 机器人跟随加工工件表面补偿方法、机器人及存储装置 | |
CN109003245A (zh) | 坐标处理方法、装置及电子设备 | |
CN114055449B (zh) | 高冗余度蛇形机械臂的末端跟随运动控制方法及装置 | |
Chun et al. | 3D star skeleton for fast human posture representation |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210223 |