收藏 分享(赏)

数控宏程序.doc

上传人:ysd1539 文档编号:7364197 上传时间:2019-05-16 格式:DOC 页数:10 大小:41.50KB
下载 相关 举报
数控宏程序.doc_第1页
第1页 / 共10页
数控宏程序.doc_第2页
第2页 / 共10页
数控宏程序.doc_第3页
第3页 / 共10页
数控宏程序.doc_第4页
第4页 / 共10页
数控宏程序.doc_第5页
第5页 / 共10页
点击查看更多>>
资源描述

1、数控宏程序的编制及应用 中华医学之家:医学论文/论文发表 2010-03-31 08:54:23 作者:站长 来源: 文字大小:大中小【摘要】文章介绍了用户宏程序的概念,提出了编制用户宏程序的一般方法。为广大数控工作人员提供了一种切实可行的编制用户宏程序的思路。通过两个编程实例,使得这种思路更加清晰。【关键词】用户宏程序;流程图;宏指令一、概述现行的数控程序的编制中,主要有两种编程方式:手工编程和自动编程。虽然自动编程运用得越来越广泛,但手工编程在某些领域也是不可或缺的一种编程手段。手工编程至少在此以下几方面有着自己的优势:其一,熟练的程序员编制的手工程序加工效率高于自动编程;其二,熟悉手工编

2、程,对自动程序的修改是不无裨益的;其三,自动编程的所敲定的走刀路线限制了其加工工艺,通过手工编程能够得到弥补。在手工编程过程中,用户宏程序的编制,能极大提高程序编制的效率,因此,我们在数控教学及训练过程中,必须把用户宏程序的编制作为我们数控教学的重要内容之一。从历年全国数控大赛的试题中也不难发现,用户宏程序的编制是运用得极其频繁的。但是,我们很难在目前的教材中找到完整的宏程序的编写的方法及思路。为此,笔者提出了一整套设计用户宏程序的方法,通过利用流程图来设计用户宏程序,提高了编程的效率。二、用户宏程序简介用户宏程序有 A、B 两种,A 类宏程序用 G65指令编写,其格式如下:G65 Hm P#

3、i Q#j R#k其中,m0199 表示运算命令或转移命令功能;#i存入运算结果的变量名;#j进行运算的变量名 1,可以是常数,常数直接表示,不带#;#k进行运算的变量名 2,也可以是常数。意义, #i=#j#k,表示运算符号,常用意义如表 1表 1G代码H代码功能定义G65H01赋值#i#jG65H02加法#i#j#kG65H03减法#i#j#kG65H04乘法#i#j#kG65H05除法#i#j#kG65H80无条件转移转向 NG65H81条件转移 1IF #j#k,GOTO NG65H82条件转移 2IF #j#k,GOTO NG65H83条件转移 3IF #j#k,GOTO NG65H

4、84条件转移 4IF #j#k,GOTO NG65H85条件转移 5IF #j#k,GOTO NG65H86条件转移 6IF #j#k,GOTO NG65H99产生 P/S报警产生 500+1号 P/S报警除此以外,G65 指令还可以实现逻辑运算、开平方、取绝对值、三角运算及复合运算等,相关指令见有关书籍,这里不一一介绍。需要指出的是,不同的数控系统,其功能的多少也不一样,用户可参考有关系统的说明书。B 类宏程序由控制语句,调用语句所组成。宏程序可以与主程序做在一起,也可以单独做成一个子程序,然后用 G65指令调用。调用方法如下:G65 P(程序号)引数赋值或 G65 P(程序号) L(循环次

5、数)引数赋值所谓引数赋值,是指用 A、B、C、D 等地址给变量#1、#2、#3、#4 等赋值。B 类宏程序的控制指令有三类,与 C语言等高级程序设计语言的控制指令很类似。一类是 IF语句,格式为:IF条件式GOTO n (n 即顺序号)条件式成立时,从顺序号为 n的程序段往下执行,条件式不成立时,执行下一下程序段;第二类是 WHILE语句,格式为:WHILE条件式 DO mEND m条件式成立时,从 DO m的程序段到 END m的程序段重复执行,条件式不成立时,则从 END m的下一程序段执行。第三类是无条件转移指令,格式为:GOTO n。三、运用流程图编写用户宏程序的一般步骤运用流程图编写

