为了满足实际应用的需要,变频器的数字量输入信号有时候需要进行防抖设置,以达到滤除信号毛刺或者不正确的短时错误信号的目的。
西门子MM4系列的变频器中,参数P0724能够直接定义数字量输入采用的防颤抖时间(滤波时间),P0724设置为1、2、3分别对应2.5ms、8.2ms、12.3ms的滤波时间。P0724 = 0时对输入信号不作滤波处理。但是参数P0724时间的设定最大值只有12.3ms,对于更长时间的要求不能满足。而且根据功能图可知,参数P0724时间的设定,只对正脉冲形式的毛刺信号有滤波作用,对负脉冲形式的毛刺信号则没有滤波作用。
图1:设置参数P0724的滤波逻辑示意图
当需要滤除负脉冲毛刺干扰或者需要更长时间滤波的应用场合,对于MM440和MM430变频器,可以利用自由功能块来实现这个功能。下面以数字量输入DIN1(PNP逻辑,高有效)为例,说明设置方法。
方法1
利用自由功能块(FFB)的定时器实现。将数字量输入DIN1经过一个定时器延时,然后,在应用中利用定时器1的输出信号r2852取代r0722就可以了。
图2:定时器实现消抖设置
如图2所示,假设原来的应用是用数字量输入DIN1(即5号端子)作为变频器的ON/OFF1起停命令,参数设置如下:
P0700.0 = 2, P0701.0 = 1
经过消抖设置后,参数设置变成:
P0700.0 = 2, P0701.0 = 99
P2800 = 1, //使能自由功能块
P2802.0 = 1, //使能定时器
P2849 = 722.0, P2850 = 0.5, P2851 = 1, //定时器0.5s延时
P0840.0 = 2852.0 // ON/OFF1
这样设置后,变频器运行后,在DIN1上出现持续时间小于0.5s的低电平干扰,不会导致变频器误停机。
如果修改上述设置,让P2851 = 2,可以滤除时间相同的正、负脉冲。
方法2
如图3所示,利用自由功能块(FFB)的定时器和“或”门可以实现此功能。将数字量输入DIN1经过两个定时器延时,再进行逻辑“或”运算。然后,在应用中利用“或”门的输出信号r2817取代r0722就可以了。
假设原来的应用是用数字量输入DIN1(即5号端子)作为变频器的ON/OFF1起停命令,参数设置如下:
P0700.0 = 2, P0701.0 = 1
经过消抖设置后,参数设置变成:
P0700.0 = 2, P0701.0 = 99
P2800 = 1, //使能自由功能块www.ippipp.com
P2802.0 = 1, p2802.2 = 1, P2801.3 = 1, //使能定时器和或门
P2849 = 722.0, P2850 = 0.5, P2851 = 2, //定时器1延时0.5s
P2859 = 722.0, P2860 = 0.3, P2861 = 0, //定时器2延时0.3s
P2816.0 = 2852.0, P2816.1 = 2862.0, //或门输入信号
P0840.0 = 2817.0 // ON/OFF1
这样设置,可以在DIN1上滤除宽度小于0.3s的正脉冲和0.5s的负脉冲。
图3:定时器和“或”门实现消抖设置