欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > IT业 > matlab -炉温串级控制PID

matlab -炉温串级控制PID

2024/11/30 12:40:31 来源:https://blog.csdn.net/qingfengxd1/article/details/144007394  浏览:    关键词:matlab -炉温串级控制PID

1、内容简介

92-可以交流、咨询、答疑


2、内容说明

 基于PID的反馈控制能够使得炉温控制达到较好的控制效果,但系统的调节时间还是较长,一般都大于20分钟。考虑能否用其他系统来改进控制系统使得调节时间变短的同时还能满足控制要求。一种最直接的算法就是类似于模糊控制方式,即没有确定的算法,根据经验判断该给系统多少输入。具体而言就是当烤炉温度大于设定值时断电,当温度比设定温度小时加热。用该算法对炉温进行控制发现系统不能满足设计要求。因为该系统是具有时滞的一阶系统,当炉温达到设定值时才断电,而时滞会使炉温超过继续升高,这样炉温就在接近10°的范围内振荡,可见对以非线性的系统要用线性的算法去控制是比较难以达到控制要求的。而另一种是在一定温度基础上使用PID指令,具体就是加热烤炉到一定温度再使用PID指令期望调节时间变短。但实验证明这种算法只能产生更大的超调和更长的调节时间,因为PID控制环节不是在T=0时刻进入系统,而是在系统有一定输入后才加入系统中使得PID默认的时间为t=0,即相当于初始输入为一个干扰较大的信号,这样系统会花更长的时间去调节来是系统稳定。

clc
close all
clearT=0.01;
num1=1;
den1=conv([30 1],[3 1]);
sys1=tf(num1,den1);
sys1_d=c2d(sys1,T)num2=1;
den2=conv([10 1],[1 2 1]);
sys2=tf(num2,den2);
sys2_d=c2d(sys2,T)k=1;
p1=1;
i1=0;
d1=0.01;
p2=1;
i2=0;
d2=0.01;
C1=pid(p1,i1,d1)
C2=pid(p2,i2,d2)chuan1=series(sys1,C1)
chuan2=series(sys2,C2)temps1=feedback(chuan1,k);
temps2=series(temps1,chuan2)sys=feedback(temps2,1)sys_d=c2d(sys,T)
step(sys_d)


3、仿真分析

4、参考论文

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com