微小线段刀具路径C2连续压缩平滑方法与流程

文档序号:21781048发布日期:2020-08-07 20:04阅读:377来源:国知局
微小线段刀具路径C2连续压缩平滑方法与流程

本发明涉及一种数控加工技术领域的离线系统,尤其是微小线段刀具路径c2连续压缩平滑方法;具体是根据双弓高误差检测方法扫描微小线段(g01代码)生成具有较少控制点数,根据逼近误差模型和路径优化模型生成具有较小能量值的b样条曲线。



背景技术:

虽然小线段刀具路径的局部光顺方法具有实施简单、计算量小等一系列优点,但是这种局部光顺方法会在每个拐角处生成一条转接曲线,且小线段的段数越多,生成的转接曲线越多。对于微小线段刀具路径,这不仅考验数控系统的存储能力,还考验数控系统的前瞻插补能力。

微小线段刀具路径的压缩平滑方法主要分两种,即插值方法和逼近方法。插值方法构造的曲线精确通过数据点,且曲线的控制点个数等于线性刀具路径的数据点个数。显然,插值方法并不适合大量连续微小线段刀具路径。相比于插值方法,逼近方法一般可以构造具有较少控制点的自由曲线逼近微小线段刀具路径,且构造的曲线相对平滑。几何迭代法,又称为渐进迭代逼近(progressive-iterativeapproximation,简称pia)方法,是一种具有明显几何意义的逼近方法。pia方法把数据点作为b样条曲线的初始控制点,通过不断地调整曲线的控制点,使生成的极限曲线逐渐逼近数据点。此方法构造的b样条曲线的控制点个数依旧等于数据点个数,依旧不适合大量连续微小线段刀具路径的光顺。另一种具有明显几何意义的逼近方法是采用一些技术手段在数据点中选取一些表征数据点几何特征的点,即特征点,再根据这些特征点构造逼近曲线,这种基于特征点的逼近方法给数据拟合带来了很大的灵活性。特征点的个数和位置完全依赖于路径的几何特征。

对现有技术检索发现,有用b样条曲线进行小线段压缩平滑的(cn104007705b),然而由于采用的特征点选择方法没有充分地考虑路径的几何特性,导致逼近曲线的数据没有有效压缩;虽然采用的hausdorff方法检测曲线的逼近精度,但没有阐明当逼近精度不满足精度要求时如何降低逼近误差。



技术实现要素:

针对现有技术以上不足,本发明的目的在于采用对微小线段拟合,而非转接的方式将微小线段光顺为b样条曲线。

本发明提供的一种微小线段刀具路径c2连续压缩平滑方法,包括:数据压缩模块和路径平滑模块;

数据压缩模块:用于通过读取g代码中的g01段信息,提取代码中的微小线段坐标,根据双弓高误差检测方法检测微小线段坐标以获取合理的特征点分布,并通过最小二乘拟合实现逼近曲线的数据压缩;

路径平滑模块:用于通过多边形边的逼近误差模型逐条计算路径多边形边的逼近误差,并在不满足逼近精度的对应边上取点,所取点至逼近曲线的最短法向距离作为新的约束添加到全局刀具路径优化模型中,实现路径平滑。

优选地,所述数据压缩模块包括:在离散曲率和离散挠率的基础上建立离散曲率变化计算模型;将离散曲率、离散挠率和离散曲率变化模型与自由曲线弓高误差估算模型结合提出用于特征点选择的双弓高误差检测方法;对微小线段执行双弓高误差检测得到恰当的特征点分布;基于特征点对微小线段执行最小二乘拟合和特征点插入,以此获得各点均满足拟合精度的逼近曲线;

优选地,所述路径平滑模块包括:在自由曲线弓高误差估算模型的基础上建立路径多边形边的逼近误差模型;通过多边形边的逼近误差模型逐条计算路径多边形边的逼近误差,并在不满足逼近精度的对应边上取点,所取点至逼近曲线的最短法向距离作为新的约束添加到全局刀具路径优化模型,在指定的拟合精度范围内恰当地调整逼近曲线的控制点。

优选地,选取合适的点作为拟合所用特征点,具体如下:

