高级数控编程:子程序调用及编程举例

高级数控编程:子程序调用及编程举例,第1张

高级数控编程:程序调用及编程举例

一次装夹加工多个形状相同或刀具运动轨迹相同的零件,即一个零件有重复加工部分的情况下,为了简化加工程序,把重复轨迹的程序段独立编成一程序进行反复调用, 这重复轨迹的程序称为子程序,而调用子程序的程序称主程序

子程序的调用

子程序的`调用方法如图1-2所示。需要注意的是,子程序还可以调用另外的子程序。从主程序中被调用出的子程序称一重子程序,共可调用四重子程序,如图1-3所示。

 

在子程序中调用子程序与在主程序中调用子程序方法一致。

格式:M98 P L

说明:P:子程序名

L:重复调用次数,省略重复次数,则认为重复调用次数为1次

例:M98 P123 L3

表示程序号为123的子程序被连续调用3次,如图1-4所示。

子程序中必须用M99指令结束子程序并返回主程序。

应用举例:扮森答

加工如图1-5所示轮廓,以知刀具起始位置为(0,0,100),切深为10mm,试编制程序。

图1-6

相关知识点:

●在使用子程序编程厅慧时,应注意主、子程序使用不同的编程方式。一般主程序中使用G90指令,而子程序使用G91指令,避免刀具在同一位置加工。

●当子程序中使用M99指令指定顺序号时,春码子程序结束时并不返回到调用子程序程序段的下一程序段,而是返回到M99指令指定的顺序号的程序段,并执行该程序段。

编程举例:如图1-6所示。

子程序执行完以后,执行主程序顺序号为18的程序段。

这个其实不难,关键就在于车完一个以后坐标要能往里移动,车完指定的个数后,坐标还要能够回到最开始的地方,\r\n你只要在子程序M99前面加上一句 G50 W -20.0 //这个20是指你算出的一个工件加上割断的刀宽的长度(如果工件猛庆还有二次加工且留了Z方向的余量,那么这个余量也要加进去,如果你车了第一个后发现工件长度是对的,可是第二个平不到端面,那就是这个20你算少了,反之平掉的太多,那就是算多了),\r\n \r\n之后最关键的地方来了,就是在主程序的M30之前要加一句 G50 W 20.0 //注意这个地方不一定是20,如果你的子程序调了两次就是40,三次就是60,以此类推,但必烂知扮须是用子程序饥灶里G50中的那个W来乘,是几个就是乘以几,这个千万不能算错,否则坐标会根据这个差值,一直移动,很可能会撞掉割刀或者崩掉平面的刀\r\n \r\n还有一点要注意,就是如果用了这个来做的话,在加工完第一个后,不要轻易按复位,因为你做完第一个后它的坐标已经变了,你一按复位,程序就结束了,但是移进去坐标还没有回来,这样会变得很危险,所以尽量不要按复位,暂停能解决的就解决掉\r\n如果真的按了复位你就自已去录入界面手动输入 G50 WXX 把坐标补回去这样这个XXX你就要算一下已经加工到第几个了,乘上就可以了,有的系统在调用子程序的时候在录入界面能看到调用到了第几次了,这样直接乘上就可以了,没有的话就用卡尺量出来,算一下就行了


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

原文地址: http://outofmemory.cn/yw/12383282.html

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

发表评论

登录后才能评论

评论列表(0条)

保存