这两天一直在搞V90回原点。结果,,,阴沟里翻船了。配置是1512SP+V90PN。想实现的功能很简单,电机先到左限位,再到右限位,这样自动算出两限位中点位置,电机回到中点就是当前的原点。很简单的东东,原来用OMRON Mitsubishi Schneider都做过。尤其是058 /241时,当年就是用ST写的,直接把这个ST,转换成SCL,就是程序了。
上机时,信心满满。果然,上机一运行。完美。完全按照我设想的动作,完成回原点。工作到此就结束了。后来想再次回个原点,看看精度。(精度本来也要求低)结果,杯具来了,电机启动后,到左限位,电机不动了!不动了!没有往右的动作。查V90状态,是7002。正常啊。再次手动强制启动,电机顺利完成后面的动作,按要求回到原点。再次重启回原点,又卡在左限位处!查状态,依然是7002。
强制重启PLC。回原点,正常回到原点。再次回原点,又卡在左限位处!强制启动后,回到原点。
也就是说,PLC启动后,第一次是能正常回到原点的。第二次就不行了。由于程序是原来是058上是能正常运行的,加上第一次能正常,关注点就没有放在程序上。关注在第二次为什么不行?由于手动强制后还是能正常,所以在程序里加了段强制重启。结果实验后,还是不行!如果手动强制,程序能正常回到原点!
费了大半天时间,再想怎么启动电机。一直没有结果。最后只能采用老办法,程序一步一步的执行来查。结果一下子就发现问题所在了。回原点程序是用CASE语句写的,调用的是284块。
大家也先想下,明天我公布答案。