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

一种面向多加工场景的多轴轨迹压缩方法与流程

2021-10-09 13:09:00 来源:中国专利 TAG:

problem in fitted splines》(aguilar e,elizalde h,diego c
á
rdenas.journal of computing and information science in engineering,2018)中,利用曲率指导节点选取,但是其存在迭代,效率不高,并且同样也只适用于三维轨迹,无法用于五轴加工轨迹数据。因此,需要提出一个基于曲率的,快速的,可用于五轴轨迹压缩的初始节点选取方法。
6.综上所述,目前的轨迹压缩方法现状如下:

误差计算模型普遍更加适用于金属切削加工,并且与轨迹压缩方法耦合严重。

多轴轨迹压缩中,若刀尖轨迹和刀轴轨迹不在同一参数域下,则目前方法难以保证旋转轴运动的高阶连续性。

对于压缩的初始节点选取,目前的方法不能高效且很好地用在多轴轨迹压缩中。


技术实现要素:

7.针对现有技术的以上缺陷或改进需求,本发明提供了一种面向多加工场景的多轴轨迹压缩方法,其目的在于使得误差计算、初始节点选取、刀尖与刀轴矢量的参数同步能够适用多种压缩场景。
8.为实现上述目的,本发明提供了一种面向多加工场景的多轴轨迹压缩方法,包括:
9.s1.对原始刀位点进行区间划分;
10.s2.选取每个刀位点子区间的初始压缩节点序列;
11.s3.对每个初始压缩节点序列中的刀位点分别计算其节点矢量,并采用c2连续且单调的三次有理样条构建刀尖曲线与刀轴曲线的参数同步关系;
12.s4.根据每个子区间初始压缩节点序列中的节点、节点矢量和首末端点切矢,反算控制点,进而得到刀尖b样条轨迹,再结合刀尖曲线与刀轴曲线的参数同步关系得到刀轴b样条轨迹;
13.s5.计算每个刀尖点在刀尖点b样条轨迹上的垂足到刀尖点的误差,若所有误差均小于0,则进入步骤s6,否则选择误差最大的刀位点,将其加入到初始压缩节点序列,返回执行步骤s3;
14.s6.计算压缩后所有刀尖点对应的刀轴角度偏差;若所有刀轴角度偏差均小于给定允许值,则进入步骤s7,否则选择刀轴角度偏差最大的刀位点,将其加入到初始压缩节点序列,返回执行步骤s3;
15.s7.遍历所有压缩节点,若相邻压缩节点之间没有其它刀位点,则计算相邻压缩节点之间的弦高误差,若弦高误差均满足设定要求,则输出步骤s4压缩得到的b样条轨迹;否则,针对弦高误差最大的一段,重新进行区间划分,各个区间再依次进入步骤s2中进行压缩。
16.进一步地,步骤s5具体为,计算每个刀尖点在刀尖点b样条轨迹上的垂足到刀尖点所构成的允差空间的超允差误差,若所有超允差误差均小于0,则进入步骤s6,否则选择超允差误差最大的刀位点,将其加入到初始压缩节点序列,返回执行步骤s3;其中,允差空间为刀位点在满足误差要求下可以调整的位置所构成的空间;超允差误差为任意一空间点到允差空间外表面的距离。
17.进一步地,对于减材制造,其允差空间是以刀位点为球心,以允许轮廓误差大小为半径的球型空间。
18.进一步地,超允差误差为任意一空间点到球形空间外表面的距离。
19.进一步地,对于增材加工,其允差空间为圆柱体,所述圆柱体底面圆半径为切向允差绝对值,高为正允差与负允差绝对值之和;其中,切向允差为加工轮廓允差,方向为允差向量的正交方向;允差向量为刀位点在工件表面上的正交投影点指向刀位点的单位矢量;正允差为允差向量方向的允差;负允差为允差向量反方向的允差。
20.进一步地,超允差误差的计算过程具体为,
21.若空间任意一点p与第i个刀尖点c
i
的连线c
i
p与允差空间圆柱体的交点在允差空间圆柱体的底面,且α小于π/2,超允差误差为:
22.||c
i
p||表示c
i
与p之间的距离,d
n
表示正允差,α表示连线c
i
p与允差向量n
i
之间夹角,之间夹角,表示刀轴矢量在轨迹切矢方向上的投影模长,表示刀轴矢量,表示第i个刀尖点切矢;
23.若连线c
i
p与允差空间圆柱体的交点在允差空间圆柱体的圆柱面,且α小于π/2,超允差误差为:
[0024][0025]
d
t
表示切向允差;
[0026]
若连线c
i
p与允差空间圆柱体的交点在允差空间圆柱体的圆柱面,且α大于π/2,超允差误差为:
[0027][0028]
若连线c
i
p与允差空间圆柱体的交点在允差空间圆柱体的底面,且α大于π/2,超允差误差为:
[0029][0030]
d

