登录
首页 PLC论坛 PLC论坛
回帖 发帖
正文

主题:[原]三菱QPLC编程故障一例

点击:1784 回复:7

近日,公司制作一台新设备,用三菱QH02PLC控制。该设备机械部分安装完成后,开始传输程序。程序刚一传完,故障就出现了,该PLC的CPU上的ERROR灯闪烁,RUN指示灯灭了。用电脑查看PLC故障,提示运行停止错误。
这时我就有点搞不懂了,运行也没有停止啊。我反复将PLC的运行开关打开、关闭,还是不行。最后在STOP状态下复位CPU。复位后,PLC没有报错,但当我一把开关拨到RUN状态,ERROR灯就闪烁,并且RUN指示灯灭。我意识到这个故障应该是跟编写的程序有关的。我仔细的检查了一下这个程序,发现有个除法,是SM400驱动的,就是始终运行。而且这个除法中的除数是通过触摸屏赋值的。新设备还没有赋值操作,这个地址中的数值为0。当0作为除数时,在Q02HPLC中是不允许的,所以程序一运行,就会报错而停止。
我修改了一下程序,在赋值后,这条语句才能接通。程序改完后,重新传到PLC上,结果在RUN状态下不再报警,程序运行正常了。
每个品牌的PLC,甚至是一个品牌的不同型号的PLC,对除数为0的情况都会有不同的报警的,所以在这里提醒大家注意了。
表情
09-04-15 16:31
正常的,如果程序传到一半的时候通讯错误,PLC就会出现错误告警。重新传送下程序就好了。我在OMRON上也出现过这个问题,当时也是吓了一跳,以为PLC坏了,结果是虚惊一场
09-04-15 21:58
我想你没有看明白,我说的不是通讯的错误,重新传送的话,也不会好的
09-04-16 08:47

引用 lixiaobai 在 2009-4-16 8:47:45 发言【内容省略】

你說的問題是應該不出現的,因為這是典型的人為錯誤,任何PLC,包括PC都不會允許除數為零。
作為程序員應該考慮到初始值的狀況,不過樓主的提醒也可以視作對初學者的告誡,仔細核對自己程式中變量的初始狀態,使之始終在可以掌控的狀態。
Regards
09-04-16 09:01
这种问题,在自己编写新程序后,经常会遇到。
我也有过这种情况,别人公司一台旧设备改造,程序画面从新编写好(台达的人机和PLC),
准备试机,可是人机与PLC通讯不上,检查所有的设置都没有问题,弄了好几小时都不行,后来打电话台达公司技术人员,他们告诉我可能是人机画面程序有问题。我只好一个个地址找,原来是一个地址超出了范围,把地址改了,通讯正常!
09-04-16 09:08
除数为零应该禁止,加上判断,如果无关紧要Q系列PLC也可以设定为运算出错继续运行。
09-04-16 11:04

引用 zytlc 在 2009-4-16 11:04:17 发言【内容省略】

这点还真没有注意到,是在PLC的CPU设置中进行设置吧
09-04-16 11:43
其实不止这个能引起类似的报警,当你选择PLC的CPU类型与程序中的某些指令不能兼容时也会显示这样的报警,比如你选择的PLC中不能写R寄存器的指令,如果你写了,传输到PLC就会有上述报警信息!
09-04-16 16:58

工控新闻

更多新闻资讯