CN107272597B - 一种基于进退法的nurbs曲线插补快速预读处理方法 - Google Patents

一种基于进退法的nurbs曲线插补快速预读处理方法 Download PDF

Info

Publication number
CN107272597B
CN107272597B CN201710573835.XA CN201710573835A CN107272597B CN 107272597 B CN107272597 B CN 107272597B CN 201710573835 A CN201710573835 A CN 201710573835A CN 107272597 B CN107272597 B CN 107272597B
Authority
CN
China
Prior art keywords
point
curvature
radius
speed
value
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.)
Active
Application number
CN201710573835.XA
Other languages
English (en)
Other versions
CN107272597A (zh
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.)
Fujian University of Technology
Original Assignee
Fujian University of Technology
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 Fujian University of Technology filed Critical Fujian University of Technology
Priority to CN201710573835.XA priority Critical patent/CN107272597B/zh
Publication of CN107272597A publication Critical patent/CN107272597A/zh
Application granted granted Critical
Publication of CN107272597B publication Critical patent/CN107272597B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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

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)

Abstract

本发明提供一种基于进退法的NURBS曲线插补快速预读处理方法,采用进退法对曲线曲率平缓区进行快速离散,使参数步长增量快速变化,减少预处理过程所需处理曲线点的数目的同时检测速度敏感区,并以曲率半径计算函数作为目标函数,采用步长加速法发现速度敏感区曲率半径极小值点,增强了前瞻处理过程中速度敏感区的识别和分析处理速度,达到快速前瞻,具体包括如下步骤:进退法快速识别速度敏感区;速度敏感区曲率极值近似点获取;修正速度敏感区曲率极值点,处理完毕。使得预处理阶段所需处理点数大大减少,极大的提高了前瞻预处理过程的实时性。

Description

