宏程序编程知识

更新时间:2023-11-13 08:36:01 阅读量: 教育文库 文档下载

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

工件偏置量:G10 L2 P X Y Z (加工中心)。 G41X Y D

G90G54P1G00X Y S M03 G90G10L2P0X Y Z G10L1P R

G10 P U V W C Q 可编程参数入口:G10 L50 ……… G11

G10数据设置模式入口、

L50可编程参数入口模式(固定的)

N……P……R……指定参数入口(N=参数号,P=轴号,R=设置值) G11数据设置模式取消

宏程序的调用:G65 P L G65

P包含宏程序的程序号(存储为O ) L宏程序的循环次数 变量的类型:空变量#0 局部变量:#1—#33

全局变:#100—#149或#500—#531 系统变量:#1000—。。。。。。

局部变量的赋值:A-#1 B-#2 C-#3 D-#7 E-#8 F-#9 H-#11 I-#5 J-#6 K-#6 M-#13 Q-#17 R-#18 S-#19 T-#20 U-#21 V-#22 W-#23 X-#24 Y-#25 Z-#26 模态宏程序的调用G66仅用于某个轴运动命令调用宏程序 G67取消模态宏程序调用

宏程序函数:有SIN COS TAN ATAN ASIN ACOS 其他函数:ROUND FIX FUP ROUND表示四舍五入

FIX表示与之最小的整数 FUP表示与之最大的整数 辅助函数: SQRT表示开方 ABS表示绝对值

LN表示自然对数函数

EXP表示以E为底的指数函数、 ADP表示添加小数点的函数、

逻辑函数:EQ表示等于、NE表示不等于、GT表示大于、LT表示小于、GE表示大于等于、LE表示小于等于。 系统变量:

从#1000开始

#1000through#1015数据输入DI 从PMC向宏程序发送16位信号(逐位读取) #1032用于一次读取所有16位信号

#1100through#1115数据输出DO从宏程序向PMC发送16位信号(逐位写入) #1132用于一次向PMC写入所有16位信号

#1133用于一次向PMC写入所有32位信号——-99999999到+99999999的数值可用于#1133 #2001through#2200 (A刀具补偿值)(B磨损偏置值)(H代码C) #2201through#2400(B几何偏置值)(H代码C)

#2500表示沿X轴的外部工件偏置值。#2501—G54 #2502-G55 #2503-G56 #2504-G57 #2505-G58 #2506-G59

#2600表示沿Y 轴的外部工件偏置值#2601—G54 #2602-G55 #2603-G56 #2604-G57 #2605-G58 #2606-G59

#2700表示沿Z轴的外部工件偏置值#2701—G54 #2702-G55 #2703-G56 #2704-G57 #2705-G58 #2706-G59

#2800表示沿第四轴的外部工件偏置值#2801—G54 #2802-G55 #2803-G56 #2804-G57 #2805-G58 #2806-G59 #3000用户宏程序产生报警 #3001时钟1-单位1ms #3002时钟2-单位1h

#3003单段控制,等待信号FIN

#3004进给保持控制,技能给速度倍率控制,准确停止检查控制 #3005设置

#3011时钟信息—年月日 #3012时钟信息—时分秒

#4001至#4022模态信息预读程序段-G代码组

#4102至#4130模态信息预读程序段-B,D,F,H,M,N,O,S,T,P代码 #5001至#5008程序段结束位置 #5021至#5028机床坐标位置

#5041至#5048工件坐标位置(绝对位置) #5061至#5068跳跃信号位置21:10 2010-1-8 #5081至#5088刀具长度补偿值 #5101至#5108伺服系统偏置 #5201至#5208外部工件偏置值 #5221至#5228:G54工件偏置值 #5241至#5248:G55工件偏置值 #5261至#5268:G56工件偏置值 #5281至#5288:G57工件偏置值 #5301至#5308:G58工件偏置值 #5321至#5328:G59工件偏置值 用于模态命令的系统变量:

#4001至#4022模态信息(G-代码组) 系统变量 G代码组 G代码命令 备注 #4001 #4002 #4003 #4004 #4005

01 G00 G01 G02 G03 G33 注意G31属于00组 02 G17 G18 G19 03 G90 G91 04 G22 G23

05 G93 G94 G95

#4006 #4007 #4008 #4009 #4010

06 G20 G21 07 08 09 10

G40 G41 G42 G43 G44 G45

G73 G74 G76 G80 G81 G82 G83 G84 G85 G86 G87 G88 G89 G98 G99

#4011 11 G50 G51

#4012 12 G65 G66 G67 #4013 #4014 #4015 #4016 #4017 #4018 #4019 #4020 #4021

13 G96 G97

14 G54 G55 G56 G57 G58 G59 15 G61 G62 G63 G64 16 G68 G69 17 G15 G16

18 N/A

19 G40.1 G41.1 G42.1

20 对FS-M和FS-T控制器的N/A 21 N/A

#4022 22 G50.1 G51.1

高级CNC控制系统的典型G代码模态信息: 预处理程序段:#4001到#4022 执行程序段:#4201到#4222 高级FANUC控制器的系统变量:

系统变量号 程序地址 预处理程序段 执行程序段

#4102 #4302 B代码—分度轴位置

#4107 #4307 D代码—刀具半径偏置号 #4108 #4109 #4111 #4113 #4114 #4115 #4119 #4120 #4130

#4308 #4309 #4311 #4313 #4314 #4315 #4319 #4320 #4330

