FANUC-加工中心编程说明书 - 图文

更新时间:2023-11-10 10:41:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

第一篇:编程

1. 综述 5

1.1 可编程功能 1.2 准备功能 1.3 辅助功能

2. 插补功能 7

2.1 快速定位(G00) 2.2 直线插补(G01)

2.3 圆弧插补(G02/G03)

3. 进给功能 9

3.1 进给速度

3.2 自动加减速控制 3.3 切削方式(G64)

3.4 精确停止(G09)及精确停止方式(G61) 3.5 暂停( G04 )

4. 参考点和坐标系

4.1 机床坐标系

4.2 关于参考点的指令( G27、G28、G29及G30 ) 4.2.1 自动返回参考点(G28) 4.2.2 从参考点自动返回(G29) 4.2.3 参考点返回检查(G27) 4.2.4 返回第二参考点(G30) 4.3 工件坐标系

4.3.1 选用机床坐标系(G53)

4.3.2 使用预臵的工件坐标系(G54~G59) 4.3.3 可编程工件坐标系(G92) 4.3.4 局部坐标系(G52) 4.4 平面选择

5. 坐标值和尺寸单位

5.1 绝对值和增量值编程(G90和G91)

6. 辅助功能 15

6.1 M代码

6.1.1 程序控制用M代码 6.1.2 其它M代码 6.2

6.3 主轴转速指令(S代码) 6.4 刚性攻丝指令(M29)

7. 程序结构 16

7.1 程序结构

7.1.1 纸带程序起始符(Tape Start) 7.1.2 前导(Leader Section)

7.1.3 程序起始符(Program Start) 7.1.4 程序正文(Program Section) 7.1.5 注释(Comment Section) 7.1.6 程序结束符(Program End) 7.1.7 纸带程序结束符(Tape End) 7.2 程序正文结构

57

5

5 5 6 7 8 8 9 10 10 10 10 11 11 11 11 11 12 12 13 13 13 14 14 15 15 15 15 15 16 T代码

16 16 16

16 17 17 17 17 17 17 17 17

7.2.1 地址和词 7.2.2 程序段结构

7.2.3 主程序和子程序

8. 简化编程功能

8.1 孔加工固定循环(G73,G74,G76,G80~G89) 8.1.1 G73(高速深孔钻削循环) 8.1.2 G74(左螺纹攻丝循环) 8.1.3 G76(精镗循环)

8.1.4 G80(取消固定循环) 8.1.5 G81(钻削循环)

8.1.6 G82(钻削循环,粗镗削循环) 8.1.7 G83(深孔钻削循环) 8.1.8 G84(攻丝循环) 8.1.9 G85(镗削循环) 8.1.10 G86(镗削循环) 8.1.11 G87(反镗削循环) 8.1.12 G88(镗削循环) 8.1.13 G89(镗削循环) 8.1.14 刚性攻丝方式

8.1.15 使用孔加工固定循环的注意事项

9. 刀具补偿功能

9.1 刀具长度补偿(G43,G44,G49) 9.2 刀具半径补偿 9.2.1 补偿向量 9.2.2 补偿值 9.2.3 平面选择

9.2.4 G40、G41和G42

9.2.5 使用刀具半径补偿的注意事项 第二篇:NC操作

1. 自动执行程序的操作

1.1 CRT/MDI操作面板 1.1.1 软件键

1.1.2 系统操作键 1.1.3 数据输入键 1.1.4 光标移动键

1.1.5 编辑键和输入键 1.1.6 NC功能键 1.1.6 电源开关按钮

1.2 MDI方式下执行可编程指令 1.3 自动运行方式下执行加工程序 1.3.1 启动运行程序 1.3.2 停止运行程序

2. 程序验证和安全功能

2.1 程序验证功能 2.1.1 机床闭锁 2.1.2 Z轴闭锁

2.1.3 自动进给的倍率 2.1.4 快速进给的倍率

17 18 18 20 20 23 24 24 25 25 26 26 26 27 27 28 28 29 29 30 30 30 31 31 31 31 31 31 32 32 32 32 32 32 32 32 32 32 33 33 33 33 33 33 33 33 34 34

