回复:关于MODBUS TCP 冗余指令问题

W.M.J

  • 帖子

    144
  • 精华

    7
  • 被关注

    41

论坛等级:侠圣

注册时间:2016-11-15

黄金 黄金 如何晋级?

发布于 2025-12-07 15:53:19

10楼

西门子这个冗余通讯程序有点小贵。简单的做法就是当成两个通讯,发送和接收数据都是指向同一个区域。

理解了西门子实现冗余的方法,自己写冗余。博图中因为西门子提供了ModbusTCP的通讯程序,自己写相对简单,无非就是管理几个现成的modbustcp的通讯块。金典STEP7中因为连通讯块都没提供,还需要自己写TCP通讯数据解析的块,难度大一点。

西门子冗余实现方法:1. 建立多个连接;比如2对1,每个网卡和对方建立一个connection。2. 检查连接状态,通过连接正常的发送/接收数据,如果不成功,通过另外一个连接发送/接收数据 ,发送和接收数据都是指向同一个区域。3 . 对错误的连接进行处理,通常需要reset连接(重新尝试建立连接并清除接收缓冲区的数据)。

当然,最好还要加入轮询,实现多任务。




评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1500系列

共有11101条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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