数据点的离散曲率计算模型和离散挠率计算模型分别为

式中,δpi=pi+1-pi;δpi+1=pi+2-pi+1;δpi+2=pi+3-pi+2;

类似地,也可以得到点pi的离散曲率变化计算模型,推导过程如下:

首先将微小线段路径看成一条用r(u)表示的自由曲线,并假设r(u)的一阶导矢二阶导矢和三阶导矢在曲线参数域内有定义且连续。根据导数的定义分别有

式中,参数变化步长δu>0。

令δrk=r(u+kδu)-r(u+(k-1)δu),并代入上式得

式中,δr1=r(u+δu)-r(u);δr2=r(u+2δu)-r(u+δu);δr3=r(u+3δu)-r(u+2δu)。

将上面得到的代入曲率变化计算模型有

改进后有

将式中的δr1、δr2和δr3分别替换为δpi、δpi+1和δpi+2得离散曲率变化计算模型

式中,δpi=pi+1-pi;δpi+1=pi+2-pi+1;δpi+2=pi+3-pi+2。

通过离散曲率模型、离散挠率模型和离散曲率变化计算模型可以得到点pi沿方向pi→pi+1→…的离散曲率κfi、离散挠率τfi和离散曲率变化κ′fi。为了加以区分,将κfi、τfi和κ′fi称为点pi的正向离散曲率、正向离散挠率和正向离散曲率变化。反之,将上式中的δpi、δpi+1和δpi+2分别替换为pi-1-pi、pi-2-pi-1和pi-3-pi-2,则可得到点pi的反向离散曲率κbi、反向离散挠率τbi和反向曲率变化κ′bi。

根据自由曲线三阶局部重建定理,除了刀具路径首末端的几个数据点,刀具路径的其它数据点都有两条近似密切螺旋线,一组是根据正向离散曲率、正向离散挠率和正向离散曲率变化确定的正向密切螺旋线hfi(s),一组是根据反向离散曲率、反向离散挠率和反向离散曲率变化确定的反向密切螺旋线hbj(s),其中j=i+1,…,n。lfi和lbj分别表示hfi(s)和hbj(s)上的弦长且lfi=lbj=||pi-pj||。将κfi、τfi、κ′fi和lfi代入自由曲线弓高误差估算模型得点pi的正向弓高误差δfi,将κbj、τbj、κ′bj和lbj代入自由曲线弓高误差估算模型得点pj的反向弓高误差δbj。假设点pi是根据双弓高误差检测确定的特征点,点pj是待检测点,那么就可以根据δfi和δbj的大小确定点pj是否应该选为特征点。

基于自由曲线弓高误差估算模型的双弓高误差检测方法可以得到比较理想的特征点分布:刀具路径越平滑,特征点分布越稀疏;刀具路径越弯曲,特征点分布越密集。但是需要注意,自由曲线弓高误差估算模型是基于自由曲线三阶局部重建定理建立的,它考量的是刀具路径的局部几何学特性,因此双弓高误差检测中指定的弓高误差不能设置的太大,以免检测失真。

优选地,最小二乘拟合求取初始控制点,具体如下:

特征点对应的参数值

式中,为特征点的累积弦长,

特征点对应的节点矢量

式中,p为b样条曲线的次数。

最小二乘拟合中,除了需要特征点对应的参数值和节点矢量,还需要微小线段刀具路径对应的参数值

式中,为数据点的累积弦长,

除刀具路径的首末点,其余数据点在最小二乘的意义下被b样条曲线rbs(u)逼近为

式中,rbs(u)的节点矢量和参数值在前面已经计算过的,所以上式是关于控制点的标量函数。令上式对未知控制点的偏导数都等于零,可将上式转化为一个以为未知量的线性方程组。通过高斯消元法或lu分解法解得

优选地,特征点插入保证路径多边形顶点的逼近精度,具体如下:

