PID 参数显示在“PID 参数”(PID Parameters) 组态窗口中。在控制器调节期间将调整 PID 参数以适应受控系统。用户不必手动输入 PID 参数。说明当前激活的 PID 参数位于 sRet 结构中(对于 PID_Compact V1),而对于 PID_Compact V2,则位于 Retain.CtrlParams 结构中。请仅在“未激活”在线模式下更改当前激活的 PID 参数,以防 PID 控制器出现故障。如果要在线更改“自动模式”或“手动模式”下的 PID 参数,则按照以下步骤更改 PID 参数:• PID_Compact V1:更改 sBackUp 结构中的 PID 参数并执行针对 sRet 结构带有sPid_Cmpt.b_LoadBackUp = TRUE 的更改。• PID_Compact V2:更改 CtrlParamsBackUp 结构中的 PID 参数并执行针对 Retain.CtrlParams结构带有 LoadBackUp = TRUE 的更改。在线更改“自动模式”下的 PID 参数将导致输出值跳变。所有 PID 参数均具有保持性。如果手动输入 PID 参数,则必须完整下载 PID_Compact。将工艺对象下载到设备 (页 42)比例增益该值用于指定控制器的比例增益。PID_Compact 不使用负比例增益。在“基本设置 > 控制器类型”下,控制逻辑会反转。积分作用时间积分作用时间用于确定积分作用的时间特性。积分作用时间 = 0.0 时,将禁用积分作用。当积分作用时间在“自动模式”下通过在线方式由不同值变为 0.0,则shanchu先前的积分操作且输出值跳跃。微分作用时间微分作用时间用于确定微分作用的时间特性。微分作用时间 = 0.0 时,将禁用微分作用。微分延迟系数微分延迟系数用于延迟微分作用的生效。微分延迟 = 微分作用时间 × 微分延迟系数• 0.0:微分作用仅在一个周期内有效,因此几乎不产生影响。• 0.5:此值经实践证明对于具有一个优先时间常量的受控系统非常有用。• > 1.0:系数越大,微分作用的生效时间延迟越久。比例作用权重比例作用随着设定值的变化而减弱。允许使用 0.0 到 1.0 之间的值。• 1.0:应对设定值变化的比例作用完全有效• 0.0:应对设定值变化的比例作用无效当过程值变化时,比例作用始终完全有效。微分作用权重微分作用随着设定值的变化而减弱。允许使用 0.0 到 1.0 之间的值。• 1.0:设定值变化时微分作用完全有效• 0.0:设定值变化时微分作用不生效当过程值变化时,微分作用始终完全有效。PID 算法采样时间受控系统需要一定的时间来对输出值的变化做出响应。因此,建议不要在每次循环中都计算输出值。PID 算法的采样时间是两次计算输出值之间的时间。该时间在调节期间进行计算,并舍入为循环时间的倍数。PID_Compact 的所有其它功能会在每次调用时执行。如果使用 Output_PWM,PID 算法的采样时间将用作脉宽调制的持续时间。输出信号的精度由PID 算法采样时间与 OB 的周期时间之比来确定。因此,建议周期时间的Zui大值为 PID 算法采样时间的十分之一。调节的规则在“控制器结构”(Controller structure) 下拉列表中选择要计算 PI 还是 PID 参数。• PID预调节和jingque调节期间计算 PID 参数。• PI预调节和jingque调节期间计算 PI 参数。• 用户自定义如果通过用户程序为预调节和jingque调节组态了不同的控制器结构,则下拉列表会显示“用户自定义”(User-defined)。预调节 V2预调节功能可确定对输出值跳变的过程响应,并搜索拐点。 根据受控系统的Zui大上升速率与死时间计算 PID 参数。 可在执行预调节和jingque调节时获得zuijia PID 参数。过程值越稳定,PID 参数就越容易计算,结果的精度也会越高。只要过程值的上升速率明显高于噪声,就可以容忍过程值的噪声。Zui可能的情况是处于工作模式“未激活”和“手动模式”下。重新计算前会备份 PID 参数。要求• 已在循环中断 OB 中调用“PID_Compact”指令。• ManualEnable = FALSE• Reset = FALSE• PID_Compact 处于下列模式之一:“未激活”、“手动模式”或“自动模式”。• 设定值和过程值均处于组态的限值范围内(请参见“过程值监视”组态)。• 设定值与过程值的差值大于过程值上限与过程值下限之差的 30%。• 设定值与过程值的差值大于设定值的 50%。步骤要执行预调节,请按下列步骤操作:1. 在项目树中双击“PID_Compact > 调试”(PID_Compact > Commissioning) 条目。2. 在“调节模式”(Tuning mode) 下拉列表中选择条目“预调节”(Pretuning)。3. 单击“Start”图标。– 将建立在线连接。– 将启动值记录操作。– 将启动预调节功能。– “状态”(Status) 字段显示当前步骤和所发生的所有错误。 进度条指示当前步骤的进度。说明当进度条达到 以及控制器调节功能看似受阻时,请单击“Stop”图标。检查工艺对象的组态,必要时请重新启动控制器调节功能。结果如果执行预调节时未产生错误消息,则 PID 参数已调节完毕。PID_Compact 将切换到自动模式并使用已调节的参数。 在电源关闭以及重启 CPU 期间,已调节的 PID 参数保持不变。如果无法实现预调节,PID_Compact 将根据已组态的响应对错误作出反应。参见模式 V2 的参数状态 (页 213)要求• 已在循环中断 OB 中调用 PID_Compact 指令。• ManualEnable = FALSE• Reset = FALSE• 设定值和过程值均在组态的限值范围内。• 在操作点处,控制回路已稳定。 过程值与设定值一致时,表明到达了操作点。• 不能被干扰。• PID_Compact 处于下列工作模式之一: 未激活、自动模式或手动模式。过程取决于初始情况可在以下工作模式下启动jingque调节: “未激活”、“自动模式”或“手动模式”。 在以下模式下启动jingque调节时,具体情况如下所述:• 自动模式如果希望通过调节来改进现有 PID 参数,请在自动模式下启动jingque调节。PID_Compact 将使用现有的 PID 参数控制系统,直到控制回路已稳定并且jingque调节的要求得到满足为止。 之后才会启动jingque调节。• 未激活模式或手动模式如果满足预调节的要求,则启动预调节。 已确定的 PID 参数将用于控制,直到控制回路已稳定并且jingque调节的要求得到满足为止。 之后才会启动jingque调节。如果无法实现预调节,PID_Compact 将根据已组态的响应对错误作出反应。如果预调节的过程值已经十分接近设定值,则将尝试利用Zui小或Zui大输出值来达到设定值。 这可能会增加超调量。步骤要执行jingque调节,请按下列步骤操作:1. 在“调节模式”(Tuning mode) 下拉列表中选择条目“jingque调节”(Fine tuning)。2. 单击“Start”图标。– 将建立在线连接。– 将启动值记录操作。– 将启动jingque调节过程。– “状态”(Status) 字段显示当前步骤和所发生的所有错误。 进度条指示当前步骤的进度。说明当进度条达到 以及调节功能看似受阻时,请单击“调节模式”(Tuning mode) 组中的“Stop”图标。检查工艺对象的组态,必要时请重新启动控制器调节功能。结果如果在jingque调节期间未发生错误,则 PID 参数已调节完毕。PID_Compact 将切换到自动模式并使用已调节的参数。 在电源关闭以及重启 CPU 期间,已调节的 PID 参数保持不变。如果在“jingque调节”期间出现错误,PID_Compact 将根据已组态的响应对错误作出反应。jingque调节 V2jingque调节将使过程值出现恒定受限的振荡。 将根据此振荡的幅度和频率为操作点调节 PID 参数。 所有 PID 参数都根据结果重新计算。jingque调节得出的 PID 参数通常比预调节得出的 PID 参数具有更好的主控和扰动特性。 可在执行预调节和jingque调节时获得zuijia PID 参数。PID_Compact 将自动尝试生成大于过程值噪声的振荡。 过程值的稳定性对jingque调节的影响非常小。 重新计算前会备份 PID 参数。“手动”模式 V1以下部分将说明如何在“PID_Compact”工艺对象的调试窗口中使用“手动模式”工作模式。 错误未决时也可使用手动模式。要求• 已在循环中断 OB 中调用“PID_Compact”指令。• 与 CPU 建立了在线连接,并且 CPU 处于“RUN”模式。步骤如果要通过指定手动值来测试受控系统,请使用调试窗口中的“手动模式”。 要定义手动值,请按以下步骤操作:1. 单击“Start”图标。2. 在“控制器的在线状态”(Online status of the controller) 区域中,选中复选框“手动模式”(Manual mode)。PID_Compact 将在手动模式下运行。 Zui新的当前输出值仍然有效。3. 在“输出”(Output) 字段中,输入 % 形式的手动值。4. 单击 图标。结果手动值被写入 CPU 并立即生效。如果希望 PID 控制器重新指定输出值,请qingchu“手动模式”(Manual mode) 复选框。 到自动模式的切换是无扰动的。通过 PID_Compact V2 进行超驰控制超驰控制超驰控制时,两个或多个控制器共享一个执行器。只有一个控制器可以随时访问执行器并影响过程。由逻辑运算决定可以访问执行器的控制器。通常根据所有控制器的输出值比较结果做出此决定(例如,进行Zui大选择时),具有Zui大输出值的控制器将获得对执行器的访问权限。基于输出值的选择要求所有控制器均在自动模式下工作。对不影响执行器的控制器进行更新。为防止饱和效应及其对控制响应和控制器之间的切换产生fumian影响,这很有必要。自版本 V2.3 起,PID_Compact 通过提供一个用于更新未激活控制器的简单过程,支持超驰控制:• 通过使用 OverwriteInitialOutputValue 和 PIDCtrl.PIDInit 变量,可以预分配自动模式下控制器的积分作用,好像在上一周期中 PID 算法已计算输出值的 Output =OverwriteInititalOutputValue。• 为此,OverwriteInitialOutputValue 与当前可以访问执行器的控制器的输出值互连。• 通过设置位 PIDCtrl.PIDInit,触发积分作用的预分配以及控制器循环和 PWM 周期的重启。• 根据预分配的(并针对所有控制器同步的)积分作用,以及当前控制偏差的比例作用与积分作用,在当前循环中进行输出值的后续计算。• 通过 PIDCtrl.PIDInit = TRUE 调用期间,微分作用未激活,因此对输出值不起作用。此过程可以确保仅根据当前的过程状态和 PI 参数对当前输出值进行计算,并从而决定可以访问执行器的控制器。可防止未激活控制器的饱和效应,并因此防止切换逻辑的错误决定。要求• PIDCtrl.PIDInit 仅在积分作用激活(Retain.CtrlParams.Ti 变量 > 0.0)时有效。• 您必须在用户程序中自行分配 PIDCtrl.PIDInit 和 OverwriteInitialOutputValue(请参见下面的示例)。PID_Compact 不会自动更改这些变量。• 仅当 PID_Compact 处于自动模式(参数 State = 3)时,PIDCtrl.PIDInit 才有效。• 如果可能,选择 PID 算法的采样时间(Retain.CtrlParams.Cycle 变量)时,应使其对所有控制器均相同,并在同一循环中断 OB 中调用所有控制器。这样,可以确保在一个控制器循环或 PWM 周期内不发生切换。说明不断调整输出值限制也可以通过在其它控制器系统中不断调整输出值限制实现这一操作,而不是如此处所述对没有执行器访问权的控制器进行主动更新。无法使用 PID_Compact 实现这一操作,因为在自动模式下不支持更改输出值限制。示例:煤气管道的控制PID_Compact 用于控制煤气管道。主要目标是控制流速 Input1。为此使用控制器 PID_Compact_1。此外,使用限制控制器PID_Compact_2 将压力 Input2(在阀前方沿流动方向测量)保持在上限以下。