双容水箱液位模糊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控制器的优良控制作用使系统达到最佳效果。



相关文章
|
4天前
|
机器学习/深度学习 存储 算法
基于CNN+LSTM深度学习网络的时间序列预测matlab仿真,并对比CNN+GRU网络
该文介绍了使用MATLAB2022A进行时间序列预测的算法,结合CNN和RNN(LSTM或GRU)处理数据。CNN提取局部特征,RNN处理序列依赖。LSTM通过门控机制擅长长序列,GRU则更为简洁、高效。程序展示了训练损失、精度随epoch变化的曲线,并对训练及测试数据进行预测,评估预测误差。
|
5天前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于DCT变换和位平面分解的数字水印嵌入提取算法matlab仿真
这是一个关于数字水印算法的摘要:使用MATLAB2022a实现,结合DCT和位平面分解技术。算法先通过DCT变换将图像转至频域,随后利用位平面分解嵌入水印,确保在图像处理后仍能提取。核心程序包括水印嵌入和提取,以及性能分析部分,通过PSNR和NC指标评估水印在不同噪声条件下的鲁棒性。
|
6天前
|
机器学习/深度学习 算法 安全
m基于Qlearning强化学习工具箱的网格地图路径规划和避障matlab仿真
MATLAB 2022a中实现了Q-Learning算法的仿真,展示了一种在动态环境中进行路线规划和避障的策略。Q-Learning是强化学习的无模型方法,通过学习动作价值函数Q(s,a)来优化智能体的行为。在路线问题中,状态表示智能体位置,动作包括移动方向。通过正负奖励机制,智能体学会避开障碍物并趋向目标。MATLAB代码创建了Q表,设置了学习率和ε-贪心策略,并训练智能体直至达到特定平均奖励阈值。
39 15
|
6天前
|
算法 数据安全/隐私保护 C++
基于二维CS-SCHT变换和扩频方法的彩色图像水印嵌入和提取算法matlab仿真
该内容是关于一个图像水印算法的描述。在MATLAB2022a中运行,算法包括水印的嵌入和提取。首先,RGB图像转换为YUV格式,然后水印通过特定规则嵌入到Y分量中,并经过Arnold置乱增强安全性。水印提取时,经过逆过程恢复,使用了二维CS-SCHT变换和噪声对比度(NC)计算来评估水印的鲁棒性。代码中展示了从RGB到YUV的转换、水印嵌入、JPEG压缩攻击模拟以及水印提取的步骤。
|
7天前
|
机器学习/深度学习 算法 数据可视化
基于BP神经网络的32QAM解调算法matlab性能仿真
```markdown - 32QAM解调算法运用BP神经网络在matlab2022a中实现,适应复杂通信环境。 - 网络结构含输入、隐藏和输出层,利用梯度下降法优化,以交叉熵损失最小化为目标训练。 - 训练后,解调通过前向传播完成,提高在噪声和干扰中的数据恢复能力。 ``` 请注意,由于字符限制,部分详细信息(如具体图示和详细步骤)未能在摘要中包含。
|
9天前
|
机器学习/深度学习 算法 网络架构
基于yolov2深度学习网络的单人口罩佩戴检测和人脸定位算法matlab仿真
摘要:该内容展示了一个基于YOLOv2的单人口罩佩戴检测和人脸定位算法的应用。使用MATLAB2022A,YOLOv2通过Darknet-19网络和锚框技术检测图像中的口罩佩戴情况。核心代码段展示了如何处理图像,检测人脸并标注口罩区域。程序会实时显示检测结果,等待一段时间以优化显示流畅性。
|
9天前
|
机器学习/深度学习 算法 数据挖掘
基于GWO灰狼优化的CNN-GRU-Attention的时间序列回归预测matlab仿真
摘要: 该文介绍了使用 MATLAB 2022a 进行时间序列预测的算法优化。优化前后对比显示效果改善明显。算法基于CNN、GRU和注意力机制的深度学习模型,其中GWO(灰狼优化)用于优化超参数。CNN提取时间序列的局部特征,GRU处理序列数据的长期依赖,注意力机制聚焦关键信息。GWO算法模拟灰狼行为以实现全局优化。提供的代码片段展示了网络训练和预测过程,以及预测值与真实值的比较。
|
21天前
|
数据安全/隐私保护
地震波功率谱密度函数、功率谱密度曲线,反应谱转功率谱,matlab代码
地震波格式转换、时程转换、峰值调整、规范反应谱、计算反应谱、计算持时、生成人工波、时频域转换、数据滤波、基线校正、Arias截波、傅里叶变换、耐震时程曲线、脉冲波合成与提取、三联反应谱、地震动参数、延性反应谱、地震波缩尺、功率谱密度
|
21天前
|
数据安全/隐私保护
耐震时程曲线,matlab代码,自定义反应谱与地震波,优化源代码,地震波耐震时程曲线
地震波格式转换、时程转换、峰值调整、规范反应谱、计算反应谱、计算持时、生成人工波、时频域转换、数据滤波、基线校正、Arias截波、傅里叶变换、耐震时程曲线、脉冲波合成与提取、三联反应谱、地震动参数、延性反应谱、地震波缩尺、功率谱密度
基于混合整数规划的微网储能电池容量规划(matlab代码)
基于混合整数规划的微网储能电池容量规划(matlab代码)

热门文章

最新文章