PID是一种闭环控制方法,根据控制对象输出反馈来进行校正的控制方式,它是在测量出实际与计划发生偏差时,按定额或标准来进行纠正的。简单的理解:有一个水缸装水,水缸上面装了一个水龙头,水缸的底部破了一个洞,水一直往外流;此时希望水缸液面保持不动,当水流出去多了,把水龙头开大,当水流出去小了,把水龙头开小一点。而PID的作用就是根据流出去的水的大小计算出加入水缸水的大小。

组态方法及步骤:硬件组态,得到采集值,2.准备一个循环中断组织块,3.PID功能块,写在循环中断组织块中,4.PID工艺对象数据设置,5.PID面板调节,6.参数写进PLC,设置为自动PID模式。

组态过程

西门子1200 pid教程(西门子12001500PID用法记录)(1)

选择组态,设定控制器类型及重启后自动设为自动模式

西门子1200 pid教程(西门子12001500PID用法记录)(2)

输入方式可以选择为INPUT或者INPUT_PER,INPUT为模拟量,INPUT_PER为直接采用模拟量输入的工程值(0-27648)

输出方式可以选择输出/模拟量/PWM三种方式

西门子1200 pid教程(西门子12001500PID用法记录)(3)

当采用INPUT_PER时,需要进行工程值标定,表示模拟量输入的值的范围,如果不是则不需要设置,跳过即可。

西门子1200 pid教程(西门子12001500PID用法记录)(4)

过程值监视设置

西门子1200 pid教程(西门子12001500PID用法记录)(5)

输出的限值设置

西门子1200 pid教程(西门子12001500PID用法记录)(6)

PID参数设置,可以启用手动输入,也可以通过调试画面进行自整定。

西门子1200 pid教程(西门子12001500PID用法记录)(7)

给PID指令添加上IO点位。

西门子1200 pid教程(西门子12001500PID用法记录)(8)

ManualEnable参数激活时,使用手动模式,程序不进行PID算法,此时ManualValue作为手动模式下的输出值,输出值允许介于Config.OUTPUTLowerLimit与Config.OutputUpperLimit之间。Mode模式:0未激活,1预调试,2精确调节,3自动模式,4手动模式。组态完成。然后将参数下载到PLC,选择在线模式,打开工艺对象中的PID,选择调试进入自整定画面。

启动自整定,点击测量,将调节模式选择为预调试,如果此时的波动不会很大的话,系统会提示通过精确调节进行自整定。

西门子1200 pid教程(西门子12001500PID用法记录)(9)

PID自整定完成后选择上传PID参数,自动传到PLC

PID的几个时间介绍:

循环中断时间 为 添加循环中断后对指定两次中断的间隔时间

PID控制器采样时间:sRet.r_Ctrl_Cycle是控制器两次计算之间的间隔时间

PID控制器的采样时间 是 循环中断时间的整数倍

碰到的一个问题记录:当模拟量采样值在0的时候,当采用的输入信号受到干扰,当采样值为FFC6等负值,需要对模拟量进行过滤处理,否则在调试的时候会出现负值,造成调试出现错误,INPUT值超出已定义的过程值范围。如下图,当MW1502小于0时,通过赋值的方式将0赋值给MW1502。

西门子1200 pid教程(西门子12001500PID用法记录)(10)

西门子1200 pid教程(西门子12001500PID用法记录)(11)

西门子1200 pid教程(西门子12001500PID用法记录)(12)

当输出采用的是OUTPUT的方式时,方法介绍:当输出使用OUTPUT时,OUTPUT的输出范围为0-100%,可通过标准化缩放操作将输出转换为需要的输出值范围。即在PID指令中不去限制OUTPUT的值。

某个项目的PID参数值记录

西门子1200 pid教程(西门子12001500PID用法记录)(13)

西门子1200 pid教程(西门子12001500PID用法记录)(14)

西门子1200 pid教程(西门子12001500PID用法记录)(15)

西门子1200 pid教程(西门子12001500PID用法记录)(16)

,