除在“未激活”工作模式下外,输出的值始终介于其标定的输出上限值和标定的输出下限值之间,例如,OutputHeat 始终在Config.Output.Heat.UpperScaling 和Config.Output.Heat.LowerScaling之间。如果要限制相关输出的值,因此还必须调整这些标定值。级联PID_Temp 将在您使用级联控制时为您提供支持(请参见:创建程序 (页153))。替代输出值出现错误时,PID_Temp 可输出您在 SubstituteOutput变量处定义的替代输出值。替换输出值必须处于 PID输出值的限值范围内。在应用替代输出值后,相关输出上输出的加热或制冷值取决于输出标定的组态情况。监视信号有效性使用以下参数时,监视其有效性:•Setpoint• SubstituteSetpoint• Input• Input_PER• Disturbance•ManualValue• SubstituteOutput• 具有 Retain.CtrlParams.Heat 和Retain.CtrlParams.Cool. 结构的 PID 参数监视采样时间 PID_Temp理想情况下,采样时间等于循环中断OB 的周期时间。PID_Temp 指令测量两次调用之间的时间间隔。这就是当前采样时间。每次切换工作模式以及初始启动期间,平均值由前10 个采样时间构成。当前采样时间与该平均值之间的差值过大时会触发错误 (Error =0000800h)。如果存在以下情况,调节期间将发生错误:• 新平均值 >= 1.1 x 原平均值• 新平均值
PID_Temp的输入参数以下参数的名称既适用于数据块,也适用于通过 Openness API 访问。参数 数据类型 默认值 说明SetpointREAL 0.0 PID 控制器在自动模式下的设定值数值的有效范围:Config.SetpointUpperLimit ≥Setpoint ≥ Config.SetpointLowerLimitConfig.InputUpperLimit ≥Setpoint ≥ Config.InputLowerLimitInput REAL 0.0用户程序的变量用作过程值的源。如果正在使用 Input 参数,则必须设置 Config.InputPerOn =FALSE。Input_PER INT 0 模拟量输入用作过程值的源。如果正在使用 Input_PER 参数,则必须设置Config.InputPerOn = TRUE。Disturbance REAL 0.0 扰动变量或预控制值ManualEnableBOOL FALSE • 出现 FALSE -> TRUE 沿时会激活“手动模式”,而 State = 4 和 Mode保持不变。只要 ManualEnable = TRUE,便无法通过 ModeActivate的上升沿或使用调试对话框来更改工作模式。• 出现 TRUE -> FALSE 沿时会激活由 Mode 指定的工作模式。建议只使用Mode 和 ModeActivate 更改工作模式。ManualValue REAL 0.0 手动值该值在手动模式下使用,用作PID 输出值(PidOutputSum)。在应用此手动值后,相关输出上输出的加热或制冷值取决于输出标定的组态情况(Config.Output.Heat和 Config.Output.Cool 结构)。对于具有已激活制冷输出的控制器 (Config.ActivateCooling =TRUE),定义:• 正的手动值以输出加热输出中的值• 负的手动值以输出制冷输出中的值允许的取值范围由组态确定。• 禁用制冷输出(Config.ActivateCooling = FALSE):Config.Output.Heat.PidUpperLimit ≥ManualValue ≥Config.Output.Heat.PidLowerLimit• 激活制冷输出(Config.ActivateCooling = TRUE):Config.Output.Heat.PidUpperLimit ≥ManualValue ≥Config.Output.Cool.PidLowerLimitErrorAck BOOL FALSE •FALSE -> TRUE 沿将复位 ErrorBits 和 Warning。Reset BOOL FALSE重新启动控制器。309指令10.3 PID_TempPID 控制功能手册, 11/2022, A5E35300232-AF参数数据类型 默认值 说明• FALSE -> TRUE 沿– 切换到“未激活”模式– 将复位 ErrorBits 和Warning。• 只要 Reset = TRUE,– PID_Temp 将保持在“未激活”模式下 (State = 0)。–无法通过 Mode 和 ModeActivate 或 ManualEnable 更改工作模式。– 无法使用调试对话框。• TRUE-> FALSE 沿– 如果 ManualEnable = FALSE,则 PID_Temp 会切换到保存在 Mode中的工作模式。– 如果 Mode = 3(自动模式),会将积分作用视为已通过变量IntegralResetMode进行组态。ModeActivate BOOL FALSE • FALSE -> TRUE 沿PID_Temp 切换到保存在Mode 输入中的工作模式。 PID_Temp 的输出参数以下参数的名称既适用于数据块,也适用于通过 Openness API访问。参数 数据类型 默认值 说明ScaledInput REAL 0.0 标定的过程值OutputHeat REAL 0.0REAL 形式的输出值(加热)PID 输出值 (PidOutputSum) 使用两个值对Config.Output.Heat.PidUpperLimit、Config.Output.Heat.UpperScaling 和Config.Output.Heat.PidLowerLimit、Config.Output.Heat.LowerScaling进行标定,并以 REAL 形式在 OutputHeat 中输出。始终计算 OutputHeat。OutputCool REAL 0.0REAL 形式的输出值(制冷)PID 输出值 (PidOutputSum) 使用两个值对Config.Output.Cool.PidUpperLimit、Config.Output.Cool.LowerScaling 和Config.Output.Cool.PidLowerLimit、Config.Output.Cool.UpperScaling进行标定,并以 REAL 形式在 OutputCool 中输出。仅在激活制冷输出时 (Config.ActivateCooling =TRUE) 才会计算 OutputCool。OutputHeat_PER INT 0 模拟量输出值(加热)PID 输出值(PidOutputSum) 使用两个值对Config.Output.Heat.PidUpperLimit,Config.Output.Heat.PerUpperScaling和Config.Output.Heat.PidLowerLimit,Config.Output.Heat.PerLowerScaling进行标定,并以模拟值形式在OutputHeat_PER 中输出。仅当 Config.Output.Heat.Select = 2时才会计算 OutputHeat_PER。OutputCool_PER INT 0 模拟量输出值(制冷)PID 输出值(PidOutputSum) 使用两个值对Config.Output.Cool.PidUpperLimit、Config.Output.Cool.PerLowerScaling和Config.Output.Cool.PidLowerLimit、Config.Output.Cool.PerUpperScaling进行标定,并以模拟值形式在OutputCool_PER 中输出。仅在激活制冷输出 (Config.ActivateCooling =TRUE) 且Config.Output.Cool.Select = 2 时才会计算 OutputCool_PER。
参数 数据类型 默认值说明OutputHeat_PWMBOOL FALSE 脉宽调制输出值(加热)PID 输出值 (PidOutputSum) 使用两个值对Config.Output.Heat.PidUpperLimit、Config.Output.Heat.PwmUpperScaling和Config.Output.Heat.PidLowerLimit、Config.Output.Heat.PwmLowerScaling进行标定,并以脉宽调制值(变量开关时间)形式在 OutputHeat_PWM 中输出。仅当Config.Output.Heat.Select = 1 时才会计算OutputHeat_PWM。OutputCool_PWMBOOL FALSE 脉宽调制输出值(制冷)PID 输出值(PidOutputSum) 使用两个值对Config.Output.Cool.PidUpperLimit、Config.Output.Cool.PwmLowerScaling和Config.Output.Cool.PidLowerLimit、Config.Output.Cool.PwmUpperScaling进行标定,并以脉宽调制值(变量开关时间)形式在 OutputCool_PWM 中输出。仅在激活制冷输出(Config.ActivateCooling = TRUE) 且Config.Output.Cool.Select = 1时才会计算 OutputCool_PWM。SetpointLimit_H BOOL FALSE 如果 SetpointLimit_H= TRUE,则说明达到了设定值的juedui上限(Setpoint ≥ Config.SetpointUpperLimit)或者Setpoint ≥ Config.InputUpperLimit。设定值上限是Config.SetpointUpperLimit 和 Config.InputUpperLimit中的较小值。SetpointLimit_L BOOL FALSE 如果 SetpointLimit_L =TRUE,则说明达到了设定值的juedui下限 (Setpoint ≤Config.SetpointLowerLimit) 或者Setpoint ≤ Config.InputLowerLimit。设定值下限是 Config.SetpointLowerLimit和 Config.InputLowerLimit 中的较大值。InputWarning_H BOOL FALSE 如果InputWarning_H = TRUE,则说明过程值已达到或超出警告上限(ScaledInput ≥Config.InputUpperWarning)。InputWarning_L BOOL FALSE 如果InputWarning_L = TRUE,则说明过程值已经达到或低于警告下限(ScaledInput ≤Config.InputLowerWarning)。State INT 0 PID_Temp 状态和模式参数 (页 332)显示了PID 控制器的当前工作模式。可使用输入参数 Mode 和 ModeActivate处的上升沿更改工作模式。对于预调节和jingque调节,通过 Heat.EnableTuning 和Cool.EnableTuning 指定针对加热还是制冷进行调节。• State = 0:未激活• State = 1:预调节•State = 2:jingque调节• State = 3:自动模式• State = 4:手动模式• State =5:含错误监视功能的替代输出值Error BOOL FALSE 如果 Error =TRUE,则此周期内至少有一条错误消息处于未决状态。ErrorBits DWORD DW#16#0 PID_TempErrorBits 参数 (页 337)显示了未决的错误消息。ErrorBits 具有保持性,在 Reset 或 ErrorAck出现上升沿时复位。