回复:求教:CP341做MODBUS通讯(MASTER)是否只能调用一次FB8?

万泉河

  • 帖子

    10904
  • 精华

    132
  • 被关注

    1012

论坛等级:至圣

注册时间:2003-06-06

钻石 钻石 如何晋级?

发布于 2008-09-08 21:15:11

0楼

不要把思路局限在两次调用上。
你可以假设一下如果有3-4次以上的读写需要怎么办。而其实具体应用中多个fc的调用是很平常的事。即便最简单的应用,一读一写总要有的吧,这里面FB8就需要调用2次。

比如我们要分别调用fc03,fc16,fc01,fc05
那么由于485通讯是半双工的,所以需要编制一套顺控程序来解决。
比如从m0.0开始的变量
M0.0 FB8 调用fc03请求
M0.1 FB7 fc03的返回
M0.2 FB8 SEND FC16
M0.3 FB7 RCV FC16
M0.4 FB8 SEND FC01
M0.5 FB7 RCV FC01
M0.6 FB8 SEND FC05
M0.7 FB7 RCV FC05

如果用到了232/485转换,或者从站的响应速度比较慢的情况下,还需要在中间加入延时的时间。
另外,也需要考虑到通讯超时情况下的处理。某一环节的数据回不来我们怎么处理。
当然还有一点,如果你的从站不只一个,那么需要的步骤更多了,耗费的的M变量当然会更多。所有操作都要你有计划地一个一个地逐个完成。
这也就是大家普遍抱怨多从站的情况下,modbus通讯的效率比较低。



微信公众号:PLC标准化编程,ZHO6371995
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54716条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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