CN111538291A - 一种可部分去除刀位数据点的nurbs曲线插值方法 - Google Patents

一种可部分去除刀位数据点的nurbs曲线插值方法 Download PDF

Info

Publication number
CN111538291A
CN111538291A CN202010434677.1A CN202010434677A CN111538291A CN 111538291 A CN111538291 A CN 111538291A CN 202010434677 A CN202010434677 A CN 202010434677A CN 111538291 A CN111538291 A CN 111538291A
Authority
CN
China
Prior art keywords
data points
interpolation
curvature
nurbs
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
Application number
CN202010434677.1A
Other languages
English (en)
Inventor
陈良骥
高飞
李慧莹
郭广颂
魏永辉
马龙飞
赵波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tianjin Polytechnic University
Original Assignee
Tianjin Polytechnic University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tianjin Polytechnic University filed Critical Tianjin Polytechnic University
Priority to CN202010434677.1A priority Critical patent/CN111538291A/zh
Publication of CN111538291A publication Critical patent/CN111538291A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/41Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by interpolation, e.g. the computation of intermediate points between programmed end points to define the path to be followed and the rate of travel along that path
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/34Director, elements to supervisory
    • G05B2219/34083Interpolation general

Landscapes

  • Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Numerical Control (AREA)
  • Image Generation (AREA)

Abstract

本发明公开了一种可部分去除刀位数据点的NURBS曲线插值方法,针对数控加工编程时生成的海量原始刀位数据点,在满足预设插值精度的条件下实现基于部分刀位数据点筛选去除的NURBS曲线插值。首先,将曲率段分段点、曲率极大值点等数据点选取作为插值数据点,构造生成NURBS插值曲线;其次,计算所有被去除数据点处的插值误差,在超出预设插值误差的曲率段内增加新数据点生成新NURBS插值曲线;重复上述过程,直至所有被去除数据点处都可满足预设插值精度条件为止。本发明可在去除大量原始刀位数据点时也可实现海量原始刀位数据点的精密NURBS曲线插值,对海量离散刀位数据的NURBS化数控加工具有实际应用价值。

Description

