matlab -炉温串级控制PID

[复制链接]
发表于 2025-12-20 01:43:30 | 显示全部楼层 |阅读模式
1、内容简介

92-可以互换、咨询、答疑

2、内容分析

 基于PID的反馈控制可以大概使得炉温控制到达较好的控制效果,但体系的调治时间照旧较长,一样平常都大于20分钟。思量可否用其他体系来改进控制体系使得调治时间变短的同时还能满意控制要求。一种最直接的算法就是类似于含糊控制方式,即没有确定的算法,根据履历判定该给体系多少输入。具体而言就是当烤炉温度大于设定值时断电,当温度比设定温度小时加热。用该算法对炉温举行控制发现体系不能满意操持要求。由于该体系是具偶然滞的一阶体系,当炉温到达设定值时才断电,而时滞会使炉温高出继续升高,如许炉温就在靠近10°的范围内振荡,可见对以非线性的体系要用线性的算法去控制是比力难以到达控制要求的。而另一种是在肯定温度底子上利用PID指令,具体就是加热烤炉到肯定温度再利用PID指令盼望调治时间变短。但实验证明这种算法只能产生更大的超调和更长的调治时间,由于PID控制环节不是在T=0时间进入体系,而是在体系有肯定输入后才加入体系中使得PID默认的时间为t=0,即相当于初始输入为一个干扰较大的信号,如许体系会花更长的时间去调治来是体系稳固。
  1. clc
  2. close all
  3. clear
  4. T=0.01;
  5. num1=1;
  6. den1=conv([30 1],[3 1]);
  7. sys1=tf(num1,den1);
  8. sys1_d=c2d(sys1,T)
  9. num2=1;
  10. den2=conv([10 1],[1 2 1]);
  11. sys2=tf(num2,den2);
  12. sys2_d=c2d(sys2,T)
  13. k=1;
  14. p1=1;
  15. i1=0;
  16. d1=0.01;
  17. p2=1;
  18. i2=0;
  19. d2=0.01;
  20. C1=pid(p1,i1,d1)
  21. C2=pid(p2,i2,d2)
  22. chuan1=series(sys1,C1)
  23. chuan2=series(sys2,C2)
  24. temps1=feedback(chuan1,k);
  25. temps2=series(temps1,chuan2)
  26. sys=feedback(temps2,1)
  27. sys_d=c2d(sys,T)
  28. step(sys_d)
复制代码




3、仿真分析

4、参考论文


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!qidao123.com:ToB企服之家,中国第一个企服评测及软件市场,开放入驻,技术点评得现金

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表