首页 百科知识 数控加工编程基础

数控加工编程基础

时间:2023-11-03 百科知识 版权反馈
【摘要】:自动编程是指用计算机编制数控加工程序的过程。为了满足设计、制造、维修和普及数控机床的需要,机床坐标系、加工指令、辅助功能及数控加工程序的结构和格式等方面的标准逐步统一。数控加工程序是数控加工中的核心部分,是一系列指令的有序集合,这些指令可使刀具按直线、圆弧或其他曲线运动,以完成对零件的加工。

数控机床是一种高效的自动化加工设备。理想的数控程序不仅应该保证加工出符合零件图样要求的合格工件,还应该使数控机床的功能得到合理的应用与充分的发挥,使数控机床能安全、可靠、高效的工作。因此,数控加工程序的编制必须将零件所有的信息,包括工艺过程、工艺参数(主运动和进给运动速度、切削深度等)、工件与刀具相对运动轨迹的尺寸数据及其他辅助动作(换刀、冷却、工件的松夹等),按运动顺序和所用数控系统规定的指令代码及程序格式编成加工程序单,再将程序单中的全部内容记录在控制介质上,输入给数控装置,驱动机床运动,从而加工出合格的零件,以上过程称为数控加工程序的编制。

1.3.1 数控编程的内容与步骤

数控程序编制的内容主要包括分析零件图纸、工艺处理、数学处理、编写程序单、制备控制介质、程序调试与检验,具体步骤如图1-21所示。

图1-21 数控编程的步骤

1. 分析零件图纸

根据零件的材料、形状、尺寸、精度及毛坯形状和热处理要求等,确定该零件是否适合在数控机床上加工,或者适合在哪类数控机床上加工。有时还要确定在某台数控机床上加工该零件的哪些工序或哪几个表面。

2. 工艺处理

确定零件的加工方法(如采用的夹具、装夹定位方法等)和加工路线(如对刀点、走刀路线),并确定加工用量等工艺参数(如切削进给速度、主轴转速、切削宽度和深度等)。

3. 数学处理

根据零件图的几何尺寸、确定的工艺路线及设定的坐标系,计算零件粗、精加工运动的轨迹,得到刀位数据。对于形状比较简单的零件(如由直线和圆弧组成的零件)的轮廓加工,要计算出几何元素的起点、终点、圆弧的圆心、两几何元素的交点或切点的坐标值,如果数控装置无刀具补偿功能,还要计算刀具中心的运动轨迹坐标值。对于形状比较复杂的零件(如由非圆曲线、曲面组成的零件),需要用直线段或圆弧段逼近,根据加工精度的要求计算出节点坐标值,这种数值计算一般要用计算机来完成。

4. 编写程序单

根据加工路线计算出的数据和已确定的加工用量,编程人员结合所使用的数控系统的指令、程序段格式,逐段编写零件加工程序。编程人员要了解数控机床的性能、程序指令代码及数控机床加工零件的过程,才能编写正确的加工程序。此外,还应填写有关的工艺文件,如数控加工工序卡片、数控刀具卡片、工件安装和零点设定卡片等。

5. 制备控制介质

按程序单将程序内容记录在控制介质(如穿孔纸带)上作为数控装置的输入信息。早期所用的控制介质为穿孔纸带,现在已被磁盘所代替。应根据所用机床能识别的控制介质类型制备相应的控制介质。

6. 程序调试与检验

编制好的数控加工程序,必须经过程序检验和试切后才能用于正式加工,一般采用空走刀检测、空运转画图检测及数控仿真模拟加工软件来模拟实际加工过程,也可以采用铝件、塑料或石蜡等易切材料进行试切等方法检验程序。通过检验,特别是试切不仅可以确认程序的正确与否,还可知道加工精度是否符合要求。发现错误则应及时修正或采取补偿措施,直到程序能正确执行可加工出合格零件为止。

1.3.2 数控编程的方法

数控编程的方法主要有手工编程和自动编程两种。

1. 手工编程

手工编程是指所有编制加工程序的全过程,即分析零件图纸、工艺处理、数学处理、编写程序单、制备控制介质、程序调试与检验都是由手工来完成。