n
表示负允差。
[0031]
进一步地,步骤s2具体为根据目标压缩比和特征曲率选取每个刀位点子区间的初始压缩节点序列,包括以下步骤:
[0032]
将子区间中第一个刀位点加入压缩节点序列q
comp
中;
[0033]
计算每个刀尖点的离散曲率每个刀轴点的离散曲率以及每个刀位点的特征曲率q
i
表示第i个刀位点,c
i
表示第i个刀尖点,a≤i≤b,a表示初始压缩节点序列第一个刀位点在原始刀位点集合中的下标,b表示初始压缩节点序列最后一个刀位点在原始刀位点集合中的下标;
[0034]
计算每个刀位点的特征曲率积分
[0035]
计算相邻刀位点特征曲率积分的变化量r为目标压缩比;
[0036]
遍历压缩区间中除第一个刀位点和最后一个刀位点的中间刀位点,若g(j)

δg大于等于压缩节点序列q
comp
中最后一个刀位点的特征曲率积分,则将第j个刀位点加入压缩节点序列;
[0037]
将最后一个刀位点加入到压缩节点序列,得到初始压缩节点序列。
[0038]
进一步地,步骤s1包括:
[0039]
计算所有相邻刀尖点之间的距离,与给定长直线长度l
max
比较;
[0040]
若距离大于l
max
,则判定相邻刀尖点之间连线为长直线,按照长直线左侧、长直线自身、长直线右侧的规则划分为三个区间。
[0041]
进一步地,步骤s7所述针对弦高误差最大的一段,重新进行区间划分,具体为,若左半边弦高误差更大,则选择左边的刀位点为新的区间划分点,若右半边弦高误差更大,则选择右边的刀位点为新的区间划分点,新的区间划分点将当前压缩区间一分为二。
[0042]
总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果。
[0043]
1、本发明采用c2连续且保证单调性的三次有理样条来进行刀尖轨迹与刀轴轨迹之间的参数同步,c2连续保证刀轴矢量的变化连续,即刀轴点速度连续,并且加速度连续,能使旋转轴运动达到加速度连续;单调保证刀轴点样条参数随刀尖点样条参数增大而增大或不变,不会出现刀轴点回退的情况,即刀具前后摆动的现象。
[0044]
2、本发明实现了误差计算与轨迹压缩方法的解耦,当新的加工场景出现时,只需要设计新的允差空间和对应ote计算方法即可,而无需修改轨迹压缩流程中的任何一步。其中,增材加工误差计算过程,能够更有效地利用增材加工的特点,即刀位点在圆柱型允差空间内产生偏移,也有相同的加工效果,扩大了刀位点可以调整的范围,从而提高压缩比。
[0045]
3、现有方法多采用迭代选取初始压缩节点,而本发明利用目标压缩比结合特征曲率积分,不需要迭代,能达到快速选取初始拟合节点的效果,提高压缩效率。
附图说明
[0046]
图1为金属切削加工的允差空间及超允差误差示意图;
[0047]
图2为增材加工的允差空间示意图;
[0048]
图3为允差向量定义示意图;
[0049]
图4为刀位轨迹在刀位点处的法平面示意图;
[0050]
图5为刀轴矢量与轨迹切矢所在的平面示意图;
[0051]
图6为允差向量所在位置示意图;
[0052]
图7为空间点在允差空间上底面时的示意图;
[0053]
图8为空间点在允差空间侧面的上半部的示意图;
[0054]
图9为空间点在允差空间侧面的下半部的示意图;
[0055]
图10为空间点在允差空间下底面时的示意图;
[0056]
图11为轨迹压缩总体流程图;
[0057]
图12为根据长直线段划分区间示意图;
[0058]
图13为对单个区间进行压缩的流程图;
[0059]
图14为相邻压缩节点之间没有其它数据点时的示意图;
[0060]
图15为相邻压缩节点之间左半段弦高误差过大时的示意图,此时选择左边的刀位点为新的区间划分点;
[0061]
图16为相邻压缩节点之间右半段弦高误差过大时的示意图,此时选择右边的刀位点为新的区间划分点。
具体实施方式
[0062]
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
[0063]
本发明的主要改进点体现在以下几方面:
[0064]
(1)首先定义允差空间(tolerance space,ts)为刀位点在满足误差要求下可以调整的位置所构成的空间。定义超允差误差(over tolerance error,ote)为任意一空间点到允差空间外表面的距离,若空间点在允差空间内,则ote为0。不同的允差空间需要提供统一的计算ote的接口,然后在轨迹压缩方法中,所有需要用到点到点的误差计算,均使用该接口,而无需了解具体的允差空间设计。这里给出常用的金属切削减材加工的允差空间和增材加工的允差空间。
[0065]
金属切削为减材制造,针对一个刀位点而言,无论往哪个方向偏离,对加工轨迹的影响都是相同的,因此其允差空间为圆心是刀位点,半径是允许轮廓误差大小的球型空间,其形状以及ote的计算,均可见附图1。
[0066]
对于铺放这种增材加工而言,刀位点在材料增厚方向的偏离不会造成加工误差,在材料增厚方向的两侧偏移则会造成加工误差,于是有如附图2所示的圆柱型允差空间,其中允差向量定义为刀位点在工件表面上的正交投影点指向刀位点的单位矢量,如附图3,即增材加工材料增厚的方向;正允差d
n
则为允差向量方向的允差;负允差d

