PLC程序上传下载通信失败,三步排查法解决90%的问题

前几天一个兄弟在群里求助,三菱FX3U连接不上GX Works2,换了两根数据线都不行,准备换PLC模块了。我让他检查一下PLC的COM口参数,折腾了半小时搞定了——原来是他的USB转串口线驱动装错了版本。

PLC通信失败是工控人遇到最多的问题之一,今天把我这些年总结的排查套路分享出来。

第一步:检查物理层(硬件和驱动)

通信失败的排查,70%的问题在物理层解决。

数据线/编程电缆: 原装线和山寨线差别还是很大的。西门子的PC Adapter USB A2原装线四五百块,山寨线三四十块,稳定性差异明显。三菱的USB-SC09-FX编程线,仿品经常出现波特率识别错误。

USB转串口驱动: 这是最容易出问题的地方。很多USB转串口线用的是CH340/FT232/PL2303芯片,驱动版本不对会导致连接不上。建议去芯片官网下载最新驱动,不要用Windows自动更新的。特别是PL2303芯片,Windows 10/11上容易出问题。

COM口号: 设备管理器里看一下USB转串口被认成COM几,建议不要用COM1(系统保留),如果系统分配了COM1,在设备管理器里手动改成COM3、COM4或COM5。

电脑端口和PLC端口参数匹配: 三菱FX3U默认通讯参数是9600bps、7数据位、偶校验、2停止位。西门子S7-200默认是9.6kbps,无校验。注意看软件的通讯设置是否和PLC一致。

第二步:检查软件端(协议和设置)

硬件排查完了还没连上,看软件设置。

通讯协议选择: 三菱GX Works2里面,连接目标要选”FX系列”或者”FX3U系列”,不能选错。西门子TIA Portal里要选正确的接口类型(PG/PC接口)——比如选”PC Adapter USB A2″而不是”Computer Boardcom NetXtreme”。

PLC的通讯设置: 如果PLC之前被人改过通讯参数(比如从9600改成了19200),而你的编程软件按默认9600去连,肯定连不上。这时候需要用PLC侧面的拨码开关或者专门的通讯设置工具来确认。

远程系统或虚拟机问题: 如果你在用Windows远程桌面连到工控机,或者笔记本电脑里装了虚拟机,USB设备的端口映射经常出问题。实测,VirtualBox的USB直通对编程线支持很差,VMware Workstation稍微好一点,但也不稳定。最好在宿主机上直接连。

杀毒软件拦截: 有些杀毒软件会把编程软件的通讯进程当作可疑行为拦截。关掉防火墙和杀毒软件试一下。

第三步:检查PLC本身(硬件故障)

前面两步都排查了还连不上,考虑PLC本体问题。

PLC的通讯口损坏: 现场经常有人带电插拔编程线,这样容易烧坏PLC的通讯芯片。三菱FX3U的圆口编程口非常容易烧毁,我自己就烧过两个。判断方法:换一个通讯正常的PLC试一下,如果能连上说明原来的PLC通讯口坏了。

PLC运行模式: 有些PLC在运行时不能上传下载程序。把PLC拨到STOP模式再试。三菱FX3U的RUN/STOP开关在正面。

CPU故障: 极少见,PLC的CPU模块坏了也可能导致通讯异常。检查PLC的指示灯——POWER灯亮但RUN灯不亮,可能CPU有问题。

一个实战案例

上个月去一家设备厂调试,西门子S7-1200用TIA Portal死活连不上。笔记本电脑是新换的,驱动、参数都没问题。折腾了两个小时,最后发现是网线干扰——现场有一台高频焊机在工作,产生的电磁干扰把以太网通讯全打乱了。等焊机停了,一次就连上了。

这种环境干扰型的通信故障,用万用表测不出什么,但确实存在。遇到这种诡异的情况,换个时间、换个环境再试试。

上一篇 PLC控制变频器Modbus RTU通讯,三菱FX3U和台达变频器实例