控制系统的计算机辅助设计2-08_第1页
控制系统的计算机辅助设计2-08_第2页
控制系统的计算机辅助设计2-08_第3页
控制系统的计算机辅助设计2-08_第4页
控制系统的计算机辅助设计2-08_第5页
已阅读5页,还剩66页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

本章内容(1)

利用MATLAB实现串联频率校正的三种方法;(2)

利用MATLAB实现系统状态反馈的两种方法;(3)

利用MATLAB实现系统状态观测器的两种方法;(4)

利用MATLAB实现带状态观测器的状态反馈系统;(5)

利用MATLAB实现系统的解耦;(6)

利用MATLAB实现状态反馈的线性二次型最优控制器的设计;(7)

利用MATLAB实现输出反馈的线性二次型的最优控制。

第8章控制系统的计算机辅助设计18.1.3基于频率响应法的串联滞后-超前校正1.滞后-超前校正装置的特性设滞后-超前校正装置的传递函数为上式等号右边的第一项产生超前网络的作用,而第二项产生滞后网络的作用。2(1)极坐标图滞后-超前校正装置的极坐标图如图8-9所示。由图可知,当角频率ω在0→ω0之间变化时,滞后-超前校正装置起着相位滞后校正的作用;当ω在ω0→∝之间变化时,它起着超前校正的作用,对应相位角为零的频率ω0为3(2)对数坐标图滞后-超前校正装置的对数坐标图如图8-10所示。从图可清楚看出,当0<ω<ω0时滞后-超前校正装置起着相位滞后校正的作用;当ω0<ω<∝时它起着相位超前校正的作用。42.串联滞后-超前校正方法滞后-超前校正装置的超前校正部分,因增加了相位超前角,并且在幅值穿越频率(剪切频率)上增大了相位裕量,提高了系统的相对稳定性;滞后部分在幅值穿越频率以上,将使幅值特性产生显著的衰减,因此在确保系统有满意的瞬态响应特性的前提下,容许在低频段上大大提高系统的开环放大系数,以改善系统的稳态特性。利用频率法设计滞后-超前校正装置的步骤:(1)根据性能指标对稳态误差系数的要求,确定开环增益k;5(2)求出未校正系统相位和幅值裕量;(3)如果未校正系统相位和幅值裕量不满足要求,则选择未校正系统相频特性曲线上相位角等于-180的频率,即相位交接频率作为校正后系统的幅值交接频率ωc;(4)利用ωc确定滞后校正部分的参数T2和β。通常选取滞后校正部分的第二个交接频率ω2=1/T2=(1/10)ωc,并取β=10;(5)根据校正后系统在新的幅值交接频率ωc处的幅值必为0db确定超前校正部分的参数T1;(6)画出校正后系统的bode图,并检验系统的性能指标是否已全部满足要求。6例8-3

设有单位负反馈系统,其开环传递函数为若要求kv=10(1/s)相位裕量为50,幅值裕量为10dB,试设计一个串联滞后超前-校正装置,来满足要求的性能指标。解根据可求出k=10,即7根据其以上设计步骤,可编写以下m文件。ex8_3.m8执行后可得如下结果及图8-11所示曲线。

num/den=1.8817s+1-----------------0.18817s+1num/den=7.0711s+1----------------70.7107s+19num/den=133.0595s^2+89.5281s+10-------------------------------------------------------------------------6.653s^5+55.4084s^4+120.1542s^3+72.3989s^2+s校正前:幅值裕量=-10.4567dB,相位裕量=-28.0814校正后:幅值裕量=13.7848dB,相位裕量=52.4219

10图8-11滞后超前校正装置及校正前后系统的伯德图118.2.1状态反馈状态反馈是将系统的状态变量乘以相应的反馈系数,然后反馈到输入端与参考输入叠加形成控制作为受控系统的控制输入,采用状态反馈不但可以实现闭环系统的极点任意配置,而且也是实现解耦和构成线性最优调节器的主要手段。8.2状态反馈和状态观测器的设计121.全部极点配置给定控制系统的状态空间模型,则经常希望引入某种控制器,使的该系统的闭环极点移动到某个指定位置,因为在很多情况下系统的极点位置会决定系统的动态性能。假设系统的状态空间表达式为其中A:n×n;B:n×r;C:m×n引入状态反馈,使进入该系统的信号为

u=r–Kx式中r为系统的外部参考输入,K为r×n矩阵。13可得状态反馈闭环系统的状态空间表达式为

(8-12)