一种可部分去除刀位数据点的NURBS曲线插值方法
技术领域
本发明涉及计算机数字控制(CNC)技术领域,特别涉及该领域中海量加工刀位数据点的NURBS曲线插值与光顺处理技术。
背景技术
NURBS曲线插值与光顺处理技术在CNC加工领域具有重要的应用价值。CNC加工一些零件表面上的空间曲线时,为保证加工精度,一般是将该曲线离散成为若干个刀位数据点,势必造成高精密加工时的海量刀位数据点。为此可在CNC系统中考虑先将这些海量加工刀位数据点的NURBS曲线插值表达后进行光顺处理。然而,如果将所有数据点皆参与NURBS曲线的插值计算,对CNC系统而言,运算负荷会极重。因此,可去除掉海量刀位数据点并可进行保持精度条件的NURBS曲线插值与光顺处理是必然选择。此处急需解决好的关键问题是如何尽可能多的选取数据点不参与NURBS曲线插值过程,且能保证不参与插值的数据点与NURBS插值曲线间的最小距离不大于预设插值误差。
针对上述问题诸多国内外研究人员提出了相关方法。韩江提出了一种基于轮廓关键点的B样条曲线插值方法,该方法将所有数据点曲率平均值作为判断依据进行初始特征点的选取,这将会导致即使在相对平直的区域也会分布着较密集的数据点,其结果是原始刀位数据的去除力度不够高。江本赤提出了一种基于曲率优势点的NURBS曲线拟合方法,添加一个约束条件进行初始特征点的筛选,可以进一步实现对原始刀位数据的压缩。袁佶鹏提出了一种FKTP算法进行自适应的NURBS曲线拟合,该方法可以快速进行空间刀位数据点的选取与拟合,但仍然会产生较多余的节点和控制点。刘明增提出了一种基于正则渐进迭代逼近的自适应B样条曲线拟合,该方法可以对选取的特征点进行自适应的拟合,但是该方法需要进行B样条曲线的节点删除工作,这会导致拟合误差的增大以及迭代计算次数的增加。YOSHIMOTO提出了一种针对平面数据拟合的实数编码遗传算法,该算法能够自动确定节点的数量和位置,可以处理光滑的数据拟合问题以及不连续的点或尖点拟合问题,但是该方法需要寻找最优的理论模型,从而导致计算效率不是很高。Park提出了一种基于误差自适应控制的B样条曲线逼近方法,该方法不需要给定控制点的数量就可以得到满足预设拟合精度条件的最少控制点曲线。周红梅提出了采用自适应提取合适的节点进行NURBS曲线插值的方法,该方法可以得到满足插值精度要求的曲线,但是只能识别出局部曲率极大值点和拐点,并不能较好地减少控制点的数量。
但相关现有文献中普遍存在的共性问题是:如果原始刀位数据点选取的不合理就会导致参与插值的刀位数据点过多而去除的刀位数据点过少,为去除更多的原始刀位数据点却又会大大增加迭代计算的次数。
现将与过数据点集NURBS曲线插值相关的背景技术介绍如下。
一条p次NURBS曲线定义为
Figure BSA0000209302790000021
式(1)中:{Pi}是NURBS曲线的控制点,控制点的数量为n+1个,所有控制点{Pi}的连线构成了NURBS曲线的控制多边形;{ωi}是对应控制点{Pi}的权因子值;Ni,p(u)是p次B样条基函数。
B样条基函数定义在节点矢量
U=(u0,u1,…,um)
上(其中:m=n+p+1,节点的个数为m+1)。B样条基函数可由de Boor-Cox递推公式求得
Figure BSA0000209302790000022
针对刀位数据点集{Qi}(i=0,1,...,t)中第i个数据点Qi,相应的曲率近似计算方法如下。通常采用前后相邻三个数据点Qi-1、Qi和Qi+1所形成近似的圆弧进行Qi处曲率的求解。先计算出Qi处的曲率半径
Figure BSA0000209302790000023
则第i个数据点Qi处对应的曲率为
Figure BSA0000209302790000024
发明内容
为尽可能多的选取数据点不参与NURBS曲线插值过程,且能保证不参与插值的数据点与NURBS插值曲线间的最小距离不大于预设插值误差,本发明提供一种基于曲率自适应数据点选取且可保持插值精度的NURBS曲线插值方法。本发明所采用的技术方案是:
1)原始刀位数据曲线按照曲率大小可划分为若干大曲率段和若干小曲率段,各曲率段间分段点位置的初确定和终确定。大曲率段曲线的弯曲程度较大,应选取较多的特征点才能更好地表达曲线的弯曲特征。小曲率段曲线相对而言则比较平直,选取较少的特征点便可较好地表达曲线的特征。
2)每个曲率段内曲率极大数据点的确定。在每个曲率段内,曲率极大值点对于原始数据曲线的局部形状也具有重要影响,对准确、快速的构造原始数据曲线的NURBS插值曲线起着至关重要的作用。因此,可将各个曲率段内的曲率极大值点选取为构造NURBS插值曲线的初始特征点。
3)其他特征数据点的选取与添加。为了减少迭代计算次数,快速构造原始数据曲线的NURBS插值曲线,需在上述选取出的数据点基础上添加曲率自适应的其他特征数据点共同作为初始插值特征数据点集用于构造NURBS插值曲线。
4)选取首末两个原始数据点、曲率段的分段点、各曲率段内的曲率极大值点以及新添加的特征数据点共同作为初始NURBS曲线插值的数据点集,进行NURBS曲线插值。
5)计算出所有未参与插值的数据点Qs到NURBS插值曲线的最小距离εs,进而形成数据点集{Qs}对应的插值误差集{εs},比较这些插值误差,选取出最大值εmax与预设插值误差ε进行比较:如果εmax≤ε,在该相邻插值数据点间不添加新特征数据点,反之需将与εmax对应的数据点添加到插值特征数据点集中。
6)对添加新特征数据点后的插值数据点集,再次执行第4)、5)步,直到所有未参与插值数据点对应的插值误差均不大于预设插值误差为止。
具体实施方式
1)分段点位置的初确定
当第i个数据点Qi对应的曲率ki与邻近的数据点曲率之间满足如下初确定条件之一时,
I.ki-j>ki,j=1,2,3
II.ki+j>ki,j=1,2,3
则可以将Qi作为曲线按曲率分段的初确定分段点。但是考虑到原始数据曲线存在曲率跳跃的情况,仅满足上述一个条件尚不足以保证Qi两侧邻近数据点中的一侧数据点曲率远大于另一侧数据点的曲率。因此,还需针对不同情况辅以其他约束条件,以保证分段点的准确性。
2)分段点位置的终确定
当第i个数据点Qi对应的曲率ki满足条件I时,记
Figure BSA0000209302790000031
Figure BSA0000209302790000032
Figure BSA0000209302790000033
式(5)-(7)中:
Figure BSA0000209302790000034
为向前曲率差分之和;Δki为曲率差分极值,符号′+′与′-′分别表示向前与向后差分运算。
如果满足
Figure BSA0000209302790000035
且满足
Figure BSA0000209302790000036
(其中H为常数,H通常取值为2~3;
Figure BSA0000209302790000037
为所有数据点曲率的平均值),则可以将曲率值ki对应的数据点Qi作为最终确定的分段点。
同样,当第i个数据点Qi对应的曲率ki满足条件II时,记
Figure BSA0000209302790000038
Figure BSA0000209302790000039
Figure BSA00002093027900000310
如果满足
Figure BSA00002093027900000311
且满足
Figure BSA00002093027900000312
则可以将曲率值ki对应的数据点Qi作为曲线按曲率分段的终确定分段点。
3)各曲率段内曲率极大值点位置的确定
经过曲率分段后原始数据曲线将会被分为若干个曲率段,假设某个曲率段内包含q个数据点,若该曲率段内的数据点Qi对应的曲率值ki满足
ki=max(kj)(j=1,2,…,q) (11)
时,则可将该数据点Qi选取为该曲率段内的曲率极大值点。
4)其他特征数据点的添加
a.数据点添加个数的求解
对任意一个含有q个数据点的曲率段,设该曲率段内每l个数据点就有一个数据点参与NURBS曲线的插值,可有如下关于l的计算方法
Figure BSA0000209302790000041
式(12)中:
Figure BSA0000209302790000042
为对γ进行向上取整的运算;ε为预设插值误差;K为曲率振荡次数,是指该曲率段内曲率值超过整条曲线曲率平均值
Figure BSA0000209302790000045
的数据点个数。
当K的值为0时,表示该曲率段是比较平直的小曲率段,则在该曲率段不需进行新特征数据点的添加。
如果K为1时,表示对预设插值误差ε要求过于苛刻,如果想减少迭代次数,此时建议将该曲率段中的全部数据点都作为特征数据点进行选取和添加。
如果K为大于或等于2的数值时,表示该曲率段需要再添加新的特征数据点。设相邻的前后两个特征数据点在原始数据点中的排序为Mf与Me,则在数据段(Mf,Me)内应选取的数据点个数X为
Figure BSA0000209302790000043
b.其他数据点的选取与添加
需添加的新数据点的选取依据是该点在数据段(Mf,Me)中的各自序列子区间内曲率值的大小,在数据段(Mf,Me)内应添加的第x个数据点所对应的序列子区间为
Figure BSA0000209302790000044
将各自序列子区间内曲率极大值的数据点选取为新添加的特征数据点。
5)选取数据点集的NURBS曲线插值
对数据点集{Qi}(i=0,1,...,t)选出的n+1个数据点{Qj}(j=0,1,...,n),过点集{Qj}(j=0,1,...,n)的NURBS曲线插值方法如下。
首先,需要对参与插值的数据点集{Qj}(j=0,1,...,n)进行参数化。目前最常用的是用一种弦长参数化方法进行特征数据点的参数化计算。
对于数据点集{Qj}(j=0,1,...,n),设总弦长为D,则有
Figure BSA0000209302790000051
进而,各数据点{Qj}(j=0,1,...,n)所对应的参数分别表示为
Figure BSA0000209302790000052
设节点矢量为U=(u0,u1,…,um),为了能够让节点矢量很好地反应
Figure BSA0000209302790000053
的分布情况,通常采用取平均值的方法,即
Figure BSA0000209302790000054
Figure BSA0000209302790000055
通常为简化计算,一般将权因子值ωi全部都取为1,则由NURBS曲线的规范性可知
Figure BSA0000209302790000056
此时,式(1)可简化为
Figure BSA0000209302790000057
建立如下关于控制点Pi的线性方程组
Figure BSA0000209302790000058
式(19)中
Figure BSA0000209302790000059
系数矩阵。利用式(15)-(17)求出参数
Figure BSA00002093027900000510
和节点矢量U,由式(2)可求得B样条基函数,代入式(19)将得到如下线性方程组
Figure BSA00002093027900000511
求解式(20)中的控制点集{Pi}(i=0,1,...,n)后,即可唯一确定一条关于参与插值的刀位数据点{Qj}(j=0,1,...,n)的NURBS插值曲线。
6)计算所有未参与插值数据点Qs处的插值误差εs,形成数据点集{Qs}对应的插值误差集{εs},比较这些插值误差,选取出最大值εmax与预设插值误差ε进行比较:如果εmax≤ε,在该相邻插值数据点间不需添加新特征数据点;反之,需将与εmax所对应的数据点添加到插值特征数据点集中。
7)对添加新特征数据点后的插值数据点集,再次执行NURBS曲线插值及插值误差集的计算,并将插值误差与预设插值误差对比,直到所有未参与插值数据点对应的插值误差均不大于预设插值误差为止,完成海量刀位数据点的选取参与NURBS曲线插值的过程。

