回复:1200系列PLC如何通过MODBUS_TCP读写28个服务器?

shine

  • 帖子

    8803
  • 精华

    39
  • 被关注

    157

论坛等级:至圣

注册时间:2003-06-06

普通 普通 如何晋级?

发布于 2018-07-27 11:20:28

14楼

展开查看
以下是引用yming在2018-07-20 19:25:39的发言 >11楼

就一个客户端,轮流、逐一访问各服务器。

一下子测试那么多做啥?只需要测试做2个可访问服务器的即可知道。

何况这MB_TCP系统个完全可以仿真!(硬件都不需要。)


以下是引用樱桃大丸子在2018-07-20 16:23:40的发言 >10楼:意思是程序里面总共...

引用10楼详细内容:

意思是程序里面总共只创建不超过14个MB_CLIENT指令,第一个IP地址读写完成之后,用DisConnect断开连接,然后修改IP地址数据,然后再重新建立连接……如此循环执行?

我试过创建15个MB_CLIENT指令,14个为一组,当读写完成之后,我通过DisConnect断开14个连接,然后启动第15个连接,结果报错80A4,说是IP地址无效。

以下是引用yming在2018-07-20 15:52:24的发言 >9楼:应该是可以的。连接...

引用9楼详细内容:

应该是可以的。

连接ID不变;

REQ=1;用DisConnect 操作;并用 状态 7003 判断。然后改变服务器 IP地址的最后一位字节。

服务器侧也需要在响应完成后,用一个周期,DisConnect 断开连接,然后恢复等待连接。




以下是引用樱桃大丸子在2018-07-20 08:08:58的发言 >3楼:貌似是不可行的。...

引用3楼详细内容:

貌似是不可行的。题目中的那几个唯一条件限制了,没办法通过程序去切换,特别是那个“连接ID”,是以静态变量的形式存在的,除了下载之前赋值,程序运行的时候是没办法改变的。

以下是引用yming在2018-07-19 23:48:17的发言 >2楼:是8个固定(预留...

引用2楼详细内容:

是8个固定(预留)和6个动态。

如果没有时间要求,用个1客户端去轮流读不同的MB_TCP 服务器,也是可以的。


我开了2个PLCSIM,测试MODBUS TCP,一个作为server,一个作为client,能看到状态码 server是7006,client是7004,一切正常,但是,client 给个req之后,状态码变成了7006,超时时间过了之后错误码80C8,然后变回7004。监控server和client的背景数据块,能看到server收到了client发过去的请求,但是没看出是否有响应,抓包工具好像也不能抓取2个plcsim直接的数据包。

因为手头只有1个cpu,分别下载到CPU,和电脑做测试,都是没有问题的,一直没搞懂为什么模拟测试不成功。如果不支持,那么不会显示7004/7006的状态,但支持的话,server没响应

评论

何先森

  • 帖子

    1
  • 精华

    0
  • 被关注

    0

论坛等级:新手

注册时间:2017-04-11

普通 普通 如何晋级?

发布于 2018-08-02 19:07:52

1楼

我跟你一样的测试结果也一样 不过我低版本的块写 用plcsim测试是成功的 换了高版本的块就报80c8 不知道你解决没 能不能分享下 后来你怎么处理的?673726302我QQ
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1200系列

共有15365条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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