由于在处理温度模拟量中未进行中值滤波(加装延时器同样有效果),在工程应用中出现瞬间峰值,从而导致触发报警程序,但由于是峰值,报警马上又复位,这样情况会不定时的发生,间隔时间有时候几天,有时候几小时。客户抱怨不断,希望大家引以为戒!
以下是我当初写的程序:
LD SM0.0
LPS
MOVW AIW8, VW2090
+I VW3054, VW2090
AW>= VW2090, VW3086
S V3900.0, 1
LPP
AW< VW2090, VW3088
R V3900.0, 1
V3900.1 -----温度过高报警位
VW2090-----温度采集值(热电偶)
VW3054-----温度校正
VW3086-----温度过高报警值
VW3088-----温度过高报警解除值
以下是经过加装报警延时器后,故障消失。
LD SM0.0
LPS
MOVW AIW8, VW2090
+I VW3054, VW2090
AW>= VW2090, VW3086
TON T230, 50
A T230
S V3900.0, 1
LPP
AW< VW2090, VW3088
R V3900.0, 1