当前位置:首页 > 基于水箱液位控制系统的wincc与matlab的opc通讯系统设计
20CM到10CM
KP=25,Ki=1,Kd=0
10CM到20CM
分析:将上述实验过程的数据列成表格如下,数据从左至右为调整水位的动态过程,例如第一行,当水位位于10CM时,设定目标值15CM,水位最高超调到达16.3CM,然后回落至15CM附近。
PID参数 10CM 超调点 15CM 超调点 10CM 超调点 20CM 超调点 10CM Ki=1 Kd=0 Kp=10 10 16.3 15 7 10 24.4 20 4.6 10 Kp=15 10 16.1 15 8.7 10 22.7 20 6.5 10 Kp=20 10 22.3 20 6.7 10 Kp=25 10 15.9 15 6.8 10 22.0 20 7.0 10
可见,虽然在稳态时的性能已经能达到要求,但是系统的动态特性却不尽如人意,尤其是在水位大范围变动时,超调严重。参数的调节方法已经达到较好,说明问题可能出在算法自身或者是驱动器的可利用调节范围上面。通过这两种方式,有可能使动态性能达到最佳化。
3.4PID算法的研究与改进
3.4.1算法的选择
PID算法多种多样,不同的算法对应解决不同的问题,应用于不同的领域。在对水箱的控制过程中,水位从高水位回落时,原始PID的运算控制量会呈现线性趋势(即偏差存在的时间越长,控制量就越发加大),水位回落过程中,控制量会出现负值,而实验的所有数据转换都进行了归一化处理,即保证0—100对应有效的1—5V控制电压,所以当水位回落至要求的高度时,控制量开始从负值增加,而从负值增加到0的这段时间属于无效控制,即“饱和”的现象。
从PID的控制性质来看,这种问题是由于PID控制中积分环节(I)的积累作用导致的。偏差存在时间越长,积分积累的作用就越明显,进入饱和状态的时间也越长,从而导致系统控制性能恶化。这种现象又称为积分饱和现象。
当明确了控制性能上的问题之后,随即进行了算法的改进。抗积分饱和的算法有很多种,如积分分离PID,积分反馈PID,变速积分PID,梯形积分PID等等。后来从应用上考虑,选择了积分分离和积分反馈PID两种算法进行实验。
3.4.2积分分离PID算法的实验
算法介绍:所谓积分分离PID,就是在被控量与设定值偏差较大时,取消积分的作用,以免由于积分的作用使系统的稳定性降低,超调量增大。当被控量接近目标值时,从新引入积分控制,以便消除稳态误差。
搭建的matlab仿真模块如下图
仿真模块说明:中间部分如2.。。介绍,即为搭建的PID模块,其关键是利用switch模块,当第二通路的值大于某一设定值时,接通第一通路,即去掉了积分作用。当第二通路小于设定值时,接通第三通路从新引入积分作用。
实验结果:进行了几组实验,部分截图如下
共分享92篇相关文档