跳到主要内容

PID_FB

功能说明

PID_FB是一个通用的PID控制器功能块,可以通过参数设置切换到比例控制器或积分控制器,可以使用intSetValue和setIntChannel来设置积分模块。PID控制器的输出会被outValueFactor和outValueOffset调整, 也会被upperLimit和lowLimit限制。

输入参数

名称类型描述
enableBOOLTRUE: 使能PID_FB功能块
resetBOOLTRUE: 重置功能块
setpointValueLREAL目标值
actualValueLREAL实际值
preControlLREAL控制器控制前的控制值
propGainLREAL比例增溢值,0: 关闭控制器中的比例控制功能
integTimeLREAL积分器中的时间参数,单位为毫秒ms。 0: 关闭控制器中的积分控制功能
derivTimeLREAL微分器中的时间参数,单位为毫秒ms。 0: 关闭控制器中的微分控制功能
filterTimeLREAL过滤器时间参数,单位为毫秒ms。 0: 关闭控制器中的过滤功能
upperLimitLREAL控制值的上限
lowerLimitLREAL控制值的下限
intSetValueLREAL积分器的强制值
holdIntChannelBOOLTRUE:积分器被暂停hold住
setIntChannelBOOLTRUE:积分器的输出会被强制为intSetValue
controlModeBOOLFALSE:在实际值计算中激活微分器, TRUE:停止微分器
deadBandLREAL实际值的无效带值, 0: 停止无效带功能
actualValueFactorLREAL实际值的变换乘数因子
actualValueOffsetLREAL实际值的变换偏移值
outValueFactorLREAL控制器输出的变换乘法因子
outValueOffsetLREAL控制器输出的变换偏移值
tCycleREAL功能块被调用的周期时间,单位为毫秒ms

输出参数

名称类型描述
busyBOOLTRUE:功能块工作中
errorBOOLTRUE: 功能块出错
errorIDDWORD16#80000000: 工作正常 16#80000001:tCycle错误 16#80000010: 配置错误
upperLimitReachedBOOLTRUE:达到上限
lowerLimitReachedBOOLTRUE:达到下限
deviationValueLREAL无效带过滤后的偏差值
pOutValueLREAL比例模块限制前输出值
iOutValueLREAL积分模块限制前输出值
dOutValueLREAL微分模块限制前输出值
outValueLREAL控制器调整后的输出值

使用说明

在程序中调用 PID_FB 指令,根据参数表完成变量连接后即可使用。