勤工俭学
deep throat
级别: 论坛先锋
精华主题: 0
发帖数量: 188 个
工控威望: 1567 点
下载积分: 5955 分
在线时间: 120(小时)
注册时间: 2016-03-10
最后登录: 2024-06-14
查看勤工俭学的 主题 / 回贴
楼主  发表于: 2020-01-13 22:45
参数配置如图。


程序是手册里的例程。





  
与no.2设备通信时,用调试助手发现可以连接得上,sd10680.1接通。
但是置位M2000发送时数据会出现c1b1的报警,接收也会出现c1b1报警。
手册里的内容,C1B1H 指定连接的开放处理未结束。 处理方法,进行开放处理,并在开放结束后进行通信。


plc作为服务器只是侦听,被动等待链接,不需要像客户端那样主动要求连接。

有个问题,上图参数配置中,plc与no.2设备连接时,plc是作为服务器,no.2设备是作为客户端吧?

20200114
no.2设备连接改为用unpassive方式,和调试助手连上了,无论收发都会出现上述报警。

终于找到问题了。还是自己没有仔细看好手册,没有对指令理解好。


上述指令通道2时应该选择k2,而不是k1,该参数的取值范围是从k1~k8。我一开始以为指令输入参数中的“u0”就可以表示通道了,其实这个也是错的。
为什么报错指定连接的开放处理未结束,其实就是我一直对通道1进行操作,而通道1中plc是作为客户端的,需要主动连接。
这也解释中间遇到其他因为这个错误而造成的现象。
1:中间遇到如果no.1设备连上后,那么与no.2设备进行连接后通信收发是不会报错的,no.1连上后,已经打开完成了,no.2程序中使用收发指令不会出现开放处理未结束报警。
2:当no.1和no.2都连上后,与no.2的数据发送都出现在no.1中。


感谢给予帮助的网友!
[ 此帖被勤工俭学在2020-01-14 10:47重新编辑 ]
本帖最近评分记录:
  • 下载积分:+1(啊对对对对对)
    504890094
    级别: 探索解密
    精华主题: 0
    发帖数量: 48 个
    工控威望: 141 点
    下载积分: 780 分
    在线时间: 39(小时)
    注册时间: 2016-12-04
    最后登录: 2023-08-24
    查看504890094的 主题 / 回贴
    1楼  发表于: 2022-01-14 16:21
    学习了,谢谢!