首页 百科知识 数控系统的插补原理

数控系统的插补原理

时间:2022-10-09 百科知识 版权反馈
【摘要】:数控系统的主要任务之一,是控制执行机构按预定的轨迹运动。所以现代数控机床都采用配备了CNC系统的软件插补数控系统。数据采样法用到以直流或交流伺服电机作为执行元件的闭环或半闭环数控系统中,插补结果输出的不是脉冲,而是数据。这时,数控系统所能达到的最大轨迹速度为10m/min以上,也就是说数据采样插补程序的运行时间已不再是限制轨迹速度的主要因素,其轨迹速度的上限将取决于圆弧弦线误差以及伺服系统的动态响应特性。

5.1 数控系统的插补原理

5.1.1 插补概述

数控系统的主要任务之一,是控制执行机构按预定的轨迹运动。一般情况是已知运动轨迹的起点坐标、终点坐标和轨迹的曲线方程,由数控系统实时地计算出各个中间点的坐标。也就是说需要“插入、补上”运动轨迹各个中间点的坐标,通常把这个过程称为“插补”,实际上插补是一个数据点密化的过程。当然,中间点的插入是根据一定的算法由数控系统软件或硬件自动完成的。

早期的插补功能是由数字逻辑电路完成的,完成插补计算的硬件电路称为插补器,它应用在硬件数控(NC)系统中。而在计算机数控系统(CNC)中,插补功能可完全由软件实现,也可由软、硬件结合来完成。硬件插补器速度快,但电路复杂,并且调整和修改都相当困难,缺乏柔性;软件插补方法虽然速度慢一些,但调整方便,而且现在计算机的处理速度越来越快,弥补了速度慢的缺陷。所以现代数控机床都采用配备了CNC系统的软件插补数控系统。

软件插补方法可分为基准脉冲插补和数据采样插补两类。

基准脉冲插补方法是模拟硬件插补的原理,它把每次插补运算产生的指令脉冲输出到伺服系统,以驱动工作台运动。每发出一个脉冲,工作台移动一个基本长度单位,即脉冲当量。输出脉冲的最大速度取决于执行一次运算所需的时间。该方法虽然插补程序比较简单,但进给速率受到一定的限制,所以用在进给速度不需要很高的数控系统或开环数控系统中。基准脉冲插补有多种方法,最常用的是逐点比较插补法和数字积分插补法等。

数据采样法用到以直流或交流伺服电机作为执行元件的闭环或半闭环数控系统中,插补结果输出的不是脉冲,而是数据。在这类数控系统中,每调用一次插补程序,就计算出坐标轴在每个插补周期中的位置增量,然后求得坐标轴相应的位置给定值,再与采样所获得的实际位置反馈值相比较,求得跟踪误差。位置伺服软件就根据当前的位置误差计算出进给坐标轴的速度给定值,并将其输出给驱动装置,然后通过电动机带动丝杠和工作台朝着减小误差的方向运动,以保证整个系统的加工精度。当数控系统采用数据采样插补方法时,由于插补频率较低(大约在50~125Hz,插补周期约为8~20ms),使用计算机较易管理和实现。一般情况下,要求插补程序的运行时间不大于计算机时间负荷的30%~40%,而在余下的时间内,计算机可以去完成数控加工程序编制、存储、收集运行状态数据、监视机床等其他数控功能。这时,数控系统所能达到的最大轨迹速度为10m/min以上,也就是说数据采样插补程序的运行时间已不再是限制轨迹速度的主要因素,其轨迹速度的上限将取决于圆弧弦线误差以及伺服系统的动态响应特性。

另外还有一种硬件和软件相结合的插补方法。把插补功能分别分配给软件和硬件插补器,前者完成粗插补,即把加工轨迹分为大的段,而硬件插补器完成精插补,进一步密化数据点,完成程序段的加工。该方法对计算机运算速度要求不高,并可余出更多的存储空间以存储零件程序,而且相应速度和分辨率都比较高。

