变量 数据类型 默认值说明SubstituteOutput REAL 0.0 替代输出值满足以下条件时,使用替代输出值:• 错误发生在自动模式下。•SetSubstituteOutput = TRUE• ActivateRecoverMode =TRUESetSubstituteOutput BOOL TRUE 如果 SetSubstituteOutput = TRUE且ActivateRecoverMode = TRUE,则只要错误未决,便会输出已组态的替代输出值。如果SetSubstituteOutput = FALSE 且ActivateRecoverMode =TRUE,则只要错误未决,执行器便会仍保持为当前输出值。如果 ActivateRecoverMode =FALSE,则SetSubstituteOutput 无效。如果 SubstituteOutput 无效 (ErrorBits =20000h),则不能输出替代输出值。Config.InputPerOn(1) BOOL TRUE 如果 InputPerOn =TRUE,则使用参数 Input_PER。如果InputPerOn = FALSE,则使用参数Input。Config.InvertControl(1) BOOL FALSE 反转控制逻辑如果 InvertControl =TRUE,则不断增大的控制偏差将导致输出值减小。_Config.OutputSelect INT 0 选择输出值:•OutputSelect = 0: Output_PER(模拟量)• OutputSelect = 1: Output•OutputSelect = 2: Output_PWM_Config.OutputSelect 用于组态 TIA Portal中的控制器,对 CPU 中输出值的计算无影响。_Config.OutputSelect 在数据块中不可用,只能在组态编辑器中或通过Openness API 进行组态。通过 Openness API 导入 PID_Compact时,_Config.OutputSelect 重置为默认值。Config.InputUpperLimit(1) REAL 120.0过程值的上限监控 Input 和 Input_PER,以确保符合此限值。在 I/O 输入中,过程值Zui大可超出标准范围18%(过范围)。此预分配可确保因超出“过程值上限”而不再报告错误。仅识别断线和短路,PID_Compact将根据已组态的错误响应方式进行响应。InputUpperLimit >InputLowerLimitConfig.InputLowerLimit(1) REAL 0.0 过程值的下限监控 Input 和Input_PER,以确保符合此限值。InputLowerLimit <InputUpperLimitConfig.InputUpperWarning(1) REAL 3.402822e+38过程值的警告上限如果设置的 InputUpperWarning超出了过程值的限值范围,则所组态的过程值的juedui上限将用作警告上限。如果组态的 InputUpperWarning值位于过程值的限值范围内,则该值将用作警告上限。InputUpperWarning >InputLowerWarningInputUpperWarning ≤ InputUpperLimit207指令10.1PID_CompactPID 控制功能手册, 11/2022, A5E35300232-AF变量 数据类型 默认值说明Config.InputLowerWarning(1) REAL -3.402822e+38 过程值的警告下限如果设置的InputLowerWarning 超出了过程值的限值范围,则所组态的过程值的juedui下限将用作警告下限。如果组态的InputLowerWarning 值位于过程值的限值范围内,则该值将用作警告下限。InputLowerWarning <InputUpperWarningInputLowerWarning ≥InputLowerLimitConfig.OutputUpperLimit(1) REAL 100.0输出值的上限有关详细信息,请参见 OutputLowerLimitOutputUpperLimit >OutputLowerLimitConfig.OutputLowerLimit(1) REAL 0.0 输出值的下限对于 Output和 Output_PER,-100.0 到 +100.0 的值范围有效(包括零)。-100.0 时,Output_PER=-27648;+100.0 时,Output_PER = 27648。对于 Output_PWM,则值范围 0.0 到 +100.0适用。输出值限值必须与控制逻辑相匹配。OutputLowerLimit <OutputUpperLimitConfig.SetpointUpperLimit(1) REAL 3.402822e+38设定值的上限如果组态的 SetpointUpperLimit超出了过程值的限值范围,则所组态的过程值的juedui上限将用作设定值的上限。如果组态的 SetpointUpperLimit值位于过程值的限值范围内,则该值将用作设定值的上限。Config.SetpointLowerLimit(1) REAL-3.402822e+38 设定值的下限如果设置的 SetpointLowerLimit超出了过程值的限值范围,则所组态的过程值的juedui下限将用作设定值的下限。如果设置的 SetpointLowerLimit值位于过程值的限值范围内,则该值将用作设定值的下限。Config.MinimumOnTime(1) REAL 0.0 脉宽调制的Zui小ON 时间(秒)舍入为MinimumOnTime =n×CycleTime.ValueConfig.MinimumOffTime(1) REAL 0.0 脉宽调制的Zui小 OFF时间(秒)舍入为MinimumOffTime =n×CycleTime.ValueConfig.InputScaling.UpperPointIn(1) REAL 27648.0标定的 Input_PER 上限根据以下两个值对将 Input_PER 转换为百分数:UpperPointOut 和UpperPointIn;LowerPointOut和LowerPointIn。Config.InputScaling.LowerPointIn(1) REAL 0.0 标定的Input_PER 下限根据以下两个值对将 Input_PER 转换为百分数:UpperPointOut 和UpperPointIn;LowerPointOut和LowerPointIn。Config.InputScaling.UpperPointOut(1) REAL 100.0标定的过程上限值根据以下两个值对将 Input_PER 转换为百分数:UpperPointOut 和UpperPointIn;LowerPointOut和LowerPointIn。Config.InputScaling.LowerPointOut(1) REAL 0.0标定的过程下限值根据以下两个值对将 Input_PER 转换为百分数:UpperPointOut 和UpperPointIn;LowerPointOut 和LowerPointIn。208PID 控制功能手册, 11/2022,A5E35300232-AF指令10.1 PID_Compact变量 数据类型 默认值说明CycleTime.StartEstimation BOOL TRUE 如果 CycleTime.StartEstimation= TRUE,则开始自动确定周期时间。完成测量后,CycleTime.StartEstimation=FALSE。CycleTime.EnEstimation BOOL TRUE 如果 CycleTime.EnEstimation =TRUE,则计算PID_Compact 采样时间。如果 CycleTime.EnEstimation =FALSE,则不计算PID_Compact 采样时间,并且您需要手动更正CycleTime.Value的组态。CycleTime.EnMonitoring BOOL TRUE 如果 CycleTime.EnMonitoring =FALSE,则不会监视PID_Compact 采样时间。如果不能在采样时间内执行PID_Compact,则不会输出错误(ErrorBits=0800h),PID_Compact 也不会切换到“未激活”模式。CycleTime.Value(1) REAL0.1 PID_Compact 采样时间(以秒为单位)CycleTime.Value 会自动确定,通常等于调用 OB的循环时间。CtrlParamsBackUp.Gain REAL 1.0 保存的比例增益LoadBackUp = TRUE 时,可以从CtrlParamsBackUp 结构中重新加载值。CtrlParamsBackUp.Ti REAL 20.0 保存的积分作时间[s]CtrlParamsBackUp.Td REAL 0.0 保存的微分作时间[s]CtrlParamsBackUp.TdFiltRatio REAL 0.2保存的微分延时系数CtrlParamsBackUp.PWeighting REAL 1.0保存的比例作用权重因子CtrlParamsBackUp.DWeighting REAL 1.0保存的微分作用权重因子CtrlParamsBackUp.Cycle REAL 1.0 保存的 PID算法的采样时间PIDSelfTune.SUT.CalculateParams BOOL FALSE受控系统的属性在调节期间保存。如果SUT.CalculateParams =TRUE,则根据这些属性重新计算预调节的参数。这样无需重复进行控制器调节,就可以更改参数计算方法。计算后,SUT.CalculateParams将设置为 FALSE。PIDSelfTune.SUT.TuneRule INT 0 预调节期间用于计算参数的方法:•SUT.TuneRule = 0:根据 Chien、Hrones 和 Reswick计算 PID• SUT.TuneRule =1:根据 Chien、Hrones 和 Reswick计算 PIPIDSelfTune.SUT.State INT 0SUT.State 变量指示当前的预调节阶段:• State = 0:初始化预调节• State = 100:计算标准偏差•State = 200:查找拐点• State = 9900:预调节成功• State =1:预调节未成功PIDSelfTune.TIR.RunIn BOOL FALSE 利用 RunIn变量,您可以指定无需预调节也可执行jingque调节。209指令10.1 PID_CompactPID 控制功能手册,11/2022, A5E35300232-AF变量 数据类型 默认值 说明• RunIn =FALSE在未激活模式或手动模式下启动jingque调节时,将启动预调节。如果不满足预调节的要求,则PID_Compact的响应将类似于 RunIn = TRUE时的响应。如果jingque调节在自动模式下启动,系统将使用现有的PID参数来控制设定值。之后才会启动jingque调节。如果无法实现预调节,PID_Compact 将切换到调节开始时的模式。• RunIn= TRUE将跳过预调节。PID_Compact尝试利用Zui小或Zui大输出值达到设定值。这可能会增加超调量。随后将自动启动jingque调节。jingque调节后,RunIn 将设置为FALSE。PIDSelfTune.TIR.CalculateParams BOOL FALSE受控系统的属性在调节期间保存。如果TIR.CalculateParams =TRUE,则根据这些属性重新计算jingque调节的参数。这样无需重复进行控制器调节,就可以更改参数计算方法。计算后,TIR.CalculateParams将设置为 FALSE。PIDSelfTune.TIR.TuneRule INT 0 jingque调节期间用于计算参数的方法:•TIR.TuneRule = 0:PID 自动• TIR.TuneRule = 1:PID 快速(与 TIR.TuneRule = 2相比,控制响应速度更快,输出值的幅度更大)• TIR.TuneRule = 2:PID 慢速(与 TIR.TuneRule = 1相比,控制响应速度较慢,输出值的幅度较小)• TIR.TuneRule = 3:Ziegler-Nichols PID•TIR.TuneRule = 4:Ziegler-Nichols PI• TIR.TuneRule =5:Ziegler-Nichols P要通过 TIR.CalculateParams 和 TIR.TuneRule = 0、1 或2重复计算 PID 参数,也必须通过 TIR.TuneRule = 0、1 或2 执行了先前的jingque调节。否则,将使用TIR.TuneRule = 3。始终可以通过 TIR.CalculateParams 和TIR.TuneRule = 3、4 或 5重新计算 PID 参数。PIDSelfTune.TIR.State INT 0 TIR.State变量指示当前的jingque调节阶段:• State = -100:无法进行jingque调节。将执行预调节。• State =0:初始化jingque调节• State = 200:计算标准偏差• State = 300:尝试达到设定值• State =400:尝试使用现有 PID 参数达到设定值(如果预调节已成功)• State = 500:确定波动并计算参数• State =9900:jingque调节已成功• State = 1:jingque调节未成功PIDCtrl.IntegralSum(1)REAL 0.0 当前积分作用PIDCtrl.PIDInit BOOL FALSE 自 PID_Compact 版本 2.3 起PIDCtrl.PIDInit 可用。如果在“自动模式”下 PIDCtrl.PIDInit = TRUE,则会自动预分配PIDCtrl.IntegralSum 积分作用,就像上一周期中Output =OverwriteInitialOutputValue 一样。这可用于通过 PID_Compact V2 进行超驰控制 (页78)。210PID 控制功能手册, 11/2022, A5E35300232-AF指令10.1 PID_Compact变量 数据类型默认值 说明_Retain.CtrlParams.SetByUser BOOL FALSE 允许手动输入 PID 参数如果_Retain.CtrlParams.SetByUser = TRUE,则 PID参数可编辑。_Retain.CtrlParams.SetByUser 用于组态 TIA Portal 中的控制器,对 CPU中控制算法的行为无影响。_Retain.CtrlParams.SetByUser 在数据块中不可用,只能在组态编辑器中或通过Openness API 进行组态。通过 Openness API 导入 PID_Compact时,_Retain.CtrlParams.SetByUser 重置为默认值。Retain.CtrlParams.Gain(1)REAL 1.0 有效的比例增益要反转控制逻辑,使用 Config.InvertControl变量。Gain上的负值也会反转控制逻辑。我们建议您仅使用InvertControl 设置控制逻辑。如果 InvertControl =TRUE且 Gain < 0.0,则控制逻辑也会反转。Gain 具有保持性。Retain.CtrlParams.Ti(1)REAL 20.0 • CtrlParams.Ti > 0.0:有效积分作用时间• CtrlParams.Ti =0.0:积分作用取消激活Ti 具有保持性。Retain.CtrlParams.Td(1) REAL 0.0 •CtrlParams.Td > 0.0:有效的微分作用时间• CtrlParams.Td = 0.0:微分作用取消激活Td具有保持性。Retain.CtrlParams.TdFiltRatio(1) REAL 0.2有效的微分延时系数微分延迟系数用于延迟微分作用的生效。微分延迟 = 微分作用时间 × 微分延迟系数•0.0:微分作用仅在一个周期内有效,几乎不产生影响。• 0.5:实践证明,该值对具有一个主时间常数的受控系统很有效。• >1.0:系数越大,微分作用的生效时间延迟越久。TdFiltRatio具有保持性。Retain.CtrlParams.PWeighting(1) REAL 1.0有效的比例作用权重比例作用随着设定值的变化而减弱。允许使用 0.0 到 1.0 之间的值。•1.0:应对设定值变化的比例作用完全有效•0.0:应对设定值变化的比例作用无效当过程值变化时,比例作用始终完全有效。PWeighting具有保持性。Retain.CtrlParams.DWeighting(1) REAL 1.0有效的微分作用权重微分作用随着设定值的变化而减弱。允许使用 0.0 到 1.0 之间的值。• 1.0:设定值变化时微分作用完全有效•0.0:设定值变化时微分作用不生效当过程值变化时,微分作用始终完全有效。DWeighting具有保持性。Retain.CtrlParams.Cycle(1) REAL 1.0 有效的 PID 算法采样时间在调节期间计算CtrlParams.Cycle,并将其舍入为CycleTime.Value 的整数倍。CtrlParams.Cycle用作脉宽调制的时间。Cycle 具有保持性。