1.概要
1.1字符集
本系统编程中能够使用的字符如下:
数字字符:0 1 2 3 4 5 6 7 8 9
字母字符:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
特殊字符:+ - ;/ 空格 . ( )
本系统编程中,小写英文字母与大写英文字母所表示的意义相同。
1.2字
所谓字,就是字母(地址)后接一个相应的数据的组合体,它是组成程序的最基本单位。
例如:G00,M05,T84,G01,X17.88等。
1.3代码与数据
代码和数据的输入形式如下:
A*:指定加工锥度,其后接一十进制数。
C***:加工条件号,如C007,C105。
D/H***:补偿代码,从H000~H099共有100个。可给每个代码赋值,范围为±99999.999mm 或±9999.9999英寸。
G**:准备功能,可指令插补、平面、坐标系等。如G00、G17、G54。
I*,J*,K*:表示圆弧中心坐标,数据范围为±99999.999mm或±9999.9999英寸。如I5. J10。
L*:子程序重复执行次数,后接1~3位十进制数,最多为999次,如L5,L99。
M**:辅助功能代码,如M00,M02,M05。
N****/O****:程序的顺序号,最多可有一万个顺序号。如N0000,N9999等。
P****:指定调用子程序的序号,如P0001,P0100。
R:转角R功能。后接的数据为所插圆弧的半径,最大为99999.999mm。
SF:变换加工条件中的SF的值,其后接一位十进制数。
T**:表示一部分机床控制功能。如T84,T85。
X*,Y*,Z*,U*,V*,W*:坐标值代码,指定坐标移动值,数据范围为±99999.999mm 或±9999.9999英寸。
1.4坐标系
本系统中有两种坐标系,绝对坐标系和增量坐标系。所谓绝对坐标系,即每一点的坐标值都是以所选坐标系原点为参考点而得出的值。所谓增量坐标系,则是指当前点的坐标值是以上一个
点为参考点而得出的值。见右下图,从A(5.,5.)点加
工到B(15.,10.)点,不同坐标方式的程序如下:绝对坐标:G90 G01 X15. Y10.;
增量坐标:G91 G01 X10. Y5.;
1.5注释
在自动生成的程序中,会有一些用()括起来的字符,一般为NC程序的注释部分,并非执行对象,仅对
该段程序进行说明。例如:y
(Main Program);……………………注释
G90 G92 X0 Y0;
M98 P0010;
G05; (X Mirror Image ON);………注释┆
(Sub program);…………………………注释┆
利用括号的这一功能,可以将程序中不需要执行的部分括起来,同时不破坏原程序。
2.段
所谓段,就是由一个地址或符号“/”开始,以“;”结束的一行程序。一个NC程序由若干个段组合而成。一个段内有如下约束:
1)若在一段内含有两个或多个轴,依据代码,可同时处理。
2)在一个段内不能有多个运动代码,否则将出错。
例如: G00 X10. G01 Y-10.;………一个段内有G00和G01则出错。
应为: G00 X10.;
G01 Y-10.;
3)在一个段内不能有相同的轴标识,否则将出错。
例如:G01 X10. Y20. X40.;……一个段内有两个X轴标识则出错。
3.顺序号
所谓顺序号,就是加在每个程序段前的编号,可以省略。顺序号用N或O开头,后接四位十进制数,以表示各段程序的相对位置,这对查询一个特定程序很方便,使用顺序号有以下两种目的:
1)用作程序执行过程中的编号;
2)用作调用子程序时的标记编号。
注:N9140、N9141、N9142……N9165是固循子程序号,用户在编程中不得使用这些顺序号,但可以调用这些固循子程序。
4.段跳过指令“/”
当在设定标识模式中,“SKIP”的状态为ON(打开跳转),或者执行了G11代码时,在段首设有“/”标识的程序段将不执行,即自动跳过该程序段。当“SKIP”为OFF(关闭跳转),或者执行了G12代码时,则执行该程序段。“/”只能位于段首。m98调用子程序格式
例如: G90 G54 G92 X0 Y0 Z0;
G12;
G42 H0190;
M98 P0030;
G11;
G41 H0136;
M98 P0030;
M02;
;
N0030;
/G01 Z-1.;……该程序段在第二次调用时不执行,因为主程序中有代码“G11”
G01 X-15. Y-30.;
X15. Y-30.;
G40 X0 Y0;
M99;
5.G代码
G代码大体上可分为两种类型:
1)只对指令所在程序段起作用,称为非模态,如G80、G04等。
2)在同组的其它代码出现前,这个代码一直有效,称为模态。在“代码一览表中”,凡“组”栏目有字母的均为模态代码。在后面的叙述中,如无必要,这一类代码均作省略处理,不再说明。
5.1 G00(定位、移动轴)
格式: G00 {轴1}±{数据1} {轴2}±{数据2};
G00代码为定位指令,用来快速移动轴。执行此指令后,不加工而移动轴到指定的位置。可以是一个轴移动,也可以两轴移动。例如:
G00 X+10. Y-20.;
轴标识后面的数据如果为正,“+”号可以省略,但不能出现空格或其它字符,否则属于格式错误。这一规定也适用于其它代码。例如:
G00 X 10. YA10.;
↑↑
出错,轴标识和数据间有空格或字符
5.2 G01(直线插补加工)
格式: G01 {轴1}±{数据1} {轴2}±{数据2};
用G01代码,可指令各轴直线插补加工,最多可以有四个轴标识及数据。例如:G01 X20. Y60.;
5.3 G02,G03(圆弧插补加工)
格式:{平面指定} {圆弧方向} {终点坐标} {圆心坐标};
用于两坐标平面的圆弧插补加工。平面指定默认值为XOY平面。G02表示顺时针方向加工,G03表示逆时针方向加工。圆心坐标分别用I、J、K表示,它是圆心相对于圆弧起点的坐标增量值。
例如:
G17 G90 G54 G00 X10. Y20.;
C001 G02 X50. Y60. I40.;
G03 X80. Y30. I20.;
I、J有一个为零时可以省略,如此例中的J0。但不能都为零、都省略,否则会出错。
0 10 50 80
5.4 G04(停歇指令)
格式:G04 X{数据};
执行完一段程序之后,暂停一段时间,再执行下一程序段。X后面的数据即为暂停时间,单位为秒,最大值为99999.999秒。例如暂停5.8秒的程序:
公制:G04 X5.8; 或 G04 X5800;
英制:G04 X5.8; 或 G04 X58000;
5.5 G05,G06,G07,G08,G09(轴镜像,X Y轴交换,取消镜像、交换)
这组代码仅在自动方式下,执行程序时起作用。在手动方式下不起作用。
镜像指令:G05定义X轴,G06定义Y轴,G07定义Z轴。
这里所说的镜像,是将原程序中镜像轴的值变号后所得到的图形。例如在XOY平面,X 轴镜像是将X值变号后所得到的图形,它实际上是原图形关于Y轴的对称图形。这与几何中镜像的概念是不同的。
G08:图形X、Y轴交换,即将程序中的X、Y值互换所得到的图形。
G09:取消图形镜像,取消X、Y轴交换。
需要说明的是:
1)执行一个轴的镜像指令后,圆弧插补的方向将改变,即G02变为G03,G03变为G02,如果同时有两轴镜像,则方向不变。
2)执行轴交换指令,圆弧插补的方向将改变,即G02变为G03,G03变为G02。
3)两轴同时镜像,与代码的先后次序无关,即“G05 G06;”与“G06 G05;”的结果相同。
直线插补的镜像图形:
X X
X轴镜像Y轴镜像圆弧插补的镜像图形:
Y Y
G03 G02
G05 X轴镜像
X轴镜像
同时Y轴镜像G02
X X
0 G05 G06 0
G02
G03
G06 Y轴镜像
5.6 G11,G12(跳段)
G11:“跳段ON”,跳过段首有“/”符号的程序段,标识参数画面的SKIP显示ON。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。