长沙 西门子 6ES7953-8LM20-0AA0 湖南代理商
FB41(CONT_C)基本使用
FB41“CONT_C”用于在SIMATIC S7可编程控制器上,控制带有连续输入和输出变量的工艺过程。在参数分配期间,用户可以激活或取消激活PID控制器的部分功能,如积分冻结等,以使控制器适合实际的工艺过程。
FB41“CONT_C”可以将控制器用作PID固定设定值控制器,或者在多回路控制中用作级联、混合或比率控制器。控制器的功能基于采样控制器的PID控制算法,采样控制器带有一个模拟信号;如果需要的话,还可以扩展控制器的功能,增加一个脉冲生成器环节,以产生脉宽调制的输出信号,用于带有比例执行器的两步或三步控制器。
FB41“CONT_C”必须在OB定时中断内调用,并将CYCLE(采样时间)管脚的调用时间与 OB定时中断保持一致,即相等 。
图1.FB41"CONT_C" 的方框图
主要参数
图2. FB41"CONT_C" 程序块
注:以TIA Portal V13 SP1为例,该功能块在STEP 7中的管脚与其相同
表1. FB41"CONT_C" 的输入参数
参数 | 变量类型 | 数据类型 | 取值范围 | 默认 | 描述 | 应用 |
---|---|---|---|---|---|---|
COM_RST | IN | BOOL | FALSE | 完全重启动 | 置位后需手动去复位 | |
MAN_ON | IN | BOOL | TRUE | 手/自动切换按钮 | MAN_ON: | |
PVPER_ON | IN | BOOL | FALSE | 设定值选择外设 | PVPER_ON: | |
PV_IN | IN | REAL | -100~100(%)或者 物理值 | 0.0 | 过程变量输入 | 必须与SP_INT单位一致 |
PV_PER | IN | WORD | 16#0000 | 外设过程变量输入 | PIW xxx | |
SP_INT | IN | REAL | -100~100(%)或者 物理值 | 0.0 | 内部设定值 | |
P_SEL | IN | BOOL | TRUE | 比例作用激活 | P_SEL: | |
I_SEL | IN | BOOL | TRUE | 积分作用激活 | I_SEL: 0:关闭积分作用 1:激活积分作用 | |
INT_HOLD | IN | BOOL | FALSE | 积分冻结 | 冻结当前积分作用 | |
I_ITL_ON | IN | BOOL | FALSE | 积分设定值 | I_ITL_ON: | |
I_ITLVAL | IN | REAL | -100~100(%) | 0.0 | 积分初始值 | |
D_SEL | IN | BOOL | FALSE | 微分作用打开 | I_SEL: 0:关闭微分作用 1:激活微分作用 | |
CYCLE | IN | TIME | >=1 ms | T#1s | 采样时间 | 建议:与定时中断时间设置相同 |
MAN | IN | REAL | -100~100(%) | 0.0 | 手动值 | |
GAIN | IN | REAL | 2.0 | 比例因子 | ||
TI | IN | TIME | >=CYCLE | T#20s | 积分时间 | |
TD | IN | TIME | >=CYCLE | T#10s | 微分时间 | |
TM_LAG | IN | TIME | 〉=CYCLE/2 | T#2s | 微分作用的时间延迟 | TM_LAG越大,微分作用越小 |
DEAD_W | IN | REAL | >=0.0 | 0.0 | 死区宽度 | SP_INT-DEAD_W<PV_IN<SP_INT+DEAD_W |
LMN_HLM | IN | REAL | 100.0 | 调节值上限 | ||
LMN_LLM | IN | REAL | 0.0 | 调节值上限 | ||
PV_FAC | IN | REAL | 1.0 | 过程变量因子 | ||
PV_OFF | IN | REAL | 0.0 | 过程变量偏移量 | ||
LMN_FAC | IN | REAL | 1.0 | 调节值因子 | ||
LMN_OFF | IN | REAL | 0.0 | 调节值偏移量 | ||
DISV | IN | REAL | -100~100(%) | 0.0 | 干扰变量 |
表2. FB41"CONT_C" 的输出参数
参数 | 变量类型 | 数据类型 | 取值范围 | 默认 | 描述 | 说明 |
---|---|---|---|---|---|---|
LMN | OUT | REAL | 0.0 | 调节值 | ||
LMN_PER | OUT | WORD | 16#0000 | 外设调节值 | PQW xxx | |
QLMN_HLM | OUT | BOOL | FALSE | 调节值上限报警 | ||
QLMN_LLM | OUT | BOOL | FALSE | 调节值下限报警 | ||
LMN_P | OUT | REAL | 0.0 | 比例分量 | ||
LMN_I | OUT | REAL | 0.0 | 积分分量 | ||
LMN_D | OUT | REAL | 0.0 | 微分分量 | ||
PV | OUT | REAL | 0.0 | 当前值输出 | ||
ER | OUT | REAL | 0.0 | 偏差 | ER=SP_INT-PV_IN |
基本功能
由图 1 可知,FB41可以分为偏差产生、PID运算、PID输出三部分。
以下为管道压力控制实例说明:
升压时,阀门开度增加;降压时,阀门开度减小。
被控对象:0-100Kpa (压力)输入信号:4-20mA
设 定 值 :60Kpa
执行元件:0-100% (阀门)输出信号:4-20mA
手/自动选择(MAN_ON)
表3.MAN_ON的选择
参数 | 状态 | 说明 |
---|---|---|
MAN_ON | 0 | 自动控制:PID经过程序块计算输出 |
MAN_ON | 1 | 手动控制:直接由MAN控制输出 |
当前值PV_IN与PV_PER的选择
表4.PVPER_ON的选择
参数 | 状态 | 说明 |
---|---|---|
PVPER_ON | 0 | PV_IN有效 |
PVPER_ON | 1 | PV_PER有效 |
注:无论当前值选择哪个管脚,SP_INT必须与其量纲相同
PVPER_ON=0
利用量程转换块FC105"SCALE"将过程变量转换为实际工程量
图3.FC105“SCALE”量程转换块
注:以TIA Portal V13 SP1为例,该功能块在STEP 7中的管脚与其相同
表5.FC105“SCALE”参数引脚
参数 | 变量类型 | 数据类型 | 描述 | 说明 |
---|---|---|---|---|
IN | IN | INT | 输入 | PIW xxx |
HI_LIM | IN | REAL | 输出值上限 | |
LO_LIM | IN | REAL | 输出值下限 | |
BIPOLAR | IN | BOOL | 极性选择 | BIPOLAR: |
RET_VAL | OUT | WORD | 错误信息 | |
OUT | OUT | REAL | 输出 |
图4.PVPER_ON=0时,PV_IN有效
PVPER_ON=1
直接将过程变量输入到PV_PER管脚,会按照以下公式进行规格化转换。
公式:PV=(PV_PER*100/27648)*PV_FAC+PV_OFF
默认转换为0-100(%)
图5.PVPER_ON=1时,PV_PER有效
PID参数输入
表6.PID参数设定
参数 | 描述 | 说明 |
---|---|---|
GAIN | 比例增益 | 1,GAIN越大,比例作用越大; |
TI | 积分时间 | TI越大,积分作用越小 |
TD | 微分时间 | TD越大,微分作用越大 |
PID输出LMN与LMN_PER选择
表7.PID输出管脚
参数 | 类型 | 说明 |
---|---|---|
LMN | REAL | 默认输出0-100(%) |
LMN_PER | WORD | 16#0-16#6C00 |
LMN输出
利用量程转换块FC106"UNSCALE"将LMN转换为0-27648的工程量
图6.FC106"UNSCALE"量程转换块
注:以TIA Portal V13 SP1为例,该功能块在STEP 7中的管脚与其相同
表8.FC106"UNSCALE"参数引脚
参数 | 变量类型 | 数据类型 | 取值范围 | 描述 | 说明 |
---|---|---|---|---|---|
IN | IN | REAL | 输入 | ||
HI_LIM | IN | REAL | 输入值上限 | ||
LO_LIM | IN | REAL | 输入值下限 | ||
BIPOLAR | IN | BOOL | 极性选择 | BIPOLAR: | |
RET_VAL | OUT | WORD | 错误信息 | ||
OUT | OUT | INT | 输出 |
LMN_PER
直接将PQWxxx连接到LMN_PER管脚控制输出
图7.FB41"CONT_C"LMN_PER输出
FB43(PULSEGEN)
FB43 “PULSEGEN”用于构造一个PID控制器,以生成脉冲输出,用于比例执行器。还可以配置带有脉宽调制的两步或三步PID控制器,通常与FB41一起使用。
图1. FB41"CONT_C" 与FB43 “PULSEGEN”
主要参数
图2. FB43 “PULSEGEN" 程序块
注:以TIA Potal V13 SP1为例,该功能块在STEP 7中的管脚与其相同
表1. FB43 “PULSEGEN" 的输入参数
参数 | 变量类型 | 数据类型 | 取值范围 | 默认 | 描述 | 应用 |
---|---|---|---|---|---|---|
INV | IN | REAL | -100~100(%) | 0.0 | 模拟量输入 | 上一级PID (FB41) 输出 |
PER_TM | IN | TIME | T#1s | 脉冲周期 | 上一级PID (FB41) 周期 | |
P_B_TM | IN | TIME | T#50 ms | 最小脉冲开/关时间 | 防止执行器频繁开关 | |
RATIOFAC | IN | REAL | 0.1~10.0 | 1.0 | 比率因子 | 改变正负脉冲宽度之比 |
STEP3_ON | IN | BOOL | TRUE | 三步控制 | 激活三步控制,两个脉冲输出都在激活状态 | |
ST2BI_ON | IN | BOOL | FALSE | 两步控制 | ||
MAN_ON | IN | BOOL | FALSE | 手/自动切换按钮 | MAN_ON: | |
POS_P_ON | IN | BOOL | FALSE | QPOS_P手动输出 | ||
NEG_P_ON | IN | BOOL | FALSE | QNEG_P手动输出 | ||
SYS_ON | IN | BOOL | TRUE | 周期同步 | MAN_ON: | |
COM_RST | IN | BOOL | FALSE | 完全重启动 | ||
CYCLE | IN | TIME | T#10ms | 采样时间 | FB43 采样时间与调用组织块相同 |
表2. FB43 “PULSEGEN" 的输出参数
参数 | 变量类型 | 数据类型 | 取值范围 | 默认 | 描述 | 说明 |
---|---|---|---|---|---|---|
QPOS_P | OUT | BOOL | FALSE | 正向脉冲 | ||
QNEG_P | OUT | BOOL | FALSE | 负向脉冲 |
表3. FB43 “PULSEGEN" 的静态变量
参数 | 变量类型 | 数据类型 | 取值范围 | 默认 | 描述 | 说明 |
---|---|---|---|---|---|---|
siZaehlPer | STATS | INT | 0 | 总脉冲数 | 一个脉冲周期内的脉冲个数,倒数计数 | |
siZaehlPTm | STATS | INT | 0 | 实际高电平脉冲数 | 一个脉冲周期内的实际高电平脉冲个数,倒数计数 |
FB43 “PULSEGEN" 的工作模式
脉宽调制
在每个周期持续时间内,脉冲的持续时间和输入变量成比例。 通过 PER_TM 分配的周期与 PULSEGEN 指令的处理周期不同。 相反,PER_TM 周期由 PULSEGEN 指令的多个处理周期组成,因此每个 PER_TM 周期中 PULSEGEN 调用的次数决定了脉冲宽度的精度。
图3. FB43 “PULSEGEN" 脉宽调制
调节值的精度
由上图可见:
“采样比率”为 1:10(CONT_C 调用与 PULSEGEN 调用之比)时,此示例中的调节值精度将限制为 10%,换言之,只能在输出 QPOS_P 以 10% 为步长的脉冲持续时间对设置的输入值 INV 进行模拟。
精度将随每次 CONT_C 调用中 PULSEGEN 调用的次数的增加而提高。
例如,如果调用 PULSEGEN 的频率是调用 CONT_C 频率的 100 倍,则获得的操作值范围的精度为 1%。
自动同步
可以使脉冲输出与更新输入变量 INV 的指令(例如 CONT_C)自动同步。 这样可以确保尽快将输入变量的变化输出为脉冲。
脉冲执行器以对应周期持续时间 PER_TM 的时间间隔评估输入值 INV,并将该值转换成相应长度的脉冲信号。
由于通常以较慢的循环中断等级计算 INV,因此在 INV 更新之后,脉冲执行器应尽快开始将离散值转换为脉冲信号。
为此,块可以使用以下步骤来与周期的起始点同步:
如果 INV 发生变化,且块调用不在周期的第一个或最后两个调用循环中,则执行同步。 脉冲持续时间将重新计算,并在下一个循环与新周期一起输出。
图4. FB43 “PULSEGEN" 自动同步
如果 SYN_ON = FALSE,自动同步将关闭。
TIA V13 SP1与 STEP 7 V5.5控制面板对比
FB41“CONT_C” STEP 7 V5.5 控制面板
FB41“CONT_C” TIA V13 SP1控制面板
FB58 “TCONT_CP“ STEP 7 V5.5 控制面板
FB58 “TCONT_CP“ TIA V13 SP1控制面板
FB41“CONT_C” STEP 7 V5.5 控制面板
打开路径如下:
图1. STEP 7 V5.5PID 控制面板路径
打开软件后,找到需要调试的项目及背景数据块
图2. STEP 7 V5.5 PID程序调试路径
1. 打开项目;
2. 找到需要调试的项目;
3. 打开程序块;
4. 选择在线"on line";
5. 选择FB41“CONT_C”的背景数据块
图3. STEP 7 V5.5 PID控制面板
1, Process Variable:过程量(反馈)处理
名称 | 对应变量 | 备注 |
---|---|---|
internal | PVPER_ON | PVPER_ON=0 |
I/O | PVPER_ON=1 | |
Normalization factor | PV_FAC | 过程变量因子 |
Normalization offset | PV_OFF | 过程变量偏移量 |
2,PID Parameters:PID参数
名称 | 对应变量 | 备注 |
---|---|---|
Proportional | GAIN | 比例 |
Reset Time | TI | 积分 |
Initial Value | I_ITLVAL | 积分初始值 |
Derivative | TD | 微分 |
Integral bbbbbb Hold | INT_HOLD | 积分保持 |
Delay time | TM_LAG | 微分延迟 |
注:勾选项为是否激活该功能
3,Manipulated Variable:手/自动选择及PID输出控制
名称 | 对应变量 | 备注 |
---|---|---|
Automatic Operation | MAN_ON | MAN_ON=0 |
Manual Operation | MAN_ON=1 | |
Upper Limit | LMN_HLM | 调节值上限 |
Lower Limit | LMN_LLM | 调节值下限 |
Normalization factor | LMN_FAC | 调节值因子 |
Normalization offset | LMC_OFF | 调节值偏移量 |
4,Dead Band: 死区
Dead Band bbbbb:DEAD_W(死区宽度)
STEP 7 V5.5 的PID 控制面板可提供曲线监控,如下图所示
图4. 控制面板曲线
1,打开曲线
2,选择曲线:可选择设定值、反馈值、输出等等(如下图)
3,启动曲线
图5. 曲线选择
FB41“CONT_C” TIA V13 SP1控制面板
相比较STEP 7 V5.5,TIA V13 SP1的控制面板相对简单,主要由组态与调试两个部分构成:
图6. TIA V13 SP1调试路径
双击组态进入调试界面
图7. 过程变量控制
图8. PID参数设置
图9. PID输出控制
图10. PID 调试面板
FB58 “TCONT_CP“ STEP 7 V5.5 控制面板
打开路径如下:
图11. FB58 “TCONT_CP“ 控制面板路径
图12. FB58 “TCONT_CP“ 控制面板
1,采样时间与死区
名称 | 对应变量 | 备注 |
---|---|---|
Controller_sampling | CYCLE | 采样时间 |
Dead band bbbbb | DEAD_W | 死区 |
2,Process Value:过程量(反馈)处理
名称 | 对应变量 | 备注 |
---|---|---|
Active I/O | PVPER_ON | PVPER_ON=0 |
I/O mode | PVPER_ON=1 | |
Standard | PER_MODE | PER_MODE=0 |
Climatic | PER_MODE=1 | |
Current/voltage | PER_MODE=2 | |
Factor | PV_FAC | 过程变量因子 |
Offset | PV_OFFS | 过程变量偏移量 |
注:勾选复选框表示PVPER_ON=1
3,PID Parameters:PID参数
名称 | 对应变量 | 备注 |
---|---|---|
Proportional gain | GAIN | 比例 |
Integral time | TI | 积分 |
Derivative time | TD | 微分 |
Initialize integral bbbbbb | I_ITL_ON | 积分设定使能 |
Factor for setpoint change | PFAC_SP | 设定值比例因子 |
Derivative factor | D_F | 微分因子 |
Initial value | I_ITLVAL | 积分初始值 |
4,Control Zone:控制带
名称 | 对应变量 | 备注 |
---|---|---|
Enable | CONZ_ON | 控制带使能 |
bbbbb | CON_ZONE | 控制带宽度 |
注:勾选复选框表示CONZ_ON=1
5,Manipulated Variable:PID输出控制
名称 | 对应变量 | 备注 |
---|---|---|
Upper limit | LMN_HLM | 调节值上限 |
Lower limit | LMN_LLM | 调节值下限 |
Factor | LMN_FAC | 调节值因子 |
Offset | LMN_OFFS | 调节值偏移量 |
6,Pulse Generator:脉冲发生器
名称 | 对应变量 | 备注 |
---|---|---|
Enable | PULSE_ON | 激活脉冲功能 |
Sampling time | CYCLE_P | 脉冲整形器作用的采样时间 |
Minimum pulse/break time | P_B_TM | 最小脉冲/中断时间 |
Period | PER_TM | 周期时间 |
注:勾选复选框表示PULSE_ON=1
FB58"TCONT_CP"自整定控制面板操作参看自整定章节
FB58 “TCONT_CP“ TIA V13 SP1控制面板
相比较STEP 7 V5.5,TIA V13 SP1的控制面板相对简单,主要由组态与调试两个部分构成:
图13. 过程变量控制
图14. PID参数设置
图15. PID输出控制
图16. 调试面板
长沙 西门子 6ES7953-8LM20-0AA0