§2—1 逐点比较法
逐点比较法是我国数控机床中广泛采用的一种插补方法,它能实现直线、圆弧和非圆二次曲线的插补,插补精度较高。
逐点比较法,顾名思义,就是每走一步都要将加工点的瞬时坐标同规定的图形轨迹相比较,判断其偏差,然后决定下一步的走向,如果加工点走到图形外面去了,那么下一步就要向图形里面走;如果加工点在图形里面,那么下一步就要向图形外面走,以缩小偏差。这样就能得出一个非常接近规定图形的轨迹,最大偏差不超过一个脉冲当量。
在逐点比较法中,每进给一步都须要进行偏差判别、坐标进给、新偏差计算和终点比较四个节拍。下面分别介绍逐点比较法直线插补和圆弧插补的原理。
一、 逐点比较法直线插补
如上所述,偏差计算是逐点比较法关键的一步。下面以第Ⅰ象限直线为例导出其偏差计算公式。
图2-1 直线插补过程
点击进入动画观看逐点比较法直线插补
如图2—1所示,假定直线 的起点为坐标原点,终点A的坐标为 为加工点,若P点正好处在直线 上,那么下式成立:
若任意点 在直线 的上方(严格地说,在直线 与y轴所成夹角区域内),那么有下述关系成立:
亦即:
由此可以取偏差判别函数 为:
由 的数值(称为“偏差”)就可以判别出P点与直线的相对位置。即:
当 =0时,点 正好落在直线上;
当 >0时,点 落在直线的上方;
当 <0时,点 落在直线的下方。
从图2—1看出,对于起点在原点,终点为A( )的第Ⅰ象限直线OA来说,当点P在直线上方(即 >0)时,应该向+x方向发一个脉冲,使机床刀具向+x方向前进一步,以接近该直线;当点P在直线下方(即 <0)时,应该向+y方向发一个脉冲,使机床刀具向+y方向前进一步,趋向该直线;当点P正好在直线上(即 =0)时,既可向+x方向发一脉冲,也可向+y方向发一脉冲。因此通常将 >0和 =0归于一类,即 ≥0。这样从坐标原点开始,走一步,算一次,判别 ,再趋向直线,逐点接近直线 ,步步前进。当两个方向所走的步数和终点坐标A( )值相等时,发出终点到达信号,停止插补。
对于图2—1的加工直线OA,我们运用上述法则,根据偏差判别函数值,就可以获得如图中折线段那样的近似直线。
但是按照上述法则进行 的运算时,要作乘法和减法运算,这对于计算过程以及具体电路实现起来都不很方便。对于计算机而言,这样会影响速度;对于专用控制机而言,会增加硬件设备。因此应简化运算,通常采用的是迭代法,或称递推法,即每走一步后新加工点的加工偏差值用前一点的加工偏差递推出来。下面推导该递推式:
已经知道,加工点的坐标为( )时的偏差为:
若 ≥0时,则向x轴发出一进给脉冲,刀具从这点即( )点向x方向前进一步,到达新加工点P( ), ,因此新加工点P( )的偏差值为
即: (2-1)
如果某一时刻,加工点P( )的 <0,则向y轴发出一个进给脉冲,刀具从这一点向y方向前进一步,新加工点P( )的偏差值为
即:
(2-2)
根据式(2—1)及式(2—2)可以看出,新加工点的偏差完全可以用前一加工点的偏差递推出来。
综上所述,逐点比较法的直线插补过程为每走一步要进行以下4个节拍(步骤),即判别、进给、运算、比较。
(1) 判别。根据偏差值确定刀具位置是在直线的上方(或线上),还是在直线的下方。
(2) 进给。根据判别的结果,决定控制哪个坐标(x或y)移动一步。
(3) 运算。计算出刀具移动后的新偏差,提供给下一步作判别依据。根据式(2—1)及式(2—2)来计算新加工点的偏差,使运算大大简化。但是每一新加工点的偏差是由前一点偏差 推算出来的,并且一直递推下去,这样就要知道开始加工时那一点的偏差是多少。当开始加工时,我们是以人工方式将刀具移到加工起点,即所谓“对刀”,这一点当然没有偏差,所以开始加工点的 =0。
(4) 比较。在计算偏差的同时,还要进行一次终点比较,以确定是否到达了终点。若已经到达,就不再进行运算,并发出停机或转换新程序段的信号。
下面以实例来验证图2—1。设欲加工直线OA,其终点坐标为 =5*, =3*,则终点判别值可取为 (终点判别方法详见下述)。开始时偏差 ,加工过程的运算节拍如表2—1所示。
图2-2 逐点比较法直线插补过程
表2-1 逐点比较法直线插补运算举例
序号 |
工 作 节 拍 |
第1拍:判别 |
第2拍:进给 |
第3拍:运算 |
第4拍:比较 |
1 |
F00=0 |
+∆x |
F10= F00-ye=0-3= -3 |
E7= E8-1=7 |
2 |
F10(= -3)<0 |
+∆y |
F11 = F10+xe= -3+5=2 |
E6= E7-1=6 |
3 |
F11(= 2)>0 |
+∆x |
F21= F11-ye=2-3= -1 |
E5= E6-1=5 |
4 |
F21(= -1) <0 |
+∆y |
F22= F21+xe= -1+5=4 |
E4= E5-1=4 |
5 |
F22(= 4)>0 |
+∆x |
F32= F22-ye=4-3= 1 |
E3= E4-1=3 |
6 |
F32(= 1)>0 |
+∆x |
F42 = F32-ye=1-3= -2 |
E2= E3-1=2 |
7 |
F42(= -2)<0 |
+∆y |
F43= F42+xe= -2+5=3 |
E1=E2-1=1 |
8 |
F43(= 3)>0 |
+∆x |
F53= F43-ye=3-3=0 |
E0=E1-1=0 |
|
|
|
|
到达终点 |
二、 逐点比较法圆弧插补
加工一个圆弧,很容易联想到把加工点到圆心的距离和该圆的名义半径相比较来反映加工偏差。这里,我们以第Ⅰ象限逆圆弧为例导出其偏差计算公式。设要加工图2—3所示第Ⅰ象限逆时针走向的圆弧 ,半径为R,以原点为圆心,起点坐标为A( ),对于圆弧上任一加工点的坐标设为P( ),P点与圆心的距离 的平方为 ,现在讨论这一加工点的加工偏差。
图2-3 圆弧插补过程
点击进入动画观看逐点比较法圆弧插补
若点P( )正好落在圆弧上,则下式成立:
若加工点P( )在圆弧外侧,则 >R,即:
若加工点P( )在圆弧内侧,则 <R,即:
将上面各式分别改写为下列形式:
(加工点在圆弧上)
(加工点在圆弧外侧)
(加工点在圆弧内侧)
取加工偏差判别式为:
运用上述法则,利用偏差判别式,即获得图2—2折线所示的近似圆弧。
若P( )在圆弧外或圆弧上,即满足 ≥0的条件时,应向x轴发出一个负向运动的进给脉冲(—
第二章 插补与刀补计算原理 §2—1 逐点比较法Δx),即向圆内走一步。若P( )在圆弧内侧,即满足 <0的条件,则向y轴发出一个正向运动的进给脉冲(+Δy),即向圆弧外走一步。为了简化偏差判别式的运算,仍用递推法来推算下一步新的加工偏差。
设加工点P( )在圆弧外侧或圆弧上,则加工偏差为
x坐标需向负方向进给一步(—Δx),移到新的加工点P( )位置,此时新加工点的x坐标值为 ,y坐标值仍为 ,新加工点P( )的加工偏差为:
经展开并整理,得:
(2-3)
设加工点P( )在圆弧的内侧,则:
<0
那么,y坐标需向正方向进给一步(+Δy),移到新加工点P( ),此时新加工点的x坐标值仍为 ,y坐标值则改为 ,新加工点P( )的加工偏差为:
,展开上式,并整理得:
综上所述可知:当 ≥0时,应走—Δx,新偏差为 ,动点(加工点)坐标为 , ;当 <0时,应走+Δy,新偏差为 ,动点坐标为 , 。
下面举例说明插补过程。设欲加工第Ⅰ象限逆时针走向的圆弧 (见图2—4),起点A的坐标是 ,终点E的坐标是 ,终点判别值:
图2-4 圆弧实际轨迹
图2-5 逐点比较法圆弧插补过程
加工过程的运算节拍见表2—3,插补后获得的实际轨迹如图2—3折线所示。
可见,圆弧插补偏差计算的递推公式也是比较简单的。但计算偏差的同时,还要对动点的坐标进行加1、减1运算,为下一点的偏差计算做好准备。
和直线插补一样,除偏差计算外,还要进行终点判别计算。每走一步,都要从两坐标方向总步数中减去1,直至总步数被减为零(发终点到达信号)时为止,才终止计算。
表2-3 逐点比较法圆弧插补运算举例
序号 |
工作节拍 |
第1拍:判别 |
第2拍:进给 |
第3拍:运算 |
第4拍:比较 |
1 |
F=0 |
-△x |
F=0-2*4+1=7 |
E=6-1=5(≠0) |
2 |
F(=-7)<0 |
+△y |
F=-7+2*3+1=0
x=3,y=3+1=4 |
E=5-1=4(≠0) |
3 |
F=0 |
-△x |
F=0-2*3+1=-5
x=3-1=2,y=4 |
E=4-1=3(≠0) |
4 |
F(=-5)<0 |
+△y |
F=-5+2*4+1=4
x=2,y=4+1=5 |
E=3-1=2(≠0) |
5 |
F(=4)>0 |
-△x |
F=4-2*2+1=1
x=2-1=1,y=5 |
E=2-1=1≠0) |
6 |
F(=1)>0 |
-△x |
F=1-2*1+1=0
x=1-1=0,y=5 |
E=1-1=0(终止) |
逐点比较法插补第Ⅰ象限直线和第Ⅰ象限逆圆弧的计算流程图分别见图2—4和图2—5。
图2-4 直线插补计算流程图 图2-5 圆弧插补计算流程图
三、 坐标转换和终点判别问题
1.象限与坐标变换
前面所讨论的用逐点比较法进行直线及圆弧插补的原理和计算公式,只适用于第Ⅰ象限直线和第Ⅰ象限逆时针圆弧那种特定的情况。对于不同象限的直线和不同象限、不同走向的圆弧来说,其插补计算公式和脉冲进给方向都是不同的。为了将各象限直线的插补公式统一于第Ⅰ象限的公式,将不同象限、不同走向的8种圆弧的插补公式统一于第Ⅰ象限逆圆的计算公式,就需要将坐标和进给方向根据象限等的不同而进行变换,这样,不管哪个象限的圆弧和直线都按第Ⅰ象限逆圆和直线进行插补计算。而进给脉冲的方向则按实际象限和线型来决定,采用逻辑电路或程序将进给脉冲分别发到+X,-X,+Y,-Y四个通道上去,以控制机床工作台沿X和Y向的运动。
我们用SR1,SR2,SR3,SR4分别表示第Ⅰ,Ⅱ,Ⅲ,Ⅳ象限的顺时针圆弧,用NR1,NR2,NR3,NR4分别表示第Ⅰ,Ⅱ,Ⅲ,Ⅳ象限的逆时针圆弧,如图2—6(a)所示;用L1,L2,L3,L4分别表示第Ⅰ,Ⅱ,Ⅲ,Ⅳ象限的直线,如图2—6(b)所示。由图2—6可以看出:按第Ⅰ象限逆时针走向圆弧NR1线型插补运算时,如将x轴的进给反向,即走出第Ⅱ象限顺时针走向圆弧SR2;将y轴的进给反向,即走出SR4;将x和y轴两者进给都反向,即走出NR3。此时NR1,NR3,SR2,SR4四种线型都取相同的偏差运算公式,无须改变。
图2-6 直线和圆弧不同象限的走向
还可以看出,按NR1线型插补时,把运算公式的坐标x和y对调,以x作y,以y作x,那么就得到SR1的走向。按上述原理,应用SR1同一运算公式,适当改变进给方向也可获得其余线型SR3,NR2,NR4的走向。
这就是说,若针对不同象限建立类似于第Ⅰ象限的坐标,就可得到与第Ⅰ象限直线和第Ⅰ象限逆圆的类似情况,从而可以用统一公式作插补计算,然后根据象限的不同发出不同方向的脉冲。图2—6(a)、(b)分别为8种圆弧和4种直线的坐标建立情况,据此可以得到表2—3的进给脉冲分配类型。
表2-3 △x,△y脉冲分配的12种类型
图形 |
脉冲 |
象 限 |
Ⅰ |
Ⅱ |
Ⅲ |
Ⅳ |
G03 |
△x
△y |
-X
+Y |
-Y
+X |
+X
-Y |
+X
+Y |
G02 |
△x
△y |
-Y
+X |
+X
+Y |
+Y
-X |
-X
-Y |
G01 |
△x
△y |
+X
+Y |
+Y
-X |
-X
-Y |
-Y
+X |
从表2—3可以看出,对于直线(G01)来说,按照第Ⅰ象限直线偏差计算公式得到的Δx和Δy脉冲,根据不同的象限,分配到机床不同坐标(X,Y)的正负方向上。即若是第Ⅱ象限直线,则Δx应发往+Y坐标;若是第Ⅲ象限直线,则Δx应发往 X坐标,等等。由此表可以得到发往±X,±Y坐标方向的脉冲分配逻辑式为
+X=G02·Δy·Ⅰ+G01·Δx·Ⅰ+G02·Δx·Ⅱ+G03·Δx·Ⅲ
+G03·Δy·Ⅳ+G01·Δy·Ⅳ
X=G03·Δx·Ⅰ+G03·Δy·Ⅱ+G01·Δy·Ⅱ+G02·Δy·Ⅲ
+G01·Δx·Ⅲ+G02·Δx·Ⅳ
+Y=G03·Δy·Ⅰ+G01·Δy·Ⅰ+G02·Δy·Ⅱ+G01·Δx·Ⅱ
+G02·Δx·Ⅲ+G03·Δx·Ⅳ
Y=G02·Δx·Ⅰ+G03·Δx·Ⅱ+G03·Δy·Ⅲ+G01·Δy·Ⅲ
+G02·Δy·Ⅳ+G01·Δx·Ⅳ
2.逐点比较法的终点判别
逐点比较法的终点判别方法大致有下列几种:
(1) 设置一个终点减法计数器JE,插补运算开始前记入该程序x及y坐标的加工总长(即x和y的位移总步数),在插补过程中,x或y向每走一步,就从总步数中减去1,直至JE中存数被减为零,表示到达终点。这种方法,前例已作介绍。
(2) 设置两个计数器JEX及JEY,分别控制两个坐标轴的加工长度。若沿x轴移动一步,从JEX中减1;同样,若沿y轴移动一步,从JEY中减1。当JEX及JEY中存数均被减为零时,表示到达终点。
(3) 设置一个终点减法计数器JE,插补运算开始前记入该程序x坐标轴(或y轴)上的投影加工总长度Ex(或Ey)——应选取Ex和Ey中较大的坐标值作为终点判别坐标。在插补过程中,若JE中寄存的是Ex,则每当沿x轴走一步,即从JE存数中减去1(若JE中寄存Ey,则每当沿y轴走一步,即从JE中减去1),直至JE存数被减为零,表示到达终点。
逐点比较法除能插补直线和圆弧之外,还能插补椭圆、抛物线和双曲线等二次曲线。此法进给速度平稳,精度较高,无论是在普通NC系统还是在CNC系统中都有着非常广泛的应用。下面就来分析逐点比较法插补时的进给速度问题。
四、逐点比较法的合成进给速度
从前面的讨论知道,插补器向各个坐标分配进给脉冲,这些脉冲造成坐标的移动。因此,对于某一坐标而言,进给脉冲的频率就决定了进给速度。以 坐标为例,设 为以“脉冲/s”表示的脉冲频率, 为以“mm/min”表示的进给速度,它们有如下的比例关系:
式中δ为脉冲当量,以“mm/脉冲”表示。
各个坐标进给速度的合成线速度称为合成进给速度或插补速度。对三坐标系统来说,合成进给速度 为
式中 分别为 , , 三个方向的进给速度。
合成进给速度直接决定了加工时的粗糙度和精度。我们希望在插补过程中,合成进给速度恒等于指令进给速度或只在允许的范围内变化。但是实际上,合成进给速度 与插补计算方法、脉冲源频率及程序段的形式和尺寸都有关系。也就是说,不同的脉冲分配方式,指令进给速度 和合成进给速度 之间的换算关系各不相同。
现在,我们来计算逐点比较法的合成进给速度。
我们知道,逐点比较法的特点是脉冲源每产生一个脉冲,不是发向 轴( ),就是发向 轴( )。令 为脉冲源频率,单位为“个脉冲/s”,则有
从而 和 方向的进给速度 和 (单位为mm/min)分别为
合成进给速度 为
当 (或 )时,也就是进给脉冲按平行于坐标轴的方向分配时有最大速度,这个速度由脉冲源频率决定,所以称其为脉冲源速度 (实质是指循环节拍的频率,单位为mm/min)。
合成进给速度 与 之比为
其插补速度 的变化范围为 ,最大速度与最小速度之比为
这样的速度变化范围,对一般机床来说已可满足要求,所以逐点比较法的进给速度是较平稳的。 |