6、用户宏程序的一般步骤为:一分析零件结构,确定宏程序加工的内容,找出加工工艺路线的律;二将零件加工路线规律用流程图表达出来,并进一步分清楚哪些是程序编制过程中的变量,哪些是常量,从而将一般的流程变成程序流程图;三根据程序流程图,编写零件的加工程序。四、应用举例(一)宏程序应用实例一如图 1所示,在一根轴上加工 N个槽,每个槽的宽度为 a1,槽的间距为 a2,槽底直径为 b1,棒料直径 b2,并且设所给材料足够长,试编写程序加工该零件,现有一零件参数为 N100 个槽,槽底直径 b130mm,槽宽 a15mm,工件直径 b240mm,间隔a22mm,刀宽3mm,现编写程序加工。图 11 零件工艺过

7、程分析该零件是一个比较简单的例子,在压面机械上用得较多。零件的精度要求不高,为了使程序有更广泛的适应性,将宏程序做成一个子程序,用主程序来调用实现零件的加工。加工时将坐标原点选择在如图所示的位置,X 轴离第一个槽的距离为一个间距 a2的距离。零件的加工过程如下将:将刀具移至加工起点进刀切削第一个槽计算下一槽的位置并将刀具移到此位置加工下一个槽如此至最后一个槽加工完为止。将此过程画成流程图,如图 2(a)所示。(a) (b)图 22 零件加工过程中所使用的变量通过分析,要加工该零件,需要如下一些变量:工件直径#200= b2槽底直径#201= b1槽宽#202= a1槽间间隔#203= a2切槽

8、刀宽度#204每加工一个槽后,切槽刀在 Z轴方向移动的距离#205(等于槽间距加上槽宽)槽的起点坐标 Xs=#206,Zs=#207槽加工终点的坐标 Xf=#208,Yf=#209计算槽数目的变量#215加工槽的总数#216由此画出编制程序所用的流程图,如图 2(b)所示。3 根据程序流程图编制程序宏程序 O9061N10 G65 H83 P160 Q#204 R#202 如果刀宽大于槽完,则结束N20 G65 H01 P#215 Q0 计数器变量清零N30 G65 H02 P#205 Q#202 R#203 计算#205N40 G65 H02 P#206 Q#200 R5 工件直径加上 5m

9、m作为 X方向起点N50 G65 H02 P#207 Q#203 R#204 槽的间距加上一个刀宽N60 G65 H01 P#207 Q?#207 取负值后作为第一个槽的 Z向起点N70 G65 H01 P#208 Q#201 槽底直径作为槽终点的 X坐标N80 G65 H01 P#209 Q?#205 第一个槽终点 Z向坐标N90 G00 X#206 Z#207 M08 定位到槽加工的位置N100 G75 R1 N110 G75 X#208 Z#209 P2 Q#204 F20 加工槽N120 G65 H03 P#207 Q#207 R#205 下一个槽起点 Z向坐标计算N130 G65 H

10、03 P#209 Q#209 R#205 下一个槽终点 Z向坐标计算N140 G65 H02 P#215 Q#215 R1 槽计数器加 1N150 G65 H84 P90 Q#215 R#216 判断槽是否加工完毕N160 M08N170 M99 结束主程序 O0001N10 G65 H01 P#200 Q40 工件直径赋值N20 G65 H01 P#201 Q30 槽底直径赋值N30 G65 H01 P#202 Q5 槽宽赋值N40 G65 H01 P#203 Q2 槽间间隔赋值N50 G65 H01 P#204 Q3 切槽刀宽赋值N60 G65 H01 P#216 Q100 槽数赋值N70

11、 G00 X100 Z100 起刀点位置N80 M98 P9061 调用宏程序N90 M30 程序结束(二)宏程序应用实例二对于一些大悬伸(加工深度与刀具直径之比较大)的零件,用普通加工方法总难达到理想效果,此时用插铣法容易保证零件精度,如图 3所示的零件,尺寸 80很难保证,用插铣法后获得了比较好的效果。曾经有工厂做过类似的程序,但程序只是针对零件本身,适应性不强,当零件的尺寸发生变化后,程序还得发生较大修改。笔者针对这种情况,将程序分为主程序和子程序,当零件的尺寸发生变化后,只需要修改主程序即可,非常方便。1 加工工艺分析传统加工工艺方法采用多次重复加工。很难消除让刀,并且造成加工应力,最

