资源描述
逐点比较法的概念基本原理及特点
早期数控机床广泛采用的方法,又称代数法、醉步伐,适 用于开环系统。
1.插补原理及特点
原理:每次仅向一个坐标轴输出一个进给脉冲,而每走一步都要通过偏差函数计算,判断偏差点的瞬时坐标同规定加工轨迹之间的偏差,然后决定下一步的进给方向。每个插补循环由偏差判别、进给、偏差函数计算和终点判别四个步骤组成。
逐点比较法可以实现直线插补、圆弧插补及其它曲安插补。
特点:运算直观,插补误差不大于一个脉冲当量,脉冲输出均匀,调节方便。
逐点比较法直线插补
(1)偏差函数构造
对于第一象限直线OA上任一点(X,Y):X/Y = Xe/Ye
若刀具加工点为Pi(Xi,Yi),则该点的偏差函数Fi可表示为
若Fi= 0,表示加工点位于直线上;
若Fi> 0,表示加工点位于直线上方;
若Fi< 0,表示加工点位于直线下方。
(2)偏差函数字的递推计算
采用偏差函数的递推式(迭代式)
既由前一点计算后一点
Fi =Yi Xe -XiYe
若Fi>=0,规定向 +X 方向走一步
Xi+1 = Xi +1
Fi+1 = XeYi –Ye(Xi +1)=Fi –Ye
若Fi<0,规定 +Y 方向走一步,则有
Yi+1 = Yi +1
Fi+1 = Xe(Yi +1)-YeXi =Fi +Xe
(3)终点判别
直线插补的终点判别可采用三种方法。
1)判断插补或进给的总步数:;
2)分别判断各坐标轴的进给步数;
3)仅判断进给步数较多的坐标轴的进给步数。
(4)逐点比较法直线插补举例
对于第一象限直线OA,终点坐标Xe=6 ,Ye=4,插补从直线起点O开始,故F0=0 。终点判别是判断进给总步数N=6+4=10,将其存入终点判别计数器中,每进给一步减1,若N=0,则停止插补。
逐点比较法圆弧插补
3.逐点比较法圆弧插补
(1)偏差函数
任意加工点Pi(Xi,Yi),偏差函数Fi可表示为
若Fi=0,表示加工点位于圆上;
若Fi>0,表示加工点位于圆外;
若Fi<0,表示加工点位于圆内
(2)偏差函数的递推计算
1) 逆圆插补
若F≥0,规定向-X方向
走一步
若Fi<0,规定向+Y方向
走一步
2) 顺圆插补
若Fi≥0,规定向-Y方向
走一步
若Fi<0,规定向+y方向
走一步
(3)终点判别
1) 判断插补或进给的总步数:
2) 分别判断各坐标轴的进给步数;
(4)逐点比较法圆弧插补举例
对于第一象限圆弧AB,
起点A(4,0),终点B(0,4)
4.逐点比较法的速度分析
式中:L —直线长度;
V —刀具进给速度;
N —插补循环数;
f —插补脉冲的频率。
所以:
刀具进给速度与插补时钟频率f 和与X轴夹角α有关
5.逐点比较法的象限处理
(1)分别处理法
四个象限的直线插补,会有4组计算公式,对于4个象限的逆时针圆弧插补和4个象限的顺时针圆弧插补,会有8组计算公式
(2)坐标变换法
用第一象限逆圆插补的偏差函数进行第三象限逆圆和第二、四象限顺圆插补的偏差计算,用第一象限顺圆插补的偏差函数进行第三象限顺圆和第二、四象限逆圆插补的偏差计算。
逐点比较法圆弧插补原理
逐点比较法的基本原理是,在刀具按要求轨迹运动加工零件轮廓的过程中,不断比较刀具与被加工零件轮廓之间的相对位置,并根据比较结果决定下一步的进给方向,使刀具向减小偏差的方向进给(始终只有一个方向)。
一般地,逐点比较法插补过程有四个处理节拍,如图4-1:
(1)偏差判别。判别刀具当前位置相对于给定轮廓的偏差状况;
(2)坐标进给。根据偏差状况,控制相应坐标轴进给一步,使加工点向被加工轮廓靠拢;
(3)重新计算偏差。刀具进给一步后,坐标点位置发生了变化,应按偏差计算公式计算新位置的偏差值;
(4)终点判别。若已经插补到终点,则返回监控,否则重复以上过程。
图4-1 处理节拍
圆弧插补
图4-4为第一象限逆圆,现分析其插补规律。
刀尖点位置不外乎3种情况:轮廓线外面(点A),轮廓线上(B点),轮廓线里面(点C)。显然,在点A处,为使刀尖点向轮廓圆弧靠拢,应-X向走一步;C点处,应+Y向走一步;至于B点,看来两个方向均可以,但考虑汇编编程时的方便,现规定往-X向走一步。
A(X,Y)点处有:X2+Y2>R2 X2+Y2-R2>0
B(X,Y)点处有:X2+Y2=R2 X2+Y2-R2=0
C(X,Y)点处有:X2+Y2<R2 X2+Y2-R2<0
原始的偏差计算公式为:F=X2+Y2-R2(X,Y为当前插补点动态坐标)。
图4-4 第一象限逆圆插补规律 图4-5 逐点比较法第一象限逆圆插补软件框图
显然,F<0时,须+Y向走一步;F≥0时,须-X向走一步。为方便汇编编程和提高计算速度,对偏差F的计算公式加以简化:
插补点位于A、B点时,走完下一步(-X):动态坐标变为(X=X-1,Y=Y),新偏差变为F=(X-1)2+Y2-R2=F-2X+1。
它比公式F=X2+Y2-R2计算要方便很多。
插补点位于C点时,走完下一步(+Y):动态坐标变为(X=X,Y=Y+1),新偏差变为F=X2+(Y+1)2-R2=F+2Y+1。
因此,
走完-X后:偏差计算公式为F=F-2X+1,动态坐标修正为X=X-1;
走完+Y后:偏差计算公式为F=F+2Y+1,动态坐标修正为Y=Y+1。
图4-5为逐点比较法第一象限逆圆插补软件框图。
逐点比较法圆弧插补汇编语言程序(MCS-8031)
根据该插补软件框图(参见
RP:MOV SP,#60H
MOV 4AH,#00H F单元清零
MOV 49H,#00H
MOV 48H,#01H X电动机初始化
MOV 47H,#02H Y电动机初始化
MOV DPTR,#0030H
MOV A,#03H XY电动机上电
MOVX @DPTR,A
CLR C 计算终判值
MOV A,52H 低位X、Xe相减,得a
SUBB A,4EH
MOV 54H,A 保存结果于终判值单元低位字节
MOV A,51H 高位X、Xe相减,得b
SUBB A,4DH
MOV 53H,A 保存结果于终判值单元高位字节
CLR C 低位Ye、Y相减,得c
MOV A,4CH
SUBB A,50H
MOV 20H,C 暂存Ye、Y低位相减产生的借位位
ADD A,54H 计算d=a+c,d为低位终判值
MOV 54H,A 保存d于终判值单元低位字节
MOV 21H,C 暂存d=a+c产生的进位位
MOV A,4BH
MOV C,20H 恢复Ye、Y低位相减产生的借位位
SUBB A,4FH 高位Ye、Y相减,得e
MOV C,21H 恢复d=a+c产生的进位位
ADDC A,53H 计算f=b+e,f为高位终判值
MOV 53H,A 保存f于终判值单元高位字节
RP2:ACALL DL0 延时子程序
MOV A,49H 取F高位字节
JB ACC.7,RP6 高位=1,F<0,去RP6
ACALL XMM 高位=0,F>0,X反转一步
CLR C 计算新偏差F=F-2X+1
MOV A,4AH 计算g=F-X低位
SUBB A,52H
XCH A,B g存入B寄存器
MOV A,49H 计算h=F-X高位
SUBB A,51H
XCH A,B 低位存A,高位存B。BA内容为F-X
CLR C 计算i=g-X=F-2X低位
SUBB A,52H
XCH A,B B内容为F-2X低位,A内容为F-X高位
SUBB A,51H A内容为F-2X高位
XCH A,B BA内容为F-2X
ADD A,#01H 计算F-2X+1
MOV 4AH,A 4A内容为F-2X+1低位
XCH A,B B内容为F-2X+1低位,A内容为F-2X高位
ADDC A,#00H 考虑F-2X+1的进位
MOV 49H,A 49H的内容为F-2X+1高位
CLR C 计算X=X-1
MOV A,52H 低位
SUBB A,#01H
MOV 52H,A
MOV A,51H 高位
SUBB A,#00H
MOV 51H,A
RP4:CLR C 终判值减1
MOV A,54H
SUBB A,#01H
MOV 54H,A
MOV A,53H
SUBB A,#00H
MOV 53H,A
ORL A,54H
JNZ RP2 插补没结束,转至RP2
LJMP 0000H
RP6:ACALL YMP Y电动机正转
MOV R6,#02H 此处“2”,为“F+2Y+1”的“2”
RP7:MOV A,4AH F+2Y+1
ADD A,50H
MOV 4AH,A
MOV A,49H
ADDC A,4FH
MOV 49H,A
DJNZ R6,RP7
MOV A,4AH
ADD A,#01H
MOV 4AH,A
MOV A,49H
ADDC A,#00H
MOV A,50H
ADD A,#01H
MOV 50H,A
MOV A,4FH
ADDC A,#00H
MOV 4FH,A
AJMP RP4
说明:1)数据存放格式同前;
2)各变量地址分配如下:47H-4EH,存放数据方式同直线,4FH50H-Y,51H52H-X,53H54H-终判值
逐点比较法插补原理
逐点比较法的基本原理是,在刀具按要求轨迹运动加工零件轮廓的过程中,不断比较刀具与被加工零件轮廓之间的相对位置,并根据比较结果决定下一步的进给方向,使刀具向减小偏差的方向进给(始终只有一个方向)。
一般地,逐点比较法插补过程有四个处理节拍,如图4-1:
(1)偏差判别。判别刀具当前位置相对于给定轮廓的偏差状况;
(2)坐标进给。根据偏差状况,控制相应坐标轴进给一步,使加工点向被加工轮廓靠拢;
(3)重新计算偏差。刀具进给一步后,坐标点位置发生了变化,应按偏差计算公式计算新位置的偏差值;
(4)终点判别。若已经插补到终点,则返回监控,否则重复以上过程。
图4-1 处理节拍 图4-2 第一象限直线插补规律
1.直线插补
图4-2为第一象限直线,其终点坐标为(Xe,Ye),现分析其插补规律。
刀尖点位置不外乎3种情况:轮廓线上方(点A),轮廓线上(B点),轮廓线下方(点C)。显然,在点A处,为使刀尖点向轮廓直线靠拢,应+X向走一步;C点处,应+Y向走一步;至于B点,看来两个方向均可以,但考虑汇编编程时的方便,现规定往+X向走一步。
A(X,Y)点处有:Y/X>Xe/Ye XeY-XYe > 0
B(X,Y)点处有:Y/X=Xe/Ye XeY-XYe = 0
C(X,Y)点处有:Y/X<Xe/Ye XeY-XYe < 0
F=XeY-XYe为原始的偏差计算公式(X,Y为当前插补点动态坐标),F称为偏差,每走一步到达新位置点,就要计算相应这个F值。
显然,F≥0时,须+X向走一步;F<0时,须+Y向走一步。为方便汇编编程和提高计算速度,现对偏差F的计算公式加以简化:
插补点位于A、B点时,走完下一步(+X):动态坐标变为(X=X+1,Y=Y),新偏差变为F=XeY-(X+1)Ye=XeY-XYe-Ye=F-Ye。这个公式比F=XeY-XYe计算要方便。
图4-3 逐点比较法第一象限直线插补软件框图
插补点位于C点时,走完下一步(+Y):动态坐标变为(X=X,Y=Y+1),新偏差变为F=Xe(Y+1)-XYe=XeY-XYe+Xe=F+Xe。
因此,
走完+X后:偏差计算公式为F=F-Ye;
走完+Y后:偏差计算公式为F=F+Xe。
图4-3为逐点比较法第一象限直线插补软件框图。
逐点比较法直线插补汇编语言程序(MCS-8031)
根据该插补软件框图(参见
LP:MOV SP,#60H 定义堆栈指针
MOV 4AH,#00H 偏差单元清零
MOV 49H,#00H
MOV 48H,#01H 初始化XY电动机
MOV 47H,#02H
MOV A,4EH 计算终点判别,Xe+Ye之低位
ADD A,4CH
MOV 50H,A
MOV A,4DH Xe+Ye之高位
ADDC A,4BH 低位相加,可能产生进位
MOV 4FH,A
MOV A,#03H XY电动机上电
MOV DPTR,#0030H
MOVX @DPTR,A
LP2:ACALL DL0 延时子程序
MOV A,49H 取偏差F的高8位
JB ACC.7,LP4 偏差F< 0,去LP4
ACALL XMP F>=0,调X电动机正转子程序
CLR C 计算新偏差F值,F=F-Ye
MOV A,4AH
SUBB A,4CH 可向高位字节借位
MOV 4AH,A
MOV A,49H
SUBB A,4BH
MOV 49H,A
LP3:CLR C 终判值减1
MOV A,50H
SUBB A,#01H 可向高位字节借位
MOV 50H,A
MOV A,4FH
SUBB A,#00H 考虑低位字节借位
MOV 4FH,A 终判值判零
ORL A,50H
JNZ LP2 终判值不为零,去LP2,否则插补结束
LJMP 0000H
LP4:ACALL YMP 调Y电动机正转子程序
MOV A,4AH 计算新偏差F值,F=F+Xe
ADD A,4EH
MOV 4AH,A
MOV A,49H
ADDC A,4DH
MOV 49H,A
SJMP LP3
XMP:MOV A,48H 取X电动机当前状态字
CLR C 移位法
RRC A
RRC A
RRC A
XMP2:CPL A
ANL A,#49H 屏蔽无关位
MOV 48H,A 保存X电动机状态字,作为下次转动的基准
ORL A,47H 保存Y电动机原状态不变
XMP4:MOV DPTR,#0030H
MOVX @DPTR,A
RET
XMM:MOV A,48H
CLR
RLC A
RLC A
RLC A
SJMP XMP2
YMP:MOV A,47H
CLR C
RRC A
RRC A
RRC A
YMP2:CPL A
ANL A,#92H
MOV 47H,A
ORL A,48H
SJMP XMP4
YMM:MOV A,47H
CLR C
RLC A
RLC A
RLC A
SJMP YMP2
说明:1)黑体字模块为软件环形分配器;
2)各变量地址分配如下:4FH50H-终判值,4DH4EH-Xe,4BH4CH-Ye,49H4AH-偏差值F,47H-Y电动机状态字,48H-X电动机状态字;以大地址格式(最低字节地址单元存放最高位数据)存放各种数据;
3)口地址0030H与XY三相步进电动机相线关系如下:
展开阅读全文