如何在循环中断中创建工艺对象PID控制器?

描述

创建工艺对象 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
还可以不进行预调节,在“控制器的在线状态”(Online status of controller) 区域中通过“停止 PID_Compact”(Stop PID_Compact)/“启动 PID_Compact”(Start PID_Compact) 来将 PID_Compact 切换到自动模式。这种情况下,控制器使用 PID 参数的默认值并显示了该应用情况下不良的控制器表现。

停止控制的步骤

要停止并退出 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”。

仿真器







审核编辑:刘清

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分