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

一种基于B样条曲线拟合的数控加工的轨迹平滑方法与流程

2022-05-31 11:17:35 来源:中国专利 TAG:

一种基于b样条曲线拟合的数控加工的轨迹平滑方法
技术领域
1.本发明涉及激光切割数控加工技术领域,具体为一种基于b样条曲线拟合的数控加工的轨迹平滑方法。


背景技术:

2.在传统的数控机床中,常常将多个数据点构造成样条曲线进行分析,对数据点进行分析时往往会产生一些精度影响、从而使产生的轨迹间存在更多误差、不能很好的反应原本的形状,导致加工时的速度、加速度、曲率要求等参数不连续,引起机床的振动,难以实现轨迹的高精度处理和加工。
3.因此,在针对于部分轨迹间的处理过程,提出了一种基于b样条曲线拟合的方法,在减小误差的同时、提高曲线拟合的效果和精度相关性能。


技术实现要素:

4.(一)解决的技术问题
5.针对现有技术的不足,本发明提供了一种基于b样条曲线拟合的数控加工的轨迹平滑方法,具备能在激光切割数控机床过程中,从原始数据点中选取合适的插值点,构造更加高精度的样条轨迹,并根据基本插值点进行合理的动态增添选取,最终不断提高b样条曲线精度,从而得到更加优秀的过渡曲线,实现轨迹的平滑等优点,解决了上述背景技术中所提出的问题。
6.(二)技术方案
7.本发明提供如下技术方案:一种基于b样条曲线拟合的数控加工的轨迹平滑方法,所述轨迹平滑方法包括以下步骤:
8.s1、采用相邻线段的夹角限制等条件,识别和删除部分问题点,完成对原始数据点的处理。
9.s2、对离散的曲线,进行处理,根据曲率极值点及拐点等条件对重要插值点进行判断与选取,构建出重要特征点。
10.s3、找出对于插值点中对构造曲线的节点、控制点影响较大的特征点,对此进行增加中间插值点。
11.s4、反求控制点,进行拟合误差的计算和b样条曲线的拟合。
12.首先判断各个数据点之间的角度情况,以原始数据x
i-1
、xi、x
i 1
相邻点构成的小线段夹角∠x
i-1
xix
i 1
来判断是否允许划分,并设置最小的夹角θ
min
,若∠x
i-1
xix
i 1
《θ
min
,则可以在xi处进行划分,其中有
[0013][0014]
设置允许的最大线段长度之比λ
max
,在相邻原始数据三点x
i-1
、xi、x
i 1
中,取得到的
相邻长度之比为按照λ
min
≤λi≤λ
max
,若λi在此范围内,则将该三点划分同一集,若超过此范围,则将较为短的一段线段两端点划分为不同集合,短线段按照直线形式进行加工,不参与拟合。
[0015]
对不符合要求的数据点进行剔除,在相邻数据点中,存在某些会造成多个尖锐角的跳跃点,该点需要加以判断,在相邻原始数据五点x
i-2
、x
i-1
、xi、x
i 1
、x
i 2
中,构成的三个连续的相邻线段夹角分别为∠x
i-2
x
i-1
xi、∠x
i-1
xix
i 1
、∠xix
i 1
x
i 2
,设定最小的夹角θ
min
,当有∠x
i-2
x
i-1
xi《θ
min
,∠x
i-1
xix
i 1
《θ
min
,∠xix
i 1
x
i 2
《θ
min
,时则可认为其中xi为跳跃点,应删除该点。
[0016]
对于离散点的曲率计算,采用基于弦长的方法,通过处理离散点和邻近点之间的位置相对关系来估算各个离散点之间的曲率。
[0017]
曲率极值点的设置,根据曲线中某点的曲率等于该点密切圆半径导数,即1/r,那么可以得出该点的离散曲率对应的密切圆半径那么可以根据给定的最大密切圆半径r进行最大曲率极值点c
max
的限制。
[0018]
优选的,对离散数据点xi及其相邻r个点进行极值点提取,数据点集{x
i-r

xi…
x
i r
}中需满足则点xi为可能存在的曲率极值点;需要规定其中为相邻r个点离散数据点曲率的平均值,
[0019]
进行拐点的提取,当连续四个离散数据点x
i-1
、xi、x
i 1
、x
i 2
中能够满足以下关系式时,我们将xi作为拐点,c
i-1ci
《0,c
ici 1
》0,c
i 1ci 2
》0,即第一点与后三点的曲率正负符号异号。
[0020]
在判断每个数据点的误差后,对误差最大对应的数据点进行新增特征点的操作,将新产生的b样条的误差与原先b样条误差进行比较,不满足则继续进行添加操作,直至符合要求。
[0021]
与现有技术相比,本发明提供了一种基于b样条曲线拟合的数控加工的轨迹平滑方法,具备以下有益效果:
[0022]
1、该基于b样条曲线拟合的数控加工的轨迹平滑方法,能够适用于需要轨迹处理的运动系统中,有益于样条化的数据加工点拟合处理,可以在数据拟合中减小曲率带来的误差影响,同时增加系统精确度,方便对数据点进行操作和处理。满足机床对于轨迹平滑的需求,提升运行性能。
[0023]
2、该基于b样条曲线拟合的数控加工的轨迹平滑方法,结合数据点的预处理和重点特征点操作过程,可以使得激光切割中轨迹处理中的样条得到更高的性能,在对于小线段的判断和特征点处理,满足设定的曲率和精度要求,使得产生的样条曲线更加平滑、并减小拟合误差,使得更加合理。形成了一套适用度高、性能好的处理方案。
附图说明
[0024]
图1为本发明结构示意图;
[0025]
图2为本发明新增特征插值点q
t
示意图;
[0026]
图3为本发明添加特征点前的b样条曲线示意图;
[0027]
图4为本发明新增特征点后的b样条曲线;
[0028]
图5为本发明离散点曲率的计算示意图;
[0029]
图6为本发明特征点的提取示意图。
具体实施方式
[0030]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0031]
请参阅图1-4,一种基于b样条曲线拟合的数控加工的轨迹平滑方法,所述轨迹平滑方法包括以下步骤:
[0032]
s1、采用相邻线段的夹角限制等条件,识别和删除部分问题点,完成对原始数据点的处理。
[0033]
s2、对离散的曲线,进行处理,围绕根据曲率极值点及拐点等条件对重要插值点进行判断与选取,构建出重要特征点。
[0034]
s3、找出对于插值点中对构造曲线的节点、控制点影响较大的特征点,对此进行增加中间插值点。
[0035]
s4、反求控制点,进行拟合误差的计算和b样条曲线的拟合。
[0036]
具体实现步骤如下:
[0037]
步骤1:首先需要判断各个数据点之间的角度情况,以原始数据x
i-1
、xi、x
i 1
相邻点构成的小线段夹角∠x
i-1
xix
i 1
来判断是否允许划分,并设置最小的夹角θ
min
,若∠x
i-1
xix
i 1
《θ
min
,则可以在xi处进行划分。其中有
[0038][0039]
步骤2:在相邻线段中时,若构造b样条曲线,需要判断两个相邻线段的长度,在较长和较短之间的线段长度相差太大,则将长线段部分更倾向于直线处理,加入拟合则会使得弓高误差较大。设置允许的最大线段长度之比λ
max
,在相邻原始数据三点x
i-1
、xi、x
i 1
中,取得到的相邻长度之比为按照λ
min
≤λi≤λ
max
,若λi在此范围内,则将该三点划分同一集,若超过此范围,则将较为短的一段线段两端点划分为不同集合,短线段按照直线形式进行加工,不参与拟合。
[0040]
步骤3:对不符合要求的数据点进行剔除,在相邻数据点中,存在某些会造成多个尖锐角的跳跃点,该点需要加以判断,在相邻原始数据五点x
i-2
、x
i-1
、xi、x
i 1
、x
i 2
中,构成的三个连续的相邻线段夹角分别为∠x
i-2
x
i-1
xi、∠x
i-1
xix
i 1
、∠xix
i 1
x
i 2
,设定最小的夹角θ
min
,当有∠x
i-2
x
i-1
xi《θ
min
,∠x
i-1
xix
i 1
《θ
min
,∠xix
i 1
x
i 2
《θ
min
,时则可认为其中xi为跳跃点,应删除该点。
[0041]
步骤4:选出重要插值点,进行曲率点的计算、拐点提取判断。
[0042]
对于离散点的曲率计算,可以采用基于弦长的方法,通过处理离散点和邻近点之间的位置相对关系来估算各个离散点之间的曲率。
[0043]
可以用弧长为s的参数方程来表示连续的图形轮廓曲线:
[0044][0045]
那么x=x(s),y=y(s),在点s0处的一阶导数为
[0046][0047][0048]
同样,x=x(s),y=y(s),在点s0处的二阶导数表示为
[0049][0050][0051]

