双容水箱液位模糊PID控制系统设计与仿真(Matlab/Simulink)

简介: 双容水箱液位模糊PID控制系统设计与仿真(Matlab/Simulink)

一、问题描述


双容水箱液位控制系统的设计与仿真


51e275c96f554c8981e03b8dd9796028.png


1、基于液位平衡原理,建立双容水箱液位控制系统的数学模型,并采用平衡点线性化方法建立线性化模型;

2、采用模糊PID控制方法,在线调整PID控制器的参数,实现双容水箱的液位调节,给出详细的控制方案;

3、用Simulink搭建仿真框图,实现系统的仿真,在线调节PID参数,并分析系统性能。


二、模型建立


双容水箱系统结构图如图1-1所示,上水箱进水阀V_i(液阻为R_i)的开度控制上水箱流入量Q_i,出水阀V_1(液阻为R_1)流出量为Q_1,上水箱的液位H_1由Q_i和Q_1来确定; 下水箱进水阀V_1流入量为Q_1,出水阀V_2(液阻为R_2)流出量为Q_2,下水箱的液位H_2由进水量Q_1和出水量Q_2共同确定。在控制过程中V_1和V_2保持不变,系统主要控制任务是通过调节V_i的开度来控制下水箱的液位H_2,使其测量值与设定值相等,根据动态物料平衡关系列出下列方程:


c6995f3364e249098a9b4cf38a75f401.png3e69d69f30094250b83635a7c57e8d20.png



三、控制方案


该双容水箱控制系统采用模糊PID控制方法,其系统结构框图如图(3-1)所示。


0b57c732cff64e3fa7ddf2f8693f3ee9.png


1、模糊PID控制方案的实施步骤

(1)在Matlab命令行窗口输入fuzzy唤出fuzzy logic designer窗口进行编译。

(2)设置输入输出个数,如图(3-2)所示,并设置输入个数为2,范围均为[-3,3],输出个数为3,范围均为[-1,1]。


a1ac436b42784d8bbefd425b5ea6e1ed.png


(3)根据相关资料编辑其隶属函数,如图(3-3)。


1f3b78e2c46e4609b272693fe866c56f.png


(4)按照以下规则进行模糊规则设计(NB为负大,NM为负中,NS为负小,ZO为零,PS为正小,PM为正中,PB为正大),以下表格横轴为EC,纵轴为E。


e274f87aa3c248f9bcbebe4e20ace36f.png034772dbf43a4001a1a7f76715bc2047.png


根据上表编写规则,如:

If (E is NB) and (EC is NB) then (∆K_p is PB)(∆K_i is NB)(∆K_d is PS) (1)

If (E is NB) and (EC is NM) then (∆K_p is PB)(∆K_i is NB)(∆K_d is NS) (2)

If (E is NB) and (EC is NS) then (∆K_p is PM)(∆K_i is NM)(∆K_d is NB) (3)

… 一共49条规则,在此不一一列举,如图(3-4)所示。


d1e0c85c960a474098f881f0513d5725.png


制定好规则后保存,并导出到workspace待用。


2、进行模糊PID的参数自整定

通过相关资料可知以K_p0、K_i0、K_d0为初值的PID参数整定原理为


3f709dcdd48744c2b35be6c375abf281.png


式中,K_p、K_i、K_d分别为模糊自整定PID输出的增益;K_p0、K_i0、K_d0分别为增益初值;ΔK_p、ΔK_i、ΔK_d分别为增益的调节量。


863e37992db049e086450adcb19c2d19.png


如图(3-5)所示为模糊PID控制的整体结构。在sum之后的各个值为增益输出K_p、K_i、K_d。图中的7、0.04和14分别为增益初值K_p0、K_i0、K_d0,其值由传统PID经验法得到,遵从如下口诀:

参数整定找最佳,从小到大顺序查;

先是比例后积分,最后再把微分加;

曲线振荡很频繁,比例度盘要放大;

曲线漂浮绕大湾,比例度盘往小扳;

曲线偏离回复慢,积分时间往下降;

曲线波动周期长,积分时间再加长;

曲线振荡频率快,先把微分降下来;

动差大来波动慢。微分时间应加长;

理想曲线两个波,前高后低4比1;

一看二调多分析,调节质量不会低。

