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

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

时间:2023-06-16 理论教育 版权反馈
【摘要】:2.程序流程框图设计根据以上算法设计和分析,规划“双向往复循环”铣削模式的铣削刀路轨迹如图8-20所示,“单向往复循环”铣削模式的铣削刀路轨迹如图8-21所示,“双向往复循环”铣削模式的程序设计流程框图如图8-22所示,“单向往复循环”铣削模式的程序设计流程框图如图8-23所示。

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

1.算法的设计

(1)本实例8-3和实例8-2只是加工型面的类型不同,其编程的算法和思路相似,同时本实例和第7章孔口倒角45°实例也具有相似之处,可以将它们对照阅读。

(2)斜面可以看做无数条直线集合而成的斜面,其中任意两条直线均满足斜率为45°的一次函数关系,根据加工图形和刀具之间关系可以建立图8-19所示的数学模型,采用数学表达式表示刀位点之间的关系。

(3)根据图8-19所示的数学模型可知,设#100号变量控制斜面的角度,本实例中斜面斜角为45°,因此#100号变量值为45°;设置#102号变量(Z向)为自变量,#101号变量(X向)为因变量,这样铣削宽度随着铣削深度的变化而变化,它们之间的关系可表达为#101=#102∗TAN[#100],深度作为铣削过程循环结束的控制条件,即采用语句IF[#102 LE 10]GOTO n控制整个铣削的循环过程。

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

图8-19 铣削C10mm斜面数学模型示意图

(4)本实例斜面的斜率是45°,其截面图形为等腰直角三角形,显然铣削该斜面的深度变化和宽度变化是一致的。下面根据这一特性介绍另外一种编程的思路:

铣削之前确定好总的铣削层数,设置#100号变量控制铣削总的层数,设置#102号变量控制每层铣削深度(Z向)的变化量,该方向的余量除以总铣削层数的语句为#102=10/#100;设置#101号变量控制宽度(X向)变化量,该方向的余量除以总铣削层数的语句为#101=10/#100。

该编程思路具有较强的通用性,不但适用于任意斜率的斜面加工,而且对于圆弧面、斜面、圆弧和斜角过渡面以及圆弧与圆弧过渡面等铣削加工都具有借鉴作用。

2.程序流程框图设计

根据以上算法设计和分析,规划“双向往复循环”铣削模式的铣削刀路轨迹如图8-20所示,“单向往复循环”铣削模式的铣削刀路轨迹如图8-21所示(中间的刀路轨迹不在图中表示),“双向往复循环”铣削模式的程序设计流程框图如图8-22所示,“单向往复循环”铣削模式的程序设计流程框图如图8-23所示。

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

图8-20 “双向往复循环”刀路轨迹示意图

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

图8-21 “单向往复循环”刀路轨迹示意图

1—第1条刀路轨迹 2—中间刀路轨迹 3—最终刀路轨迹

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

图8-22 “双向往复循环”铣削程序设计流程框图

978-7-111-45798-5-Chapter08-38.jpg(www.xing528.com)

图8-23 “单向往复循环”铣削程序设计流程框图

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

程序1:采用单向往复循环铣削模式铣削C10mm斜面的宏程序代码

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

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

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

(1)程序O8006采用“单向往复循环”铣削模式,铣削C10mm斜面的宏程序代码,该程序的编程思路:根据数学模型计算出刀位点值,然后由Y0向+Y方向进行直线插补,通过条件控制语句IF[#102 GE #107]GOTO 10实现整个斜面的铣削。

(2)编程的方式采用刀心编程和轮廓编程。

刀心编程直接计算轮廓上刀位点的坐标值;轮廓编程需要利用数控系统自带的G41或G42刀具半径补偿功能,使数控系统自动偏置一个刀具半径,实现实际轮廓和零件轮廓的一致。使用刀具半径补偿功能,提供两点建议:

1)在简单型面(铣削平面、直线(不包括斜线)、键槽等)编程中计算刀位点的坐标值,建议采用刀心编程。原因在于:刀具半径补偿功能使用不当,会导致机床的报警或导致零件的过切(或者欠切)。

2)复杂型面(铣削模具型芯/型腔、圆弧/非整圆、斜线轮廓、过渡变化较大的加工型面等)编程中计算刀位点的坐标值,建议使用刀具半径补偿功能。

本实例中,铣削刀路轨迹为直线,加工型面比较单一,因此采用刀心编程比采用刀具半径补偿功能编程相对简单,参见程序中的语句:G01 X[0.5+#103-#102]F500、G91 G01 Y[2∗#103 +#106+1]F800,其中#103号变量控制刀具半径值。

程序2:采用双向往复循环铣削模式铣削C10mm斜面的宏程序代码

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

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

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

(1)程序O8007是采用“双向往复循环”铣削模式和“自上而下”加工方式,铣削C10mm斜面的宏程序代码。该程序的编程思路:根据数学模型计算刀位点的坐标值,然后由Y0向+Y方向进行直线插补,通过循环控制语句WHILE[#102 LE #107]DO 1…END 1实现整个斜面轮廓的铣削过程。

(2)其他编程要点提示请参考程序O8001、O8002、O80003、O8004、O8005、O8006编程要点提示部分中的内容。

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

我要反馈