PID全称是Proportion Integration Differentiation,即比例积分微分。
PID控制是最早发展起来的控制方法之一,此控制方法与自动化仪表的配合,可以大大减少人工,提升生产过程的自动化水平。由于PID控制算法简单、适用性广和可靠性高,已经成为现代工业过程中不可或缺的控制手段。
S7-200 SMART支持PID控制。以下介绍利用PID向导快速建立一个PID控制程序的方法。
前提条件
输入输出仪表信号均是4~20mA;
操作步骤
1. 打开STEP 7Micro/WIN SMART,新建硬件,并对EM AM06模块通道类型进行设置(电流型);
2. 点击菜单栏工具-PID或者点击左侧树形导航栏-向导-PID;
3. 一台200Smart PLC可组态8个控制回路,按需要进行勾选。在此勾选loop 0,然后点击“下一个”;
4. 回路命名,按需更改,,此处为默认,点击“下一个”;
5.PID参数设置,在此暂不做更改,点击“下一个”;
6.输入类型设定,在此选择“单极20%偏移量”。
所谓“单极20%偏移量”,可以理解为接收的是4~20mA的信号。因为在Smart200PLC中,默认接收的电流信号是0~20mA的(PLC接收到的int类型数据的范围是0~27648),这一点在组态模拟量通道的时候就可以看到,但是现在的自动化仪表大部分是4~20mA的(接收到的int类型数据的范围是5530~27648),也就是说,接收到的信号的下限需要进行20%的偏移,即0mA变为20mA*20%=4mA,数据范围下限0变为27648*20%=5529.6≈5530,这就是“20%”偏移的含义。
对应的回路设定值若没有特殊要求就用默认数据即可,点击“下一个”;
7.回路输出设置。选择“模拟量”标定为“单极20%偏移量”,即输出信号的int数据范围也是5530~27648,对应电流为4~20mA,点击“下一个”;
8. 报警设置,如无需要不需设置,点击“下一个”;
9.是否需要对回路进行手动控制,若勾选,则该控制回路可在手动模式与自动模式间切换,在此勾选“添加PID的手动控制”,点击“下一个”;
10.分配存储器,此步骤为自动分配120个字节的地址范围,填入合适的起始地址即可,注意,这120个字节为该PID回路专用,不可再分配给其他数据,在此选择VB100~VB219。点击“下一个”;
11. 介绍包含组件,点击“下一个”;
12. 点击“生成”,至此一个PID子例程建立完毕;
13. 确定PID回路各参数。V0.0为手动自动切换开关,第一个AI通道(EM0_输入0)为过程量PV_I,第一个AO通道(EM0_输出0)为回路输出,VD10为设定值SetPoint,VD14为手动输出值ManualOutput;
14. PID控制回路的无扰切换。200Smart的PID控制回路需要进行无扰切换编程,即PID控制模块在进行手动/自动模式切换时,输出需要进行保持,否则会因为手动输出值ManualOutput(自动切手动)或自动设定值SetPoint(手动切自动)而引起输出的变化,从而影响本来已经稳定的生产过程,扰乱正常的生产流程。
无扰切换核心思路是:由当自动模式切为手动模式的瞬间,将当前输出值赋给手动输出值ManualOutput;当由手动模式切为自动模式的瞬间,将当前过程值PV_I赋给自动设定值SetPoint;通过以上做法,可以保证在模式切换时,输出基本不发生变化。
梯形图如下:
15.在梯形图中调用子例程“PID0_CTRL”;
PIDx_CTRL模块各个参数的意义及范围:
PV_I——即过程量,为int类型数据;
Setpoint_R——即设定值,为real类型数据,范围0.0~100.0;
Auto_Manual——即手自动切换开关,bool类型数据;
ManualOutput——即手动输出值,为real类型数据,可在手动模式控制回路输出;范围0.0~1.0;
Output:即回路输出,为int类型数据;
注意:无扰切换步骤中的PID0_Output并不是PID0_CTRL模块的输出 EM0_输出0,二者的数据类型也是不同的,具体可参考帮助文件中的“PID 回路定义表”。
至此,一个PID控制回路搭建完成。下一步按实际工况调试回路,确定最佳的PID参数,最终目的是PID回路可根据内部计算控制输出变化,从而快速准确的将当前过程量调整到设定值。
审核编辑:黄飞
评论
查看更多