- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[工学]第9章PID操作
第9章 PID控制器设计 本节主要内容: PID控制原理 PID控制器设计 比例、积分、微分(PID)是建立在经典控制理论基础上的一种控制策略。PID控制器作为最早实用化的控制器已有50多年历史,现在仍然是最广泛的工业控制器。PID控制器简单易懂,使用中不需要精确的系统模型等先决条件,因而成为应用最广泛的控制器。 在本章中,我们将介绍几种常用的PID控制器类型,以及一些设计算法和实现。 PID控制原理 PID控制器系统原理框图如下图所示。 在上图中,系统的偏差信号 。在PID调节作用下,控制器对误差信号分别进行比例、积分、微分运算,其结果的加权和构成系统的控制信号,送给被控对象加以控制。 PID控制器的数学描述为: 式中,Kp为比例系数,Ti为积分时间常数,Td为微分时间常数。 [例1]考虑模型 。研究比例、微分与积分各个环节的作用。 [解] (1)只采用比例控制。即在PID控制策略中令 , 。给出以下程序 : % 比例控制 G=tf(1,[1 3 3 1]); P=[0.1:0.1:1]; for i=1:length(P) G_c=feedback(P(i)*G,1); step(G_c),hold on end 运行程序,得到系统闭环阶跃响应曲线。 由图可以看到,比例环节的主要作用是:Kp的值增大时,系统响应的速度加快,闭环系统响应的幅值增加。当达到某个Kp值,系统将趋于不稳定。 (2)将Kp的值固定到Kp=1,应用PI控制策略。用MATLAB语言给出程序如下: % 比例积分控制 Kp=1; Ti=[0.7:0.1:1.5]; G=tf(1,[1 3 3 1]); for i=1:length(Ti) Gc=tf(Kp*[1,1/Ti(i)],[1,0]); G_c=feedback(G*Gc,1); step(G_c),hold on end Axis([0,20,0,2]) 运行程序,系统的阶跃响应曲线如上图所示。 由上图可知,当我们增加积分时间常数Ti的值时,系统超调量减小,而系统的响应速度将变慢。因此,积分环节的主要作用是消除系统的稳态误差,其作用的强弱取决于积分时间常数的大小。 (3)如果我们将和的值均固定在Kp=Ti=1,则可以使用PID控制策略来试验不同的值。用MATLAB语言给出程序如下: % 比例、积分、微分 Kp=1;Ti=1;Td=[0.1:0.2:2]; G=tf(1,[1 3 3 1]); for i=1:length(Td) Gc=tf(Kp*[Ti*Td(i),Ti,1]/Ti,[1,0]); G_c=feedback(G*Gc,1);step(G_c),hold on end axis([0,20,0,2.0]) 由上图可知,当Td增大时,系统的响应速度增加,同时响应的幅度也增加。因此,微分环节的主要作用是提高系统的响应速度。由于该环节产生的控制量与信号变化速率有关,因此对于信号无变化或变化缓慢的系统不起作用。 2 PID控制器设计 1、Ziegler-Nichols整定公式 传统PID控制的经验公式是Ziegler与Nichols在20世纪40年代初提出的。这个经验公式是基于带有延迟的一阶传递函数模型提出的。该对象模型可以表示为: 在实际的过程控制系统中,有大量的对象模型可以近似地由这样的一阶模型来表示,如果不能物理地建立起系统的模型,我们还可以由实验提取相应的模型参数。如果实验数据是通过阶跃响应获得的,我们可以由表1中给出的经验公式来设计PID控制器。 如果实验数据是通过频域响应获得的,则我们可以容易地得出剪切频率Wc和极限增益Kc,设 ,则PID控制器的参数也可以由表1给出。 这里,我们来编写一个MATLAB函数ziegler(),该函数的功能是实现由Ziegler-ichols公式设计PID控制器,在今后我们设计PID控制器的过程中可以直接调用。程序清单为: 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.
文档评论(0)