SINUMERIK辅助功能之M代码(5)

已锁定

迅影

  • 帖子

    284
  • 精华

    4
  • 被关注

    34

论坛等级:侠圣

注册时间:2012-12-19

钻石 钻石 如何晋级?

SINUMERIK辅助功能之M代码(5)

4520

5

2022-12-12 19:15:46

有个参数MD10713 $MN_M_NO_FCT_STOPRE [ n ],参数说明:机床数据MD10713 $MN_M_NO_FCT_STOPRE选择的M功能会在系统内部生成一个预处理暂停指令。也就是说:只有在完全执行好包含该M功能的程序段后才开始预处理下一个程序段(PLC应答、运动等)。含义说得比较清楚了。怎么验证这个参数设置的M代码会导致“预处理暂停”?在NC指令里,有专门的停止预处理指令:STOPRE。不知你用过没有,当时是因为什么用的?下面我们来做实验验证下这个参数的作用。使用的程序还是上文用到的程序:

N10 g0 x100 Y0

N20 $an_sltrace=1

N30 G64

N40 G1 X100 Y0 F10000

R1=1

N50 X99.9847695161587 Y1.74524061396078

N60 X99.9390827039876 Y3.48994961074216

N70 X99.8629534801318 Y5.23359553510047

N80 X99.7564050342896 Y6.97564725561419

N90 X99.6194698221486 Y8.71557412647174

……

N490 X70.7106790659974 Y70.7106771713121

N492 M88

N494 R1=R1+123

N500 X69.4658380310478 Y71.9339790825187

….

在程序中,我加了三段(用红色字标出)先保持机床参数的默认值:MD10713 $MN_M_NO_FCT_STOPRE [ 0 ]=-1运行程序,得到如下结果:

图中曲线含义:

亮绿色曲线--X轴位置实际值

黄色曲线--M功能1代码值(DB21.DBD70)

蓝色曲线--M功能1跳变信号(DB21.DBX58.0)

暗绿色曲线--X轴速度实际值

粉色曲线--R1的数值

之前的小文解释过M88对X轴运动连续性的影响,今天我们主要看R1数值的变化,R1在程序开始处赋值“1”,按很多人的想象,R1应该在系统执行N494程序段时才会变为“124”(在上图中黄色曲线和蓝色曲线突变的位置),但我们从上图看出,X轴开始运动没多久,R1就变成了“124”,为什么呢?因为程序的预读,数控系统在执行程序时,不是读一段程序,解释一段程序,执行一段程序,而是会一次读若干段程序,解释后保存在缓冲区等待执行,然后系统边执行程序边继续解释程序填充到缓冲区,这样处理是为了保证加工的连续性,因为现在很多铣削类加工都采用CAM出程序,程序中每段各轴运动距离都很短,如果没有缓冲区机制,那么机床运行就是一顿一顿地加工,这样的零件加工质量将是完全不可接受的,而且效率会极低。因此程序的预读很重要。

有人会有疑问,预读是很重要,但R1的数值在程序开始就变为了“124”,会不会导致程序错误?这个咱们稍后再说。我们先看会停止程序预处理的M代码

再次执行程序前,我们设置MD10713 $MN_M_NO_FCT_STOPRE [ 0 ]=88

然后,得到如下结果,这个结果是你期望的结果吧?M88不仅导致了X轴运动的不连续,而且暂停了程序预处理。好,我们回头看看刚才说的问题,预处理会不会导致R参数不对。我们修改下程序:

N10 g0 x100 Y0

N20 $an_sltrace=1

N30 G64

N40 G1 X100 Y0 F10000

R1=1

N50 X99.9847695161587 Y1.74524061396078

N60 X99.9390827039876 Y3.48994961074216

N70 X99.8629534801318 Y5.23359553510047

N80 X99.7564050342896 Y6.97564725561419

N90 X99.6194698221486 Y8.71557412647174

……

N480 X71.9339809438486 Y69.4658361035842

R2=R1

N490 X70.7106790659974 Y70.7106771713121

N492 M88

N494 R1=R1+123

N500 X69.4658380310478 Y71.9339790825187

……

然后,我们看看程序运行后的R2,运行结果:

当然,在实际使用中,为了监控R参数,或者前面介绍的GUD等这些程序中使用的变量,可以在计算前后加“STOPRE”。

未完待续


SINUMERIK辅助功能之M代码(5) 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SINUMERIK

共有25501条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。