QQ登录

只需一步,快速开始

快捷登录

登录 或者 注册 请先

UG爱好者

查看: 17486|回复: 26
打印 上一主题 下一主题

[经典资料] FANUC O系统操作编程说明书

[复制链接]

少将

Rank: 8Rank: 8

144

主题

713

帖子

2万

积分

论坛技术员论坛元老论坛贡献

跳转到指定楼层
楼主
发表于 2012-6-17 18:09:52 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式
本帖最后由 zhangxianzan 于 2012-6-17 20:00 编辑

第一篇:编程                                                                                                                                5
1.  综述                                                                                                                                           5
1.1  可编程功能                                                                                                                              5
1.2  准备功能                                                                                                                                  5
1.3  辅助功能                                                                                                                                  7
2.  插补功能                                                                                                                                   7
2.1  快速定位(G00                                                                                                                   7
2.2  直线插补(G01                                                                                                                   8
2.3  圆弧插补(G02/G03                                                                                                           9
3.  进给功能                                                                                                                                 10
3.1  进给速度                                                                                                                                10
3.2  自动加减速控制                                                                                                                    10
3.3  切削方式(G64                                                                                                                 10
3.4  精确停止(G09)及精确停止方式(G61)                                                                                 11
3.5  暂停( G04 )                                                                                                                             11
4.  参考点和坐标系                                                                                                                    11
4.1  机床坐标系                                                                                                                            11
4.2  关于参考点的指令( G27G28G29G30 )                                                                   11
4.2.1  自动返回参考点(G28                                                                                                 11
4.2.2  从参考点自动返回(G29                                                                                             12
4.2.3  参考点返回检查(G27                                                                                                 12
4.2.4  返回第二参考点(G30                                                                                                 12
4.3  工件坐标系                                                                                                                            13
4.3.1  选用机床坐标系G53                                                                                                 13
4.3.2  使用预置的工件坐标系G54~G59                                                                            13
4.3.3  可编程工件坐标系G92                                                                                             14
4.3.4  局部坐标系(G52)                                                                                                              14
4.4  平面选择                                                                                                                                15
5.  坐标值和尺寸单位                                                                                                                15
5.1  绝对值和增量值编程(G90G91                                                                                15
6.  辅助功能                                                                                                                                 15
6.1  M代码                                                                                                                                    15
6.1.1  程序控制用M代码                                                                                                           16
6.1.2  其它M代码                                                                                                                       16
6.2    t代码                                                                                                                                                                             16
6.3  主轴转速指令(S代码)                                                                                                          16
6.4  刚性攻丝指令(M29                                                                                                         17
7.  程序结构                                                                                                                                 17
7.1  程序结构                                                                                                                                17
7.1.1  纸带程序起始符(Tape Start)                                                                                              17
7.1.2  前导(Leader Section)                                                                                                          17
7.1.3  程序起始符(Program Start)                                                                                                17
7.1.4  程序正文(Program Section)                                                                                                17
7.1.5  注释(Comment Section)                                                                                                      17
7.1.6  程序结束符(Program End)                                                                                                 17
7.1.7  纸带程序结束符(Tape End)                                                                                              18
7.2  程序正文结构                                                                                                                        18
7.2.1  地址和词                                                                                                                            18
7.2.2  程序段结构                                                                                                                        18
7.2.3  主程序和子程序                                                                                                                19
8.  简化编程功能                                                                                                                        21
8.1  孔加工固定循环(G73,G74,G76,G80~G89)                                                                           21
8.1.1  G73(高速深孔钻削循环)                                                                                             24
8.1.2  G74(左螺纹攻丝循环)                                                                                                 25
8.1.3  G76(精镗循环)                                                                                                                   25
8.1.4  G80(取消固定循环)                                                                                                           26
8.1.5  G81(钻削循环)                                                                                                                   26
8.1.6  G82(钻削循环,粗镗削循环)                                                                                           27
8.1.7  G83(深孔钻削循环)                                                                                                           27
8.1.8  G84(攻丝循环)                                                                                                                   27
8.1.9  G85(镗削循环)                                                                                                                   28
8.1.10  G86(镗削循环)                                                                                                                 28
8.1.11  G87(反镗削循环)                                                                                                             29
8.1.12  G88(镗削循环)                                                                                                                 29
8.1.13  G89(镗削循环)                                                                                                                 30
8.1.14  刚性攻丝方式                                                                                                                  30
8.1.15  使用孔加工固定循环的注意事项                                                                                  31
9.  刀具补偿功能                                                                                                                        31
9.1  刀具长度补偿(G43G44G49)                                                                                         31
9.2  刀具半径补偿                                                                                                                        32
9.2.1  补偿向量                                                                                                                            32
9.2.2  补偿值                                                                                                                                32
9.2.3  平面选择                                                                                                                            32
9.2.4  G40G41G42                                                                                                              32
9.2.5  使用刀具半径补偿的注意事项                                                                                        33
第二篇:NC操作                                                                                                                        34
1.  自动执行程序的操作                                                                                                            34
1.1  CRT/MDI操作面板                                                                                                               34
1.1.1  软件键                                                                                                                                34
1.1.2  系统操作键                                                                                                                        34
1.1.3  数据输入键                                                                                                                        34
1.1.4  光标移动键                                                                                                                        34
1.1.5  编辑键和输入键                                                                                                                34
1.1.6  NC功能键                                                                                                                          34
1.1.6  电源开关按钮                                                                                                                    35
1.2  MDI方式下执行可编程指令                                                                                                35
1.3  自动运行方式下执行加工程序                                                                                            35
1.3.1  启动运行程序                                                                                                                    35
1.3.2  停止运行程序                                                                                                                    35
2.  程序验证和安全功能                                                                                                            36
2.1  程序验证功能                                                                                                                        36
2.1.1  机床闭锁                                                                                                                            36
2.1.2  Z轴闭锁                                                                                                                             36
2.1.3  自动进给的倍率                                                                                                                36
2.1.4  快速进给的倍率                                                                                                                36
2.1.5  试运行                                                                                                                                36
2.1.6   单程序段运行                                                                                                                  36
2.2  安全功能                                                                                                                                36
2.2.1  紧急停止                                                                                                                            36
2.2.2  超程检查                                                                                                                            36
3.  零件程序的输入、编辑和存储                                                                                           37
3.1  新程序的注册                                                                                                                        37
3.2  搜索并调出程序                                                                                                                    37
3.3  插入一段程序                                                                                                                        37
3.4  删除一段程序                                                                                                                        37
3.5  修改一个词                                                                                                                            38
3.6  搜索一个词                                                                                                                            38
4.  数据的显示和设定                                                                                                                38
4.1  刀具偏置值的显示和输入                                                                                                    38
4.2  G54~G59工件坐标系的显示和输入                                                                                   39
4.3  NC参数的显示和设定                                                                                                          39
4.4  刀具表的修改                                                                                                                        39
5.  显示功能                                                                                                                                 40
5.1  程序显示                                                                                                                                40
5.2  当前位置显示                                                                                                                        40
6.在线加工功能                                                                                                                           40
6.1有关参数的修改:                                                                                                                  40
6.2有关在线加工的操作.                                                                                                             41
7.机床参数的输入 ﹑输出                                                                                                         41
8.用户宏B功能                                                                                                                           44
8.1变量                                                                                                                                         44
8.1.1 变量概述                                                                                                                              44
8.1.2系统变量                                                                                                                               45
8.2算术和逻辑操作                                                                                                                    50
8.3分支和循环语句                                                                                                                    51
8.3.1无条件分支(GOTO语句)                                                                                               51
8.3.2条件分支(IF 语句)                                                                                                          52
8.3.3循环(WHILE语句)                                                                                                               52
8.3.4 注意                                                                                                                                      53
8.4宏调用                                                                                                                                     53
8.4.1 简单调用(G65                                                                                                                54
8.4.2、模调用(G66G67                                                                                                      55
8.4.3 G码调用宏                                                                                                                           56
8.4.4M码调用宏                                                                                                                        56
8.4.5 M码调用子程序                                                                                                                   57
8.4.6 T码调用子程序                                                                                                                    57
8.5附加说明                                                                                                                                 57
附录1:报警代码表                                                                                                                   59
1.  程序报警(P/S报警)                                                                                                                59
2.  伺服报警                                                                                                                                 60
3.  超程报警                                                                                                                                 61
4.  过热报警及系统报警                                                                                                            61

有奖推广贴子: 

请大家如果想要资料的先点击下搜索要是没有的话再发贴求助
回复

使用道具 举报

少将

Rank: 8Rank: 8

144

主题

713

帖子

2万

积分

论坛技术员论坛元老论坛贡献

推荐
 楼主| 发表于 2012-6-17 19:58:55 | 只看该作者
附录1:报警代码表
        1.  程序报警(P/S报警)
报警号        报  警  内  容
000        修改后须断电才能生效的参数,参数修改完毕后应该断电。
001        TH报警,外设输入的程序格式错误。
002        TV报警,外设输入的程序格式错误。
003        输入的数据超过了最大允许输入的值。参考编程部分的有关内容。
004        程序段的第一个字符不是地址,而是一个数字或“-”。
005        一个地址后面跟着的不是数字,而是另外一个地址或程序段结束符。
006        符号“-”使用错误(“-”出现在一个不允许有负值的地址后面,或连续出现了两个“-”)。
007        小数点“. ”使用错误。
009        一个字符出现在不能够使用该字符的位置。
010        指令了一个不能用的G代码。
011        一个切削进给没有被给出进给率。
014        程序中出现了同步进给指令(本机床没有该功能)。
015        企图使四个轴同时运动。
020        圆弧插补中,起始点和终点到圆心的距离的差大于876号参数指定的数值。
021        圆弧插补中,指令了不在圆弧插补平面内的轴的运动。
029        H指定的偏置号中的刀具补偿值太大。
030        使用刀具长度补偿或半径补偿时,H指定的刀具补偿号中的刀具补偿值太大。
033        编程了一个刀具半径补偿中不能出现的交点。
034        圆弧插补出现在刀具半径补偿的起始或取消的程序段。
037        企图在刀具半径补偿模态下使用G17、G18或G19改变平面选择。
038        由于在刀具半径补偿模态下,圆弧的起点或终点和圆心重合,因此将产生过切削的情况。
041        刀具半径补偿时将产生过切削的情况。
043        指令了一个无效的T代码。
044        固定循环模态下使用G27、G28或G30指令。
046        G30指令中P地址被赋与了一个无效的值(对于本机床只能是2)。
051        自动切角或自动圆角程序段后出现了不可能实现的运动。
052        自动切角或自动圆角程序段后的程序段不是G01指令。
053        自动切角或自动圆角程序段中,符号“,”后面的地址不是C或R。
055        自动切角或自动圆角程序段中,运动距离小于C或R的值。
060        在顺序号搜索时,指令的顺序号没有找到。
070        程序存储器满。
071        被搜索的地址没有找到,或程序搜索时,没有找到指定的程序号。
072        程序存储器中程序的数量满。
073        输入新程序时企图使用已经存在的程序号。
074        程序号不是1~9999之间的整数。
076        子程序调用指令M98中没有地址P。
077        子程序嵌套超过三重。
078        M98或M99中指令的程序号或顺序号不存在。
085        由外设输入程序时,输入的格式或波特率不正确。
086        使用读带机/穿孔机接口进行程序输入时,外设的准备信号被关断。
087        使用读带机/穿孔机接口进行程序输入时,虽然指定了读入停止, 但读过了10个字符后,输入不能停止。
090        由于距离参考点太近或速度太低而不能正常执行恢复参考点的操作。
091        自动运转暂停时(有剩余移动量或执行辅助功能时)进行了手动返回参考点。
092        G27指令中,指令位置到达后发现不是参考点。
100        PWE=1,提示参数修改完毕后将PWE置零,并按RESET键。
101        在编辑或输入程序过程中,NC刷新存储器内容时电源被关断。当该报警出现时,应将PWE置1,关断电源,再次打开电源时按住DELETE 键以清除存储器中的内容。
131        PMC报警信息超过5条。
179        597号参数设置的可控轴数超出了最大值。
224        第一次返回参考点前企图执行可编程的轴运动指令。
        2.  伺服报警
报警号        报 警 内 容
400        伺服放大器或电机过载。
401        速度控制器准备号信号(VRDY)被关断。
404        VRDY信号没有被关断,但位置控制器准备好信号(PRDY)被关 断。正常情况下,VRDY和PRDY信号应同时存在。
405        位置控制系统错误,由于NC或伺服系统的问题使返回参考点的操 作失败。重新进行返回参考点的操作。
410        X轴停止时,位置误差超出设定值。
411        X轴运动时,位置误差超出设定值。
413        X轴误差寄存器中的数据超出极限值,或D/A转换器接受的速度指 令超出极限值(可能是参数设置的错误)。
414        X轴数字伺服系统错误,检查720号诊断参数并参考伺服系统手册。
415        X轴指令速度超出511875检测单位/秒,检查参数CMR。
416        X轴编码器故障。
417        X轴电机参数错误,检查8120、8122、8123、8124号参数。
420        Y轴停止时,位置误差超出设定值。
421        Y轴运动时,位置误差超出设定值。
423        Y轴误差寄存器中的数据超出极限值,或D/A转换器接受的速度指 令超出极限值(可能是参数设置的错误)。
424        Y轴数字伺服系统错误,检查721号诊断参数并参考伺服系统手册。
425        Y轴指令速度超出511875检测单位/秒,检查参数CMR。
426        Y轴编码器故障。
427        Y轴电机参数错误,检查8220、8222、8223、8224号参数。
430        Z轴停止时,位置误差超出设定值。
431        Z轴运动时,位置误差超出设定值。
433        Z轴误差寄存器中的数据超出极限值,或D/A转换器接受的速度指 令超出极限值(可能是参数设置的错误)。
434        Z轴数字伺服系统错误,检查722号诊断参数并参考伺服系统手册。
435        Z轴指令速度超出511875检测单位/秒,检查参数CMR。
436        Z轴编码器故障。
437        Z轴电机参数错误,检查8320、8322、8323、8324号参数。
        3.  超程报警
报警号        报  警  内  容
510        X轴正向软极限超程。
511        X轴负向软极限超程。
520        Y轴正向软极限超程。
521        Y轴负向软极限超程。
530        Z轴正向软极限超程。
531        Z轴负向软极限超程。
        4.  过热报警及系统报警
700号报警为NC主印刷线路板过热报警,704号报警为主轴过热报警。
其它的6××为PMC系统报警,9××为NC系统报警。用户如发现以上两种报警,请及时通知我们或直接向FANUC公司咨询,以便联系维修。
2×××为机床报警,详见以下说明。
请大家如果想要资料的先点击下搜索要是没有的话再发贴求助
回复 支持 1 反对 0

使用道具 举报

少将

Rank: 8Rank: 8

144

主题

713

帖子

2万

积分

论坛技术员论坛元老论坛贡献

推荐
 楼主| 发表于 2012-6-17 19:57:38 | 只看该作者
8.用户宏B功能
使用子程序编程可以重复同样的操作,简化程序的书写工作,但是用户宏B提供了更丰富的编程功能,它允许使用变量、算术和逻辑操作及条件分支,使得用户可以自行编辑软件包、固定循环程序。
            8.1变量8.1.1 变量概述
一个普通的零件加工程序指定G码并直接用数字值表示移动的距离,例:G100 X100.0。而利用用户宏,既可以直接使用数字值也可以使用变量号。当使用变量号时,变量值既可以由程序改变,也可以用MDI面板改变。
#1=#2+100
G01 X#1 F300
变量书写规格:        
当指定一个变量时,在#后指定变量号。个人计算机允许赋名给变量,宏没有此功能。
例:#1
也可以用表达式指定变量号,这时表达式要用方括号括起来。例:#[#1+#2—12]
变量值的范围:        
地方变量和公共变量可以有值0和在下述范围内的值:                             -1047~-10—1910—29~1047,如果计算结果无效,发出111号报警。
忽略小数点:
在程序中定义变量时,可以忽略小数点。例:当#1=123被定义时,变量#1的实际值为123.000
未定义的变量:
当变量的值未定义时,这样的一个变量被看作“空”变量,变量#0总是“空”变量,是一个只读变量。
变量的类型:            
根据变量号将变量分为四类,见下表:                     
变量号
变量类型
功能
#0
“空”
这个变量总是空的,不能赋值。
#1~#33
地方变量
地方变量只能在宏中使用,以保持操作的结果,关闭电源时,地方变量被初始化成“空。宏调用时,自变量分配给地方变量。
#100~#149#199
#500~#531#999
公共变量
公共变量可在不同的宏程序间共享。关闭电源时变量#100~#149被初始化成“空,而变量#500~#531保持数据。公共变量#150~#199#532~#999可以选用,但是当这些变量被使用时,纸带长度减少了8.5米。
#1000~
系统变量
系统变量用于读写各种NC数据项,如当前位置、刀具补偿值。
引用变量:
为了在程序中引用变量,指定一个字地址其后跟一个变量号。当用表达式指定一个变量时,须用方括号括起来。例:G01 X[#1+#2] F#3。引用的变量值根据地址的最小输入增量自动进行四舍五入。例:G00 X#1;其中#1值为12.3456CNC最小输入增量1/1000mm,则实际命令为G00 X12.346。为了将引用的变量值的符号取反,在#号前加“”号。    例:G00 X—#1;当引用一个未定义的变量时,忽略变量及引用变量的地址。例:#1=0 #2=“空”, G00 X#1 Y#2;的执行结果是G00 X0
显示变量值:
1)按键  显示刀具补偿页面
2)按软键[MACRO]显示宏变量页面
3)按NO.键后,输入一个变量号,然后按INPUT键,将光标移到输入的变量号的位置。
☆当变量值空白时,变量为空。
********表示溢出(即变量的绝对值大于99999999或小于0.0000001)。
注意:
程序号、顺序号、任选段跳跃号不能使用变量。例:变量不能用于下列方法
                                  O#1
                                  /#2G00 X100.0;
                                  N#3 Y200.0;
8.1.2系统变量
系统变量能用来读写内部NC数据,如刀具补偿值和当前位置数据。然而,注意:有些系统变量是只读变量。对于扩展自动化操作和一般的程序,系统变量是必须的。
刀具补偿值:
使用这类系统变量可以读写刀具补偿值。可用的变量数取决于能使用的补偿对数,当补偿对数不大于200时,可以用变量#2001~#2400
用于刀具补偿内存A的系统变量
补偿号
系统变量
1
:
200
#10001#2001
       :
#10200#2200
用于刀具补偿内存B的系统变量
补偿号
几何补偿
磨损补偿
1
:
200
#11001#2201
       :
#11200#2400
#10001#2001
       :
#10200#2200
宏报警:
用于宏报警的系统变量:
变量号
功能
#3000
#3000中有0~99间的某一值时,NC停止并显示报警信息。报警信息不超过26个字符,
                     例:#3000=1TOOL NOT FOUND);
报警屏幕显示“3001 TOOL NOT FOUND。”
时间信息:
时间信息可以读写。
                            用于时间信息的系统变量:
变量号
功能
#3001
这个变量是一个以1毫秒为增量一直记数的记时器,上电或达到65535毫秒时复值为0
#3002
这个变量是一个以1小时为增量、当循环启动灯亮时记数的记时器,电源关闭后记时器值依然保持,达到1145324.612小时时复值为0
#3011
这个变量用于读当前年//日数据,该数据以十进制数显示。例:March 281993表示成19930328
#3012
这个变量用于读当前时//秒数据,该数据以十进制数显示。例:下午33456秒表示成153456
自动操作控制:
自动操作的控制状态可以改变。
                            自动操作控制的系统变量#3003
#3003
单段
辅助功能的完成
0
使能
要等待
1
无效
要等待
2
使能
不要等待
3
无效
不要等待
☆上电时该变量值为0
☆当不能执行单段停止时,单段停止操作不能执行,即使单段开关有效。
☆当没有指定是否等待辅助功能(MST)完成时,在辅助功能完成之前,程序执行到下一段,定位完成信号DEN不发出。
自动操作控制的系统变量#3004
#3004
进给保持
进给倍率
精确停止
0
使能
使能
使能
1
无效
使能
使能
2
使能
无效
使能
3
无效
无效
使能
4
使能
使能
无效
5
无效
使能
无效
6
使能
无效
无效
7
无效
无效
无效
☆上电时该变量值为0
☆当不能执行进给保持时:
进给保持按钮按下并保持时,机床以单段停止方式停止,但单段方式若因变量#3003而无效时,不执行单段停止操作。
进给保持按钮按下又释放时,进给保持灯亮,但机床不停止;程序继续进行,机床停在最先含有进给保持使能的段。
☆当进给倍率无效时,倍率定在100%,忽略机床操作面板上的倍率开关。
☆当精确停止无效时不执行精确停止检查(定位检查),即使是包含有不执行切削的段。
设定:
设定变量#3005可以读写,并且二进制值转换成十进制。
#3005
设定
#15
#14
#13
#12
#11
#10
#9
#8
TAPE
REV4
#7
#6
#5
#4
#3
#2
#1
#0
设定
SEQ
ABS
INCH
ISO
TVON
REVY
REVX
REVXX—轴镜象on/off
REVYY—轴镜象 on/off
TVONTV 检查 on/off
ISO   输出码EIA/ISO
INCH 公制/英制输入
ABS  相对值/绝对值编程
SEQ  顺序号自动插入on/off
REV4 第四轴镜象on/off
TAPE F10/11 纸带格式 on/off
零件数:
需要加工的零件数变量#3902和已加工的零件数变量#3901可以被读写。见下表:
变量号
功能
#3901
已加工的零件数
#3902
需要加工的零件数
注:不能使用负数。
模信息:
段中指定的模信息可以读出。见下表:
变量号
功能
#4001
G00G01G02G03G33
      01组)
#4002
G17G18G19                     
      02组)
#4003
G90G91                           
      03组)
#4004
      04组)
#4005
G94G95
      05组)
#4006
G20G21
      06组)
#4007
G40G41G42
      07组)
#4008
G43G44G49
      08组)
#4009
G73G74G76G80~G89
      09组)
#4010
G98G99
      10组)