12、后由于应力释放造成零件的内腔变小。为了解决这个问题,我们将加工分为粗加工和精加工,粗加工采用普通的工艺方法,精加工采用插铣。建立如图 3所示的坐标系,为了保证加工质量,防止划伤已加工过的表面,编程时避免使用钻孔循环指令。加工轨迹如图 4所示,在 YZ平面内进行以下加工步骤:加工第一刀沿圆弧退刀返回 Z=3处沿圆弧进刀沿 X方向移动一个步距加工第二刀。加工过程中,粗加工尺寸 80按 79.6加工,而精加工采用宏程序编制高速插铣程序。精加工的具体参数如表 2所示图 3零件图及坐标系图 4刀具路径表 2精加工参数加工方式加工材料刀具步距设置安全高度顺铣铝合金18 整体硬质合金加长球头刀005Z=32

13、 加工流程图为增强程序的适应性,本程序刀分为子程序和主程序来编写,子程序起始位置为(0,0,50),刀具在加工过程中的基本路线是按前面所给出的路线来走刀。由此画出加工流程图如图 5(a)所示。(a) (b)图 53 程序所使用的变量及程序流程图本程序中所使用的变量如下:需加工部位 X方向的长度:#1;需加工部位 Y方向的长度:#2;需加工部位 Z方向的深度:#3;X 方向的步距:#4;走刀轨迹中,退(或进)刀时的半径:#5(本例图 4中的 R10);中间变量:#6、#7、#8、#9由所确定的变量及加工流程图,画出程序流程图如图 5(b)所示。4 编制程序子程序:%9001N10 #1=#1/2

14、 #1 变量取 1/2作为 X坐标N20 #2=#2/2 #2 变量取 1/2作为 Y坐标N30 G00 X#1 X 方向定位到加工位置N40 G41 D1 Y#2 Y 方向定位到加工位置N50 G01 Z3 F3000 M08 下降下安全高度,开冷却液N60 #6=(#3#5) 计算加工终点 Z向坐标N70 #7=#22*#5 计算退刀终点 Y坐标N80 G01 Z#6 插铣加工N90 G02 Y#7 R#5 退刀N100 G01 Z3 返回N110 G02 Y#2 R#5 进刀N120 #8=#8+#4 X 方向总加工长度计数N130 G91 G01 X#4 X 方向走一个步距N140 I

15、F #8LE#1 GOTO 80 判别第一侧是否加工完N150 G90 Y#2 移至另一侧N160 G01 Z#6 插铣加工另一侧N180 G02 Y#7 R#5 退刀N190 G01 Z3 返回安全高度N200 G02 Y#2 R#5 进刀N210 #9=#9+#4 X 方向总加工长度计数N220 G91 G01 X#4 X 方向移动一个步距N230 IF #9LE#1 GOTO 160 判别另一侧是否加工完N240 G90 G40 G00 X0 Y0 M09 X、Y 方向返回起始点N250 Z50 Z 方向返回起始点N260 M99 宏程序结束主程序:%1010N10 T01 选一号刀N2

16、0 M06 换刀N30 G00 G90 G54 G19 X0 Y0 S5000 M03 定位到起始位置,选择坐标平面及坐标系,启动主轴。N40 G43 H01 Z50 Z 方向补偿N60 G65 P9001 A200 B80.05 C90 D0 E0 F0 I0.05 J10 K0 调用宏程序并给相关变量赋值N70 M05 停止主轴N80 G49 Z50 Z 方向取消补偿N90 M30 程序结束五、结束语利用流程图编制用户宏程序,思路清晰,所编制的程序适应性好,是一种值得推广的方法。【参考文献】1数控加工技师手册编委会数控加工技师手册M北京:机械工业出版社20052刘力健,牟盛勇数控加工编程及操作M北京:清华大学出版社20073郑红数控加工编程及操作M北京:北京大学出版社20054侯涛,马强CAD/CAM 与制造业信息化J2005,(1)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报