Claims (3)

1.一种可部分去除刀位数据点的NURBS曲线插值方法,其技术特征在于以原始刀位数据点处曲率大小为主要筛选依据对原始刀位数据点进行部分去除,进行NURBS曲线插值后需计算被去除数据点处的插值误差,再以插值误差大小为依据判断被去除的数据点是否应参与NURBS曲线插值。
2.权利要求1所述的筛选去除刀位数据点的特征是对原始数据曲线按曲率大小进行分段处理,首先实现分段点的初确定和终确定过程,并在各曲率段依照曲率极大原则选取数据点参与NURBS曲线插值。
3.权利要求1所述的筛选去除刀位数据点的特征是对被去除的所有刀位数据点均需计算插值误差,并以插值误差最大值与预设插值误差之间的大小关系判断是否有刀位数据点会重新参与NURBS曲线插值。
CN202010434677.1A 2020-05-21 2020-05-21 一种可部分去除刀位数据点的nurbs曲线插值方法 Pending CN111538291A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010434677.1A CN111538291A (zh) 2020-05-21 2020-05-21 一种可部分去除刀位数据点的nurbs曲线插值方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010434677.1A CN111538291A (zh) 2020-05-21 2020-05-21 一种可部分去除刀位数据点的nurbs曲线插值方法

