怎么才能让你的子程序编写的更专业呢?本期给大家介绍一下西门子带形式参数的子程序的用法。
1.首先可以在用户循环里新建一个带参数的子程序,
在系统目录里找到:NC数据 -> 循环 -> 用户循环。新建子程序AAA。
子程序内容如下:
PROC AAA ( REAL POSX, STRING[10] TEXT1 ) SAVE
;定义包含两个参数的子程序AAA,并保存子程序运行前的程序状态。
;第一个是实数型参数POSX,第二个是字符串型参数TEXT1,长度为10个字符。
MSG(<<TEXT1<<POSX<<' mm') ; 在HMI上显示提示信息,变量前要加<<,文本加在” ”之中
M1 ; 有条件暂停
G91 G01 F3000 X=POSX ; 增量进给,X轴移动距离等于POSX的数值
RET ;子程序结束,返回调用的主程序
关闭子程序AAA,必须做一次NCK复位才能调用。
2.建立主程序
在零件程序目录里新建主程序ASD,主程序内容如下:
AAA(-100.001, 'X 移动 ')
;调用子程序AAA
;参数POSX赋值为-100.001
;参数TEXT1赋值为“X 移动”
M30 ;程序结束
3.运行主程序,调用子程序,程序运行时,在程序控制里选中M01有条件停止,以便观察程序运行结果。
第一次程序启动,显示提示信息“X 移动-100.001 mm”。第二次程序启动,走G91 G01F3000 X=-100.001。
程序中用到的相关指令:
PROC:带参数子程序开头
SAVE:保存程序当前状态
DEF:定义变量
INT:整型变量
REAL:实数型变量
CHAR:字符型变量,只能包含一个字符
STRING[n]:字符串型变量,[ ]里要填入整数,代表字符串包含几个字符
BOOL:布尔型变量
MSG():在HMI上显示提示信息
RET:子程序结束,返回调用的主程序。与M17的区别在于G64生效时编程路径不会中断
联系客服