[西门子PLC] S7-200 SMART 编写PID稳定无扰动切换

一、PID手动/自动稳定切换概念

大部分工程项目中可能需要根据现场的工艺要求在不同的时刻投入、或者切除PID自动控制;切除PID自动控制时,控制器的输出部分可以由操作人员直接手动控制。这就是PID手动/自动切换。

PID控制处于手动控制方式时,PID控制功能块不再起到自动计算的作用。这时,控制回路的输出是由操作人员手动控制、调整,由操作人员观察现场的控制效果,从而构成人工闭环控制。

所谓PID自动/手动控制,就是看控制系统的输出是由PID控制功能块自动控制,还是由操作人员手动控制。

有些控制系统的执行机构不能承受较大的冲击,这就要求控制系统在进行PID手动/自动切换时,保持控制输出的稳定。为了达到PID手动/自动控制稳定切换,可以使用程序实现。

使用PID向导实现手自动稳定切换

使用200Smart自带的PID指令向导编程时,指令向导会自动调用PID指令,并且编写外围的控制变量标准化换算、定时采样等功能。用户在使用PID指令向导时,需要在用户程序中用调用指令向导生成的子程序(如PIDx_CTRL子程序)。PID向导可以生成带自动/手动切换功能的子程序,这个子程序使用一个数字量点为“1”、“0”的状态来控制是否投入PID自动控制。如图1,图1所示的程序就是根据PID向导生成PID指令块,此块设定了手自动切换。具体的参数说明如下:

VD2000:是设定值,向导内设置0.0-100.0,设定值一般情况下都是连接到上位机

:自动/手动控制,“1”=自动,“0”=手动

VD2004:手动控制输出值,0.0-1.0之间的一个实数

VW1002:PID控制输出值,向导内设置0-27648,此处也可以直接使用模拟量输出“AQWX”

图1PID向导生成的指令

要想实现PID手动/自动稳定切换,可以利用上升沿和下降沿实现此功能,程序如图2所示,具体程序编写思路是:

手自动切换的状态是,当为0时,程序为手动控制,当为1时,程序为自动控制;从1变为0,自动模式切换为手动模式,触发下降沿;从0变为1,手动模式切换为自动模式,触发上升沿;

当从自动模式向手动模式切换时,使手动输出值(VD2004)等于当前的实际控制输出值;换句话说就是当自动模式切换到手动模式时,自动模式的输出值将瞬间的值传送到手动输出值;

图2PID手自动稳定切换处理程序

西门子S7-200SMART编写PID稳定无扰动切换

;tid=501771fromuid=1

(出处:PLC论坛-全力打造可编程控制器专业技术论坛)

免责声明:本文章如果文章侵权,请联系我们处理,本站仅提供信息存储空间服务如因作品内容、版权和其他问题请于本站联系