使用SFB 41/FB 41 \"CONT_C\"进行连续控制(西门子帮助) 引言
SFB/FB \"CONT_C\" (连续控制器)在SIMATIC S7可编程逻辑控制器上使用,通过持续的输入和输出变量来控制工艺过程。在参数分配期间,可以通过激活或取消激活PID控制器的子功能使控制器适应过程的需要。使用参数分配工具可以轻松完成分配(菜单路径:开始 > Simatic > Step7 > 分配
PID
控制参数)。开
始 > Simatic > Step7 > 分配PID控制(英文)中提供了在线电子手册。 应用
可以使用该控制器作为PID固定设定值控制器或在多循环控制中作为层叠、混料或比率控制器。该控制器的功能基于使用模拟信号的采样控制器的PID控制算法,必要时可以通过加入脉冲发生器阶段进行扩展,为使用成比例执行机构的两个或三个步骤控制器生成脉冲持续时间调制输出信号。
注意只有在以固定时间间隔调用块时,在控制块中计算的值才是正确的。为此,应该在周期性中断OB (OB30至OB38)中调用控制块。在CYCLE参数中输入采样时间。 描述
除了设定值和过程值分支中的功能,SFB/FB还通过持续操作变量输出和手动影响操作值的选项实现了完整的PID控制器。
下文提供了对这些子功能的详细说明: 设定值分支
以浮点格式在SP_INT输入键入设定值。 过程变量分支
可以外设(I/O)或以浮点格式输入过程变量。CRP_IN功能根据以下公式将PV_PER外设值转换为介于 -100和 +100 %间的浮点格式值: PV_NORM功能根据以下公式统一CRP_IN输出的格式: PV_NORM的输出 = (CPR_IN的输出) * PV_FAC + PV_OFF PV_FAC的默认值为1,PV_OFF的默认值为0。 出错信号
设定值和过程变量间的差异就是出错信号。为消除由于操作变量量化导致的小幅恒定振荡(例如,在使用PULSEGEN进行脉宽调制时),将死区应用于出错信号(DEADBAND)。如果DEADB_W = 0,将关闭死区。 PID算法
PID算法用于定位计算。比例、积分(INT)和微分(DIF)操作以并联方式连接,因而可以分别激活或取消激活。这使对P、PI、PD和PID控制器进行组态成为可能。还可以对纯I和D控制器进行组态。 手动值
可以在手动和自动模式间进行切换。在手动模式下,使用手动选择的值更正操作变量。积分器(INT)内部设置为LMN - LMN_P - DISV,微分单元(DIF)设置为0并在内部进行匹配。这意味着切换到自动模式不会导致操作值发生任何突变。 操作值
使用LMNLIMIT功能可以将操作值为所选择的值。输入变量超过时,信号位会给予指示。
LMN_NORM功能根据以下公式统一LMNLIMIT输出的格式: LMN = (LMNLIMIT的输出) * LMN_FAC + LMN_OFF LMN_FAC的默认值为1,LMN_OFF的默认值为0。
也可以得到外设格式的操作值。CPR_OUT功能根据以下公式将浮点值LMN转换为外设值: 前馈控制
可以在DISV输入前馈干扰变量。 初始化
SFB 41 \"CONT_C\"有一个在输入参数COM_RST = TRUE时自动运行的初始化程序。
在初始化过程中,将把积分器内部设置为初始化值I_ITVAL。以周期性中断优先级调用它时,它会从此值开始继续工作。
将所有其它输出设置为它们各自的默认值。 出错信息
不使用出错输出参数RET_VAL。 CONT_C方框图 输入参数
下表包含对SFB 41/FB 41 \"CONT_C\"输入参数的说明。 参数 数据类型 取值范围: 默认 描述
COM_RST BOOL FALSE COMPLETE RESTART 该块有一个在设置输入COM_RST时 自动执行的初始化程序。
MAN_ON BOOL TRUE MANUAL VALUE ON 如果设置输入\"启用手动值\", 将中断控制回路。手动值 作为操作值进行设置。
PVPER_ON BOOL FALSE PROCESS VARIABLE PERIPHERAL ON
如果从I/O读取过程变量, 必须将输入PV_PER连接到 I/O,且必须设置输入\"启用过程变量 外设\"。
P_SEL BOOL TRUE PROPORTIONAL ACTION ON
可以在PID算法中单独 激活或取消激活
PID操作。如果设置输入\"启用比例作用\", 将启用P操作。
I_SEL BOOL TRUE INTEGRAL ACTION ON 可以在PID算法中单独 激活或取消激活
PID操作。如果设置输入\"启用积分作用\", 将启用I操作。
INT_HOLD BOOL FALSE INTEGRAL ACTION HOLD 设置输入\"积分作用暂停\" 可以\"冻结\"积分器的输出。
I_ITL_ON BOOL FALSE INITIALIZATION OF THE INTEGRAL ACTION ON
设置输入\"积分作用初始化打开\"可以 将积分器的输出 连接到输入 I_ITL_VAL。
D_SEL BOOL FALSE DERIVATIVE ACTION ON 可以在PID算法中单独 激活或取消激活
PID操作。如果设置输入\"启用微分作用\",
将启用D操作。
CYCLE TIME >= 1毫秒 T#1s SAMPLING TIME 块调用之间的时间必须为 常数。\"采样时间\"输入 指定块调用之间的时间。 SP_INT REAL -100.0至 +100.0
(%)或物理值 1) 0.0 INTERNAL SETPOINT \"内部设定值\"输入用于指定 设定值。
PV_IN REAL -100.0至 +100.0 (%)或物理值
1) 0.0 PROCESS VARIABLE IN 可以在\"过程变量输入\" 输入设置初始化值, 也可以连接浮点格式的 外部过程变量。
PV_PER WORD W#16#0000 PROCESS VARIABLE PERIPHERAL
将I/O格式的过程变量连接到 \"过程变量外设\"输入处的控制器 。
MAN REAL -100.0至 +100.0
(%)或物理值
2) 0.0 MANUAL VALUE
\"手动值\"输入用于通过操作员界面功能 设置手动 值。
GAIN REAL 2.0 PROPORTIONAL GAIN \"比例值\"输入指定 控制器增益。
TI TIME >= CYCLE T#20s RESET TIME \"复位时间\"输入决定积分器 的时间响应。
TD TIME >= CYCLE T#10s DERIVATIVE TIME \"微分时间\"输入决定微分单元 的时间响应。
TM_LAG TIME >= CYCLE/2 T#2s TIME LAG OF THE DERIVATIVE ACTION D操作的算法包括
可以在\"微分作用的时间延迟\"输入 分配的时间延迟。
DEADB_W REAL >= 0.0 (%) 或物理值1) 0.0 DEAD BAND WIDTH 将死区应用于出错。\"死区带宽\"
输入决定死区的 大小。
LMN_HLM REAL LMN_LLM ...100.0 (%)
或物理值2) 100.0 MANIPULATED VALUE HIGH LIMIT 操作值始终受
上限和下限的。\"操作值上限\"输入 指定上 限。
LMN_LLM REAL -100.0... LMN_HLM (%)
或物理值2) 0.0 MANIPULATED VALUE LOW LIMIT 操作值始终受
上限和下限的。\"操作值 下限\"输入指定 下限。
PV_FAC REAL 1.0 PROCESS VARIABLE FACTOR \"过程变量因子\"输入 与过程变量相乘。该输入 用于调整过程变量 范围。
PV_OFF REAL 0.0 PROCESS VARIABLE OFFSET 将\"过程变量偏移量\"输入 与过程变量相加。该输入用于 调整过程变量范围。
LMN_FAC REAL 1.0 MANIPULATED VALUE FACTOR 将\"操作值因子\"输入 与操作值相乘。该输入 用于调整操作值 范围。
LMN_OFF REAL 0.0 MANIPULATED VALUE OFFSET 将\"操作值偏移量\"与 操作值相加。该输入用于 调整操作值范围。
I_ITLVAL REAL -100.0至 +100.0 (%)
或
物
理
2) 0.0 INITIALIZATION VALUE OF THE INTEGRAL ACTION 可以在
输入I_ITL_ON设置积分器的输出。将初始化值 应用于输入
\"积分作用的初始化值\"。 DISV REAL -100.0至 +100.0
(%)或物理值2) 0.0 DISTURBANCE VARIABLE 为进行前馈控制, 将干扰变量连接到 输入\"干扰变量\"。
值
1) 同一单元中设定值和过程变量分支中的参数 2) 同一单元中操作值分支中的参数 输出参数
下表包含对SFB 41/FB41 \"CONT_C\"输出参数的说明。 参数 数据类型 取值范围: 默认 描述 LMN REAL 0.0 MANIPULATED VALUE 有效的操作值为 \"操作值\"输出处 的浮点格式输出。
LMN_PER WORD W#16#0000 MANIPULATED VALUE PERIPHERAL
将I/O格式的操作值 连接到\"操作值外设\" 输出的控制器。
QLMN_HLM BOOL FALSE HIGH LIMIT OF MANIPULATED VALUE REACHED 操作值始终受
上限和下限的。如果输出为\"达到 操作值上限\" ,则表明已
超过上限。
QLMN_LLM BOOL FALSE LOW LIMIT OF MANIPULATED VALUE REACHED 操作值始终受
上限和下限的。如果输出为\"达到 操作值下限\" ,则表明已 超过下限。
LMN_P REAL 0.0 PROPORTIONAL COMPONENT \"比例组件\"输出 包含操作变量的比例 组件。
LMN_I REAL 0.0 INTEGRAL COMPONENT \"积分组件\"输出包含 操作值的积分 组件。
LMN_D REAL 0.0 DERIVATIVE COMPONENT \"微分组件\"输出包含 操作值的微分 组件。
PV REAL 0.0 PROCESS VARIABLE
有效过程变量为
\"过程变量\"输出处的输出。 ER REAL 0.0 ERROR SIGNAL 有效出错为
\"出错信号\"输出处的输出。