数控程序

更新时间:2024-07-02 10:44

数控程序,是为了满足设计、制造、维修和普及的需要,在输入代码、坐标系统,加工指令、辅助功能及程序格式等方面,国际上已经形成了两种通用的标准,即国际标准化组织(ISO)标准和美国电子工业学会(EIA)标准。

特点介绍

为了满足设计、制造、维修和普及的需要,在输入代码、坐标系统,加工指令、辅助功能及程序格式等方面,国际上已经形成了两种通用的标准,即国际标准化组织(ISO)标准和美国电子工业学会(EIA)标准。我国机械工业部根据ISO标准制定了JB3050-82《数字控制机床用七单位编码字符》、 JB3051-1999《数字控制机床坐标和运动方向的命名》、 JB3208-1999《数字控制机床穿孔带程序段格式中的准备功能G和辅助功能M代码》。但由于各个数控机床生产厂家所用的标准尚未完全统一,其所用的代码、指令及其含义不完全相同,因此在编制程序时必须按所用数控机床编程手册中的规定进行。

数控编程人员必须掌握与数控加工相关内容的知识,包括数控加工原理、数控机床及其原理、机床坐标系,数控程序结构和常用数控指令等。

数控加工工艺分析和规划将影响数控加工的加工质量和加工效率,因此,数控加工工艺分析和规划是数控编程的核心内容。主要包括有加工区域的划分和规划,刀轨形式与走刀方式的选择,刀具及机械参数的设置和加工工艺参数的设置。

分类

数控机床程序编制方法有手工编程和自动编程两种。

手工编程是编程员直接通过人工完成零件图工艺分析、工艺和数据处理、计算和编写数控程序、输入数控程序到程序验证整个过程的方法。手工编程非常适合于几何形状不太复杂、程序计算量较少的零件的数控编程。相对而言,手工编程的数控程序较短,编制程序的工作量较少。因此,手工编程广泛用于形状简单的点位加工和直线、圆弧组成的平面轮廓加工中。

自动编程是一种利用计算机辅助编程技术的方法,它是通过专用的计算机数控编程软件来处理零件的几何信息,实现数控加工刀位点的自动计算。对于复杂的零件,特别是具有非圆曲线曲面的加工表面,或者零件的几何形状并不复杂,但是程序编制的工作量很大,或者是需要进行复杂的工艺及工序处理的零件,由于这些零件在编制程序和加工过程中,数值计算非常繁琐,程序量很大,如果采用手工编程往往耗时多、效率低、出错率高,甚至无法完成,这种情况下就必须采用自动编程。

广泛使用的自动编程是CAD/CAM图形交互自动编程,CAD/CAM图形自动编程系统的特点利用CAD软件的图形编辑功能将零件的几何图形绘制到计算机上,在图形交互方式下进行定义、显示和编辑,得到零件的几何模型;然后调用CAM数控编程模板,采用人机交互的方式定义几何体、创建加工坐标系、定义刀具,指定被加工部位,输入相应的加工参数,确定刀具相对于零件表面的运动方式,确定加工参数,生成进给轨迹,经过后置处理生成数控加工程序。整个过程一般都是在计算机图形交互环境下完成的,具有形象、直观和高效的优点。

基本结构

数控程序由程序编号、程序内容和程序结束段组成。例如:

程序编号: 001

程序内容: N001 G92 X40.0 Y30.0 ;

N002 G90 G00 X28.0 T01 S800 M03 ;

N003 G01 X-8.0 Y8.0 F200 ;

N004 X0 Y0 ;

N005 X28.0 Y30.0 ;

N006 G00 X40.0 ;

程序结束段: N007 M02 ;

(1)程序编号

采用程序编号地址码区分存储器中的程序,不同数控系统程序编号地址码不同,如日本FANUC6数控系统采用o作为程序编号地址码;美国的AB8400数控系统采用P作为程序编号地址码;德国的SMK8M数控系统采用%作为程序编号地址码等。

(2)程序内容

程序内容部分是整个程序的核心,由若干个程序段组成,每个程序段由一个或多个指令字构成,每个指令字由地址符和数字组成,它代表机床的一个位置或一个动作,每一程序段结束用“;”号。

(3)程序结束段

以程序结束指令M02或M30作为整个程序结束的符号。

