【2017年整理】利用MATLAB 实现极点配置、设计状态观测器(现代控制).doc

【2017年整理】利用MATLAB 实现极点配置、设计状态观测器(现代控制).doc

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
装 订 线 装 订 线 PAGE 14 PAGE 13 装 订 线 实 验 报 告 实验名称 利用MATLAB 实现极点配置、设计状态观测器 系 专业 自动化 班 姓名 学号 授课老师 预定时间 实验时间 实验台号 一、目的要求 1、掌握状态反馈和输出反馈的概念及性质。 2、掌握利用状态反馈进行极点配置的方法。学会用MATLAB 求解状态反馈矩阵。 3、掌握状态观测器的设计方法。学会用MATLAB 设计状态观测器。 4、熟悉分离定理,学会设计带有状态观测器的状态反馈系统。 原理简述 状态反馈和输出反馈 设线性定常系统的状态空间表达式为 如果采用状态反馈控制规律u= r-Kx,其中 r是参考输入,则状态反馈闭环系统的传递函数为: 2、极点配置 如果 SISO 线性定常系统完全能控,则可通过适当的状态反馈, 将闭环系统极点配置到任意期望的位置。 MATLAB 提供的函数acker( )是用Ackermann 公式求解状态反馈阵K。该函数的调用格 式为 K=acker(A,B,P) 其中A 和B 分别为系统矩阵和输入矩阵。P 是期望极点构成的向量。 MATLAB 提供的函数place( )也可求出状态反馈阵K。该函数的调用格式为 K=place(A,B,P) 函数place( )还适用于多变量系统极点配置,但不适用含有多重期望极点的问题。函数acker( )不适用于多变量系统极点配置问题,但适用于含有多重期望极点问题。 三、仪器设备 PC 计算机,MATLAB 软件 内容步骤、数据处理 题5-1 某系统状态方程如下 理想闭环系统的极点为,试 (1)采用直接计算法进行闭环系统极点配置; (2)采用Ackermann公式计算法进行闭环系统极点配置; (3)采用调用place函数法进行闭环系统极点配置。 A=[0 1 0;0 0 1;-4 -3 -2]; B=[1;3;6]; C=[1 0 0]; D=0; G=ss(A,B,C,D); [Q,D]=eig(A) 结果: Q = 0.2995 0.3197 - 0.0731i 0.3197 + 0.0731i -0.4944 0.0573 + 0.5074i 0.0573 - 0.5074i 0.8160 -0.7948 -0.7948 D = -1.6506 0 0 0 -0.1747 + 1.5469i 0 0 0 -0.1747 - 1.5469i 则矩阵A的特征根为:-1.6506,-0.1747 + 1.5469i,-0.1747 - 1.5469i 程序: A=[0 1 0;0 0 1;-4 -3 -2]; B=[1;3; -6]; C=[1 0 0]; D=0; p=[-1 -2 -3]; k=acker(A,B,p) 结果:k =1.4809 0.7481 -0.0458 验证: A=[0 1 0;0 0 1;-4 -3 -2]; B=[1;3;6]; C=[1 0 0]; D=0; k=[0.5053 0.7052 0.2299]; A1=A-B*k; sys=ss(A1,B,C,D); G1=zpk(sys) 结果:Zero/pole/gain: (s^2 + 5s + 15) (s+1) (s+1.999) (s+3.001) 则其极点为-1 ,-2 ,-3 (2) 程序: A=[0 1 0;0 0 1;-4 -3 -2]; B=[1;3; -6]; C=[1 0 0]; D=0; p=[-1 -2 -3]; k=place(A,B,p) 结果:k = 1.4809 0.7481 -0.0458 验证: 程序: A=[0 1 0;0 0 1;-4 -3 -2]; B=[1;3; -6]; C=[1 0 0]; D=0; p=[-1 -2 -3]; k=place(A,B,p); A1=A-B*k;

文档评论(0)

hhuiws1482 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:5024214302000003

1亿VIP精品文档

相关文档