手工编程不需要计算机、编程器、编程软件等辅助设备,只需要有合格的编程人员即可完成。手工编程具有编程快速、及时的优点,其缺点是不能进行复杂曲面加工的编程。手工编程比较适合批量较大、形状简单、计算方便、轮廓由直线或圆弧组成的零件的加工。对于形状复杂的零件,特别是具有非圆曲线、列表曲线及曲面的零件,采用手工编程则比较困难,最好采用自动编程的方法进行编程。

2. 自动编程

自动编程是指用计算机编制数控加工程序的过程。自动编程的优点是效率高、正确性好。自动编程是由计算机代替人完成复杂的坐标计算和书写程序单的工作,它可以解决许多手工编程无法完成的复杂零件的编程难题,但其缺点是必须具备自动编程系统或自动编程软件。自动编程比较适合形状复杂零件的加工程序编制,如模具加工、多轴联动加工等场合。

根据输入方式的不同,自动编程分为语言数控自动编程(如APT系统)和图形数控自动编程(CAD/CAM)两类。前者通过高级语言的形式表示出全部加工内容,计算机运行时采用批处理方式,一次性处理、输出加工程序;后者采用计算机人机对话的处理方式,利用CAD/CAM功能生成加工程序。

目前,图形数控自动编程是使用最为广泛的自动编程方式,尤其以CAD/CAM的自动编程应用最为典型。CAD/CAM软件编程加工过程为图样分析→零件分析→三维造型→CAM参数设置→生成加工刀具轨迹→后置处理生成加工程序→程序校验→程序传输并进行加工。在PC上应用较多的CAD/CAM软件主要有MasterCAM、UG、Pro/E等。CAD/CAM自动编程的步骤如图1-22所示。

1.3.3 数控加工程序的结构与分类

为了满足设计、制造、维修和普及数控机床的需要,机床坐标系、加工指令、辅助功能及数控加工程序的结构和格式等方面的标准逐步统一。目前,已形成两种国际上广泛采用的标准代码:一种是ISO国际标准化组织标准代码;另一种是EIA美国电子工业协会标准代码。国际上正在研究和制定一种新的CNC系统标准ISO14649(STEP-NC),其目的是提供一种不依赖于具体系统的中性机制,能够描述产品整个生命周期内的统一数据模型,从而实现整个制造过程,乃至各个工业领域产品信息的标准化。

图1-22 CAD/CAM自动编程的步骤

我国机械工业部根据ISO标准制定了JB3050—1982《数字控制机床用七单位编码字符》、JB3051—1982《数字控制机床坐标和运动方向的命名》、JB3208—1983《数字控制机床穿孔带程序段格式中的准备功能G和辅助功能M代码》等。但是由于各个数控机床生产厂家所用的标准尚未完全统一,其所用的代码、指令及其含义不完全相同,因此在编制程序时必须按所用数控机床编程手册中的规定进行。

1. 数控加工程序的组成

数控加工程序是数控加工中的核心部分,是一系列指令的有序集合,这些指令可使刀具按直线、圆弧或其他曲线运动,以完成对零件的加工。一个完整的加工程序由程序号和若干个程序段组成,一个程序段又由若干个字组成,每个字又由字母(地址符)和数字(有些数字还带有符号)组成,而字母、数字、符号统称为字符。

图1-23 图示零件

下面是加工图1-23所示零件的一个完整的数控加工程序(编程原点为(0,0,0),刀具直径为10mm),该程序由程序号O1001和9个程序段组成,以M30结束。

O1001;

N01 G54 G90 G17 G00 X-85. Y-25.;

N02 Z-5. S400 M03 M08;

N03 G91 G01 X85. F30;

N04 G03 Y50. J25;

N05 G01 K-75.;

N06 Y-60.;

N07 G00 Z30. M09;

N08 X75. Y35.;

N09 M05 M30;

1) 程序号

程序号是加工程序的标识,为了区分每个程序,程序要进行编号。程序号由程序号地址和程序的编号组成,如O1001,其中字母O表示程序号地址,1001表示程序的编号,即1001号程序。

不同的数控系统,其程序号地址有所差别。如SINUMERIK系列数控系统常用%作为程序号的地址码,而FANUC 数控系统和华中数控系统常用O作为程序号的地址码。编程时一定要参考数控机床说明书;否则,程序可能无法执行。

