什么是子程序,如何使用子程序呢

什么是子程序,如何使用子程序呢,第1张

子程序(subroutine)是一个概括性的术语,任何高级程序所调用的程序,都被称为子程序。它经常被使用在汇编语言层级上。子程序的主体(body)是一个代码区块,当它被调用时就会进入运行。

一般程序设计语言包含两种基本的抽象:过程抽象和数据抽象。过程抽象有时也称控制抽象。子程序是最主要过程抽象机制。面向对象语言中的方法与子程序的概念十分相似,不同在于它们的调用以及它们与类或对象关联的方式。每个子程序只有一个入口。在执行期间,调用程序单位被停止执行,即任意时刻只有一个子程序在执行子程序执行完毕后,总是将控制返回给调用程序

扩展资料:

子程序的应用

1、零件上若干处具有相同的轮廓形状,在这种情况下,只要编写一个加工该轮廓形状的子程序,然后用主程序多次调用该子程序的方法完成对工件的加工。

2、加工中反复出现具有相同轨迹的走刀路线,如果相同轨迹的走刀路线出现在某个加工区域或在这个区域的各个层面上,采用子程序编写加工程序比较方便,在程序中常用增量值确定切入深度。

3、在加工较复杂的零件时,往往包含许多独立的工序,有时工序之间需要适当的调整,为了优化加工程序,把每一个独立的工序编成一个子程序,这样形成了模块式的程序结构,便于对加工顺序的调整,主程序中只有换刀和调用子程序等指令

参考资料来源:百度百科-子程序

参考资料来源:百度百科-计算机科学

主、子程序的调用关系见图4-7。子程序中还可以再调用其他子程序,即可多重嵌套调用。M99的功能就是结束子程序的运行并使数控系统返回到主程序,重新按主程序的指令运行。每个子程序的最后一条指令必须是M99。主子程序调用编程:在图4-8中,轮廓的精加工用子程序编写,在主程序中,按轮廓的形状多次调用子程序,其参考程序如下:

425 子程序调用指令M98、M99

数控车床程序的编写也可采用主、子程序的形式。数控系统按主程序的指令运行,但在主程序中遇见调用子程序的指令时,将开始按子程序的指令运行;在子程序中遇见调用结束指令时,自动返回到主程序,并重新按主程序的指令运行。

对程序中有一些顺序固定或反复出现的加工图形,可将其写成子程序,然后由主程序来调用,这样可以大大简化整个程序的编写。

1子程序调用指令M98

指令格式:M98 PL

M98指令中的P后面跟的是被调用的子程序的程序号,而L后面跟的是调用该子程序的次数(默认值为1)。主、子程序的调用关系见图4-7。

在编写程序时,主、子程序必须写在同一个文件中,都是以字母“O”开头,以“O”单独作为一程序行书写。子程序中还可以再调用其他子程序,即可多重嵌套调用。

图4-7 主、子程序调用关系

同一个子程序可被主程序多次调用。同一个主程序可以调用多个不同的子程序。

2子程序结束指令M99

M99的功能就是结束子程序的运行并使数控系统返回到主程序,重新按主程序的指令运行。每个子程序的最后一条指令必须是M99。

例4-6主子程序调用编程:在图4-8中,轮廓的精加工用子程序编写,在主程序中,按轮廓的形状多次调用子程序,其参考程序如下:

图4-8 主、子程序编程

O1000

N001 G92 X1500 Z1000;

N002 M03 S800 M08;

N003 G00 X350 Z0;

N004 G01 X0 F03;

N005 G00 X300 Z20;

N006 G01 Z-550 F03;

N007 G00 X1500 Z1000;

N008 X320Z0T0303;

N009 M98 P1500 L2;

N010 G00 W-120;

N011 G01 X0 F012;

N012 G04 X20;

N013 G00 X1500 Z1000 M09;

N014 M30;

O1500

N101 G00 W-120;

N102 G01 U-120 F015;

N103 G04 X10;

N104G00U12;

N105W-8;

N106 G01 U-12 F015;

N107 G04 X10;

N108 G00U12;

N109 M99;

取工件左端面中心点为编程坐标原点,对刀点位置在编程坐标系中X150 Z100位置。

需要注意的是:在MDI方式下,使用子程序调用指令是无效的。

以上就是关于什么是子程序,如何使用子程序呢全部的内容,包括:什么是子程序,如何使用子程序呢、数控铣主程序能不能调用两个不同子程序编程、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9747072.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存