程序段格式

程序段是:为了完成某一动作要求所需功能“字”的组合。每一个字是一个控制机床的具体指令,它由一个英文字母开头,其后跟几个数字构成.是数控加工程序中的一条语句。

一个完整的数控加工程序是若l干个程序段组成的。程序段格式:指程序段中的字、字符和数据的安排形式。

字地址可变程序段格式:每个字长不固定,各个程序段中的长度和功能字的个数都是可变的。

地址可变程序段格式中,在上一程序段中写明的、本程序段里又不变化的那些字仍然有效,可以不再重写。这种功能字称之为续效字。

一般格式为:

(1)程序开始符、结束符

程序开始符、结束符是同一个字符,ISO代码中是%,EIA代码中是EP,书写时要单列一段。

(2)程序名

程序名有两种形式:一种是英文字母O和1~4位正整数组成;另一种是由英文字母开头,字母数字混合组成的。一般要求单列一段。

(3)程序主体

程序主体是由若干个程序段组成的。每个程序段一般占一行。

(4)程序结束指令

程序结束指令可以用M02或M30。一般要求单列一段。

加工程序的一般格式举例:

%  // 开始符

O1000  // 程序名

N10 G00 G54 X50 Y30 M03 S3000

N20 G01 X88.1 Y30.2 F500 T02 M08  // 程序主体

N30 X90

……

N300 M30  // 结束符

%

程序段格式举例:

N30 G01 X88.1 Y30.2 F500 S3000 T02 M08

N40 X90(本程序段省略了续效字“G01,Y30.2,F500,S3000,T02,M08”,但它们的功能仍然有效)

在程序段中,必须明确以下几点的对应关系:

移动目标:终点坐标值;

沿怎样的轨迹移动:准备功能字;

进给速度:进给功能字F;

切削速度:主轴转速功能字S;

使用刀具:刀具功能字T;

机床辅助动作:辅助功能字M。

分隔符固定顺序程序段格式

这种程序段格式是在字与字之间用分隔符“HT”(在EIA代码中用TAB)隔开,而且预先规定了代码字的顺序,因此,根据分隔符出现的顺序,就可判定其功能。不需要的字以及本段程序内与上一段程序内的相同功能的字可省略,但其相应的分隔符必须保留,如下列程序所示。由此可见,这一格式不直观,编程不方便,现已基本上不采用。

00l HT 3162 HT 1630 HT2 HT6 HT1 LF

002 HT 12365 HT HT HT HT LF

003 HT 3162 HT 28621HT 1 HT 5 HT 0 LF

常用指令

功能字也叫程序字或指令,是机床数字控制的专用术语。他的定义一组有规定次序的代码符号,可以作为一个信息单元存贮、传递和操作。

1、坐标字:用来设定机床各坐标的位移量由坐标地址符及数字组成,一般以X、Y、Z、U、V、W等字母开头,后面紧跟“+”或“-”及一串数字。该数字一般以脉冲当量为单位,不使用小数点,如果使用小数表示该数,则基本单位为mm。

2、准备功能字(简称G功能):指定机床的运动方式,为数控系统的插补运算作准备,由准备功能地址符“G”和两位数字所组成,G功能的代号已标准化,一些多功能机床,已有数字大于100的指令。

常用G指令:坐标定位与插补;坐标平面选择;固定循环加工;刀具补偿;绝对坐标及增量坐标等。

3、进给功能字:指定刀具相对工件的运动速度,进给功能字以地址符“F”为首,后跟一串字代码,单位mm/min,在进给速度与主轴转速有关时,如进行车螺纹、攻丝或套扣等加工时,使用的单位还可为mm/r。

三位数代码法:F后跟三位数字,第一位为进给速度的整数位数加“3”,后二位是进给速度的前二位有效数字。如1728mm/min指定为F717。

二位数代码法:F后跟二位数字,规定了与00—99相对应的速度表,除00与99外,数字代码由01向98递增时,速度按等比关系上升,公比为1.12。如F21速度11.2mm/min,F54速度500mm/min。

一位数代码法:对速度档较少的机床F后跟一位数字,即0—9来对应十种预定的速度。

直接指定法:在F后按照预定的单位直接写上要求的进给速度。