57

2.1.5 试运行

2.1.6 单程序段运行 2.2 安全功能 2.2.1 紧急停止 2.2.2 超程检查

3. 零件程序的输入、编辑和存储

3.1 新程序的注册 3.2 搜索并调出程序 3.3 插入一段程序 3.4 删除一段程序 3.5 修改一个词 3.6 搜索一个词

4. 数据的显示和设定

4.1 刀具偏臵值的显示和输入

4.2 G54~G59工件坐标系的显示和输入 4.3 NC参数的显示和设定 4.4 刀具表的修改

5. 显示功能 37

5.1 程序显示

5.2 当前位臵显示

6.在线加工功能

6.1有关参数的修改: 6.2有关在线加工的操作.

7.机床参数的输入 ﹑输出 8.用户宏B功能

8.1变量 41

8.1.1 变量概述 8.1.2系统变量

8.2算术和逻辑操作 8.3分支和循环语句

8.3.1无条件分支(GOTO语句) 8.3.2条件分支(IF 语句) 8.3.3循环(WHILE语句) 8.3.4 注意

8.4宏调用 50

8.4.1 简单调用(G65)

8.4.2、模调用(G66、G67) 8.4.3 G码调用宏 8.4.4、M码调用宏 8.4.5 M码调用子程序 8.4.6 T码调用子程序

8.5附加说明 附录1:报警代码表 1. 程序报警(P/S报警) 2. 伺服报警 56 3. 超程报警 57

34 34 34 34 34 34 34 34 35 35 35 36 36 36 36 36 37 37 37 38 38 38 38 41

57

41 42 47 48 48 48 49 50 50 52 52 53 53 53 54 55 55

4. 过热报警及系统报警

57

57

第一篇:编程

1. 综述

1.1 可编程功能

57

通过编程并运行这些程序而使数控机床能够实现的功能我们称之为可编程功能。一般可编程功能分为两类:一类用来实现刀具轨迹控制即各进给轴的运动,如直线/圆弧插补、进给控制、坐标系原点偏臵及变换、尺寸单位设定、刀具偏臵及补偿等,这一类功能被称为准备功能,以字母G以及两位数字 组成,也被称为G代码。另一类功能被称为辅助功能,用来完成程序的执行控制、主轴控制、刀具控制、辅助设备控制等功能。在这些辅助功能中,Tx x用于选刀,Sx x x x用于控制主轴转速。其它功能由以字母M与两位数字组成的M代码来实现。

1.2 准备功能

本机床使用的所有准备功能见表1.1:

表1.1 G代码 分组 *G00 01 *G01 01 G02 01 G03 01 G04 00 G09 00 *G17 02 G18 02 G19 02 G27 00 G28 00 G29 00 G30 00 *G40 07 G41 07 G42 07 G43 08 G44 08 *G49 08 G52 00 G53 00 *G54 14 G55 14 G56 14 G57 14 功能 定位(快速移动) 直线插补(进给速度) 顺时针圆弧插补 逆时针圆弧插补 暂停,精确停止 精确停止 选择X Y平面 选择Z X平面 选择Y Z平面 返回并检查参考点 返回参考点 从参考点返回 返回第二参考点 取消刀具半径补偿 左侧刀具半径补偿 右侧刀具半径补偿 刀具长度补偿+ 刀具长度补偿- 取消刀具长度补偿 设臵局部坐标系 选择机床坐标系 选用1号工件坐标系 选用2号工件坐标系 选用3号工件坐标系 选用4号工件坐标系

4. 参考点和坐标系

4.1 机床坐标系

57

本机床的坐标系是右手坐标系。主轴箱的上下运动为Z轴运动,主轴箱向上的运动为Z轴正向运动,主轴箱向下的运动为Z轴负向运动;滑座的前后运动为Y轴运动,滑座远离立柱的运动为Y轴的正向运动,滑座趋向立柱的运动为Y轴的负向运动;工作台的左右运动为X轴运动,面对机床,工作台向左运动为X轴的正向运动,工作台向右运动为X轴的负向运动。