2) 程序段的格式与组成

程序段是一个完整的加工工步单元,它以N(程序段号)指令为开头,以LF或分号指令为结尾。

数控程序按程序段(行)的表达形式可分为固定顺序格式、表格顺序格式和地址程序段格式三种。

地址程序段格式是目前国际上较为通用的一种程序格式。总体来说,在地址程序段格式中代码字的排列顺序没有严格的要求,不需要的代码字可以不写。整个程序的书写相对来说比较自由。其组成程序的最基本的单位称为“字”,每个字由地址字符(英文字母)加上带符号的数字组成。各种指令字组合而成的一行即为程序段,整个程序则由多个程序段组成,即字母+符号+数字→指令字→程序段→程序。

一般来说,一个程序行可按如下形式书写:

程序行中:

N200——N表示程序段顺序号。

G01——G为准备功能字,G01为直线插补。

X120,Y200,Z-150——尺寸功能字。X、Y表示坐标轴,数字表示坐标大小,±表示后跟的数字值有正、负之分,正号可省略,负号不能省略。程序中作为坐标功能字的主要有:作为第一坐标系的字X、Y、Z;平行于X、Y、Z的第二坐标系的字U、V、W;表示圆弧圆心相对位置的坐标字I、J、K;在五轴加工中心上可能还要用到绕X、Y、Z轴旋转的对应坐标字A、B、C等。坐标数值单位由程序指令设定或系统参数设定。

F10——进给功能字。F为进给速度指令字,10表示进给速度,为10mm/min。

S500——主轴功能字。S为主轴转速指令字,500表示主轴的转速,为500r/min。

T8——T为刀具指令字,8表示第8号刀具。

M03——M为辅助功能字,03表示主轴按顺时针旋转。

;——程序段结束符,每一个程序段结束之后,都应加上程序段结束符。不同的数控系统,其程序段结束符有所差别。

从上例可以看出,程序段由顺序号字、准备功能字、尺寸功能字、进给功能字、主轴功能字、刀具功能字、辅助功能字和程序结束符组成,此外还有插补参数字等。每个字都由字母开头,称为“地址”。ISO标准规定的地址含义如表1-1所示。

表1-1 ISO标准规定的地址含义

2. 主程序、子程序及宏程序

数控加工程序可分为主程序和子程序,若一组程序段在一个程序中多次出现,或者在几个程序中都要使用它,为了简化程序,可以把这组程序段抽出来,按规定的格式写成一个新的程序单独存储,以供另外的程序调用,这种程序就称为子程序。子程序的结构同主程序的结构是一样的,主程序执行过程中如果需要调用某一个子程序,可以通过一定的子程序调用指令来调用该子程序,执行完后返回到主程序,继续执行后面的程序段。

宏程序编程是指变量编程法。一般情况下,当需编程的工件的轮廓曲线为椭圆、圆、抛物线等具有一定规律的曲线时,刀具轨迹点X、Y之间具有一定的规律,因此,可以利用变量编程法进行程序的编制。宏指令既可以在主程序体中使用,也可以当做子程序来调用。普通加工程序直接用数值指定G代码加移动距离,例如,G01 X100.0。用户使用宏程序时,数值可以直接指定或用变量指定。当用变量指定时,变量值可用程序或用MDI面板上的操作来进行改变。

1.3.4 数控编程指令

在数控加工程序中,主要有准备功能G指令和辅助功能M指令,以及F、S、T等指令。数控系统不同时,编程指令的功能也有所不同,编程时需参考机床制造厂家的编程说明书。

1. 准备功能G指令

G指令是用来规定刀具和工件的相对运动轨迹(即指令插补功能)、机床坐标系、坐标平面、刀具补偿和坐标偏置等多种加工操作的指令。它由字母G及其后面的两位数字组成,从G00~G99共有100种代码。这些代码中虽然有些常用的准备功能代码的定义几乎是固定的,但也有很多代码其含义及应用格式对不同的数控机床数控系统有着不同的定义,因此,在编程前必须熟悉了解所用数控机床的使用说明书或编程手册。JB3208—1983准备功能G代码见表1-2。

