Categories: 学习经验

西门子PID功能块FB58(TCONT_CP)高级功能2

FB58(TCONT_CP)高级功能之二

自整定参数的保存(SAVE_PAR)/重载(UNDO_PAR)

表1. 自整定参数的保存与重载

MAN_ON SAVE_PAR UNDO_PAR 状态
1 1 0 将当前参数保存至结构变量:PAR_SAVE
1 0 1 将结构变量:PAR_SAVE内的参数重载入当前参数
0 0 1 无法装载
0 1 0 将当前参数保存至结构变量:PAR_SAVE

PI、PID参数的装载(LOAD_PID/PID_ON)

表2. PID参数装载

MAN_ON LOAD_PID PID_ON 状态
1 1 1 将结构变量:PID_CON内的参数写入当前变量
1 1 0 将结构变量:PI_CON内的参数写入当前变量
0 - - 无法装载

注意:

当结构变量:PID_CON/PI_CON中的GAIN参数为0时,由于控制带公式:CON_ZONE=250/GAIN,故无法装载参数

脉冲输出

与FB41“CONT_C”不同,FB58 “TCONT_CP“集成有脉宽调制输出的功能,通过将PID的运算结果换算成对应的脉冲占空比来达到加热/冷却的控制。

表3. 脉冲输出主要参数

参数 功能
PULSE_ON 脉冲输出使能
PER_TM 脉冲输出的周期时间
CYCLE_P 脉冲输出的刷新时间
P_B_TM 最小脉冲/断开时间

脉冲输出高电平时间<P_B_TM:不输出脉冲;
脉冲输出高电平时间>PER_TM - P_B_TM:整个周期输出高电平 。

在FB58 “TCONT_CP“中,脉冲输出和PID计算是两个相对独立的过程,各自有自己的计算周期。对于PID计算来说,CYCLE参数可以看成是PID计算的循环周期时间,例如,PID在OB35每次执行的过程中都会调用,而硬件组态过程中OB35的周期时间被设置为500ms,则CYCLE应该填写0.5。对于脉冲输出来说,其循环周期是参数CYCLE_P。这两个时间参数可以一样,也可以不一样。PID的计算计算周期主要是由被测量的变化规律所决定,而脉冲输出的CYCLE_P参数由要求的脉冲输出精度决定。

为了协调PID和脉冲输出之间的矛盾,FB58 “TCONT_CP“提供了"SELECT" 参数,其具体使用如下所示:

表4. SELECT选择

功能 块调用 应用场合
在同一周期性中断OB中执行PID控制器和脉冲输出 在周期性中断OB(OB32/OB35)中通过SELECT=0进行调用 适用于脉冲发生器不是特别短的时候。
在OB1中执行PID控制器 在OB1中通过SELECT=1执行条件调用,此时QC_ACT=TURE。 在S7-300中,适用于脉冲发生器的采样时间较短的时候。
在周期性中断OB中执行脉冲输出 在周期性中断OB中通过SELECT=2进行调用
在低速周期性中断OB中执行PID控制器 在低速周期性中断OB中通过SELECT=3进行调用 在S7-400中,适用于脉冲发生器的采样时间较短的时候。
在高速周期性中断OB中执行脉冲输出 在高速周期性中断OB中通过SELECT=2进行调用

脉冲同步:高电平输出状态更新

表5. 脉冲输出参数

参数 数值 说明
PER_TM 20(s) 在每1s,为可调节变量计算一个新值;
在每0.1s,将该数值和最新的脉冲长度或断开长度做比较
CYCLE 1(s)
CYCLE_P 0.1(s)

条件:当前占空比 30%,更新占空比 50%

图1. 同步更新,脉冲延长

由上图可见,当前占空比30%,当同步时刻在脉宽未达到30%时到来,自动同步到占空比50%

条件:当前占空比 80%,更新占空比 25%

图2. 同步更新,脉冲中断

由上图可见,当前占空比80%,当同步时刻在脉宽超过25%时到来,脉冲立即停止,下个周期同步到25%

脉冲同步:低电平输出状态更新

条件:当前占空比70%,低电平(100%-70%=30%),更新占空比15%,低电平(100%-15%=85%)

图3. 同步更新,低电平延长

由上图可见,当前低电平时间为30%,当同步时刻在低电平未达到30%时到来,自动同步到低电平85%

条件:当前占空比15%,低电平(100%-15%=85%),更新占空比80%,低电平(100%-80%=20%)

图4. 同步更新,脉冲输出

由上图可见,当前低电平为85%,当同步时刻在低电平超过20%时到来,立即输出脉冲

无扰动切换

对比FB41“CONT_C” ,FB58 “TCONT_CP“在手/自动切换时可以实现无扰切换,无需编程。

最新文章