相关的实验分析:
200SMARTPLC1和PLC2进行通讯(PLC1发送 PLC2接收)
PLC1和PLC建立连接,触发一次接收后断开接收。
PLC1每次发送1024个字节,每次发送的一个字节里面的值加以处理,发送起始地址是VB100 一次发送VB100值1第二次发送VB100值为2…..以此类推发送18次出现SEND指令的BUSY置为为1
PLC2一次上升沿触发接收,接收的起始地址是VB5000,DONE位信号为M10.1,触发一次接收可以使用抓包工具看到移动8K数据,接收1024个字节一个位VB5000值是1,DONE位的信号一直是0.(sendbuffer里面还有值)
PLC2第二次上升沿触发接收,接收的起始地址是VB5000,DONE位信号为M10.1,触发一次接收可以使用抓包工具看到移动8K数据,接收1024个字节一个位VB5000值是9,DONE位的信号一直是0,(sendbuffer里面还有值)
PLC2第三次上升沿触发接收,接收的起始地址是VB5000,DONE位信号为M10.1,触发一次接收可以使用抓包工具看到移动8K数据,接收1024个字节一个位VB5000值是17,DONE位的信号一直是1,(sendbuffer里面没有值)。
我们改变接收的V区大小由1024字节变成1字节,发送上次使用一直。
PLC2一次上升沿触发接收,接收的起始地址是VB5000,DONE位信号为M10.1,触发一次接收可以使用抓包工具看到移动8K数据,接收1024个字节一个位VB5000值是1,DONE位的信号一直是0,(sendbuffer里面没有值)。
PLC2第二次上升沿触发接收,接收的起始地址是VB5000,DONE位信号为M10.1,触发一次接收可以使用抓包工具看到移动8K数据,接收1024个字节一个位VB5000值是9,DONE位的信号一直是0,(sendbuffer里面没有值)。
200SMART的TCP通信接收必须快于发送。
随着数字化工厂概念的普及,现场的数据越来越多被要求送往工厂的数据中心进行分析处理,我们将面临大量的PLC的通信问题。大部分客户描述问题的时候都是以太网通信通不上,而以太网通信并未指出实际使用的通信协议是什么,S7、OUC、ModbusTCP等等,需要先判断具体使用的协议,通过编程软件在线诊断相应的通信连接是否建立,在连接已经建立的前提下再去捕捉发送接收功能块的状态字来定位故障原因,如果依然无法判断,还可以借助Wireshark等抓包工具分析通信报文排查故障。
本文仅介绍OUC TCP通信连接的一些诊断步骤
一、如果PLC作为TCP通信的服务器,先确定连接使用的本地端口号以及是否客户端IP地址及端口号
TIA软件网络视图下监视PLC,检查连接状态是否正常
绿色图标表示Server 侧端口已经开启,连接已经建立。
无连接,检查connection DB参数,修改参数后,重新启动TCON,返回步骤i;如果多次尝试仍然无法进入步骤1)或步骤II)进入步骤IV);
红色图标表示连接未建立,Server 侧端口已经开启,检查连接详细信息,确认打开的端口与组态的*;
①启用的端口与实际组态的端口不*:修改ConnectionDB参数后,重新启动TCON,返回步骤i ;如果多次尝试仍然无法进入步骤1)或步骤II)进入步骤IV)
②启用的端口与实际组态的端口*表示:服务器侧连接启动正常,正等待客户端连接请求,检查客户端设置和连接链路。(后续检查客户端测或进行报文分析),如果需要判断服务器侧连接没有问题进入步骤III);
③(可选步骤)将PLC上其他所有网线断开,PG使用网线直接连接PLC,使用测试软件测试PLC的服务器功能。
④删除原有TCON相关功能块重新创建相关功能块测试或更换PC创建新项目测试;如果仍然不行请更换PLC测试。
TIA软件无法监视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或步骤2,则进入步骤4;
红色图标表示连接未建立或连接已中断,Client侧正在发送连接请求,检查连接详细信息,确认请求的服务器IP地址及端口与组态的*;
①启用的端口与实际组态的端口不*:修改ConnectionDB参数后,重新启动TCON,返回步骤i ;如果多次尝试仍然无法进入步骤1)或步骤II)进入步骤4
②启用的端口与实际组态的端口*:
a.确认服务器侧端口是否开启连接启动正常;
b.检查连接链路,例如防火墙设置,网线是否正常;
③将PLC上其他所有网线断开,PG使用网线直接连接PLC,使用测试软件测试PLC的客户端功能。
④删除原有TCON相关功能块重新创建相关功能块测试或更换PC创建新项目测试;如果仍然不行请更换PLC测试。
将PLC与其他设备的网络全部断开,如果无法断开网络请进入步骤3);PG直接连接到PLC中,并修改PG的IP地址为与PLC在同一IP网段
如果在服务器和客户端之间的网络中存在带端口镜像功能的交换机,设置镜像端口,并将PG连接到监视端口
在PG上启动wireshark,使用wireshark抓包,分析是否存在TCP通信报文。
①只收到SYN 消息,分析源目IP地址及端口号是否可组态*,*则客户端侧连接请求正常,表示客户端侧的TCON设置*正确,请检查Server侧设置及连接链路;
③无任何客户端侧的报文,需要连接PLC检查TCON设置及连接DB。