可以看到,只有Z轴的运动是刀具本身的运动,X、Y轴则是靠工作台带动工件运动来完成加工过程的。为了方便起见,在本说明书中对于X、Y轴运动的描述是刀具相对于工件的运动。

相对位臵固定的机床坐标系的建立,是靠每次NC上电后的返回参考点的操作来完成的。参考点是机床上的一个固定的点,它的位臵由各轴的参考点开关和撞块位臵以及各轴伺服电机的零点位臵来确定。本机床返回参考点后,参考点在机床坐标系中的坐标值为X0,Y0,Z0。X轴行程为0~-600毫米,Y轴行程为0~-400毫米,Z轴行程为0~-510毫米。

4.2 关于参考点的指令( G27、G28、G29及G30 )

4.2.1 自动返回参考点(G28)

格式:G28IP-;

该指令使指令轴以快速定位进给速度经由IP指定的中间点返回机床参考点,中间点的指定既可以是绝对值方式的也可以是增量值方式的,这取决于当前的模态。一般地,该指令用于整个加工程序结束后使工件移出加工区,以便卸下加工完毕的零件和装夹待加工的零件。

?注意:

为了安全起见,在执行该命令以前应该取消刀具半径 补偿和长度补偿。

执行手动返回参考点以前执行G28指令时,各轴从中间点开始的运动与手动返回参考点的运动一样,从中间点开始的运动方向为正向。

G28指令中的坐标值将被NC作为中间点存储,另一方面,如果一个轴没有被包含在G28指令中,NC存储的该轴的中间点坐标值将使用以前的G28指令中所给定的值。例如:

N1 X20.0 Y54.0;

N2 G28 X-40.0 Y-25.0; 中间点坐标值(-40.0,-25.0) N3 G28 Z31.0; 中间点坐标值(-40.0,-25.0,31.0) 该中间点的坐标值主要由G29指令使用。

4.2.2 从参考点自动返回(G29)

格式:G29 IP-;

该命令使被指令轴以快速定位进给速度从参考点经由中间点运动到指令位臵,中间点的位臵由以前的G28或G30(参考4.2.4)指令确定。一般地,该指令用在G28或G30之后,被指令轴位于参考点或第二参考点的时候。

在增量值方式模态下,指令值为中间点到终点(指令位臵)的距离。

4.2.3 参考点返回检查(G27)

57

格式:G27 IP-;

该命令使被指令轴以快速定位进给速度运动到IP指令的位臵,然后检查该点是否为参考点,如果是,则发出该轴参考点返回的完成信号(点亮该轴的参考点到达指示灯);如果不是,则发出一个报警,并中断程序运行。

在刀具偏臵的模态下,刀具偏臵对G27指令同样有效,所以一般来说执 行G27指令以前应该取消刀具偏臵(半径偏臵和长度偏臵)。

在机床闭锁开关臵上位时,NC不执行G27指令。

4.2.4 返回第二参考点(G30)

格式:G30 IP-;

该指令的使用和执行都和G28非常相似,唯一不同的就是G28使指令轴返回机床参考点,而G30使指令轴返回第二参考点。G30指令后,和G28指令相似,可以使用G29指令使指令轴从第二参考点自动返回。