一种基于进退法的NURBS曲线插补快速预读处理方法
技术领域
本发明涉及一种基于进退法的NURBS曲线插补快速预读处理方法。
背景技术
高速高精加工不仅要求数控系统具备实时的插补算法,而且控制精度必须达到亚微米级,插补算法的实时性甚至决定着高速加工实现的可能性,非均匀有理B样条(Non-uniform Rationa1 B-spline,NURBS)曲线具有良好的形状表达能力,在汽车、飞机、造船等型面零件造型设计和加工制造方面应用越来越广,已成为STEP-NC中表达自由曲线曲面的唯一形式。以NURBS形式表示的加工文件代码简练,而且没有精度损失,其代码量只有传统NC代码的1/10~1/100,具有微小段直线不可比拟的优势,但是数控系统要能支持NURBS曲线插补,必须先构造NURBS曲线插补器,插补速度和精度直接受插补器影响。
由于待加工NURBS曲线可能存在高曲率和尖角部分,需在正式插补前对曲线进行预先处理,以识别曲线减速特征并进行相应的速度规划调整。因NURBS样条函数的节点参数沿参数轴的分布是不等距的,曲线参数与弧长之间也不存在精确的数学解析关系,导致曲线轨迹点求解、曲线弧长计算、NURBS曲线求导、曲率计算等面临较高计算负载,给算法实现的实时性带来严重影响,因此,前瞻控制的实时性是NURBS插补器成功与否的关键因素,为提高前瞻控制实时性,就要首先对NURBS曲线进行快速预读处理,以满足NURBS曲线高速高精插补插补要求。
相似案例
1)对比文件1:实时前瞻全程加减速控制的NURBS曲线自适应分段插补方法;申请号:200910113894.4;对比文件1的前瞻预处理部分包括如下步骤:用矩形形式表示NURBS曲线进行预处理,采用自适应速度调整算法调整进给速度,并在曲线曲率各极大值处对曲线分段,再进行S曲线加减速处理。其解决实时性的思想是通过三次NURBS曲线矩阵形式,在预处理前先得到系数Y0,Y1,Y2,Y3,Y0',Y1',Y2',Y3',插补计算时只需要直接调用各项系数,从而大大加快计算速度;该方法在一定程度上降低了计算复杂度,但是,由于NURBS曲线曲率存在曲率平缓区和曲率突变区,而在曲率平缓区一般能满足加工的需求,只有在曲率突变区的点,才有可能导致较高的弓高误差,引起过切等。显然案例1并没有考虑NURBS曲线曲率特性,在曲率平缓区存在冗余处理的问题。
而本发明采用进退法快速倍增或倍减参数步长增量,实现对曲率平缓区曲线的快速离散,通过减少所需处理曲线点的数目,本发明在预处理部分所需处理点数比对比文件1所需处理点数减少约80%,从根本上降低处理的实时性问题。
2)对比文件2:基于机床动力学和曲线特性的NURBS插补方法,申请号:201010546987.9,对比文件2中方法由三个环节组成:预插补、前瞻信息处理和实时插补:预插补环节采用速度自适应调整算法;前瞻信息处理环节首先根据插补点进给速度划分加减速区,然后分别对加减速区进行判断,按照对应的速度模式进行函数速度平滑处理,该方法中预插补处理过程跟本专利快速预读处理所要完成的工作类似,但是,在对比文件2中,其在预插补过程没有考虑如何提高预插补速度,存在冗余处理的情况。
而本发明在实现对比文件2预插补作用的基础上,创新设计进退法减少所需处理的插补点数,处理的点数急剧减少,本发明在预插补部分所需处理点数比对比文件2所需处理点数减少约80%,因此所需处理的时间也大大缩短。
发明内容
本发明要解决的技术问题,在于提供一种基于进退法的NURBS曲线插补快速预读处理方法,使得预处理阶段所需处理点数大大减少,极大的提高了前瞻预处理过程的实时性。
本发明是这样实现的:一种基于进退法的NURBS曲线插补快速预读处理方法,采用进退法对曲线曲率平缓区进行快速离散,使参数步长增量快速变化,减少预处理过程所需处理曲线点的数目的同时检测速度敏感区,并以曲率半径计算函数作为目标函数,采用步长加速法发现速度敏感区曲率半径极小值点,增强了前瞻处理过程中速度敏感区的识别和分析处理速度,达到快速前瞻,具体包括如下步骤:
步骤1、进退法快速识别速度敏感区;
步骤2、速度敏感区曲率极值近似点获取;
步骤3、修正速度敏感区曲率极值点,处理完毕。
进一步地,所述步骤1进一步包括:
以系统最大允许轮廓误差为目标值,从某一点出发,按限定的步长往前探索,如果探索点弓高误差小于等于目标值,则以限定指数递增方式增长步长;当探索点弓高误差大于目标值时,一方面从NURBS曲线当前探索点继续往前以初始步长迭代探索直到找到速度敏感区终点,另一方面则缩小步长增量并向后倒退迭代寻找速度敏感区起点。
进一步地,所述步骤1进一步具体为:步长放大倍数可由步长控制因子η控制,同时为使算法收敛,缩小后的步长不小于初始步长;
令目标值为系统最大允许轮廓误差δMAX,目标函数式为插补误差函数:
其中p(u)表示在曲线参数矢量值u处所对应曲线点的曲率值,v(u)表示在曲线参数矢量值u处所对应曲线点的进给速度,T为插补周期;
给定NURBS曲线初始探索点的参数为u0,初始步长h0,首先以初始步长h=h0向前搜索一步,即u=u0+h,计算fER(u);
(1)如果fER(u)≤δMAX,倍增步长前向探索,
则可知搜索区间[u-h,u]不存在速度敏感点,令h=βh,β为放大系数,且β>1,u=u+h,继续向前探索,为确保[u-h,u]不存在速度敏感区,步长控制因子η应满足η可通过试探和经验进行设定;
(2)如果fER(u)>δMAX,缩小步长后向探索,
令u'=u,则可知速度敏感区起点位于区间速度敏感区终点位于其中待求,
I为确定令u=u-h,h=λh,λ为缩小系数,且0<λ<1,以u=u-h,继续探索区间直到使得fER(u)≤δMAX,从而确定速度敏感区起点为
II为确定令步长为初始步长h=h0,从继续向前探索,直到找到一个n值,使得fER(u'+nh0)≤δMAX,从而确定速度敏感区终点为
III探索到一个速度敏感度区区间为h=h0,继续探索下一个速度敏感区,直到全部探索完毕。
进一步地,所述步骤2进一步包括:
速度敏感区曲率极小值近似点扫描:以速度敏感区起点开始,计算当前点的曲率半径值并作为初始的曲率半径最小值,然后以参数增量步长h向前计算下一点的参数,并计算出该点的曲率半径值,将该曲率半径值与当前记录的曲率半径最小值比较,如果该点的曲率半径值小于记录的曲率半径最小值,则将该点的曲率半径值作为新的曲率半径最小值,然后继续以参数增量步长h计算下一点,并判断是否是新的曲率半径最小值点,重复以上动作直到搜索到敏感区结束,最后得到该速度敏感区曲率半径极小值近似点的参数。
进一步地,所述步骤2具体为:
步骤21:输入速度敏感区区间令起始点为区间起点,即u=us
步骤22:根据当前点参数矢量,计算其曲率半径值ρ,初始时以该曲率半径值最为曲率半径最小值,即ρmin=ρ;
步骤23:以参数步长增量h得到下一个曲线点参数u=u+h,并计算其曲率半径值ρ',如果ρ'<ρmin,则以新曲率半径值更新ρmin,即ρmin=ρ';
步骤24:如果没有到达区间尾,则继续执行步骤23,否则执行步骤25;
步骤25:得到速度敏感区曲率半径极小值近似点p,p点参数为u’。
进一步地,所述步骤3进一步包括:
令速度敏感区间[us,ue],步骤2中得到曲率半径极小值近似点p,及其参数u',令p点曲率半径为ρ(u'),最大允许轮廓误差ER,可得该点进给速度为
令速度敏感区最低速度为vmin,如果p点与实际曲率极值点速率误差满足下式,则以p点作为速度敏感区曲率极小值点,
|v(u')-vmin|≤ε (4-14)
如果p点与实际曲率极值点速率误差满足式(4-15),则对p点参数按式(4-16)进行修正,
|v(u')-vmin|>ε (4-15)
初始设定ub、uf为u'相邻前后曲线点,根据(4-16)对曲率半径极小值近似点进行修正。然后对修正后的值重新进行判断并迭代进行修正,每修正一次,更新ub、uf,第n次修正后,当误差为正时,取ub=un,否则取uf=un
进一步地,所述步骤3进一步具体步骤为:
步骤31、已知步骤2检测到的曲率半径极值近似点参数为u',步长公差ε,最大允许轮廓误差ER,速度敏感区最小进给速度vmin,前一探索点um,后一探索点为un,输出修正后的近似曲率极值点u*
步骤32、初始化,ub=um,uf=un,
步骤33、计算当前近似点速度
步骤34、如果|v(u')-vmin≤ε,则找到满足要求近似曲率半径极值点u*=u',执行步骤36;否则执行步骤35;
步骤35、当v(u')-vmin≥0,修正u1当v(u')-vmin<0,修正u2令ub=u1,uf=u2,继续执行步骤33;
步骤36、结束。
本发明具有如下优点:本发明一种基于进退法的NURBS曲线插补快速预读处理方法,在NURBS曲线预处理阶段采用进退法对曲线曲率平缓区进行快速离散,使参数步长增量快速变化,在减少所需处理点的同时检测速度敏感区,从而大幅提高预处理速度;为快速定位速度敏感区曲率极值点(即拐点),以曲率半径计算函数作为目标函数,采用步长加速法定位速度敏感区曲率半径极小值点,增强了预处理过程中速度敏感区的识别和拐点定位速度,通过以上两个环节,提高预处理实时性,为快速前瞻提供快速准确的NURBS曲线预处理信息。
附图说明
下面参照附图结合实施例对本发明作进一步的说明。
图1是一种基于进退法的NURBS曲线插补快速预读处理方法框图。
图2是一种基于进退法的NURBS曲线插补快速预读处理方法的速度敏感区识别流程图。
图3是一种基于进退法的NURBS曲线插补快速预读处理方法的速度敏感区曲率极值点定位流程图。
图4是一种基于进退法的NURBS曲线插补快速预读处理方法的速度敏感区曲率极值点修正流程图。
具体实施方式
本发明具体实施方式:
首先采用进退法式对曲线曲率平缓区进行快速离散,使参数步长增量快速变化,在减少预插补点的同时检测速度敏感区,从而大幅提高预处理速度;为快速定位速度敏感区曲率半径极小值点,以曲率半径计算函数作为目标函数,采用步长加速法定位速度敏感区曲率半径极小值近似点,并进行修正,增强预处理过程中速度敏感区的识别和曲率半径极小值点定位速度,达到快速前瞻目的。具体包含三个步骤:
采用进退法式对曲线曲率平缓区进行快速离散,使参数步长增量快速变化,在减少预插补点的同时检测速度敏感区。
具体过程为:以系统最大允许轮廓误差为目标值,从某一点出发,按一定的步长往前探索。如果探索点弓高误差比目标值小,则以指数递增方式增长步长;当探索点弓高误差比目标值大,一方面从当前探索点继续往前以初始步长迭代探索直到找到速度敏感区终点,另一方面则缩小步长增量并向后倒退迭代寻找速度敏感区起点。为避免因步长过大而跨越速度敏感区,步长放大倍数可由步长控制因子η控制,同时为使算法收敛,缩小后的步长缩不小于初始步长。
速度敏感区曲率半径极小值近似点定位:
定位速度敏感区曲率半径极小值近似点的思想为:以速度敏感区起点开始,以步长h向前寻找曲率半径最小值近似点,如果当前点曲率半径值小于已记录最小值,则以当前点曲率半径值替换记录值,直到搜索到敏感区结束,最后得到该敏感区的曲率半径极小值近似点。
速度敏感区曲率半径极小值近似点修正思想:根据拐点其前后相邻的两点对拐点近似位置进行修正,通过最大轮廓误差约束条件对曲率半径极小值近似点进行迭代修正,得到满足加工误差限制的曲率半径极小值近似点位置。
本发明的优点在于:由于待加工NURBS曲线可能存在高曲率和尖角部分,需在正式插补前对曲线进行预先处理,以识别曲线减速特征并进行相应的速度规划调整。为提高前瞻处理实时性,提出进退法对NURBS曲线快速预读处理方法,减少预读处理过程所需曲线点数,实现快速定位速度敏感区的区间,然后通过搜索算法定位速度敏感区曲率半径极小值近似点,并对其进行修正。
该方法较传统自适应速度调整方法所需处理点数减少80%以上,极大了提高了前瞻预处理过程的实时性。
在该方法中,程序预读处理模块对输入的NURBS加工程序提取加工信息进行译码、显示等处理,将提取的NURBS曲线段存储到数据缓冲区(FIFO队列)的尾部,接着进行根据机床加工约束条件,对缓冲的NURBS曲线进行快速预读。
扫描速度敏感区:以系统最大允许轮廓误差为目标值,从某一点出发,按一定的步长往前探索,如果探索点弓高误差不大于目标值,则以指数递增方式增长步长;当探索点弓高误差比目标值大,一方面从当前探索点继续往前以初始步长迭代探索直到找到速度敏感区终点,另一方面则缩小步长增量并向后倒退迭代寻找速度敏感区起点,为避免因步长过大而跨越速度敏感区,步长放大倍数可由步长控制因子η控制,同时为使算法收敛,缩小后的步长不小于初始步长,最终获得速度敏感区的区间相关信息。
定位速度敏感区曲率半径极小值近似点:获得速度敏感区区间后,以速度敏感区起点开始,以步长h向前寻找速度敏感区曲率半径极小值近似点,如果当前点曲率半径值小于已记录最小值,则以当前点曲率半径值替换记录值,直到搜索到敏感区结束,最后得到该敏感区的曲率半径极小值近似点位置。
速度敏感区曲率半径极小值近似点修正:根据拐点其前后相邻的两点对拐点近似位置进行修正,通过最大轮廓误差约束条件对拐点进行迭代修正,得到满足加工误差限制的曲率半径极小值近似点位置。
如图1所示,程序预读处理模块对输入的NURBS加工程序提取加工信息进行译码、显示等处理,将提取的NURBS曲线段存储到数据缓冲区(FIFO队列)的尾部,接着进行根据机床加工约束条件,对缓冲的NURBS曲线进行快速预读,识别曲线的减速特征,获得对应的速度敏感区相关信息,包括速度敏感区起始点位置、速度敏感区曲率半径极小值近似点位置及进给速度等信息,最终形成预处理信息,提供给前瞻模块进行速度规划处理。
如图2所示,曲率连续曲线的速度敏感区位于曲率半径低谷处,采用进退法加快曲率平缓区域的预读处理。进退法识别速度敏感区基本思想为:以系统最大允许轮廓误差为目标值,从某一点出发,按一定的步长往前探索。如果探索点弓高误差比目标值小,则以指数递增方式增长步长;当探索点弓高误差比目标值大,一方面从当前探索点继续往前以初始步长迭代探索直到找到速度敏感区终点,另一方面则缩小步长增量并向后倒退迭代寻找速度敏感区起点。为避免因步长过大而跨越速度敏感区,步长放大倍数可由步长控制因子η控制,同时为使算法收敛,缩小后的步长缩不小于初始步长。
令目标值为系统最大允许轮廓误差δMAX,目标函数式为插补误差函数:
其中ρ(u)表示参数矢量为u处的点C(u)曲率半径值,V(u)表示参数矢量为u处的点C(u)进给速度值,T为插补周期;
给定初始点u0,初始搜索步长h0,首先以初始步长h=h0向前搜索一步,即u=u0+h,计算fER(u)。
(1)如果fER(u)≤δMAX,倍增步长前向探索,
则可知搜索区间[u-h,u]不存在速度敏感点,令h=βh,β为放大系数,且β>1,u=u-h,继续向前探索。为确保[u-h,u]不存在速度敏感区,步长控制因子η应满足η可通过试探和经验进行设定。
(2)如果fER(u)>δMAX,缩小步长后向探索
则可知速度敏感区起点位于区间速度敏感区终点位于其中待求。
I为确定令u=u-h,h=λh,λ为缩小系数,且0<λ<1,以u=u-h,继续探索区间直到使得fER(u)≤δMAX,从而确定速度敏感区起点为
II为确定令步长为初始步长h=h0,从u=u+h继续向前探索,直到找到一个n值,使得fER(u'+nh0)≤δMAX,从而确定速度敏感区终点为
III探索到一个速度敏感度区区间为v,继续探索下一个速度敏感区,直到全部探索完毕。
如图2所示,具体算法步骤为:
步骤1:归一化参数区间[0,1],初始步长h=h0,步长放大因子β=2,步长缩小因子令u=h;
步骤2:计算目标函数值
步骤3:如果(fER(u)≤δMAX),即误差满足要求,则:如果则倍增步长,令h=βh,否则h=h。令u=u+h,再执行步骤2;
步骤4:如果(fER(u)>δMAX),即误差超限,则记录当前点ub=uf=u,执行4.1;
4.1当满足(fER(u)>δMAX),循环执行寻找速度敏感区起点;
4.2令h=λh,使步长缩短λ倍;
4.3更新当前点记录,令ub=ub-h,继续执行4.1;
4.4得到第i个速度敏感区起点参数
4.5如果满足(fER(u)>δMAX),循环执行,寻找速度敏感区终点;
4.6令uf=uf+h0,步长增加,继续执行4.5;
4.7得到第i个速度敏感区终点参数
步骤5:如果未到曲线尾,继续执行步骤2,否则执行步骤6;
步骤6:输出敏感区间集合
如图3所示为速度敏感区曲率极小值近似点搜索流程图。
由图1流程通过进退法快速扫描曲线,获得各速度敏感区间集合,还需要进一步定位速度敏感区曲率半径极小值近似点。由3次NURBS曲线曲率连续特点,可通过简单的搜索以获取各敏感区曲率极值点最为速度敏感区曲率半径极小值近似点。定位曲率半径极小值近似点的算法思想为:以速度敏感区起点开始,以步长h向前寻找曲率半径最小值点,如果当前计算曲率半径值小于已记录最小值,则以当前点曲率半径值替换记录值,直到搜索到敏感区结束,最后得到该敏感区曲率极值点位置。
如图3所示,具体步骤为:
步骤1:输入速度敏感区区间令起始点为区间起点,即u=us
步骤2:根据当前点参数矢量,计算其曲率半径值ρ,初始时以该曲率半径值最为曲率半径最小值,即ρmin=ρ;
步骤3:以参数步长增量h得到下一个曲线点参数u=u+h,并计算其曲率半径值ρ',如果ρ'<ρmin,则以新曲率半径值更新ρmin,即ρmin=ρ';
步骤4:如果没有到达区间尾,则继续执行步骤3,否则执行步骤5;
步骤:5:得到速度敏感区曲率半径极小值近似点p,p点参数为u’。
由图2流程定位到的速度敏感区曲率半径极小值近似点与敏感区曲率半径极小值实际点位置存在偏差,偏差大小由探索步长h的值决定。当h越小,所获得点更接近实际位置,但是探索次数也越多;当h越大,探索次数会相应减少,但所获得点与实际位置偏差越大。因此,需要对探索到的拐点进行修正。
令速度敏感区间[us,ue],步骤2中得到曲率半径极小值近似点p,及其参数u’。令p点曲率半径为ρ(u'),最大允许轮廓误差ER,可得该点进给速度为
令速度敏感区最低速度为vmin,如果p点与实际曲率极值点速率误差满足下式,则以p点作为速度敏感区曲率极小值点,
|v(u')-vmin≤ε (4-14)
如果p点与实际曲率极值点速率误差满足式(4-15),则对p点参数按式(4-16)进行修正,
|v(u')-vmin|>ε (4-15)
初始设定ub、uf为u'相邻前后曲线点,根据(4-16)对曲率半径极小值近似点进行修正。然后对修正后的值重新进行判断并迭代进行修正。,每修正一次,更新ub、uf,第n次修正后,当误差为正时,取ub=un,否则取uf=un
具体步骤为:
步骤1:已知探索到的近似曲率半径极值点u,步长公差ε,最大允许轮廓误差ER,速度敏感区最小进给速度vmin,前一探索点um,后一探索点为un,输出修正后的近似曲率极值点u*
步骤2:初始化,ub=um,uf=un,
步骤3:计算当前近似点速度
步骤4:如果|v(u')-vmin|≤ε,则找到满足要求近似曲率半径极值点u*=u',执行步骤6;否则执行步骤5;
步骤5:当v(u')-vmin≥0,修正u1当v(u')-vmin<0,修正u2令ub=u1,uf=u2,继续执行步骤3;
步骤6:结束.
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。

Claims (7)

1.一种基于进退法的NURBS曲线插补快速预读处理方法,其特征在于:采用进退法对曲线曲率平缓区进行快速离散,使参数步长增量快速变化,减少预处理过程所需处理曲线点的数目的同时检测速度敏感区,并以曲率半径计算函数作为目标函数,采用步长加速法发现速度敏感区曲率半径极小值点,增强了前瞻处理过程中速度敏感区的识别和分析处理速度,达到快速前瞻,具体包括如下步骤:
步骤1、进退法快速识别速度敏感区;
步骤2、速度敏感区曲率极值近似点获取;
步骤3、修正速度敏感区曲率极值点,处理完毕。
2.根据权利要求1所述的一种基于进退法的NURBS曲线插补快速预读处理方法,其特征在于:所述步骤1进一步包括:
以系统最大允许轮廓误差为目标值,从某一点出发,按限定的步长往前探索,如果探索点弓高误差小于等于目标值,则以限定指数递增方式增长步长;当探索点弓高误差大于目标值时,一方面从NURBS曲线当前探索点继续往前以初始步长迭代探索直到找到速度敏感区终点,另一方面则缩小步长增量并向后倒退迭代寻找速度敏感区起点。
3.如权利要求2所述的一种基于进退法的NURBS曲线插补快速预读处理方法,其特征在于:所述步骤1进一步具体为:步长放大倍数可由步长控制因子η控制,同时为使算法收敛,缩小后的步长不小于初始步长;
令目标值为系统最大允许轮廓误差δMAX,目标函数式为插补误差函数:
其中p(u)表示在曲线参数矢量值u处所对应曲线点的曲率值,v(u)表示在曲线参数矢量值u处所对应曲线点的进给速度,T为插补周期;
给定NURBS曲线初始探索点的参数为u0,初始步长h0,首先以初始步长h=h0向前搜索一步,即u=u0+h,计算fER(u);
(1)如果fER(u)≤δMAX,倍增步长前向探索,
则可知搜索区间[u-h,u]不存在速度敏感点,令h=βh,β为放大系数,且β>1,u=u+h,继续向前探索,为确保[u-h,u]不存在速度敏感区,步长控制因子η应满足η可通过试探和经验进行设定;
(2)如果fER(u)>δMAX,缩小步长后向探索,
令u'=u,则可知速度敏感区起点位于区间速度敏感区终点位于其中待求,
I为确定令u=u-h,h=λh,λ为缩小系数,且0<λ<1,以u=u-h,继续探索区间直到使得fER(u)≤δMAX,从而确定速度敏感区起点为
II为确定令步长为初始步长h=h0,从继续向前探索,直到找到一个n值,使得fER(u'+nh0)≤δMAX,从而确定速度敏感区终点为
III探索到一个速度敏感度区区间为h=h0,继续探索下一个速度敏感区,直到全部探索完毕。
4.如权利要求1所述的一种基于进退法的NURBS曲线插补快速预读处理方法,其特征在于:所述步骤2进一步包括:
速度敏感区曲率极小值近似点扫描:以速度敏感区起点开始,计算当前点的曲率半径值并作为初始的曲率半径最小值,然后以参数增量步长h向前计算下一点的参数,并计算出该点的曲率半径值,将该曲率半径值与当前记录的曲率半径最小值比较,如果该点的曲率半径值小于记录的曲率半径最小值,则将该点的曲率半径值作为新的曲率半径最小值,然后继续以参数增量步长h计算下一点,并判断是否是新的曲率半径最小值点,重复以上动作直到搜索到敏感区结束,最后得到该速度敏感区曲率半径极小值近似点的参数。
5.如权利要求4所述的一种基于进退法的NURBS曲线插补快速预读处理方法,其特征在于:所述步骤2具体为:
步骤21:输入速度敏感区区间令起始点为区间起点,即u=us
步骤22:根据当前点参数矢量,计算其曲率半径值ρ,初始时以该曲率半径值最为曲率半径最小值,即ρmin=ρ;
步骤23:以参数步长增量h得到下一个曲线点参数u=u+h,并计算其曲率半径值ρ',如果ρ'<ρmin,则以新曲率半径值更新ρmin,即ρmin=ρ';
步骤24:如果没有到达区间尾,则继续执行步骤23,否则执行步骤25;
步骤25:得到速度敏感区曲率半径极小值近似点p,p点参数为u’。
6.如权利要求5所述的一种基于进退法的NURBS曲线插补快速预读处理方法,其特征在于:所述步骤3进一步包括:
令速度敏感区间[us,ue],步骤2中得到曲率半径极小值近似点p,及其参数u',令p点曲率半径为ρ(u'),最大允许轮廓误差ER,可得该点进给速度为
令速度敏感区最低速度为vmin,如果p点与实际曲率极值点速率误差满足下式,则以p点作为速度敏感区曲率极小值点,
|v(u')-vmin|≤ε (4-14)
如果p点与实际曲率极值点速率误差满足式(4-15),则对p点参数按式(4-16)进行修正,
|v(u')-vmin|>ε (4-15)
初始设定ub、uf为u'相邻前后曲线点,根据(4-16)对曲率半径极小值近似点进行修正,然后对修正后的值重新进行判断并迭代进行修正,每修正一次,更新ub、uf,第n次修正后,当误差为正时,取ub=un,否则取uf=un
7.如权利要求6所述的一种基于进退法的NURBS曲线插补快速预读处理方法,其特征在于:所述步骤3进一步具体步骤为:
步骤31、已知步骤2检测到的曲率半径极值近似点参数为u',步长公差ε,最大允许轮廓误差ER,速度敏感区最小进给速度vmin,前一探索点um,后一探索点为un,输出修正后的近似曲率极值点u*;
步骤32、初始化,ub=um,uf=un,
步骤33、计算当前近似点速度
步骤34、如果|v(u')-vmin|≤ε,则找到满足要求近似曲率半径极值点u*=u',执行步骤36;否则执行步骤35;
步骤35、当v(u')-vmin≥0,修正u1当v(u')-vmin<0,修正u2令ub=u1,uf=u2,继续执行步骤33;
步骤36、结束。
CN201710573835.XA 2017-07-14 2017-07-14 一种基于进退法的nurbs曲线插补快速预读处理方法 Active CN107272597B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710573835.XA CN107272597B (zh) 2017-07-14 2017-07-14 一种基于进退法的nurbs曲线插补快速预读处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710573835.XA CN107272597B (zh) 2017-07-14 2017-07-14 一种基于进退法的nurbs曲线插补快速预读处理方法

Publications (2)

Publication Number Publication Date
CN107272597A CN107272597A (zh) 2017-10-20
CN107272597B true CN107272597B (zh) 2019-08-30

Family

ID=60073067

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710573835.XA Active CN107272597B (zh) 2017-07-14 2017-07-14 一种基于进退法的nurbs曲线插补快速预读处理方法

Country Status (1)

Country Link
CN (1) CN107272597B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019119268A1 (zh) * 2017-12-19 2019-06-27 深圳配天智能技术研究院有限公司 数控系统、具有存储功能的装置及nurbs曲线插补方法
CN109669395B (zh) * 2018-12-04 2021-08-06 天津津航技术物理研究所 一种轴对称非球面的变半径圆弧插补方法
CN112650147B (zh) * 2020-12-28 2023-11-28 深圳数马电子技术有限公司 一种曲率限制下的最大速度参数限制方法以及装置
CN113189953B (zh) * 2021-05-26 2022-05-31 华中科技大学 一种基于双码联控的缠绕机工艺优化方法及缠绕机
CN114861134B (zh) * 2022-07-08 2022-09-06 四川大学 一种计算水滴运动轨迹的步长确定方法及存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101493687A (zh) * 2009-03-02 2009-07-29 广西大学 实时前瞻全程加减速控制的nurbs曲线自适应分段插补方法
CN101976060A (zh) * 2010-11-17 2011-02-16 西南交通大学 基于机床动力学和曲线特性的nurbs插补方法
CN102298358A (zh) * 2011-04-30 2011-12-28 上海交通大学 五轴数控加工双nurbs刀具轨迹速度规划方法
CN102608956A (zh) * 2012-03-05 2012-07-25 浙江工业大学 一种基于de Boor算法的NURBS曲线自适应插补控制方法
CN103048953A (zh) * 2013-01-05 2013-04-17 福建工程学院 一种基于arm9嵌入式系统和fpga的nurbs曲线分段插补方法
CN104007705A (zh) * 2014-05-05 2014-08-27 上海交通大学 小线段路径压缩平滑的前瞻插补系统
CN104678899A (zh) * 2015-02-11 2015-06-03 北京配天技术有限公司 曲线速度规划方法、装置及其数控加工路径数据处理方法
CN105759725A (zh) * 2016-03-22 2016-07-13 大连理工大学 速度敏感区间恒速曲线插补速度规划方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101493687A (zh) * 2009-03-02 2009-07-29 广西大学 实时前瞻全程加减速控制的nurbs曲线自适应分段插补方法
CN101976060A (zh) * 2010-11-17 2011-02-16 西南交通大学 基于机床动力学和曲线特性的nurbs插补方法
CN102298358A (zh) * 2011-04-30 2011-12-28 上海交通大学 五轴数控加工双nurbs刀具轨迹速度规划方法
CN102608956A (zh) * 2012-03-05 2012-07-25 浙江工业大学 一种基于de Boor算法的NURBS曲线自适应插补控制方法
CN103048953A (zh) * 2013-01-05 2013-04-17 福建工程学院 一种基于arm9嵌入式系统和fpga的nurbs曲线分段插补方法
CN104007705A (zh) * 2014-05-05 2014-08-27 上海交通大学 小线段路径压缩平滑的前瞻插补系统
CN104678899A (zh) * 2015-02-11 2015-06-03 北京配天技术有限公司 曲线速度规划方法、装置及其数控加工路径数据处理方法
CN105759725A (zh) * 2016-03-22 2016-07-13 大连理工大学 速度敏感区间恒速曲线插补速度规划方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于进给速度敏感点识别的NURBS曲线平滑插补算法研究;林峰等;《中国机械工程》;20120531;第23卷(第9期);第1060-1064页
基于速度敏感区尖点的NURBS曲线分段插补方法;聂明星等;《信息与控制》;20131231;第42卷(第6期);第714-722页

Also Published As

Publication number Publication date
CN107272597A (zh) 2017-10-20

Similar Documents

Publication Publication Date Title
CN107272597B (zh) 一种基于进退法的nurbs曲线插补快速预读处理方法
CN101539769B (zh) 基于二次b样条曲线对g01代码的拟合及插补方法
CN101493687B (zh) 实时前瞻全程加减速控制的nurbs曲线自适应分段插补方法
CN105785921B (zh) 一种工业机器人nurbs曲线插补时的速度规划方法
CN109416529B (zh) 数控系统、具有存储功能的装置及nurbs曲线插补方法
EP2495628A1 (en) Tool path generation method and device
CN106814694B (zh) 一种高速高精度的参数曲线前瞻插补方法
CN108062073B (zh) 一种用于高质量加工的圆弧平滑压缩插补方法
JP4800873B2 (ja) 近似点群データからの近似曲線生成プログラム及び方法
CN110471368A (zh) 一种高速数控机床加工速度自适应的前瞻插补方法
CN106897501B (zh) 面向自适应加工中基于叶片类零件变形的定位优化方法
CN109597962B (zh) 一种基于预测和迭代补偿的参数插值方法
CN109782692A (zh) 一种3c产品壳体过渡区加工路径自适应规划的方法
CN111506988A (zh) 微小线段刀具路径c2连续压缩平滑方法
CN114545863B (zh) 一种基于b样条曲线拟合的数控加工的轨迹平滑方法
CN109598761B (zh) 一种曲线测量定位方法
CN113204215A (zh) 一种数控加工全局nurbs轨迹实时插补方法及其应用
CN109270892A (zh) 一种数控加工中非圆曲线的最小二乘螺旋线逼近算法
CN108508847A (zh) 一种基于近似等弓高误差小线段逼近Nurbs曲线的方法
CN114815743A (zh) 一种数控机床的曲线插补方法、系统及存储介质
CN112051803B (zh) 一种基于空间平面法向量的小线段光顺方法
CN117250909A (zh) 一种基于测地线的自由曲面数控加工路径规划方法
CN109283892A (zh) 一种基于参数化曲线几何特征和弓高误差限制的进给速率自适应插补算法
WO2022149278A1 (ja) 加工プログラム修正装置、数値制御装置、加工プログラム修正方法および機械学習装置
JP2020106991A (ja) 処理時間短縮機能を備えた自由曲線プログラムの処理装置

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