为什么MB_Client块可以使用同一个背景数据块多次调用,如何实现的?

已锁定

Setrarin

  • 帖子

    141
  • 精华

    4
  • 被关注

    100

论坛等级:侠士

注册时间:2016-08-10

普通 普通 如何晋级?

为什么MB_Client块可以使用同一个背景数据块多次调用,如何实现的?

2461

30

2022-07-03 22:52:41

最近查资料,看到官网写的一个文档,链接如下:

S7-1500作为Modbus TCP客户端访问多个设备的方法

https://support.industry.siemens.com/cs/document/109782521


程序里面用同一个背景数据块完成ModbusTCP三次读写任务,思路挺好理解的。但是有处问题想不明白,让我疑惑的是,三次任务都是对MB_Client块无条件调用,那么块的输出引脚应该同一周期输出,要么就只有第一次调用时输出,如果有以上情况,那么程序就不应该能正常执行,但实际上功能又是正常在执行,可以说已经超出了我的理解了,这是怎么实现的,有没有了解的仁兄解答下?


更新:

我自己又把程序写了一遍,用PLCSIM ADVANCED做的测试,结果是可以用的,trace结果也正常。我的问题是它作为FB,同一个背景数据块无条件的多次调用,为什么输出不会混乱?







再次更新:

资料显示,作为异步指令块,其执行确实与引脚参数有关。但是将第一次和第三次的参数设置成一样,第三次的触发完成位Done仍然可以在第三次引脚输出,而不是第一次的,这个是目前我唯一想不通的地方。

如果认为测试有问题的,可以自行测试,指出问题所在,如果知道实现方法,可以跟帖解答,或者参与以下编程挑战【编程挑战】同一个FB使用同一个实例多次无条件调用完成功能

为什么MB_Client块可以使用同一个背景数据块多次调用,如何实现的? 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1500系列

共有8651条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

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