可以证明,若给定系统是完全能控的,则可以通过状态反馈将该系统的闭环极点进行任意配置。假定单变量系统的n个希望极点为λ1,λ2,…,λn,则可求出期望的闭环特征方程为

f*(s)=(s-λ1)(s-λ2)…(s-λn)=

sn

+a1sn-1+…+an这时状态反馈阵K可根据下式求得

K=[0…01]Uc-1f*(A)(8-13)式中Uc=[bAb…An-1b],f*(A)是将系统期望的闭环特征方程式中的s换成系统矩阵A后的矩阵多项式。14例8-4

已知系统的状态方程为采用状态反馈,将系统的极点配置到-1,-2,-3,求状态反馈阵K。解

MATLAB程序为ex8_4.m15执行后得K=-124其实,在MATLAB的控制系统工具箱中就提供了单变量系统极点配置函数acker(),该函数的调用格式为K=acker(A,b,P)式中P为给定的极点,K为状态反馈阵。对例8-4,采用下面命令可得同样结果>>A=[-2-11;101;-101];b=[1;1;1];rc=rank(ctrb(A,b));>>p=[-1,-2,-3];K=acker(A,b,p)结果显示K=-12416对于多变量系统的极点配置,MATLAB控制系统工具箱中也给出了函数place(),其调用格式为K=place(A,B,P)例8-5

已知系统的状态方程为求使状态反馈系统的闭环极点为-2,-3,(-1±j√3)/2的状态反馈阵K。17解

MATLAB程序为ex8_5.m执行后得K=32.592365.684458.833246.655755.4594111.8348103.680081.0239182.部分极点配置在一些特定的应用中,有时没有必要去对所有的极点进行重新配置,而只需对其中若干个极点进行配置,使得其他极点保持原来的值,例如若系统开环模型是不稳定的,则可以将那些不稳定的极点配置成稳定的值,而不去改变那些原本稳定的极点。作这样配置的前提条件是原系统没有重极点,这就能保证由系统特征向量构成的矩阵是非奇异的。19假设xi为对应于λi的特征向量,即A

xi

=λixi,这样可以对各个特征值构造特征向量矩阵X=[x1,x2,…,xn],由前面的假设可知X矩阵为非奇异的,故可以得出其逆阵T=X-1,且令T的第i个行向量为Ti,且想把λi配置到μi的位置,则可以定义变量ri=(μi-λi)/bi,其中bi为向量Tb的第i个分量,这时配置全部的极点,则可以得出状态反馈阵特别地,若不想对哪个极点进行重新配置,则可以将对应的项从上面的求和式子中删除就可以得出相应的状态反馈阵,它能按指定的方式进行极点配置。20例8-6对于例8-4所示系统,实际上只有一个不稳定的极点1,若仅将此极点配置到-5,试采用部分极点配置方法对其进行。解MATLAB程序为ex8_6.m执行后得

K=1.5000-1.5000-6.0000218.2.2状态观测器1.全维状态观测器的设计极点配置是基于状态反馈,因此状态x必须可量测,当状态不能量测时,则应设计状态观测器来估计状态。对于系统若系统完全能观测,则可构造如图8-12所示的状态观测器。2223由上图可得观测器的状态方程为即其特征多项式为f(s)=|sI-(A-LC)|由于工程上要求能比较快速的逼近x,只要调整反馈阵L,观测器的极点就可以任意配置达到要求的性能,所以,观测器的设计与状态反馈极点配置的设计类似。24假定单变量系统所要求的n个观测器的极点为λ1,λ2,…,λn,则可求出期望的状态观测器的特征方程为

f*(s)=(λ-λ1)(λ-λ2)…(λ-λn)=sn

+a1sn-1

+…+an这时可求得反馈阵L为式中,,f*(A)是将系统期望的观测器特征方程中s换成系统矩阵A后的矩阵多项式。25

利用对偶原理,可使设计问题大为简化,求解过程如下:首先构造系统式(8-14)的对偶系统

(8-15)然后,根据下式可求得状态观测器的反馈阵L。

LT=acker(AT,CT,P)或LT=place(AT,CT,P)其中P为给定的极点,L为状态观测器的反馈阵。26例8-7

已知开环系统其中设计全维状态观测器,使观测器的闭环极点为

-2±j2√3,-5。27解