下面我们通过介绍基准脉冲插补的逐点比较法,来进一步了解插补的含义。

5.1.2 逐点比较插补法

1.基本原理

逐点比较法的原理是,刀具在加工零件的运动过程中,每走一步都要将刀具的实际位置和被加工零件轮廓相比较,判断其偏差,并根据偏差结果决定下一步的进给方向,使刀具向减小误差的方向进给。如果加工点走到轮廓里面,那么下一步就要向轮廓外面走;如果加工点在轮廓外面,则下一步就要向轮廓里面走,以缩小误差,每走的一步是一个脉冲当量。通过这种方法可以获得一个非常接近于数控加工程序规定轮廓的轨迹,其最大的偏差不超过一个脉冲当量。逐点比较法插补过程中每进给一步都要经过四个节拍。

(1)偏差判别 判别刀具当前位置相对于规定轮廓的偏差情况,也就是通过偏差值的正负判断加工点是在规定轮廓的里面还是外面。

img148

图5-1-1 逐点比较法工作流程图

(2)坐标进给 根据偏差判别的结果,控制相应的坐标轴进给一步,使加工点向规定轮廓靠拢,缩小偏差。

(3)偏差计算 刀具进给一步后,到达新的加工点,计算新的加工点与规定轮廓之间新的偏差,作为下一步偏差判别的依据。

(4)终点判别 每走一步都要判断是不是到达终点,如果到达则停止插补循环,若没有到达则继续循环以上四个节拍,直到到达终点。

逐点比较法的工作流程如图5-1-1所示。

2.逐点比较法Ⅰ象限直线插补

基本原理:如图5-1-2所示第一象限直线OE,起点O(0,0),终点为E(Xe,Ye),还有一个动点为N(Xi,Yi),现假设动点N正好处于直线OE上,则有下式成立

img149

图5-1-2 Ⅰ象限动点与直线之间的关系

img150

假设动点处于OE的下方N',处,则直线ON'的斜率小于直线OE的斜率,从而有下式成立

img151

假设动点处于OE的上方N″处,则直线ON″的斜率大于直线OE的斜率,从而有下式成立

img152

由以上关系式可以看出,(XeYi-XiYe)的符号就反映了动点N与直线OE之间的偏离情况,为此取偏差函数为

img153

依此可总结出动点N(Xi,Yi)与设定直线之间的相对位置关系如下:

当F=0时,动点N(Xi,Yi)正好处在直线OE上;

当F>0时,动点N(Xi,Yi)落在直线OE的上方区域;

当F<0时,动点N(Xi,Yi)落在直线OE的下方区域。

以图5-1-3为例,设OE为要加工的直线轮廓,而动点N(Xi,Yi)对应切削刀具的位置。显然,刀具处于直线下方区域时(F<0),为了更靠拢直线轮廓,则要求刀具向(+Y)方向进给一步;当刀具处于直线上方区域时(F>0),为了更靠拢直线轮廓,则要求刀具向(+X)方向进给一步;当刀具正好处于直线上时(F=0),理论上既可以向(+X)方向进给一步,也可以向(+Y)进给一步,但一般情况下约定向(+ X)方向进给,从而将F>0和F=0两种情况归为一类(F≥0)。根据上述原则从原点O(0,0)开始,走一步,算一算,判别F的符号,再趋向直线进给,步步前进,直至终点E。这样,通过逐点比较的方法,控制刀具走出一条尽量接近零件轮廓直线的轨迹,如图5-1-3中折线所示。当每次进给的台阶(即脉冲当量)很小时,就可将这条折线近似当作直线来看待。显然,逼近程度的大小与脉冲当量的大小直接相关。

img154

图5-1-3 Ⅰ象限直线插补轨迹

由式(5-1-4)可以看出,每次计算偏差值F时,都要作乘法和减法运算,而这在使用硬件或汇编语言软件实现是不太方便的,还会增加运算时间。因此,为了简化计算,通常采用递推法,即每进给一步后新加工点的加工偏差值通过前一点的偏差递推算出。