Publications (1)

Publication Number Publication Date
CN111538291A true CN111538291A (zh) 2020-08-14

Family

ID=71968336

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010434677.1A Pending CN111538291A (zh) 2020-05-21 2020-05-21 一种可部分去除刀位数据点的nurbs曲线插值方法

Country Status (1)

Country Link
CN (1) CN111538291A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113654457A (zh) * 2021-07-22 2021-11-16 太原理工大学 光谱共焦测头波长与位移映射关系标定装置及拟合方法
CN114593726A (zh) * 2022-02-22 2022-06-07 深圳鹏行智能研究有限公司 路径平滑方法及其装置
WO2023103828A1 (zh) * 2021-12-09 2023-06-15 西安交通大学 一种频响测量用单点采样优化方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4648024A (en) * 1983-11-15 1987-03-03 Mitsubishi Denki Kabushiki Kaisha Curvilinear interpolation system and method
CN103631198A (zh) * 2013-11-04 2014-03-12 上海交通大学 基于G2连续Bézier曲线的刀具轨迹压缩方法
CN109976262A (zh) * 2019-03-12 2019-07-05 天津大学 一种针对微线段加工的全局曲率连续光顺方法
CN110908337A (zh) * 2019-12-18 2020-03-24 湘潭大学 一种对nurbs反求控制点预估方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4648024A (en) * 1983-11-15 1987-03-03 Mitsubishi Denki Kabushiki Kaisha Curvilinear interpolation system and method
CN103631198A (zh) * 2013-11-04 2014-03-12 上海交通大学 基于G2连续Bézier曲线的刀具轨迹压缩方法
CN109976262A (zh) * 2019-03-12 2019-07-05 天津大学 一种针对微线段加工的全局曲率连续光顺方法
CN110908337A (zh) * 2019-12-18 2020-03-24 湘潭大学 一种对nurbs反求控制点预估方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
江本赤: "涉及五轴加工刀具路径的NURBS拟合及插补技术研究" *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113654457A (zh) * 2021-07-22 2021-11-16 太原理工大学 光谱共焦测头波长与位移映射关系标定装置及拟合方法
WO2023103828A1 (zh) * 2021-12-09 2023-06-15 西安交通大学 一种频响测量用单点采样优化方法及系统
CN114593726A (zh) * 2022-02-22 2022-06-07 深圳鹏行智能研究有限公司 路径平滑方法及其装置

