在程序中使用了几个【S-CU 升值计数器】,没有预置值,【设置输入端S】也没有输入,只有【计数脉冲输入端CU】是用一个开点带动的,这个开点是某个输出线圈的开点,输出线圈一般会得电1秒到4秒。也就是说,输出线圈得电若干秒,开点就闭合若干秒;输出线圈失电,开点就断开。用开点作为CU端的输入。
以前用的好好的,但不知道怎么回事,近几天老是出现其中的某一个和某几个计数器偶尔自动加1的情况,也不是每次执行程序的时候都出现,平均出现率在40%左右。
换了计数器的地址也没有用。
查资料,说是和【RLO的上升沿】有关,但 【RLO的上升沿】无法监控,看不出变化。
有的资料上说:“在用【设置输入端S】设置计数器时,若CU端为1,即使信号没有发生变化,下一扫描周期也会计数。” 这句话应该怎么理解? 我使用的计数器上面的S端根本没有输入,不会对计数器进行设置啊!
后来我在开点的后面又加了一个(P)线圈【RLO边沿检测指令】,通过这个(P)去带动计数器的CU端,但有时还会出现以上情况。
哪位网友遇到过这种计数器自动加1的情况,能否提供一下解决方案?
最佳答案
看过你的描述,是否检测一下这个线圈的得电情况,在整个得电周期中是否会出现“闪断”现象。
线圈通电1~4S足够plc捕捉到信号,这个没有问题,计数器原来是正常的,也排除了计数器重复使用的问题,可能存在的问题是计数器输入信号出现可能的闪动,加一个定时器简单“滤波”试试。
提问者对于答案的评价:
谢谢指点,不过以前也试过用定时器,就是让线圈得电1秒左右,定时器输出=1,用这种方法再带动计时器,但依然会出现上述现象。
最佳答案作者回复:
有必要将输出线圈改为置位、复位的指令应用,同时确认复位条件是否可能存在闪断的概率。
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc289368.html