n
为允差向量反方向的允差;切向允差d
t
为加工轮廓允差,方向为允差向量的正交方向。由于刀位文件中没有原始工件表面信息,所以无法直接获得允差向量,接下来给出根据刀位点计算允差向量的方法:
[0067]

使用boehm法计算各刀尖点切矢
[0068]

计算刀位轨迹在刀位点处的法平面。一个点和平面在该点处的法矢即可描述一个平面,此点即为刀位点,刀位点法平面的法矢即为刀路轨迹在此处的切矢,所以有如图4平面:
[0069][0070]
其中,c
i
为第i个刀位点,为第i个刀尖点轨迹切矢。
[0071]

计算允差向量。由于铺放加工中刀轴矢量与轨迹切矢组成的平面正交于工件表面,又刀位点在该平面上,所以允差向量也必然在刀轴矢量与轨迹切矢组成的平面上,所以允差向量所在直线为该平面与轨迹法平面的交线,如图5。显然刀轴矢量不会是指向工件内部的,所以允差向量方向为与刀轴矢量夹角较小的方向,如图6所示。所以刀轴矢量在轨迹切矢方向上的投影模长为允差向量为
[0072]
接下来给出圆柱型允差空间的ote计算方法,首先有第i个刀尖点c
i
,空间任意一点p,于是有c
i
p与允差向量n
i
之间夹角为
[0073][0074]
然后分为4种情况:
[0075]

如图7所示,空间点与刀尖点的连线c
i
p与允差空间的交点在允差空间圆柱体的底面,且α小于π/2。此时ote为:
[0076][0077]

如图8所示,空间点与刀尖点的连线c
i
p与允差空间的交点在允差空间圆柱体的圆柱面,且α小于π/2。此时ote为:
[0078][0079]

如图9所示,空间点与刀尖点的连线c
i
p与允差空间的交点在允差空间圆柱体的圆柱面,且α大于π/2。此时ote为:
[0080][0081]

如图10所示,空间点与刀尖点的连线c
i
p与允差空间的交点在允差空间圆柱体的底面,且α大于π/2。此时ote为:
[0082][0083]
(2)本发明率先采用c2连续且保证单调性的三次有理样条来进行刀尖轨迹与刀轴轨迹之间的参数同步。
[0084]
首先有刀尖轨迹的节点矢量u={0,0,0,0,...,u
i
,...,1,1,1,1},刀轴轨迹的节点矢量w={0,0,0,0,...,w
i
,...,1,1,1,1},为简化过程表达式,特令h
i
=u
i 1

