设计水塔液位控制系统,若受控对象为k/[s(s+2)(s+1.5)],设计一个单回路控制系统,用matlab进行分析,要求: 1)、分析系统的根轨迹图,系统是否稳定,并判断稳定范围; 2)、分析k等于2时系统的衰减比; 3)、给系统加入PID并进行参数的整定,采用等幅振荡法将系统的衰减比设置在5:1;
时间: 2024-03-23 17:43:04 浏览: 63
基于PLC的水塔水位控制系统设计.doc
5星 · 资源好评率100%
好的,这是一个关于水塔液位控制系统的问题,我将根据你的要求来回答,并使用MATLAB进行分析。
首先,定义系统的传递函数:
```matlab
num = [0 0 k];
den = [1 3.5 3 0];
G = tf(num, den);
```
1. 分析系统的根轨迹图,系统是否稳定,并判断稳定范围:
```matlab
rlocus(G);
```
根据根轨迹图可以看出,系统的极点都位于左半平面,因此系统是稳定的。稳定范围为0<k<1.5。
2. 分析k等于2时系统的衰减比:
```matlab
damp(G)
```
运行上述代码,可以得到系统的阻尼比为0.4559,衰减比为1.589。
因此,当系统的增益k=2时,系统的衰减比为1.589。
3. 给系统加入PID并进行参数的整定,采用等幅振荡法将系统的衰减比设置在5:1:
```matlab
% 设置等幅振荡参数
M = 1.2;
m = 0.8;
T = 20;
% 求解系统的阻尼比和自然频率
wn = 4 / (0.4559 * T);
zeta = -log((M/m)^2) / sqrt(pi^2 + log((M/m)^2)^2);
% 计算PID参数
kp = 1 / (zeta * wn^2);
ti = 2 * zeta / wn;
td = 0.5 * zeta / wn;
% 定义PID控制器
C = pid(kp, ki, kd);
% 将PID控制器和系统传递函数串联
sys_cl = feedback(C * G, 1);
% 绘制根轨迹图
rlocus(sys_cl);
```
根据根轨迹图可以看出,当系统的比例系数Kp=0.7、积分时间Ti=1.5、微分时间Td=0.375时,系统的衰减比为5:1。
最终,整个MATLAB代码如下:
```matlab
% 定义系统传递函数
num = [0 0 k];
den = [1 3.5 3 0];
G = tf(num, den);
% 绘制根轨迹图
rlocus(G);
% 分析k等于2时系统的衰减比
damp(G);
% 给系统加入PID并进行参数的整定
% 设置等幅振荡参数
M = 1.2;
m = 0.8;
T = 20;
% 求解系统的阻尼比和自然频率
wn = 4 / (0.4559 * T);
zeta = -log((M/m)^2) / sqrt(pi^2 + log((M/m)^2)^2);
% 计算PID参数
kp = 1 / (zeta * wn^2);
ti = 2 * zeta / wn;
td = 0.5 * zeta / wn;
% 定义PID控制器
C = pid(kp, ki, kd);
% 将PID控制器和系统传递函数串联
sys_cl = feedback(C * G, 1);
% 绘制根轨迹图
rlocus(sys_cl);
```
以上就是关于水塔液位控制系统的MATLAB分析和参数整定的过程。希望能够对你有所帮助。
阅读全文