·DDA直线插补原理
|
设我们要对XY面上的直线进行脉冲分配,直线起点为坐标原点O,终点为 ,如图1-1所示。 |
图1-1
假定 和 分别表示动点在 X和Y方向的移动速度,则在向上的移动距离微小增量 和 |
ΔX= ΔT |
ΔY= ΔT |
对直线来说, , 则下式成立:

式中"K"为比例系数;
在ΔT时间内,X,Y位移增量的参数方程为:
ΔX= ΔT=K ΔT
ΔY= ΔT=K ΔT
动点从原点走向终点的过程,可以看作是各坐标每经过一个单位时间间隔ΔT分别以增量K 和K 同时累加的结果.经过m次累加后,X和Y分别都到达终点 ,即下式成立.

则,mk=1,m=1/k
上式表明,比例系数K和累加次数M互为倒数.因为M必须是整数,所以KY一定是小数。在选取K时主要考虑每次增量ΔX,ΔY
不大于1,以保证坐标轴上每次分配仅给脉冲不超过一个单位步距,即:

一般情况下,若假定寄存器的位数是n,则 , 的最大允许寄存器容量为 (各位全是1),若取

则:

显然,由上式决定了, 和 是小于1的,这样,不仅决定了系数 ,而且保证了,ΔX,ΔY小于1的条件。因此,刀具从原点到达终点的累加次数M就有

当 时,对二进制数来说, 与 的差别只在于小数点的位置不同。将 的小数点左移动n即为 。因此在n位的内存中存放 ( 为整数)和存放 的数字是相同的,只是认为后者的小数点出现在最高位数n的前面。
当用软件来实现数字积分法直线插补时,只要在内存中设定几个单元,分别用于存放 及其累加值 和 及其累加值 。将 和 赋一初始值,在每次插补循环过程中,进行以下求和运算:

将运算结果的溢出脉冲ΔX,ΔY用来控制机床进给,就可走出所需的直线轨迹。
综上所述,可以得出以下结论:
数字积分法插补器的关键部件是累加器和被积函数寄存器,每一个坐标方向就需要一个累加器和一个被积函数寄存器。一般情况下,插补
开始前,累加器清零,被积函数寄存器分别寄存 和 ;插补开始后,每来一个累加脉冲Δt,被积函数寄存器里的内容在相应的累加器中相加一次,相加后的溢出作为驱动相应坐标轴的进给脉冲ΔX,ΔY,而余数仍寄存在累加器中;当脉冲源发出的累加脉冲数m恰好等于被积函数寄存器的内容 时,溢出的脉冲数等于以脉冲当量为最小单位的终点坐标,刀具运行到终点。
|
|