最近在做一个modbus协议上的汇川变频器的项目,一开始前期阶段都很顺利,前期的写设计文档,然后写代码啊,然后是模拟测试啊这些,都没有太大问题,都到顺利,尤其是提前了一个月就已经可以把电机给顺利转起来,那呼呼的声音听起来可爽了。
但是昨天开始上真机了,发现各种问题,首先是遇上了一个不靠谱的电气工程师,我们软件升好了开始做测试,一直报通讯丢失故障,然后我就问你电气工程师接modbus线了吗?他很无辜的说,哦,好像没接,还掩饰说我还以为是另一种协议呢,天呐,我们这个项目的名称就叫modbus xxx的项目,现在你来告诉我是另一种协议,然后他就跑去,他就急吼吼的跑去找线,找接头开始做线。
好吧,硬件算是准备好了,我们开始测试了,测试的过程中发现,两个变频器中的一个会出现通讯丢失错误,因为快下班了,所以大家就先把他先放一放,准备第二天再来测,结果第二天,电气工程师被因为疫情被封起来了,唉,那没办法呀,第二天我得自己试呀,首先,我先在自己的实验台上搭了一套几乎差不多的环境,只是变频器和电机的功率有点差别,应该问题不大,然后我发现的确是把电机那一头设置成102地址就会出现通信丢失的问题。然后思来想去,我发现把地线接上就不会有通讯丢失了,所以看下来,当一个总线上面接了两套或多套变频器,那么一定要把地线(下图中蓝和黄色线)接上,不能直接modbus的正和负。这里备注一下,我是把屏蔽线当做地线用的,影响不大的。于是乎,我就跑到真机上把地线接好,期待着报错没有了,但是测试永远会有意想不到的结果。
真机上仍然是有一个变频器报通讯丢失错误,所以我就很纳闷了,不管怎么样,再试试吧,于是我就把两个变频器的通讯接口互换了一下,我发现故障居然伴随着线走或者接线头走,于是我就觉得可能有一个接头是有问题的。那么我就把我实验台上的一套线全部拿下来换上去,结果呢?通讯丢失问题就好了,但是你真的以为这就结束了吗?
哎~那你就太天真了,太低估了在工控行业里面电磁干扰所带来的困扰。结果是屏上依然会报变频器故障,具体故障代码显示的是过流,可问题是电机都没开,怎么就过流了呢?看样子又得继续试啦!
经过进一步调查发现,当我换一个显示屏之后,好像就好了。同一套系统,同样的软件,配置看似也都一样,那极有可能是因为另外一个屏的硬件或接口哪里出了问题。于是我就找来了技工,让他帮我把屏换了,然后上电,我开始搓着期待的小手看着屏幕一点一点的启动,期待着不要再报错,心想这次肯定没问题,你是不是也这么想啊?
天真如你我呀。变频器故障错误依然没有消失,于是我就想啊,到底哪里有差异?我刚刚换的屏的时候只是接了一个modbus的监控器,用于监控数据,难道这个东西会有影响?哎,那就死马当活马医试试吧,总线上并联接上监控器,最后发现——好了!!!真是神奇啊,监控器器的USB插在电脑上,但是电脑并没发数据啊,怎么就好了呢?我看到了监控器标牌上面赫然写着“隔离”两个字,于是我有一点明白了,极有可能是这个带隔离保护的监控器抑制了总线里面的干扰信号。而且另外我发现当我从电脑上拔掉的这个USB的时候,变频器故障还会爆出来,插上电就没有问题。还好我们的屏上也有一个USB接口,所以最后我给出的临时解决方案就是带着我的监控器并联在总线上,另一头插在屏的USB接口(如下图屏上的黑色接头)上进行下一步的测试。具体可能还是需要硬件那边上市,国企观测一下信号的波形,做进一步推断。
好了,稍微总结一下,通过这次测试发现,有三个问题,而且都是跟电气或硬件相关的问题(其实是软件上的小问题就不在这里写了),第一个压根就没有接线,开始测试。第二个临时做的通讯线没有接地。第三个通信线上的干扰信号,导致软件上的报错。
|