2024年10月24日发(作者:植嘉泽)
加工编程
随着数控加工技术的普及,技术市场上对NC编程人员的需求量也呈现出 快速增长的势头。
从技术特点上看,NC编程比三维造型更程式化,即它的实现 过程相对来说更模式化一些。
然而,要想成为一个优秀的NC编程人员也并非一件易事。高水平的NC程 序员应当具备以
下的条件:
(1)掌握一定的基础知识,包括数控机床基本结构、 NC加工基本原理、机械加
工工艺及必要的CAD基础等;
(2)全面地理解和掌握 NC编程的基本过程和关键技术。
(3)熟练运用一种CAD/CAM软件;
(4)有丰 富的实际加工经验。
有时, 还需要掌握一些相关学科的知识和经验 (如模具等)。 数控编程种类较多,如数控
铣、车、钻等。由于其中以三坐标数控铣最为 常用,因此将予以重点介绍。在以后的文章
中,如无特别说明则NC编程均指对 三坐标数控铣加工的编程。 应当指出的是,NC编程是
一门经验性很强的技术,仅靠书面的学习是远 远不够的,更重要的是在实践中不断总结和
提高。 本文主要介绍NC编程的一般技术要求、操作过程和技术要点。
2 NC程序的质量标准 程序的质量标准
我们认为,判别一个NC程序员水平的依据主要有以下几条:
(1) NC程序的质量;
(2) NC编程的工作效率;
(3) NC编程的可靠性和规范化程度(包括工艺规划、数据文件管理、 保存和交接的规范
化程度等)。
其中,NC程序的质量是衡量NC程序员水平的关键指标,其判定标准又可归 纳为: (1)
完备性:即不存在加工残留区域。 (2)误差控制:包括插补误差控制、残余高度(表面粗
糙度)控制等。 (3)加工效率:即在保证加工精度的前提下加工程序的执行时间。 (4)
安全性:指程序对可能出现的让刀、漏刀、撞刀及过切等不良现象的 防范措施和效果。 (5)
工艺性:包括进退刀设置、刀具选择、加工工艺规划(如加工流程及 余量分配等)、切削方
式(刀轨形式选择)、接刀痕迹控制以及其它
各种工艺参数(如进给速度、主轴转速、切削方向、切削深度等)的 设置等。 (6)其它:
如对机床及刀具的损耗程度、程序的规范化程度等。
1
不管采用什么CAD/CAM软件,
NC编程的基本过程及内容大同小异。可由 图1表示:
C AD 造型 加工对象设置 加工工艺分析和规划 刀具设置 参数设置 加工工艺参数设置 刀
轨计算 切削方式设置 仿真校验
后处理
图1 CAD造型是NC编程的前提和基础,NC编程人员也往往需要掌握一定的三 维造型技术,
如在模具加工中构造分型面等。 加工工艺分析和规划包括:(1)加工工序安排,即从粗加
工到精加工的 流程及加工余量分配;(2)加工分区规划,即对同一产品分区域进行加工的
工 艺规划;(3)对加工方式的规划,如刀具选择、切削方式(刀轨形式)选择等。 工艺分
析在原则上决定了NC程序的质量。 参数设置可视为对工艺分析和规划的具体实施,它构成
了利用CAD/CAM 软件进行NC编程的主要操作内容,直接影响NC程序的生成质量。参数设
置的内 容较多, 其中加工对象设置是指用户通过交互手段指定被加工的几何体或其中的
加工分区、毛坯、避让区域等。刀具设置是针对每一个加工工序设置相应的刀具 参数。加
工工艺参数设置包括对进退刀位置及方式、切深(切削深度)、行间距、 加工余量、安全高
度、进给速度及主轴转速等。切削方式设置用于指定刀轨的类 型及相关参数(包括切削方
向)。 在完成参数设置后, 即可将设置结果提交CAD/CAM系统进行刀轨的计算。 为确保程
序的安全性,必须对生成的刀轨进行仿真校验。校验的方式可采 用对刀轨轨迹进行逐行(层)
观察,或进行仿真加工直接在计算机屏幕上观察加 工效果。
后处理实际上是一个文本编辑处理过程,其作用是将计算出的刀轨(刀位 运动轨迹)以规
定的标准格式转化为NC代码并输出保存。
4 NC编程的技术要点 编程的技术要点
2
在NC编程的过程中,难度较大且对加工质量有重要影响的技术要点有: (1)残余高度的
控制。由于现有的CAD/CAM软件对残余高度缺乏自动控 制手段,需要程序员根据加工对象
的具体情况进行控制(见上期《曲面数控加工 编程中的残余高度控制》)。 (2)进给速度、
切深、主轴转速等参数的设置与加工材料特性、机床特 性、刀具特性等诸多因素相关,对
程序员的加工经验要求较高。 (3)切削方式及进退刀方式对加工效果有较大影响,且设置
灵活多样, 是需要重点掌握的另一技术要点。 为保证程序的质量和可靠性,在编程工作中
应注意以下几点: (1)要保持严谨细致的工作作风,对每个设置参数都应反复确认,刀轨
计算完成后必须进行仿真校验; (2)NC编程操作应规范化模式化。即根据企业的特定条
件制定出NC编 程的技术规程,将各操作环节中具有共性的部分(如加工工艺、刀具等)模
式化 规范化,可有效提高工作效率和可靠性。 (3)对重要的加工程序应进行试切检验
2.插补原理
概念引出:
在‘画图板’下绘制垂直、水平、45°、一般角度的直线,圆弧。找同学写出其加工代
码。并让其观察各直线的区别。存在差别的原因就是插补所致,引出本节题目―――插补。
显示器显示原理与步进电机插补原理同出一辙。
插补的地位:
CNC装置的工作流程:
数
输
入
输
出
处
理
控
制
诊
断
程
序
输
入
译
码
据
处
理
插
补
位
置
控
制
显
示
插补是加工程序与电机控制之间的纽带。
3.2.1 插补概述
1、插补定义
用户在零件加工程序中,一般仅提供描述该线形所必须的相关参数,如对直线,提供其
起点和终点坐标;对圆弧,提供起终点坐标、圆心坐标及顺逆圆的信息。而这些信息不能满
足控制机床的执行部件运动(步进电机、交直流伺服电机)的要求。因此,为了满足按执行
部件运动的要求来实现轨迹控制必须在已知的信息点之间实时计算出满足线形和进给速度
要求的若干中间点。这就是数控系统的插补概念。可对插补概念作如下定义:是指在轮廓控
制系统中,根据给定的进给速度和轮廓线形的要求,在已知数据点之间插入中间点的方法,
这种方法称为插补方法。每种方法又可能用不同的计算方法来实现,这种具体的计算方法称
之为插补算法。插补的实质就是数据点的密化。
由插补的定义可以看出,在轮廓控制系统中,插补功能是最重要的功能,是轮廓控制系
3
图1 CNC装置的工作流程
统的本质特征。插补算法的稳定性和算法精度将直接影响到CNC系统的性能指标。所以为使
高级数控系统能发挥其功能,不论是在国外还是国内,精度高、速度快的新的插补算法(软
件)一直是科研人员努力突破的难点,也是各数控公司竭力保密的技术核心。像西门子、Fanuc
数控系统,其许多功能都是对用户开放的,但其插补软件却从不对用户开放。
2、插补分类
插补的形式很多,按其插补工作由硬件电路还是软件程序完成,可将其分为硬件插补和
软件插补。软件插补的结构简单(CNC装置的微处理器和程序),灵活易变。现代数控系统
都采用软件插补器。完全硬件的插补已逐渐被淘汰,只有在特殊的应用场合和作为软件、硬
件结合插补时的第二级插补使用;从产生的数学模型来分,有一次(直线)插补、二次(圆、
抛物线等)插补及高次曲线插补等。大多数数控机床的数控装置都具有直线插补和圆弧插补。
根据插补所采用的原理和计算方法的不同,可有许多插补方法。目前应用的插补方法分为两
类:
(一) 基准脉冲插补(reference-pulse interpolator)
基准脉冲插补又称行程标量插补或脉冲增量插补。这种插补算法的特点是每次插补结
束,数控装置向每个运动坐标输出基准脉冲序列,每个脉冲插补的实现方法较简单(只有加
法和移位)可以用硬件实现。目前,随着计算机技术的迅猛发展,多采用软件完成这类算法。
脉冲的累积值代表运动轴的位置,脉冲产生的速度与运动轴的速度成比例。由于脉冲增量插
补的转轴的最大速度受插补算法执行时间限制,所以它仅适用于一些中等精度和中等速度要
求的经济型计算机数控系统。
基准脉冲插补方法有一下几种:1、数字脉冲乘法器插补法;2、逐点比较法;3、数字
积分法;4、矢量判别法;5、比较积分法;6、最小偏差法;7、目标点跟踪法;8、直接函
数法;9、单步跟踪法;10、加密判别和双判别插补法;11、Bresenham算法
早期常用的脉冲增量式插补算法有逐点比较法、单步跟踪法、DDA法等。插补精度常为
一个脉冲当量,DDA法还伴有运算误差。80年代后期插补算法有改进逐点比较法、直接函数
法、最小偏差法等,使插补精度提高到半个脉冲当量,但执行速度不很理想,在插补精度和
运动速度均高的CNC系统中应用不广。近年来的插补算法有改进的最小偏差法,映射法。兼
有插补精度高和插补速度快的特点。
总的说来,最小偏差法插补精度较高,且有利与电机的连续运动
(二) 数据采样插补(sampled-word interpolator)
数据采样插补又称为时间标量插补或数字增量插补。这类插补算法的特点是数控装置产
生的不是单个脉冲,而是标准二进制字。插补运算分两步完成。第一步为粗插补,它是在给
定起点和终点的曲线之间插入若干个点,即用若干条微小直线段来逼近给定曲线,每一微小
直线段的长度
L
都相等,且与给定进给速度有关。粗插补在每个插补运算周期中计算一次,
因此,每一微小直线段的长度
L
与进给速度F和插补周期T有关,即
lFT
。第二步为
精插补,它是在粗插补算出的每一微小直线段的基础上再作“数据点的密化”工作。这一步
相当于直线的脉冲增量插补。
采样速度的选取:在数控系统中,采样周期的选取对于实际加工的精度影响很大,如果
采样周期选取太大,加工精度就不能的得到保证,但是采样周期选取太小,又会影响加工速
4
度,所以在实际选取时要尽量二者兼顾。
数据采样插补方法适用于闭环、半闭环以直流和交流伺服电机为驱动装置的位置采样控
制系统。粗插补在每个插补周期内计算出坐标实际位置增量值,而精插补则在每个采样周期
内采样闭环或半闭环反馈位置增量值及插补输出的指令位置增量值。然后算出各坐标轴相应
的插补指令位置和实际反馈位置,并将二者相比较,求得跟随误差。根据所求得跟随误差算
出相应轴的精速度,并输给驱动装置。我们一般将粗插补运算称为插补,用软件实现。而精
插补可以用软件,也可以用硬件实现。
数据采样插补方法很多,常用方法如下:1、直接函数法;2、扩展数字积分法;3、二
阶递归扩展数字积分圆弧插补法;4、圆弧双数字积分插补法;5、角度逼近圆弧插补法;6、
“改进吐斯丁”(Improved Tustin Method――ITM)法。近年来,众多学者又研究了更多的
插补类型及改进方法。改进DDA圆弧插补算法,空间圆弧的插补时间分割法,抛物线的时间
分割插补方法,椭圆弧插补法,Bezier、B样条等参数曲线的插补方法,任意空间参数曲线
的插补方法。
上述的方法均为基于时间分割的思想,根据编程的进给速度,将轮廓曲线分割为插补周
期的进给段(轮廓步长),即用弦线或割线等逼近轮廓轨迹,(注意,这里的“逼近”是为了
产生基本的插补曲线(直线和圆等)。编程中的“逼近”是用基本的插补曲线代替其它曲线),
然后在此基础上,应用上述不同的方法求解各坐标轴分量。不同的求解方法有不同的逼近精
度和不同的计算速度。
随着STEP标准的颁布,NURBS曲线、曲面插补方法的应用将越来越广泛。因为NURBS
描述方法囊括了圆弧等二次曲线及自由曲线曲面的表达式,使得未来的CNC系统的型线代码
指令可以“瘦身”为直线和NURBS两大类。
如果脱离速度控制谈插补算法,那么插补只能用于计算机图形学中。只有将加减速控制
与插补算法有机结合起来,才能构成完整的CNC系统运动控制模块。在脉冲增量式插补算法
中,可以靠改变插补周期来控制进给速度,而在数据采样算法中,进给速度与插补周期没有
直接联系。数据采样算法的加减速控制分为插补前加减速控制和插补后加减速控制。由于后
加减速方式是以各个轴分别考虑的,不但损失加工精度而且可能导致终点判别错误,所以在
高精度加工中均采用前加减速方式。但是对于任意曲线曲面加工来说,前加减控制的减速点
预测是非常困难的。
加减速控制的方法分为梯形、指数型、抛物线型和复合曲线加减速法等。直线型加减速
方法计算简单,但是存在冲击;指数型方法没有冲击,但速度慢于直线型的,而且计算复杂;
复合曲线加减速法不存在冲击,速度适中,但计算复杂。所以根据所需要的不同的控制精度、
控制速度选择合适的加减速控制方法是很重要的。
3.2.2 逐点比较法直线插补原理
逐点比较法是一种逐点计算、判别偏差并逼近理论轨迹的方法,逐点比较法要完成如下
四个工作节拍:
1) 偏差判别――判别刀具当前位置相对于给定轮廓的偏离情况,以此决定刀具进给方
5
向
2) 进给控制――根据偏差判别结果,控制刀具相对于工件轮廓进给一步,即向给定的
轮廓靠拢,减小偏差
3) 新偏差计算――由于刀具在进给后已改变了位置,因此应计算出刀具当前位置的新
偏差,为下一次偏差判别作准备
4) 终点判别――判断刀具是否已到达被加工轮廓的终点,若已到达终点,则停止插补,
若还未到达终点,再继续插补。如此不断循环进行这四个节拍就可以加工出所要求
的轮廓。
流程图:(有余力的同学画直线插补流程图)
1、逐点比较法直线插补原理
第一象限直线插补原理:
1)偏差判别
以第一象限直线段为例。用户编程时,给出要加工直线的起点和终点。如果以直线的起
点为坐标原点,终点
Pe
的坐标为
(X
e
,Y
e
)
,插补点
Pi
的坐标为
(X
i
,Y
i
)
(i=1,2,3),如
图3.3所示。
直线
OPe
,
OPi
与
X
轴的夹角分别为
e
,
i
,则
tg
e
Y
e
X
e
tg
i
Y
i
X
i
若插补点P1
(X
i
,Y
i
)
恰在直线上,则
tg
e
tg
i
F
i
Y
i
X
e
X
i
Y
e
0
若插补点P2
(X
i
,Y
i
)
在直线上方,则
tg
i
tg
e
F
i
Y
i
X
e
X
i
Y
e
0
若插补点P3
(X
i
,Y
i
)
在直线下方,则
tg
i
tg
e
F
i
Y
i
X
e
X
i
Y
e
0
综上:令偏差函数
F
i
Y
i
X
e
X
i
Y
e
,则有:
F
i
0
,则插补点
(X
i
,Y
i
)
恰在直线上;
F
i
0
,则插补点
(X
i
,Y
i
)
在直线上方;
F
i
0
,则插补点
(X
i
,Y
i
)
在直线下方;
2)进给控制:
当
F
i
0
时,向
X
方向进给一步;
当
F
i
0
时,向
Y
方向进给一步;
3)新偏差计算:
计算机并不善于做乘法运算,在其内部乘法运算是通过加法运算完成的。因此判别
6
函数F的计算实际上是由以下递推迭加的方法实现的。
如果向
X
向进给一步,则
Fi+1=YiXe -(Xi+1)Ye =YiXe -(Xi +1)Ye = YiXe – XiYe - Ye =Fi - Ye
同理,如果向
Y
向进给一步,则
Fi+1=(Yi +1)Xe-XiYe= Fi+ Xe
4)终点判别:
(1)单向计数:取Xe和Ye中较大的作为计数长度
(2)双向计数:将Xe和Ye的长度加和,作为计数长度
(3)分别计数:即计X,又计Y,直到X减到0,Y也减到0,停止插补
O
图3-3 插补点与直线的位置关系
Y
P2
Pe
(Xe,Ye)
P1
P3
X
这样从原点出发,走一步判别一次F,再走一步,所运动的轨迹总在直线附近,并不断
趋向终点。
综上所述第一象限直线插补软件流程如图3.4所示。
7
2、逐点比较法直线插补实例
例:脉冲当量为1,起点(0,0),终点(5,3)
序号 偏差判别 进给控制 偏差计算 终点判别
1 F0=0 +△x F1=F0-Ye=0-3=-3 M=8-1=7
2 F1<0 +△Y F2=F1+Xe=-3+5=2 6
3 F2>0 +△X F3=F2-Ye=2-3=-1 5
4 F3<0 +△Y F4=F3+Xe=-1+5=4 4
5 F4>0 +△X F5=F4-Ye=4-3=1 3
6 F5>0 +△X F6=F5-Ye=1-3=-2 2
7 F6<0 +△Y F7=F6+Xe=-2+5=3 1
8 F7>0 +△X F8=F-Ye=3-3=0 0
Y
(5,3)
O
X
注意:
1、 插补是锯齿形的,而肉眼看到的或者是测量时却是直线呢?
2、水平线,垂直线及45°斜线的插补轨迹
3、其它象限的偏差计算公式
4、如果直线不在原点如何处理?
8
3各象限直线插补公式及图形表格
f
i
0(i0,1,)
f
i
0(i1,2,)
图形
第一
走
(x)
走
(y)
y
(x
1
,y
1
)
象限
f
i1
f
i
ye
f
i1
f
i
xe
xx1,yy
xx,yy1
(x
0
,y
0
)
x
第二
走
(x)
走
(y)
象限
f
i1
f
i
ye
f
i1
f
i
xe
xx1,yy
xx,yy1
第三
走
(x)
走
(y)
象限
f
i1
f
i
ye
f
i1
f
i
xe
xx1,yy
xx,yy1
(x
1
,y
1
)
y
(x
0
,y
0
)
x
第四
走
(x)
走
(y)
象限
f
i1
f
i
ye
f
i1
f
i
xe
xx1,yy
xx,yy1
y
y
L2
L1
(x
0
,y
0
)
x
F0 F0
F<0
F<0
(x
1
,y
1
)
x
F<0
F<0
F0 F0
L3
L4
图3-7 四象限直线偏差符号和进给方向
y
(x
x
0
,y
0
)
(x
1
,y
1
)
9
4、逐点比较法插补精度
精度为不大于一个脉冲当量
5、速度分析
逐点比较法合成进给速度
逐点比较法的特点是脉冲源每发出一个脉冲,就进给一步,不是发向
X
轴,就是发向
Y
轴,如果
f
g为脉冲源频率(Hz),
f
x,
f
y 分别为
X
轴和
Y
轴进给频率(Hz),则
f
g
f
x
f
y
(3-10)
从而
X
轴和
Y
轴的进给速度 (mm/min) 为
v
x
60
f
x
v
y
60
f
y
式中 —脉冲当量(mm/脉冲)。
合成进给速度为
vv
x
v
y
60
22
f
x
f
y
22
(3-11)
式(3-11)中若
f
x=0或
f
y=0时,也就是刀具沿平行于坐标轴的方向切削,这时对应切
削速度最大,相应的速度称为脉冲源速度
v
g,脉冲源速度与程编进给速度相同。
v
g
60
f
g
(3-12)
合成进给速度与脉冲源速度之比为:
2
2
v
y
v
x
22
22
vv
v1
xy
vv
(3-13)
v
x
v
y
v
g
v
x
v
y
sin
cos
v
由式3-13可见,程编进给速度确定了脉冲源频率
f
g
后,实际获得的合成进给速度
v
并不总
等于脉冲源的速度
v
g
,与角有关。插补直线时,为加工直线与
X
轴的夹角;插补圆弧时,
为圆心与动点连线和
X
轴夹角。根据上式可作出
v
/
v
g
随而变化的曲线。如图3-14所示,
v
/
v
g
=0.707~1,最大合成进给速度与最小合成进给速度之比为
v
max
/
v
min
=1.414,一般机床来
讲可以满足要求,认为逐点比较法的进给速度是比较平稳的。
图3-14 逐点比较法进给速度
10
3.2.2 逐点比较法圆弧插补原理
1、逐点比较法圆弧插补原理
圆弧插补的步骤与直线插补的步骤相同,区别在于偏差的计算公式。
现以圆心在原点的
NR
1
为例,说明逐点比较法圆弧插补原理:
1)偏差判别
起点坐标为
(X
0
,Y
0
)
,终点坐标为
(X
e
,Y
e
)
,插补点坐标为
(X
i
,Y
i
)
,如图3.10所示,
圆心在原点,半径为R的圆弧的一般表达式:
x
2
y
2
R
2
则偏差函数
F
i
X
i
2
Y
i
2
R
2
若
F
i
0
,则插补点
(X
i
,Y
i
)
恰在圆弧上(on);
若
F
i
0
,则插补点
(X
i
,Y
i
)
在圆外(up);
若
F
i
0
,则插补点
(X
i
,Y
i
)
在圆内(down);
2)进给控制
当
F
i
0
时,向
X
方向进给一步;
当
F
i
0
时,向
Y
方向进给一步;
3)新偏差计算
偏差函数
F
的递推迭加公式如下。
如果向
X
方向进给一步,则
F
i1
(X
i
1)Y
i
R
22
222
2
X
i
2X
i
1Y
i
R
F
i
2X
i
1
同理,如果向
Y
向进给一步,则
F
i1
X
i
(Y
i
1)R
22
222
2
X
i
Y
i
2Y
i
1R
F
i
2Y
i
1
由此递推公式可见,插补过程中要实时记录插补点的当前坐标。
4)终点判别
因为圆弧存在跨象限的问题,所以圆弧的终点判别方式不能采用起点与终点坐标之差
的绝对值作为某一方向的计数长度,否则将引起误判。例如:整圆的起点、终点重合,如仍
采用直线的判终方式则该圆的插补计算不将进行。
可以采用当前插补点是否与终点相同的方法进行圆弧插补的判终。
Y
(X
e
, Y
e
)
(X
i
,Y
i
)
(X
0
,Y
0
)
O
图3-15 逆时针圆弧示意图
11
X
2、跨象限圆弧插补
圆弧所在象限不同,其偏差计算、进给坐标及方向也不同。逆圆在不同象限的插补公式
如表3-1所示,
逆时针各象限圆弧插补公式表格
f
i
0(i0,1,)
f
i
0(i1,2,)
图形
走
(x)
NR
1
f
i1
f
i
2x1
走
(y)
xx1,yy
f
i1
f
i
2y1
xx,yy1
走
(y)
NR
2
f
i1
f
i
2y1
走
(x)
f
i1
f
i
2x1
xx,yy1
xx1,yy
走
(x)
NR
3
f
i1
f
i
2x1
走
(y)
f
i1
f
i
2y1
xx1,yy
xx,yy1
走
(y)
NR
4
f
i1
f
i
2y1
走
(x)
f
i1
f
i
2x1
xx,yy1
xx1,yy
作业:
推导顺时针圆弧插补公式,并用表格形式表达,编程序实现。
3、圆心不在原点的圆弧的处理
上面讨论了圆心在原点的圆弧的插补方法,当圆心不在原点时可以将其平移到原点处,
使其变为过原点的圆弧。具体做法就是:将起点相对于圆心的坐标值记为
(x
i
,y
i
)
然后带入
上述的公式中,递推公式等均不变。
4、实例验证
设圆弧起点坐标(8,0),终点坐标(0,8),圆心坐标(0,0)。
进行逆时针圆弧插补,得到的插补点及偏差值如表2-3所示。
表2-3 插补点及偏差值
当偏差为零时,向Y正方向进给一步。
12
进给
起点
y
-x
y
y
y
-x
y
y
-x
y
-x
-x
y
-x
-x
-x
F
f0=0
f1=f0+2y+1= 1
f2=f1-2x+1= -14
f3=f2+2y+1= -11
f4=f3+2y+1=-6
f5=f4+2y+1=1
f6=f5-2x+1= -12
f7=f6+2y+1= -3
f8=f7+2y+1= 8
f9=f8-2x+1= -3
f10=f9+2y+1=10
f11=f10-2x+1=1
f12=f11-2x+1= -6
f13=f12+2y+1=9
f14=f13-2x+1=4
f15=f14-2x+1=1
f16=f15-2x+1=0
x
8
8
7
7
7
7
6
6
6
5
5
4
3
3
2
1
0
y
0
1
1
2
3
4
4
5
6
6
7
7
7
8
8
8
8
对应的圆弧插补图形如图2-8所示。
y
10
5
0
0510x
图2-8 最小偏差法圆弧插补图形
3.常用G代码
代码组及其含义
“模态代码” 和 “一般” 代码
“形式代码” 的功能在它被执行后会继续维持,而 “一般代码” 仅仅在收到该命令时起
作用。定义移动的代码通常是“模态代码”,像直线、圆弧和循环代码。反之,像原点返回
代码就叫“一般代码”。
每一个代码都归属其各自的代码组。在“模态代码”里,当前的代码会被加载的同组代码替
换。
G代码 组别解释
G00 快速定位 (快速移动)
G01 直线切削
13
G02 顺时针切圆弧
G03 逆时针切圆弧
G04 暂停
G17 XY 面赋值
G18 XZ 面赋值
G19 YZ 面赋值
G28 机床返回原点
G30 机床返回第2和第3原点
*G40 取消刀具直径偏移
G41 刀具直径左偏移
G42 刀具直径右偏移
*G43 刀具长度 + 方向偏移
*G44 刀具长度 - 方向偏移
G49 取消刀具长度偏移
*G53 机床坐标系选择
G54 工件坐标系1选择
G55 工件坐标系2选择
G56 工件坐标系3选择
G57 工件坐标系4选择
G58 工件坐标系5选择
G59 工件坐标系6选择
G73 高速深孔钻削循环
G74 左螺旋切削循环
G76 精镗孔循环
*G80 取消固定循环
G81 中心钻循环
G82 反镗孔循环
G83 深孔钻削循环
G84 右螺旋切削循环
G85 镗孔循环
G86 镗孔循环
G87 反向镗孔循环
G88 镗孔循环
G89 镗孔循环
*G90 使用绝对值命令
G91 使用增量值命令
G92 设置工件坐标系
*G98 固定循环返回起始点
*G99 返回固定循环R点
加工程序格式
1.顺序号
一般使用方法:编程时将第一程序段设置为N10,以后以间隔10递增的方法设置顺序号,
14
这样,在调试程序时如果需要在N10和N20之间插入程序段时,就用NI1和NI2.
2.准备功能字G
准备功能字的地址符是G,又称为G功能或G指令,是用于建立机床或控制系统工作方式的
一种指令。
3.辅助功能指令M
辅助功能M指令是机床或系统开、关功能地一种命令。如冷却夜的开关,主轴的正反转等
(1)程序指令停止M00
(2)计划停止M01
(3)程序结束指令M02
(4)与主轴有关的指令 M03 MO4 M05
(5)换刀指令M06
(6)与冷却液有关的指令M07 M08 M09
(7)运动部件的夹紧与松开指令 M10 M11
(8)主轴定向停止的指令 M19
(9)程序结束指令M30
4.尺寸字
尺寸字也叫尺寸指令,它主要用于确定机床上刀具云运动将点的坐标位置。
5.进给功能字F
进给功能字的地址符是F,又称为F功能或F指令
6.主轴转速功能字S
主轴转速功能字的地址符为S,又称为S功能或S指令,用于指定主轴转速。
7.刀具功能字T
刀具功能字的地址符是T,又称为T功能或T指令,用于指定加工时所用刀具的编号。
4.机床坐标系
1 坐标系
1.机床的坐标系统,包括所有实际存在的机床轴。
2.参考点、刀具和托盘交换点由机床坐标系确定。机床坐标系包括坐标系、坐标原点、运动
方向。
对数控机床的坐标系统的规定如下:采用笛卡尔直角坐标系,右手定则。
15
图1 右手直角笛卡尔坐标系
2 坐标轴及其运动方向命名原则
1.不论机床的具体结构是工件静止、刀具运动,还是工件运动、刀具静止,数控机床的坐标
运动指的是刀具相对于工件的运动,
2.即规定以工件为基准,假定工件不动,刀具运动的原则。
3.即以刀具的运动轨迹来编程。
4.机床运动部件运动方向的规定:机床坐标系位置与机床类型有关,JB3051——82规定,
增大工件与刀具之间距离的方向是机床运动的正方向。
a)数控车床 b) 立式数控镗铣床 c) 卧式数控镗铣床
图2 数控机床的坐标轴及其运动方向
16
(1)Z轴坐标运动的定义
Z 轴:平行于机床主轴的坐标轴。
正方向:为从工作台到刀具夹持的方向,即刀具远离工作台的运动方向。
(2)X轴坐标运动的定义
1)对工件旋转机床(车、磨)
X轴在工件径向上,平行于横滑座;X轴正方向:为刀具离开工件旋转中心的方向。
2)对刀具旋转机床(铣、钻)
立式:
X轴:为水平的、平行于工件装夹面的坐标轴;正方向:从主轴向立柱看,立柱右方为正。
卧式:
X轴:为水平的、平行于工件装夹平面的坐标轴;正方向:从主轴向工件看,工件右方为正。
(3)Y轴坐标运动的定义
Y轴的正方向则根据X和Z轴按右手法则确定。
(4)旋转轴坐标运动的定义
旋转坐标轴A、B和C的正方向相应地在X、Y、Z坐标轴正方向上,按右手螺纹前进的方向
来确定。
5.工件坐标系可以在工件坐标系中描述工件的几何形状,即NC程序中的数据要参照工件坐
标系。
17
3 坐标原点
在NC机床上可以确定不同的原点和参考点位置,这些参考点的作用:
1.用于机床定位;
2.对工件尺寸进行编程。它们是:
(1)机床原点(M)(Machine Origin或home position)是建立测量机床运动坐标的起始点。
(2)机床参考点(R)(reference point)用行程开关设置的一个物理位置,与机床原点的相对
位置是固定的,机床出厂之前由机床制造商精密测量确定,一般来说,加工中心的参考点为
机床的自动换刀位置。
18
图7 机床坐标系
(3)程序原点(W)
程序原点:又称工件原点(Part Origin)
工件坐标系:以工件原点为坐标原点建立起来的直角坐标系。
是编程员在数控编程过程中定义在工件上的几何基准点。
(4)装夹原点:Fixture Origin (又称卡盘零点),可以与工件原点重合。
图8 数控车床图9 数控镗铣床
4 绝对坐标和相对坐标
1.绝对坐标表示法:将刀具运动位置的坐标值表示为相对于坐标原点的距离,这种坐标的表
19
示法称之为绝对坐标表示法。如图10所示。大多数的数控系统都以G90指令表示使用绝对
坐标编程。
图10 绝对坐标表示法
2.相对坐标表示法:将刀具运动位置的坐标值表示为相对于前一位置坐标的增量,即为目标
点绝对坐标值与当前点绝对坐标值的差值,这种坐标的表示法称之为相对坐标表示法。如图
11所示。大多数的数控系统都以G91指令表示使用相对坐标编程,有的数控系统用X、Y、Z
表示绝对坐标代码,用U、V、W表示相对坐标代码。在一个加工程序中可以混合使用这二种
坐标表示法编程。
图11 相对坐标表示法
5.编程坐标系
一、 数控机床的坐标轴与运动方向
数控机床上的坐标系是采用右手直角笛卡尔坐标系。如图1-14所示,X、Y、Z直
线进给坐标系按右手定则规定,而围绕X、Y、Z轴旋转的圆周进给坐标轴A、B、C则按右手
螺旋定则判定。机床各坐标轴及其正方向的确定原则是:
(1) 先确定Z轴。以平行于机床主轴的刀具运动坐标为Z轴,若有多根主轴,则可
20
选垂直于工件装夹面的主轴为主要主轴,Z坐标则平行于该主轴轴线。若没有主轴,则规定
垂直于工件装夹表面的坐标轴为Z轴。Z轴正方向是使刀具远离工件的方向。如立式铣床,
主轴箱的上、下或主轴本身的上、下即可定为Z轴,且是向上为正;若主轴不能上下动作,
则工作台的上、下便为Z轴,此时工作台向下运动的方向定为正向。
(2) 再确定X轴。X轴为水平方向且垂直于Z轴并平行于工件的装夹面。在工件旋
转的机床(如车床、外圆磨床)上,X轴的运动方向是径向的,与横向导轨平行。刀具离开工
件旋转中心的方向是正方向。对于刀具旋转的机床,若Z轴为水平(如卧式铣床、镗床),则
沿刀具主轴后端向工件方向看,右手平伸出方向为X轴正向,若Z轴为垂直(如立式铣、镗
床,钻床),则从刀具主轴向床身立柱方向看,右手平伸出方向为X轴正向。
上述 坐标轴正方向,均是假定工件不动,刀具相对于工件作进给运动而确定的方向,即
刀具运动坐标系。但在实际机床加工时,有很多都是刀具相对不动,而工件相对于刀具移动
实现进给运动的情况。此时,应在各轴字母后加上“ ’ ”表示工件运动坐标系。按相对运
动关系,工件运动的正方向恰好与刀具运动的正方向相反,即有:
+X = −X’ +Y = −Y’ +Z = −Z’ +A = −A’ +B = −B’ +C=−C’
事实上,不管是刀具运动还是工件运动,在进行编程计算时,一律都是假定工件不动,
按刀具相对运动的坐标来编程。机床操作面板上的轴移动按钮所对应的正负运动方向,也应
该是和编程用的刀具运动坐标方向相一致。比如,对立式数控铣床而言,按+X轴移动钮或
执行程序中+X移动指令,应该是达到假想工件不动,而刀具相对工件往右(+X)移动的效果。
但由于在X、Y平面方向,刀具实际上是不移动的,所以相对于站立不动的人来说,真正产
生的动作却是工作台带动工件在往左移动(即+X'运动方向)。若按+Z轴移动钮,对工作台不
能升降的机床来说,应该就是刀具主轴向上回升;而对工作台能升降而刀具主轴不能上下调
节的机床来说,则应该是工作台带动工件向下移动,即刀具相对于工件向上提升。
2、 机床原点、参考点和工件原点
机床原点就是机床坐标系的原点。它是机床上的一个固定的点,由制造厂家确定。
机床坐标系是通过回参考点操作来确立的,参考点是确立机床坐标系的参照点。
数控车床的机床原点多定在主轴前端面的中心,数控铣床的机床原点多定在进给
行程范围的正极限点处,但也有的设置在机床工作台中心,使用前可查阅机床用户手册。
参考点(或机床原点)是用于对机床工作台(或滑板)与刀具相对运动的测量系统进行定标与
控制的点,一般都是设定在各轴正向行程极限点的位置上。该位置是在每个轴上用挡块和限
位开关精确地预先调整好的,它相对于机床原点的坐标是一个已知数,一个固定值。每次开
机启动后,或当机床因意外断电、紧急制动等原因停机而重新启动时,都应该先让各轴返回
参考点,进行一次位置校准,以消除上次运动所带来的位置误差。
在对零件图形进行编程计算时,必须要建立用于编程的坐标系,其坐标原点即为程序原点。
而要把程序应用到机床上,程序原点应该放在工件毛坯的什么位置,其在机床坐标系中的坐
标是多少,这些都必须让机床的数控系统知道,这一操作就是对刀。编程坐标系在机床上就
表现为工件坐标系,坐标原点就称之为工件原点。工件原点一般按如下原则选取:
(1) 工件原点应选在工件图样的尺寸基准上。这样可以直接用图纸标注的尺寸,作为编程点
的坐标值,减少数据换算的工作量。
(2) 能使工件方便地装夹、测量和检验。
(3) 尽量选在尺寸精度、光洁度比较高的工件表面上,这样可以提高工件的加工精
度和同一批零件的一致性。
(4) 对于有对称几何形状的零件,工件原点最好选在对称中心点上。
车床的工件原点一般设在主轴中心线上,多定在工件的左端面或右端面。铣床的工件原点,
一般设在工件外轮廓的某一个角上或工件对称中心处,进刀深度方向上的零点,大多取在工
21
件表面,如图1-17所示。对于形状较复杂的工件,有时为编程方便可根据需要通过相应的
程序指令随时改变新的工件坐标原点;对于在一个工作台上装夹加工多个工件的情况,在机
床功能允许的条件下,可分别设定编程原点独立地编程,再通过工件原点预置的方法在机床
上分别设定各自的工件坐标系。
对于编程和操作加工采取分开管理机制的生产单位,编程人员只需要将其编程坐标系和程
序原点填写在相应的工艺卡片上即可。而操作加工人员则应根据工件装夹情况适当调整程序
上建立工件坐标系的程序指令,或采用原点预置的方法调整修改原点预置值,以保证程序原
点与工件原点的一致性。
绝对坐标编程和相对坐标编程
数控编程通常都是按照组成图形的线段或圆弧的端点的坐标来进行的。当运动轨迹
的终点坐标是相对于线段的起点来计量的话,称之为相对坐标或增量坐标表达方式。若按这
种方式进行编程,则称之为相对坐标编程。当所有坐标点的坐标值均从某一固定的坐标原点
计量的话,就称之为绝对坐标表达方式,按这种方式进行编程即为绝对坐标编程。
例如,要从图1-18中的A点走到B点。
Y
A
2
0
3
5
B
1
5
012
30
18X
用绝对坐标编程为:X12.0 Y15.0;
若用相对坐标编程则为:X -18.0 Y -20.0。
采用绝对坐标编程时,程序指令中的坐标值随着程序原点的不同而不同;而采用相
对坐标编程时,程序指令中的坐标值则与程序原点的位置没有关系。同样的加工轨迹,既可
用绝对编程也可用相对编程,但有时候,采用恰当的编程方式,可以大大简化程序的编写。
因此,实际编程时应根据使用状况选用合适的编程方式。这可在以后章节的编程训练中体会
出来。
22
2024年10月24日发(作者:植嘉泽)
加工编程
随着数控加工技术的普及,技术市场上对NC编程人员的需求量也呈现出 快速增长的势头。
从技术特点上看,NC编程比三维造型更程式化,即它的实现 过程相对来说更模式化一些。
然而,要想成为一个优秀的NC编程人员也并非一件易事。高水平的NC程 序员应当具备以
下的条件:
(1)掌握一定的基础知识,包括数控机床基本结构、 NC加工基本原理、机械加
工工艺及必要的CAD基础等;
(2)全面地理解和掌握 NC编程的基本过程和关键技术。
(3)熟练运用一种CAD/CAM软件;
(4)有丰 富的实际加工经验。
有时, 还需要掌握一些相关学科的知识和经验 (如模具等)。 数控编程种类较多,如数控
铣、车、钻等。由于其中以三坐标数控铣最为 常用,因此将予以重点介绍。在以后的文章
中,如无特别说明则NC编程均指对 三坐标数控铣加工的编程。 应当指出的是,NC编程是
一门经验性很强的技术,仅靠书面的学习是远 远不够的,更重要的是在实践中不断总结和
提高。 本文主要介绍NC编程的一般技术要求、操作过程和技术要点。
2 NC程序的质量标准 程序的质量标准
我们认为,判别一个NC程序员水平的依据主要有以下几条:
(1) NC程序的质量;
(2) NC编程的工作效率;
(3) NC编程的可靠性和规范化程度(包括工艺规划、数据文件管理、 保存和交接的规范
化程度等)。
其中,NC程序的质量是衡量NC程序员水平的关键指标,其判定标准又可归 纳为: (1)
完备性:即不存在加工残留区域。 (2)误差控制:包括插补误差控制、残余高度(表面粗
糙度)控制等。 (3)加工效率:即在保证加工精度的前提下加工程序的执行时间。 (4)
安全性:指程序对可能出现的让刀、漏刀、撞刀及过切等不良现象的 防范措施和效果。 (5)
工艺性:包括进退刀设置、刀具选择、加工工艺规划(如加工流程及 余量分配等)、切削方
式(刀轨形式选择)、接刀痕迹控制以及其它
各种工艺参数(如进给速度、主轴转速、切削方向、切削深度等)的 设置等。 (6)其它:
如对机床及刀具的损耗程度、程序的规范化程度等。
1
不管采用什么CAD/CAM软件,
NC编程的基本过程及内容大同小异。可由 图1表示:
C AD 造型 加工对象设置 加工工艺分析和规划 刀具设置 参数设置 加工工艺参数设置 刀
轨计算 切削方式设置 仿真校验
后处理
图1 CAD造型是NC编程的前提和基础,NC编程人员也往往需要掌握一定的三 维造型技术,
如在模具加工中构造分型面等。 加工工艺分析和规划包括:(1)加工工序安排,即从粗加
工到精加工的 流程及加工余量分配;(2)加工分区规划,即对同一产品分区域进行加工的
工 艺规划;(3)对加工方式的规划,如刀具选择、切削方式(刀轨形式)选择等。 工艺分
析在原则上决定了NC程序的质量。 参数设置可视为对工艺分析和规划的具体实施,它构成
了利用CAD/CAM 软件进行NC编程的主要操作内容,直接影响NC程序的生成质量。参数设
置的内 容较多, 其中加工对象设置是指用户通过交互手段指定被加工的几何体或其中的
加工分区、毛坯、避让区域等。刀具设置是针对每一个加工工序设置相应的刀具 参数。加
工工艺参数设置包括对进退刀位置及方式、切深(切削深度)、行间距、 加工余量、安全高
度、进给速度及主轴转速等。切削方式设置用于指定刀轨的类 型及相关参数(包括切削方
向)。 在完成参数设置后, 即可将设置结果提交CAD/CAM系统进行刀轨的计算。 为确保程
序的安全性,必须对生成的刀轨进行仿真校验。校验的方式可采 用对刀轨轨迹进行逐行(层)
观察,或进行仿真加工直接在计算机屏幕上观察加 工效果。
后处理实际上是一个文本编辑处理过程,其作用是将计算出的刀轨(刀位 运动轨迹)以规
定的标准格式转化为NC代码并输出保存。
4 NC编程的技术要点 编程的技术要点
2
在NC编程的过程中,难度较大且对加工质量有重要影响的技术要点有: (1)残余高度的
控制。由于现有的CAD/CAM软件对残余高度缺乏自动控 制手段,需要程序员根据加工对象
的具体情况进行控制(见上期《曲面数控加工 编程中的残余高度控制》)。 (2)进给速度、
切深、主轴转速等参数的设置与加工材料特性、机床特 性、刀具特性等诸多因素相关,对
程序员的加工经验要求较高。 (3)切削方式及进退刀方式对加工效果有较大影响,且设置
灵活多样, 是需要重点掌握的另一技术要点。 为保证程序的质量和可靠性,在编程工作中
应注意以下几点: (1)要保持严谨细致的工作作风,对每个设置参数都应反复确认,刀轨
计算完成后必须进行仿真校验; (2)NC编程操作应规范化模式化。即根据企业的特定条
件制定出NC编 程的技术规程,将各操作环节中具有共性的部分(如加工工艺、刀具等)模
式化 规范化,可有效提高工作效率和可靠性。 (3)对重要的加工程序应进行试切检验
2.插补原理
概念引出:
在‘画图板’下绘制垂直、水平、45°、一般角度的直线,圆弧。找同学写出其加工代
码。并让其观察各直线的区别。存在差别的原因就是插补所致,引出本节题目―――插补。
显示器显示原理与步进电机插补原理同出一辙。
插补的地位:
CNC装置的工作流程:
数
输
入
输
出
处
理
控
制
诊
断
程
序
输
入
译
码
据
处
理
插
补
位
置
控
制
显
示
插补是加工程序与电机控制之间的纽带。
3.2.1 插补概述
1、插补定义
用户在零件加工程序中,一般仅提供描述该线形所必须的相关参数,如对直线,提供其
起点和终点坐标;对圆弧,提供起终点坐标、圆心坐标及顺逆圆的信息。而这些信息不能满
足控制机床的执行部件运动(步进电机、交直流伺服电机)的要求。因此,为了满足按执行
部件运动的要求来实现轨迹控制必须在已知的信息点之间实时计算出满足线形和进给速度
要求的若干中间点。这就是数控系统的插补概念。可对插补概念作如下定义:是指在轮廓控
制系统中,根据给定的进给速度和轮廓线形的要求,在已知数据点之间插入中间点的方法,
这种方法称为插补方法。每种方法又可能用不同的计算方法来实现,这种具体的计算方法称
之为插补算法。插补的实质就是数据点的密化。
由插补的定义可以看出,在轮廓控制系统中,插补功能是最重要的功能,是轮廓控制系
3
图1 CNC装置的工作流程
统的本质特征。插补算法的稳定性和算法精度将直接影响到CNC系统的性能指标。所以为使
高级数控系统能发挥其功能,不论是在国外还是国内,精度高、速度快的新的插补算法(软
件)一直是科研人员努力突破的难点,也是各数控公司竭力保密的技术核心。像西门子、Fanuc
数控系统,其许多功能都是对用户开放的,但其插补软件却从不对用户开放。
2、插补分类
插补的形式很多,按其插补工作由硬件电路还是软件程序完成,可将其分为硬件插补和
软件插补。软件插补的结构简单(CNC装置的微处理器和程序),灵活易变。现代数控系统
都采用软件插补器。完全硬件的插补已逐渐被淘汰,只有在特殊的应用场合和作为软件、硬
件结合插补时的第二级插补使用;从产生的数学模型来分,有一次(直线)插补、二次(圆、
抛物线等)插补及高次曲线插补等。大多数数控机床的数控装置都具有直线插补和圆弧插补。
根据插补所采用的原理和计算方法的不同,可有许多插补方法。目前应用的插补方法分为两
类:
(一) 基准脉冲插补(reference-pulse interpolator)
基准脉冲插补又称行程标量插补或脉冲增量插补。这种插补算法的特点是每次插补结
束,数控装置向每个运动坐标输出基准脉冲序列,每个脉冲插补的实现方法较简单(只有加
法和移位)可以用硬件实现。目前,随着计算机技术的迅猛发展,多采用软件完成这类算法。
脉冲的累积值代表运动轴的位置,脉冲产生的速度与运动轴的速度成比例。由于脉冲增量插
补的转轴的最大速度受插补算法执行时间限制,所以它仅适用于一些中等精度和中等速度要
求的经济型计算机数控系统。
基准脉冲插补方法有一下几种:1、数字脉冲乘法器插补法;2、逐点比较法;3、数字
积分法;4、矢量判别法;5、比较积分法;6、最小偏差法;7、目标点跟踪法;8、直接函
数法;9、单步跟踪法;10、加密判别和双判别插补法;11、Bresenham算法
早期常用的脉冲增量式插补算法有逐点比较法、单步跟踪法、DDA法等。插补精度常为
一个脉冲当量,DDA法还伴有运算误差。80年代后期插补算法有改进逐点比较法、直接函数
法、最小偏差法等,使插补精度提高到半个脉冲当量,但执行速度不很理想,在插补精度和
运动速度均高的CNC系统中应用不广。近年来的插补算法有改进的最小偏差法,映射法。兼
有插补精度高和插补速度快的特点。
总的说来,最小偏差法插补精度较高,且有利与电机的连续运动
(二) 数据采样插补(sampled-word interpolator)
数据采样插补又称为时间标量插补或数字增量插补。这类插补算法的特点是数控装置产
生的不是单个脉冲,而是标准二进制字。插补运算分两步完成。第一步为粗插补,它是在给
定起点和终点的曲线之间插入若干个点,即用若干条微小直线段来逼近给定曲线,每一微小
直线段的长度
L
都相等,且与给定进给速度有关。粗插补在每个插补运算周期中计算一次,
因此,每一微小直线段的长度
L
与进给速度F和插补周期T有关,即
lFT
。第二步为
精插补,它是在粗插补算出的每一微小直线段的基础上再作“数据点的密化”工作。这一步
相当于直线的脉冲增量插补。
采样速度的选取:在数控系统中,采样周期的选取对于实际加工的精度影响很大,如果
采样周期选取太大,加工精度就不能的得到保证,但是采样周期选取太小,又会影响加工速
4
度,所以在实际选取时要尽量二者兼顾。
数据采样插补方法适用于闭环、半闭环以直流和交流伺服电机为驱动装置的位置采样控
制系统。粗插补在每个插补周期内计算出坐标实际位置增量值,而精插补则在每个采样周期
内采样闭环或半闭环反馈位置增量值及插补输出的指令位置增量值。然后算出各坐标轴相应
的插补指令位置和实际反馈位置,并将二者相比较,求得跟随误差。根据所求得跟随误差算
出相应轴的精速度,并输给驱动装置。我们一般将粗插补运算称为插补,用软件实现。而精
插补可以用软件,也可以用硬件实现。
数据采样插补方法很多,常用方法如下:1、直接函数法;2、扩展数字积分法;3、二
阶递归扩展数字积分圆弧插补法;4、圆弧双数字积分插补法;5、角度逼近圆弧插补法;6、
“改进吐斯丁”(Improved Tustin Method――ITM)法。近年来,众多学者又研究了更多的
插补类型及改进方法。改进DDA圆弧插补算法,空间圆弧的插补时间分割法,抛物线的时间
分割插补方法,椭圆弧插补法,Bezier、B样条等参数曲线的插补方法,任意空间参数曲线
的插补方法。
上述的方法均为基于时间分割的思想,根据编程的进给速度,将轮廓曲线分割为插补周
期的进给段(轮廓步长),即用弦线或割线等逼近轮廓轨迹,(注意,这里的“逼近”是为了
产生基本的插补曲线(直线和圆等)。编程中的“逼近”是用基本的插补曲线代替其它曲线),
然后在此基础上,应用上述不同的方法求解各坐标轴分量。不同的求解方法有不同的逼近精
度和不同的计算速度。
随着STEP标准的颁布,NURBS曲线、曲面插补方法的应用将越来越广泛。因为NURBS
描述方法囊括了圆弧等二次曲线及自由曲线曲面的表达式,使得未来的CNC系统的型线代码
指令可以“瘦身”为直线和NURBS两大类。
如果脱离速度控制谈插补算法,那么插补只能用于计算机图形学中。只有将加减速控制
与插补算法有机结合起来,才能构成完整的CNC系统运动控制模块。在脉冲增量式插补算法
中,可以靠改变插补周期来控制进给速度,而在数据采样算法中,进给速度与插补周期没有
直接联系。数据采样算法的加减速控制分为插补前加减速控制和插补后加减速控制。由于后
加减速方式是以各个轴分别考虑的,不但损失加工精度而且可能导致终点判别错误,所以在
高精度加工中均采用前加减速方式。但是对于任意曲线曲面加工来说,前加减控制的减速点
预测是非常困难的。
加减速控制的方法分为梯形、指数型、抛物线型和复合曲线加减速法等。直线型加减速
方法计算简单,但是存在冲击;指数型方法没有冲击,但速度慢于直线型的,而且计算复杂;
复合曲线加减速法不存在冲击,速度适中,但计算复杂。所以根据所需要的不同的控制精度、
控制速度选择合适的加减速控制方法是很重要的。
3.2.2 逐点比较法直线插补原理
逐点比较法是一种逐点计算、判别偏差并逼近理论轨迹的方法,逐点比较法要完成如下
四个工作节拍:
1) 偏差判别――判别刀具当前位置相对于给定轮廓的偏离情况,以此决定刀具进给方
5
向
2) 进给控制――根据偏差判别结果,控制刀具相对于工件轮廓进给一步,即向给定的
轮廓靠拢,减小偏差
3) 新偏差计算――由于刀具在进给后已改变了位置,因此应计算出刀具当前位置的新
偏差,为下一次偏差判别作准备
4) 终点判别――判断刀具是否已到达被加工轮廓的终点,若已到达终点,则停止插补,
若还未到达终点,再继续插补。如此不断循环进行这四个节拍就可以加工出所要求
的轮廓。
流程图:(有余力的同学画直线插补流程图)
1、逐点比较法直线插补原理
第一象限直线插补原理:
1)偏差判别
以第一象限直线段为例。用户编程时,给出要加工直线的起点和终点。如果以直线的起
点为坐标原点,终点
Pe
的坐标为
(X
e
,Y
e
)
,插补点
Pi
的坐标为
(X
i
,Y
i
)
(i=1,2,3),如
图3.3所示。
直线
OPe
,
OPi
与
X
轴的夹角分别为
e
,
i
,则
tg
e
Y
e
X
e
tg
i
Y
i
X
i
若插补点P1
(X
i
,Y
i
)
恰在直线上,则
tg
e
tg
i
F
i
Y
i
X
e
X
i
Y
e
0
若插补点P2
(X
i
,Y
i
)
在直线上方,则
tg
i
tg
e
F
i
Y
i
X
e
X
i
Y
e
0
若插补点P3
(X
i
,Y
i
)
在直线下方,则
tg
i
tg
e
F
i
Y
i
X
e
X
i
Y
e
0
综上:令偏差函数
F
i
Y
i
X
e
X
i
Y
e
,则有:
F
i
0
,则插补点
(X
i
,Y
i
)
恰在直线上;
F
i
0
,则插补点
(X
i
,Y
i
)
在直线上方;
F
i
0
,则插补点
(X
i
,Y
i
)
在直线下方;
2)进给控制:
当
F
i
0
时,向
X
方向进给一步;
当
F
i
0
时,向
Y
方向进给一步;
3)新偏差计算:
计算机并不善于做乘法运算,在其内部乘法运算是通过加法运算完成的。因此判别
6
函数F的计算实际上是由以下递推迭加的方法实现的。
如果向
X
向进给一步,则
Fi+1=YiXe -(Xi+1)Ye =YiXe -(Xi +1)Ye = YiXe – XiYe - Ye =Fi - Ye
同理,如果向
Y
向进给一步,则
Fi+1=(Yi +1)Xe-XiYe= Fi+ Xe
4)终点判别:
(1)单向计数:取Xe和Ye中较大的作为计数长度
(2)双向计数:将Xe和Ye的长度加和,作为计数长度
(3)分别计数:即计X,又计Y,直到X减到0,Y也减到0,停止插补
O
图3-3 插补点与直线的位置关系
Y
P2
Pe
(Xe,Ye)
P1
P3
X
这样从原点出发,走一步判别一次F,再走一步,所运动的轨迹总在直线附近,并不断
趋向终点。
综上所述第一象限直线插补软件流程如图3.4所示。
7
2、逐点比较法直线插补实例
例:脉冲当量为1,起点(0,0),终点(5,3)
序号 偏差判别 进给控制 偏差计算 终点判别
1 F0=0 +△x F1=F0-Ye=0-3=-3 M=8-1=7
2 F1<0 +△Y F2=F1+Xe=-3+5=2 6
3 F2>0 +△X F3=F2-Ye=2-3=-1 5
4 F3<0 +△Y F4=F3+Xe=-1+5=4 4
5 F4>0 +△X F5=F4-Ye=4-3=1 3
6 F5>0 +△X F6=F5-Ye=1-3=-2 2
7 F6<0 +△Y F7=F6+Xe=-2+5=3 1
8 F7>0 +△X F8=F-Ye=3-3=0 0
Y
(5,3)
O
X
注意:
1、 插补是锯齿形的,而肉眼看到的或者是测量时却是直线呢?
2、水平线,垂直线及45°斜线的插补轨迹
3、其它象限的偏差计算公式
4、如果直线不在原点如何处理?
8
3各象限直线插补公式及图形表格
f
i
0(i0,1,)
f
i
0(i1,2,)
图形
第一
走
(x)
走
(y)
y
(x
1
,y
1
)
象限
f
i1
f
i
ye
f
i1
f
i
xe
xx1,yy
xx,yy1
(x
0
,y
0
)
x
第二
走
(x)
走
(y)
象限
f
i1
f
i
ye
f
i1
f
i
xe
xx1,yy
xx,yy1
第三
走
(x)
走
(y)
象限
f
i1
f
i
ye
f
i1
f
i
xe
xx1,yy
xx,yy1
(x
1
,y
1
)
y
(x
0
,y
0
)
x
第四
走
(x)
走
(y)
象限
f
i1
f
i
ye
f
i1
f
i
xe
xx1,yy
xx,yy1
y
y
L2
L1
(x
0
,y
0
)
x
F0 F0
F<0
F<0
(x
1
,y
1
)
x
F<0
F<0
F0 F0
L3
L4
图3-7 四象限直线偏差符号和进给方向
y
(x
x
0
,y
0
)
(x
1
,y
1
)
9
4、逐点比较法插补精度
精度为不大于一个脉冲当量
5、速度分析
逐点比较法合成进给速度
逐点比较法的特点是脉冲源每发出一个脉冲,就进给一步,不是发向
X
轴,就是发向
Y
轴,如果
f
g为脉冲源频率(Hz),
f
x,
f
y 分别为
X
轴和
Y
轴进给频率(Hz),则
f
g
f
x
f
y
(3-10)
从而
X
轴和
Y
轴的进给速度 (mm/min) 为
v
x
60
f
x
v
y
60
f
y
式中 —脉冲当量(mm/脉冲)。
合成进给速度为
vv
x
v
y
60
22
f
x
f
y
22
(3-11)
式(3-11)中若
f
x=0或
f
y=0时,也就是刀具沿平行于坐标轴的方向切削,这时对应切
削速度最大,相应的速度称为脉冲源速度
v
g,脉冲源速度与程编进给速度相同。
v
g
60
f
g
(3-12)
合成进给速度与脉冲源速度之比为:
2
2
v
y
v
x
22
22
vv
v1
xy
vv
(3-13)
v
x
v
y
v
g
v
x
v
y
sin
cos
v
由式3-13可见,程编进给速度确定了脉冲源频率
f
g
后,实际获得的合成进给速度
v
并不总
等于脉冲源的速度
v
g
,与角有关。插补直线时,为加工直线与
X
轴的夹角;插补圆弧时,
为圆心与动点连线和
X
轴夹角。根据上式可作出
v
/
v
g
随而变化的曲线。如图3-14所示,
v
/
v
g
=0.707~1,最大合成进给速度与最小合成进给速度之比为
v
max
/
v
min
=1.414,一般机床来
讲可以满足要求,认为逐点比较法的进给速度是比较平稳的。
图3-14 逐点比较法进给速度
10
3.2.2 逐点比较法圆弧插补原理
1、逐点比较法圆弧插补原理
圆弧插补的步骤与直线插补的步骤相同,区别在于偏差的计算公式。
现以圆心在原点的
NR
1
为例,说明逐点比较法圆弧插补原理:
1)偏差判别
起点坐标为
(X
0
,Y
0
)
,终点坐标为
(X
e
,Y
e
)
,插补点坐标为
(X
i
,Y
i
)
,如图3.10所示,
圆心在原点,半径为R的圆弧的一般表达式:
x
2
y
2
R
2
则偏差函数
F
i
X
i
2
Y
i
2
R
2
若
F
i
0
,则插补点
(X
i
,Y
i
)
恰在圆弧上(on);
若
F
i
0
,则插补点
(X
i
,Y
i
)
在圆外(up);
若
F
i
0
,则插补点
(X
i
,Y
i
)
在圆内(down);
2)进给控制
当
F
i
0
时,向
X
方向进给一步;
当
F
i
0
时,向
Y
方向进给一步;
3)新偏差计算
偏差函数
F
的递推迭加公式如下。
如果向
X
方向进给一步,则
F
i1
(X
i
1)Y
i
R
22
222
2
X
i
2X
i
1Y
i
R
F
i
2X
i
1
同理,如果向
Y
向进给一步,则
F
i1
X
i
(Y
i
1)R
22
222
2
X
i
Y
i
2Y
i
1R
F
i
2Y
i
1
由此递推公式可见,插补过程中要实时记录插补点的当前坐标。
4)终点判别
因为圆弧存在跨象限的问题,所以圆弧的终点判别方式不能采用起点与终点坐标之差
的绝对值作为某一方向的计数长度,否则将引起误判。例如:整圆的起点、终点重合,如仍
采用直线的判终方式则该圆的插补计算不将进行。
可以采用当前插补点是否与终点相同的方法进行圆弧插补的判终。
Y
(X
e
, Y
e
)
(X
i
,Y
i
)
(X
0
,Y
0
)
O
图3-15 逆时针圆弧示意图
11
X
2、跨象限圆弧插补
圆弧所在象限不同,其偏差计算、进给坐标及方向也不同。逆圆在不同象限的插补公式
如表3-1所示,
逆时针各象限圆弧插补公式表格
f
i
0(i0,1,)
f
i
0(i1,2,)
图形
走
(x)
NR
1
f
i1
f
i
2x1
走
(y)
xx1,yy
f
i1
f
i
2y1
xx,yy1
走
(y)
NR
2
f
i1
f
i
2y1
走
(x)
f
i1
f
i
2x1
xx,yy1
xx1,yy
走
(x)
NR
3
f
i1
f
i
2x1
走
(y)
f
i1
f
i
2y1
xx1,yy
xx,yy1
走
(y)
NR
4
f
i1
f
i
2y1
走
(x)
f
i1
f
i
2x1
xx,yy1
xx1,yy
作业:
推导顺时针圆弧插补公式,并用表格形式表达,编程序实现。
3、圆心不在原点的圆弧的处理
上面讨论了圆心在原点的圆弧的插补方法,当圆心不在原点时可以将其平移到原点处,
使其变为过原点的圆弧。具体做法就是:将起点相对于圆心的坐标值记为
(x
i
,y
i
)
然后带入
上述的公式中,递推公式等均不变。
4、实例验证
设圆弧起点坐标(8,0),终点坐标(0,8),圆心坐标(0,0)。
进行逆时针圆弧插补,得到的插补点及偏差值如表2-3所示。
表2-3 插补点及偏差值
当偏差为零时,向Y正方向进给一步。
12
进给
起点
y
-x
y
y
y
-x
y
y
-x
y
-x
-x
y
-x
-x
-x
F
f0=0
f1=f0+2y+1= 1
f2=f1-2x+1= -14
f3=f2+2y+1= -11
f4=f3+2y+1=-6
f5=f4+2y+1=1
f6=f5-2x+1= -12
f7=f6+2y+1= -3
f8=f7+2y+1= 8
f9=f8-2x+1= -3
f10=f9+2y+1=10
f11=f10-2x+1=1
f12=f11-2x+1= -6
f13=f12+2y+1=9
f14=f13-2x+1=4
f15=f14-2x+1=1
f16=f15-2x+1=0
x
8
8
7
7
7
7
6
6
6
5
5
4
3
3
2
1
0
y
0
1
1
2
3
4
4
5
6
6
7
7
7
8
8
8
8
对应的圆弧插补图形如图2-8所示。
y
10
5
0
0510x
图2-8 最小偏差法圆弧插补图形
3.常用G代码
代码组及其含义
“模态代码” 和 “一般” 代码
“形式代码” 的功能在它被执行后会继续维持,而 “一般代码” 仅仅在收到该命令时起
作用。定义移动的代码通常是“模态代码”,像直线、圆弧和循环代码。反之,像原点返回
代码就叫“一般代码”。
每一个代码都归属其各自的代码组。在“模态代码”里,当前的代码会被加载的同组代码替
换。
G代码 组别解释
G00 快速定位 (快速移动)
G01 直线切削
13
G02 顺时针切圆弧
G03 逆时针切圆弧
G04 暂停
G17 XY 面赋值
G18 XZ 面赋值
G19 YZ 面赋值
G28 机床返回原点
G30 机床返回第2和第3原点
*G40 取消刀具直径偏移
G41 刀具直径左偏移
G42 刀具直径右偏移
*G43 刀具长度 + 方向偏移
*G44 刀具长度 - 方向偏移
G49 取消刀具长度偏移
*G53 机床坐标系选择
G54 工件坐标系1选择
G55 工件坐标系2选择
G56 工件坐标系3选择
G57 工件坐标系4选择
G58 工件坐标系5选择
G59 工件坐标系6选择
G73 高速深孔钻削循环
G74 左螺旋切削循环
G76 精镗孔循环
*G80 取消固定循环
G81 中心钻循环
G82 反镗孔循环
G83 深孔钻削循环
G84 右螺旋切削循环
G85 镗孔循环
G86 镗孔循环
G87 反向镗孔循环
G88 镗孔循环
G89 镗孔循环
*G90 使用绝对值命令
G91 使用增量值命令
G92 设置工件坐标系
*G98 固定循环返回起始点
*G99 返回固定循环R点
加工程序格式
1.顺序号
一般使用方法:编程时将第一程序段设置为N10,以后以间隔10递增的方法设置顺序号,
14
这样,在调试程序时如果需要在N10和N20之间插入程序段时,就用NI1和NI2.
2.准备功能字G
准备功能字的地址符是G,又称为G功能或G指令,是用于建立机床或控制系统工作方式的
一种指令。
3.辅助功能指令M
辅助功能M指令是机床或系统开、关功能地一种命令。如冷却夜的开关,主轴的正反转等
(1)程序指令停止M00
(2)计划停止M01
(3)程序结束指令M02
(4)与主轴有关的指令 M03 MO4 M05
(5)换刀指令M06
(6)与冷却液有关的指令M07 M08 M09
(7)运动部件的夹紧与松开指令 M10 M11
(8)主轴定向停止的指令 M19
(9)程序结束指令M30
4.尺寸字
尺寸字也叫尺寸指令,它主要用于确定机床上刀具云运动将点的坐标位置。
5.进给功能字F
进给功能字的地址符是F,又称为F功能或F指令
6.主轴转速功能字S
主轴转速功能字的地址符为S,又称为S功能或S指令,用于指定主轴转速。
7.刀具功能字T
刀具功能字的地址符是T,又称为T功能或T指令,用于指定加工时所用刀具的编号。
4.机床坐标系
1 坐标系
1.机床的坐标系统,包括所有实际存在的机床轴。
2.参考点、刀具和托盘交换点由机床坐标系确定。机床坐标系包括坐标系、坐标原点、运动
方向。
对数控机床的坐标系统的规定如下:采用笛卡尔直角坐标系,右手定则。
15
图1 右手直角笛卡尔坐标系
2 坐标轴及其运动方向命名原则
1.不论机床的具体结构是工件静止、刀具运动,还是工件运动、刀具静止,数控机床的坐标
运动指的是刀具相对于工件的运动,
2.即规定以工件为基准,假定工件不动,刀具运动的原则。
3.即以刀具的运动轨迹来编程。
4.机床运动部件运动方向的规定:机床坐标系位置与机床类型有关,JB3051——82规定,
增大工件与刀具之间距离的方向是机床运动的正方向。
a)数控车床 b) 立式数控镗铣床 c) 卧式数控镗铣床
图2 数控机床的坐标轴及其运动方向
16
(1)Z轴坐标运动的定义
Z 轴:平行于机床主轴的坐标轴。
正方向:为从工作台到刀具夹持的方向,即刀具远离工作台的运动方向。
(2)X轴坐标运动的定义
1)对工件旋转机床(车、磨)
X轴在工件径向上,平行于横滑座;X轴正方向:为刀具离开工件旋转中心的方向。
2)对刀具旋转机床(铣、钻)
立式:
X轴:为水平的、平行于工件装夹面的坐标轴;正方向:从主轴向立柱看,立柱右方为正。
卧式:
X轴:为水平的、平行于工件装夹平面的坐标轴;正方向:从主轴向工件看,工件右方为正。
(3)Y轴坐标运动的定义
Y轴的正方向则根据X和Z轴按右手法则确定。
(4)旋转轴坐标运动的定义
旋转坐标轴A、B和C的正方向相应地在X、Y、Z坐标轴正方向上,按右手螺纹前进的方向
来确定。
5.工件坐标系可以在工件坐标系中描述工件的几何形状,即NC程序中的数据要参照工件坐
标系。
17
3 坐标原点
在NC机床上可以确定不同的原点和参考点位置,这些参考点的作用:
1.用于机床定位;
2.对工件尺寸进行编程。它们是:
(1)机床原点(M)(Machine Origin或home position)是建立测量机床运动坐标的起始点。
(2)机床参考点(R)(reference point)用行程开关设置的一个物理位置,与机床原点的相对
位置是固定的,机床出厂之前由机床制造商精密测量确定,一般来说,加工中心的参考点为
机床的自动换刀位置。
18
图7 机床坐标系
(3)程序原点(W)
程序原点:又称工件原点(Part Origin)
工件坐标系:以工件原点为坐标原点建立起来的直角坐标系。
是编程员在数控编程过程中定义在工件上的几何基准点。
(4)装夹原点:Fixture Origin (又称卡盘零点),可以与工件原点重合。
图8 数控车床图9 数控镗铣床
4 绝对坐标和相对坐标
1.绝对坐标表示法:将刀具运动位置的坐标值表示为相对于坐标原点的距离,这种坐标的表
19
示法称之为绝对坐标表示法。如图10所示。大多数的数控系统都以G90指令表示使用绝对
坐标编程。
图10 绝对坐标表示法
2.相对坐标表示法:将刀具运动位置的坐标值表示为相对于前一位置坐标的增量,即为目标
点绝对坐标值与当前点绝对坐标值的差值,这种坐标的表示法称之为相对坐标表示法。如图
11所示。大多数的数控系统都以G91指令表示使用相对坐标编程,有的数控系统用X、Y、Z
表示绝对坐标代码,用U、V、W表示相对坐标代码。在一个加工程序中可以混合使用这二种
坐标表示法编程。
图11 相对坐标表示法
5.编程坐标系
一、 数控机床的坐标轴与运动方向
数控机床上的坐标系是采用右手直角笛卡尔坐标系。如图1-14所示,X、Y、Z直
线进给坐标系按右手定则规定,而围绕X、Y、Z轴旋转的圆周进给坐标轴A、B、C则按右手
螺旋定则判定。机床各坐标轴及其正方向的确定原则是:
(1) 先确定Z轴。以平行于机床主轴的刀具运动坐标为Z轴,若有多根主轴,则可
20
选垂直于工件装夹面的主轴为主要主轴,Z坐标则平行于该主轴轴线。若没有主轴,则规定
垂直于工件装夹表面的坐标轴为Z轴。Z轴正方向是使刀具远离工件的方向。如立式铣床,
主轴箱的上、下或主轴本身的上、下即可定为Z轴,且是向上为正;若主轴不能上下动作,
则工作台的上、下便为Z轴,此时工作台向下运动的方向定为正向。
(2) 再确定X轴。X轴为水平方向且垂直于Z轴并平行于工件的装夹面。在工件旋
转的机床(如车床、外圆磨床)上,X轴的运动方向是径向的,与横向导轨平行。刀具离开工
件旋转中心的方向是正方向。对于刀具旋转的机床,若Z轴为水平(如卧式铣床、镗床),则
沿刀具主轴后端向工件方向看,右手平伸出方向为X轴正向,若Z轴为垂直(如立式铣、镗
床,钻床),则从刀具主轴向床身立柱方向看,右手平伸出方向为X轴正向。
上述 坐标轴正方向,均是假定工件不动,刀具相对于工件作进给运动而确定的方向,即
刀具运动坐标系。但在实际机床加工时,有很多都是刀具相对不动,而工件相对于刀具移动
实现进给运动的情况。此时,应在各轴字母后加上“ ’ ”表示工件运动坐标系。按相对运
动关系,工件运动的正方向恰好与刀具运动的正方向相反,即有:
+X = −X’ +Y = −Y’ +Z = −Z’ +A = −A’ +B = −B’ +C=−C’
事实上,不管是刀具运动还是工件运动,在进行编程计算时,一律都是假定工件不动,
按刀具相对运动的坐标来编程。机床操作面板上的轴移动按钮所对应的正负运动方向,也应
该是和编程用的刀具运动坐标方向相一致。比如,对立式数控铣床而言,按+X轴移动钮或
执行程序中+X移动指令,应该是达到假想工件不动,而刀具相对工件往右(+X)移动的效果。
但由于在X、Y平面方向,刀具实际上是不移动的,所以相对于站立不动的人来说,真正产
生的动作却是工作台带动工件在往左移动(即+X'运动方向)。若按+Z轴移动钮,对工作台不
能升降的机床来说,应该就是刀具主轴向上回升;而对工作台能升降而刀具主轴不能上下调
节的机床来说,则应该是工作台带动工件向下移动,即刀具相对于工件向上提升。
2、 机床原点、参考点和工件原点
机床原点就是机床坐标系的原点。它是机床上的一个固定的点,由制造厂家确定。
机床坐标系是通过回参考点操作来确立的,参考点是确立机床坐标系的参照点。
数控车床的机床原点多定在主轴前端面的中心,数控铣床的机床原点多定在进给
行程范围的正极限点处,但也有的设置在机床工作台中心,使用前可查阅机床用户手册。
参考点(或机床原点)是用于对机床工作台(或滑板)与刀具相对运动的测量系统进行定标与
控制的点,一般都是设定在各轴正向行程极限点的位置上。该位置是在每个轴上用挡块和限
位开关精确地预先调整好的,它相对于机床原点的坐标是一个已知数,一个固定值。每次开
机启动后,或当机床因意外断电、紧急制动等原因停机而重新启动时,都应该先让各轴返回
参考点,进行一次位置校准,以消除上次运动所带来的位置误差。
在对零件图形进行编程计算时,必须要建立用于编程的坐标系,其坐标原点即为程序原点。
而要把程序应用到机床上,程序原点应该放在工件毛坯的什么位置,其在机床坐标系中的坐
标是多少,这些都必须让机床的数控系统知道,这一操作就是对刀。编程坐标系在机床上就
表现为工件坐标系,坐标原点就称之为工件原点。工件原点一般按如下原则选取:
(1) 工件原点应选在工件图样的尺寸基准上。这样可以直接用图纸标注的尺寸,作为编程点
的坐标值,减少数据换算的工作量。
(2) 能使工件方便地装夹、测量和检验。
(3) 尽量选在尺寸精度、光洁度比较高的工件表面上,这样可以提高工件的加工精
度和同一批零件的一致性。
(4) 对于有对称几何形状的零件,工件原点最好选在对称中心点上。
车床的工件原点一般设在主轴中心线上,多定在工件的左端面或右端面。铣床的工件原点,
一般设在工件外轮廓的某一个角上或工件对称中心处,进刀深度方向上的零点,大多取在工
21
件表面,如图1-17所示。对于形状较复杂的工件,有时为编程方便可根据需要通过相应的
程序指令随时改变新的工件坐标原点;对于在一个工作台上装夹加工多个工件的情况,在机
床功能允许的条件下,可分别设定编程原点独立地编程,再通过工件原点预置的方法在机床
上分别设定各自的工件坐标系。
对于编程和操作加工采取分开管理机制的生产单位,编程人员只需要将其编程坐标系和程
序原点填写在相应的工艺卡片上即可。而操作加工人员则应根据工件装夹情况适当调整程序
上建立工件坐标系的程序指令,或采用原点预置的方法调整修改原点预置值,以保证程序原
点与工件原点的一致性。
绝对坐标编程和相对坐标编程
数控编程通常都是按照组成图形的线段或圆弧的端点的坐标来进行的。当运动轨迹
的终点坐标是相对于线段的起点来计量的话,称之为相对坐标或增量坐标表达方式。若按这
种方式进行编程,则称之为相对坐标编程。当所有坐标点的坐标值均从某一固定的坐标原点
计量的话,就称之为绝对坐标表达方式,按这种方式进行编程即为绝对坐标编程。
例如,要从图1-18中的A点走到B点。
Y
A
2
0
3
5
B
1
5
012
30
18X
用绝对坐标编程为:X12.0 Y15.0;
若用相对坐标编程则为:X -18.0 Y -20.0。
采用绝对坐标编程时,程序指令中的坐标值随着程序原点的不同而不同;而采用相
对坐标编程时,程序指令中的坐标值则与程序原点的位置没有关系。同样的加工轨迹,既可
用绝对编程也可用相对编程,但有时候,采用恰当的编程方式,可以大大简化程序的编写。
因此,实际编程时应根据使用状况选用合适的编程方式。这可在以后章节的编程训练中体会
出来。
22