PID_Compact 是一种具有抗积分饱和功能并且能够对比例作用和微分作用进行加的PIDT1控制器。一般在循环中断组织块 OB中调用 PID_Compact,循环中断组织块的调用周期和相移可以在OB块的属性中设置,也可以通过中断指令设置。
新建一个循环中断组织块并设置合适的循环时间,在组织块中添加工艺指令PID_Compact,会生成一个系统块函数块PID_Compact (FB1130),此块为一个只读块,设置函数块的背景数据块,背景数据块可以在工艺对象的组态中设置,我们这里做一个温度的PID调节案例。 打开组态后,可以设置PID的参数。控制器类型:可以设置为压力,温度,常规等,不同的设置,后面的单位不一样。设置为常规时单位为%。反转控制逻辑:不勾选为正逻辑,设定值与过程值差别越大,PID输出值也越大。勾选反转则差别越大,输出值越小,比如制冷就是反逻辑。Mode设置为:选择自动模式则CPU启动时,PID进入自动模式。还有非活动,预调节,jingque调节,手动调节这些模式可以选择。
可以选择Input或者Input_PER作为过程值的输入,选择Input_PER则可以直接把模拟量输入通道的值赋给Input_PER,不需要转换。输出同样有两个,选择Output_PER就可以直接把输出值传送到模拟量输出通道。
必须为过程值指定正确的juedui上限和juedui下限,作为受控系统的限值。只要过程值超出这些限值,就会出现错误 (ErrorBits=0001h)。如果超出过程值的限值,则取消调节操作。上限设置为90则温度超过90摄氏度时报错。
PLC模拟量通道的数值范围为0-27648,热电阻的温度范围为0-200摄氏度,热电阻的电流范围为4-20ma,在PLC模拟量输入通道中测量类型与范围设置为电流4-20ma。
在“输出值的限值”组态窗口中,以百分比形式组态输出值的juedui限值。无论是在手动模式还是自动模式下,都不要超过输出值的juedui限值。如果在手动模式下指定了一个超出限值范围的输出值,则CPU会将有效值限制为组态的限值。输出设置为Output_PER时,设置范围必须在-100.0到100范围内。对错误的响应:设置为非活动。PID_Compact针对所有错误都输出 0.0 作为输出值,切换到“未激活”模式。只能通过Reset 的下降沿或 ModeActivate的上升沿重新激活控制器。
启用手动输入:勾选则使用手动输入的PID参数参数值,不勾选则可以在预调节时自动计算PID参数并保存在背景数据块中。PID_Compact指令可以设置的参数:比例,积分,微分等。积分,微分:时间为零则禁用积分或者微分。微分延迟系数:系数越大微分生效的延时时间越长。比例作用权重:应对设定值变化的比例作用有效性的大小。PID算法采样时间:PID算法的采样时间是两次计算输出值之间的时间,设置为组织块循环中断周期的倍数。控制器结构:可以选择为PID或者PI。
下载工艺对象时要注意,仅当完全下载 PID_Compact后,才能更新保持性变量的实际值。更改了PID工艺对象设置要选择下载并复位PLC程序。