插补及速度控制原理教学课件PPT数控加工控制原理.ppt
淮南联合大学机电系 制作:陈其祥,插补及速度控制原理,数控装置的工作过程,程序输入,存储,译码,数据处理,PLC处理,I/O处理,机床,插补,位置控制,位置反馈,电动机,图:CNC装置的工作过程,CNC装置的插补原理,所谓插补是指数据点密化的过程。在对数控系统输入有限坐标点(例如起点、终点)的情况下,计算机根据线段的特征(直线、圆弧、椭圆等),运用一定的算法,自动地在有限坐标点之间生成一系列的坐标数据,从而自动地对各坐标轴进行脉冲分配,完成整个线段的轨迹运行,使机床加工出所要求的轮廓曲线。大多数CNC系统一般都具有直线和圆弧插补功能。对于非直线或圆弧组成的轨迹,可以用小段的直线或圆弧来拟合。只有在某些要求较高的系统中,才具有抛物线、螺旋线插补功能。对于轮廓控制系统来说,插补是最重要的计算任务,插补程序的运行时间和计算精度影响着整个CNC系统的性能指标,可以说插补是整个CNC系统控制软件的核心。目前普遍应用的插补算法可分为两大类:一类是基准脉冲插补;另一类是数据采样插补。,“插补”概念与插补方法的分类 在数控加工中,一般已知运动轨迹的起点坐标、终点坐标和曲线方程,如何使切削加工运动沿着预定轨迹移动呢?数控系统根据这些信息实时地计算出各个中间点的坐标,通常把这个过程称为“插补”。插补实质上是根据有限的信息完成“数据点的密化”工作。加工各种形状的零件轮廓时,必须控制刀具相对工件以给定的速度沿指定的路径运动,即控制各坐标轴依某一规律协调运动,这一数控系统的控制功能称为插补功能。平面曲线的运动轨迹需要两个运动来协调;空间曲线或立体曲面则要求三个以上的坐标产生协调运动。目前普遍应用的两类插补方法为基准脉冲插补和数据采样插补。,插补原理,(一)基准脉冲插补 基准脉冲插补又称脉冲增量插补,这类插补算法是以脉冲形式输出,每插补运算一次,最多给每一轴一个进给脉冲。把每次插补运算产生的指令脉冲输出到伺服系统,以驱动工作台运动,每发出一个脉冲,工作台移动一个基本长度单位,也叫脉冲当量,脉冲当量是脉冲分配的基本单位。脉冲序列的频率代表坐标运动的速度,而脉冲的数量代表运动位移的大小。基准脉冲插补的方法很多,如逐点比较法、数字积分法、脉冲乘法器等。(二)数据采样插补 数据采样插补又称时间增量插补,采用时间分割思想,这类算法插补结果输出的不是脉冲,而是标准二进制数。根据程编进给速度,把轮廓曲线按插补周期将其分割为一系列微小直线段,然后将这些微小直线段对应的位置增量数据进行输出,以控制伺服系统实现坐标轴的进给。根据编程的进给速度将轮廓曲线分割为每个插补周期的进给直线段(又称轮廓步长)进行数据密化,以此来逼近轮廓曲线。然后再将轮廓步长分解为各个坐标轴的进给量(一个插补周期的近给量),作为指令发给伺服驱动装置。该装置按伺服检测采样周期采集实际位移,并反馈给插补器与指令比较,有误差运动,误差为零停止,从而完成闭环控制。数据采样插补方法有:直线函数法、扩展DDA、二阶递归算法等。插补实时性很强,为了提高计算速度,按以下三种方式进行改进。1.采用软/硬件结合的两级插补方案。2.采用多CPU的分布式处理方案。3.采用单台高性能微型计算机方案。,逐点比较法 加工图3-2所示圆弧AB,如果刀具在起始点A,假设让刀具先从A点沿Y方向走一步,刀具处在圆内1点。为使刀具逼近圆弧,同时又向终点移动,需沿X方向走一步,刀具到达2点,仍位于圆弧内,需再沿X方向走一步,到达圆弧外3点,然后再沿Y方向走一步,如此继续移动,走到终点。,图3-2 圆弧插补轨迹,图3-3 直线插补轨迹,逐点比较法,就是每走一步都要和给定轨迹比较一次,根据比较结果来决定下一步的进给方向,使刀具向减小偏差的方向并趋向终点移动,刀具所走的轨迹应该和给定轨迹非常相“象”。算法的特点是;运算直观,插补误差小于一个脉冲当量,进给速度波动小,调节方便,在两坐标联动的数控机床中应用较为广泛,逐点比较插补法通过比较刀具与所加工曲线的相对位置,确定刀具的起动力向。,逐点比较法插补过程可按以下四个步骤进行。,1.插补原理,偏差判别:根据刀具当前位置,确定进给方向。坐标进给:使加工点向给定轨迹趋进,即向减少误 差方向移动。偏差计算:计算新加工点与给定轨迹之间的偏差,作为下一步 判别依据。根据加工点的当前位置,计算偏差函数值终点判别:判断是否到达终点,若到达,结束插补;否则,继续以上四个步骤(如图3-3所示)。,2.直线插补 图3-4所示第一象限直线OE,起点O为坐标原点,用户编程时,给出直线的终点坐标E(Xe,Ye),方程为XeYXYe0(3-1)直线OE 为给定轨迹,P(X,Y)为动点坐标,动点与直线的位置关系有三种情况:动点在直线上方、直线上、直线下方,图3-5 动点与直线位置关系,Y,X,O,E(Xe,Ye),P1,P2,P(X,Y),因此,可以构造偏差函数为,图3-4 动点与直线位置关系,Y,X,O,E(Xe,Ye),P1,P2,P(X,Y),1)若P1点在直线上方,则有 XeYXYe0 2)若P点在直线上,则有 XeYXYe0 3)若P2点在直线下方,则有 XeYXYe0,对于第一象限直线,其偏差符号与进给方向的关系为:F0时,表示动点在OE上,如点P,可向X向进给,也可向Y向进给。F0时,表示动点在OE上方,如点P1,应向X向进给。F0的情况一同考虑。插补工作从起点开始,走一步,算一步,判别一次,再走一步,当沿两个坐标方向走的步数分别等于Xe和Ye时,停止插补。下面将F的运算采用递推算法予以简化,动点Pi(Xi,Yi)的Fi值为,若Fi0,表明Pi(Xi,Yi)点在OE直线上方或在直线上,应沿X向走一步,假设坐标值的单位为脉冲当量,走步后新的坐标值为(Xi+1,Yi+1),且Xi+1=Xi+1,Yi+1=Yi,新点偏差为,若Fi0,表明Pi(Xi,Yi)点在OE 的下方,应向Y方向进给一步,新点坐标值为(Xi+1,Yi+1),且Xi+1=Xi,Yi+1Yi1,新点的偏差为,即,开始加工时,将刀具移到起点,刀具正好处于直线上,偏差为零,即F0,根据这一点偏差可求出新一点偏差,随着加工的进行,每一新加工点的偏差都可由前一点偏差和终点坐标相加或相减得到。在插补计算、进给的同时还要进行终点判别。常用终点判别方法,是设置一个长度计数器,从直线的起点走到终点,刀具沿X轴应走的步数为X e,沿Y轴走的步数为Ye,计数器中存入X和Y两坐标进给步数总和XeYe,当X或Y坐标进给时,计数长度减一,当计数长度减到零时,即0时,停止插补,到达终点。,例3-1 加工第一象限直线OE,如图3-6所示,起点为坐标原点,终点坐标为E(4,3)。试用逐点比较法对该段直线进行插补,并画出插补轨迹。,图3-6 直线插补轨迹过程实例,表3-1 直线插补运算过程,图3-7 第三象限直线插补,3.四象限的直线插补 假设有第三象限直线OE(图3-6),起点坐标在原点O,终点坐标为E(Xe,Ye),在第一象限有一条和它对称于原点的直线,其终点坐标为E(Xe,Ye),按第一象限直线进行插补时,从O点开始把沿X轴正向进给改为X轴负向进给,沿Y轴正向改为Y轴负向进给,这时实际插补出的就是第三象限直线,其偏差计算公式与第一象限直线的偏差计算公式相同,仅仅是进给方向不同,输出驱动,应使X和Y轴电机反向旋转。,图3-8 四象限直线偏差符号和进给方向,四个象限直线的偏差符号和插补进给方向如图3-8所示,用L1、L2、L3、L4分别表示第、象限的直线。为适用于四个象限直线插补,插补运算时用X,Y代替X,Y,偏差符号确定可将其转化到第一象限,动点与直线的位置关系按第一象限判别方式进行判别。,由图3-8可见,靠近Y轴区域偏差大于零,靠近X轴区域偏差小于零。F0时,进给都是沿X轴,不管是X向还是X向,X的绝对值增大;F0时,进给都是沿Y轴,不论Y向还是Y向,Y的绝对值增大。,动点落在圆弧上时,一般约定将其和F0一并考虑。,圆弧插补 在圆弧加工过程中,可用动点到圆心的距离来描述刀具位置与被加工圆弧之间关系。设圆弧圆心在坐标原点,已知圆弧起点A(Xa,Ya),终点B(Xb,Yb),圆弧半径为R。加工点可能在三种情况出现,即圆弧上、圆弧外、圆弧内。当动点P(X,Y)位于圆弧上时有 X2Y2R2=0 P点在圆弧外侧时,则OP大于圆弧半径R,即 X2Y2R20 P点在圆弧内侧时,则OP小于圆弧半径R,即 X2Y2R20 用F表示P点的偏差值,定义圆弧偏差函数判别式为,图3-10 第一象限顺、逆圆弧,图3-10a中AB为第一象限顺圆弧SR1,若F0时,动点在圆弧上或圆弧外,向Y向进给,计算出新点的偏差;若F0,表明动点在圆内,向X向进给,计算出新一点的偏差,如此走一步,算一步,直至终点。,C,由于偏差计算公式中有平方值计算,下面采用递推公式给予简化,对第一象限顺圆,Fi0,动点Pi(Xi,Yi)应向Y向进给,新的动点坐标为(Xi1,Yi1),且Xi1Xi,Yi1Yi1,则新点的偏差值为 即,(3-6),若Fi0时,沿X向前进一步,到达(Xi1,Yi)点,新点的偏差值为,(3-7),即:,进给后新点的偏差计算公式除与前一点偏差值有关外,还与动点坐标有关,动点坐标值随着插补的进行是变化的,所以在圆弧插补的同时,还必须修正新的动点坐标。圆弧插补终点判别:将X、Y轴走的步数总和存入一个计数器,XbXaYbYa,每走一步减一,当0发出停止信号。,例3-2 现欲加工第一象限顺圆弧AB,如图3-12所示,起点A(0,4),终点B(4,0),试用逐点比较法进行插补。,图3-12 圆弧插补实例,表3-2 圆弧插补过程,5.四个象限中圆弧插补 参照图3-9b,第一象限逆圆弧CD的运动趋势是X轴绝对值减少,Y轴绝对值增大,当动点在圆弧上或圆弧外,即Fi0时,X轴沿负向进给,新动点的偏差函数为(3-8)Fi0时,Y轴沿正向进给,新动点的偏差函数为(3-9),如果插补计算都用坐标的绝对值,将进给方向另做处理,四个象限插补公式可以统一起来,当对第一象限顺圆插补时,将X轴正向进给改为X轴负向进给,则走出的是第二象限逆圆,若将X轴沿负向、Y轴沿正向进给,则走出的是第三象限顺圆。如图3-13a、b所示,用SR1、SR2、SR3、SR4分别表示第、象限的顺时针圆弧,用NR1、NR2、NR3、NR4分别表示第、象限的逆时针圆弧,四个象限圆弧的进给方向表示在图3-13中。,X向,Y向,F 0,F 0看图,式中Xi,Yi为绝对值,圆弧过象限,即圆弧的起点和终点不在同一象限内。若坐标采用绝对值进行插补运算,应先进行过象限判断,当X0或Y0时过象限。如图3-13所示,需将圆弧AC分成两段圆弧AB 和BC,到X0时,进行处理,对应调用顺圆2和顺圆1的插补程序。若用带符号的坐标值进行插补计算,在插补的同时,比较动点坐标和终点坐标的代数值,若两者相等,插补结束,其计算过程见表3-3。,C,A,y,B,图3-14 跨象限圆弧,X,o,表3-3 圆弧插补计算过程,6.逐点比较法合成进给速度 逐点比较法的特点是脉冲源每发出一个脉冲,就进给一步,不是发向X轴,就是发向Y轴,如果fg为脉冲源频率(Hz),fx,fy 分别为X轴和Y轴进给频率(Hz),则,(3-10),从而X轴和Y轴的进给速度(mm/min)为,式(3-11)中若fx=0或fy=0时,也就是刀具沿平行于坐标轴的方向切削,这时对应切削速度最大,相应的速度称为脉冲源速度vg,脉冲源速度与程编进给速度相同,式中 脉冲当量(mm/脉冲)。合成进给速度为,(3-11),(3-12),合成进给速度与脉冲源速度之比为:,(3-13),由式3-13可见,程编进给速度确定了脉冲源频率fg后,实际获得的合成进给速度v并不总等于脉冲源的速度vg,与角有关。插补直线时,为加工直线与X轴的夹角;插补圆弧时,为圆心与动点连线和X轴夹角。根据上式可作出v/vg随而变化的曲线。如图3-14所示,v/vg=0.7071,最大合成进给速度与最小合成进给速度之比为vmax/vmin=1.414,一般机床来讲可以满足要求,认为逐点比较法的进给速度是比较平稳的。,v/vg,1,0.707,O 450 900,图3-14 逐点比较法进给速度,数字积分法,数字积分法又称数字微分分析法DDA(Digital differential Analyzer),是在数字积分器的基础上建立起来的一种插补算法。数字积分法的优点是,易于实现多坐标联动,较容易地实现二次曲线、高次曲线的插补,并具有运算速度快,应用广泛等特点。,如图3-15所示,设有一函数Yf(t),求此函数在t0tn区间的积分,就是求出此函数曲线与横坐标t在区间(t0,tn)所围成的面积。如果将横坐标区间段划分为间隔为t的很多小区间,当t取足够小时,此面积可近似地视为曲线下许多小矩形面积之和。,Y,Yi,s,t0,ti,tn,t,图3-16 函数Y=f(t)的积分,Y=f(t),(3-14),(3-15),式中Yi为t=ti时f(t)的值,这个公式说明,求积分的过程也可以用累加的方式来近似。在数学运算时,取t为基本单位“1”,则上式可简化为,图3-16 函数Y=f(t)的积分,图3-17 数字积分器结构框图,数字积分器通常由函数寄存器、累加器和与门等组成。其工作过程为:每隔t时间发一个脉冲,与门打开一次,将函数寄存器中的函数值送累加器里累加一次,令累加器的容量为一个单位面积,当累加和超过累加器的容量一个单位面积时,便发出溢出脉冲,这样累加过程中产生的溢出脉冲总数就等于所求的总面积,也就是所求积分值。,Y,Yi,s,t0,ti,tn,t,Y=f(t),1.数字积分法直线插补 例子:若要产生直线OE,其起点为坐标原点O,终点坐标为E(7,4)。设寄存器和累加器容量为1,将Xe7,Ye4分别分成8段,每一段分别为7/8,4/8,将其存入X和Y函数寄存器中。第一个时钟脉冲来到时,累加器里的值分别为7/8,4/8,因不大于累加器容量,没有溢出脉冲。第二个时钟脉冲来到时,X累加器累加结果为7/8+7/81+6/8,因累加器容量为1,满1就溢出一个脉冲,则往X方向发出一进给脉冲,余下的6/8仍寄存在累加器里,累加器又称余数寄存器。Y累加器中累加为4/8+4/8,其结果等于1,Y方向也进给一步。第三个脉冲到来时,仍继续累加,X累积器为6/8+7/8,大于1,X方向再走一步,Y累加器中为0+4/8,其结果小于1,无溢出脉冲,Y向不走步。,图3-18 直线插补走步过程,0,X,Y,E(7,4),如此下去,直到输入第8个脉冲时,积分器工作一个周期,X方向溢出脉冲总数为7/88=7,Y方向溢出脉冲总数为4/88=4,到达终点E(如图3-17)。,图3-19 DDA直线插补,若要加工第一象限直线OE,如图3-18所示,起点为坐标原点O,终点坐标为E(Xe,Ye),刀具以匀速V由起点移向终点,其X、Y坐标的速度分量为Vx,Vy,则有:,(k为常数)(3-16),各坐标轴的位移量为,(3-17),数字积分法是求式(3-17)从O到E区间的定积分。此积分值等于由O到E的坐标增量,因积分是从原点开始的,所以坐标增量即是终点坐标。,(3-18),式(3-18)中t0对应直线起点的时间,tn对应终点时间。用累加来代替积分,刀具在X,Y方向移动的微小增量分别为,(3-19),动点从原点出发走向终点的过程,可以看作是各坐标轴每经过一个单位时间间隔t,分别以增量kXe及kYe同时累加的结果。,取,(一个单位时间间隔),则,若经过m次累加后,X,Y都到达终点E(Xe,Ye),下式成立,两者互相制约,不能独立选择,m是累加次数,取整数,k取小数。即先将直线终点坐标Xe,Ye缩小到kXe,kYe,然后再经m次累加到达终点。另外还要保证沿坐标轴每次进给脉冲不超过一个,保证插补精度,应使下式成立,或,可见累加次数与比例系数之间有如下关系,如果存放Xe,Ye寄存器的位数是n,对应最大允许数字量为,(各位均为1),所以Xe,Ye最大寄存数值为,则,为使上式成立,取 代入得,累加次数,上式表明若寄存器位数是n,则直线整个插补过程要进行2n 次累加才能到达终点。,对于二进制数来说,一个n位寄存器中存放Xe和存放kXe的数字是一样的,只是小数点的位置不同罢了,Xe除以2n,只需把小数点左移n位,小数点出现在最高位数n的前面。采用kXe进行累加,累加结果大于1,就有溢出。若采用Xe进行累加,超出寄存器容量2n有溢出。将溢出脉冲用来控制机床进给,其效果是一样的。在被寄函数寄存器里可只存Xe,而省略k。例如,Xe=100101在一个6位寄存器中存放,若k=1/26,kXe=0.100101也存放在6位寄存器中,数字是一样的,若进行一次累加,都有溢出,余数数字也相同,只是小数点位置不同而已,因此可用Xe替代kXe,图3-20为平面直线的插补框图,图3-20为平面直线的插补框图,它由两个数字积分器组成,每个坐标轴的积分器由累加器和被积函数寄存器组成,被积函数寄存器存放终点坐标值,每经过一个时间间隔t,将被积函数值向各自的累加器中累加,当累加结果超出寄存器容量时,就溢出一个脉冲,若寄存器位数为n,经过2n次累加后,每个坐标轴的溢出脉冲总数就等于该坐标的被积函数值,从而控制刀具到达终点。,例3-3 设有一直线OE,如图3-20所示起点坐标O(0,0),终点坐标为E(4,3),累加器和寄存器的位数为3位,其最大可寄存数值为7(J8时溢出)。若用二进制计算,起点坐标O(000,000),终点坐标E(100,011),J1000时溢出。试采用DDA法对其进行插补。,其插补运算过程见表3-3。,表3-3 DDA直线插补运算过程,(3-21),由于第一象限顺圆对应Y坐标值逐渐减小,所以式(3-21)中表达式中取负号,即Vx,Vy均取绝对值计算。,2.数字积分法圆弧插补 第一象限顺圆如图3-22,圆弧的圆心在坐标原点O,起点为A(Xa,Ya),终点为B(Xb,Yb)。圆弧插补时,要求刀具沿圆弧切线作等速运动,设圆弧上某一点P(X,Y)的速度为 V,则在两个坐标方向的分速度为Vx,Vy,根据图中几何关系,有如下关系式,对于时间增量而言,在X,Y坐标轴的位移增量分别为,(3-20),图3-21 DDA圆弧插补,与DDA直线插补类似,也可用两个积分器来实现圆弧插补,如图3-22所示。,图3-23 第一象限顺圆弧插补器,DDA圆弧插补与直线插补的主要区别为:(1)圆弧插补中被积函数寄存器寄存坐标值与对应坐标轴积分器的关系恰好相反。(2)圆弧插补中被积函数是变量,直线插补的被积函数是常数。(3)圆弧插补终点判别需采用两个终点计数器。对于直线插补,如果寄存器位数为 n,无论直线长短都需迭代2n次到达终点。,例3-4 设有第一象限顺圆AB,如图3-24所示,起点A(0,5),终点B(5,0),所选寄存器位数n=3。若用二进制计算,起点坐标A(000,101),终点坐标B(101,000),试用DDA法对此圆弧进行插补。其插补运算过程见表3-4。,表3-4 DDA圆弧插补运算过程,图3-23 DDA圆弧插补实例,3.数字积分法插补的象限处理 DDA插补不同象限直线和圆弧时,用绝对值进行累加,把进给方向另做讨论。DDA插补是沿着工件切线方向移动,四个象限直线进给方向如图3-25所示。圆弧插补时被积函数是动点坐标,在插补过程中要进行修正,坐标值的修改要看动点运动是使该坐标绝对值是增加还是减少,来确定是加1还是减1。四个象限直线进给方向和圆弧插补的坐标修改及进给方向如表3-6所示。,图3-25,表3-6,表3-6,图3-26四象限圆弧插补进给方向,4.数字积分法合成进给速度 数字积分法的特点是,脉冲源每产生一个脉冲,作一次累加计算,如果脉冲源频率为fg(Hz),插补直线的终点坐标为E(Xe,Ye),则X,Y方向的平均进给频率fx,fy为,(3-22),式中 m累加次数。假设脉冲当量为(mm/脉冲),可求得X和Y方向进给速度(mm/min),假设脉冲当量为(mm/脉冲),可求得X和Y方向进给速度(mm/min),(3-23),合成进给速度为,式中 L被插补直线长度,;若插补圆弧,L应为圆弧半径R,Vg脉冲源速度,,数控加工程序中F代码指定进给速度后,fg基本维持不变。这样合成进给速度V与被插补直线的长度或圆弧的半径成正比。如图3-26所示,如果寄存器位数是n,加工直线L1、L2都要经过m2n累加运算,L1直线短,进给慢,速度低;L2直线长,进给快,速度高。加工L1生产效率低;加工L2零件表面质量差。,图3-27 进给速度与直线长度的关系,5.数字积分法稳速控制(1)左移规格化“左移规格化”就是将被积函数寄存器中存放数值的前零移去。直线插补时,当被积函数寄存器中所存放最大数的最高位为1时,称为规格化数,反之,若最高位为零,称为非规格化数。直线插补左移规格化数的处理方法是:将X轴与Y轴被积函数寄存器里的数值同时左移(最低位移入零),直到其中之一最高位为1时为止。若被积函数左移i位成为规格化数,其函数值扩大2i倍,为了保持溢出的总脉冲数不变,就要减少累加次数。,被积函数扩大一倍,累加次数减少一倍。具体实现,当被积函数左移i位时,终点判别计数器右移(最高位移入1),使终点计数器JE使用长度减少i位,实现累加次数减少的目的。如果直线终点坐标为(10,6),寄存器与累加器位数是8,其规格化前后情况如下所示:规格化前 规格化后 Xe=00001010 Xe=10100000 Ye=00000110 Ye=01100000 JE=00000000 JE=11110000 圆弧插补左移规格化与直线不同之处:被积函数寄存器存放最大数值的次高位是1为规格化数。,圆弧左移规格化后,扩大了寄存器中存放的数值。左移i位,相当于乘2i,即X轴与Y轴被积函数寄存器存放的数据变为2iY,2iX,这样,假设Y轴有脉冲溢出时,则X轴被积函数寄存器中存放的坐标被修正为,上式指明,规格化处理后,插补中的坐标修正加1或减1,变成了加2i或减2i。直线和圆弧插补时规格化数处理方式不同,但均能提高溢出速度,并能使溢出脉冲变得比较均匀。,由上式可见,FRN编程,其实质是控制迭代频率fg,fg与V/L(直线插补)或V/R(圆弧插补)成正比,当插补尺寸L或R不同时,使迭代频率作相应改变,以保证所选定的进给速度。,因为,所以,式中 V要求的加工切削速度;L被加工直线长度;R被加工圆弧半径。,(2)按进给速率数FRN编程 为实现不同长度程序段的恒速加工,在编程时考虑被加工直线长度或圆弧半径,采用FRN来表示“F”功能,,(直线),或,(圆弧),(3)提高插补精度的措施 对于DDA圆弧插补,径向误差可能大于一个脉冲当量,因数字积分器溢出脉冲的频率与被积函数寄存器中的数值成正比,在坐标轴附近进行累加时,一个积分器的被积函数值接近零,而另一个积分器的被积函数接近于最大值,累加时后者连续溢出,前者几乎没有,两个积分器的溢出脉冲频率相差很大,致使插补轨迹偏离给定圆弧距离较大,使圆弧误差增大。减少误差的方法有:减小脉冲当量,误差减少,但寄存器容量增大,累加次数增加。而且要获得同样的进给速度,需要提高插补速度。可采用余数寄存器预置数法,即在DDA插补之前,累加器又称余数寄存器JRX,JRY的初值不置零,而是预置2n/2,若用二进制表示,其最高有效位置“1”,其它各位置零,若再累加100000,余数寄存器就可以产生第一个溢出脉冲,使积分器提前溢出。这种处理方式称为“半加载”,在被积函数值较小,不能很快产生溢出脉冲的情况下,可使脉冲提前溢出,改变了溢出脉冲的时间分布,达到减少插补误差的目的。,例3-5 加工第一象限顺圆AB,如图3-27,起点A(0,5),终点B(0,5)选用寄存器位数n=3,经过“半加载”处理后,试用DDA法进行插补计算。其插补运算过程见表3-5。,图3-27“半加载”后DDA圆弧插补实例,3.2.4 数据采样法*数据采样法原理 数据采样插补又称为时间分割法,与基准脉冲插补法不同,数据采样插补法得出的不是进给脉冲,而是用二进制表示的进给量。这种方法是根据程编进给速度F,将给定轮廓曲线按插补周期T(某一单位时间间隔)分割为插补进给段(轮廓步长),即用一系列首尾相连的微小线段来逼近给定曲线。每经过一个插补周期就进行一次插补计算,算出下一个插补点,即算出插补周期内各坐标轴的进给量,如等,得出下一个插补点的指令位置。插补周期越长,插补计算误差越大,插补周期应尽量选得小一些。CNC系统在进行轮廓插补控制时,除完成插补计算外,数控装置还必须处理一些其它任务,如显示、监控、位置采样及控制等。因此,插补周期应大于插补运算时间和其它实时任务所需时间之和。插补周期大约在8ms左右。,采样是指由时间上连续信号取出不连续信号,对时间上连续的信号进行采样,就是通过一个采样开关K(这个开关K每隔一定的周期TC闭合一次)后,在采样开关的输出端形成一连串的脉冲信号。这种把时间上连续的信号转变成时间上离散的脉冲系列的过程称为采样过程,周期TC叫采样周期。计算机定时对坐标的实际位置进行采样,采样数据与指令位置进行比较,得出位置误差用来控制电动机,使实际位置跟随指令位置。对于给定的某个数控系统,插补周期T和采样周期TC是固定的,通常TTC,一般要求T是TC的整数倍。对于直线插补,不会造成轨迹误差。在圆弧插补中,会带来轨迹误差,如图3-29所示,用弦线逼近圆弧,其最大径向误差er为,(3-26),式中 R被插补圆弧半径(mm);,角步距,在一个插补周期内逼近弦所对应的圆心角。将式(3-26)中的,用幂级数展开,得,(3-27),(3-26),图3-29,可见,圆弧插补过程中,用弦线逼近圆弧时,插补误差er与程编进给速度F的平方、插补周期T的平方成正比,与圆弧半径R成反比。,(3-28),(3-29),(3-30),将(3-29)代入式(3-27),得,用轮廓步长代替弦长,有,设T为插补周期,F为进给速度,则轮廓步长为,若已计算出轮廓步长,从而求得本次插补周期内各坐标轴进给量为,(3-31),3.2.5 直线函数法1.直线插补 设要加工图3-30所示直线OE,起点在坐标原点O,终点为E(),直线与X轴夹角为,则有,图3-30,2.圆弧插补 圆弧插补,需先根据指令中的进给速度F,计算出轮廓步长l,再进行插补计算。以弦线逼近圆弧,就是以轮廓步长为圆弧上相邻两个插补点之间的弦长,由前一个插补点的坐标和轮廓步长,计算后一插补点,实质上是求后一插补点到前一插补点两个坐标轴的进给量X,Y。如图3-30所示,A(Xi,Yi)为当前点,B(Xi+1,Yi+1)为插补后到达的点,图中AB弦正是圆弧插补时在一个插补周期的步长l,需计算x轴和y轴的进给量X=Xi+1-Xi,Y=Yi+1-Yi。AP是A点的切线,M是弦的中点,OMAB,ME AG,E为AG的中点。圆心角计算如下,式中 轮廓步长所对应的圆心角增量,也称为角步距。,图3-30数据采样直线函数法圆弧插补,MOD中,将 DH=Xi,OCYi,,HM,CD,代入上式,则有,(3-32),又因为,由此可以推出,的关系式,(3-33),式(3-33)反映了圆弧上任意相邻两插补点坐标之间的关系,只要求得 和,就可以计算出新的插补点,式(3-33)中,sin和cos 均为未知,求解较困难。为此,采用近似算法,用sin450和cos450 代替,tg与 tg不同,从而造成了tg 的偏差,在=0 处偏差较大。如图3-31所示,由于角 成为,因而影响到X值,使之为X.,为保证下一个插补点仍在圆弧上,Y 的计算应按下式进行,经展开整理得,由式(3-35)可用迭代法解出 Y。采用近似算法可保证每次插补点均在圆弧上,引起的偏差仅是 X X,Y Y,AB AS即l l。这种算法仅造成每次插补进给量的微小变化,而使进给速度有偏差,实际进给速度的变化小于指令进给速度的1,在加工中是允许的。,直线函数法,用弦线逼近圆弧,因此插补误差主要为半径的绝对误差。因插补周期是固定的,该误差取决于进给速度和圆弧半径,当加工的圆弧半径确定后,为了使径向绝对误差不超过允许值,对进给速度要有一个限制。,3.2.6 扩展DDA数据采样插补 1.扩展DDA直线插补,图3-33 扩展DDA直线插补,假设根据编程进给速度,要在时间段T1内走完图3-33所示直线,其起点为坐标原点O,终点坐标为E(Xe,Ye),V为进给速度(零件加工程序中记为F),Vx与Vy分别为X、Y坐标的分速度。则有,(3-36),式中 V编程的进给速度(mm/min);T插补周期(ms);根据插补周期换算后的时间常数,FRN进给速率数,式中 L插补直线长度(mm)。,将时间T1用插补周期T分割为 n个子区间(n 取 最接近的整数),从而在每个插补周期T内的坐标增量分别为:,对于同一直线来说,由于V和Xe、Ye,以及 均为常数,可以记作,称为步长系数。,故同一条直线在每个采样周期内增量 的常数均相同,在每个插补周期内算出 后,就可以得到本插补周期末的刀具位置坐标值,由于插补中每次迭代形成的子线段斜率()等于给定直线斜率,从而保证了轨迹要求。,(3-38),2.扩展DDA圆弧插补 如图3-34所示为第一象限顺圆弧AiQ,圆心在坐标原点O,半径为R。设刀具处在Ai(Xi,Yi)点位置。若在一个插补周期T内,用DDA插补法沿切线方向进给的步长为,一个插补周期后达到C点,即,由图可见,它的径向误差较大。扩展DDA插补算法,就是将切线逼近圆弧转化为割线逼近圆弧,以减少插补误差,具体步骤如下:,先通过AiC微小线段的中点B作以OB为半径的圆弧的切线BD,再通过Ai点作BD的平行线AiH,即AiH BD,并在AiH上截取,如果OB与AiH的交点为M,在直角AiMB中,斜边,直角边,,所以Ai+1点落在圆弧外侧。扩展DDA用割线 线段代替切线,使径向误差减少了。,图3-34 扩展DDA圆弧插补,下面计算在插补周期T内轮廓进给步长l的坐标分量X和Y,就可以得到本次插补周期后到达的位置Ai+1由图3-34可见,在直角OEAi中,OAi和AiE的夹角为,,(3-39),(3-40),过B点作X轴的平行线BF交Y轴于F点,交AiE线段于G点。过Ai+1点作Ai+1N平行X轴,交AiE于N点。由图3-33可以看出,直角OFB与直角AiNAi+1相似,从而有比例关系:,(3-41),设刀具以恒速进给,即在每个插补周期T内的进给速度均为V,则,式中,在直角AiGB中,因此,在直角OAiB中,将以上各式代入式(3-41)有,将式(3-39)代入上式并整理,得,因为lR,故将 略去不计,则上式变为,若令,则,(3-42),另外,从直角OFB与直角AiNAi+1相似,还可以得出,即,已知,直角AiGB 得,而,同理,因lR,故 略去不计,则,仍令,则,(3-43),由于Ai(Xi,Yi)为已知,故用式(3-42)和(3-43)求得X和Y,因而可算出本次插补周期刀具应达到的坐标位置xi+1,yi+1值,即:,刀具补偿的概念 如图3-35所示,在铣床上用半径为r的刀具加工外形轮廓为A的工件时,刀具中心沿着与轮廓A距离为r的轨迹B移动。我们要根据轮廓A的坐标参数和刀具半径r值计算出刀具中心轨迹B的坐标参数,然后再编制程序进行加工,因控制系统控制的是刀具中心的运动。在轮廓加工中,由于刀具总有一定的半径,如铣刀半径或线切割机的钼丝半径等。刀具中心(刀位点)的运动轨迹并不等于所加工零件的实际轨迹(直接按零件廓形编程所得轨迹),数控系统的刀具半径补偿就是把零件轮廓轨迹转换成刀具中心轨迹。,图3-35 刀具半径补偿,刀具补偿原理,当实际刀具长度与编程长度不一致时,利用刀具长度补偿功能可以实现对刀具长度差额的补偿。加工中心:一个重要组成部分就是自动换刀装置,在一次加工中使用多把长度不同的刀具,需要有刀具长度补偿功能。轮廓铣削加工:为刀具中心沿所需轨迹运动,需要有刀具半径补偿功能。车削加工:可以使用多种刀具,数控系统具备了刀具长度和刀具半径补偿功能,使数控程序与刀具形状和刀具尺寸尽量无关,可大大简化编程。具有刀具补偿功能,在编制加工程序时,可以按零件实际轮廓编程,加工前测量实际的刀具半径、长度等,作为刀具补偿参数输入数控系统,可以加工出合乎尺寸要求的零件轮廓。刀具补偿功能还可以满足加工工艺等其他一些要求,可以通过逐次改变刀具半径补偿值大小的办法,调整每次进给量,以达到利用同一程序实现粗、精加工循环。另外,因刀具磨损、重磨而使刀具尺寸变化时,若仍用原程序,势必造成加工误差,用刀具长度补偿可以解决这个问题。,钻削加工中的刀具补偿,1.刀具长度补偿 车床数控装置控制的是刀架参考点的位置,实际切削时是利用刀尖来完成,刀具长度补偿是用来实现刀尖轨迹与刀架参考点之间的转换。,车削加工中的刀具补偿,如图3-38所示,P为刀尖,Q为刀架参考点,假设刀尖圆弧半径为零。利用刀具长度测量装置测出刀尖点相对于刀架参考点的坐标xpq,zpq,存入刀补内存表中。零件轮廓轨迹是由刀尖切出的,编程时以刀尖点P来编程,设刀尖P点坐标为xp,zp,刀架参考点坐标Q(xq,zq)可由下式求出:,(3-45),这样,零件轮廓轨迹通过式(3-45)补偿后,就能通过控制刀架参考点Q来实现。,图3-38 车刀长度补偿,1.刀具半径补偿,1.刀具半径补偿原理 ISO标准规定,当刀具中心轨迹在编程轨迹(零件轮廓ABCD)前进方向的左侧时,称为左刀补,用G41表示。反之,当刀具处于轮廓前进方向的右侧时称为右刀补,用G42表示,如图3-36所示。G40为取消刀具补偿指令。,在切削过程中,刀具半径补偿的补偿过程分为三个步骤:(1)刀补建立(2)刀具补偿进行(3)刀补撤销,轮廓铣加工中的刀具补偿,刀具半径补偿算法 刀具半径补偿计算:根据零件尺寸和刀具半径值计算出刀具中心轨迹。对于一般的CNC装置,所能实现的轮廓仅限于直线和圆弧。刀具半径补偿分B功能刀补与C功能刀补,B功能刀补能根据本段程序的轮廓尺寸进行刀具半径补偿,不能解决程序段之间的过渡问题,编程人员必须先估计刀补后可能出现的间断点和交叉点等情况,进行人为处理。B功能刀补计算如下所述,B功能刀具半径补偿计算,直线插补的B刀具半径补偿计算 B功能刀具半径补偿计算是指根据零件轮廓尺寸和刀具半径值,求出刀具中心的运动轨迹。B刀具半径补偿只考虑一个程序段的补偿,不考虑两程序段之间过渡的问题。早期的数控系统只有B补偿功能。在直线插补的情况下,经过刀具半径补偿后的刀具中心轨迹是原直线段平行的直线。因此刀具半径补偿计算只需计算出刀具中心轨迹的起点和终点坐标值。刀具半径补偿计算分三步:计算本程序段的终点坐标值、计算刀具半径坐标分量及计算刀具中心运动轨迹的终点坐标值。,如图所示,被加工直线段的起点在坐标原点O,终点A(XA,YA),以右补偿为例计算出刀具补偿之后的刀具中心的坐标值。计算分三步:计算本程序段的终点坐标值A(XA,YA)计算刀具半径坐标分量KA 及KB计算刀具中心轨迹终点坐标值B(XB,YB),直线B刀具补偿计算 对直线而言,刀具补偿后的轨迹是与原直线平行的直线,只需要计算出刀具中心轨迹的起点和终点坐标值。如图3-41所示,被加工直线段的起点在坐标原点,终点坐标为A。假定上一程序段加工完后,刀具中心在O点坐标已知。刀具半径为,现要计算刀具右补偿后直线段OA的终点坐标A。设刀具补偿矢量AA的投影坐标为,则,(3-48)式为直线B刀补计算公式,是在增量编程下推导出的。对于绝对值编程,仍可应用此公式计算,所不同的是应是绝对坐标。,(3-48),(3-49),圆弧B刀具半径补偿计算 对于圆弧而言,刀具补偿后的刀具中心轨迹是一个与圆弧同心的一段圆弧。只需计算刀补后圆弧的起点坐标和终点坐标值。如图3-42所示,被加工圆弧的圆心坐标在坐标原点O,圆弧半径为R,圆弧起点A,终点B,刀具半径为r。,假定上一个程序段加工结束后刀具中心为A,其坐标已知。那么圆弧刀具半径补偿计算的目的,就是计算出刀具中心轨迹的终点坐标B。设BB在两个坐标上的投影 为则,(3-50),(3-51),圆弧插补的B刀具半径补偿计算,圆弧插补时,刀具补偿后的刀