现在假设第i次插补后,动点坐标为N(Xi,Yi),偏差函数为

Fi=XeYi-XiYe

若Fi≥0,则向(+X)方向进给一步,新的动点坐标值为

Xi+1=Xi+1,   Yi+1=Yi

因此新的偏差函数为

img155

同样,若Fi<0,则向(+Y)方向进给一步,新的动点坐标值为

Xi+1=Xi,  Yi+1=Yi+1

因此新的偏差函数为

Fi+1=XeYi+1-Xi+1Ye=XeYi-XiYe+Xe

所以     Fi+1=Fi+Xe    (5-1-6)

根据式(5-1-5)和(5-1-6)可以得出,采用递推算法后,消除了乘法运算,而且偏差函数F的计算只与终点坐标值Xe和Ye有关,并不涉及动点坐标Xi、Yi的值,新动点的偏差函数可由上一个动点的偏差函数值递推出来。算法非常简单,节省运算时间,易于实现。由于在开始加工时,一般采用人工方法将刀具移到加工起点(对刀),这时刀具正好处于直线上,当然也就没有偏差,所以递推开始时偏差函数的初始值为F0=0。

综上所述,Ⅰ象限内偏差函数与进给方向的对应关系如下:

当F≥0时,进给(+X)方向,新的偏差函数为Fi+1=Fi-Ye;

当F<0时,进给(-Y)方向,新的偏差函数为Fi+1=Fi+Xe

由前面的逐点比较法工作流程知道,在插补计算、进给的同时还要进行终点判别,若已经到达终点,就不再进行插补运算,并发出停机或转换新程序段的信号,否则返回继续循环插补。具体讲,终点判别有三种方法。

第一种方法称为总步长法。首先求出被插补直线在两个坐标轴方向上应走的总步数

Σ=|Xe|+|Ye|

然后每插补一次,不论哪个轴进给一步,均从总步数中减去1,这样当总步数减到零时即表示已到达终点。

第二种方法称为投影法。既首先求出被插补直线终点坐标值中较大的一个作为计数值

Σ=max(|Xe|,|Ye|)

然后在插补过程中每当终点坐标绝对值较大的那个轴进给时就从计数单元中减去1,这样当减到零时表示已到达终点。

第三种方法称为终点坐标法。即取被插补直线终点坐标分别作为计数单元

Σ1=|Xe|,Σ2=|Ye|

然后在插补过程中,如果进给了(+X)方向,则使Σ1减去1,如果进给了(+Y)方向,则使Σ2减去1,这样当Σ1和Σ2均减到零时,才表示到达终点位置。

在上述推导和叙述过程中,均假设所有坐标值的单位是脉冲当量,这样坐标值均是整数,每次发出一个单位脉冲,也就是进给一个脉冲当量的距离。

例5-1 现欲加工Ⅰ象限直线OE,设终点坐标为E(Xe,Ye)=E(3,5),试用逐点比较法进行插补。

解 总步数Σ0=3+5=8,开始时刀具处于直线起点原点,F0=0,则插补运算过程如表5-1-1所示,插补轨迹如图5-1-4所示。

表5-1-1 Ⅰ象限直线插补运算过程

img156

对于逐点比较法插补,由于假设所有坐标值的单位是脉冲当量,起点和终点处刀具均应落在零件轮廓上,也就是说在插补开始和结束时偏差值均为零,即F=0,否则,说明插补过程中出现了错误。

img157

图5-1-4 逐点比较法直线插补实例

img158

图5-1-5 I象限逆圆弧与动点间的关系

3.逐点比较法Ⅰ象限圆弧插补

基本原理:在圆弧加工过程中,要描述刀具位置与被加工圆弧之间的相对关系,可用动点到圆心的距离大小来反映。

