数控技术概论及加工编程(2)西华大学机械工程与自动化学院制作:尹洋、周利平四川省精品课程第2章数控机床控制原理一.插补的基本概念机床数控系统轮廓控制的主要问题,是怎样控制刀具或工件的运动轨迹。一般情况是已知运动轨迹的起点坐标、终点坐标、曲线类型和走向,由数控系统实时地算出各个中间点的坐标。即需要“插入、补充”运动轨迹各个中间点的坐标,这个过程称为“插补”(Interpolation)。插补结果是输出运动轨迹的中间点坐标值。二.插补方法分类:逐点比较法DDA法时间分割法脉冲增量插补常用于步进电机开环系统适用于直流、交流伺服电机的闭环或半闭环控制系统数字增量插补l•插补周期插补运算时间+完成其它任务所需时间•数据采样插补误差:直线插补可认为不会造成轨迹误差圆弧插补:弦线逼近:割线逼近:逼近误差与进给速度F、插补周期T的平方成正比,与圆弧半径R成反比。当给定及插补周期T确定之后,可根据圆弧半径R选择进给速度F,以保证逼近误差不超过允许值。2.2逐点比较插补法(point-by-pointrelativemethod)基本原理:每走一步都要将加工点的瞬时坐标与规定的图形轨迹相比较判断一下偏差,然后决定下一步的走向,如果加工点走到图形外面去了,那么下一步就往图形里面走;如加工点在图形里面,则下一步就向图形外面走,以缩小差距。这样就能得到一个非常接近规定图形的轨迹。ABOYXP0(x,y)P1P2图中AB是需插补的曲线,用逐点比较法插补前先根据AB的形状构造函数F=F(x,y)x,y为刀具的坐标函数F的正负必须反映出刀具与曲线的相对位置关系,设这种关系为F(x,y)0刀具在曲线上方F(x,y)=0刀具在曲线上F(x,y)0刀具在曲线下方由于F(x,y)反映了刀具偏离曲线的情况,称之为偏差函数逐点比较法的程序流程如图。一个插补循环由偏差判别、进给、偏差计算和终点判别四个工作节拍组成。偏差判别坐标进给偏差计算终点判别判别偏差函数的正负,以确定刀具相对于所加工曲线的位置根据上一节拍的判断结果确定刀具的进给方向。若偏差函数F(x,y)小于零,说明刀具在曲线下方(P0点)。请回答,为了让刀具向曲线靠近并朝曲线的终点运动,刀具应沿X轴或Y轴走一步?若偏差函数大于零呢?等于零?计算出刀具进给后在新位置上的偏差值,为下一插补循环做好准备判断刀具是否到达曲线的终点。若到达终点,则插补工作结束;若未到达,则返回到节拍1继续插补•直线插补(linearinterpolation)即若加工点P在直线OA上方,则即若加工点P在直线OA下方,则即设某时刻刀具运动到P(Xi,Yi)偏差函数为Fi,令F的数值称为该点的“偏差值”①偏差函数OA是要加工的直线。起点坐标O为坐标原点,终点A坐标为。点P为任一加工点(刀具),若P点正好在直线OA上,下式成立OYXAPF0F0F=0②进给方向与偏差判别若点P在直线上或上方(F≥0)应向+X方向发一脉冲,使机床刀具向+X方向前进一步,以接近该直线;OYXAOYXA当点P在直线下方时(F<0),刀具向+Y方向前进一步。当F0时,刀具从向+Y前进一步,到达则新加工点的偏差值为当F≥0时,刀具从向+X进一步,到达则新加工点的偏差值为OYXAOYXA新加工点的偏差可用前一点的偏差递推出来:③终点判别2)每进行一个插补循环,刀具或者沿X轴走一步,或沿Y轴走一步,因此插补数与刀具沿X、Y轴已走的总步数相等。这样可根据插补数n与刀具沿X、Y轴应进给的总步数N是否相等判断终点,即直线加工结束的条件为n=N1)每进行一个插补循环,刀具或者沿X轴走一步,或沿Y轴走一步,每走一步,判别|Xi|≥|Xe|且|Yi|≥|Ye|是否成立,若成立则插补结束,否则继续。④插补流程图及举例结束Xe,YeXe+YeE,0FiFi≥0?进给方向ye进给方向xeYNYN例:逐点法加工直线OA,写出插补计算过程并画出插补轨迹OYXA(5,3)解:插补运算过程见表脉冲个数偏差判别进给方向偏差计算终点判别0E=812345678+X+Y+X+Y+X+X+X+YE=E-1=8-1=7≠0E=E-1=7-1=6≠0E=E-1=6-1=5≠0E=E-1=5-1=4≠0E=E-1=4-1=3≠0E=E-1=3-1=2≠0E=E-1=2-1=1≠0E=E-1=1-1=0OA(5,3)YX12345678其它象限直线插补1)分别处理法2)坐标变换法•各象限的插补计算公式及插补流程相同,只是将公式中的终点坐标用绝对值代入。•进给方向由实际象限决定:L1L2L3L4OFi,j0Fi,j0Fi,j0Fi,j0Fi,j0Fi,j0Fi,j0Fi,j0Fi,j0→|X|增大Fi,j0→|Y|增大•圆弧插补(circularinterpolation)加工第一象限逆时针圆弧AB若点P正好落在圆弧上,则有若点P在圆弧外侧,则有RpR若点P在圆弧内侧,则有RpR上面各式可分别写成:在圆弧上在圆弧外侧在圆弧内侧逐点比较法圆弧插补偏差判别式定义为:RRpABF0F0XYOP若点P在圆弧外侧或圆弧上,即满足F≥0的条件时,应向X轴发出一负方向脉冲(-△X),向圆内走一步。RRpABF0F0XYOP应向Y轴发出一正向脉冲(+△Y),向圆弧外走一步。设点P在圆弧外侧或圆弧上,(F≥0)可计算出新加工点偏差为设点P在圆弧内侧,(F0)可计算出新加工点偏差为且且和直线插补一样,除偏差计算外,还要进行终点判别,方法与前同。若点P在圆弧内侧呢?例:加工图示逆圆弧AB,起点A(6,0),B(0,6),试对其进行插补,并画出插补轨迹。AB(6,0)(0,6)插补结束F≥0?进给方向+y进给方向-xE=0?YNYNX0,Y0|Xe-X0|+|Ye-Y0|E,0Fi脉冲个数偏差判别进给方向偏差计算坐标计算终点判别1F0=0-XF1=F0-2X0+1=0-2×6+1=-11X1=X0-1=6-1=5Y1=Y0=0E=12-12F1=-110+YF2=F1+2Y1+1=-11+0+1=-10X2=X1=5Y2=Y1+1=1E=12-23F2=-100+Y4F3=-70+Y5F4=-20+Y6F5=50-X7F6=-40+Y8F7=50-X9F8=-20+Y10F9=90-X11F10=+40-X12F11=10-XAB(6,0)(0,6)2.3数字积分法利用对速度分量积分的方法,计算刀具沿各坐标轴的位移,使得刀具沿着所加工的轨迹运动数字积分原理△tYtDigitalDifferentialAnalyzer(数字微分分析器)被积函数寄存器全加器累加器△ti△S数字积分(DDA)直线插补①原理YXoA(xe,ye)VVyVx为保证每次最多只能产生一个进给脉冲:若寄存器位数为n,则Xe、Ye的最大允许值为2n-1:当,对二进制数而言,Kxe与xe的差别只在于小数点位置不同,在n位寄存器中存放Kxe与xe的数字是相同的。y积分累加器JRy被积函数寄存器JVx(xe)被积函数寄存器JVy(ye)x积分累加器JRxx积分器y积分器△x△y控制脉冲⊿t插补X轴溢出脉冲Y轴溢出脉冲DDA直线插补器示意图直线插补器由两个数字积分器组成,每个坐标的积分器由累加器和被积函数寄存器所组成。终点坐标值存放在被积函数寄存器中。②终点判别经计算,刀具从原点到达终点的累加次数m=2n因此,可以设置一个位数为n的终点计数器Re来记录累加次数。插补前将其清零,插补运算开始后,每进行一次加法运算,Re就加1,当记满2n数时,停止运算,插补完成。工作过程为:每发一个插补脉冲(即来一个△t),使xe,ye向各自的累加器里累加一次,累加的结果有无溢出脉冲△x(或△y),取决于累加器的容量2n和xe,ye的大小。③举例例:要插补所示直线轨迹OA,起点坐标为O(0,0),终点坐标为A(5,3),若被积函数寄存器Jvx、Jvy和累加器JRx、JRy以及终点计数器Re均为三位二进制寄存器。请写出插补过程、画出DDA直线插补轨迹。yxoA(5,3)注:插补前JRx、JRy、Re为零,Jvx、Jvy分别存放xe=5,ye=3,且始终保持不变累加次数X积分器Y积分器终点计数器Re备注JvxJRx⊿xJvyJRy⊿y0101000011000000初始状态11010112101011310101141010115101011610101171010118101011DDA直线插补过程累加次数X积分器Y积分器终点计数器Re备注JvxJRx⊿xJvyJRy⊿y0101000011000000初始状态1101101011011001一次累加2101011310101141010115101011610101171010118101011DDA直线插补过程累加次数X积分器Y积分器终点计数器Re备注JvxJRx⊿xJvyJRy⊿y0101000011000000初始状态1101101011011001一次累加21010101011110010⊿x溢出310141015101610171018101DDA直线插补过程累加次数X积分器Y积分器终点计数器Re备注JvxJRx⊿xJvyJRy⊿y0101000011000000初始状态1101101011011001一次累加21010101011110010⊿x溢出31011110110011011⊿y溢出41015101610171018101DDA直线插补过程累加次数X积分器Y积分器终点计数器Re备注JvxJRx⊿xJvyJRy⊿y0101000011000000初始状态1101101011011001一次累加21010101011110010⊿x溢出31011110110011011⊿y溢出41011001011100100⊿x溢出51010011011111101⊿x溢出61011100110101110⊿y溢出71010111011101111⊿x溢出810100010110001000⊿x、⊿y同时溢出,插补结束DDA直线插补过程A(5,3)XYO数字积分(DDA)圆弧插补RABXYOPVxVyVxVyy积分累加器JRy被积函数寄存器Jvx(y)被积函数寄存器Jvy(x)x积分累加器JRxx积分器y积分器△x△y控制脉冲⊿t插补X轴溢出脉冲Y轴溢出脉冲+-•圆弧插补与直线插补的不同处:直线:累加本坐标的终点坐标值。圆弧:X坐标值累加的溢出脉冲作为Y轴的进给脉冲;Y坐标值累加的溢出脉冲作为X轴的进给脉冲。直线:常值(终点坐标)累加。圆弧:变量(动点坐标)累加。直线DDA插补公式圆弧DDA插补公式进给速度均化0000010100000011JvxJvy左移规格化处理同时左移,以保持二数比值不变(直线斜率不变)1010000001100000若左移p位,相当于Xe、Ye放大了p倍即累加次数减少到2n-p次,由此,终点判别作相应改变。每隔一个时间间隔△t(插补周期,ms),根据程编给出的进给速度F(mm/min),计算出△t(ms)内的合成进给量f,由f按运动规律计算处各坐标的位移△x,△y,△z。2.4时间分割法两坐标联动直线插补YXOP(xe,ye)f△x△yα插补轨迹与直线吻合圆弧插补基本思想:满足精度要求前提下,用弦进给代替弧进给MRXYOABΔXfPΔYθα2.5左刀补、右刀补执行过程分三步建立进行撤消G41G42外轮廓加工内轮廓加工刀具中心相对工件轮廓轨迹偏移一个刀具半径。编程轨迹刀具半径补偿计算,对于直线轮廓控制是计算出刀具中心轨迹的起点和终点坐标值,对于圆弧轮廓而言,是算出刀补后圆弧的起点和终点坐标值及刀具补偿后的圆弧半径值。•直线段刀具补偿计算求A1坐标:YOXA(,)O1A1(X1,Y1)rK•圆弧段刀具补偿计算求B1坐标:OYXA(,)B(,)RA1(,)B1(,)r•C(Complete)功能刀具补偿概念缓冲寄存区:存放再下一个程序段刀补缓冲区:存放下一个的程序段工作寄存区:存放正在加工的程序段输出寄存区:存放进给伺服