CN111610751A - 过点集nurbs插值曲线的插值误差多次细分迭代计算方法 - Google Patents
过点集nurbs插值曲线的插值误差多次细分迭代计算方法 Download PDFInfo
- Publication number
- CN111610751A CN111610751A CN202010434678.6A CN202010434678A CN111610751A CN 111610751 A CN111610751 A CN 111610751A CN 202010434678 A CN202010434678 A CN 202010434678A CN 111610751 A CN111610751 A CN 111610751A
- Authority
- CN
- China
- Prior art keywords
- subdivision
- parameter
- interpolation
- nurbs
- iterative calculation
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical 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/408—Numerical 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 data handling or data format, e.g. reading, buffering or conversion of data
- G05B19/4086—Coordinate conversions; Other special calculations
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/35—Nc in input of data, input till input file format
- G05B2219/35356—Data handling
Landscapes
- Engineering & 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插值曲线上各初细分参数值对应点的距离;选取初细分较短距离对应参数的某一侧进行参数区间的再细分,计算去除数据点到再细分参数值对应点的距离;比较上次再细分较短距离与加工允许误差上限值之间的大小关系,如果较短距离不大于加工允许误差上限值,则停止迭代计算过程,反之将较短距离对应参数的某一侧进行参数区间的再细分,重复迭代计算过程,直到求得的较短距离不大于加工允许误差上限值为止。
Description
技术领域
本发明涉及计算机数字控制(CNC)技术领域,特别涉及该领域中加工刀位点的样条化光顺处理技术。
背景技术
NURBS曲线插值技术在CNC加工领域具有重要的应用价值。当前,在一些高档CNC系统中,已基本具备离散加工刀位的样条化光顺插补计算能力,为提高系统样条插补计算程序的执行效率,往往需要从大量的原始刀位数据点集中去除掉多数数据点的同时,寻求最优化的NURBS插值曲线表达,而该最优寻求的目标则是被去除掉的数据点处的插值误差应不大于加工允许误差上限值。由此看来,被去除掉的数据点处的插值误差(即该数据点与NURBS插值曲线间的最小距离)的计算方法及准确程度对于CNC系统的刀位点样条化光顺处理能力的高低显得尤为重要。
现有一些方法针对该插值误差的计算给出了相应的计算模型,但插值误差计算模型的好坏将直接影响过点集NURBS曲线插值的迭代次数及参与插值的数据点的数量。从理论上分析,该插值误差值应是以数据点为圆心,并与NURBS曲线相切的圆弧作为半径,将该半径值作为理论插值误差值。但由于该方法计算过于复杂,绝大多数学者并未采取该方法进行计算。当前最为广泛的偏差计算方法,是对全部数据点进行参数化计算,求出各个参数值在NURBS曲线上的对应点,将数据点与NURBS曲线上对应点之间的距离作为实际插值误差值。因此,通过对过点集NURBS插值曲线插值误差的有效计算,对CNC系统实现精密样条光顺插补控制算法、进一步提高CNC系统的加工精度具有重要作用和现实意义。
现将与过点集NURBS曲线插值相关的背景技术介绍如下。
一条p次NURBS曲线定义为
式(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递推公式求得
针对刀位数据点集{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,则有
进而,各数据点{Qj}(j=0,1,…,n)所对应的参数分别表示为
u0=…=up=0
um-p=…=um=1
建立如下关于控制点Pi的线性方程组
求解式(8)中的控制点集{Pi}(i=0,1,...,n)后,即可唯一确定一条关于参与插值的刀位数据点{Qj}(j=0,1,…,n)的NURBS插值曲线。
发明内容
为解决未参与插值的刀位数据点处插值误差计算等方面存在的技术问题,本发明提供一种未参与插值数据点与NURBS插值曲线间最小距离的近似求解计算方法。本发明所采用的技术方案是:
首先,确定未参与插值刀位数据点(后简称“待测数据点”)在原始数据点集中所对应的节点矢量中的最小参数节点区间,依靠相应的步长进行参数区间的初细分,并获得相应的初细分参数值,计算待测数据点到NURBS插值曲线上初细分参数值对应点的距离,通过对比找出其中相对较短的距离及相应参数值。
其次,在初细分后计算的较短距离对应参数的某一侧进行参数区间的再细分,并获得所有的再细分参数值,计算待测数据点到再细分参数值对应点的距离,通过对比找出其中相对较短的距离及相应参数值。
最后,比较上次再细分后较短距离与加工允许误差上限值之间的大小关系,如果较短距离不大于加工允许误差上限值,则停止迭代计算过程,反之,再次将较短距离对应参数的某一侧进行参数区间的再细分,重复迭代计算过程,直到求得的较短距离不大于加工允许误差上限值为止。
附图说明
图1是插值误差近似求解时的初细分和再细分迭代计算过程示意图。
具体实施方式
对于原始刀位数据点集{Qi}(i=0,1,…,t)中不属于参与插值数据点集{Qj}(j=0,1,…,n)的其他未参与NURBS曲线插值的数据点集{Qs}(s=0,1,...,t-n-1),计算待测数据点Qs处的插值误差εs,并将是否满足εs不大于加工允许误差上限值ε作为插值迭代计算的结束条件。为计算待测数据点Qs处的插值误差εs,本发明提出如下待测数据点到NURBS插值曲线最小距离的近似求解计算方法,其具体实施方式如下。
确定待测数据点Qs在原始刀位数据点集{Qi}(i=0,1,…,t)中所对应的节点矢量中的最小参数节点区间(ua,ub),如附图1所示。
将参数节点区间(ua,ub)以步长h进行R(R取值为相邻两特征数据点之间未参与插值的数据点的个数)等分,取ur=ua+rh(r=0,1,2,…,R),其中步长h的计算公式为
计算Qs与C(ur)间的距离εr,取εr中的最小值为εc,与εc对应的曲线上的点为C(uc),如附图1中参数节点区间(ua,ub)的局部放大示意图所示。εr和εc的计算公式分别为
εr=|Qs-C(ur)|,ua≤ur≤ub (10)
至此,完成参数的初细分计算过程。后面转入参数的再细分迭代计算过程。
以参数uc为中心,前后两侧各取一个参数uc-和uc+(其中uc-=uc-h,uc+=uc+h)。分别计算数据点Qs到两点C(uc-)与C(uc+)的距离Lc-与Lc+,取两者的较小值为Lmin。
在取得Lmin的一侧(不妨设为C(uc+)),取W个参数节点构成(uc,uc+W)参数区间(通常W取值为3即可获得满意精度),将数据点Qs向C(uc)到C(uc+3)的NURBS曲线段投影,设投影点为C(uw)(w=0,1,2,…),计算Qs与C(uw)间的距离εw,取εw中的最小值为εs,与εs对应的曲线上的点为C(ud),如附图1中对参数区间(uc,uc+3)的局部放大示意图所示。
在参数节点区间(uc,uc+W)内以步长h′进行R′(R′=10W)等分,取uw=uc+wh(w=0,1,2,…,R′),其中步长h′的计算公式为
数据点Qs到C(uw)之间的距离εw和εs的计算公式分别为
εw=|Qs-C(uw)|,uc≤uw≤uc+W (13)
经过上述再细分计算过程,如果求得的距离εs不大于加工允许误差上限值ε,则以εs为插值误差的近似值,反之如果求得的距离εs大于加工允许误差上限值ε,重复上述误差再细分迭代计算过程,直到εs不大于ε时为止。
现将本发明所描述的插值误差多次细分迭代近似求解计算方法中的一次迭代计算过程的具体实施步骤整理如下。
1)搜索出数据点Qs在原始数据点序列中所对应的节点矢量中的最小参数节点区间(ua,ub),将该参数区间以式(9)计算的步长h进行R等分,分别获得各参数等分点处的值ur(r=0,1,2,…,R)。
2)利用式(10)计算Qs到参数ur对应的曲线上各点间的距离εr,并结合式(11)求得较短距离εc,同时确定εc对应的曲线上点C(uc)及参数uc。
3)以参数uc为中心,前后两侧各取一个参数uc-和uc+,计算Qs到两点C(uc-)与C(uc+)的距离Lc-与Lc+,确定两者中的较小值Lmin。
4)在取得Lmin的一侧获得参数区间(uc,uc+W),利用式(12)进行R′等分,分别获得各参数等分点处的值uw(w=0,1,2,…,R′),利用式(13)和(14)分别计算εw和εs。
Claims (3)
1.过点集NURBS插值曲线的插值误差多次细分迭代计算方法,其技术特征在于需进行NURBS插值曲线参数的初细分和多次再细分迭代计算过程,每次再细分迭代计算后获得的较短距离均需与加工允许误差上限值进行比较,并以不大于加工允许误差上限值为停止迭代计算的结束条件。
2.权利要求1所述的初细分计算过程的特征是需将待测数据点所对应的NURBS插值曲线参数节点区间进行参数细分,以获得NURBS插值曲线上初细分点的位置坐标矢量,对比所有初细分点与待测数据点之间的距离,寻求较短距离及对应的参数。
3.权利要求1所述的一次再细分迭代计算过程的特征是需对上一次细分计算后获得的较短距离对应的参数附近的参数区间进行再细分,获得NURBS插值曲线上再细分点的位置坐标矢量,对比本次所有再细分点与待测数据点之间的距离,寻求较短距离及对应的参数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010434678.6A CN111610751B (zh) | 2020-05-21 | 2020-05-21 | 过点集nurbs插值曲线的插值误差多次细分迭代计算方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010434678.6A CN111610751B (zh) | 2020-05-21 | 2020-05-21 | 过点集nurbs插值曲线的插值误差多次细分迭代计算方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111610751A true CN111610751A (zh) | 2020-09-01 |
CN111610751B CN111610751B (zh) | 2023-07-28 |
Family
ID=72199484
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010434678.6A Active CN111610751B (zh) | 2020-05-21 | 2020-05-21 | 过点集nurbs插值曲线的插值误差多次细分迭代计算方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111610751B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112051803A (zh) * | 2020-09-17 | 2020-12-08 | 华南理工大学广州学院 | 一种基于空间平面法向量的小线段光顺方法 |
CN116310048A (zh) * | 2023-03-29 | 2023-06-23 | 上海慕灿信息科技有限公司 | 一种基于曲率细分计算光线跟踪与nurbs曲面交点的方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5717847A (en) * | 1992-12-24 | 1998-02-10 | Schulmeiss; Traugott | Method for generating plane technical curves or contours |
CN1430183A (zh) * | 2001-11-27 | 2003-07-16 | 三星电子株式会社 | 用深度图像表示三维物体的节点结构 |
CN102109834A (zh) * | 2011-01-10 | 2011-06-29 | 浙江工业大学 | 基于nurbs曲线插补方法的运动控制系统 |
CN102308201A (zh) * | 2008-12-24 | 2012-01-04 | 斯奈克玛 | 机械零件的无损检查方法 |
US20140267268A1 (en) * | 2013-03-15 | 2014-09-18 | 3D Systems, Inc. | Apparatus and methods for detailing subdivision surfaces |
CN108073138A (zh) * | 2016-11-08 | 2018-05-25 | 沈阳高精数控智能技术股份有限公司 | 适用于高速高精加工的椭圆弧平滑压缩插补算法 |
-
2020
- 2020-05-21 CN CN202010434678.6A patent/CN111610751B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5717847A (en) * | 1992-12-24 | 1998-02-10 | Schulmeiss; Traugott | Method for generating plane technical curves or contours |
CN1430183A (zh) * | 2001-11-27 | 2003-07-16 | 三星电子株式会社 | 用深度图像表示三维物体的节点结构 |
CN102308201A (zh) * | 2008-12-24 | 2012-01-04 | 斯奈克玛 | 机械零件的无损检查方法 |
CN102109834A (zh) * | 2011-01-10 | 2011-06-29 | 浙江工业大学 | 基于nurbs曲线插补方法的运动控制系统 |
US20140267268A1 (en) * | 2013-03-15 | 2014-09-18 | 3D Systems, Inc. | Apparatus and methods for detailing subdivision surfaces |
CN108073138A (zh) * | 2016-11-08 | 2018-05-25 | 沈阳高精数控智能技术股份有限公司 | 适用于高速高精加工的椭圆弧平滑压缩插补算法 |
Non-Patent Citations (10)
Title |
---|
唐明等: "NURBS曲线插补速度控制改进研究", 《机床与液压》 * |
唐明等: "NURBS曲线插补速度控制改进研究", 《机床与液压》, no. 10, 28 May 2019 (2019-05-28) * |
宋宏勋;韩毅;吴初娜;: "一种基于等值线法的NURBS曲面与平面的求交算法", 数字技术与应用, no. 07 * |
宋宏勋等: "一种基于等值线法的NURBS曲面与平面的求交算法", 《数字技术与应用》 * |
宋宏勋等: "一种基于等值线法的NURBS曲面与平面的求交算法", 《数字技术与应用》, no. 07, 15 July 2011 (2011-07-15) * |
江本赤等: "一种双NURBS曲线的参数迭代插补算法", 《机械科学与技术》 * |
江本赤等: "一种双NURBS曲线的参数迭代插补算法", 《机械科学与技术》, no. 05, 29 October 2018 (2018-10-29) * |
王强等: "运动控制系统中NURBS曲线变步长实时插补算法的研究", 《机械制造》 * |
王强等: "运动控制系统中NURBS曲线变步长实时插补算法的研究", 《机械制造》, no. 08, 20 August 2011 (2011-08-20) * |
祁佳玳等: "点到代数曲线最短距离的细分算法", 《浙江大学学报(理学版)》, no. 03 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112051803A (zh) * | 2020-09-17 | 2020-12-08 | 华南理工大学广州学院 | 一种基于空间平面法向量的小线段光顺方法 |
CN112051803B (zh) * | 2020-09-17 | 2022-02-08 | 华南理工大学广州学院 | 一种基于空间平面法向量的小线段光顺方法 |
CN116310048A (zh) * | 2023-03-29 | 2023-06-23 | 上海慕灿信息科技有限公司 | 一种基于曲率细分计算光线跟踪与nurbs曲面交点的方法 |
CN116310048B (zh) * | 2023-03-29 | 2024-01-26 | 上海慕灿信息科技有限公司 | 一种基于曲率细分计算光线跟踪与nurbs曲面交点的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111610751B (zh) | 2023-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111061213B (zh) | 一种基于Bezier曲线转角平滑过渡算法的加工方法 | |
CN108062073B (zh) | 一种用于高质量加工的圆弧平滑压缩插补方法 | |
CN109976262B (zh) | 一种针对微线段加工的全局曲率连续光顺方法 | |
CN112396690B (zh) | 基于改进型向心参数化法的曲面高精重构方法 | |
CN108073138B (zh) | 适用于高速高精加工的椭圆弧平滑压缩插补算法 | |
CN111610751A (zh) | 过点集nurbs插值曲线的插值误差多次细分迭代计算方法 | |
CN108062071B (zh) | 参数曲线轨迹伺服轮廓误差的实时测定方法 | |
CN113276130B (zh) | 一种基于点云切片的自由曲面喷涂路径规划方法及系统 | |
CN114545863A (zh) | 一种基于b样条曲线拟合的数控加工的轨迹平滑方法 | |
CN108594764B (zh) | 一种三角网格模型的等残留高度刀触点轨迹生成方法 | |
CN110908337B (zh) | 一种对nurbs反求控制点预估方法 | |
CN115202291A (zh) | 一种基于椭圆弧拟合的nurbs曲线插补方法 | |
CN114815743A (zh) | 一种数控机床的曲线插补方法、系统及存储介质 | |
CN113111404A (zh) | 一种空间连续小线段圆弧与直线拟合方法 | |
CN113515091B (zh) | 一种拐角平滑样条的轨迹实时插补方法和装置 | |
CN116484635A (zh) | 基于改进圆弧拟合算法的正弦弧线拟合局部光顺方法 | |
CN113554670A (zh) | 一种基于三次样条的拟合方法以及曲线拟合装置 | |
WO2022095507A1 (zh) | 基于平均滤波的直线段平滑方法、装置、设备及存储介质 | |
CN113467376B (zh) | 一种面向多加工场景的多轴轨迹压缩方法 | |
CN114019911B (zh) | 一种基于速度规划的曲线拟合方法 | |
CN114967597A (zh) | 一种基于双向泰勒保证数控加工刀具轨迹g2连续的曲线拟合方法 | |
CN108628255B (zh) | 一种指令点纠正平滑处理方法 | |
Winter et al. | NURBS-based shape and parameter optimization of structural components with an adaptive amount of control points | |
KR100344917B1 (ko) | 선박용 1차곡면 외판의 가공정보 산출방법 | |
CN117274425B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |