作者 | 主题 |
---|---|
绫 至圣 经验值: 15305 发帖数: 1534 精华帖: 115 |
楼主 2019-07-10 08:18:35
主题:【周三技术工坊】TCP通信连接诊断 随着数字化工厂概念的普及,现场的数据越来越多被要求送往工厂的数据中心进行分析处理,因此我们将面临大量的PLC的通信问题。大部分客户描述问题的时候都是以太网通信通不上,而以太网通信并未指出实际使用的通信协议是什么,S7、OUC、Modbus TCP等等,需要先判断具体使用的协议,然后通过编程软件在线诊断相应的通信连接是否建立,在连接已经建立的前提下再去捕捉发送接收功能块的状态字来定位故障原因,如果依然无法判断,还可以借助Wireshark等抓包工具分析通信报文排查故障。 本文仅介绍OUC TCP通信连接的一些诊断步骤 一、如果PLC作为TCP通信的服务器,先确定连接使用的本地端口号以及是否指定客户端IP地址及端口号
①启用的端口与实际组态的端口不一致:修改Connection DB参数后,重新启动TCON,返回步骤i ;如果多次尝试仍然无法进入步骤1)或步骤II)进入步骤IV) ②启用的端口与实际组态的端口一致表示:服务器侧连接启动正常,正等待客户端连接请求,检查客户端设置和连接链路。(后续检查客户端测或进行报文分析),如果需要判断服务器侧连接没有问题进入步骤III); ③(可选步骤)将PLC上其他所有网线断开,PG使用网线直接连接PLC,使用测试软件测试PLC的服务器功能。 ④删除原有TCON相关功能块重新创建相关功能块测试或更换PC创建新项目测试;如果仍然不行请更换PLC测试。
1. 将PLC与其他设备的网络全部断开,如果无法断开网络请进入步骤 3; ①PG 直接连接到PLC中,并修改PG的IP地址为与PLC在同一IP网段(如果指定了客户端的IP地址,将PG的IP地址设置为语客户端IP地址相同); ②使用telnet 测试server 侧端口是否启用; 2. 如果在服务器和客户端之间的网络中存在带端口镜像功能的交换机,设置镜像端口,并将PG连接到监视端口 3. 在PG上启动wireshark,使用wireshark抓包,分析是否存在TCP通信报文。 ①只收到SYN 消息 ,分析源目IP地址及端口号是否可组态一致,一致则客户端侧连接请求正常,需要连接到PLC检测连接DB; ②收到TCP 消息,分析源目IP地址及端口号是否可组态一致,一致则通信正常。 ③无任何客户端侧的报文,使用telnet 测试server 侧端口是否启用; 二、如果PLC作为TCP通信的客户端,先确认服务器侧IP地址和端口号以及服务器连接是否指定客户端IP地址及端口号
①启用的端口与实际组态的端口不一致:修改Connection DB参数后,重新启动TCON,返回步骤i ;如果多次尝试仍然无法进入步骤1)或步骤II)进入步骤4 ②启用的端口与实际组态的端口一致: a. 确认服务器侧端口是否开启连接启动正常; b. 检查连接链路,例如防火墙设置,网线是否正常; ③将PLC上其他所有网线断开,PG使用网线直接连接PLC,使用测试软件测试PLC的客户端功能。 ④删除原有TCON相关功能块重新创建相关功能块测试或更换PC创建新项目测试;如果仍然不行请更换PLC测试。
①只收到SYN 消息 ,分析源目IP地址及端口号是否可组态一致,一致则客户端侧连接请求正常,表示客户端侧的TCON设置完全正确,请检查Server 侧设置及连接链路; ②收到TCP 消息,分析源目IP地址及端口号是否可组态一致,一致则通信正常。 ③无任何客户端侧的报文,需要连接PLC检查TCON设置及连接DB。 -------来自 西门子技术支持工程师 |