组态控制器误差 CONT_C 使用外设过程值 要在输入参数 PV_PER中使用外设格式的过程值,请按以下步骤操作: 1. 选中“启用 I/O”(Enable I/O) 复选框。 2.如果过程值是以实际大小提供的,请以百分比形式输入标定的因子和偏移量。 系统随后会根据以下公式来确定过程值: PV = PV_PER ×PV_FAC + PV_OFF 使用内部过程值 要在输入参数 PV_IN 中使用浮点格式的过程值,请按以下步骤操作: 1. 清除“启用I/O”(Enable I/O) 复选框。
使用 PLCSIM 仿真 PID_Temp 说明 使用 PLCSIM 进行仿真 不支持通过 PLCSIM 针对 CPU S7-1200仿真 PID_Temp。 只能通过 PLCSIM 针对 CPU S7-1500 仿真 PID_TEMP。 对于使用 PLCSIM进行的仿真,仿真 PLC 的时间特性与“真实”PLC 并不完全相同。仿真 PLC 循 环中断 OB 的实际周期时钟波动比“真实”PLC的波动大。 在标准组态中,PID_Temp 会自动确定调用之间的时间,并监视波动情况。 使用 PLCSIM 仿真PID_Temp 时,可能检测到采样时间错误 (ErrorBits = DW#16#00000800)。 这会导致进行中的调节中止。自动模式下的响应取决于 ActivateRecoverMode 变量的值。 为防止此类情况发生,应按下列方式为使用 PLCSIM进行的仿真组态 PID_Temp: • CycleTime.EnEstimation = FALSE •CycleTime.EnMonitoring = FALSE • CycleTime.Value:以秒为单位为此变量分配调用循环中断OB 的周期时钟。两个控制器必须共享一个加热器作为共享的执行器。在这种情况下,通过 PID 输出值(采用实 数格式,参数PidOutputSum)的Zui小选择实现逻辑,该逻辑决定哪个控制器获得执行器的访 问权。由于 PID输出值对应于加热功率,需要较低加热功率的控制器将获得控制权。 设备正常运行时,主受控变量的过程值对应于设定值。主控制器PID_Temp_1 已稳定在固定的 PID 输出值 PID_Temp_1.PidOutputSum。正常操作过程中,限制控制器Input2 的过程值显著 低于指定为 PID_Temp_2 设定值的上限。限制控制器要增大加热功率以增大其过程值,即,它将计算一个大于主控制器 PID_Temp_1.PidOutputSum 输出值的 PID 输出值PID_Temp_2.PidOutputSum。切换逻辑的Zui小选择从而使得主控制器 PID_Temp_1 可以继续访问执行器。quebaotongguo赋值 PID_Temp_2.OverwriteInitialOutputValue =PID_Temp_1.PidOutputSum 以及 PID_Temp_2.PIDCtrl.PIDInit = TRUE 来更新PID_Temp_2。 如果 Input2 现已接近于上限或超出上限(例如,因故障而导致),则限制控制器 PID_Temp_2会计算一个较小的 PID 输出值,以限制加热功率并而减小 Input2。如果 PID_Temp_2.PidOutputSum 小于PID_Temp_1.PidOutputSum,则限制控制器 PID_Temp_2 将通过Zui小选择获得执行器访问权,并减小加热功率。quebaotongguo赋值PID_Temp_1.OverwriteInitialOutputValue = PID_Temp_2.PidOutputSum 以及PID_Temp_1.PIDCtrl.PIDInit = TRUE 来更新 PID_Temp_1。 附加测量点 Input2处的温度下降。主受控变量 Input1 的温度也会下降,并且无法再保持在设 定值。要求 • 只有在激活了积分作用时(变量Retain.CtrlParams.Heat.Ti 和 Retain.CtrlParams.Cool.Ti >0.0),PIDCtrl.PIDInit 才有效。 • 您必须在用户程序中自行分配 PIDCtrl.PIDInit 和OverwriteInitialOutputValue(请参见下面 的示例)。PID_Temp 不会自动更改这些变量。 • 仅当PID_Temp 处于自动模式(参数 State = 3)时,PIDCtrl.PIDInit 才有效。 • 如果可能,请选择 PID算法的采样时间( Retain.CtrlParams.Heat.Cycle 和Retain.CtrlParams.Cool.Cycle 变量)以使所有控制器的采样时间均相同,并在同一个循环 中断 OB中调用所有控制器。这样,可以确保在一个控制器循环或 PWM 周期内不发生切 换。 说明 不断调整输出值限制也可以通过在其它控制器系统中不断调整输出值限制实现这一操作,而不是如此处所述对没有 执行器访问权的控制器进行主动更新。 无法使用PID_Temp 实现这一操作,因为在自动模式下不支持更改输出值限制。 示例:大型锅炉的控制 PID_Temp 用于控制大型锅炉。主要目标是控制温度 Input1。为此使用控制器 PID_Temp_1。通过限制控制器 PID_Temp_2 使温度Input2 保持在附加测量点的上限值以下。 这两个温度仅受一个加热器的影响。控制器的输出值对应于加热功率。
工艺对象 CONT_C 工艺对象CONT_C 提供一个自动和手动模式的连续 PID 控制器。 它与指令 CONT_C 的背景数 据块相对应。 可以使用PULSEGEN 指令来组态脉冲控制器。 比例、积分 (INT) 和微分分量 (DIF) 彼此之间并行切换,可以单独打开和关闭。使用它,可以 设置 P、I、PI、PD 和 PID 控制器。 S7-1500 工艺对象的所有参数和变量均具有保持性,在完整下载CONT_C 的前提下,只能在下载到设备 期间更改这些数据。控制偏差 根据以下要求设置死区范围: • 过程值信号有噪声。 •控制器增益很高。 • 微分作用激活。 这种情况下,过程值的噪声分量会导致输出值出现巨大偏差。 死区可抑制控制器处于稳态的 噪声分量。死区范围指定死区的大小。 死区范围为 0.0 时,死区关闭。 参见 CONT_C 的工作原理 (页 364) 8.1.3组态控制器算法 CONT_C 常规步骤 要确定激活控制算法的哪些分量,请执行以下操作: 1. 从“控制器结构”(Controllerstructure) 列表中选择一个条目。 只能为所选控制器结构指定所需参数。 比例作用 1.如果该控制器结构包含比例作用,请输入“比例增益”。 积分作用 1. 如果该控制器结构包含积分作用,请输入积分作用时间。 2.要给积分作用赋予初始化值,请选中“初始化积分作用”(Initialize integral action) 复选框并 输入初始化值。3. 要将积分作用yongjiu设置为此初始化值,请选中“积分作用保持”(Integral action hold) 复选 框。微分作用 1. 如果该控制器结构包含微分作用,请输入微分作用时间、微分作用权重和延迟时间。组态输出值 CONT_C 常规步骤可以在手动或自动模式下设置 CONT_C。 1. 要设置手动调节值,请激活选项“激活手动模式”(Activate manualmode) 选项复选框。 您可以在输入参数 MAN 中指定手动调节值。 调节值限制 调节值具有上限和下限,只能接受有效值。您无法关闭限值。 超出限值时会通过输出参 数 QLMN_HLM 和 QLMN_LLM 显示。 1. 输入调节值的上限和下限值。如果调节值是实际大小,则调节值上下限的单位必须一致。 标定 调节值可根据以下公式,通过因子和偏移量标定为作为浮点值和外设值输出。标定调节值 = 调节值 x 因子 + 偏移量 默认值是因子等于 1.0,偏移量等于 0.0。 1. 输入因子和偏移量的值。 参见CONT_C 的工作原理 (页 364) 对脉冲控制器进行编程 利用连续控制器 CONT_C 和脉冲整形器PULSEGEN,可以实现一个设定值固定的控制器,使其 具有比例执行器的开关输出。下图显示了控制回路的信号流。调试 CONT_C 要求• 已将指令和工艺对象加载到 CPU。 步骤 要手动确定Zui优 PID 参数,请按以下步骤操作: 1. 单击“Start”图标。如果不存在在线连接,则将建立在线连接。系统会记录设定值、过程值和输出值的当前 值。 2.在“P”、“I”、“D”和“延迟时间”(Delay time) 字段中输入新的 PID 参数。 3. 在“调节”(Tuning)组中单击图标 “将参数发送到 CPU”(Send parameter to CPU)。 4. 在“当前值”(Currentvalues) 组中选中“更改设定值”(Change setpoint) 复选框。 5. 输入新设定值并在“当前值”(Currentvalues) 组中单击 图标。 6. 清除“手动模式”(Manual mode) 复选框。 此时控制器使用新 PID参数工作并控制新设定值。 7. 检查 PID 参数的质量以检查曲线点。 8. 重复步骤 2 到 6,直至对控制器结果满意为止。工艺对象CONT_S 工艺对象 CONT_S 提供了一个用于控制具有积分行为的执行器的步进控制器,并且可用于通过二进制输出值输出信号控制工艺温度过程。 该工艺对象对应于 CONT_S 指令的背景数据块。 其工作原理基于采样控制器的 PI控制算法。步进控制器在没有位置反馈信号的情况下运行。 手动和自动模式均可。 S7-1500工艺对象的所有参数和变量均具有保持性,在完整下载 CONT_S 的前提下,只能在下载到设备 期间更改这些数据。