如图5-1-5所示,假设被加工的零件轮廓为Ⅰ象限逆圆弧SE,刀具在动点N(Xi,Yi)处,圆心为0(0,0),半径为R,则通过比较该动点到圆心的距离与圆弧半径之间的大小就可反映出动点与圆弧之间的相对位置关系,即当动点N(Xi,Yi)正好落在圆弧SE上时,则有下式成立:

Xi2+Yi2=Xe2+Ye2=R2

当动点N落在圆弧SE外侧(如在N'处)时,则有下式成立:

Xi2+Yi2>Xe2+Ye2=R2

当动点N落在圆弧SE内侧(如在N″处)时,则有下式成立:

Xi2+Yi2<Xe2+Ye2=R2

为此,现取圆弧插补时的偏差函数表达式为

F=Xi2+Yi2-R2      (5-1-7)

进一步可以从图中直观看出,当动点处于圆外时,为了减小加工误差,则应向圆内进给,即走(-X)轴方向一步。当动点落在圆弧内部时,为了缩小加工误差,则应向圆外进给,即走(+Y)轴方向一步。当动点正好落在圆弧上时,为了使加工进给继续下去,(+Y)和(-X)两个方向均可以进给,但一般情况下约定向(-X)轴方向进给。

综上所述,可总结出逐点比较法I象限逆圆弧插补的规则如下:

当F>0时,即F=Xi2+Yi2-R2>0,动点在圆外,则向(-X)轴进给一步;

当F=0时,即F=Xi2+Yi2-R2=0,动点正好在圆上,则向(-X)轴进给一步;

当F<0时,即F=Xi2+Yi2-R2<0,动点在圆内,则向(+Y)轴进给一步。

在式(5-1-7)中,要求出偏差F的值,要求进行平方运算,这样在用硬件或汇编语言实现时不太方便,为简化计算,进一步推导其相应的递推形式表达式。

现假设第i次插补后,动点坐标为N(Xi,Yi),对应偏差函数为

Fi=Xi2+Yi2-R2

若Fi≥0,则向(-X)轴方向进给一步,获得新的动点坐标值为

Xi+1=Xi-1, Yi+1=Yi

因此,新的偏差函数为

Fi+1=Xi+12+Yi+12-R2=(Xi-1)2+Yi2-R2

所以     Fi+1=Fi-2Xi+1      (5-1-8)

同理,若Fi<0,则向(+Y)轴方向进给一步,获得新的动点坐标值为

Xi+1=Xi,Yi+1=Yi+1

因此,可求得新的偏差函数为

Fi+1=Xi+12+Yi+12-R2=Xi2+(Yi+1)2-R2

所以      Fi+1=Fi+2Yi+1     (5-1-9)

通过式5-1-8和式5-1-9可以看出如下两个特点:第一是递推形式的偏差计算公式中除加/减运算外,只有乘2运算,而乘2可等效成二进制数左移一位,显然比原来平方运算简单得多。第二是进给后新的偏差函数值除与前一点的偏差值有关外,还与动点坐标N(Xi,Yi)有关(这与直线插补不相同),而动点坐标值随着插补的进行是变化的,所以,在插补的同时还必须修正新的动点坐标,以便为下一步的偏差计算做好准备。至此,可总结出I象限逆圆弧插补的规则和计算公式如下:

当Fi≥0时,进给(-X)方向,新偏差值为Fi+1=Fi-2Xi+1,动点坐标为Xi+1=Xi-1,Yi+1=Yi;

当Fi<0时,进给(+Y)方向,新偏差值为Fi+1=Fi+2Yi+1,动点坐标为Xi+1=Xi,Yi+1=Yi+1。

和直线插补一样,插补过程中还要进行终点判别。对于圆弧仅在一个象限内的情况,则仍然可借用直线终点判别的三种方法,只是公式稍有不同。

Σ=|Xe-Xs|+|Ye-Ys|

Σ=max(|Xe-Xs|,|Ye-Ys|)

Σ1=|Xe-Xs|,Σ2=|Ye-Ys|

式中:(XS,YS)——被插补圆弧起点坐标;

(Xe,Ye)——被插补圆弧终点坐标。

例5-2 现欲加工Ⅰ象限逆圆SE,如图5-1-6所示,起点S(Xs,Ys)=S(4,3),终点E(Xe,Ye)=E(0,5),试用逐点比较法进行插补。

解 总步数Σ=|Xe-Xs|+|Ye-Ys|=6

开始时刀具处于圆弧起点S(4,3)处,F0=0

根据上述插补方法可以获得如表5-1-2所示插补过程,对应的插补轨迹如图5-1-6中折线所示。

表5-1-2 Ⅰ象限逆圆插补运算过程

img159

img160

图5-1-6 I象限逆圆插补实例

4.插补象限和圆弧走向处理

前面所讨论的关于逐点比较法直线和圆弧插补的原理,均假设针对Ⅰ象限直线和Ⅰ象限逆圆的这种特定情况进行的。事实上,任何机床都必须具备处理不同象限、不同走向轮廓曲线的能力,而这时其插补计算公式和脉冲进给方向都是不同的。为了方便处理和实现插补,要尽量寻找其间的共同规律,以利于优化程序设计,提高插补质量。现将Ⅰ,Ⅱ,Ⅲ,Ⅳ象限内的直线分别记为L1,L2,L3,L4,而对于圆弧用“S”表示顺时针圆弧,“N”表示逆时针圆弧。结合象限的区别可获得8种圆弧形式,其中4个象限顺圆可表示为SR1,SR2,SR3,SR4,4个象限逆圆可表示为NR1,NR2,NR3,NR4。

(1)四个象限直线插补现假设有Ⅱ象限直线如图5-1-7所示,起点在原点O(0,0)终点为A(-Xe,+Ye),则依照前面介绍的方法,很容易推得对应的插补计算法和进给方向如下:

img161

图5-1-7 Ⅱ象限直线插补

img162

图5-1-8 四个象限直线插补进给方向

当Fi≥0时,进给(-ΔX)方向,新的偏差函数为Fi+1=Fi-Ye;

当Fi<0时,进给(+ΔY)方向,新的偏差函数为Fi+1=Fi+Xe

表5-1-3 四个象限直线插补进给方向和偏差计算

img163

与前面进行比较后发现,当被插补直线处于不同象限时,其计算公式及处理过程完全一样,仅仅是进给方向不同而已。进一步可总结出L1,L2,L3,L4的进给方向如图5-1-8和表5-1-3所示。

(2)四个象限中圆弧插补如图5-1-9为Ⅰ象限顺圆,圆弧SE起点为S(Xs,Ys),终点为E(Xe,Ye),当某一时刻动点N(Xi,Yi)处在圆弧外侧,即Fi≥0,显然应该向圆内走才能减小误差,即进给一步(-ΔY);若动点N在圆弧内侧,即Fi<0,则应向圆外进给一步(+ΔX)。由此可推得第一象限顺圆插补的偏差函数为:

当Fi≥0时,进给一步(-ΔY),则新动点的偏差函数为

Fi+1=Xi+12+Yi+12-R2=Xi2+(Yi-1)2-R2

所以    Fi+1=Fi-2Yi+1     (5-1-10)

当Fi<0时,进给一步(+ΔX),则新动点的偏差函数为

Fi+1=Xi+12+Yi+12-R2=(Xi+1)2+Yi2-R2

所以    Fi+1=Fi+2Xi+1    (5-1-11)

比较式(5-1-10)、式(5-1-11)与式(5-1-8)、式(5-1-9)可以看出有两点不同,其一是当Fi≥0和Fi<0时对应的进给方向不同;其二是插补计算公式中动点坐标的修正也不同。

同理还可以推导出其余6种圆弧的插补公式,现将其进给情况汇总在图5-1-10和表5-1-4中。

img164

图5-1-9 Ⅰ象限顺圆逐点比较法插补示意图

img165

图5-1-10 四象限圆弧插补进给方向和偏差计算

表5-1-4 四个象限圆弧插补进给方向和偏差计算

img166

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