为微小线段刀具路径,rbs(u)为根据特征点构造的b样条曲线,为rbs(u)上的足点。假设点pi为保存到的特征点,但计算后发现点pi的逼近误差仍然是最大的且大于指定的逼近误差。如果点pi-1和pi+1都不是特征点,并且点pi-1的逼近误差大于点pi+1的逼近误差,则点pi-1作为新的特征点插入到控制点中;如果点pi-1的逼近误差小于点pi+1的逼近误差,则点pi+1作为新的特征点插入到控制点中。如果点pi-1是特征点,则在点pi-1和点pi的两侧寻找逼近误差较大且没有被选为特征点的数据点作为新的特征点插入到中。

优选地,特征点插入保证路径多边形边的逼近精度,具体如下:

根据逼近曲线是否位于切矢的同侧,将路径多边形的边与逼近曲线的位置关系分为六种情况。点pi和点pi+1为路径多边形的顶点,rbs(u)为根据特征点生成的初始b样条曲线,点pfi和点pfi+1分别为点pi和点pi+1的足点。除点pfi和点pfi+1所在弦与初始b样条曲线之间的几何偏离外,还存在点pi和点pi+1所在边与点pfi和点pfi+1所在弦之间的几何偏离。对于第一种几何偏离,可以采用自由曲线弓高误差估算模型来计算。将点pi的曲率、挠率、曲率变化和弦长||pfi-pfi+1||代入自由曲线弓高误差估算模型得第一种几何偏离δi的近似值。对于第二种几何偏离,可以通过点pi和点pi+1在足点pfi和点pfi+1所在弦的投影来计算。

点pi在足点pfi和点pfi+1所在弦上的投影点gi满足

(pi-gi)·(pfi-pfi+1)=0

点pi+1在足点pfi和点pfi+1所在弦上的投影点gi+1满足

(pi+1-gi+1)·(pfi-pfi+1)=0

解方程分别可得gi和gi+1。

最终得路径多边形第i条边的逼近误差模型

σi=δi+max{||pi-gi||,||pi+1-gi+1||}

此式只会高估而不会低估真实的逼近误差。从保证逼近精度的角度看,上面建立的逼近误差模型对前述六种情况均有效。

优选地,平滑路径生成,具体如下:

采用路径多边形得逼近误差模型逐条计算路径多边形边得逼近误差,并在不满足逼近精度的对应边上取点,并被保存到到b样条曲线的最短法向距离作为新的几何偏离约束添加到全局刀具路径优化模型,于是有

qtkq+2qtkδq+(δq)tkδq

s.t.

式中,的足点。

上式为二次规划问题,可采用内点法、拉格朗日法等进行求解。经过k次迭代,得到控制点变化量以及更新后的控制点

与现有技术相比,本发明具有如下的有益效果:

1.双弓高误差检测方法能够充分地考虑路径的几何特征,用较少的特征点表征刀具路径,大幅地减少逼近曲线的控制点个数;

2.将路径多边形边的逼近误差模型与传统的刀具路径优化模型结合可以在保证曲线逼近精度的同时显著地改善逼近曲线的平滑性,提高轮廓的加工效率。

3、本发明计算效率高,计算量小,编程实现简单,可进一步用于高速高精的数控机床。

附图说明

通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:

图1为本发明流程图。

图2为双弓高误差检测图。

图3为特征点插入示意图。

图4为边与逼近曲线的位置关系图。

图5为实验用的微小线段示意图。图中有:x-axis(横坐标),y-axis(纵坐标)。

图6为现有方法的控制点分布示意图。图中有:x-axis(横坐标),y-axis(纵坐标),micro-linesegments(微段刀具路径),zhao’smethod(对比方法的控制点)。

图7为本发明所述方法的控制点分布示意图。图中有:x-axis(横坐标),y-axis(纵坐标),micro-linesegments(微段刀具路径),proposedmethod(本发明所述方法的控制点)。

图8为逼近曲线的曲率分布情况示意图。图中有:parameter(曲线的参数),curvature(曲线的曲率),zhao’smethod(对比方法获得曲线的曲率),proposedmethod(本发明所述方法获得曲线的曲率)。

图9为逼近曲线的进给速度图。图中有:time(时间),feedrate(进给速度),zhao’smethod(对比方法获得曲线的进给速度),proposedmethod(本发明所述方法获得曲线的进给速度)。

