使用(yòng)三菱工控产品时异常的问题解析
在使用(yòng)三菱工控产品时,特别是刚开始使用(yòng),在程序调试过程中难免会遇到很(hěn)多(duō)奇奇怪怪的事情。比如三菱plc指令执行异常,三菱伺服電(diàn)机不ON,電(diàn)机不转等问题,那么下面就由海蓝机電(diàn)小(xiǎo)编来為(wèi)大家带来这三个问题的解析,希望大家能(néng)有(yǒu)所收获!
比如写了这样一条指令:
本来200乘以2应该等于400,但是D4里却是12?!
★全轴伺服ON信号给出去之后,伺服没有(yǒu)ON
★执行三菱伺服電(diàn)机驱动指令之后,三菱伺服電(diàn)机不转。
……
诸如此类的问题很(hěn)多(duō),而且一般三菱PLC都不会报警,没有(yǒu)报警代码,问题追溯起来比较麻烦。
原因一般也比较隐蔽,可(kě)能(néng)翻遍手册也找不到原因说明及解决方法。
而且像三菱伺服電(diàn)机不ON,電(diàn)机不转这样的问题,问题本身就比较宽泛,有(yǒu)很(hěn)多(duō)原因可(kě)以导致这种现象发生,所以对于这种异常情况,其原因排查起来也是很(hěn)让人头疼的一件事情。
筆(bǐ)者一开始也遇到过很(hěn)多(duō)百思不得其解的问题,慢慢地也积累了几个小(xiǎo)经验,希望对不太熟悉三菱工控产品的朋友有(yǒu)点用(yòng)。
方法一:先清除PLC里的全部数据
这是筆(bǐ)者的习惯,在写入参数及程序之前,先把PLC里的数据清空。在遇到没有(yǒu)报警代码的异常情况时,筆(bǐ)者做的第一件事情也是先把PLC里的数据清空,再执行一次参数及程序写入,还要进行PLC复位。
為(wèi)什么要这么做呢(ne)?一般来说,我们把参数及程序写入PLC之后,除非手动清除它,否则参数及程序就会保留在PLC里。(嗯,这是废话。)
问题是,我们没法保证我们这一次写入的参数及程序能(néng)覆盖掉PLC里原来的参数及程序。
多(duō)程序文(wén)件
特别是对于三菱L系列 PLC、Q 系列PLC来说,它支持多(duō)程序文(wén)件,我们可(kě)以建立『MAIN』、『MAIN1』,还可(kě)以建立一些我们自己给它命名的程序文(wén)件。
如果PLC里本来有(yǒu)这些文(wén)件,我们不手动清除它的话,它是不会消失的。
我们写入的文(wén)件,只能(néng)覆盖同名文(wén)件。
比如PLC里本来有(yǒu)『MAIN』、『MAIN1』,我们新(xīn)建了『MAIN』写进入的话,PLC里的『MAIN』会被覆盖成我们写进去的新(xīn)的『MAIN』,而『MAIN1』仍然存在。
那么,如果『MAIN1』用(yòng)的软元件与新(xīn)的『MAIN』所用(yòng)软元件重复冲突的话,就会导致双線(xiàn)圈。
程序设置
除此之外,还需要强调一点,新(xīn)建的程序文(wén)件都是『无执行类型指定』的,存在多(duō)个程序文(wén)件的情况下,要将它们按照需要拖曳到『扫描程序』、『恒定周期程序』等等分(fēn)类中去,否则程序可(kě)能(néng)不运行。
方法二:用(yòng)最简单的程序进行测试
什么是最简单的程序?比如筆(bǐ)者之前给出的FX5-40SSC-S的样例程序,非常简单,忽略了各种互锁、各种条件,虽然不严谨,但是方便學(xué)习测试。
既然出现了问题,就该解决,但是又(yòu)没有(yǒu)解决思路,怎么办呢(ne)?
把问题简化。
比如给出電(diàn)机驱动指令,但是電(diàn)机不转,我们可(kě)以尝试写一个简短程序(而不是一个几百行几千行的程序),来测试一下。
如果这样電(diàn)机还是不转,说明原因应该跟程序无关,需要检查参数设置、接線(xiàn)等等。
如果这样電(diàn)机转了,那么说明程序间逻辑有(yǒu)问题。典型的问题还是双線(xiàn)圈。
说到電(diàn)机驱动指令,对于脉冲式伺服一般使用(yòng)DRVA 和DRVI就能(néng)使電(diàn)机正反转。
之前就遇到过使用(yòng)这两个指令之后電(diàn)机只能(néng)正转而不能(néng)反转的情况,最后检查的结果也是双線(xiàn)圈问题。
这是缩小(xiǎo)问题范围的一个方法。
缩小(xiǎo)问题范围,缩小(xiǎo)原因可(kě)能(néng)出现的范围,有(yǒu)助于进一步查找问题原因。
很(hěn)多(duō)初學(xué)者拿(ná)到的样例程序,哗啦啦一大堆,虽然可(kě)能(néng)比较严谨,但是很(hěn)难看懂,也难以下手修改,运行时出了问题也不知道问题出在哪里。
不只是初學(xué)者,筆(bǐ)者感觉很(hěn)多(duō)稍有(yǒu)经验设备调试人员,也有(yǒu)类似的问题。
现在的自动化设备越来越复杂,程序动辄几千行,很(hěn)多(duō)程序都是以前的拿(ná)过来用(yòng)。比如说设备升级了,FX3U换成Q PLC了,把之前的FX3U程序拿(ná)过来,转换一下,改一改,接着用(yòng)。
结果一个程序可(kě)能(néng)经过很(hěn)多(duō)人的手,改过很(hěn)多(duō)次,到最后面目全非,没有(yǒu)人完全看得懂,甚至程序里还有(yǒu)潜在的逻辑问题。
标题中说到的问题,也有(yǒu)可(kě)能(néng)是由于上述程序的问题导致的。对于这种问题,筆(bǐ)者也是无能(néng)為(wèi)力,最怕别人拿(ná)着别人写的程序,问我,『它為(wèi)什么这么写?』。
真要是这种情况,推翻程序重新(xīn)写吧。
其他(tā)可(kě)能(néng)引起类似问题的原因
自动刷新(xīn)的设置导致软元件值异常
比如文(wén)章开头提到的,D4数值异常,有(yǒu)可(kě)能(néng)是因為(wèi)它被设置為(wèi)接收區(qū)域的刷新(xīn)软元件了,相当于它每个通信周期都在接收其他(tā)地方对它的刷新(xīn)赋值,相当于它是只读的。
在使用(yòng)到多(duō)CPU系统、网络通信时可(kě)能(néng)会遇到这样的问题。
I/O分(fēn)配设置原因导致伺服不ON
比如在三菱plc模块QD77MS中,手册里说Y1是全轴伺服ON。
实际上写的不太准确,当QD77MS的起始IO被设為(wèi)n0时,这里的『Y1』要相应变成『Yn1』。
比如下图,起始IO设為(wèi)0080,相应的要使用(yòng)『Y81』作為(wèi)全轴伺服ON信号,而不是使用(yòng)Y1。
伺服電(diàn)机不动作
关于伺服電(diàn)机不动作,可(kě)能(néng)的原因比较多(duō),可(kě)以参考下表,逐一进行排查。
(下表对应MR-JE系列伺服放大器,更多(duō)伺服放大器故障排查方法请参考相应的伺服放大器技术资料集(故障排除篇))
以上说到的三菱工控产品常见异常,在遇到类似问题时,可(kě)能(néng)有(yǒu)用(yòng),也可(kě)能(néng)没用(yòng),因為(wèi)问题可(kě)能(néng)比较复杂,可(kě)能(néng)涉及到其他(tā)筆(bǐ)者没遇到的诸多(duō)原因。各位若遇到过其他(tā)类似情况,也还请不吝留言赐教!
评论信息