4、主轴速度功能字:指定主轴旋转速度,以地址符S为首,后跟一串数字。 数字的意义、分档方法及对照表与进给功能字通用,只是单位为:r/min。

5、刀具功能字:当系统具有换刀功能时,刀具功能字用以选择替换的刀具,以地址符T为首,其后一般跟二位数字,该数代表刀具的编号。

6、辅助功能字:用于机床加工操作时的工艺性指令,以地址符M为首,其后跟二位数字(M00—M99),常用M指令:主轴的转向与启停;冷却液的开与停;指定机械的夹紧与松开;指定工作台等的固定直线与角位移;说明程序停止或纸带结束等。

7、模态指令和非模态指令:G指令和M指令均有模态和非模态指令之分。

模态指令:也称续效指令,按功能分为若干组,表2第2列中标有相同字母的为同组。模态指令一经程序段中指定,便一直有效,直到出现同组另一指令或被其他指令取消时才失效,与上一段相同的模态指令可省略不写。

非模态指令:非续效指令,仅在出现的程序段中有效,下一段程序需要时必须重写(如G04)。

例如:

N001 G91 G01 X10 Y10 Z-2 F150 M03 S1500;

N002 X15;

N003 G02 X20Y20I20 J0;

N004 G90 G00 X0 Y0 Z100 M02;

说明:

1)第一段出现三个模态指令G91、G01、M03,因他们不同组而均续效,其中G91功能延续到第四段出现G90时失效;G01功能在第二段中继续有效,至第三段出现G02时被取消;M03功能直到第四段M02生效时才失效。

2)表2第(3)栏有“*”和表3第(5)栏有“*”者为非模态指令,其功能仅在出现的程序段中有效。

3)表3第(2)栏有“*”的M指令,其功能与同段其他指令的动作同时开始。表3第(3)栏有“*”的M指令,其功能与同段其他指令动作完成后才开始。

标准代码

字与字的功能

1、字符与代码

字符:用来组织、控制或表示数据的一些符号,如数字、字母、标点符号、数学运算符等。数控系统只能接受二进制信息,用“0”和“1”组合的代码来表达。国际上广泛采用两种标准代码:

(1)ISO国际标准化组织标准代码

(2)EIA美国电子工业协会标准代码

在现代大多数数控机床上这两种代码都可以使用。数控机床的零件加工程序,可通过拨码盘、键盘、穿孔纸带、磁带及磁盘等介质输入数控装置中,

ISO代码为补偶代码。ISO代码最多能表示的字符个数为2的7次方,等于128。

EL4代码为补奇代码。在EIA代码中,每行代码孔的个数为奇数;EIA代码最多能表示的字符个数为2的6次方等于64。

从以上对两种代码的比较可知,ISO代码具有信息量大、可靠性高等优点,所以世界各国都采ISO代码;但由于EIA代码发展较早,已有的数控机床中,有一些采用的是EIA代码,也有一些机床既可用ISO代码又可用EIA代码。我国规定新产品一律采用ISO代码。

2、字

字:指一系列按规定排列的字符,作为一个信息单元存储、传递和操作。由一个英文字母与随后的若干位十进制数字组成。这个英文字母称为地址符。

如:“X2500”是一个字,X为地址符,数字“2500”为地址中的内容。

3、字的功能

组成程序段的每一个字都有其特定的功能含义,以下是以FANUC-0M数控系统的规范为主来介绍的,实际工作中,请遵照机床数控系统说明书来使用各个功能字。

(1) 顺序号字N

顺序号字:又称程序段号或程序段序号。顺序号位于程序段之首,由顺序号字N和后续数字组成。顺序号字N是地址符,后续数字一般1~4位正整数。顺序号实际上是程序段的名称。数控系统不是按顺序号的次序来执行程序,而是按照程序段编写时的排列顺序逐段执行。

顺序号的作用:

对程序的校对和检索修改;

作为条件转向的目标,即作为转向目的程序段的名称。

有顺序号的程序段可以进行复归操作,这是指加工可以从程序的中间开始,或回到程序中断处开始。

一般使用方法:编程时将第一程序段冠以N10,以后以间隔10递增的方法设置顺序号,这样,在调试程序时如果需要在N10和N20之间插入程序段时,就可以使用N11、N12。

(2)准备功能字G