Similar Documents

Publication Publication Date Title
CN111538291A (zh) 一种可部分去除刀位数据点的nurbs曲线插值方法
Ganesan et al. Optimization of machining techniques in CNC turning centre using genetic algorithm
CN112257296B (zh) 基于改进遗传算法的带有缓存约束的作业车间调度方法
CN108227630B (zh) 一种采用时间参数多项式插补的自由曲面数控加工方法
CN108549325A (zh) 一种自由曲面弧长参数曲线加工轨迹生成方法
CN104867136A (zh) 一种基于距离方差最小的工件点云匹配算法
CN111310106B (zh) 一种基于逐步逼近原始轮廓的切割轮廓拟合优化方法
CN109597359B (zh) 数值控制装置
CN111506988A (zh) 微小线段刀具路径c2连续压缩平滑方法
CN111610751B (zh) 过点集nurbs插值曲线的插值误差多次细分迭代计算方法
CN110109415B (zh) 一种基于密度聚类的多网格刀轴优化方法
CN106874526B (zh) 叶轮机叶片的生产坐标的生成方法和装置
Chauhan et al. Optimizing CNC turning process using real coded genetic algorithm and differential evolution
CN117250909A (zh) 一种基于测地线的自由曲面数控加工路径规划方法
CN117010275A (zh) 一种基于多相似实例的零件加工工艺重用修正方法
CN112051796A (zh) 一种连接二维随机封闭图形生成最短路径的规划方法
CN115994422A (zh) 基于拉削性能的拉刀刃形空间曲线参数化设计方法
CN116466651A (zh) 基于混合启发式算法的数控加工工艺参数优化方法及系统
CN115937468A (zh) 一种无数模工件机器人加工程序自动生成方法
CN108492372A (zh) 一种b样条曲面的形状编辑方法
CN113835397B (zh) 基于b样条曲线和路径积分的线性数控加工路径平滑方法
CN115841001A (zh) 一种整体叶盘磨抛加工无干涉区域生成方法
CN117428582B (zh) 一种异形工件的加工方法及介质
CN1605961A (zh) 基于测量数据点直接数控加工方法
CN113467376A (zh) 一种面向多加工场景的多轴轨迹压缩方法

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
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20200814