为求出状态观测器的反馈阵L,先为原系统构造一对偶系统。然后采用极点配置方法对对偶系统进行闭环极点位置的配置,得到反馈阵K,从而可由对偶原理得到原系统的状态观测器的反馈阵L。MATLAB程序为ex8_728执行后得TheRankofObstrabilatyMatrixr0=3L=3.00007.0000-1.0000由于rankr0=3,所以系统能观测,因此可设计全维状态观测器。292.降维观测器的设计前面所讨论的状态观测器的维数和被控系统的维数相同,故称为全维观测器,实际上系统的输出y总是能够观测的。因此,可以利用系统的输出量y来直接产生部分状态变量,从而降低观测器的维数。假设系统是完全能观测器,若状态x为n维,输出y为m维,由于y是可量测的,因此只需对n-m个状态进行观测,也就是说用(n-m)维的状态观测器可以代替全维观测器,这样观测器的结构可以大大简化。3031Matlab程序为:ex8_8328.2.3带状态观测器的状态反馈系统

状态观测器解决了受控系统的状态重构问题,为那些状态变量不能直接量测得到的系统实现状态反馈创造了条件。带状态观测器的状态反馈系统由三部分组成,即原系统、观测器和控制器,图8-13是一个带有全维观测器的状态反馈系统。3334设能控能观测的受控系统为(8-21)状态反馈控制律为(8-22)状态观测器方程为(8-23)由以上三式可得闭环系统的状态空间表达式为35可以证明,由观测器构成的状态反馈闭环系统,其特征多项式等于状态反馈部分的特征多项式|sI-(A-BK)|和观测器部分的特征多项式|sI-(A-LC)|的乘积,而且两者相互独立。因此,只要系统∑0(A,B,C)能控能观测,则系统的状态反馈阵K和观测器反馈阵L可分别根据各自的要求,独立进行配置,这种性质被称为分离特性。同理,用降维观测器构成的反馈系统也具有分离特性36例8-9

已知开环系统设计状态反馈使闭环极点为-1.8±j2.4,而且状态不可量测,因此设计状态观测器使其闭环极点为-8,-8。解

状态反馈和状态观测器的设计分开进行,状态观测器的设计借助于对偶原理。在设计之前,应先判别系统的能控性和能观测性,MATLAB的程序为

ex8_9.m37执行后得TherankofControllabilityMatrixrc=2TherankofObservabilityMatrixro=2K=29.60003.6000L=16.000084.6000388.2.4离散系统的极点配置和状态观测器的设计

离散系统的极点配置和状态观测器的设计的求解过程与连续系统基本相同,在MATLAB中,可直接采用工具箱中的place()和acker()函数进行设计,这里不在赘述。39Matlab程序为ex8_10.m408.2.5系统解耦在多变量系统中,如果传递函数阵不是对角矩阵,则不同的输入与输出之间存在着耦合,即第i输入不但会对第i输出有影响,而且还会影响到其他的输出,就给控制系统的设计造成了很大的麻烦,故在多变量控制系统的设计中就出现了解耦控制方法。41假设控制系统的状态空间表达式为

(8-25)其中A:n×n;B:n×r;C:m×n;D:m×r引入状态反馈

(8-26)其中R为r×1参考输入向量,在解耦控制中实际还应要求r=m,亦即系统的输入个数等于输出个数,这时闭环系统的传递函数矩阵可以写成42若闭环系统的m×r矩阵G(s)为对角的非奇异矩阵,则称该系统是动态解耦的系统,若G(0)为对角非奇异矩阵,且系统为稳定的,则称该系统是静态解耦的。在给定的控制结构下,若系统的D矩阵为0,则闭环传递函数阵G(s)可以简化成

(8-28)43由上式可见,若H矩阵为奇异矩阵,则G(s)矩阵必为奇异的,所以为使得系统可以解耦,首先应该要求H为非奇异矩阵。对于给定系统,状态方程可以写成为可控标准型,故其中44首先这里将给出能解耦的条件:可以证明,若按下面方法生成的矩阵B*为非奇异的,若取H=(B*)-1,则由前面给出的控制格式得出的系统能解耦原系统。(8-29)式中C1,C2,…,Cm为C矩阵的行向量,参数d1,d2,…,dm是在保证B*为非奇异的前提下任选区间[0,n-1]上的整数。若确定了di参数,则可以直接获得解耦矩阵45例8-11

对如下系统进行解耦解

MATLAB程序为Example8_11.m46执行后可得H=1.00000-1.33330.3333K=-1.0000001.66671.33333.0000n1=01.0000-0.0000-0.000000.00000.00000.0000d1=1.0000-0.0000-0.00000n2=

