首页 理论教育 算法设计与程序流程框图优化方案

算法设计与程序流程框图优化方案

时间:2023-06-16 理论教育 版权反馈
【摘要】:实例4-3 程序4编程要点提示:本程序加工顺序是先钻中心孔,再钻φ19.8mm的孔,最后采用φ20mm的镗刀进行镗孔加工。

算法设计与程序流程框图优化方案

1.算法的设计

(1)数控铣削加工中一般孔的加工步骤如下:钻中心孔、钻孔(留有余量)、镗孔(铰孔)。加工孔的直径较大,一般采用直径较小的钻头进行预钻孔,然后用直径大的钻头进行扩孔,最后进行镗孔(铰孔)加工。本实例采用钻中心孔、预钻孔、镗孔(铰孔)进行程序的编制

(2)从图4-10可知,该零件9个孔均匀分布在正方形一条对角线上,且孔与孔之间的距离为30mm。因此只需知道其中一个孔中心点的坐标值,就可以通过数学模型计算出其他孔中心点的坐标位置值。关于孔中心点的坐标值计算有以下两种方法:

1)以第一个孔为例,具体说明数学模型建立方法:以正方形左下角的顶点(也就是编程原点)为三角形的顶点,孔中心到编程原点距离30mm为斜边,孔X、Y向坐标值作为三角形的两条直角边,构建的数学模型如图4-11所示。

978-7-111-45798-5-Chapter04-33.jpg

图4-11 数学模型示意图

如图4-11的数学模型示意图所示,设计#100号变量来控制斜边的增量,通过三角函数的关系计算出#101、#102的值,再通过赋值语句#100=#100+30和条件语句IF[#100 LE 270]GOTOn来控制整个循环的过程。

2)利用极坐标系G15、G16指令。该实例零件可以视为实例4-2圆周钻孔的一个特例,因此也可采用极坐标系来简化编程,以第一个孔为例具体说明:

可以把第一个孔视为均匀分布在以正方形左下角的顶点(也就是编程原点)为圆心、半径长为30mm圆周上的孔,该孔与X轴正方向的夹角为45°。第二个孔视为均匀分布在以正方形左下角的顶点(也就是编程原点)为圆心、半径长为60mm圆周上的孔,该孔与X轴正方向的夹角为45°,第三个孔至第九孔依次类推,可以发现极坐标系半径是以30mm为单位逐渐增加,而极角不发生改变。

在程序中设置#100号变量控制极坐标系的极半径,#101=45控制极坐标系的极角。通过G16 G0 X[#100]Y[#101]移动到孔中心点的坐标位置,结合钻孔循环G83,完成一个孔的加工后,通过#100=#100+30极坐标系的极半径变化,移动到下一个孔的加工位置,通过IF[#100 LE 270]GOTO n来控制整个循环过程。

(3)可以通过旋转坐标系G68、G69旋转功能,将整个坐标系旋转45°后,设置#100号变量控制X向的变化,具体算法可以参考实例4-1直线排孔的宏程序应用实例。

2.程序流程框图设计

根据以上算法设计分析,规划本实例钻孔的刀路轨迹如图4-12所示,程序流程框图的设计如图4-13和图4-14所示。

978-7-111-45798-5-Chapter04-34.jpg

图4-12 钻孔刀路轨迹示意图

978-7-111-45798-5-Chapter04-35.jpg

图4-13 基于数学模型程序设计流程框图

978-7-111-45798-5-Chapter04-36.jpg

图4-14 基于极坐标系编程程序设计流程框图

3.根据算法以及流程框图编写加工的宏程序代码

程序1:采用数学模型计算孔位置的宏程序代码

978-7-111-45798-5-Chapter04-37.jpg

实例4-3 程序1编程要点提示:

(1)本实例程序是基于数学模型并利用三角函数关系,计算出每个孔中心点的坐标位置,结合G81钻孔循环,条件语句IF[#100 LE 270]GOTO 10用来控制整个循环过程。(www.xing528.com)

(2)此程序的算法,前面进行了较为详细的分析。为了节省篇幅,在此不再赘述。

程序2:采用极坐标系计算孔位置的编写宏程序代码

978-7-111-45798-5-Chapter04-38.jpg

978-7-111-45798-5-Chapter04-39.jpg

实例4-3 程序2编程要点提示:

(1)本实例程序是采用极坐标系G16编程指令,在程序中极角为固定值45°,通过不断增大极坐标系的极半径值,结合G81钻孔循环指令,通过条件语句IF[#100 LE 270]GOTO 10来控制整个循环过程。

(2)此程序的算法,在前面进行了较为详细的分析,在此不再赘述。

程序3:采用旋转坐标系G69、G68编写的宏程序代码

978-7-111-45798-5-Chapter04-40.jpg

978-7-111-45798-5-Chapter04-41.jpg

实例4-3 程序3编程要点提示:

(1)程序O4013是通过旋转坐标系G68、G69编程指令,将整个坐标系旋转了45°后,按照实例4-1直线排孔算法编制的宏程序代码。

(2)此程序的算法,在前面进行了较为详细的分析,在此不再赘述。程序4:按钻中心孔钻孔镗孔加工顺序编写的宏程序代码

说明:该程序是先预钻孔,然后进行镗孔,镗孔属于精加工,所以加工余量不能太大,在钻孔时可以采用φ19.8mm的钻头进行预钻孔加工。

978-7-111-45798-5-Chapter04-42.jpg

978-7-111-45798-5-Chapter04-43.jpg

978-7-111-45798-5-Chapter04-44.jpg

实例4-3 程序4编程要点提示:

(1)本程序加工顺序是先钻中心孔,再钻φ19.8mm的孔,最后采用φ20mm的镗刀进行镗孔加工。一般来说,φ20mm的孔在生产中不宜采用镗孔加工,采用铰孔加工或螺旋铣削加工较为适宜,但本程序中的加工顺序和算法具有实用价值的。

(2)本程序采用调用子程序的方式,依次来进行钻中心孔、钻φ19.8mm的孔以及镗孔的加工。

(3)程序中采用建立数学模型的方法,基于数学模型并利用三角函数的关系,计算出每个孔的坐标位置,结合G81、G83以及G85等循环指令,实现钻中心孔、钻孔和镗孔等工序的加工,条件语句IF[#110 LE 270]GOTO 10来控制整个循环过程。

(4)钻中心孔、钻孔、镗孔编程指令以及钻中心孔、钻孔、镗孔的深度都不完全一样。为了使程序的编制尽可能简洁,在程序中用#101号变量表示孔加工方式,用#102号变量表示孔加工深度,如#101=81、#102=-50,G[#101]Z[#102]R5 F150和G81 Z-50 R5 F150是完全等价的。通过#101号变量、#102号变量的重新赋值,实现了钻中心孔、钻孔、镗孔等工序的加工。

(5)补充说明一点,此程序是仿照FANUC系统的模态信息变量编制出来的,关于模态信息变量,感兴趣的读者可以参考《BEIJING-FANUC-0i-MA系统操作说明书》。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