基于系统的可控性进行配置极点系统仿真Word格式文档下载.docx
- 文档编号:14702473
- 上传时间:2022-10-24
- 格式:DOCX
- 页数:12
- 大小:127.49KB
基于系统的可控性进行配置极点系统仿真Word格式文档下载.docx
《基于系统的可控性进行配置极点系统仿真Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《基于系统的可控性进行配置极点系统仿真Word格式文档下载.docx(12页珍藏版)》请在冰豆网上搜索。
系统方程,其中为n维状态向量,A为n×
n系数方阵;
B为n×
1矩阵;
C为1×
n输出矩阵。
选择控制信号为:
μ=﹣KX
对系统进行极点配置,其中系统矩阵A必须是方阵,输入矩阵B和系统矩阵A的行数必须相同,指定闭环极点P的数量必须和A的行数相同,且P的实部应小于0,以及P中的复数应共轭。
X
μ+
+
图1状态反馈闭环控制原理图
所以状态反馈系统方程为
如果系统状态完全可控,K选择适当,对于任意的初始状态,当t趋于无穷时,都可以使x(t)趋于0,得到满意的系统特性。
3.2状态反馈极点配置
系统可通过状态变量反馈来任意配置其全部极点的充要条件是该系统为完全能控的,特征值为Ki,设定的闭环系统的n个所期望的极点是(K1,K2,,,Kn),因此,对于一个完全能控的线性系统的极点配置问题,实际上转化为求解状态反馈矩阵K。
3.3极点配置算法实现
单输入系统极点配置的步骤如下:
(1)检查系统的能控性。
如果系统能控,则按以下步骤计算状态反馈矩阵。
(2)计算矩阵A的特征多项式,即det[sI-A]=。
(3)计算由希望的极点所决定的状态反馈系统特征多项式
。
(4)计算
。
(5)确定变换矩阵
(6)计算状态反馈矩阵K
当系统方程为能控标准形的情况,=I,这时状态反馈矩阵K=。
在MATLAB中用rank指令求矩阵的秩,用place()函数得极点配置。
4理论计算
由题目可知如下条件:
,,,P=[-3+i,-3-i,-5]。
按步骤进行计算:
1)系统能控性矩阵:
Qc==
经计算矩阵Qc的秩为3,所以系统能控。
2)计算矩阵A的特征多项式:
Δ(s)=s^3-5*s^2+5*s–1
3)计算给定希望极点所决定的状态反馈系统特征多项式:
s^3+11*s^2+40*s+50
4)计算:
=[a*0-a0a*1-a1a*2-a2]=[513516]
5)计算变换矩阵=
由于=
=
6)计算状态反馈矩阵K
=[-67-13416]
5计算机实现框图
5.1主程序流程框图
N
Y
N
Y
5.2极点配置流程图
6仿真结果及分析
6.1仿真结果
在m文件运行后,按照提示输入如下:
请输入系统矩阵A=[1,2,-1;
1,1,0;
0,-4,3]
请输入输入矩阵B=[0;
0;
1]
请输入输出矩阵C=[1,-1,1]
请输入指定极点P=[-3+i,-3-i,-5]
之后按回车键,软件开始运算。
结果如下:
系统可控,理论上能任意配置极点。
K=[-67.,-134.,16.]
6.2结果分析
使用MATLAB软件,在菜单栏中点击NewFile新建一个.m文件,然后将设计方案中的语句输入新建的文件中,之后在工具栏中点击Debug找到SavefileandRun,运行所编的程序,在主窗口输出结果以及进行程序的修改。
当得出结果与计算结果一致时,说明所编程序完全正确。
参考文献
[1]王正林.MATLAB/Simulink与控制系统仿真(第2版).电子工业出版社,1998.48-54.
[2]赵景波.MATLAB控制系统仿真与设计.机械工业出版社,2010-11-1.78-90.
[3]姚全珠.软件技术基础.北京:
电子工业出版社,2006
[4]王小丹.基于MATLAB的系统分析与设计.西安:
西安电子科技大学出版社,2007
[5]郑大钟.线性系统理论.北京:
清华大学出版社,2004
附录
程序清单
A=input('
请输入系统矩阵A='
);
B=input('
请输入输入矩阵B='
C=input('
请输入输出矩阵C='
P=input('
请输入指定极点P='
[nx,na]=size(A);
%判断A矩阵是否合法
ifna~=nx,
error('
A必须是方阵!
'
)
elseifnx==0,
return
end
[n,m]=size(B);
%判断B矩阵是否合法
ifnx~=n,
B和A的行数必须相同!
S=ctrb(A,B);
%S为能控性矩阵
Q=rref(rref(S)'
)'
;
%初等行变换化行最简形
ifdet(Q)==0.000%判断系统是否可控
disp('
系统不可控!
不能任意配置极点!
else
disp('
iflength(P)~=nx,%判P(系统指定闭环极点)是否合法
P的数量必须和A的行数相同!
j=0;
fori=1:
n,
if(real(P(i))>
0),
j=1;
end
ifj~=0,
error('
P的实部应小于0!
if~isequal(sort(P(imag(P)>
0)),sort(conj(P(imag(P)<
0))))
P中复数应共轭!
symss;
%定义符号变量
I=eye(n);
%创建单位阵
Det=det(s*I-A);
%计算A的特征多项式
aq=fliplr(sym2poly(Det));
%取A的特征多项式系数,并反转
n
E(i)=s*P(i);
E(i+2)=E(i)*E(i+1);
ah=fliplr(sym2poly(E(i+2)));
%取由P构成的特征多项式的系数,并反转
k=ah-aq;
k=k(1:
n);
%计算
a=aq(2:
%以下循环构建矩阵
Tc1=[];
n,
forj=1:
if(i>
j)
forh=1:
n-1;
if(i-j=n-h);
A1(i,j)=a(h);
else
if(j==i),
A1(i,j)=1;
A1(i,j)=0;
K=vpa(k*inv(Tc1))%
课程设计报告
学生姓名:
吴香环
学号:
1007240607
学院:
自动化工程学院
班级:
自动106
题目:
专业方向课程设计
基于系统的可控性进行配置极点
指导教师:
顾大可姜文娟职称:
副教授讲师
2013年1月9日
1题目背景与目的意义1
2设计题目介绍1
3设计步骤2
3.1理论基础2
3.2状态反馈的极点配置2
3.3极点配置的算法实现3
4理论计算3
5计算机实现框图5
5.1主程序流程框图5
5.2极点配置流程图6
6仿真结果及分析7
6.1仿真结果7
6.2结果分析7
参考文献7
附录程序8
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 系统 可控性 进行 配置 极点 仿真