回复:关于Modbus TCP通讯调试过程的那些事2

WWCWWC

西门子1847工业学习平台

  • 帖子

    9114
  • 精华

    157
  • 被关注

    1473

论坛等级:至圣

注册时间:2008-07-26

钻石 钻石 如何晋级?

发布于 2025-07-02 15:17:03

15楼

展开查看
以下是引用Siemens automation在2025-07-02 14:24:30的发言 >14楼

  你4楼说你同时激活6个指令通讯,你6个指令访问数据总长度是多少,是你前面说的每个指令都是访问长度10个字,加起来是60个字。如果是,你测试结果是正常能读写数据。但是12楼的,测试两个指令同时激活工作,而且每条指令访问数据量是30个字的长度,加起来也是60个字的长度就有问题。是不是西门子和西门子PLC可以这样做,访问等于60个字都没有问题,一旦和第三方通讯PLC做modbus tcp通讯,就不支持大于等于多条指令同时访问60个字的长度。

     是不是进一步印证了你说的方案有很大局限性。使用场合和硬件限制性很多,而不适合大量场合。楼主你可以进一步发布你测试结果,供大家选择在那些场合使用提供参考。

     目前的趋势是,访问数据量大,多条指令同时工作是太可能实现(注释:是我目前的猜想,没有验证过),还是需要回归到轮训这条路来实现,通过单个指令实现多次轮训。

以下是引用WWCWWC在2025-07-02 13:43:32的发言 >13楼:是的。  正是因为有...

引用13楼详细内容:

是的。

  正是因为有局限性,所以,我写了这个贴。

通讯数据长度,和服务器数量都是制约客户机是否轮询的关键因数,而不是一刀切的必须使用轮询方式。

以下是引用yjj9903在2025-07-02 12:45:37的发言 >12楼:测试了一下楼主的这...

引用12楼详细内容:

测试了一下楼主的这种状况,PLC用的是西门子S7-1200 CPU1214C,做ModbusTCP客户端,第三方PLC做ModbusTCP服务器,如果S7-1200同时执行2个客户端功能块后,读取或写入的数据(word)比较少时(本人测试10个字)可以正常读写,但是如果读取或写入的数据(word)比较多时(本人测试30个字),就会出现不能正常读写的情况!但是改为轮询的方式,即程序只会有1个客户端功能块处于激活时,单个客户端功能块与第三方PLC的ModbusTCP通讯都是正常的,120个字都没有问题!所有,楼主这种多个同时激活S7-1200做ModbusTCP客户端的方式,是否存在局限性的,不具有广泛通用性?个人认为,程序中应该只能1个客户端功能块处于激活状态的这种方式更可靠!

  这个只是一种测试和验证,具体是否在现场应用,还需要考证,也是我开始写贴的理由。但是,可以肯定数据长度短的,同时触发是可以验证的。

评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1200系列

共有15117条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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