数控加工中宏程序的编制方法
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
工件原点偏移值的系统变量Ⅲ
第1轴G59工件零点偏移值 : 第4轴G59工件零点偏移值 第1轴工件零点偏移值(G54.1P1) : 第4轴工件零点偏移值(G54.1P1) 第1轴工件零点偏移值(G54.1P2) : 第4轴工件零点偏移值(G54.1P2)
#7041 : #7044 #7061 : #7064 #7941 : #7944
条件转移:(IF语句) IF [条件表达式] GOTOn
FANUC宏程序的转移和循环Ⅳ
IF [条件表达式] THEN 当指定的条件表达式满足时,执行预先决 定的宏程序语句。
例:IF [#1EQ #2] THEN #3=0;
FANUC宏程序循环Ⅰ
条 件 不 满 足 WHILE [条件表达式] Dom; (m=1,2,3) 条件满足
跃到MARKE1
R7<=(R8+R9)*743 GOTOB MARKE1 IF R10 GOTOF MARK1 作为条件的复合表达式 允许确定一个变量 (INT,REAL,BOOL或 CHAR)。如果变量值为 0(=FALSE),条件就 不能满足;对于所有其 他值,条件为TRUE
IF R1==0 GOTOF MARKE1 IF R1==1 同一程序段中的几个条 GOTOF MARKE2 件
FANUC宏程序运算符Ⅳ
功能 或
异或 与
格式 #i=#j OR #k
#i=#j XOR #k #i=#j AND #k
备注 逻辑运算一位一 位的按二进制数 执行
用于与PMC的信 号交换
从BCD转为BIN #i=BIN[#j] 从BIN转为BCD #i=BCD[#j]
FANUC宏程序的转移和循环Ⅰ
工件原点偏移值的系统变量Ⅶ
轴 第三 轴 功能
外部工件零点偏移
G54工件零点偏移
G55工件零点偏移 G56工件零点偏移 G57工件零点偏移 G58工件零点偏移 G59工件零点偏移
变量号 #2700 #2701 #2702 #2703 #2704 #2705 #2706
#5203 #5223 #5243 #5263 #5283 #5303 #5323
攻丝加工循环
工件原点偏移值的系统变量Ⅰ
#5201 : #5204 #5221 : #5224 #5241 : #5244 第1轴外部工件零点偏移值 : 第4轴外部工件零点偏移值 第1轴G54工件零点偏移值 : 第4轴G54工件零点偏移值 第1轴G55工件零点偏移值 : 第4轴G55工件零点偏移值
SIEMENS参数编程程序跳转Ⅱ
条件跳转
IF 表达式 GOTOB LABEL (向后跳转,向程序头跳转) IF 表达式 GOTOF LABEL (向前跳转,向程序尾跳转) LABEL 为程序段标示
SIEMENS参数编程程序跳转Ⅱ IF R1>R2 GOTOF MARKE1 如果R1大于R2,那么跳
ENDm
注:循环允许嵌套,最多3层,但不允许交叉;
FANUC宏程序循环Ⅱ
FANUC宏程序循环Ⅲ
Biblioteka Baidu
FANUC宏程序循环Ⅳ
FANUC宏程序的条件表达式运算符
运算符
EQ NE
含义
等于 不等于
GT
GE LT LE
大于
大于或等于 小于 小于或等于
FANUC宏程序的调用Ⅰ
非模态调用G65:
格式: G65PpLl<自变量指定>
用G10改变工件坐标系零点偏移值
格式:G10L2PpIP ;
P=0:外部工件零点偏移值 P=1:工件坐标系G54的零点偏移值 P=2:工件坐标系G55的零点偏移值 P=3:工件坐标系G56的零点偏移值 P=4:工件坐标系G57的零点偏移值 P=5:工件坐标系G58的零点偏移值 P=6:工件坐标系G59的零点偏移值 IP: 对于绝对值指令(G90),为每个轴的工件 零点偏移值。 对于增量值指令(G91),为每个轴加到设定的工 件零点偏移值。
其中 p:要调用的程序号 L:调用次数(默认为1) 自变量:数据传递到宏程序
FANUC宏程序的调用Ⅱ
模态调用(G66):
G66PpLl<自变量指定>; 程序点 G67;(取消模态)
其中 p:要调用的程序号 L:调用次数(默认为1) 自变量:数据传递到宏程序
FANUC宏程序的调用Ⅲ
FANUC宏程序的调用Ⅳ
格式:Rn (n的缺省取值范围为0-99) 例如:R1 R2 … R99
SIEMENS参数编程中的数学运 算符Ⅰ
SIEMENS参数编程中的数学运 算符Ⅱ
SIEMENS参数编程中的比较或 逻辑运算符
SIEMENS参数编程示例
SIEMENS参数编程程序跳转Ⅰ
无条件跳转
GOTOB LABEL (向后跳转,向程序头跳转) GOTOF LABEL (向前跳转,向程序尾跳转) LABEL 为程序段标示
无条件转移:GOTOn (n为顺序号,1——99999) 例:GOTO10为转移到N10程序段
FANUC宏程序的转移和循环Ⅱ
条件转移:(IF语句) IF [条件表达式] GOTOn 当指定的条件表达式满足时,转移 到标有顺序号n的程序段,如果指定 的条件表达式不满足时,执行下个 程序段
FANUC宏程序的转移和循环Ⅲ
D代码的几何补偿值 H代码的磨损补偿值 D代码的磨损补偿值
G10L10P R
G10L12P R G10L11P R G10L13P R
;
; ; ;
P:刀具补偿号 R:绝对值指令(G90)方式时的刀具补偿值。增量值指令 (G91)方式时的刀具补偿值为该值与指定的刀具补偿号 的值相加。
自动运行控制的系统变量
宏程序还可以实现系统参数的 控制,如,坐标系的读写、刀具偏 置的读写、时间信息的读写、倍率 开关的控制等。
SIEMENS参数编程
与FANUC类似,但功能要弱一 些。变量以“R”开始,如:R0、R1、 R99。不包含系统变量,系统变量以 “$”开头。
FANUC宏程序的构成
1) 包含变量 2) 包含算术或逻辑运算(=)的程序段 3) 包含控制语句(例如:GOTO,DO ,END)的程序段 4) 包含宏程序调用指令(G65,G66, G67或其他G代码,M代码调用宏程 序)的程序段
FANUC宏程序运算符Ⅰ
功能 定义 格式 #i=#j 备注
加法
减法 乘法
#i=#j+#k
#i =#j- #k #i =#j*#k
除法
#i=#j/#k
FANUC宏程序运算符Ⅱ
功能 正弦 格式 #i=SIN[#j] 备注 角度以度指定, 如90º 30’表示为 90.5度
反正弦
余弦 反余弦
#i=ASIN[#j]
工件原点偏移值的系统变量Ⅳ
第1轴工件零点偏移值(G54.1P3) : 第4轴工件零点偏移值(G54.1P3) 第1轴工件零点偏移值(G54.1P4) : 第4轴工件零点偏移值(G54.1P4) 第1轴工件零点偏移值(G54.1P48) : 第4轴工件零点偏移值(G54.1P48)
工件原点偏移值的系统变量Ⅴ
工件原点偏移值的系统变量Ⅵ
轴 第二 轴 功能
外部工件零点偏移
G54工件零点偏移
G55工件零点偏移 G56工件零点偏移 G57工件零点偏移 G58工件零点偏移 G59工件零点偏移
变量号 #2600 #2601 #2602 #2603 #2604 #2605 #2606
#5202 #5222 #5242 #5262 #5282 #5302 #5322
刀具半径补偿(D) 几何补偿 磨损补偿
#13001 #13002 #13003 : #13200 : #13400 #12001 #12002 #12003 : #12200 : #12400
当偏置组数小于等于200时,也可以用#2001—— #2400
刀具补偿存储器C用G10指令进行设定
H代码的几何补偿值
#3003 单程序段 辅助功能的完成
0
1 2 3
有效
无效 有效 无效
等待
等待 不等待 不等待
自动运行控制的系统变量
#3004 0 1 2 3 4 5 6 7 进给暂停 有效 无效 有效 无效 有效 无效 有效 无效 进给速度倍率 有效 有效 无效 无效 有效 有效 无效 无效 准确停止 有效 有效 有效 有效 无效 无效 无效 无效
FANUC宏程序的M代码调用
程序号 O9020 O9021 O9022 O9023 O9024 O9025 O9026 O9027 O9028 O9029 参数号 6080 6081 6082 6083 6084 6085 6086 6087 6088 6089
FANUC宏程序中刀具半径补偿
SIEMENS参数编程
FANUC宏程序的变量Ⅲ
变量号 变量类型 功能 #100—#199 公共变量 公共变量在不同的 宏程序中的意义相同 #500—#999 当断电时变量#100 #199初始化为空变量 #500 #999 的数据 保存即使断电也不丢 失
FANUC宏程序的变量Ⅳ
变量号 #1000—— 变量类型 功能 系统变量 系统变量用于读和 写CNC 运行时各种数 据的变化例如刀具的 当前位置和补偿值等
刀具补偿存储器C的系统变量
补偿 刀具长度补偿(H) 号 几何补偿 磨损补偿
1 2 3 : 200 : 400 #11001(#2201) #11002(#2202) #11003(#2203) : #11200(#2400) : #11400 #10001(#2001) #10002(#2002) #10003(#2003) : #10200(#2200) : #11400
#i=COS[#j] #i=ACOS[#j]
正切
反正切
#i=TAN[#j]
#i=ATAN[#j]
FANUC宏程序运算符Ⅲ
功能 平方根 格式 #i=SQRT[#j] 备注
绝对值
舍入
#i=ABS[#j]
#i=ROUND[#j]
上取整
下取整 自然对数 指数函数
#i=FIX[#j]
#i=FUP[#j] #i=LN[#j] #i=EXP[#j]
数控加工中宏程序的编制方法
FANUC宏程序简介
在数控编程中,宏程序编程灵 活、高效、快捷。宏程序不仅可以 实现象子程序那样,对编制相同加 工操作的程序非常有用,还可以完 成子程序无法实现的特殊功能,例 如,型腔加工宏程序、固定加工循 环宏程序、球面加工宏程序、锥面 加工宏程序等。
FANUC宏程序特殊用法
自变量指定Ⅱ
FANUC宏程序的G代码调用
程序号 O9010 O9011 O9012 O9013 O9014 O9015 O9016 O9017 O9018 O9019 参数号 6050 6051 6052 6053 6054 6055 6056 6057 6058 6059
FANUC宏程序的G代码调用
宏程序示例Ⅰ
采用Φ20R4铣刀加工SR30的球,已知球心坐标为 (X0Y0Z-5.)
FANUC宏程序的变量Ⅰ
FANUC数控系统变量表示形式 为# 后跟1~4位数字,变量种类有四 种:
变量号 #0 变量类型 功能
空变量该变量 没有任何值能 总是空, 赋给该变量
FANUC宏程序的变量Ⅱ
变量号 #1——#33 变量类型 功能 局部变量 局部变量只能用在宏 程序中存储数据,例 如运算结果。当断电 时局部变量被初始化 为空,调用宏程序时 自变量对局部变量赋 值。
工件原点偏移值的系统变量Ⅷ
轴 第四 轴 功能
外部工件零点偏移
G54工件零点偏移
G55工件零点偏移 G56工件零点偏移 G57工件零点偏移 G58工件零点偏移 G59工件零点偏移
变量号 #2800 #2801 #2802 #2803 #2804 #2805 #2806
#5204 #5224 #5244 #5264 #5284 #5304 #5324
轴 第一 轴 功能
外部工件零点偏移
G54工件零点偏移
G55工件零点偏移 G56工件零点偏移 G57工件零点偏移 G58工件零点偏移 G59工件零点偏移
变量号 #2500 #2501 #2502 #2503 #2504 #2505 #2506
#5201 #5221 #5241 #5261 #5281 #5301 #5321
工件原点偏移值的系统变量Ⅱ
#5261 : #5264 #5281 : #5284 #5301 : #5304 第1轴G56工件零点偏移值 : 第4轴G56工件零点偏移值 第1轴G57工件零点偏移值 : 第4轴G57工件零点偏移值 第1轴G58工件零点偏移值 : 第4轴G58工件零点偏移值
#5321 : #5324 #7001 : #7004 #7021 : #7024