u
i
,,有参数同步关系为
[0085][0086]
p
i
(u)=w
i
(1

θ)3 (w
i
(3 γ
i
) h
i
d
i
)θ(1

θ)2 (w
i 1
(3 γ
i
)

h
i
d
i 1
)θ2(1

θ) w
i 1
θ3[0087]
q
i
(u)=(1

θ)2 θ(1

θ)(2 γ
i
) θ2[0088]
其中d
i
则通过求解以下线性方程组得到:
[0089]
h
i
d
i
‑1 (h
i
(2 γ
i
‑1) h
i
‑1(2 γ
i
))d
i
h
i
‑1d
i 1
=h
i
‑1(3 γ
i

i
h
i
‑1(3 γ
i
‑1)δ
i
‑1[0090]
(3)本发明提供一种根据目标压缩比和曲率快速得到初始压缩节点序列的方法。首先计算刀尖点和刀轴点的离散曲率。
[0091]
刀尖点离散曲率为
[0092][0093]
刀轴点离散曲率为
[0094][0095]
其中c
i
为第i个刀尖点,o
i
为第i个刀轴点。定义特征曲率(feature curvature,fc)为
[0096][0097]
定义特征曲率积分(cumulative feature curvature,cfc)为特征曲率在刀尖点弧长上的积分:
[0098][0099]
其中,n为刀位点数目。
[0100]
目标压缩比即为期望达到的压缩比,显然对于原始刀位点不能无限压缩,因此目标压缩比不能无限大;给定的目标压缩比为r,计算所有点的cfc,每增加就选取当前节点为压缩的初始节点,最后将第一个点也加入压缩的初始节点,即完成了初始节点的选取。
[0101]
本发明选取初始节点的方法不同于现有一般方法,现有方法多采用迭代选取初始拟合节点,而本发明利用目标压缩比结合特征曲率积分,不需要迭代,能达到快速选取初始拟合节点的效果。
[0102]
本发明结合前三点,提供了一种面向多加工场景的多轴轨迹压缩方法,总体流程如图11,包括以下步骤:
[0103]
(1)进行区间划分
[0104]
原始刀位点为{q0,...,q
n
},n表示刀位点个数,其中第i个刀位点q
i
包含第i个刀尖点c
i
和第i个刀轴点o
i
,即给定长直线长度为l
max
,计算所有相邻刀尖点之间的距
离l
i
=||c
i
‑1c
i
||,1≤i≤n,若l
i
≥l
max
,则判定c
i
‑1c
i
为长直线,然后将长直线左侧、长直线自身、长直线右侧划分为三个区间。使用该方法可以将原始刀位点{q0,...,q
n
}划分为若干个子区间{q0,...,q
a
},{q
a
,...,q
b
},...,{q
z
,...,q
n
}。不失一般性地,下述步骤均以子区间{q
a
,...,q
b
}为例。
[0105]
上述区间划分方式仅作为实施例,不同的区间划分方式可以得到一系列子区间,而区间划分方式并不影响对单个子区间实施本发明所述的多轴轨迹压缩方法。
[0106]
(2)选取每个子区间的初始压缩节点;
[0107]
step1:计算每个刀尖点的离散曲率
[0108]
step2:计算每个刀轴点的离散曲率
[0109]
step3:计算每个刀位点的特征曲率
[0110]
step4:计算r为目标压缩比,n为原始刀位点个数;
[0111]
step5:将第一个刀位点加入压缩节点序列q
comp
中,则q
comp
={q
a
};
[0112]
step6:计算每个刀位点的特征曲率积分
[0113]
step7:遍历压缩区间的刀位点,若g(j)

δg大于等于压缩节点序列q
comp
中最后一个刀位点的特征曲率积分,则将第j个刀位点加入压缩节点序列,则q
comp
={q
a
,...,q
j
}。
[0114]
step8:将最后一个刀位点加入到压缩节点序列,则得到了初始压缩节点序列q
comp
={q
a
,...,q
b
}。
[0115]
(3)对压缩节点序列q
comp
中的刀位点使用累计弦长参数化方法分别计算每个刀尖曲线和刀轴曲线节点矢量。
[0116]
(4)构建刀尖曲线与刀轴曲线的参数同步关系
[0117]
step1:有刀尖曲线的节点矢量u={0,0,0,0,...,u
i
,...,1,1,1,1},刀轴曲线的节点矢量w={0,0,0,0,...,w
i
,...,1,1,1,1},为简化过程表达式,特令h
i
=u
i 1

u
i
,,γ
i
=1,h
i
、θ、δ
i
、γ
i
为过程变量,无实际物理意义;
[0118]
step2:求解线性方程组:
[0119]
h
i
d
i
‑1 (h
i
(2 γ
i
‑1) h
i
‑1(2 γ
i
))d
i
h
i
‑1d
i 1
=h
i
‑1(3 γ
i

i
h
i
‑1(3 γ
i
‑1)δ
i
‑1[0120]
d0=d
b

a
=1
[0121]
可以得到的d
i
的值,d
i
为过程变量,无实际物理意义。判断是否满足,若满足则进入step3;否则令然后重复step2;
[0122]
step3:得到参数同步关系为
[0123][0124]
p
i
(u)=w
i
(1

θ)3 (w
i
(3 γ
i
) h
i
d
i
)θ(1

θ)2 (w
i 1
(3 γ
i
)

h
i
d
i 1
)θ2(1

θ) w
i 1
θ3[0125]
q
i
(u)=(1

θ)2 θ(1

θ)(2 γ
i
) θ2[0126]
目前普遍使用的参数同步方法有两种,一是直接将刀尖点样条的参数作为刀轴点样条的参数,该方法会在每个节点处存在误差e
i
=w
i

u
i
;另外一种方法是基于线性插值的参数同步模型,即让u
i
和w
i
之间为线性映射,这会导致映射关系在节点处一阶导数不连续,最终导致刀轴矢量的变化不连续。
[0127]
本发明使用c2连续且单调的有理三次样条来进行刀尖轨迹与刀轴轨迹之间的参数同步,c2连续保证刀轴矢量的变化连续,即刀轴点速度连续,并且加速度连续,单调保证刀轴点样条参数随刀尖点样条参数增大而增大或不变,不会出现刀轴点回退的情况,即刀具前后摆动的现象。
[0128]
(5)使用boehm法计算压缩子区间的首末点端矢。
[0129]
(6)将压缩节点序列q
comp
作为插值点,根据节点、节点矢量、首末端矢,反算得到b样条控制点,于是能得到刀尖b样条轨迹q
c
(u)、刀轴b样条轨迹q
o
(w)。
[0130]
(7)找到第j个刀尖点c
j
在刀尖点曲线上的垂足f
j
,然后在刀尖点处构建允差空间,然后计算垂足到刀尖点所构成的允差空间的ote=||c
i
f
i
||

d,其中d为允差。若加工类型为增材加工,对应的ote计算方法可见发明内容中的(1)。若所有ote均小于0,即没有刀尖点超差,则进入(8);否则选择ote最大的刀位点q
i
,加入到压缩节点序列q
comp
中,得到下一次迭代的压缩节点序列q
comp
={q
a
,...q
i
...,q
b
},然后进入步骤(3)。
[0131]
(8)根据第j个刀尖点在刀尖点曲线上垂足的参数u
j
,通过参数同步关系w=f
u

w
(u)计算得到刀轴点的参数w
j
,于是可以得到压缩后第j个刀尖点对应的刀轴矢量t
j
=q
o
(w
j
)

q
c
(u
j
),而原始第j个刀尖点的原始刀轴矢量为o
j

c
j
,计算它们之间的夹角,即可得到刀轴角度偏差。若所有刀轴角度偏差均小于给定允许值则进入步骤(9);否则选择刀轴角度偏差最大的刀位点q
i
,加入到压缩节点序列q
comp
中,得到下一次迭代的压缩节点序列q
comp
={q
a
,...q
i
...,q
b
},然后进入步骤(3)。
[0132]
(9)遍历所有压缩节点,若存在相邻压缩节点之间如图14没有其它刀位点,则计算相邻压缩节点之间的弦高误差,若弦高误差均满足要求,则输出当前压缩得到的样条曲线;否则,找到弦高误差最大的一段,判断其是如图15左半边弦高误差更大,还是如图16右半边弦高误差更大,若是左半边弦高误差更大,则选择左边的刀位点为新的区间划分点,若是右半边弦高误差更大,则选择右边的刀位点为新的区间划分点。新的区间划分点将当前压缩区间一分为二,然后再依次进入步骤(2)中进行压缩。
[0133]
通过以上具体实施方法可以看出,本算法计算简单,效率较高,可以适用于多种加工场景的多轴轨迹压缩,实用性高。
[0134]
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
再多了解一些

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

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

相关文献

  • 日榜
  • 周榜
  • 月榜