准备功能字的地址符是G,又称为G功能或G指令,是建立机床或控制系统工作方式的一种指令。后续数字一般1~3位正整数。

G准备功能图册

(3)尺寸字

尺寸字用于确定机床上刀具运动终点的坐标位置。

第一组 X,Y,Z,U,V,W,P,Q,R 用于确定终点的直线坐标尺寸;

第二组 A,B,C,D,E 用于确定终点的角度坐标尺寸;

第三组 I,J,K 用于确定圆弧轮廓的圆心坐标尺寸。

(4)进给功能字 F

进给功能字的地址符是F,又称为F功能或F指令,用于指定切削的进给速度。

(5)主轴转速功能字 S

主轴转速功能字的地址符是S,又称为S功能或S指令,用于指定主轴转速。

(6)刀具功能字 T

刀具功能字的地址符是T,又称为T功能或T指令,用于指定加工时所用刀具的编号。

(7)辅助功能字 M

辅助功能字的地址符是M,后续数字一般1~3位正整数,又称为M功能或M指令,用于指定数控机床辅助装置的开关动作。

数控坐标系

(一)机床坐标系与工件坐标系

1、机床坐标系的确定

(1)机床相对运动的规定

工件相对静止,而刀具运动。

在机床上,始终认为工件静止,而刀具是运动的。这样编程人员在不考虑机床上工件与刀具具体运动的情况下,就可以依据零件图样,确定机床的加工过程。

(2)机床坐标系的规定

标准机床坐标系中X、Y、Z坐标轴的相互关系用右手笛卡尔直角坐标系决定。

数控机床上,机床的动作是由数控装置来控制的,为了确定数控机床上的成形运动和辅助运动,必须先确定机床上运动的位移和运动的方向,这就需要通过坐标系来实现,这个坐标系被称之为机床坐标系。

例如铣床上,有机床的纵向运动、横向运动以及垂向訩动。在数控加工中就应该用机床坐标系来描述。

2、标准机床坐标系中X、Y、Z坐标轴的相互关系用右手笛卡尔直角坐标系决定:

直角坐标系

1)伸出右手的大拇指、食指和中指,并互为90度。则大拇指代表X坐标,食指代表Y坐标,中指代表Z坐标。

2)大拇指的指向为X坐标的正方向,食指的指向为Y坐标的正方向,中指的指向为Z坐标的正方向。

3)围绕X、Y、Z坐标旋转的旋转坐标分别用A、B、C表示,根据右手螺旋定则,大拇指的指向为X、Y、Z坐标中任意一轴的正向,则其余四指的旋转方向即为旋转坐标A、B、C的正向。

(3)运动方向的规定

增大刀具与工件距离的方向即为各坐标轴的正方向。

(二)机床加工坐标系的设定

1、数控铣床(FANUC0M)加工坐标系的设定步骤

在选择了被加工零件图样,并确定了编程原点位置后,可按以下方法进行加工坐标系设定:

(1)准备工作

机床回参考点,确认机床坐标系;

(2)装夹工件毛坯

通过夹具使零件定位,并使工件定位基准面与机床运动方向一致;

(3)对刀测量

用简易对刀法测量,方法如下: X、Y向对刀方法

用直径为φ10的标准测量棒、塞尺对刀,得到测量值为X , Y ,Z值 。

(4)计算设定值

将前面已测得的各项数据,按设定要求运算。

(5)设定加工坐标系

将开关放在 MDI 方式下,进入加工坐标系设定页面。输入数据为:

X= -392.626 Y= -246.460 Z= -32.033

表示加工原点设置在机床坐标系的X= -392.626 Y= -246.460 Z= -32.033 的位置上。

(6)校对设定值

对于初学者,在进行了加工原点的设定后,应进一步校对设定值,以保证参数的正确性。

校对工作的具体过程如下:在设定了G54加工坐标系后,再进行回机床参考点操作,其显示值为

X +392.626

Y +246.460

Z +32.033

这说明在设定了G54加工坐标系后,机床原点在加工坐标系中的位置为:

X +392.626

Y +246.460

Z +32.033

这反过来也说明G54的设定值是正确的。

2、加工坐标系设定的操作。

3、注意事项