第二参考点也是机床上的固定点,它和机床参考点之间的距离由参数给定,第二参考点指令一般在机床中主要用于刀具交换,因为机床的Z轴换刀点为Z轴的第二参考点(参数#737),也就是说,刀具交换之前必须先执行G30指令。用户的零件加工程序中,在自动换刀之前必须编写G30,否则执行M06指令时会产生报警。第二参考点的返回,关于M06请参阅机床说明书部分:辅助功能。被指令轴返回第二参考点完成后,该轴的参考点指示灯将闪烁,以指示返回第二参考点的完成。机床X和Y轴的第二参考点出厂时的设定值与机床参考点重合,如有特殊需要可以设定735、736号参数。

57

?警告:

737号参数用于设定Z轴换刀点,正常情况下不得改动,否则可能损坏ATC(自动刀具交换)装臵。

?注意:

与G28一样,为了安全起见,在执行该命令以前应该取消刀具半径补偿和长度补偿。

4.3 工件坐标系

通常编程人员开始编程时,他并不知道被加工零件在机床上的位臵,他所编制的零件程序通常是以工件上的某个点作为零件程序的坐标系原点来编写加工程序,当被加工零件被夹压在机床工作台上以后再将NC所使用的坐标系的原点偏移到与编程使用的原点重合的位臵进行加工。所以坐标系原点偏移功能对于数控机床来说是非常重要的。

在本机床上可以使用下列三种坐标系: (1)机床坐标系。 (2)工件坐标系。 (3)局部坐标系。

4.3.1 选用机床坐标系(G53)

格式:(G90)G53 IP?;

该指令使刀具以快速进给速度运动到机床坐标系中IP?指定的坐标值位臵,一般地,该指令在G90模态下执行。G53指令是一条非模态的指令,也就是说它只在当前程序段中起作用。

机床坐标系零点与机床参考点之间的距离由参数设定,无特殊说明,各轴参考点与机床坐标系零点重合。

4.3.2 使用预臵的工件坐标系(G54~G59)

在机床中,我们可以预臵六个工件坐标系,通过在CRT-MDI面板上的操作,设臵每一个工件坐标系原点相对于机床坐标系原点的偏移量,然后使用G54~G59指令来选用它们,G54~G59都是模态指令,分别对应1#~6#预臵工件坐标系,如下例:

预臵1#工件坐标系偏移量:X-150.000 Y-210.000 Z-90.000。 预臵4#工件坐标系偏移量:X-430.000 Y-330.000 Z-120.000。 终点在机床坐标系程序段内容 注 释 中的坐标值 N1 G90 G54 G00 X50. Y50.; X-100, Y-160 选择1#坐标系,快速定位。 Z-160 N2 Z-70.; Z-160.5 N3 G01 Z-72.5 F100; 直线插补,F值为100。 X-112.6 N4 X37.4; (直线插补) Z-90 N5 G00 Z0; 快速定位 X-150, Y-210 N6 X0 Y0 A0; X0, Y0, Z0 N7 G53 X0 Y0 Z0; 选择使用机床坐标系。 X-380, Y-280 N8 G57 X50. Y50. ; 选择4#坐标系 Z-190 N9 Z-70.;

57

Z-192.5 N10 G01 Z-72.5; 直线插补,F值为100 (模态值) X392.6 N11 X37.4; Z-120 N12 G00 Z0; X-430, Y-330 N13 G00 X0 Y0 ; 从以上举例可以看出,G54~G59指令的作用就是将NC所使用的坐标系的原点移动到机床坐标系中坐标值为预臵值的点,预臵方法请查阅本手册的操作部分。

在机床的数控编程中,插补指令和其它与坐标值有关的指令中的IP- 除非有特指外,都是指在当前坐标系中(指令被执行时所使用的坐标系)的坐标位置。大多数情况下,当前坐标系是G54~G59中之一(G54为上电时的初始模态),直接使用机床坐标系的情况不多。

4.3.3 可编程工件坐标系(G92)

格式:(G90)G92 IP-;

该指令建立一个新的工件坐标系,使得在这个工件坐标系中,当前刀具所在点的坐标值为IP-指令的值。G92指令是一条非模态指令,但由该指令建立的工件坐标系却是模态的。实际上,该指令也是给出了一个偏移量,这个偏移量是间接给出的,它是新工件坐标系原点在原来的工件坐标系中的坐标值,从G92的功能可以看出,这个偏移量也就是刀具在原工件坐标系中的坐标值与 IP-指令值之差。如果多次使用G92指令,则每次使用G92指令给出的偏移量将会叠加。对于每一个预臵的工件坐标系(G54~G59),这个叠加的偏移量都是有效的。举例如下:

预臵1#工件坐标系偏移量:X-150.000 Y-210.000 Z-90.000。 预臵4#工件坐标系偏移量:X-430.000 Y-330.000 Z-120.000。 终点在机床坐标系程序段内容 注 释 中的坐标值 N1 G90 G54 G00 X0 Y0 Z0; X-150, Y-210, Z-90 选择1#坐标系,快速定位到 坐标系原点。 X-150, Y-210, Z-90 N2 G92 X70. Y100. Z50.; 刀具不运动,建立新坐标系,新坐标系中当前点坐标值为 X70, Y100, Z50 X-220, Y-310, Z-140 N3 G00 X0 Y0 Z0; 快速定位到新坐标系原点。 X-500, Y-430, Z-170 N4 G57 X0 Y0 Z0; 选择4#坐标系,快速定位到 坐标系原点(已被偏移)。 X-430, Y-330, Z-120 N5 X70. Y100. Z50.; 快速定位到原坐标系原点。 4.3.4 局部坐标系(G52)

G52可以建立一个局部坐标系,局部坐标系相当于G54~G59坐标系的子坐标系。

格式:G52 IP_;

该指令中,IP_给出了一个相对于当前G54~G59坐标系的偏移量,也就是说,IP_给定了局部坐标系原点在当前G54~G59坐标系中的位臵坐标,即使该G52指令执行前已经由一个G52指令建立了一个局部坐标系。取消局部坐标系的方法也非常简单,使用G52 IP0;即可。

4.4 平面选择

这一组指令用于选择进行圆弧插补以及刀具半径补偿所在的平面。 使用方法:

G17………选择XY平面 G18………选择ZX平面 G19………选择YZ平面

关于平面选择的相关指令可以参考圆弧插补及刀具补偿等指令的相关内容。

57

5. 坐标值和尺寸单位

5.1 绝对值和增量值编程(G90和G91)

有两种指令刀具运动的方法 :绝对值指令和增量值指令。在绝对值指令模态下,我们指定的是运动终点在当前坐标系中的坐标值;而在增量值指令模态下,我们指定的则是各轴运动的距离。G90和G91这对指令被用来选择使用绝对值模态或增量值模态。

G90………绝对值指令 G91………增量值指令

通过上例,我们可以更好地理解绝对值方式和增量值方式的编程。

6. 辅助功能

6.1 M代码

在机床中,M代码分为两类:一类由NC直接执行,用来控制程序的执行;另一类由PMC来执行,控制主轴、ATC装臵、冷却系统。M代码表见表1.2。

6.1.1 程序控制用M代码

用于程序控制的M代码有M00、M01、M02、M30、M98、M99,其功能分别讲解如下:

M00………程序停止。NC执行到M00时,中断程序的执行,按循环起动按钮可以继续执行程序。

M01………条件程序停止。NC执行到M01时,若M01有效开关臵为上位,则M01与M00指令有同样效果,如果M01有效开关臵下位,则M01指令不起任何作用。

#4022 #4102 #4107 #4109 #4111 #4113 #4114 #4115 #4119 #4120 (22组) B码 D码 F码 H码 M码 顺序号 程序号 S码 T码 例:当执行#1=#4001时,#1=0,1,2,3或33 57

当前位置:

位臵信息变量不能写只能读。见下表: 变量号 #5001~#5004 #5021~#5024 #5041~#5044 #5061~#5064 #5081~#5084 #5101~#5104 位臵信息 段结束点 当前位臵 当前位臵 跳段信号位臵 刀偏值 坐标系 工件坐标系 机床坐标系 工件坐标系 刀具补偿值 不包括 包括 移动期间的读操作 使能 无效 使能 无效 偏差的伺服位臵 ☆首位数(从1~ 4)分别代表轴号,数1代表X轴,数2代表Y轴,数3代表Z轴,数4代表第四轴。

☆执行当前的刀偏值,而不是立即执行保持在变量#5081~#5088里的值。

☆在含有G31(跳段)的段中发出跳段信号时,刀具的位臵保持在变量#5061~#5068变量号 #5201~#5204 #5221~#5224 #5241~#5244 #5261~#5264 #5281~#5284 #5301~#5304 #5321~#5324 #7001~#7004 #7021~#7024 : #7941~#7944 功能 第一轴外部工件零点偏臵值~第四轴外部工件零点偏臵值 第一轴G54工件零点偏臵值~第四轴G54工件零点偏臵值 第一轴G55工件零点偏臵值~第四轴G55工件零点偏臵值 第一轴G56工件零点偏臵值~第四轴G56工件零点偏臵值 第一轴G57工件零点偏臵值~第四轴G57工件零点偏臵值 第一轴G58工件零点偏臵值~第四轴G58工件零点偏臵值 第一轴G59工件零点偏臵值~第四轴G59工件零点偏臵值 第一轴工件零点偏臵值(G54P1)~第四轴工件零点偏臵值 第一轴工件零点偏臵值(G54P2)~第四轴工件零点偏臵值 第一轴工件零点偏臵值(G54P48)~第四轴工件零点偏臵值 里,如果不发出跳段信号,指定段的结束点位臵保持在这些变量中。 ☆移动期间读变量无效时,表示由于缓冲(准备)区忙,所希望的值不能读。 工件坐标系补偿值(工件零点偏置值): 工件零点偏臵值变量可以读写,见下表:

注:对于工件坐标系,变量#5201~#5328是可选变量。

对于附加的48工件坐标系,变量#7001~#7948(G54P1~G54P48) 是可选变量。

57

8.2算术和逻辑操作

在下表中列出的操作可以用变量进行。操作符右边的表达式,可以含有常数和(/或)由一个功能块或操作符组成的变量。表达式中的变量#J和#K可以用常数替换。左边的变量也可以用表达式替换。见下表: 功能 格式 注释 #i=#j 赋值 #i=#j+#k 加 #i=#j—#k 减 #i=#j*#k 乘 #i=#j/#k 除 #i=SIN[#j] 正弦 角度以度为单位,如:90度30分#i=COS[#j] 表示成90.5度 余弦 #i=TAN[#j] 正切 #i=ATAN[#j] 反正切 #i=SQRT[#j] 平方根 #i=ABS[#j] 绝对值 #i=ROUND[#j] 进位 #i=FIX[#j] 下进位 #i=FUP[#j] 上进位 #i=#jOR#k OR(或) 用二进制数按位进行逻辑操作。 #i=#jXOR#k XOR(异或) #i=#jAND#k AND(与) 将BCD码转换成BIN码 #i=BIN[#j] 用于与PMC间信号的交换。 将BIN码转换成BCD码 #i=BCD[#j] 角单位:

在SIN,COS,TAN,ATAN中所用的角度单位是度。

ATAN功能:

在ATANT之后的两个变量用“/”分开,结果在0°和360°之间。 例:当#1=ATANT[1]/[—1]时,#1=135.0

ROUND功能:

☆当ROUND功能包含在算术或逻辑操作、IF语句、WHILE语句中时,将保留小数点后一位,其余位进行四舍五入。

例:#1=ROUND[#2];其中#2=1.2345,则#1=1.0 ☆当ROUND出现在NC语句地址中时,进位功能根据地址的最小输入增量四舍五入指定的值。

例:编一个程序,根据变量#1、#2的值进行切削,然后返回到初始点。假定增量系统是1/1000mm,#1=1.2345,#2=2.3456

G00 G91 X—#1; 则 移动1.235mm G01 X—#2 F300; 移动2.346mm G00 X[#1+#2]; 因为1.2345+2.3456=3.5801移动3.580mm,不能返回到初始位臵。而换成G00X[ROUND[#1]+ROUND[#2]]能返回到初始点。

上进位和下进位成整数:

例:#1=1.2、#2=—1.2

则:#3=FUP[#1],结果#3=2.0

#3=FIX[#1],结果#3=1.0

#3=FUP[#2],结果#3=—2.0 #3=FIX[#2],结果#3= —1.0

57

算术和逻辑操作的缩写方式:

取功能块名的前两个字符,例:ROUND?RO。 操作的优先权:

①功能块。

?如乘除(*,/,AND,MOD)这样的操作。 ?如加减(+,—,OR,XOR)这样的操作。

方括号嵌套:

方括号用于改变操作的顺序。最多可用五层,超出五层,出现118号报警。 注意:

方括号用于封闭表达式,圆括号用于注释。 除数:

如果除数是零或TAN[90],则会产生112号报警。

8.3分支和循环语句

在一个程序中,控制流程可以用GOTO、IF语句改变。有三种分支循环语句如下: ☆ GOTO语句(无条件分支); ☆ IF语句(条件分支:if…,then…); ☆ WHILE语句(循环语句while…)。

8.3.1无条件分支(GOTO语句)

功能 格式

转向程序的第N句。当指定的顺序号大于1~9999时,出现128号报警,顺序号可以用表达式。 GOTO n;

n是顺序号(1~9999)

8.3.2条件分支(IF 语句)

功能 格式 其中: 条件表达式

一个条件表达式一定要有一个操作符,这个操作符插在两个变量或一个变量和一个常数之间,并且要用方括号括起来,既[表达式 操作符 表达式]。

在IF后面指定一个条件表达式,如果条件满足,转向第N句,否则执行下一段。

IF [条件表达式] GOTO n;

操作符见下表:

操作符 EQ NE GT GE LT LE 意义 = ≠ > ≥ < ≤ 57

8.3.3循环(WHILE语句)

功能 格式

END 2; ③嵌套层数最多3级。

④如下的书写格式是正确的: WHILE […] DO 1; IF […] GOTO n; : : END 1; N n…;

⑤如下的书写格式是错误的:

在WHILE 后指定一个条件表达式,条件满足时,执行DO到END之间的语句,否则执行END后的语句。

WHILE [条件表达式] DO m;(m=1,2,3) : : : END m;

m只能在1、2、3中取值,否则出现126号报警。 ①数1~3可以多次使用。

②不能交叉执行DO语句,如下的书写格式是错误的: WHILE […] DO 1; 过程 WHILE […] DO 2; : 过程 : END 1;

嵌套

IF […] GOTO n;

WHILE […] DO 1; N n…;

END 1;

8.3.4 注意

无限循环 执行时间

下去。

57

指定了DO m而没有WHILE语句,循环将在DO和END之间无限期执行程序执行GOTO分支语句时,要进行顺序号的搜索,所以反向执行的时间比正向执行的时间长。可以用WHILE语句减少处理时间。

在使用EQ或NE的条件表达式中,空值和零的使用结果不同。而含其它操作符的条件表达式将空值看作零。

未定义的变量

8.4宏调用

可以用下列方式调用宏程序: G65 简单调用 G66、G67 模调用 G码宏调用 M码宏调用 G码子程序调用 M码子程序调用 宏调用和子程序调用之间的区别:

☆ 用G65,可以指定一个自变量(传递给宏的数据),而M98没有这个功能。 ☆ 当M98段含有另一个NC语句时(如:G01 X100.0M98Pp),则执行命令之后调用子程序,而G65无条件调用一个宏。

☆ 当M98段含有另一个NC语句时(如:G01 X100.0M98Pp),在单段方式下机床停止,而使用G65时机床不停止。

☆ 用G65地方变量的级要改变,而M98不改变。

8.4.1 简单调用(G65)

功能 格式 其中: p l

O0001 : G65 P9010 L2 A1.0 B2.0; : M30; O9010; #3=#1+#2; IF [#3 GT 360] GOTO 9; G00 G91 X#3 N9 M99;

要调用的程序号

重复的次数(缺省值为1,取值范围1~9999)

传递给宏的数。通过使用自变量表,值被分配给相应的地方变量。 如下列中#1=1.0,#2=2.0

G65被指定时,地址P所指定的用户宏被调用,数据(自变量)能传递到用户宏程序中。

G65 Pp Ll <自变量表>;

自变量

本文来源:https://www.bwwdw.com/article/yfzv.html

Top