非常简单的控制三点位置。(一扇门的双向开启和关闭)
台达PLC(DVP14ES),用1000P/R的编码器的A、B相作输入元件,以M1002去设置C251的零位,然后在通电周期内保持计数。
输出轴作扇形来回摆动,分别在零计数和+500、-500个脉冲的时候作停留。
输出的Y1、Y2去控制一个普通单相电机的正反转。
现在的问题是:从梯形图的监控上看脉冲输出正常。但实际的零位在转动数千次后,与一开始预设的零位偏移严重(最多偏移超过90度),但偏移方向不定,也可能在几千次后又回来了。
从理论上讲,在一个通电周期内,只作了一次RESET C251,C251一直在计数,零位位置是不变的。
一开始怀疑是编码器的问题,我换过国产的和欧姆龙的编码器,都是一样的结果。
咨询过欧姆龙和台达的技术支持,都没有结果。上这里求助大家!
谢谢楼上各位。
我强调几点:
一、可以肯定的一点是:该误差并非机械方面的原因造成。因为机械的误差并没有这么大,即使有,也不会无限扩大。并且机械上的误差,也能从编码器上读出来。现在问题是PLC监控上能看到C251的计数都是正确的。即使实际的零位已相对初始位置转过了45度。
二、我相信使用绝对值可以解决问题,但一个是价格太高,第二是现场调整不方便。
三、经过几天的测试,我们觉得可能是外界(主要是电机?)的干扰信号导致脉冲计数出错,或者是停车时半个脉冲的计数产生累积误差?
四、电源对计数有很大的影响。一开始用PLC自身的电源给编码器供电,结果计数误差大得一蹋糊涂。后来电源分开后,情况好很多。但没有完全的解决问题。在几个继电器上加了些电阻电容,也有所改善,但都没有根本上解决问题。
谢谢各位。