资源预览内容
第1页 / 共64页
第2页 / 共64页
第3页 / 共64页
第4页 / 共64页
第5页 / 共64页
第6页 / 共64页
第7页 / 共64页
第8页 / 共64页
第9页 / 共64页
第10页 / 共64页
亲,该文档总共64页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
数控加工中宏程序的编制方法首都航天机械公司 商学谦FANUC宏程序简介在数控编程中,宏程序编程灵活 、高效、快捷。宏程序不仅可以实 现象子程序那样,对编制相同加工 操作的程序非常有用,还可以完成 子程序无法实现的特殊功能,例如 ,型腔加工宏程序、固定加工循环 宏程序、球面加工宏程序、锥面加 工宏程序等。 FANUC宏程序特殊用法宏程序还可以实现系统参数的控 制,如,坐标系的读写、刀具偏置 的读写、时间信息的读写、倍率开 关的控制等。 SIEMENS参数编程与FANUC类似,但功能要弱一 些。变量以“R”开始,如:R0、R1、 R99。不包含系统变量,系统变量以 “$”开头。FANUC宏程序的构成1) 包含变量 2) 包含算术或逻辑运算(=)的程序段 3) 包含控制语句(例如:GOTO,DO,END)的程序段 4) 包含宏程序调用指令(G65,G66,G67或其他G代码,M代码调用宏程序)的程序段FANUC宏程序的变量FANUC数控系统变量表示形式 为# 后跟14位数字,变量种类有四 种:变量号变量类型功能#0空变量该变量 总是空,没有任何值能 赋给该变 量FANUC宏程序的变量变量号变量类 型功能#1#33局部变量 局部变量只能用在宏 程序中存储数据,例 如运算结果。当断电 时局部变量被初始化 为空,调用宏程序 时自变量对局部变 量赋值。FANUC宏程序的变量变量号变量类型 功能#100#199 #500#999公共变量 公共变量在不同的 宏程序中的意义相同 当断电时变 量#100 #199初始化为空变量#500 #999 的数据 保存即使断电也不丢 失FANUC宏程序的变量变量号变量类型 功能#1000系统变量 系统变量用于读和 写CNC 运行时各种数 据的变化例如刀具的 当前位置和补偿值 等刀具补偿存储器C的系统变量当偏置组数小于等于200时,也可以用#2001 #2400补 偿号 刀具长度补偿(H) 刀具半径补偿(D) 几何补偿磨损补偿几何补偿磨损补 偿 1 2 3 : 200 : 400 #11001(#2201) #11002(#2202) #11003(#2203) : #11200(#2400) : #11400 #10001(#2001) #10002(#2002) #10003(#2003) : #10200(#2200) : #11400#13001 #13002 #13003 : #13200 : #13400#12001 #12002 #12003 : #12200 : #12400刀具补偿存储器C用G10指 令进行设定P:刀具补偿号 R:绝对值指令(G90)方式时的刀具补偿值 。增量值指令(G91)方式时的刀具补偿值为 该值与指定的刀具补偿号的值相加。H代码的几何补偿值G10L10P R ;D代码的几何补偿值G10L12P R ;H代码的磨损补偿值G10L11P R ;D代码的磨损补偿值G10L13P R ;自动运行控制的系统变量#3003单程序段辅助功能的完成0有效等待1无效等待2有效不等待3无效不等待自动运行控制的系统变量#3004进给暂 停 进给速度倍率准确停止0有效有效有效 1无效有效有效 2有效无效有效 3无效无效有效 4有效有效无效 5无效有效无效 6有效无效无效 7无效无效无效攻丝加工循环工件原点偏移值的系统变量 #5201 : #5204第1轴外部工件零点偏移值 : 第4轴外部工件零点偏移值 #5221 : #5224第1轴G54工件零点偏移值 : 第4轴G54工件零点偏移值 #5241: #5244第1轴G55工件零点偏移值 : 第4轴G55工件零点偏移值 工件原点偏移值的系统变量 #5261 : #5264 第1轴G56工件零点偏移值 : 第4轴G56工件零点偏移值 #5281 : #5284第1轴G57工件零点偏移值 : 第4轴G57工件零点偏移值 #5301: #5304第1轴G58工件零点偏移值 : 第4轴G58工件零点偏移值 工件原点偏移值的系统变量#5321 : #5324 第1轴G59工件零点偏移值 : 第4轴G59工件零点偏移值 #7001 : #7004第1轴工件零点偏移值(G54.1P1) : 第4轴工件零点偏移值(G54.1P1) #7021 : #7024第1轴工件零点偏移值(G54.1P2) : 第4轴工件零点偏移值(G54.1P2) 工件原点偏移值的系统变量#7041 : #7044第1轴工件零点偏移值(G54.1P3) : 第4轴工件零点偏移值(G54.1P3) #7061 : #7064第1轴工件零点偏移值(G54.1P4) : 第4轴工件零点偏移值(G54.1P4) #7941 : #7944第1轴工件零点偏移值(G54.1P48) : 第4轴工件零点偏移值(G54.1P48) 工件原点偏移值的系统变量轴功能变量号 第一 轴 外部工件零点偏移#2500#5201G54工件零点偏移#2501#5221G55工件零点偏移#2502#5241G56工件零点偏移#2503#5261G57工件零点偏移#2504#5281G58工件零点偏移#2505#5301G59工件零点偏移 #2506#5321 工件原点偏移值的系统变量轴功能变量号 第二 轴 外部工件零点偏移#2600#5202G54工件零点偏移#2601#5222G55工件零点偏移#2602#5242G56工件零点偏移#2603#5262G57工件零点偏移#2604#5282G58工件零点偏移#2605#5302G59工件零点偏移 #2606#5322 工件原点偏移值的系统变量轴功能变量号 第三 轴 外部工件零点偏移#2700#5203G54工件零点偏移#2701#5223G55工件零点偏移#2702#5243G56工件零点偏移#2703#5263G57工件零点偏移#2704#5283G58工件零点偏移#2705#5303G59工件零点偏移 #2706#5323 工件原点偏移值的系统变量轴功能变量号 第四 轴 外部工件零点偏移#2800#5204G54工件零点偏移#2801#5224G55工件零点偏移#2802#5244G56工件零点偏移#2803#5264G57工件零点偏移#2804#5284G58工件零点偏移#2805#5304G59工件零点偏移 #2806#5324 用G10改变工件坐标系零点偏移值 格式:G10L2PpIP ; P=0:外部工件零点偏移值 P=1:工件坐标系G54的零点偏移值 P=2:工件坐标系G55的零点偏移值 P=3:工件坐标系G56的零点偏移值 P=4:工件坐标系G57的零点偏移值 P=5:工件坐标系G58的零点偏移值 P=5:工件坐标系G59的零点偏移值 IP: 对于绝对值指令(G90),为每个轴的工件 零点偏移值。 对于增量值指令(G91),为每个轴加到设定的工 件零点偏移值。FANUC宏程序运算符功能格式备注定义#i=#j加法#i=#j+#k减法#i =#j- #k乘法#i =#j*#k除法#i=#j/#kFANUC宏程序运算符功能格式备注正弦#i=SIN#j角度以度指定, 如9030表示为 90.5度 反正弦#i=ASIN#j余弦#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宏程序运算符 功能格式备注或#i=#j OR #k逻辑运算一位 一位的按二进 制数执行 异或#i=#j XOR #k与 #i=#j AND #k 从BCD转为BIN #i=BIN#j用于与PMC的 信号交换 从BIN转为BCD #i=BCD#j FANUC宏程序的转移和循环 无条件转移:GOTOn (n为顺序号,199999)例:GOTO10为转移到N10程序段 FANUC宏程序的转移和循环 条件转移:(IF语句) IF 条件表达式 GOTOn当指定的条件表达式满足时,转 移到标有顺序号n的程序段,如果指 定的条件表达式不满足时,执行下 个程序段FANUC宏程序的转移和循环 条件转移:(IF语句) IF 条件表达式 GOTOnFANUC宏程序的转移和循环 IF 条件表达式 THEN当指定的条件表达式满足时,执行预先决 定的宏程序语句。例:IF #1EQ #2 THEN #3=0;FANUC宏程序循环WHILE 条件表达式 Dom;(m=1,2,3)注:循环允许嵌套,最多3层,但不允许交叉;条 件 不 满 足条件满足ENDmFANUC宏程序循环 FANUC宏程序循环 FANUC宏程序循环 FANUC宏程序的条件表达式运算符 运算符含义EQ等于NE不等于GT大于GE大于或等于LT小于LE小于或等于FANUC宏程序的调用非模态调用G65:格式: G65PpLl其中 p:要调用的程序号L:调用次数(默认为1)自变量:数据传递到宏程序FANUC宏程序的调用模态调用(G66):G66PpLl; 程序点 G67;(取消模态)其中 p:要调用的程序号L:调用次数(默认为1)自变量:数据传递到宏程序FANUC宏程序的调用FANUC宏程序的调用自变量指定FANUC宏程序的G代码调用程序号参数号 O90106050 O90116051 O90126052 O90136053 O90146054 O90156055 O90166056 O90176057 O90186058 O90196059FANUC宏程序的G代码调用FANUC宏程序的M代码调用程序号参数号 O90206080 O90216081 O90226082 O90236083 O90246084 O90256085 O90266086 O90276087 O90286088 O90296089FANUC宏程序中刀具半径补偿 SIEMENS参数编程格式:Rn (n的缺省取值范围为0-99) 例如:R1 R2 R99SIEMENS参数编程中的数学 运算符 SIEMENS参数编程中的数学 运算符SIEMENS参数编程中的比较 或逻辑运算符SIEMENS参数编程示例SIEMENS参数编程程序跳转无条件跳转GOTOB LABEL (向后跳转,向程序头跳转) GOTOF LABEL (向前跳转,向程序尾跳转)LABEL 为程序段标示SIEMENS参数编程程序跳转条件跳转IF 表达式 GOTOB LABEL (向后跳转,向程序头跳转)IF 表达式 GOTOF LABEL (向前跳转,向程序尾跳转)LABEL 为程序段标示SIEMENS参数编程程序跳转IF R1R2 GOTOF MARKE1如果R1大于R2,那么 跳跃到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 同一程序段中的几个条 件 宏程序示例 采用20R4铣刀加工SR30的球,已知球心坐标为 (X0Y0Z-5.)宏程序示例 宏程序示例 分析: 铣球程序一般采用自动编程来实现,但是 ,利用宏程序强大的功能同样也可以实现, 而且程序更加简洁。编程思路: 铣球可以认为是多个铣圆的组合。排刀分布: 有两种方案,一是按Z向分布,二是按圆心 角分布。从保证表面
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号