现代控制理论实验指导书Word下载.docx
- 文档编号:20578252
- 上传时间:2023-01-24
- 格式:DOCX
- 页数:19
- 大小:211.27KB
现代控制理论实验指导书Word下载.docx
《现代控制理论实验指导书Word下载.docx》由会员分享,可在线阅读,更多相关《现代控制理论实验指导书Word下载.docx(19页珍藏版)》请在冰豆网上搜索。
(1.1)
其中:
A为n×
n维系数矩阵;
B为n×
m维输入矩阵;
C为p×
n维输出矩阵;
D为传递阵,一般情况下为0,只有n和m维数相同时,D=1。
系统的传递函数阵和状态空间表达式之间的关系如式(1.2)示。
(1.2)
式(1.2)中,
表示传递函数阵的分子阵,其维数是p×
m;
表示传递函数阵的按s降幂排列的分母。
(即:
则:
函数的用法如下例所示:
例如:
若给定系统的传函为
MATLAB程序如下:
>
num=[0612610];
den=[12311];
printsys(num,den)
执行结果为
num/den=
6s^3+12s^2+6s+10
----------------------------)
s^4+2s^3+3s^2+s+1
1.3实验步骤
1根据所给系统的传递函数或(A、B、C阵),依据系统的传递函数阵和状态空间表达式之间的关系如式(1.2),采用MATLAB的file.m编程。
注意:
ss2tf和tf2ss是互为逆转换的指令。
2在MATLAB界面下调试程序,并检查是否运行正确。
3举例说明程序的运行过程
[例1-1]已知SISO系统的状态空间表达式为(1.3)式所示,求系统的传递函数。
,
(1.3)
程序:
%首先给A、B、C阵赋值;
A=[010;
001;
-4-3-2];
B=[1;
3;
-6];
C=[100];
D=0;
%状态空间表达式转换成传递函数阵的格式为:
[num,den]=ss2tf(a,b,c,d,u)
[num,den]=ss2tf(A,B,C,D,1)
程序运行结果:
num=
01.00005.00003.0000
den=
1.00002.00003.00004.0000
从程序运行结果得到:
系统的传递函数为:
……………………(1.4)
[例1-2]从系统的传递函数(1.4)式求状态空间表达式。
num=[0153];
%在给num赋值时,在系数前补0,使num和den赋值的个数相同;
den=[1234];
[A,B,C,D]=tf2ss(num,den)
A=
-2-3-4
100
010
B=
1
0
C=
153
D=
由于一个系统的状态空间表达式并不唯一,[例1-2]程序运行结果虽然不等于式(1.3)中的A、B、C阵,但该结果与式(1.3)是等效的。
现在对上述结果进行验证。
[例1-3]对[例1-2]的上述结果进行验证编程
%将[例1-2]上述结果赋值给A、B、C、D阵;
A=[-2-3-4;
100;
010];
B=[1;
0;
0];
C=[153];
[num,den]=ss2tf(A,B,C,D,1)
程序运行结果与[例1-1]完全相同。
1.4实验要求
①在运行以上[例]程序的基础上,应用MATLAB对(1.5)式所示的系统仿照[例1.2]编程,求系统的A、B、C、D阵;
然后再仿照[例1-3]进行验证。
(1.5)
提示:
num=[0012;
0153];
②要求调试自编程序,并写出实验报告。
1.5实验思考题
1.系统的传递函数阵和系统的状态空间表达式之间的关系是什么?
2.同一系统的状态空间表达式是否唯一?
实验二多变量系统的能控性和能观测性分析
2.0实验设备
2.1实验目的
①学习多变量系统状态能控性定义及判别方法;
②学习多变量系统状态能观性定义及判别方法;
③通过用MATLAB编程、上机调试,掌握多变量系统能控能观测性的判别方法。
2.2函数功能简介
利用Matlab控制系统工具箱中提供的函数分析系统的能控性和能观测性
1.ctrb函数
功能:
根据动态系统
生成能控性判别矩阵
调用格式:
2.obsv函数
功能:
生成能观测性判别矩阵。
3.gram函数
生成判别能控性、能观测性的格拉姆矩阵。
%生成判别能控性的格拉姆矩阵。
%生成判别能观测性的格拉姆矩阵,其中,
分别为A,C的转置。
4.dgram函数
生成判别离散系统能控或能观测性的格拉姆矩阵。
参见函数gram
5.ctrbf函数
将不能控系统
按能控性进行分解。
调用格式:
其中:
T为变换阵,K为包含状态能控个数信息的行向量,执行sum(K)语句即可得到能控状态数。
能控子系统为
,不能控子系统为
。
6.
函数
将不能观测系统
按能观测性进行分解。
[Abar,Bbar,Cbar,T,K]=obsvf(A,B,C)
其中:
T为变换阵,K为包含状态能观个数信息的行向量,执行sum(K)语句即可得到能观测状态数。
能观测子系统为
,不能观测子系统为
注意:
本次试验主要掌握ctrb函数obsv函数。
2.3实验原理说明
①设系统的状态空间表达式
(2.1)
系统的能控分析是多变量系统设计的基础,包括能控性的定义和能控性的判别。
系统状态能控性的定义的核心是:
对于线性连续定常系统(2.1),若存在一个分段连续的输入函数
,在有限的时间
~
内,能把任一给定的初态
转移至预期的终端
,则称此状态是能控的。
若系统所有的状态都是能控的,则称该系统是状态完全能控的。
②系统输出能控性是指输入函数
加入到系统,在有限的时间
转移至预期的终态输出
能控性判别分为状态能控性判别和输出能控性判别。
状态能控性分为一般判别和直接判别法,后者是针对系统的系数阵A是对角标准形或约当标准形的系统,状态能控性判别时不用计算,应用公式直接判断,是一种直接简易法;
前者状态能控性分为一般判别是应用最广泛的一种判别法。
输出能控性判别式为:
(2.2)
状态能控性判别式为:
(2.3)
系统的能观分析是多变量系统设计的基础,包括能观性的定义和能观性的判别。
系统状态能观性的定义:
对于线性连续定常系统(2.1),如果对t0时刻存在ta,t0<
ta<
,根据[t0,ta]上的y(t)的测量值,能够唯一地确定S系统在t0时刻的任意初始状态x0,则称系统S在t0时刻是状态完全能观测的,或简称系统在[t0,ta]区间上能观测。
状态能观性分为一般判别和直接判别法,后者是针对系统的系数阵A是对角标准形或约当标准形的系统,状态能观性判别时不用计算,应用公式直接判断,是一种直接简易法;
前者状态能观性分为一般判别是应用最广泛的一种判别法。
(2.4)
2.4实验步骤
(1)先调试[例2.1]、[例2.2]系统能控性、能观性程序,然后根据所给系统的系数阵A和输入阵B,依据2.3能控性、能观性判别式,对所给系统采用MATLB的file.m编程;
(2)在MATLAB界面下调试程序,并检查是否运行正确。
(3)按实验要求,判断所给的具有两个输入的二节系统的能控性及能观测性。
2.5用MATLAB进行系统能控性和能观测性分析举例
[例2-1]已知系统状态方程为
判别系统的能控性。
解:
MATLABProgram2_1为应用秩判据求解本题的程序。
程序如下:
%MATLABProgram2_1
A=[-2,2,-1;
0,-2,0;
1,-4,0];
B=[0,0;
0,1;
1,0];
Qc=ctrb(A,B);
n=rank(Qc);
L=length(A);
ifn==L
str='
系统是状态完全能控'
else
系统是状态不完全能控'
end
MATLABProgram2_1运行结果为
str=
系统是状态完全能控
[例2-2]控制系统的状态空间表达式为
试分析系统的输出能控性
解MATLABProgram2_2为应用秩判据求解本题的程序。
%MATLABProgram2_2
A=[-3,1,0;
0,-3,0;
0,0,-1];
B=[1,-1;
0,0;
2,0];
C=[1,0,1;
-1,1,0];
D=zeros(2,2);
C0=ctrb(A,B);
m=size(C,1);
Qy=[C*C0,D];
Qm=rank(Qy);
ifm==Qm
str='
系统输出是完全能控的'
str='
系统输出是不完全能控的'
MATLABProgram3_2运行结果为
str=
系统输出是完全能控的
[例2-3]控制系统的状态空间表达式为
判别系统的能观测性。
解MATLABProgram2_3为应用秩判据求解本题的程序。
%MATLABProgram2_3
A=[4,1,0,0;
0,4,0,0;
0,0,4,1;
0,0,0,4];
C=[1,1,2,1;
1,2,2,0];
Q0=obsv(A,C);
R=rank(Q0);
L=size(A);
ifr==L
系统是状态完全能观测'
系统是状态不完全能观测'
MATLABProgram2_3运行结果为
系统是状态不完全能观测
2.6实验要求
①在运行以上[例]程序的基础上,编程判别下面系统的能控性和能观测性。
已知线性系统的状态空间表达式为:
,试判别系统的能控性和能观测性。
2.7实验思考题
1.SISO系统与MIMO系统的能控性、能观测性判别准则有何异同之处。
2.在什么情况下一个系统既是能控的又是能观测的。
实验三多变量系统的稳定性分析
3.0实验设备
3.1实验目的
①学习多变量系统状态能控性及稳定性分析的定义及判别方法;
②学习多变量系统状态能观性及稳定性分析的定义及判别方法;
③通过用MATLAB编程、上机调试,掌握多变量系统能控性及稳定性判别方法。
3.2实验原理说明
①设系统的状态空间表达式
(3.1)
由状态方程求出系统的传递函数为:
(3.2)
其中
——矩阵A的特征多项式。
特征值就是系统矩阵A的特征值,即特征方程
的根。
若该系统具有能控性和能观性,则(3.2)式的分子和分母不存在公因子相消,即有
(3.3)
式(3.3)表明,该系统的传递函数极点与系统的特征值完全相同。
若该系统不具有能控性和能观性,则(3.2)式的分子和分母有相同的公因子相消,即有
(3.4)
式(3.4)表明,该系统的传递函数极点只是系统特征值的一部分。
在这种情况下,如果系统具有外部稳定性,就不一定具有内部稳定性。
因为当式(3.2)的分子和分母多项式含有正根的公因子项时,与正特征值相对应的状态变量不稳定;
而在传递函数中,由于零、极点对消后没有出现该正极点,故系统却具有外部稳定性。
但是若线性定常系统具有能控性和能观性,则其内部稳定性和外部稳定性是等价的。
②只要系统的A的特征根实部为负,系统就是状态稳定的。
式(1.2)[
]又可写成:
(3.5)
当状态方程是系统的最小实现时,
,系统的状态渐近稳定与系统的BIBO(有界输入有界输出)稳定等价;
当
时,若系统状态渐近稳定则系统一定是的BIBO稳定的。
3.3实验步骤
①先调试[例3-1]系统能控性、能观性程序,然后根据所给系统的系数阵A和输入阵B,依据2.3能控性、能观性判别式,对所给系统采用MATLB的file.m编程;
在MATLAB界面下调试程序,并检查是否运行正确。
②调试[例3-1]系统稳定性分析程序,验证稳定性判据的正确性。
③按实验要求,判断所给系统的稳定性。
[例3-1]:
已知系数阵A、B、和C阵分别如下,分析系统的状态稳定性。
,
,
(3.6)
④根据题义编程:
001;
-4-3-2];
[z,p,k]=ss2zp(A,B,C,D,1)
z=
-4.3028
-0.6972
p=
-1.6506
-0.1747+1.5469i
-0.1747-1.5469i
k=1
由于系统的零、极点均具有负的实部,则系统是BIBO稳定的;
又因为状态方程是系统的最小实现,系统的状态渐近稳定与系统的BIBO稳定等价,所以系统是状态渐近稳定的。
[例3-2]已知系统的状态矩阵为
.
①求系统特征值,判断稳定性。
②对系统进行李雅普诺夫稳定性分析。
[例3-2]的实验步骤:
1.用函数eig()求系统的特征值,并判稳定性。
在CommandWindow下键入以下命令:
A=[-1-2;
1-4];
eig(A)
运行结果为:
ans=
-2
-3
系统特征根都为负值,可知系统稳定。
2.对系统进行李雅普诺夫稳定性分析
选定正定矩阵Q,求解P。
参考程序如下:
A=[-1-2;
1-4];
%定义系统状态矩阵A
Q=[10;
01];
%定义正定矩阵Q为二阶单位阵
P=lyap(A'
Q)%求解稳定性判别矩阵P
detp=det(P)%求
detp1=det(P(1,1))%求P的一阶主子式
P=
0.3833-0.1167
-0.11670.1833
detp=
0.0567
detp1=
0.3833
P的各阶主子式的值都大于0,P为正定对称阵,根据李雅普诺夫稳定性定理可知:
系统稳定,和利用特征值求解的结果一致。
3.4实验要求
①在运行以上[例3-2]程序的基础上,编程判别下面系统的稳定性。
已知系统状态方程为:
当Q=I时,P=?
如选Q为半正定矩阵,Q=?
对应P=?
判断系统稳定性。
3.5实验思考题
1.什么是李雅普诺夫稳定性?
如何判断系统是否大范围渐进稳定?
2.如何构造李雅普诺夫函数?
状态观测器的设计
4.0实验设备
PC计算机1台(要求P4-1.8G以上)、MATLAB6.X软件1套、
4.1实验目的
(1)掌握用状态反馈配置极点的方法
(2)掌握状态观测器的设计方法
(3)了解状态反馈与状态观测器的物理意义。
4.2实验原理说明
设系统的模型如式(4.1)示。
(4.1)
系统状态观测器包括全阶观测器和降阶观测器。
设计全阶状态观测器的条件是系统状态完全能观。
全阶状态观测器的方程为:
(4.2)
4.3实验步骤
①在MATLAB界面下调试[例4-1]程序,并检查是否运行正确。
②已知三阶系数阵A、B和C阵分别如式(4.4)示,设计全阶状态观测器,要求状态观测器的极点为[-1-2-3]。
[例4-1]:
(4.3)
首先验证系统是状态完全能观的,设状态观测器的增益阵为Kz=[k1k2]T
根据题义编程:
A=[01;
-2-1];
B=[0;
1];
C=[10];
[num,den]=ss2tf(A,B,C,D,1);
%求出原系统特征多相式
denf=[169];
%希望的极点的特征多相式
k1=den(:
2)-denf(:
2)%计算k1=d1-a1
k2=den(:
3)-denf(:
3)%计算k2=d2-a2
k1=-5k2=-7
所以,状态观测器的增益阵为Kz=[k1k2]T=[-5–7]T。
则状态观测器的方程为
4.4实验要求
(4.4)
设计全阶状态观测器,要求状态观测器的极点为[-1-2-3]。
①对系统式(4.4)所示系统,采用[例4-1]的思路,用MATLAB编程求状态观测器的增益阵Kz=[k1k2k3]T;
4.5实验思考题
设计全阶状态观测器的条件是什么,为什么要加这样的限制条件?
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 现代 控制 理论 实验 指导书