恭喜,你发布的帖子
发布于 2020-06-20 08:22:09
4楼
DB块中:能用就尽量用UDT
非标准FB或FC块中:可以用UDT
标准FB或FC块中:能不用就不用UDT,或者说干脆就不用。
上面做的走ModbusRTU通信的West温控器的FB块,里面没用UDT。它的主要特点是:可以做到使用上的平行调用,非常简单。
用的时候,直接拖拽几个实例。管脚填写各自的从站号,12345,并连接到485模块初始化时候绑定的那个MB-Master背景数据块就可以了。
无需额外搞多个从站之间的轮询控制。这些实例在各自内部会协调依次轮询,而且通信质量不好的(3次错误)淘汰,修复了可召回。根据内部工作模式变化,提供按钮可见性反馈,及内部Pretune停止后的回馈以自动关闭界面按钮。提供每个通信任务成败的历史数据。写数据成功了就不再写,除非数据再变化。因为没有UDT牵绊,复制到哪就可以用。
这就是打10发子弹要用10杆枪的逻辑。
平行调用是有代价的,内部协调依次轮询从表面上看更罗嗦,而且更死板,换个轮询次序,至少要涉及3个调用的更改。
有多少个通信对象就至少要调用多少次,结果里面还要搞任务轮询,怎能和管你几个站几个任务,我就调用一次相提并论呢,况且没有UDT同样能够实现呀。
其他的就更不是事儿了,什么出错淘汰召回,出错记录,
请填写推广理由:
分享
只看
楼主