E代码—进给速度值(如果可用) F代码—进给速度值 H代码—刀具长度偏置号 M代码—辅助功能 N代码—顺序号 O代码—程序号

S代码—主轴转速值 T代码—刀具号

P代码—附加工件偏置号

变量的类型:空变量#0 局部变量:#1—#33

全局变:#100—#149或#500—#531

系统变量:#1000—。。。。。。

局部变量的赋值:A-#1 B-#2 C-#3 D-#7 E-#8 F-#9 H-#11 I-#5 J-#6 K-#6 M-#13 Q-#17 R-#18 S-#19 T-#20 U-#21 V-#22 W-#23 X-#24 Y-#25 Z-#26 分支和循环:

IF 函数:IF[条件为真]GOTO n

IF[条件为真]THEN[语句] 其中AND和OR 等的使用

WHILE循环结构:

WHILE[条件]DO n

有单级嵌套、两级嵌套、三级嵌套。 报警#3000=xxx(xxxxxxxx等内容)

宏程序中的定时器:#3001这是一个毫秒定是变量。 #3002是一个小时定时变量。 #3011是保持当前时间。 #3012是指示当前时间。 轴位置数据:

ABSIO已编程的前面程序段的终点坐标,#5001到#5015分别对应第1轴到第15轴。 ABSMT机床位置,通常指当前的机床坐标,#5021到#5035分别对应第1轴到第15轴。 ABSOT绝对位置,通常指当前的绝对位置,#5041到#5055分别对应第1轴到第15轴。 ABSKP在G31程序段中执行跳跃运动时存储的相应位置,#5061到#5075分别对应第1轴到第15轴。

刀具偏置值范围#5081到#5095表示当前刀具偏置值,而不是上一个值。 解释系统变量#3007

#3901已完成的零件数 #3902 需要加工的零件数

参数化(相似零件)的编程:

外部输出:POPEN开启I/O设备 PCLOS关闭I/O设备 BPRNT和DPRNT功能

BPRNT是以位为单位输出,仅对数据有效

DPRNT是以纯文本格式输出,数据或文本(ISO或ASCII文本) 注意穿孔机可以是任何外部的RS-232设备 关于G31的应用:基本用于测量用。

G代码宏程序调用—10个可用选项—G65 G66和G67除外。FANUC 系统16/18/21 参数号 描述《有效数据位1—255》 6050 G代码调用存储在程序O9010中的用户宏程序 6051 G代码调用存储在程序O9011中的用户宏程序 6052 6053 6054 6055 6056 6057 6058 6059

G代码调用存储在程序O9012中的用户宏程序 G代码调用存储在程序O9013中的用户宏程序 G代码调用存储在程序O9014中的用户宏程序 G代码调用存储在程序O9015中的用户宏程序 G代码调用存储在程序O9016中的用户宏程序 G代码调用存储在程序O9017中的用户宏程序 G代码调用存储在程序O9018中的用户宏程序 G代码调用存储在程序O9019中的用户宏程序

M代码子程序调用的9个选项:(设置值为:1到97) 参数号 SUB CALL M 代码调用 6071 6072 6073

SUB CALL M 代码程序O9001中的子程序 SUB CALL M 代码程序O9002中的子程序 SUB CALL M 代码程序O9003中的子程序

6074 6075 6076 6077 6078 6079

SUB CALL M 代码程序O9004中的子程序 SUB CALL M 代码程序O9005中的子程序

SUB CALL M 代码程序O9006中的子程序 SUB CALL M 代码程序O9007中的子程序 SUB CALL M 代码程序O9008中的子程序 SUB CALL M 代码程序O9009中的子程序

M代码宏程序调用—10个可用选项 参数号 描述《有效数据为1—97》 6080 6081 6082 6083 6084 6085 6086 6087 6088 6089

M代码调用存储在程序O9020中的用户宏程序 M代码调用存储在程序O9021中的用户宏程序 M代码调用存储在程序O9022中的用户宏程序 M代码调用存储在程序O9023中的用户宏程序 M代码调用存储在程序O9024中的用户宏程序 M代码调用存储在程序O9025中的用户宏程序 M代码调用存储在程序O9026中的用户宏程序 M代码调用存储在程序O9027中的用户宏程序 M代码调用存储在程序O9028中的用户宏程序 M代码调用存储在程序O9029中的用户宏程序

#0空变量。

FANUC系统 0

G代码宏程序调用—10个选项:

参数号从220到229分别调用O9010到O9019中的宏程序。 M代码宏程序调用—10个选项:

参数号从230到239分别调用O9020到O9029中的宏程序。

FANUC 系统10/11/15

G代码宏程序调用—10个选项:

参数号从7050到7059分别调用O9010到O9019中的宏程序。 参数号从7080到7089分别调用O9020到O9029中的宏程序。

半径偏置的设定: 偏置号 存储器A 存储器B 存储器C 备注

几何/磨损 几何 磨损 几何-D 磨损-D 1 #2001 #2001 #2201 #2401 #2601 2 #2002 3 #2003 4 #2004 5 #2005 6 #2006

#2002 #2003 #2004 #2005 #2006

#2202 #2203 #2204 #2205 #2206

#2402 #2403 #2404 #2405 #2406

#2602 #2603 #2604 #2605 #2606

…… …… …… …… …… …… …… …… …… …… …… …… 200 #2200 #2200 #2400 #2600 #2800

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

Top