登录
首页 PLC论坛 西门子SIEMENS
回帖 发帖
正文

主题:急救,关于FB41功能块PID调节参数的设置问题!!!

点击:3383 回复:3

各位好,在下是第一次用41功能块,现在在做一水厂的工程,需要用41功能块来保持滤池水位的稳定,即恒水位调节.该池有一个进水阀(非调节),一个液位计和一个可调节的出水阀,现在在下把FB41功能块已放入OB35(1000MS),液位计的数据(浮点)乘了1000送入了PV_IN管脚,将社定的水位送到SP_INT同样是扩大了1000倍的,然后将出水阀的控制信号连到了LMN管脚上.但现在的情况是输出一般都为0,LMN_P 的输出数值一般都有几百,当水位低于设定水位时,一般LMN_P 输出都是负的数值,如果水位等与设定水位那么LMN_P 输出为0,如果大于则又是正的几百,完全不是在正常的0到100间变化,无法作为控制阀位(0%~100%)的信号.输出上下限我也定义了是0到100但实际上却无法输出,只能在LMN_P 看到负几百或正几百的变化,我还尝试过把LMN_P 的数值乘以 -0.1后做为控制阀位的信号,但发现不行,当进水量大时,水位会上升,虽然最后也会稳定在某一数值.而且稳定的数值不是先设定的水位,现在设定的800MM,稳定在920MM,而当进水大时,则又稳定在了1002MM,请问各位对此有经验的朋友,我到底是什么地方没注意啊.为了让各位能更清楚我现在的DB里的设置,现将DB的各项参数行列如下,希望各位对此有经验的朋友能帮忙指教一下,谢谢!!!
COM_RST  BOOL   FALSE        complete restart
MAN_ON  BOOL   FALSE        manual value on
PVPER_ON  BOOL FALSE        process variable peripherie on
P_SEL      BOOL    TRUE        proportional action on
I_SEL      BOOL    TRUE        integral action on
INT_HOLD  BOOL    FALSE        integral action hold
I_ITL_ON  BOOL    FALSE        initialization of the integral action
D_SEL      BOOL   FALSE        derivative action on
CYCLE      TIME    T#200ms       sample time
SP_INT      REAL     800.0        internal setpoint
PV_IN      REAL     0.000000e+000 process variable in
PV_PER      WORD W#16#0        process variable peripherie
MAN      REAL    0.000000e+000 manual value
GAIN      REAL    2.000000e+000 proportional gain
TI          TIME    T#20S        reset time
TD          TIME    T#10S        derivative time
TM_LAG  TIME   T#2S        time lag of the derivative action
DEADB_W  REAL   30.0            dead band width
LMN_HLM  REAL    1.000000e+002 manipulated value high limit
LMN_LLM  REAL    0.000000e+000 manipulated value low limit
PV_FAC      REAL    1.000000e+000 process variable factor
PV_OFF      REAL   0.000000e+000 process variable offset
LMN_FAC  REAL    1.000000e+000 manipulated value factor
LMN_OFF  REAL   0.000000e+000 manipulated value offset
I_ITLVAL  REAL   30.0         initialization value of the integral action
DISV      REAL   0.000000e+000 disturbance variable
LMN      REAL   0.000000e+000 manipulated value
LMN_PER  WORD W#16#0 manipulated value peripherie
QLMN_HLM BOOL FALSE        high limit of manipulated value reached
QLMN_LLM BOOL FALSE        low limit of manipulated value reached
LMN_P       REAL 0.000000e+000 proportionality component
LMN_I        REAL 0.000000e+000 integral component
LMN_D       REAL 0.000000e+000 derivative component
PV            REAL 0.000000e+000 process variable
sInvAlt        REAL 0.000000e+000
sIanteilAlt    REAL 0.000000e+000
sRestInt        REAL 0.000000e+000
sRestDif        REAL 0.000000e+000
sRueck        REAL 0.000000e+000
sLmn        REAL 0.000000e+000
sbArwHLmOn   BOOL FALSE
sbArwLLmOn    BOOL FALSE
sbILimOn    BOOL TRUE
最后修改:2007-4-16 21:20:07
07-04-16 21:11
尝试用LMN---PER输出
07-04-19 21:44
液位计的数据(浮点)送入了PV_IN管脚,将社定的水位送到SP_,然后将出水阀的控制信号连到了LMN管脚上值(0.0-100.0)转换为出水阀的控制信号的数据(0-32768).比例设为(-2.0到-8.0)之间的数值,TI设为20S
07-05-11 17:49
不应该呀?
16-05-31 21:40

工控新闻

更多新闻资讯