图10为现有方法的实际刀具路径示意图。

图11为本发明所述方法的实际刀具路径示意图。

具体实施方式

下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进。这些都属于本发明的保护范围。

以下结合附图对本发明的实施详细说明,但本发明的保护范围不限于下述的实施例。

针对微小线段的b样条拟合,提出了一种基于自由曲线弓高误差估算模型的双弓高误差检测方法,由此减少了逼近曲线的控制点个数;建立了逼近误差模型,并将其与路径优化模型结合,由此优化了逼近曲线的控制点位置。

如图1所示,本实施例的具体流程包括:从数控文件中读取g01段代码作为待处理的微小线段,检测得到的微小线段找出其中的特征点;基于特征点最小二乘拟合微小线段,并结合特征点插入保证逼近曲线的第一种几何偏离满足精度要求;检测逼近曲线的第二种几何偏离,对逼近曲线执行全局平滑优化。

压缩平滑的具体流程如下:

(a)选取合适的点作为拟合所用特征点

数据点的离散曲率计算模型和离散挠率计算模型分别为

式中,δpi=pi+1-pi;δpi+1=pi+2-pi+1;δpi+2=pi+3-pi+2。

类似地,也可以得到点pi的离散曲率变化计算模型,推导过程如下。

首先将微小线段路径看成一条用r(u)表示的自由曲线,并假设r(u)的一阶导矢二阶导矢和三阶导矢在曲线参数域内有定义且连续。根据导数的定义分别有

式中,参数变化步长δu>0。

令δrk=r(u+kδu)-r(u+(k-1)δu),并代入上式得

式中,δr1=r(u+δu)-r(u);δr2=r(u+2δu)-r(u+δu);δr3=r(u+3δu)-r(u+2δu)。

将上面得到的代入曲率变化计算模型有

改进后有

将式中的δr1、δr2和δr3分别替换为δpi、δpi+1和δpi+2得离散曲率变化计算模型

式中,δpi=pi+1-pi;δpi+1=pi+2-pi+1;δpi+2=pi+3-pi+2。

通过离散曲率模型、离散挠率模型和离散曲率变化计算模型可以得到点pi沿方向pi→pi+1→…的离散曲率κfi、离散挠率τfi和离散曲率变化κ′fi。为了加以区分,将κfi、τfi和κ′fi称为点pi的正向离散曲率、正向离散挠率和正向离散曲率变化。反之,将上式中的δpi、δpi+1和δpi+2分别替换为pi-1-pi、pi-2-pi-1和pi-3-pi-2,则可得到点pi的反向离散曲率κbi、反向离散挠率τbi和反向曲率变化κ′bi。

根据自由曲线三阶局部重建定理,除了刀具路径首末端的几个数据点,刀具路径的其它数据点都有两条近似密切螺旋线,如图2所示,一组是根据正向离散曲率、正向离散挠率和正向离散曲率变化确定的正向密切螺旋线hfi(s),一组是根据反向离散曲率、反向离散挠率和反向离散曲率变化确定的反向密切螺旋线hbj(s),其中j=i+1,…,n。lfi和lbj分别表示hfi(s)和hbj(s)上的弦长且lfi=lbj=||pi-pj||。将κfi、τfi、κ′fi和lfi代入自由曲线弓高误差估算模型得点pi的正向弓高误差δfi,将κbj、τbj、κ′bj和lbj代入自由曲线弓高误差估算模型得点pj的反向弓高误差δbj。假设点pi是根据双弓高误差检测确定的特征点,点pj是待检测点,那么就可以根据δfi和δbj的大小确定点pj是否应该选为特征点。

基于自由曲线弓高误差估算模型的双弓高误差检测方法可以得到比较理想的特征点分布:刀具路径越平滑,特征点分布越稀疏;刀具路径越弯曲,特征点分布越密集。但是需要注意,自由曲线弓高误差估算模型是基于自由曲线三阶局部重建定理建立的,它考量的是刀具路径的局部几何学特性,因此双弓高误差检测中指定的弓高误差不能设置的太大,以免检测失真。

(b)最小二乘拟合求取初始控制点

