热线上经常会遇到一些通讯慢的问题。而对于这类问题,通过热线沟通和解决起来确实有些局限性。很多时候工程师也只能给客户提供一些参考意见和解决问题的思路。大量的工作还需要工程师结合现场进行检查和分析。希望今天分享的这个案例能给大家提供一些解决此类问题的思路。
问题现象如下:
客户反应使用MP377和SIMOTION D435通讯时快时慢。现场使用I/O域测试数据输入输出时,要经过一分钟甚至更长的时间才能获得返回值。
问题处理过程:
首先现象可以复现,说明系统确实有问题。接下来就是逐步检查:
1、检查通讯配置和干扰问题。
集成项目,通讯参数无需优化。
经检查,发现和现场设备的运行也没有必然的关系。
网线带屏蔽并且安装也很规范。
使用ping命令测试没有发现丢包现象。
使用PC机模拟运行触摸屏的项目通讯速度同样很快。
另,客户反应使用Profibus通讯同样会出现慢的情况。
因此基本排除干扰和通讯线路的问题。
2、检查软件兼容性问题。
客户使用的WinCC flexible版本和Step7版本不兼容,换成兼容的版本测试。问题依然能够复现。
因此排除软件兼容性问题。
3、检查SIMOTION问题
使用SIMOTION 软件通过上位机测试,发现通讯速度很快。
因此初步排除SIMOTION故障。
4、检查面板脚本问题
客户程序中使用了一些操作配方的脚本。中间涉及到一些周期性执行的逻辑判断。因此怀疑和脚本运行有关。停掉脚本,然后下载程序。运行一段时间后发现现象依旧。
因此排除脚本问题。
5、检查面板报警配置
客户组态了大约100个报警,变量的扫描周期是100MS,修改参数后通讯慢的现象还能复现。
因此排除报警扫描周期问题。
因为是集成的项目,在WinCC Flexible的“报警设置”中的系统报警中激活了“SIMOTION诊断报警”。在面板上使用报警视图会发现很多的SIMOTION发出的报警信息。取消此选项后测试通讯正常,至此故障得以排除。
总结:
说实话处理此类问题没有捷径。找对关节了也许很快就能解决,否则的话只能根据原理和经验逐步排查。