[0052][0053]
则计算得到s0处的曲率可为:
[0054][0055]
步骤5:那么用一组互不重合的有序数据点列xi(xi,yi),i=0,1,

,n。表示为li为点xi到点x
i-1
的距离,mi为点xi到点x
i 1
的距离。那么表示的离散点构成的曲率计算可以如图5。
[0056]
若近似计算离散点xi处的曲率,首先需将上述的连续曲线曲率计算公式进行变形和计算推到,需要依次连接各个离散点,利用折线段得到图形轮廓离散点的计算过程,并利用弦长来代替实际的弧长进行推导,那么可以得到xi离散点的一阶导数为:
[0057][0058]
二阶导数表达式为
[0059][0060]
其中,
[0061][0062]
由此可推导出曲率的计算公式为:
[0063][0064]
进行整理和代入可得,离散点xi处的曲率ci得:
[0065][0066]
其中为三角形x
i-1
xix
i 1
的有向面积,
[0067][0068]
步骤6:曲率极值点的设置,根据曲线中某点的曲率等于该点密切圆半径导数,即1/r,那么可以得出该点的离散曲率对应的密切圆半径那么可以根据给定的最大密切圆半径r进行最大曲率极值点c
max
的限制。
[0069]
那么对离散数据点xi及其相邻r个点进行极值点提取,数据点集{x
i-r

xi…
x
i r
}中需满足则点xi为可能存在的曲率极值点。需要规定其中为相邻r个点离散数据点曲率的平均值。
[0070]
步骤7:进行拐点的提取,当连续四个离散数据点x
i-1
、xi、x
i 1
、x
i 2
中能够满足以下关系式时,我们将xi作为拐点,c
i-1ci
《0,c
ici 1
》0,c
i 1ci 2
》0。即第一点与后三点的曲率正负符号异号。
[0071]
步骤8:对离散数据点进行集中处理,选出能重要反应图形轮廓形状的特征点,离散点集xi(xi,yi),i=0,1,