特征点对应的参数值

式中,为特征点的累积弦长,

特征点对应的节点矢量

式中,p为b样条曲线的次数。

最小二乘拟合中,除了需要特征点对应的参数值和节点矢量,还需要微小线段刀具路径对应的参数值

式中,为数据点的累积弦长,

除刀具路径的首末点,其余数据点在最小二乘的意义下被b样条曲线rbs(u)逼近为

式中,rbs(u)的节点矢量和参数值在前面已经计算过的,所以上式是关于控制点的标量函数。令上式对未知控制点的偏导数都等于零,可将上式转化为一个以为未知量的线性方程组。通过高斯消元法或lu分解法解得

(c)特征点插入保证路径多边形顶点的逼近精度

如图3所示,为微小线段刀具路径,rbs(u)为根据特征点构造的b样条曲线,为rbs(u)上的足点。假设点pi为保存到的特征点,但计算后发现点pi的逼近误差仍然是最大的且大于指定的逼近误差。如果点pi-1和pi+1都不是特征点,并且点pi-1的逼近误差大于点pi+1的逼近误差,则点pi-1作为新的特征点插入到控制点中;如果点pi-1的逼近误差小于点pi+1的逼近误差,则点pi+1作为新的特征点插入到控制点中。如果点pi-1是特征点,则在点pi-1和点pi的两侧寻找逼近误差较大且没有被选为特征点的数据点作为新的特征点插入到中。

(d)特征点插入保证路径多边形边的逼近精度

根据逼近曲线是否位于切矢的同侧,将路径多边形的边与逼近曲线的位置关系分为如图4所示的六种情况。点pi和点pi+1为路径多边形的顶点,rbs(u)为根据特征点生成的初始b样条曲线,点pfi和点pfi+1分别为点pi和点pi+1的足点。除点pfi和点pfi+1所在弦与初始b样条曲线之间的几何偏离外,还存在点pi和点pi+1所在边与点pfi和点pfi+1所在弦之间的几何偏离。对于第一种几何偏离,可以采用自由曲线弓高误差估算模型来计算。将点pi的曲率、挠率、曲率变化和弦长||pfi-pfi+1||代入自由曲线弓高误差估算模型得第一种几何偏离δi的近似值。对于第二种几何偏离,可以通过点pi和点pi+1在足点pfi和足点pfi+1所在弦的投影来计算。

点pi在足点pfi和足点pfi+1所在弦上的投影点gi满足

(pi-gi)·(pfi-pfi+1)=0

点pi+1在足点pfi和足点pfi+1所在弦上的投影点gi+1满足

(pi+1-gi+1)·(pfi-pfi+1)=0

解方程分别可得gi和gi+1。

最终得路径多边形第i条边的逼近误差模型

σi=δi+max{||pi-gi||,||pi+1-gi+1||}

此式只会高估而不会低估真实的逼近误差。从保证逼近精度的角度看,上面建立的逼近误差模型对前述六种情况均有效。

(e)平滑路径生成

采用路径多边形得逼近误差模型逐条计算路径多边形边得逼近误差,并在不满足逼近精度的对应边上取点,并被保存到到b样条曲线的最短法向距离作为新的几何偏离约束添加到全局刀具路径优化模型,于是有

qtkq+2qtkδq+(δq)tkδq

s.t.

式中,的足点。

上式为二次规划问题,可采用内点法、拉格朗日法等进行求解。经过k次迭代,得到控制点变化量以及更新后的控制点

(f)实验结果

采用如图5所示的微小线段进行实验。拟合后的控制点分布情况如图6和图7所示。逼近曲线的曲率如图8所示。规划后的进给速度如图9所示。加工效果如图10和图11所示。仿真结果表明双弓高误差检测方法能够充分地考虑路径的几何特征,用较少的特征点表征刀具路径,大幅地减少逼近曲线的控制点个数;将路径多边形边的逼近误差模型与传统的刀具路径优化模型结合可以在保证曲线逼近精度的同时显著地改善逼近曲线的平滑性,提高轮廓的加工效率。

以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变形或修改,这并不影响本发明的实质内容。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1