实验一PID调节器参数整定分析.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验一PID调节器参数整定分析.doc

《计算机控制技术》实验指导书 (软件部分) 编写:唐红雨 黄海峰 镇江高等专科学校电子信息系 2007年3月 目 录 实验一 PID调节器参数整定分析 2 实验二 采样控制系统分析 4 实验三 程序判断滤波 5 实验四 中值滤波 6 实验五 平均值滤波 8 实验一 PID调节器参数整定分析 一、实验目的 设计MATLAB的M文件,用来实现PID调节器的功能,分析Kp、Kd、Ki三个参数对系统性能的影响。 二、实验步骤 开机执行程序,用鼠标双击图标进入MATLAB命令窗口:Command Windows 新建M-file,然后,输入设计好的程序。 调试,检查错误,然后运行。 观察系统对不同参数的相应曲线,分析其原因。 三、实验要求 1、实验之前,查阅有关资料,编写好相应的程序。 2、认真做好仿真记录 四、实验报告要求 叙述Kp、Kd、Ki三个参数对系统性能的影响。 附程序: 1 % 比例控制 G=tf(10,[1 6 11 6]);P=[0.10.1:1];for i=1:length(P) G_c=feedback(P(i)*G,1);step(G_c),hold onend 2 % 比例积分控制 G=tf(10,[1 6 11 6])Kp=1;Ti=[08:02:16];Kp一定,不同Ti的输入 for i=1:length(Ti) Gc=tf(Kp*[1,1/Ti(i)],[1,0]);Ti的系统参数 G_c=feedback(G*Gc,1);step(G_c),hold onG=tf(10,[1 6 11 6])Kp=1;Ti=0.6;Td=[01:02:2];Kp、Ti一定,不同Td的输入 for i=1:length(Td) Gc=tf(Kp*[Ti*Td(i),Ti,1]/Ti,[1,0]);Td的系统参数 G_c=feedback(G*Gc,1);step(G_c),hold on end 4 %P、PI、PID三种控制策略 G=tf(10,[1 10 35 50 24]);[Kc,pp,wg,wp]=margin(G);Tc=2*pi/wg;[Gc1,Kp1]=ziegler(1,[Kc,Tc,10]);Gc1ziegler函数,P控制 [Gc2,Kp2,Ti2]=ziegler(2,[Kc,Tc,10]);Gc2[Gc3,Kp3,Ti3,Td3]=ziegler(3,[Kc,Tc,10]);Gc3G_c1=feedback(G*Gc1,1);step(G_c1);hold onG_c2=feedback(G*Gc2,1);step(G_c2); G_c3=feedback(G*Gc3,1);step(G_c3); 其中ziegler( )函数如下: function [Gc,Kp,Ti,Td,H]=ziegler(key,vars) Ti=[ ]; Td=[ ]; H=[ ]; if length(vars)==4, K=vars(1); L=vars(2); T=vars(3); N=vars(4); a=K*L/T; if key==1, Kp=1/a; %P控制器 elseif key==2, Kp=0.9/a; Ti=3.33*L; %PI控制器 elseif key==3 %PID控制器 Kp=1.2/a; Ti=2*L; Td=L/2; end elseif length(vars)==3, K=vars(1); Tc=vars(2); N=vars(3); if key==1, Kp=0.5*K; elseif key==2, Kp=0.4*K; Ti=0.8*Tc; elseif key==3 Kp=0.6*K; Ti=0.5*Tc; Td=0.12*Tc; end elseif length(vars)==5, K=vars(1); Tc=vars(2); rb=vars(3); pb=pi*vars(4)/180; N=vars(5); Kp=K*rb*cos(pb); if key==2, Ti=-Tc/(2*pi*tan(pb)); elseif key==3 Ti=Tc*(1+sin(pb))/(pi*cos(pb)); Td=Ti/4; end end switch key case 1, Gc=Kp; case 2, Gc=tf(Kp*[Ti,1],[Ti,0]); case 3

文档评论(0)

wendang_12 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档