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



相关文章
|
1天前
|
机器学习/深度学习 算法
基于改进遗传优化的BP神经网络金融序列预测算法matlab仿真
本项目基于改进遗传优化的BP神经网络进行金融序列预测,使用MATLAB2022A实现。通过对比BP神经网络、遗传优化BP神经网络及改进遗传优化BP神经网络,展示了三者的误差和预测曲线差异。核心程序结合遗传算法(GA)与BP神经网络,利用GA优化BP网络的初始权重和阈值,提高预测精度。GA通过选择、交叉、变异操作迭代优化,防止局部收敛,增强模型对金融市场复杂性和不确定性的适应能力。
102 80
|
7天前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于yolov4深度学习网络的公共场所人流密度检测系统matlab仿真,带GUI界面
本项目使用 MATLAB 2022a 进行 YOLOv4 算法仿真,实现公共场所人流密度检测。通过卷积神经网络提取图像特征,将图像划分为多个网格进行目标检测和识别,最终计算人流密度。核心程序包括图像和视频读取、处理和显示功能。仿真结果展示了算法的有效性和准确性。
53 31
|
1天前
|
监控 算法 数据安全/隐私保护
基于扩频解扩+turbo译码的64QAM图传通信系统matlab误码率仿真,扩频参数可设置
该通信系统基于MATLAB 2022a仿真,适用于高要求的图像传输场景(如无人机、视频监控等),采用64QAM调制解调、扩频技术和Turbo译码提高抗干扰能力。发射端包括图像源、64QAM调制器、扩频器等;接收端则有解扩器、64QAM解调器和Turbo译码器等。核心程序实现图像传输的编码、调制、信道传输及解码,确保图像质量和传输可靠性。
26 16
|
7天前
|
算法
基于Adaboost模型的数据预测和分类matlab仿真
AdaBoost(Adaptive Boosting)是一种由Yoav Freund和Robert Schapire于1995年提出的集成学习方法,旨在通过迭代训练多个弱分类器并赋予分类效果好的弱分类器更高权重,最终构建一个强分类器。该方法通过逐步调整样本权重,使算法更关注前一轮中被误分类的样本,从而逐步优化模型。示例代码在MATLAB 2022A版本中运行,展示了随着弱分类器数量增加,分类错误率的变化及测试数据的分类结果。
|
6天前
|
供应链 算法 调度
排队算法的matlab仿真,带GUI界面
该程序使用MATLAB 2022A版本实现排队算法的仿真,并带有GUI界面。程序支持单队列单服务台、单队列多服务台和多队列多服务台三种排队方式。核心函数`func_mms2`通过模拟到达时间和服务时间,计算阻塞率和利用率。排队论研究系统中顾客和服务台的交互行为,广泛应用于通信网络、生产调度和服务行业等领域,旨在优化系统性能,减少等待时间,提高资源利用率。
|
14天前
|
机器学习/深度学习 算法 信息无障碍
基于GoogleNet深度学习网络的手语识别算法matlab仿真
本项目展示了基于GoogleNet的深度学习手语识别算法,使用Matlab2022a实现。通过卷积神经网络(CNN)识别手语手势,如"How are you"、"I am fine"、"I love you"等。核心在于Inception模块,通过多尺度处理和1x1卷积减少计算量,提高效率。项目附带完整代码及操作视频。
|
1天前
|
机器学习/深度学习 人工智能 算法
基于GRNN广义回归网络和MFCC的语音情绪识别matlab仿真,对比SVM和KNN
该语音情绪识别算法基于MATLAB 2022a开发,可识别如悲伤等情绪,置信度高达0.9559。核心程序含中文注释及操作视频。算法采用MFCC特征提取与GRNN广义回归网络,通过预加重、分帧、加窗、FFT、梅尔滤波器组、对数运算和DCT等步骤处理语音信号,实现高效的情绪分类。
|
4月前
|
安全
【2023高教社杯】D题 圈养湖羊的空间利用率 问题分析、数学模型及MATLAB代码
本文介绍了2023年高教社杯数学建模竞赛D题的圈养湖羊空间利用率问题,包括问题分析、数学模型建立和MATLAB代码实现,旨在优化养殖场的生产计划和空间利用效率。
226 6
【2023高教社杯】D题 圈养湖羊的空间利用率 问题分析、数学模型及MATLAB代码
|
4月前
|
存储 算法 搜索推荐
【2022年华为杯数学建模】B题 方形件组批优化问题 方案及MATLAB代码实现
本文提供了2022年华为杯数学建模竞赛B题的详细方案和MATLAB代码实现,包括方形件组批优化问题和排样优化问题,以及相关数学模型的建立和求解方法。
141 3
【2022年华为杯数学建模】B题 方形件组批优化问题 方案及MATLAB代码实现
|
4月前
|
数据采集 存储 移动开发
【2023五一杯数学建模】 B题 快递需求分析问题 建模方案及MATLAB实现代码
本文介绍了2023年五一杯数学建模竞赛B题的解题方法,详细阐述了如何通过数学建模和MATLAB编程来分析快递需求、预测运输数量、优化运输成本,并估计固定和非固定需求,提供了完整的建模方案和代码实现。
111 0
【2023五一杯数学建模】 B题 快递需求分析问题 建模方案及MATLAB实现代码

热门文章

最新文章