现代控制状态反馈控制系统的设计与实现.doc

现代控制状态反馈控制系统的设计与实现.doc

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

控制工程学院课程实验报告: 现代控制原理 课程实验报告 实验题目: 状态反馈控制系统的设计与实现 实验目的及内容 实验目的: 1.掌握极点配置定理及状态反馈控制系统的设计方法; 2.比较输出反馈与状态反馈的优缺点 3.训练Matlab程序设计能力 实验内容: 1.针对一个二阶系统,分别设计输出反馈和状态反馈控制器; 2.分别测出两种情况下系统的阶跃响应; 3.对实验结果进行对比分析。 实验设备 装有Matlab7.1版本的PC机一台 实验原理 闭环系统的动态性能与系统的特征根密切相关,在状态空间的分析中可利用状 态反馈来配置系统的闭环极点。这种校正手段能提供更多的校正信息,在形成 最优控制率、抑制或消除扰动影响、实现系统解耦等方面获得广泛应用。 为了实现状态反馈,需要状态变量的测量值,而在工程中,并不是状态变量 都能测量到,而一般只有输出可测,因此希望利用系统的输入输出量构成对 系统状态变量的估计。解决的方法是用计算机构成一个与实际系统具有同样 动态方程的模拟系统,用模拟系统的状态向量 作为系统状态向量 的估值。 状态观测器的状态和原系统的状态之间存在着误差,而引起误差的原因之一 是无法使状态观测器的初态等于原系统的初态。引进输出误差 的反馈是为 了使状态估计误差尽可能快地衰减到零。 3. 若系统是可控可观的,则可按极点配置的需要选择反馈增益阵 k,然后按观测 器的动态要求选择 H,H 的选择并不影响配置好的闭环传递函数的极点。因此 系统的极点配置和观测器的设计可分开进行,这个原理称为分离定理。 4.由于引入反馈,系统状态的系数矩阵发生了变化,对系统的可控性、可观测性、稳定性、响应特性等均有影响。状态反馈的引入不改变系统的可控性,但可能改变系统的可观测性。输出至状态微分反馈的引入不改变系统的可观测性,但可能改变系统的可控性。状态反馈和输出反馈都能影响系统的稳定性。加入反馈,使得通过反馈构成的闭环系统成为稳定系统,并且都能够改变闭环系统的极点位置。 实验步骤 在实验中,我首先随意假设了一个传递函数G(s)=2S+1/S2-3S-1,对传递函数进行Matlab语言编程,其编程语言如下 %%本程序用于求解形如Y(s)/U(s)=num/den闭环传递函数%% %% 极点配置问题,包括状态反馈阵K和输出反馈阵H %% %%如:Y(s)/U(s) = 2s+1/ s^2 - 3s - 1 clc %清屏 num = [3]; %闭环传递函数分子多项式 den = [1 -3 -1]; %闭环传递函数分母多项式 P=[-1+j -1-j]; %希望配置的闭环极点 [A,B,C,D]=tf2ss(num,den); %求状态空间表达式 [str K]=pdctrb(A,B,P) %求状态反馈阵K [str H]=pdobsv(A,C,P) %求输出反馈阵H 同时,对状态反馈的可控和输出反馈的可观进行Matlab语言的编程,其编程结果如下 状态反馈可控编程: %%-------------------------------------%% %%程序功能:系统可控性判断以及求解状态反馈阵 %%输入量:系数矩阵A %% 输入矩阵B %% 配置极点P %%输出量:可控性判断结果 %% 状态反馈矩阵K %%-------------------------------------%% function [str K] = pdctrb(A,B,P) %定义函数pdctrb S = ctrb(A,B); %求可控性判别矩阵S R = rank(S); %求可控性判别矩阵S的秩 L = length(A); %求系数矩阵A的维数 if R == L %判断rank(S)是否等于A的维数 str = 系统是状态完全可控的!; %输出可控性判断结果 K =acker(A,B,P); %求状态反馈矩阵K else str = 系统是状态不完全可控的!; end 输出反馈可观编程: %%--------

文档评论(0)

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

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

1亿VIP精品文档

相关文档