写完MD11450位0的说明,查了下,发现之前已经写过MD11450图片。但是,举例和对比的方式不同,大家都可以看看。之前文章的链接在文章最后。

MD11450 $MN_SEARCH_RUN_MODE

参数说明

图片

以下位可以确定系统执行动作程序段期间、结束程序段查找后的工作方式:

位0 = 0:在结束程序段查找、切换到最后一条动作程序段时程序执行停止,NC/PLC接口信号DB21-30 DBX32.6 (最后一条运动程序段生效)置位,系统输出报警10208。

位0 = 1:在结束程序段查找、切换到最后一条动作程序段时程序执行停止,NC/PLC接口信号DB21-30 DBX32.6 (最后一条运动程序段生效)置位。只有在PLC通过置位NC/PLC接口信号DB21-30 DBX1.6 (PLC动作结束) 发出结束请求时,才输出报警10208。

应用:

在结束程序段查找后由PLC启动中断子程序。在执行完中断子程序后,才向操作员显示程序继续执行需要重启NC。

图片

例1:

图片

MD11450位0的设置确定何时系统输出报警10208

测试程序:

N10 trafoof
N20 cycle800()
N30 g0 z200
N40 G0 a0 c0
N50 G0 x0 y0
N60 s100 M3
N70 g1 x100 F1000
N80 g1 y100
N90 g1 z280
N100 m02

MD11450 位0=0时,如果我们执行程序段搜索,搜索到N80程序段后,系统弹出窗口提示:

图片

此时

图片

DB21.DBX32.6(NCàPLC信号) — Last action block active

DB21.DBX1.6(PLCàNC信号) — PLC action completed

程序段搜索不仅会搜索程序段的位置,还会记录搜索到的程序中的“M、S、T”指令,这些指令应该在恢复程序执行前,先恢复。此时,按弹出窗口所说“按下”CYCLE START“后,会执行找出的功能”,系统是把这些“M、S、T”指令放在一个程序段中发出,这个程序段在资料上叫做“action block“。

注意:机床厂自己定义的M代码,必须完成分组定义后,系统才能在段搜索过程中,记录并在action block中输出。

这时,我们按NC启动键,系统显示(注意弹出窗口中的文字发生了变化):

图片

同时,接口信号变为:

图片

此时,再按一次NC启动键,系统即开始继续执行程序(注意,机床当前位置和搜索到的程序段位置是否相同!若不相同,可以用REPOS的方式手动将各轴移动到目标位置;也可以直接启动,注意此时不同的搜索方式会导致不同的结果,另外操作者需特别注意机床可能会发生的干涉)

图片

例2:

图片

测试程序:

N10 trafoof

N20 cycle800()

N30 g0 z200

N40 G0 a0 c0

N50 G0 x0 y0

N60 s100 M3

N70 g1 x100 F1000

N80 g1 y100

N90 g1 z280

N100 m02

MD11450 位0=1时,如果我们执行程序段搜索,搜索到N80程序段后,系统弹出窗口提示:

图片

此时

图片

这时,我们按NC启动键,系统显示如下图,注意没有报警10208

图片

此时:

图片

即系统(NC)通知PLC,当前执行到了“action block“

机床厂的调试人员可以根据机床的设计编写相关的PLC程序,当“M、S、T“指令处理完后,可以置位DB21.DBX1.6让程序能继续执行

此处,我手动更改DB21.DBX1.6=1,然后系统显示

图片

显然,MD11450位0的设置不同,系统的响应不同,机床厂根据需要来设定。

注意:在系统输出DB21.DBX32.6=1到PLC置位DB21.DBX1.6这个过程中,系统并不禁止NC启动,如果需要,调试人员需设置读入禁止或者其它措施,禁止NC程序继续执行。

机床使用者注意:上面的例子只是说明MD11450参数设置不同,系统响应不同,机床制造商应该根据自己机床的情况来设置机床参数和编写PLC程序。段搜索具体的操作步骤要看机床厂的机床操作说明书。