(1)G54~G59设置加工坐标系的方法是一样的,但在实际情况下,机床厂家为了用户的不同需要,在使用中有以下区别:利用G54设置机床原点的情况下,进行回参考点操作时机床坐标值显示为G54的设定值,且符号均为正;利用G55~G59设置加工坐标系的情况下,进行回参考点操作时机床坐标值显示零值。

(2)G92指令与G54~G59指令都是用于设定工件加工坐标系的,但在使用中是有区别的。G92指令是通过程序来设定、选用加工坐标系的,它所设定的加工坐标系原点与当前刀具所在的位置有关,这一加工原点在机床坐标系中的位置是随当前刀具位置的不同而改变的。

(3)G54~G59指令是通过MDI在设置参数方式下设定工件加工坐标系的,一旦设定,加工原点在机床坐标系中的位置是不变的,它与刀具的当前位置无关,除非再通过MDI 方式修改。

(4)本课程所例加工坐标系的设置方法,仅是FANUC系统中常用的方法之一,其余不一一例举。其它数控系统的设置方法应按随机说明书执行。

4、常见错误

当执行程序段G92 X 10 Y 10时,常会认为是刀具在运行程序后到达X 10 Y 10 点上。其实, G92指令程序段只是设定加工坐标系,并不产生任何动作,这时刀具已在加工坐标系中的 X10 Y10点上。

G54~G59指令程序段可以和G00、G01指令组合,如G54 G90 G01 X 10 Y10时,运动部件在选定的加工坐标系中进行移动。 程序段运行后,无论刀具当前点在哪里,它都会移动到加工坐标系中的X 10 Y 10 点上。

编程坐标系

编程坐标系编程人员根据零件图样及加工工艺等建立的坐标系。

编程坐标系一般供编程使用,确定编程坐标系时不必考虑工件毛坯在机床上的实际装夹位置。

编程原点是根据加工零件图样及加工工艺要求选定的编程坐标系的原点。

编程原点应尽量选择在零件的设计基准或工艺基准上,编程坐标系中各轴的方向应该与所使用的数控机床相应的坐标轴方向一致。

程序调试要点

一、车削对刀、车削循环程序的上机调试及应用

(一)目的和要求

1、进一步熟悉数控车床的操作

通过试切对刀、简单车削循环、复合车削循环的程序调试,进一步熟悉数控车床的操作

2、掌握数控车削加工的对刀操作方法及工件坐标系的建立

掌握数控车削试切对刀的基本操作,用G92、G54~G59、Txxxx指令建立工件坐标系的几种方法。

试切外圆作X向对刀,试切端面作Z向对刀;

G92是以当前位置点作为参照点、G54及T指令则是以机床零点作为参照点来建立坐标系的。由于机床原点不会改变,故用G54和T指令比用G92方便。

有多把刀具时使用T指令则更方便。

3、掌握简单车削循环程序的编写规则及其应用

简单循环是指用一个程序行取代多个基本指令程序行功能的简化编程手段,包括以车外圆方式为主的G80和以车端面方式为主的G81。了解掌握指令格式中坐标数据的算法及指令的应用。

简单循环编程仅用于一个台肩的阶梯轴的加工,从棒料到台肩需要多个简单循环程序行。

4、掌握复合车削循环的编程及其在车削加工中的应用

复合循环则是指仅用一个程序行就能实现多个台肩的阶梯轴加工的更为方便的简化编程手段,包括以车外圆方式为主的G71、以车端面方式为主的G72和走固定形状路线的G73。了解掌握它们的编程规则和应用场合。

G71适于车削长轴类,G72适于加工盘类回转零件,G73为等余量粗切方式,适于铸锻半成型毛坯件的车削。

复合循环不是一个孤立的程序行,依赖于精车轮廓的程序数据。

(二)重点和难点

重点:数控车床的坐标系建立方法、复合车削循环编程与应用

难点:数控车床的对刀、简单循环中切削起点坐标的确定、复合循环程序编写规则。

(三)方法和技巧

认真听讲、及时上机练习以帮助消化。

探索各类循环指令编程格式的书写规律,比较异同以增进记忆。

二、铣削对刀、刀补程序的调试

(一)目的和要求

1、掌握数控铣削加工的对刀方法

