一段: CALL FC105
IN :=#air_pressin
HI_LIM :=1.000000e+001
LO_LIM :=0.000000e+000
BIPOLAR:=FALSE
RET_VAL:=MW2
OUT :=#temp3
二段 L #temp3
L 1.000000e-002
*R
T #temp3_1
L #air_pressout
L 9.900000e-001
*R
T #temp3_2
L #temp3_1
L #temp3_2
+R
T #air_pressout
我知道一段是模拟量的转化,输出给#temp3,这么直接转换就可以了,为什么还要进行二段的计算(在调用这个块时,输出是连接到#air_pressout),这么计算有什么意义呢?特别是第二段的第五行到第八行, L #air_pressout
L 9.900000e-001
*R
T #temp3_2
#air_pressout是最后的输出,为什么在这里要乘以0.99,在程序第一次执行和每次执行时,它的值都分别是多少呢。
问题补充:
谢谢大家,现在知道a是滤波系数,想知道a的大小对滤波效果有什么影响吗?
最佳答案
一段: CALL FC105
IN :=#air_pressin
HI_LIM :=1.000000e+001
LO_LIM :=0.000000e+000
BIPOLAR:=FALSE
RET_VAL:=MW2
OUT :=#temp3
////////////////////////////////////////////////////////////////////////////
输入信号转换成0~10.0之间的数值保存到temp3中
/////////////////////////////////////////////////////////////////
二段 L #temp3
L 1.000000e-002
*R
T #temp3_1
L #air_pressout
L 9.900000e-001
*R
T #temp3_2
L #temp3_1
L #temp3_2
+R
T #air_pressout
//////////////////////////////////////////////////////////////
air_pressout=temp3*0.01+0.99*air_pressout
///////////////////////////////////////////////////////////
你这两段的意思就是ai输入信号先转换成工程量,然后加一阶滞后滤波,防止信号抖动的作用。
提问者对于答案的评价:
学习了,谢谢
专家置评
已阅,最佳答案正确。
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc236579.html