并联打磨机插补算法的设计
2013-05-08解本铭
解本铭,王 磊
(中国民航大学,天津 300300)
0 引言
插补计算是实现并联机床刀具高速、高精度轨迹控制的关键技术。在数控加工中,数控系统要解决控制刀具与工件运动轨迹的问题,在规定路径上根据某一数学函数确定已知两点间多个中间点坐标。插补的实质其实是根据有限信息完成“数据密化”的工作[1]。
数控加工程序提供了刀具运动的起点、终点和运动轨迹,具体到刀具如何从起点沿运动轨迹走到终点则由数控系统的插补装置来控制。原则上讲,刀具运动轨迹应该准确的按零件的轮廓形状生成。但是,由于对于复杂的曲线轮廓,直接计算刀具运动轨迹非常复杂,计算工作量很大,不能满足数控加工的实时控制要求。因此,在实际应用中,是用一小段直线或圆弧去逼近零件轮廓曲线,即直线和圆弧插补。对于大多数数控系统来说,都具有直线和圆弧插补功能,只有在一些较高档次的数控系统才具有抛物线、螺旋线插补功能[2]。本课题所需打磨的零件轮廓可以近似等效为直线与圆弧的组合,因此,如何设计直线和圆弧的插补算法是本系统的主要任务。
1 插补算法的选择
插补方法常见的有脉冲增量插补和数据采样插补两大类。脉冲增量插补法适用于以步进电机为驱动装置的开环数控系统。它仅仅适用于中等精度和中等速度、以步进电机为执行机构的机床数控系统。数据采样插补方法适用于闭环和半闭环以直流或交流伺服电机为执行机构的数控系统。本系统打磨机采用了半闭环的交流伺服电机作为执行机构,在插补算法选择中选择数据采样插补。时间分割插补法作为典型的数据采样插补方法,它每次插补一小段直线,各坐标同时进给,具有更高的轨迹控制精度[3]。本系统要实现三轴联动直线插补和圆弧插补的半闭环伺服控制功能,采用时间分割法,对插补过程进行分析研究,为后续软件实现做好铺垫。
2 时间分割直线插补算法的基本原理
设工件或刀具在三维空间中作直线运动,如图1所示。 假设直线段的起点坐标为 Ps(Xs,Ys,Zs), 终点坐标为Pe(Xe,Ye,Ze), Pi(Xi,Yi,Zi)为一瞬时插补点, 插补周期为 t(ms),采样周期与插补周期相同,进给速度为v(mm/min)。
图1 插补直线段
图2 直线插补终点判别原理
程 序 段 在 各 坐 标 轴 的 单 位 分 量 为 :X'=|x2-x1|/L,Y'=|Y2-Y1|/L,Z'=|Z2-Z1|/L。 在一个插补周期内刀具在各坐标方向的进给为:X=s*X',Y=s*Y', Z=s*Z'。
在插补过程中,各坐标进给量是不变的,因此只需插补开始一次离线计算,插补过程中无需重复计算,之后每进行一次插补计算,输出下一组插补点坐标并进行终点的判别。
直线插补的终点判别:直线插补的终点判别原理如图2 所示。 已知插补起始点为 P0(x0,y0),终点为 Pe(xe,ye),中间瞬时插补点为Pi(xi,yi),OXY坐标系为直线插补参考坐标系。以插补起始点为原点建立辅助坐标系O'X'Y',设Sx,Sy为终点判别参数。它们的取值取决于终点在辅助坐标系中的位置。
直线插补终点判别条件为:
如果式(1)成立,则表明插补点在X上的坐标超过了插补终点的坐标,因此,X轴的进给量应该改为xe-xi-1;同理,如果式(2)成立,则Y轴的进给应改为ye-yi-1。
直线插补终点判别方法中,Sx和Sy在插补开始前就已经离线计算好,只需实时计算终点判别条件是否成立。
3 时间分割圆弧插补算法
圆弧插补的思想是在满足精度要求的前提下,用弦或割线、切线代替圆弧进给,时间分割法采用的是用弦线代替圆弧进给。实际上也是用直线逼近圆弧,重要的是计算出下一个插补点的坐标和进给量。
图3 时间分割圆弧插补原理
如图3所示,圆上Pi,Pi+1是插补中第一象限相邻两点,在一次插补周期内进给量PiPi+1即为进给步长。PiP是圆弧在Pi点的切线,M是弦PiPi+1的中点,OM⊥PiPi+1,ME⊥PiF,E为AF的中点。
因为 OPi⊥PiP, 所以有△PiOC~△PPiF, 则:
因为PiP为切线,所以:
计算tanα很困难。为此,用cos45°和sin45°来代替cosα和sinα。上式可改为:
因为Pi点的坐标值已知,若想求Pi+1点的坐标可通过求X轴的进给量:
又因为Pi,Pi+1是圆弧上两点,所以满足圆的方程式:
由此可以得出下一个插补点Pi+1的坐标为:
以上是以第一象限顺时针插补计算得到的进给公式,其它象限推导过程同理。
圆弧插补终点判别:终点判断是保证插补运动能顺利实现的重要因素。在圆弧插补的过程中,终点判断失效可能导致插补进入死循环。因此,终点判断方法的合理设计直接关系到圆弧插补程序的可靠性。
现令已知圆弧插补起、终点坐标及I,K参数,由此得到圆弧圆心坐标为 xo=xs+I,yo=ys+J,(xs,ys)为辅助坐标系O'X'Y'的原点在坐标系OXY中的坐标值。设两个终点判别参数Sx,Sy。
(1)顺圆插补时,Sx,Sy的表达式为:
(2)逆圆插补时,Sx,Sy的表达式为:
其中,sgn(*)表示符号函数,定义:
设变量Psx与Psy用来判别插补点是否与插补终点处于辅助坐标系O'X'Y'中所定义象限的同一象限,定义为:
顺圆插补时,Psx=-Sy,Psy=Sx;逆圆插补时,Psx=Sy,Psy=-Sx。 设 Si为插补点 Pi(xi,yi)到终点 Pe(xe,ye)的距离, 为:
Si=。判断插补点与插补终点在辅助坐标系同一象限的条件为: (xi-xo)Psx>0, (yi-yo)Psy>0。 终点判别的条件表达式为: (xi-xe)Sx>0, (yi-ye)Sy>0。
在插补开始时,首先检查插补点与插补终点间距离是递减还是递增,这一过程只需比较大小,不需求出具体值,即只需进行符号判断[4]。
在圆弧插补终点快速判别方法中,判别终点和象限所用的变量Sx,Sy,Psx与Psy的计算均为离线计算,在插补开始前计算好,由其表达式可知,在插补过程中它们的值不变。实时计算的值是象限判别式的计算,因为在插补过程中要时时判别插补点与插补终点是否到达同一象限,从而判断是否进行终点判别。
4 误差分析
数据采样插补算法得出的不是进给脉冲,而是用二进制表示的进给量,也就是在下一插补周期中,轮廓曲线上的进给段在各坐标轴上的分矢量。计算机定时对坐标的实际位置进行采样,采样数据与指令位置进行比较,得出位置误差,再根据位置误差对伺服系统进行控制,达到消除误差、使实际位置跟随指令位置[5]。
在直线插补过程中,插补分割后的微小直线段与给定曲线是重合的(给定轮廓曲线是直线),所以不存在轮廓误差。实例假设在OXY平面中插补起始点坐标(2,0),终点坐标(5,3),插补步长l=0.1。在MatLAB中编程后插补仿真如图4所示,仿真结果与理论轨迹无误差。
时间分割圆弧插补法是用弦线代替圆弧插补,插补实例仿真结果如图5所示。虽然插补点均在所需插补圆弧上,由于相邻插补点之间是直线进给逼近,所以插补过程中仍会产生径向误差。
图4 直线插补运行轨迹与理论轨迹
图5 圆弧插补理论与实际轨迹
图6 时间分割圆弧插补误差
其中:F—进给速度;T—插补周期。由式(4)可知,径向误差 与插补周期 、插补圆弧半径 和进给速度 有关。在一台确定的数控机床中,允许的插补误差是确定的,它小于机床的分辨率,即小于一个脉冲当量[6]。因此,在误差确定的基础上,可以通过平衡进给速度和插补周期的关系以实现所优先考虑的插补参数。值得一提的是,插补周期的选择还要受计算机运算速度的限制,插补周期应大于插补运算时间和完成其他如显示等任务所用时间之和。在实际应用中可据此根据要求合理设计插补参数,以期达到理想中的效果。
5 结论
针对所研究打磨机课题,对数控系统中关键环节插补算法的设计进行了研究。根据打磨机系统的半闭环交流伺服系统要求,插补方法选择了数据采样插补算法,对该算法的原理、插补过象限问题、终点判别及误差分析进行了研究,通过在MatLAB中编程仿真验证,证实了所采用算法的正确性及实现过程的可行性。从而为后续插补软件的设计提供了参考。
[1]李恩林.数控系统插补原理通论[M].国防工业出版社,2008.
[2]孔德彭,张国平,等.基于圆弧插补的时间分割插补算法改进[J].机械与电子,2010,2.
[3]林本杰,石川,张辉,等.圆弧插补终点判断方法研究[J].制造技术与机床,2007,6.
[4]张吉堂.现代数控原理及控制系统[M].国防工业出版社,2009.
[5]伍胡平,周亚军.数据采样插补算法的研究[J].组合机床与自动化加工技术,2008,9.
[6]陈东海,牛景丽,刘进钱.CNC系统数据采样插补的新算法[J].制造业自动化,2009,9.