PID 您所在的位置:网站首页 西门子温控阀控制器调试教程视频 PID

PID

2024-07-16 14:53| 来源: 网络整理| 查看: 265

PID_Temp 组态步骤

可以使用工艺对象对 PID_Temp 进行组态和调试,下面通过一个例子说明组态和调试过程。

这是一个针对某种物质的温度调节系统,通过一个加热阀和一个冷却阀来调节温度,加热阀采用模拟量控制的比例阀,冷却阀采用数字量输出控制的开关阀,如图 1 所示。

注意:

S7-1200 PID 功能不支持仿真功能。只能通过真实 CPU 组态下载程序。

图 1. PID_Temp 温度调节系统

使用 PID 功能,需要在循环中断 OB 中调用 PID_Temp 指令,所以要先添加循环中断 OB。在循环中断 OB 的属性中,可以修改其循环时间,如图 2 所示。

图 2. 添加循环中断后在属性界面修改其循环时间

注意:为保证以恒定的时间间隔执行 PID 指令,必须在循环中断 OB 中调用。

在“指令 > 工艺 > PID 控制 > Compact PID”下,将 PID_Temp 指令添加至循环中断 OB,如图 3 所示。

图 3. 在循环中断 OB 中添加 PID_Temp 指令

当添加完 PID_Temp 指令后,在项目树 > 工艺对象文件夹中,会自动关联出对应背景 DB 的工艺对象,如图 4 所示的 PID_Temp_1[DB1],包含组态和调试功能。

图 4. 工艺对象中关联生成 PID_Temp

使用 PID 控制器前,需要对其进行组态设置。双击工艺对象下的组态进入组态界面,分为基本设置、过程值设置、输出设置以及高级设置等部分,如图 5 所示。

图 5. PID_Temp 组态界面

基本设置

1、基本设置--控制器类型

设置控制器类型,如图 6 所示。

a. 为设定值、过程值选择物理量和测量单位。设定值和过程值将以该测量单位显示。

b. 要在 CPU 重启后切换到“模式”(Mode) 参数中保存的工作模式,请勾选“在 CPU 重启后激活模式”。

图 6. 设置控制器类型

本例子中物理量选择温度,单位选择 ℃。

2、基本设置--设置 Input/Output 参数

选择 PID 过程值和输出值的方式,如图 7 所示。

如果过程值与模拟量输入值成正比,则可以选择 Input_PER, PID_Temp 会将该模拟量输入值标定为过程值的物理量。

如果程序里已经把模拟量输入值标定到过程值,或者由于过程值与模拟量输入值并不成正比,需要编写处理程序进行转换,则选择 Input。

本例中采用直接使用模拟量输入,选择 Input_PER。

图 7. 选择 Input/Output

PID_Temp 提供以下形式的输出值。 根据执行器的类型选择要使用的输出值,参考图 7 所示蓝框与紫框。

OutputHeat

加热输出值(REAL形式):如果需要通过用户程序来处理加热的输出值,例如,由于执行器响应为非线性等原因。

OutputHeat_PER

模拟量加热输出值: 通过模拟量输出触发加热执行器,并使用连续信号(如 0...10V、4...20 mA)控制加热执行器。

OutputHeat_PWM

脉宽调制加热输出值: 通过数字量输出控制加热执行器。 脉宽调制可生成不同的 ON 和 OFF 时间。

OutputCool

制冷输出值(REAL形式):如果需要通过用户程序来处理制冷的输出值,例如,由于执行器响应为非线性等原因。

OutputCool_PER

模拟量制冷输出值: 通过模拟量输出触发制冷执行器,并使用连续信号(如 0...10V、4...20 mA)控制制冷执行器。

OutputCool_PWM

脉宽调制制冷输出值: 通过数字量输出控制制冷执行器。 脉宽调制可生成不同的 ON 和 OFF 时间。

本例加热选择 OutputHeat_PER,制冷选择 OutputCool_PWM。

如果需要制冷输出,则选择“激活制冷”,参考图 7 所示绿框。

选择“激活制冷”时,PID 算法的输出值 (PidOutputSum) 将在标定后在加热输出中输出。

不选“激活制冷”时,PID 算法的正输出值 (PidOutputSum) 将在标定后在加热输出中输出。 PID 算法的负输出值则在标定后在制冷输出中输出。

本例中需要用到制冷输出,所以选中"激活制冷"。

2、基本设置--级联

级联设置用于做 PID 串级控制,如图 8 所示,具体设置方法参见链接。

本例中不做级联设置。

图 8. 设置级联

过程值设置

1、过程值设置--过程值限值

为过程值指定绝对上限和绝对下限,作为受控系统的限值,如图 9 所示。必须满足过程值下限 OutputperHeat_PWM/OutputperCool_PWM 中设置。

图 16. 本例输出值标定

高级设置

1、高级设置--过程值监视

在“过程值监视”(Process value monitoring) 组态窗口中,组态过程值的警告上限和下限,如图 17 所示。

a. 过程值的警告限值范围需要在过程值限值范围之内。

b. 如果过程值高于警告上限,则输出参数 InputWarning_H = TRUE。

c. 如果过程值低于警告下限,则输出参数 InputWarning_L = TRUE。

