创建工艺对象 PID 控制器
以下步骤将介绍如何在循环中断 OB“PID [OB200]”中调用工艺对象“PID_Compact” 。
步骤
要在循环中断 OB“PID [OB200]”中调用工艺对象“PID_Compact” ,请按以下步骤操作:
在组织块“PID [OB200]”的第一个程序段中,创建工艺对象“PID_Compact” 。
2. 确定为工艺对象“PID_Compact” 创建数据块。
结果
已通过编程设定了在循环中断 OB“PID [OB200]”中调用工艺对象“PID_Compact” 并且已创建数据块“PID_Compact_DB” 。
在下一部分中,将介绍如何在程序中加载仿真块以便仿真 PID 控制器的输入和输出值。
PID_Compact V2
在以下示例中,通过指令“PID_Compact”的工艺对象来控制温度值。基于一个用于仿真三阶延时元件(PT3 元件)的块对温度值进行仿真。工艺对象的 PID 参数可通过预调节自动设置。
数据存储
在全局数据块中创建 7 个变量,以便存储互连数据。
参数的互连
在循环中断 OB 中调用以下互连。
网络 1:按照如下所示,对指令“PID_Compact”的参数进行互连。
程序段 2:按照如下所示,对用于仿真温度值“SLI_PROC_C”的块参数进行互连。
工艺对象
通过指令“PID_Compact”的属性或使用路径“工艺对象 > 组态”(Technology object > Configuration) 对工艺对象进行组态。对于本示例,控制器类型和输入/输出参数至关重要。借助控制器类型,您可以预先选择要控制值的单位。在本示例中,将单位为“°C”的“温度”(Temperature) 用作控制器类型。“PID_Compact”的参数已经与全局变量互连。因此,有关参数 Input 和 Output 的使用信息十分充分。
启动控制的步骤
下载到 CPU 后,PID_Compact 处于手动模式,手动值为 0.0。要启动控制,请按照以下步骤进行操作:
打开工艺对象“SLI_Tech_PID_Compact”的“调试”(Commissioning) 对话框。 单击“测量”(Measurement) 区域中的“启动”(Start) 按钮。 测量过程将启动并且可激活 PID_Compact。 选择预调节。 单击“调节模式”(Tuning mode) 区域中的“启动”(Start) 按钮。 执行了预调节。PID 参数根据过程自动调整。完成预调节后,PID_Compact 切换到自动模式。
|
停止控制的步骤
要停止并退出 PID_Compact 和程序,请按照以下步骤进行操作:
单击工艺对象“SLI_Tech_PID_Compact”中“控制器的在线状态”(Online status of controller) 区域中的“Stop PID_Compact”按钮。 指令“PID_Compact”将退出控制并将值“0.0”作为调节变量输出。 单击“测量”(Measurement) 区域中的“停止”(Stop) 按钮。 要将过程值立即设为“0.0”,请按下列步骤操作: 在“SLI_OB_PID_Compact”块中,将“resetAll”变量设为值“TRUE”,然后再设为值“FALSE”。 |
“PID_Compact”指令
在参数 Setpoint(“setpoint”)处指定要控制的温度的设定值。通过工艺对象启动指令“PID_Compact”时启动控制。指令“PID_Compact”将在输出参数 Output(“outputValue”)处输出一个调节变量。通过输入参数 Input(“inputValue”)将温度的过程值传送给指令“PID_Compact”。
指令“PID_Compact”可根据设定值(“setpoint”)和过程值(“inputValue”)之间的历史偏差调整操作变量(“outputValue”)。重复进行该过程,通过操作变量(“outputValue”)使过程值(“inputValue”)接近设定值(“setpoint”)。
输出参数 State(“state”)处显示了指令“PID_Compact”的当前工作模式。在完成预调节后(“state”的值为“1”),PID_Compact 将切换至自动模式(值为“3”)。
当前的输出参数 Error(“error”)显示无错误待决。发生错误时,输出参数 ErrorBits(“errorBits”)提供关于错误类型的信息。如果发生错误,可在工艺对象中的优化状态区域通过“ErrorAck”按钮确认。
“SLI_PROC_C”块
“SLI_PROC_C”块用于对不断上升的设备温度的过程值(“inputValue”)进行仿真。“SLI_PROC_C”块包含控制器的操作变量(“outputValue”),可对过程的温度特性进行仿真。该温度作为过程值(“inputValue”)反馈到控制器中。
“resetAll”变量(comRst 参数)值的变化 () 会产生以下影响:
参数 comRst(“resetAll”) | 指令“PID_Compact”正在运行 | 指令“PID_Compact”已停止运行 |
---|---|---|
comRst(“resetAll”)仍设置为值“FALSE” | “SLI_PROC_C”块基于操作变量(“outputValue”)输出一个新的过程值(“inputValue”)。 | “SLI_PROC_C”块不会接收大于“0.0”的操作变量,但仍会输出一个新的过程值 >“0.0”。 |
comRst(“resetAll”):从“FALSE”变为值“TRUE” | 操作变量(“outputValue”)和输出过程值(“inputValue”)均复位为“0.0”。 | “SLI_PROC_C”块的过程值(“inputValue”)/温度复位为“0.0”。 |
comRst(“resetAll”):从“TRUE”变为值“FALSE” | 再次启动温度控制。 | 输出过程值/温度(“inputValue”)保持“0.0”。 |
审核编辑:刘清
全部0条评论
快来发表一下你的评论吧 !