经过译码后得到的数据,还不能直接用于插补控制,要通过半径补偿计算,将编程轮廓数据转换成刀具中心轨迹的数据才能用于插补。刀具补偿分为刀具位置补偿和刀具半径补偿。
1.刀具位置补偿
当采用不同尺寸的刀具加工同一轮廓尺寸的零件,或同一名义尺寸的刀具因换刀重调、磨损引起尺寸变化时,为了编程方便和不改变已制备好的程序,利用数控系统的刀具位置补偿功能,只需将刀具尺寸变化值输入数控系统,数控系统就可以自动地对刀具尺寸变化进行补偿。
如图3-24所示,车床的四方旋转刀架装有不同尺寸的刀具。设图示刀架的中心位置P为各刀具的换刀点,并以1号刀具的刀尖B点为所有刀具的编程起点。当1号刀具从B点运动到A点时其增量值为
UBA=xA-x1
WBA=zA-z1
当换2号刀具加工时,2号刀具的刀尖在C点位置,要想运用A、B两点的坐标值来实现从C点到A点的运动,就必须知道B点和C点的坐标差值,利用这个差值对B到A的位移量进行修正,就能实现从C到A的运动。为此,将B点(作为基准刀尖位置)对C点的位置差值用以C为原点的直角坐标系I、K来表示,如图3-24所示。
当从C到A时
UCA=(xA-x1)+IΔ
WCA=(zA-z1)+KΔ
式中IΔ、KΔ分别为X轴、Z轴的刀具补偿量,可由键盘输入数控系统。由上式可知,从C到A的增量值等于从B到A的增量值加上刀具补偿值。
当2号刀具加工结束时,刀架中心位置必须回到P点,也就是2号刀的刀尖必须从A点回到C点,但程序是以回到B点来编制,只给出了A到B的增量,因此,也必须用刀具补偿值来修正
UAC=(x1-xA)-IΔ
WAC=(z1-zA)-KΔ
从以上分析可以看出,数控系统进行刀具位置补偿,就是用刀具补偿值对刀具补偿建立程序段的增量值进行加修正,对刀具补偿撤消段的增量值进行减修正。
2.刀具半径补偿
在数控机床上用圆头刀具或铣刀加工零件时,加工程序的编制可以有两种方法,一种是按零件轮廓编程,另一种是按刀具中心(圆心)编程。
图3-24 刀具位置补偿示意图
按刀具中心轨迹编程需要求出零件轮廓的等距线,需做大量数学计算,编程工作量大,并且,当零件材料、工艺变化或刀具磨损而需要换刀时,加工程序需要重新编制。为了避免这种麻烦,通常按零件轮廓编程,由数控系统的刀具半径补偿功能根据刀具半径自动计算刀具中心轨迹。刀具半径可用键盘输入数控系统。
数控铣床通常都具有刀具半径补偿功能。数控车床的刀具有时可以认为是理想的尖刀,零件轮廓与刀尖运动轨迹一致,所以直接按零件轮廓编程而不用刀具半径补偿功能。但实际上车刀的刀尖也不是理想的尖点,它通常有一个半径很小的圆头,因此,若不用半径补偿功能,在车削圆弧或斜线时就会产生误差。
刀具补偿不是由编程人员完成的。编程人员在程序中指明何处进行刀具半径补偿,指明是进行左刀具补偿还是右刀具补偿,并指定刀具半径。刀具半径补偿的具体工作由数控系统中的刀具半径补偿功能来完成。根据ISO规定,当刀具中心轨迹在程序规定的前进方向的右边时称为右刀具补偿,用G42表示;反之称为左刀具补偿,用G41表示。
(1)刀具半径补偿的执行过程 该过程分为刀具补偿的建立、刀具补偿进行和刀具补偿撤消三个步骤。
1)刀具补偿的建立。刀具由起刀点接近工件,因为建立刀具补偿,所以本段程序执行后,刀具中心轨迹的终点不在下一段程序指定轮廓起点,而是在法线方向上偏移一个刀具半径的距离。偏移的左右方向取决于G41还是G42,如图3-25所示。
图3-25 刀具补偿的建立与撤消
2)刀具补偿进行。一旦建立刀具补偿,则刀具补偿状态就一直维持到刀具补偿撤消。在刀具补偿进行期间,刀具中心轨迹始终偏离程序轨迹一个刀具半径的距离。
3)刀具补偿撤消。刀具撤离工件,回到起刀点。这时,应按编程的轨迹和上段程序末刀具中心位置,计算出运动轨迹,使刀具中心回到起刀点。刀具补偿撤消用G40指令。
(2)刀具补偿仅在指定的二维坐标平面内进行 平面的指定由代码G17(X—Y平面),G18(Y—Z平面),G19(Z—X平面)表示。刀具半径值通过代码H来指定。
1)B功能刀具半径补偿。B功能刀具半径补偿为基本的刀具半径补偿它仅根据本段程序的轮廓尺寸进行刀具半径补偿,计算刀具中心的运动轨迹。一般数控系统的轮廓控制通常仅限于直线与圆弧。对于直线而言,刀具补偿后的刀具中心轨迹为平行于轮廓直线的一条直线。因此,只要计算出刀具中心轨迹的起点和终点坐标,刀具中心轨迹即可确定。对于圆弧而言,刀具补偿后的刀具中心轨迹为与指定轮廓圆弧同心的一段圆弧,因此,圆弧的刀具半径补偿,需要计算出刀具中心轨迹圆弧的起点、终点和半径。B功能刀具半径补偿要求编程轮廓的过渡为圆角过渡。如图3-26所示,所谓圆角过渡是指轮廓线之间以圆弧连接,并且连接处轮廓线必须相切。切削内角时,过渡圆弧的半径应大于刀具半径。编程轮廓为圆角过渡,则前一段程序刀具中心轨迹终点即为后一段程序刀具中心的起点,系统不需要计算段与段之间刀具轨迹交点。
图3-26 刀具补偿圆角过渡
直线刀具半径补偿计算如图3-27所示。
设要加工的直线为OA,其起点在坐标原点O,终点为A(x,y)。因为是圆角过渡,上一段程序的刀具中心轨迹终点O(x0,y0)为本段程序刀具中心的起点,OO′为轮廓直线OA的垂线,且O′点与OA的距离为刀具半径r。A′(x′,y′)为刀具中心轨迹直线的终点,AA′也必然垂直于OA,A′点与OA的距离仍为刀具半径r。A′点同时也为下一段程序刀具中心轨迹的起点。
由于起点为已知,即由上段的终点决定,O′A′与OA斜率和长度都相同,所以从O′点到A′点的坐标增量与从O点到A点的坐标增量相等,即
x=x′-x0
y=y′-y0
因为y0、x0为已知,本段的增量x、y由本段轮廓直线确定,为已知,所以
x′=x+x0
y′=y+y0
即刀具中心轨迹的终点也可求得。圆弧的刀具半径补偿计算如图3-28所示。设被加工圆弧的圆心在坐标原点,
圆弧半径为R,圆弧起点为A(x0,y0),终点为B(xe,ye),刀具半径为r。设A′(x0′,y0′)为前一段程序刀具中心轨迹的终点,且坐标为已知。因为是
圆角过渡,A′点一定在半径OA或其延长线上,与A点的距离为r。A′点即为本段程序刀具中心轨迹的起点。圆弧刀具半径补偿计算的目的,是要计算刀具中心轨迹的终点B′(xe′,ye′)和半径R′。因为B′在半径OB或其延长线上,三角形OBP与OB′P′,相似。根据相似三角形原理,有
即
图3-27 直线刀具半径补偿计算
式中 R、r、xe、ye都为已知,从而可求得xe′、ye′。以上是刀具偏向圆外侧的情况。(www.xing528.com)
如刀具偏向圆的内侧,则有
图3-28 圆弧的刀具半径补偿计算
图3-29 B功能刀具补偿的建立与撤消
刀具的偏移方向由圆弧的顺、逆以及刀具补偿方向(G41或G42)所确定。
如图3-29所示,B功能刀具半径补偿建立时,刀具必须以轮廓的法线方向接近工件,在接近工件的过程中,缩短一个刀具半径值的距离即建立起刀具补偿。撤消刀具补偿时刀具也沿工件轮廓的法线方向离开工件,在离开工件的过程中缩短一个刀具半径的距离,回到起刀点。
2)C功能刀具半径补偿。通过以上介绍可以看出,B功能刀具半径补偿只根据本段程序进行刀具补偿计算,不能解决程序段之间的过渡问题,所以要求编程人员将工件轮廓处理成圆角过渡,即人为地加上过渡圆弧。这样处理会带来两个弊端,一是编程复杂,二是工件尖角处工艺性不好。
随着计算机技术的发展,计算机的计算速度和存储功能不断提高,数控系统计算相邻两段程序刀具中心轨迹交点已不成问题。所以,现代CNC数控机床几乎都采用C功能刀具半径补偿,C刀具补偿自动处理两个程序段刀具中心轨迹的转接,编程人员可完全按工件轮廓编程。
C刀具补偿根据前后两段程序及刀具补偿的左右情况,首先判断是缩短型转接、伸长型转接或是插入型转接。图3-30为G41直线与直线转接的情况。图3-30a和b为缩短型转接,图3-30c和e为插入型转接,图3-30d为伸长型转接。对于缩短型转接,需要算出前后两段程序刀具中心轨迹的交点。插入型转接可插入一段直线,如图3-30c所示;也可插入一段圆弧,如图3-30e所示。插入直线段的转接情况,要计算出插入段直线的起点和终点。插入圆弧的计算要简单一些,与B刀具补偿有些相似,只要插入一段圆心在轮廓交点,半径为刀具半径的圆弧就行了。插入圆弧的方式虽计算较简单,但在插补过渡圆弧时刀具始终在轮廓交点处切削,尖点处的工艺性不如插入直线的方式好。图3-31为G42直线与直线转接情况。
表3-14列出了直线与直线转接形式的判别条件。
表3-14 直线与直线转接形式的判别条件
注:1表示是,0表示否。
图3-30 G41直线与直线转接形式
a)、b)缩短型转 c)、e)插入型转接 d)伸长型转接
图3-31 G42直线与直线转接形式
a)伸长型转接 b)、e)插入型转接 c)、d)缩短型转接
圆弧和直线、圆弧和圆弧转接的刀具补偿也分为缩短型、伸长型和插入型三种转接情况来处理。图3-32为G41圆弧转接情况。圆弧转接类型的判别可以用直线转接的方法,只需将圆弧交点的切线方向作为判断条件中的直线方向即可。
图3-32 G41圆弧转接情况
a)、b)等效于图3-30a、b c)等效于图3-30c d)等效于图3-30d
直线与直线转接类型判别流程图略。
①C功能刀具半径补偿的工作过程。C功能刀具半径补偿的计算比较复杂,一般可用解联立方程组的方法或用平面几何方法。离线计算常采用联立方程的方法。如在加工过程中进行刀具半径补偿计算,则常用平面几何的方法。为了便于交点计算以及对各种编程情况进行分析,C刀具补偿几何算法将所有的编程轨迹、计算中的各种线段都作为矢量看待。C刀具补偿程序主要计算转接矢量,所谓转接矢量主要指刀具半径矢量(如图3-30a中的AB和AD)和前后程序段的轮廓交点与刀具中心轨迹交点的连接线矢量(如图3-30b中的AC和AC′)。
若C刀具补偿在加工过程中进行,必须在插补和控制间隙进行刀具补偿计算,所以一般需要流水作业。如图3-33所示,通常要开辟四个内存缓冲区来存放流水作业中加工的几段程序的信息。这四个缓冲区分别为缓冲寄存器区BS,刀具补偿缓冲区CS,工作寄存器区AS和输出寄存器区OS。
系统启动后,第一段程序先被读入BS,在BS中算得的编程轨迹被送到CS暂存后,又将第二段程序读入BS,算出第二段编程轨迹。接下来对第一、第二段程序编程轨迹进行转接方式判别,根据判别结果对CS中的第一段程序进行修正。然后顺序地将修正后的第一段刀具中心轨迹由CS送AS,第二段轨迹由BS送CS。随后将AS中的数据送OS中去插补运算,插补结果送伺服系统去执行。当第一段刀具中心轨迹开始执行后,利用插补和控制的间隙,又读入第三段程序到BS,根据BS、CS中的第二、第三段编程轨迹的转接情况,对CS中的轨迹进行修正。插补一段,刀具补偿计算一段,读入一段,如此流水作业直到程序结束。
图3-33 C刀具补偿计算流水作业
在具体实现时,为了便于交点的计算以及对各种编程情况进行综合分析,从中找出规律,必须将C功能刀具补偿方法所有的编程输入轨迹都当做矢量看待。
显然直线本身就是一个矢量。而圆弧在这里意味着要将起点、终点的边界及起点到终点的弦长都看作矢量,零件刀具半径也作为矢量看待。所谓刀具半径矢量,是指在加工过程中,始终垂直于编程轨迹,大小等于刀具半径值、方向指向刀具中心的一个矢量。在直线加工时,刀具半径矢量始终垂直于刀具移动方向。在圆弧加工时,刀具半径矢量始终垂直于编程圆弧的瞬时切点的切线,它的方向一直是在改变的。
②C功能刀具半径补偿的实例。图3-34为C刀具补偿的实例。数控系统完成从O点到H点的编程轨迹的加工步骤如下:
第一步,读入OA程序段,计算出矢量OA。因是刀具补偿建立段,所以继续读下一段。
第二步,读入AA′段。经判断是插入型转接,计算出矢量,Ag,Af,,AA′。因上一段是刀具补偿建立段,所以上段应走Oe,。
第三步,读入A′F段。由于也是插入型转接,因此,计算出矢量、A′i、A′h、A′F。走ef,。
第四步,继续走fg,fg=Ag-Af。
第五步,走gh,gh=AA′-Ag+A′h。
第六步,读入FG段,经转接类型判别为缩短型,所以仅计算、Fj、FG。继续走hi,hi=A′i-A′h。
第七步,走ij,ij=A′F-A′i+Fj。
第八步,读入GH段(假定有刀具补偿撤消指令G40)。经判断为伸长型转换,所以尽管要撤消刀具补偿,仍需计算、GH、、Gk。继续走jk。jk=FG-Fj+Gk。
第九步,由于上段是刀具补偿撤消,所以要作特殊处理,直接命令走kl,kl=
第十步,最后走lH,。
加工结束。
图3-34 C刀具补偿实例
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。