分享

灵活的编程

 阿明哥哥资料区 2023-03-22 发布于上海

SINUEMRIK的NC编程指令丰富,非常灵活,今天举个例子,开拓下思路。

比如我想了解系统中各轴的快移速度值,即MD32000的数值,并记录下来。不反对你在系统上挨个儿查看每根轴的数据,然后拿烂笔头记录下来。但这样做效率太低,如果我要将即将出厂的100台机床的各轴快移速度值记录下来,检查是否设置正确,这工作量就大了。

下面我们用SINUMERIK的灵活编程指令编写个程序,自动完成读取并记录MD32000数值的任务。

实验是在Sinutrain软件上做的。

机床有6根轴:

图片
各轴的快移的数据如下。
有没有见过这个数据界面?没见过,那可以看看《使用用户视图只看要修改的参数
图片
下面直接上程序:
N10 def int err1
N20 def int mycount
N30 def real mydata
N40 def AXIS myaxis
N50 for mycount=0 to 19
N60 R1=$MC_AXCONF_MACHAX_USED[mycount]
N70 if R1<>0 
N80 EXECSTRING('myaxis=AX'<<r1)
N90 mydata=$MA_MAX_AX_VELO[myaxis]
N100 write(err1,'mydata.mpf','N32000 $MA_MAX_AX_VELO[AX'<<r1<<']='<<mydata)
N110 endif
N120 endfor
N130 m02

解释:

N50到N120是个循环,读取MD20070 $MC_AXCONF_MACHAX_USED的数据,如果不为0,表示这根轴在通道中使用了,需要该轴的MD32000数据。

N60 R1存放的轴序号

N80 是设置轴名

N90 是读出MD32000的数值

N100是将读出的数据写入“mydata.mpf”这个文件中。

程序执行后的结果:

图片
是不是很灵活?借助这种灵活性,可以编写很多通用的子程序或者像本例这样的小工具,提高工作效率。
本例只是简单说明下SINUMERIK的灵活性,并不完善,见谅

如果你觉得小文有用,麻烦请转发出去。

每天进步一点点,一起来学习SINUMERIK吧?


另:碰到难理解的指令,G代码组的学习稍后会继续。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多