#4011
G50G51
      11组)
#4012
G65G66G67
      12组)
#4014
G54~G59
      14组)
#4015
G61~G64
      15组)
#4016
G68G69
      16组)
#4022
      22组)
#4102
B
#4107
D
#4109
F
#4111
H
#4113
M
#4114
顺序号
#4115
程序号
#4119
S
#4120
T
                            例:当执行#1=#4001时,#1=012333
当前位置:
位置信息变量不能写只能读。见下表:
变量号
位置信息
坐标系
刀具补偿值
移动期间的读操作
#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
第一轴G54工件零点偏置值~第四轴G54工件零点偏置值
#5241~#5244
第一轴G55工件零点偏置值~第四轴G55工件零点偏置值
#5261~#5264
第一轴G56工件零点偏置值~第四轴G56工件零点偏置值
#5281~#5284
第一轴G57工件零点偏置值~第四轴G57工件零点偏置值
#5301~#5304
第一轴G58工件零点偏置值~第四轴G58工件零点偏置值
#5321~#5324
第一轴G59工件零点偏置值~第四轴G59工件零点偏置值
#7001~#7004
第一轴工件零点偏置值(G54P1~第四轴工件零点偏置值
#7021~#7024
第一轴工件零点偏置值(G54P2~第四轴工件零点偏置值
   
#7941~#7944
第一轴工件零点偏置值(G54P48~第四轴工件零点偏置值
注:对于工件坐标系,变量#5201~#5328是可选变量。
       对于附加的48工件坐标系,变量#7001~#7948G54P1~G54P48 是可选变量。
            8.2算术和逻辑操作
在下表中列出的操作可以用变量进行。操作符右边的表达式,可以含有常数和(/或)由一个功能块或操作符组成的变量。表达式中的变量#J#K可以用常数替换。左边的变量也可以用表达式替换。见下表:
功能
格式
注释
赋值
#i=#j
#i=#j+#k
#i=#j—#k
#i=#j*#k
#i=#j/#k
正弦
#i=SIN[#j]
角度以度为单位,如:9030分表示成90.5
余弦
#i=COS[#j]
正切
#i=TAN[#j]
反正切
#i=ATAN[#j]
平方根
#i=SQRT[#j]
绝对值
#i=ABS[#j]
进位
#i=ROUND[#j]
下进位
#i=FIX[#j]
上进位
#i=FUP[#j]
OR(或)
#i=#jOR#k
用二进制数按位进行逻辑操作。
XOR(异或)
#i=#jXOR#k
AND(与)
#i=#jAND#k
BCD码转换成BIN
#i=BIN[#j]
用于与PMC间信号的交换。
BIN码转换成BCD
#i=BCD[#j]
角单位:
SINCOSTANATAN中所用的角度单位是度。
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
算术和逻辑操作的缩写方式:
取功能块名的前两个字符,例:ROUNDàRO
操作的优先权:
①功能块。
如乘除(*/ANDMOD)这样的操作。
®如加减(+ORXOR)这样的操作。
方括号嵌套:
方括号用于改变操作的顺序。最多可用五层,超出五层,出现118号报警。
注意:
方括号用于封闭表达式,圆括号用于注释。
除数:
如果除数是零或TAN[90],则会产生112号报警。
            8.3分支和循环语句
在一个程序中,控制流程可以用GOTOIF语句改变。有三种分支循环语句如下:
      ☆  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
8.3.3循环(WHILE语句)
功能             WHILE 后指定一个条件表达式,条件满足时,执行DOEND之间的语句,否则执行END后的语句。
格式             WHILE [条件表达式] DO m;(m=123
                                                 :
                                                
                                                
              END m
              m只能在123中取值,否则出现126号报警。
嵌套             ①数1~3可以多次使用。
              ②不能交叉执行DO语句,如下的书写格式是错误的:
8.3.4 注意
无限循环        指定了DO m而没有WHILE语句,循环将在DOEND之间无限期执行下去。
执行时间        程序执行GOTO分支语句时,要进行顺序号的搜索,所以反向执行的时间比正向执行的时间长。可以用WHILE语句减少处理时间。
未定义的变量            在使用EQNE的条件表达式中,空值和零的使用结果不同。而含其它操作符的条件表达式将空值看作零。
            8.4宏调用
可以用下列方式调用宏程序:
简单调用            G65
模调用         G66G67
G码宏调用
M码宏调用
G码子程序调用
M码子程序调用
宏调用和子程序调用之间的区别:
G65,可以指定一个自变量(传递给宏的数据),而M98没有这个功能。
M98段含有另一个NC语句时(如:G01 X100.0M98Pp),则执行命令之后调用子程序,而G65无条件调用一个宏。
M98段含有另一个NC语句时(如:G01 X100.0M98Pp),在单段方式下机床停止,而使用G65时机床不停止。
G65地方变量的级要改变,而M98不改变。
8.4.1 简单调用(G65
功能             G65被指定时,地址P所指定的用户宏被调用,数据(自变量)能传递到用户宏程序中。
格式             G65 Pp Ll <自变量表>
其中:
p            要调用的程序号
l             重复的次数(缺省值为1,取值范围1~9999
自变量  传递给宏的数。通过使用自变量表,值被分配给相应的地方变量。
              如下列中#1=1.0,#2=2.0
自变量分为两类。第一类可以使用除GLONP之外的字母并且只能使用一次。第二类可以使用ABC(一次),也何以使用IJK(最多十次)。自变量使用的类别根据使用的字母自动确定。见下表。
类别一:
地址
变量号
地址
变量号
地址
变量号
A
#1
I
#4
T
#20
B
#2
J
#5
U
#21
C
#3
K
#6
V
#22
D
#7
M
#13
W
#23
E
#8
Q
#17
X
#24
F
#9
R
#18
Y
#25
H
#11
S
#19
Z
#26
地址GLNOP不能当作自变量使用。
不需要的地址可以省略,与省略的地址相应的地方变量被置成空。
类别二:
地址
变量号
地址
变量号
地址
变量号
A
#1
K3
#12
J7
#23
B
#2
I4
#13
K7
#24
C
#3
J4
#14
I8
#25
I1
#4
K4
#15
J8
#26
J1
#5
I5
#16
K8
#27
K1
#6
J5
#17
I9
#28
I2
#7
K5
#18
J9
#29
J2
#8
I6
#19
K9
#30
K2
#9
J6
#20
I10
#31
I3
#10
K6
#21
J10
#32
J3
#11
I7
#22
K10
#33
在实际的程序中,IJK的下标不用写出来。
注意:
在自变量之前一定要指定G65
如果将两类自变量混合使用, NC自己会辨别属于哪类,最后指定的那一类优先。
传递的不带小数点的自变量的单位与每个地址的最小输入增量一致,其值与机床的系统结构非常一致。为了程序的兼容性,建议使用带小数点的自变量。
最多可以嵌套含有简单调用(G65)和模调用(G66)的程序4级。不包括子程序调用(M98)。地方变量可以嵌套0~4级。主程序的级数是0。用G65G66每调用一次宏,地方变量的级数增加一次。上一级地方变量的值保存在NC 中。宏程序执行到M99时,控制返回到调用的程序。这时地方变量的级数减1,恢复宏调用时存储的地方变量值。
8.4.2、模调用(G66G67
功能             一旦指定了G66,那么在以后的含有轴移动命令的段执行之后,地址P所指定的宏被调用,直到发出G67命令,该方式被取消。
格式             G66 Pp Ll <自变量表>
其中:
p            要调用的程序号
l             重复的次数(缺省值为1,取值范围1~9999
自变量            传递给宏的数。与G65调用一样,通过使用自变量表,值被分配给相应的地方变量。
注意:
最多可以嵌套含有简单调用(G65)和模调用(G66)的程序4级。不包括子程序调用(M98)。模调用期间可重复嵌套G66
G66段,不能调用宏。
在自变量前一定要指定G66
在含有象M码这样与轴移动无关的段中不能调用宏。
地方变量(自变量)只能在G66段设定,每次模调用执行时不能设定。
8.4.3 G码调用宏
通过在下表所列出的参数中设定调用宏程序的G码号,就可以象用G65一样调用相应的宏程序。G码号设定范围是1~255。重复次数l和自变量使用方法与G65一样。
程序号
参数号
O9010
220
O9011
221
O9012
222
O9013
223
O9014
224
O9015
225
O9016
226
O9017
227
O9018
228
O9019
229
注意:
在用G码调用的程序中,不能再用G码调用宏程序,在这样的程序中G码被看作是普通G码,在用M码和T码调用的子程序中也一样。
8.4.4M码调用宏
通过在下表所列出的参数中设定调用宏程序的M码号,就可以象用G65一样调用相应的宏程序。M码号设定范围是1~255。重复次数l和自变量使用方法与G65一样。
程序号
参数号
O9020
230
O9021
231
O9022
232
O9023
233
O9024
234
O9025
235
O9026
236
O9027
237
O9028
238
O9029
239
注意:
☆  调用宏程序的M码一定要在段首指定。
☆  在用G码调用的宏或用M码和T码调用的子程序中,不能再用M码调用宏程序,在这样的宏或程序中M码被看作是普通M码。
8.4.5 M码调用子程序
通过在下表所列出的参数中设定调用宏程序的M码号,就可以象用M98调用子程序一样调用相应的宏程序。M码号设定范围是1~255。重复次数l使用方法与M98一样。不允许使用自变量。
程序号
参数号
O9001
240
O9002
241
O9003
242
注意:
宏程序中,已用来调用宏程序的 M码被看作是普通M码。在用G码调用的宏和用M码或T码调用的程序中,不能再用M码调用子程序,在这样的程序中M码被看作是普通M码。
8.4.6 T码调用子程序
将参数040的第5位置1,当在加工程序中指定一个T码时,宏程序O9000就被调用。在加工程序中指定的T码存储在公共变量#149中。
在用G码调用的宏和用M码或T码调用的程序中,不能再用T码调用子程序,在这样的程序中T码被看作是普通T码。
            8.5附加说明
①    用户宏程序与子程序相似,也能寄存和编辑。
② 可以在自动操作方式下指定宏调用。但在自动操作期间不能转换到MDI方式。也能在MDI操作B方式下应用宏调用。
③ 不能用顺序号搜索用户宏程序。
④ 即使当宏程序正在执行,也能以单段方式停止(除了含有宏调用命令、算术操作命令、控制命令的段外)。含有宏调用命令(G65G66G67)的段,在单段方式下不能停止。而将参数011的第5位置1,含有算术操作命令、控制命令的段能停止。单段停止方式常用于测试用户宏程序。注意,在切削补偿方式C下,如果在宏语句处执行了单段停止,该语句被看作是与移动命令无关的段,这时补偿可能不正确。(严格地讲,这句被看作是移动命令为0的段)。
⑤“/”如果出现在算术表达式的中间,则被认为是除号。
⑥ 将参数010的第4位置1,可禁止对程序号为9000~9999的程序进行编辑和删除。同时按住RESET DELET键重新启动电源时,整个内存将被删除,包括宏程序。
⑦ 复位操作可使地方变量和公共变量#100~#199清成空值。但是,通过设置参数040的第67位,可以避免这些参数的复位。系统变量#1000~#1133不受复位影响。
⑧ 象M98一样,不显示用作子程序调用的M码和T码。
  在表达式中使用的常数取值范围是+0.0000001~+99999999-99999999~-0.0000001,如果超出此范围,将发出003号报警。
请大家如果想要资料的先点击下搜索要是没有的话再发贴求助
回复 支持 1 反对 0

使用道具 举报

二级士官

Rank: 2

0

主题

18

帖子

488

积分
27#
发表于 2019-12-22 16:47:42 | 只看该作者
卫生区翁多群无
回复 支持 反对

使用道具 举报

少校

Rank: 6Rank: 6

8

主题

580

帖子

8298

积分
26#
发表于 2016-10-27 17:01:29 | 只看该作者
好好学习天天向上
回复 支持 反对

使用道具 举报

六级士官

Rank: 4

2

主题

240

帖子

1898

积分
25#
发表于 2016-10-12 20:22:37 | 只看该作者
谢谢,很有用
回复 支持 反对

使用道具 举报

四级士官

Rank: 3Rank: 3

2

主题

253

帖子

750

积分
24#
发表于 2016-5-8 15:35:12 | 只看该作者
非常不错学习下
回复 支持 反对

使用道具 举报

四级士官

Rank: 3Rank: 3

2

主题

253

帖子

750

积分
23#
发表于 2016-5-8 15:32:39 | 只看该作者
非常不错学习下
回复 支持 反对

使用道具 举报

四级士官

Rank: 3Rank: 3

2

主题

253

帖子

750

积分
22#
发表于 2016-5-8 15:32:17 | 只看该作者
非常不错学习下
回复 支持 反对

使用道具 举报

上等兵

Rank: 1

0

主题

191

帖子

83

积分
21#
发表于 2016-2-10 15:24:58 | 只看该作者
看看咳咳咳咳咳咳咳咳咳
回复 支持 反对

使用道具 举报

六级士官

Rank: 4

0

主题

111

帖子

1009

积分
20#
发表于 2016-1-15 15:59:56 | 只看该作者
值得学习,呵呵
回复 支持 反对

使用道具 举报

六级士官

Rank: 4

5

主题

198

帖子

1155

积分
19#
发表于 2016-1-14 14:44:28 | 只看该作者
看看  谢谢分享
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

 
 
QQ:1359218528
工作时间:
9:00-17:00
 
微信公众号
手机APP
机械社区
微信小程序

手机版|UG爱好者论坛 ( 京ICP备10217105号-2 )    论坛管理员QQ:1359218528

本站信息均由会员发表,不代表本网站立场,如侵犯了您的权利请联系管理员,邮箱:1359218528@qq.com  

Powered by UG爱好者 X3.2  © 2001-2014 Comsenz Inc. GMT+8, 2024-11-28 12:12

返回顶部