000000.00001.00000d2=1.0000-0.0000-0.0000047亦即系统解耦后的传递函数阵为

解耦控制系统的目的是将原模型变换成解耦的模型,而并不必去考虑变换之后的响应品质,因为响应品质这类问题可以在解耦之后按照单变量系统进行设计补偿,单回路的设计当然可以采用单变量系统的各种方法,例如可以采用超前滞后补偿,PI设计以及PID设计等,并能保证这样设计出来的控制器不会去影响其他回路。488.2.6状态估计器或观测器假设控制系统的状态空间表达式为函数estim()将生成下述状态和输出估计器49在MATLAB中,函数estim()的调用格式如下est=estim(A,B,C,D,L)其中A,B,C,D为系统系数矩阵,L为状态估计增益矩阵。状态估计增益矩阵L可由极点配置函数place()形成,或者由Kalman滤波函数kalman生成。利用以上命令可生成给定增益矩阵L下的状态空间模型A,B,C,D的输出估计器est。5051例8-13

利用例8-7所得的状态观测器的反馈阵L,求其系统的状态估计器。解MATLAB程序为>>A=[010;001;-6-11-6];b=[0;0;1];C=[100];>>L=[3;7;-1]>>est=estim(A,b,C,0,L)执行后得est=-3.00001.00000-7.000001.0000-5.0000-11.0000-6.0000528.2.7系统控制器假设控制系统的状态空间表达式为利用函数reg()可生成下述控制器53在MATLAB中,函数reg()的调用格式为est=reg(A,B,C,D,K,L)

其中A,B,C,D为系统系数矩阵,K为状态反馈增益矩阵,L为状态估计增益矩阵。利用以上命令可生成给定状态反馈增益矩阵K及状态估计增益矩阵L下的状态空间模型A,B,C,D的控制器est。假定系统的所有输出可测。54例8-14

利用例8-7所得的状态观测器的反馈阵L,求其系统的控制器。假设状态反馈阵K=[-124]。解MATLAB程序为>>A=[010;001;-6-11-6];b=[0;0;1];C=[100];>>K=[-124];>>L=[3;7;-1]>>est=reg(A,b,C,0,K,L)执行后得

est=-310-701-4-13-10558.3最优控制系统设计

MATLAB控制系统工具箱中也提供了很多函数用来进行系统的最优控制设计,相关函数如表8-3所示。56578.3.1状态反馈的线性二次型最优控制设线性定常系统的状态空间表达式为

(8-31)式中A:n×n;B:n×r;C:m×n并设目标函数为二次型性能指标

(8-32)式中Q(t)为n×n半正定实对称矩阵,R(t)为r×r正定实对称矩阵。一般情况下,假定这两个矩阵为定常矩阵,它们分别决定了系统暂态误差与控制能量消耗之间的相对重要性。S为对称半正定终端的加权阵,它为常数。58当x(tf)值固定时,则为终端控制问题,特别是当x(tf)=0时,则为调节器问题;当t0

,tf均固定时,则为暂态过程最优控制。最优控制问题是为给定的线性系统式(8-31)寻找一个最优控制律u*(t),使系统从初始状态x(t0)转移到终端状态x(tf),且满足性能指标式(8-32)最小。它可以用变分法、极大值原理和动态规划等三种方法中的任一种求解。这里我们采用极大值原理求解u*(t)。59

MATLAB的控制系统工具箱中也提供了完整的解决线性二次型最优控制的函数,其中命令lqr()和lqry()可以直接求解二次型调节器问题及相关的Riccati方程,它们的调用格式分别为

[K,P,r]=lqr(A,B,Q,R)(8-43)和[K,P,r]=lqry(A,B,C,D,Q,R)(8-44)其中矩阵A,B,C,D,Q,R的意义是相当明显的,返回的K矩阵为状态反馈矩阵,P为Riccati方程解,r为A-BK的特征值。lqry()命令用于求解二次调节器问题的特例,即目标函数中用输出y来代替状态x,则目标函数为60例8-15已知系统的状态空间表达式为试求使得性能指标为最小的最优控制u=-Ku的反馈增益矩阵K。其中61解MATLAB程序为ex8_15.m62执行后得如下结果和如图8-15所示的阶跃响应曲线。K=10.00008.42232.1812P=104.222551.811710.000051.811737.99958.422310.00008.42232.1812r=-2.6878-1.2467+1.4718i-1.2467-1.4718i63图8-15闭环系统输出和状态的阶跃响应曲线由此构成的闭环系统的三个极点均位于

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论