NURBS曲线插补过程中运动平滑处理
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
NURBS 曲线插补过程中运动平滑处理
姬俊锋 周来水 张得礼
南京航空航天大学,南京,210016
摘要:由于不能通过积分方法在短时间内精确计算NURBS 曲线的长度,使得在数控加工过
程中实时计算减速距离、判断最终减速段开始点变得非常困难。基于插补的实际情况,给出一种实时计算减速距离的方法,在此基础上,实现了基于梯形速度曲线的速度平滑处理以及基于S 形速度曲线的加速度平滑处理。模拟结果表明,该方法在NURBS 曲线实时插补过程中,在保证误差的基础上,满足了插补周期和加减速的要求,且实现了速度以及加速度的平滑过渡。
关键词:NURBS ;插补;速度曲线;平滑处理中图分类号:TG 659;TP391 文章编号:1004—132X (2006)21—2225—04Motion Smoothing Implem entation for NURB S Curve I nterpolation
Ji J unfeng Zhou Laishui Zhang Deli
Nanjing University of Aeronautics and Astronautics ,Nanjing ,210016
Abstract :Due to the impossibility to compute the exact length of NURBS curve through integration in a short time ,it is very difficult to get the deceleration distance and to forecast the point to begin the deceleration stage in real time.Based on the practical process ,this paper presented a method to compute the deceleration distance in real time.With the result ,trapezoidal velocity profile was adopted to smooth the velocity profile and S -curve velocity profile was adopted to smooth the acceleration profile.The simulation results show that the method presented here satisfies the needs of the interpolator cycle and the acceleration and deceleration be 2sides ensuring the chordal errors.
K ey w ords :NURBS ;interpolator ;velocity curve ;smoothing implementation
收稿日期:2005—08—01
0 引言
由于NURBS 方法不仅能够描述自由型曲线曲面,又能够精确表示二次曲线弧与二次曲面,因此,它在一些商用CAD/CAM 软件中获得了广泛的应用,并被国际标准化组织定为描述自由型曲线曲面的唯一标准。另一方面,传统的数控系统只提供直线以及圆弧插补。为了解决先进的设计方法与相对落后的加工方法之间的矛盾,实现对NURBS 曲线曲面的实时插补具有重要意义。
文献[1]将直线插补、圆弧插补同参数曲线插补做了比较,结果表明,参数曲线实时插补不仅具有程序量小、传输速度快的优点,同时在加工自由型曲线曲面时也能够保证高速度和高精度。
文献[2]将参数增量Δu 设为常量,即均匀插补。该方法计算简单,程序量小,缺点是在插补周期一定的情况下会造成速度剧烈跳跃,并在曲率很大的地方会造成过大的弦长误差。
Houng 等[3]提出了基于恒速进给的插补算法,
利用一阶泰勒展开公式,得到进给速度v 与参数增量Δu 的关系,进而对曲线进行插补。Y ang 等[1]在
此基础上利用二阶泰勒展开得到了更精确的结果。
这两种方法的进给步长均为恒量,因此在曲率大的地方的误差仍有可能超出允许的范围。文献[4]在泰勒展式基础上提出一种基于圆弧近似的自适应进给速度插补方法,这种方法首先保证了弦长误差,但也造成了速度的波动。这种方法被称为开环方法,其结果的精确程度取决于泰勒展开公式的精度。文献[5,6]分别给出了另外一种被称为闭环的方法。该方法利用差分代替泰勒展开公式中的微分,并将实际进给速度与给定进给速度之间的差值作为反馈,通过迭代使误差收敛以实现精确插补,算法的关键在于迭代方法的建立以及收敛速度的快慢。文献[7]对上述开环与闭环两种方法进行了比较,开环方法计算时间稳定,闭环方法需要进行迭代,计算时间难以保证,但公式比较简单,且可以由用户来设定误差。
以上方法满足了插补过程中的误差要求,但没有考虑机床的动态性能,包括机床的加减速能力以及如何保证加速度不会超过机床的能力极限,尤其是没有考虑插补最终减速点的预测问题,而这一点又是参数曲线实时插补中的难点。
文献[8]在考虑机床动态性能的基础上,给出
NURBS 曲线插补过程中运动平滑处理———姬俊锋 周来水 张得礼
一种离线计算曲线插补敏感点的方法,文献[9]也给出了离线计算整条曲线的长度以判断减速点的方法,但都不符合实时插补的特征。文献[10]采用S 形加减速方法对速度曲线进行平滑处理,在超出误差的地方对速度进行限制,但却破坏了原来的速度曲线,从而出现超过机床最大加速度极限的情况。
本文提出一种实时计算减速距离、预测减速点的方法,在此基础上,基于梯形速度曲线实现了实时插补中的加减速控制,然后又利用S 形速度曲线去除了加速度的突变部分。这些工作都是在实时过程中完成的,符合实时插补的特征。
1 已有方法存在的问题
文献[4]给出了基于泰勒展开公式和圆弧近似
的NURBS 插补方法。例如,要插补图1所示的一条三次NURBS 曲线,根据文献[4]给出的方法,得到图2所示的速度曲线。该方法的优点在于保证满足误差要求,且易于理解,计算简单,但也存在一定的问题:首先是没有考虑插补开始阶段的加速过程与插补结束阶段的减速过程;其次,在插补过程中没有考虑加速度超出机床加速度能力的情况。如图2中,拐点1、2处虽然限制了最大速度,但是没有限制最大加速度且加速度存在突变,在插补的起点与终点也存在同样的问题。而在实际加工中,
这些都是必须考虑的问题。
图1 一段NURB S 曲线
图2 根据文献[4]方法得到的插补速度曲线
2 实时插补过程中最终减速段的判断
实时减速点的判断基于这样一个事实:从插补开始到结束,速度应该是连续的,不应该出现突变。在每个插补周期内,速度的改变值都不应该超过最大加速度与插补周期的乘积,即速度改变值是个有限值。
设C =C (u )为一条NURBS 曲线的参数方程,
u 为参数,C (u i )表示曲线上参数为u i 的点。插补开
始一个周期后,速度从0增加到v 1,此时,向前搜索几个步长便可得到满足从v 1减速到0所需的减速距离,设此时减速段距离为d 1,若d 1的终点没有超出被插曲线的终点,则插补继续。一个周期后,速度从v 1增加到v 2,减速段距离d 2=d 1-‖C (u 2)-C (u 1)‖。此时,从减速段d 2的终点继续向前搜索几个步长便可得到从v 2减速到0所需的减速距离。假设第N 个插补周期后的速度为v n ,从此时的减速段d n 的终点处向前继续搜索几步,便可得到从v n 减速到0所需的减速距离。若此时减速段终点还没有到达插补终点,则插补继续,一个周期后,速度由v n 变成v n+1,减速段距离d n+1=d n -‖C (u n+1)-C (u n )‖。若此时减速段的终点已经超过了插补的
终点,则说明从u n 处减速已经来不及了,于是u n-1便为减速点,从此点按照预定的速度曲线开始减速。减速段距离的计算方法因所选择速度曲线不同而异,若是梯形速度曲线,则直接以最大减速度开始减速,计算相对简单,若是S 形速度曲线,则减速段距离的计算要根据当前的速度以及加速度进行复杂的计算。
该方法避免了计算整条曲线的长度,将减速所需的距离分散在每个插补周期内进行累加计算。计算机模拟仿真表明,该方法是一个行之有效的方法。
3 基于梯形速度曲线的NU RBS 插补
过程
梯形速度曲线如图3所示。
图3 梯形速度曲线梯形速度曲线主要包括升速阶段、匀速阶段、减速阶段三个阶段,即首先以最大加速度加
速,到达最大速度后是匀速阶段,最后以最大减速度减速,直到降为零速。
若距离足够短,则t 1与t 2重合,也就是没有达到最大速度之前便开始减速。
3.1 初始加速阶段与结束减速阶段的规划
初始加速阶段的速度规律为
v =a max t
(1)
式中,a max 为机床所允许的最大加速度。
该阶段结束标志为进给速度超出当前所允许的最大加工速度。
按照上述方法判断减速点,到达减速点后,其结束阶段的减速规律为
v =v i -a max t
(2)
式中,v i 为当前插补点的速度。
3.2中间插补过程的规划
在升速段可实时监测加速度大小。加速度可通
过差分的方法近似计算,由于插补周期非常短,这
中国机械工程第17卷第21期2006年11月上半月