PD

函数库 “函数库 UTIL.Library ”提供以下 PD 控制功能块:

插图 547: FBD 中 PD

功能块输入:

变量

数据类型

描述

ACTUAL

REAL

控制变量的当前值

SET_POINT

REAL

描述值,命令值

KP

REAL

比例系数, P-部分的比例增益

TV

REAL

微分时间,以秒定义的 D-部分时间,例如 "0.5" 表示 500 秒

Y_MANUAL

REAL

如果 MANUAL = TRUE 定义输出值 Y

Y_OFFSET

REAL

操作值 Y 的偏移值

Y_MIN, Y_MAX

REAL

操作值 Y 的低限制值以及高限制值。如果 Y 到达限制值,输出 LIMITS_ACTIVE 将会被设置为 TRUE 并且 Y 将会保持在制定的范围内。这个功能块只在 Y_MIN<Y_MAX 时工作。

MANUAL

BOOL

如果为 TRUE,手动操作将会被激活,那么输出值将会通过 Y_MANUAL 进行定义。

RESET

BOOL

TRUE 复位控制器;在重新初始化时 Y = Y_OFFSET 。

功能块输出:

变量

数据类型

描述

Y

REAL

操作值,由功能块定义 (参阅下文 )

LIMITS_ACTIVE

BOOL

TRUE 表明 Y 到达给定的限位值 (Y_MIN, Y_MAX) 。

Y_OFFSET, Y_MIN 以及 Y_MAX 用于在指定的范围内进行操作数的转换。

MANUAL 可以用于启动或者关闭手动操作。 RESET 用于复位控制器。

通常操作 (MANUAL = RESET = LIMITS_ACTIVE = FALSE) 功能块计算 功能块错误 e的方式不同 SET_POINT – ACTUAL,产生时间的相关微分 de/ dt 并将其作为内部变量存储。

输出, 计算值 Y,通过以下方式获得:

所以除了 P-部分以及控制器当前的偏差 (D-部分) 都将会影响计算输出。

另外 Y 限制在 Y_MIN 和 Y_MAX 定义的范围内。如果 Y 处理时到达这个限制值, LIMITS_ACTIVE 将会变为TRUE。如果没有计算的限制值, Y_MIN 和 Y_MAX 必须被设置为 0 。

一旦 MANUAL=TRUE, Y_MANUAL 将会被写入 Y。

一个 P-调节可以通过设置 TV=0 实现。