基于PID控制器的双容控制系统matlab仿真

目录

1.课题概述

2.系统仿真结果

3.核心程序与模型

4.系统原理简介

4.1PID控制器的基本原理

4.2双容水箱系统的数学模型

5.完整工程文件


1.课题概述

基于PID控制器的双容控制系统matlab仿真,仿真输出PID控制下的水位和流量两个指标。

2.系统仿真结果

(完整程序运行后无水印)

3.核心程序与模型

版本:MATLAB2022a

........................................................

% 绘制结果图形
t1     = 0:1:times;
t2     = 0:1:(times-1);
hmax   = 23*ones(1,times);  % 硬约束上限
hmin   = 20*ones(1,times);  % 稳态水位线

% 第一个图形:水位随时间变化
figure
plot(t1,ht,'r','Linewidth',2)  % 实际水位曲线
hold on
plot(t2,hmax,'b','Linewidth',1)
hold on
plot(t2,hmin,'k','Linewidth',1)
legend('实际水位','约束上限','稳态水位')
hold on
ylabel('水位(cm^3/s)')
xlabel('时间(s)')
grid on


% 第二个图形:控制流量随时间变化
figure
hmax = (45)*ones(1,times);  % 流量硬约束上限
hmin = (39)*ones(1,times);  % 稳态流量线
plot(t2,u_pid,'r','Linewidth',2)  % PID控制输出流量
hold on
plot(t2,hmax,'b','Linewidth',1)
hold on
plot(t2,hmin,'k','Linewidth',1)
ylabel('流量(cm^3/s)')
xlabel('时间(s)')
legend('PID控制流量','流量约束上限','稳态流量')
grid on
73

4.系统原理简介

       双容水箱控制系统是一种经典的控制理论应用实例,它通常用来演示比例-积分-微分(PID)控制器的工作原理。在这个系统中,两个水箱通过管道相连,第一个水箱(称为上游水箱)的液位由一个可调节的泵控制,目标是通过调整泵的流量来维持第二个水箱(称为下游水箱)的液位在设定值附近。PID控制器根据下游水箱的实际液位与设定液位的偏差来动态调整泵的输出流量。

4.1PID控制器的基本原理

       PID控制器结合了比例(P)、积分(I)、和微分(D)三种控制作用,以实现对过程变量的精确控制。其输出u(t)可表示为:

4.2双容水箱系统的数学模型

       双容水箱系统的动态可以使用以下一阶线性微分方程组来描述,假设没有泄漏且忽略水的动力学效应:

其中,

1V1​ 和 V2​ 分别是两个水箱的体积(或液位高度乘以横截面积);

Qin​ 是进入上游水箱的流量(由泵控制);

Qout​ 是从上游水箱流到下游水箱的流量,一般假定与两水箱液位差成正比,即Qout​=k(V1​−V2​);

Qleak​ 是假设的下游水箱泄露流量,此处假设为0简化讨论。

      对于下游水箱的液位控制,设定目标液位V2,sp​,则误差e(t)=V2,sp​−V2​(t)。PID控制器的输出 u(t) 直接作用于泵的流量Qin​,因此需要通过适当的比例、积分和微分作用调整泵的控制指令,以使液位尽可能快且稳定地接近设定值。

5.完整工程文件

v

v

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-12 07:24:03       52 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-12 07:24:03       54 阅读
  3. 在Django里面运行非项目文件

    2024-07-12 07:24:03       45 阅读
  4. Python语言-面向对象

    2024-07-12 07:24:03       55 阅读

热门阅读

  1. Python Linux下编译

    2024-07-12 07:24:03       25 阅读
  2. kafka面试题(基础-进阶-高阶)

    2024-07-12 07:24:03       22 阅读
  3. 跨平台开发新纪元:Xcode的多平台应用构建指南

    2024-07-12 07:24:03       29 阅读
  4. 偶现bug解决策略

    2024-07-12 07:24:03       20 阅读
  5. Xcode打包与发布全攻略:将你的应用带上App Store

    2024-07-12 07:24:03       28 阅读
  6. x.permute(0, 3, 1, 2).contiguous() 和 x.permute(0, 3, 1, 2)

    2024-07-12 07:24:03       25 阅读
  7. 【网络协议】OSPF

    2024-07-12 07:24:03       20 阅读
  8. WebSocket、socket.io-client

    2024-07-12 07:24:03       24 阅读
  9. ffmpeg新旧函数对比

    2024-07-12 07:24:03       26 阅读
  10. 量化机器人对投资策略的调整

    2024-07-12 07:24:03       27 阅读