表1-2 准备功能G代码(JB3208—1983)

续表

注:①#号表示如选作特殊用途,必须在程序格式说明中说明。

②如在直线切削控制中没有刀具补偿,则G43至G52可指定作其他用途。

③在表的左栏括号中的字母(d)表示可以被同栏中没有括号的字母d所注销或代替,也可被有括号的字母(d)所注销或代替。

④G45~G52的功能可用于机床上任意两个预定的坐标。

⑤控制机上没有G53~G59、G63功能时,可以指定作其他用途。

G代码有两种:模态代码和非模态代码。

模态代码(续效代码):该代码在一个程序段中被使用后就一直有效,直到出现同组中的其他任一G代码时才失效。

非模态代码(非续效代码):只在有该代码的程序段中有效的代码,程序段结束时被注销。例如:

N010 G90 G00 X16 S600 T01 M03;

N020 G01 X8 Y6 F100;

N030 X0 Y0;

N010程序段中,G90、G00都是续效代码,但它们不属于同一组,故可编在同一程序段中;N020中出现G01,同组中的G00失效,G90不属于同一组,所以继续有效;N030程序段的功能和N020程序段的相同,因为G01是续效代码,继续有效,不必重写。

2. 辅助功能M指令

M指令也是由字母M和两位数字组成。该指令与控制系统插补器运算无关,一般书写在程序段的后面,是加工过程中对一些辅助器件进行操作控制用的工艺性指令。例如,数控机床主轴的启动、停止、变换,冷却液的开关,刀具的更换,部件的夹紧或松开等;在从M00~M99的100种代码中,同样也有些因数控机床系统而异的代码,也有相当一部分代码是不指定的。M指令也有模态(续效)指令与非模态指令之分。JB3208—1983辅助功能M代码见表1-3。

表1-3 辅助功能M代码(JB3208—1983)

续表

注:①#号表示如选作特殊用途,必须在程序说明中说明。

②M90~M99可指定为特殊用途。

1) 程序停止指令(M00)

M00实际上是一个暂停指令。程序运行停止后,模态信息全部被保存,按下机床的“启动”按钮,可使机床继续运转。该指令经常用于加工过程中测量工件的尺寸、工件调头、手动变速等固定操作。

2) 选择停止指令(M01)

该指令的作用和M00相似,但它必须在预先按下操作面板上的“选择停止”按钮并执行到M01指令的情况下,才会停止执行程序。如果不按下“选择停止”按钮,则M01指令无效,程序继续执行。该指令常用于工件的关键性尺寸需停机抽样检查等场合中,当检查完毕后,按“启动”按钮可继续执行以后的程序。

3) 程序结束指令(M02)

当全部程序结束后,此指令可使主轴、进给及切削液全部停止,并使机床复位。

4) 与主轴有关的指令(M03、M04、M05)

M03表示主轴正转,M04表示主轴反转。所谓主轴正转,是从主轴向Z轴正向看,主轴顺时针转动;而反转时,观察到的转向则相反。M05表示主轴停止,它是在该程序段其他指令执行完后才执行的。

5) 换刀指令(M06)

M06是手动或自动换刀指令。它不包括刀具选择功能,常用于加工中心换刀前的准备工作。

6) 与切削液有关的指令(M07、M08、M09)

M07、M08为切削液开,M09为切削液关。

7) 运动部件夹紧与松开(M10、M11)

M10为运动部件的夹紧,M11为运动部件的松开。

8) 程序结束指令(M30)

M30与M02基本相同,但M30能自动返回程序起始位置,为加工下一个工件做好准备。

3. F、S、T指令

1) 进给速度指令(F)

进给速度指令用字母F及其后面的若干位数字来表示,单位为mm/min或mm/r。例如,F150表示进给速度为150mm/min。

2) 主轴转速指令(S)

主轴转速指令用字母S及其后面的若干位数字来表示,单位为r/min。例如,S300表示主轴转速为300r/min。

3) 刀具号指令(T)

在自动换刀的数控机床中,该指令用于选择所需的刀具号和刀补号。刀具用字母T及其后面的两位或四位数字表示。如T06表示6号刀具,T0602表示6号刀具,选用2号刀补。

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

我要反馈