图 17. 过程监控值设置

如果过程值超过过程值限值,PID 输出报错。

下面举例说明 PID_Temp 对于分别超出过程值限制范围和警告范围的响应方式。

假设限制范围如下:

过程值上限 = 98℃ 警告上限 = 90℃ 警告下限 = 10℃ 过程值下限 = 0℃

PID_Temp 将按表 2 方式响应:

过程值 InputWarning_H InputWarning_L Error ErrorBits > 98 °C TRUE FALSE TRUE 00000001H ≤ 98° C 且 > 90° C TRUE FALSE FALSE 00000000H ≤ 90° C 且 ≥ 10° C FALSE FALSE FALSE 00000000H < 10° C 且 ≥ 0° C FALSE TRUE FALSE 00000000H < 0° C FALSE TRUE TRUE 00000001H

表 2. 报警

2、高级设置-- PWM 限制

PID 输出值 PidOutputSum 在标定后通过脉宽调制转换成脉冲串在 OutputHeat_PWM 或 OutputCool_PWM 输出参数中输出。

"PID 算法的采样时间"是两次计算 PID 输出值之间的时间。该采样时间用作脉宽调制的周期。

PID_Temp 采样时间是调用 PID_Temp 指令的循环中断 OB 的循环时间。

脉冲持续时间与 PID 输出值成比例并且是 PID_Temp 采样时间的整数倍。

PWM 输出信号的精度由脉宽调制的周期与 PID_Temp 采样时间的比率决定。

PWM 输出原理如图 18 所示:

① PID_Temp 采样时间 = 100 ms

② 加热的 PID 算法采样时间 = 1000 ms

③ 脉冲持续时间 = 300 ms (前 3 个 PID_Temp 采样时间 OutputHeat_PWM 输出 “TRUE”)

④ 中断时间 = 700 ms (后 7 个 PID_Temp 采样时间 OutputHeat_PWM 输出 “FALSE”)

图 18. PID_Temp 的 PWM 输出原理

为最大程度地减小工作频率并节省执行器,可以分别为加热和制冷设置最短开/关时间,如图 19 所示。

图 19. 设置 PWM 限制

如果已在基本设置中选择 OutputHeat/OutputCool 或 OutputHeat_PER/OutputCool_PER 作为输出,最短开启时间和最短关闭时间将不起作用,并且也无法更改这两个时间。

脉冲持续或中断时间不会小于最短开关时间。

如果输出小于最短接通时间将不输出脉冲。 如果输出大于(PID 算法采样时间-最短关闭时间), 则整个周期输出高电平。

在当前 PID 算法采样周期中,因小于最短接通时间未能输出脉冲的,会在下一个 PID 算法采样周期中累加和补偿由此引起的误差。

例如:PID_Temp 采样时间 = 100ms;PID 算法采样时间 = 1000ms;最短开启时间 = 200 ms(即已组态的最小接通脉冲为 PID_Temp 的 20%),若此时 PID 输出恒定为 15%。

则在第一个周期内不输出脉冲。在第二个周期内,将第一个周期内未输出的脉冲累加到第二个周期的脉冲,依次输出。如图 20 所示。

① PID_Temp 采样时间

② 加热的 PID 算法采样时间

⑤ 最短接通时间

图 20. PWM 最小开/关时间影响示例图

如果使用 OutputHeat_PWM 或 OutputCool_PWM 时, PID 算法采样时间作为脉宽调制的周期时间过大,则可在 Config.Output.Heat.PwmPeriode 或 Config.Output.Cool.PwmPeriode 参数中定义存在偏差的稍短周期时间来改善过程值的平滑度,如图 21 所示。

如果 PID 算法的采样时间不是 PwmPeriode 的整数倍,则在 PID 算法采样时间内 PWM 的最后一个周期都将相应延长。

① PID_Temp 采样时间 = 100.0 ms(调用循环中断 OB 的周期时间,CycleTime.Value 变量)

② PID 算法采样时间 = 2000.0 ms(Retain.CtrlParams.Heat.Cycle 变量)

③ 加热的 PWM 时间 = 600.0 ms(Config.Output.Heat.PwmPeriode 变量)

图 21. PwmPeriode 参数原理

3、高级设置--手动输入 PID 参数

在 PID Temp 组态界面可以手动修改 PID 参数,如图 22 所示。通过此处修改的参数对应工艺对象背景数据块 > Static > Retain > CtrlParams 中的 PID 参数。

通过组态界面离线方式修改的是参数的起始值,需要重新下载并重启 PLC 才生效。建议通过在线方式进行操作,详见常见问题 “如何修改 PID 参数的实际值?”。

图 22. PID 组态高级设置_手动输入 PID 参数

PID 基本参数说明详见前面指令介绍部分,温度控制相关参数死区宽度和控制区宽度说明如下。

1)死区宽度

如果过程值受到噪声影响,则噪声也会对输出值产生影响。为了减少输出值不必要的波动,可以设置死区。

如果已在基本设置中禁用了制冷,或使用了制冷系数,则死区对称地位于"设定值 - 死区宽度(加热)"和"设定值 + 死区宽度(加热)"之间,如图 23 所示。

当 -死区宽度(加热)



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有