,n中,
[0072]
对首尾端离散数据点x0(x0,y0)、xn(xn,yn)进行提取为特征点,该点在数控中十分重要,需要保证数控加工运行时通过开始结束的数据点。
[0073]
对曲率拐点进行特征点提取,x
i-1
、xi、x
i 1
、x
i 2
中,首先判断是否存在c
i-1
、ci、c
i 1
、c
i 2
中,其中任意一个超出给定最大曲率极值点c
max
,则标记为需要增添的特征点。同时根据设置的曲率界限cw划分,将拐点xi以及c
i-1
、ci、c
i 1
、c
i 2
中位于与中间的点选为特征点。其中为根据拐点xi相邻点求得。
[0074]
步骤9:对提取的特征点进行增加控制点计算,并进行三次b样条的反算控制点
[0075]
首先b样条曲线的总方程如下:
[0076][0077]
其中pi为控制点,f
i,k
(u)是k阶段b样条基函数,
[0078]
三次b样条基函数为:其中
表示阶乘,化简可得的三次b样条各基函数为:
[0079][0080][0081][0082][0083]
那么总体的方程:p(t)=p0*f
0,3
(t) p1*f
1,3
(t) p2*f
2,3
(t) p3*f
3,3
(t)就是三次b样条曲线方程。
[0084]
步骤10:新增特征点对原来曲线的影响,在曲线插值的过程中,插值点qi(i=0,1

n)与节点u
i 3
对应,其中u0=u1=u2=u3=0,u
n 3
=u
n 4
=u
n 5
=u
n 6
=1,若加入新的特征点,则u=[u0,u1,u2,u3…un 6
]变为u

=[u
′0,u
′1,u
′2,u
′3…u′
n 7
],那么原来的总弦长],那么原来的总弦长在加入新的插值点q
t
后,必定会有一个m∈[0,n],使得q
m《qt《qm 1
,新的插值点集q
′i表示为
[0085]
此时总弦长为l

=l-|q
m 1-qm| |q
t-qm| |q
m 1-q
t
|
[0086]
步骤11:采用反求控制点的算法进行计算,在三次b样条p(t),每段三次b样条需要四个控制点,并且该样条的首尾两点均不是控制点。那么在n个插值点的情况下,{qj:j=1,2

,n}以及n 2个控制点{pj:j=0,1,2

,n 1}。一般情况中三次b样条不会经过控制点。
[0087]
那么在三次b样条p(t)中,对于每个插值点的坐标来说,一共有n个方程,但是需要对n 2个未知数求解。因此补充如下边界条件:
[0088]
首末两点是经过q1和qn的非均匀三次b样条曲线,其中q1=p0,qn=p
n 1

[0089]
如果是封闭图形的三次b样条曲线,那么有p0=pn,p1=p
n 1
[0090]
在反求控制点时,首末控制点和首末插值点将重合,所以在端点有双重控制点p0=p1,pn=p
n 1
的三次b样条曲线。
[0091]
根据第j段的三次b样条曲线p(t)计算(1)的矩阵形式为:
[0092][0093]
那么为了使得b样条经过控制点首尾两点,需调添加顶点p-1
和p
n 2
,从而使得p-1
=2p
0-p1以及p
n 2
=2p
n 1-pn。
[0094]
计算(2)在p0=pn,p1=p
n 1
下的矩阵形式为:
[0095][0096]
同理,(3)p0=p1,pn=p
n 1
下的矩阵形式为:
[0097][0098]
步骤12:在确定好反算三次b样条的方法下,进行新增特征点的三次b样条计算,计算误差并修改新增特征点值,数据点集{q
i-r

qi…qi r
}在新增q
t
后,需要满足值小于最大曲率极值点c
max
的限制,修正后的c
′i《c
max
,同时修改后的整体比之前小,做到曲线更加平整。
[0099]
同时根据拟合误差来进行动态的q
t
变化,计算b样条曲线p(t)到每个数据点qi的距离来判断误差大小,通过qi在b样条曲线中的投影点p(t
qi
),求出其中的距离li。
[0100][0101]
在判断每个数据点的误差后,对误差最大对应的数据点进行新增特征点的操作,将新产生的b样条的误差与原先b样条误差进行比较,不满足则继续进行添加操作,直至符合要求。
[0102]
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
再多了解一些

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

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

相关文献