仅使用一把刀具的铣削对刀,就是通过刀具刀位点(铣刀底面中心)作为媒介建立工件坐标系和机床坐标系坐标数据间的联系。找到刀具在工件坐标中的坐标和同一位置处刀具在机床坐标系中的坐标,即可推算出工件原点在机床坐标系中的坐标,这就是对刀的目的。

对刀的方法主要有寻边、找中,既可用刀具直接对刀,也可借助于电子寻边器对刀。寻边时需要考虑刀具或寻边器的半径大小,找中时可不需考虑。

Z向对刀必须使用刀具直接对刀,可借助固定高度的Z轴设定器来对刀。

2、熟练掌握数控铣床的坐标系建立及设置操作;

建立工件坐标系可用G92或G54~G59指令。

G92是以当前位置点位参照,对程序执行时刀具的当前位置有要求;

G54等是以机床原点为参照点,通过对刀找到工件原点在机床坐标系中的坐标,将该坐标赋给G54既可

3、掌握数控铣削加工中刀具半径补偿编程及应用;

由于刀具刀位点(刀刃底面中心)和刀具切削刃行走的轨迹不重合,两者相差一个刀具半径大小,因而需要考虑刀具半径补偿。

刀径补偿有人工预补偿和机床自动补偿两种方式。人工预刀补编程不具通用性,故可让机床来自动进行刀补运算。

了解刀补的加载、卸载过程及B、C功能刀补算法对合理使用刀补很关键。

4、进一步了解数控铣床的结构组成、加工控制原理;

5、 熟练掌握铣削程序的输入调试过程;

(二)重点和难点

重点:铣削对刀操作、刀具半径补偿编程应用

难点:坐标系构建、机床自动刀具半径补偿的编程规则

(三)学习方法和技巧

重点掌握G54构建工件坐标系的坐标推算方法,则对刀就不难理解。

在工件外或废料区下刀,刀补加、卸载设计在引入、引出直线段内,其它的就直接按轮廓图纸尺寸编程,是刀补编程的总原则。

数控程序员

一、职业概况

1、职业名称

数控程序员

2、职业定义

根据零件的加工要求,以手工或使用计算机辅助制造软件进行数控加工程序编制和工艺编制的人员。

3、职业等级

本职业共设二个等级,分别为:高级(国家职业资格三级)、技师(国家职业资格二级)

4、 职业环境条件

室内、常温。

5、职业能力特征

具有较强的三维空间想象能力,视觉正常、四肢灵活,计算能力强。

6、基本文化程度

高中毕业(或同等学历)

7、培训要求

(1)培训期限

全日制职业学校教育,根据其培养目标和教学计划确定。晋级培训期限:高级不少于190标准学时;技师不少于160标准学时。

(2)培训教师

培训高级的教师应具有本职业技师职业资格证书或本专业(相关专业)中级及以上专业技术职务任职资格,培训技师的教师应具有本职业技师职业资格证书2年以上或本专业(相关专业)高级专业技术职务任职资格。

(3)培训场地设备

理论培训场地应具有可容纳30名学员的标准教室,并配备投影仪和播放设备等通用教学设备。按学员人数配备能够运行计算机辅助设计和辅助制造软件的学生用计算机和教师用计算机;并安装有相应的软件。教学场地通风条件良好、光线充足、安全设施完善。

8、申报条件

—— 高级(具备以下条件之一者)

(1)取得数控车工、数控铣工和加工中心操作工其中之一中级职业资格证书后,连续从事本职业工作4年以上,经本职业高级正规培训达标准学时数,并取得结业证书。

(2)取得数控车工、数控铣工和加工中心操作工其中之一中级职业资格证书的大专及以上本专业或相关专业毕业生,连续从事本职业工作2年以上。

—— 技师(具备以下条件之一者)

(1)取得本职业高级职业资格证书后,连续从事本职业工作2年以上,经本职业技师正规培训达规定标准学时数,并取得结业证书。

(2)取得本职业高级职业资格证书后,连续从事本职业工作4年以上。

9、鉴定方式

分为理论考试和技能操作考核。理论知识考试采用闭卷笔试方式,操作技能采用现场实际操作或模拟操作方式,考试和考核均实行百分制,成绩皆达60分及以上者为合格。技师还须进行综合评审。

免责声明
隐私政策
用户协议
目录 22
0{{catalogNumber[index]}}. {{item.title}}
{{item.title}}