得出初值后,由于所设置的输出论域为[-1 1],故在demux后需再乘上相应的取值范围,相乘之后的输出值为增益的调节量ΔK_p、ΔK_i、ΔK_d。


四、仿真验证


24de76fd895248e688cecc8eef6f5082.png


在Matlab/Simulink中搭建如图(4-1)所示的双容水箱模糊PID控制系统仿真模型,对模糊控制器的各个编辑器进行编辑,将49条模糊控制规则写入模糊控制规则编辑器,最终得到数据输出的清晰值实现对PID参数的在线整定,仿真结果如图(4-2)所示。蓝色线为系统响应,黄色线为单位阶跃给定。响应超调为0.397,达到稳态时间为1496s。


d476228d39704f498f2f4d24bdc6654c.png


五、系统分析


传统控制理论中最常用的是常规PID控制,其算法简单实用,在控制中具有良好的控制效果和鲁棒性,但对液位控制这类具有非线性、时变等特点的控制系统则需要对PID参数不断进行在线调整才能获得更好的控制效果。在实际应用中由于PID参数变化无常,没有确定的数学模型和规律可循,模糊控制能充分利用操作人员进行实时非线性调节的成功实践操作经验,因此本系统采用模糊控制器来进行PID参数在线整定,充分发挥PID控制器的优良控制作用使系统达到最佳效果。



相关文章
|
2月前
|
5G
基于IEEE 802.11a标准的物理层MATLAB仿真
基于IEEE 802.11a标准的物理层MATLAB仿真
184 0
|
2月前
|
算法
基于MATLAB/Simulink平台搭建同步电机、异步电机和双馈风机仿真模型
基于MATLAB/Simulink平台搭建同步电机、异步电机和双馈风机仿真模型
|
2月前
|
机器学习/深度学习 算法 数据可视化
基于MVO多元宇宙优化的DBSCAN聚类算法matlab仿真
本程序基于MATLAB实现MVO优化的DBSCAN聚类算法,通过多元宇宙优化自动搜索最优参数Eps与MinPts,提升聚类精度。对比传统DBSCAN,MVO-DBSCAN有效克服参数依赖问题,适应复杂数据分布,增强鲁棒性,适用于非均匀密度数据集的高效聚类分析。
|
2月前
|
开发框架 算法 .NET
基于ADMM无穷范数检测算法的MIMO通信系统信号检测MATLAB仿真,对比ML,MMSE,ZF以及LAMA
简介:本文介绍基于ADMM的MIMO信号检测算法,结合无穷范数优化与交替方向乘子法,降低计算复杂度并提升检测性能。涵盖MATLAB 2024b实现效果图、核心代码及详细注释,并对比ML、MMSE、ZF、OCD_MMSE与LAMA等算法。重点分析LAMA基于消息传递的低复杂度优势,适用于大规模MIMO系统,为通信系统检测提供理论支持与实践方案。(238字)
|
3月前
|
机器学习/深度学习 存储 算法
【水下机器人建模】基于QLearning自适应强化学习PID控制器在AUV中的应用研究(Matlab代码实现)
【水下机器人建模】基于QLearning自适应强化学习PID控制器在AUV中的应用研究(Matlab代码实现)
310 0
|
3月前
|
机器学习/深度学习 边缘计算 算法
【无人机】无人机群在三维环境中的碰撞和静态避障仿真(Matlab代码实现)
【无人机】无人机群在三维环境中的碰撞和静态避障仿真(Matlab代码实现)
199 0
|
2月前
|
机器学习/深度学习 算法 机器人
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
257 0
|
2月前
|
算法 定位技术 计算机视觉
【水下图像增强】基于波长补偿与去雾的水下图像增强研究(Matlab代码实现)
【水下图像增强】基于波长补偿与去雾的水下图像增强研究(Matlab代码实现)
126 0
|
2月前
|
算法 机器人 计算机视觉
【图像处理】水下图像增强的颜色平衡与融合技术研究(Matlab代码实现)
【图像处理】水下图像增强的颜色平衡与融合技术研究(Matlab代码实现)
110 0
|
2月前
|
新能源 Java Go
【EI复现】参与调峰的储能系统配置方案及经济性分析(Matlab代码实现)
【EI复现】参与调峰的储能系统配置方案及经济性分析(Matlab代码实现)
126 0

热门文章

最新文章