线性反馈系统的时间域综合6.ppt

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
线性反馈系统的时间域综合6

其全维状态观测器为 设基于状态观测值 的状态反馈律为 带全维状态观测器的状态反馈闭环系统的结构图如图6-5所示。 图6-5 带状态观测器的状态反馈闭环控制系统结构图 下面分析上述带状态观测器的状态反馈闭环系统的观测误差: 首先,定义状态观测误差为 另闭环控制系统的状态方程又可记为 代入被控系统和状态观测器的输出方程 增加/减去-BKx项 则有 因此,带全维状态观测器的状态反馈闭环控制系统的状态空间模型为 由上述带全维状态观测器的闭环控制系统的状态空间模型,可得该闭环系统的如下几点特性: 1. 分离特性 由闭环系统状态空间模型的状态方程可知,整个闭环系统的特征值由矩阵块A-BK的特征值和矩阵块A-GC的特征值所组成, 即由状态反馈部分的特征值和状态观测器部分的特征值所组成。 这两部分的特征值可单独设计(配置),互不影响,这种特性称为状态反馈控制与状态观测器的分离特性。 2. 传递函数的不变性 由闭环系统状态空间模型,可得带观测器的闭环系统的传递函数阵如下: 因此,带观测器的闭环系统的传递函数阵完全等于直接采用状态变量作反馈量的闭环系统的传递函数阵, 即状态观测器不改变闭环系统的传递函数阵,也就是不改变闭环系统的外部输入输出特性。 3. 状态观测误差不能控 由闭环控制系统状态方程可知,状态观测误差 是不能控的,即不能由外部输入去影响它。 只要矩阵A-GC的特征值具有负实部,则 不管输入信号如何,则一定按A-GC所确定的衰减速度衰减至零。 本章讨论系统综合问题,涉及的主要计算问题有 连续线性定常系统的状态反馈与极点配置、 系统镇定、 系统解耦、 状态规测器设计等。 本节将讨论上述问题基于Matlab的问题求解和系统仿真。 6.8 Matlab问题 1. 单输入系统状态反馈极点配置 单输入系统状态反馈极点配置函数acker()的调用格式为 k = acker(A,b,p) 其中,输入的A和b分别为单输入系统的系统矩阵和输入矩阵; p为给定的期望闭环极点所组成的一维数组;输出k为求得的状态反馈矩阵。 由于单输入系统状态反馈极点配置问题的反馈矩阵K的解具有惟一性,因此函数acker()求得的反馈矩阵与6.3节介绍的求解结果完全一致。 Matlab在求得反馈矩阵后,就可以构造反馈系统,进行反馈系统的仿真与分析了。 Matlab问题6-1 试在Matlab中计算系统 在期望的闭环极点为-1±j2时的状态反馈矩阵,并计算闭环系统的初始状态响应并绘出响应曲线。Matlab程序m6-1如下。 A=[-1 -2; -1 3]; b=[2; 1]; x0=[2; -3]; p=[-1+2j -1-2j]; k = acker(A,b,p); A_c=A-b*k; sys=ss(A_c,b,[],[]); [y,t,x] = initial(sys,x0); plot(t,x); % 赋值开环系统的系统矩阵和输入矩阵 % 赋值系统的初始状态 % 赋值期望的闭环极点 % 计算基于极点配置的状态反馈矩阵 % 计算闭环系统的系统矩阵 % 建立闭环系统的状态方程 % 求解状态反馈闭环系统的初始状态响应 % 绘制状态轨线图 Matlab程序m6-2执行结果如下. 输出的闭环系统初始状态响应曲线如图6-6所示。 k = -2.3333 8.6667 图6-6 Matlab问题的闭环系统初始状态响应 用公式的计算结果 结果完全一致 2. 全维状态观测器设计 基于前面介绍的状态反馈极点配置函数acker()、place()和canon_place(),通过对偶原理,可以实现全维状态观测器的设计。 对于状态观测器的运动轨迹分析(即状态观测器的状态响应、状态观测值的求解)问题,Matlab没有提供相应的函数。 设计一个用于状态观测器仿真的函数obsv_lsim(),可以方便地进行状态观测值的求解。 状态观测器仿真函数obsv_lsim()的源程序为 function [yt,eyt,t,xt,ext]=obsv_lsim(sys,G,u,t,x0,ex0) % 定义函数的调用格式 n=size(sys.a,1); % 取状态变量维数 [yt,t,xt] = lsim(sys,u,t,x0); % 仿真被控系统,求取其状态和输出响应 obsv_u=sys.b*u+G*yt; % 将Gy+Bu作为观测器的输入 obsv_sys=ss(sys.a-G*sys.c,eye(n),sys.c,sys.d); % 建立观测器的仿真模型 [eyt,t,ext] = lsim(o

文档评论(0)

有一二三 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档