当前位置:文档之家› 现代控制理论实验报告

现代控制理论实验报告

现代控制理论实验报告学院:机电学院学号:XXXXX姓名:XXXXX班级:XXXX实验一 系统的传递函数阵和状态空间表达式的转换一、实验目的1.熟悉线性系统的数学模型、模型转换。

2.了解MATLAB 中相应的函数 二、实验内容及步骤 1.给定系统的传递函数为1503913.403618)(23++++=s s s s s G要求(1)将其用Matlab 表达;(2)生成状态空间模型。

2.在Matlab 中建立如下离散系统的传递函数模型y (k + 2) +5y (k +1) +6y (k ) = u (k + 2) + 2u (k +1) +u (k ) 3.在Matlab 中建立如下传递函数阵的Matlab 模型⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡+++++++++++=726611632256512)(2322s s s s s s s s s s s s G4.给定系统的模型为)4.0)(25)(15()2(18)(++++=s s s s s G求(1)将其用Matlab 表达;(2)生成状态空间模型。

5.给定系统的状态方程系数矩阵如下:[]0,360180,001,0100011601384.40==⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡---=D C B A用Matlab 将其以状态空间模型表示出来。

6.输入零极点函数模型,零点z=1,-2;极点p=-1,2,-3 增益k=1;求相应的传递函数模型、状态空间模型。

三、实验结果及分析 1. 程序代码如下:num = [18 36];den = [1 40.3 391 150]; tf(num,den) ss(tf(num,den))Transfer function:18 s + 36----------------------------s^3 + 40.3 s^2 + 391 s + 150a =x1 x2 x3x1 -40.3 -24.44 -2.344x2 16 0 0x3 0 4 0b =u1x1 1x2 0x3 0c =x1 x2 x3y1 0 1.125 0.5625d =u1y1 0Continuous-time model.2.2.程序代码如下:num=[1 2 1];den=[1 5 6];tf(num,den,-1)运行结果:Transfer function:z^2 + 2 z + 1-------------z^2 + 5 z + 6Sampling time: unspecified3.程序代码如下:num={[1 2 1],[1 5];[2 3],[6]};den={[1 5 6],[1 2];[1 6 11 6],[2 7]};tf(num,den)Transfer function from input 1 to output...s^2 + 2 s + 1#1: -------------s^2 + 5 s + 62 s + 3#2: ----------------------s^3 + 6 s^2 + 11 s + 6Transfer function from input 2 to output...s + 5#1: -----s + 26#2: -------2 s + 74. 程序代码如下:sys=zpk(-2,[-15 -25 -0.4],18)ss(sys)运行结果:1)Zero/pole/gain:18 (s+2)---------------------(s+15) (s+25) (s+0.4)2)a =x1 x2 x3x1 -0.4 1.265 0x2 0 -15 1x3 0 0 -25b =u1x1 0x2 0x3 8c =x1 x2 x3y1 2.846 2.25 0d =u1y1 0Continuous-time model.5.程序代码如下:A=[-40.4 -138 -160;1 0 0;0 1 0];B=[1 0 0]';C=[0 18 360];D=0;ss(A,B,C,D)运行结果:a =x1 x2 x3x1 -40.4 -138 -160x2 1 0 0x3 0 1 0b =u1x1 1x2 0x3 0c =x1 x2 x3y1 0 18 360d =u1y1 0Continuous-time model.6. 程序代码如下:sys=zpk([1 -2],[-1 2 -3],1) tf(sys)ss((sys)运行结果:Zero/pole/gain:(s-1) (s+2)-----------------(s+1) (s+3) (s-2)Transfer function:s^2 + s - 2---------------------s^3 + 2 s^2 - 5 s - 6a =x1 x2 x3x1 -1 2.828 1.414x2 0 2 2x3 0 0 -3b =u1x1 0x2 0x3 2c =x1 x2 x3y1 -0.7071 1 0.5d =u1y1 0Continuous-time model.四、实验总结本次实验主要是熟悉利用matlab建立线性系统数学模型以及模型间的相应转换(如状态空间、传递函数模型等)、并了解matlab中相应函数的使用,如tf、ss、zp2ss、ss2tf等。

通过实验指导书的指导和编写相应程序,圆满完成本次实验任务,达到了实验的目的。

专业班级 xxxx 姓 名 xxxx 实验地点 xxxx 实验日期 学 号 xxxx 实验成绩实验二 状态空间标准形与控制系统的运动分析一、实验目的1.掌握线性系统的对角线标准形、约当标准形、能控标准形和能观测标准型的表示及相应变换阵的求解。

深入理解状态空间模型的相关理论。

2. 掌握利用Matlab 进行矩阵指数函数的数值计算和符号计算方法;对定常连续系统和定常离散系统的状态空间模型进行求解,分析其运动规律;对连续系统进行离散化。

二、实验内容及步骤1.将实验一的第2题用对角标准型实现。

2.系统的动态方程如下:[]X y u X X 011,0016116100010=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡+⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡---=1)求对角标准型实现,并写出实现变换的非奇异阵和变换关系。

2)求可控准型实现,并写出实现变换的非奇异阵和变换关系。

3.计算如下矩阵的特征值和广义特征向量。

⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡---=111201634A4..将如下状态空间模型变换为约旦规范形。

[]Xy u X X 001,100584100010=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡+⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡---= 5.将下列状态方程化为约当型,并写出实现变换的非奇异阵和变换关系。

⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡-=⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡-----=012010121101,110000110000112000110200001111001113B A 6.在Matlab 中计算矩阵A 在t=0.3 时的矩阵指数eAt 的值。

⎥⎦⎤⎢⎣⎡--=3210A7.计算系统在[0,10s]内, T=3s 的单位方波输入的状态响应。

⎥⎦⎤⎢⎣⎡=⎥⎦⎤⎢⎣⎡+⎥⎦⎤⎢⎣⎡--=•21,1032100x u x X三、实验结果及分析1. 程序代码如下:num=[1 2 1]; den=[1 5 6];canon(tf(num,den),'modal') 运行结果:a =x1 x2 x1 -3 0 x2 0 -2 b =u1 x1 -10 x2 -8.944 c =x1 x2 y1 0.4 -0.1118 d =u1 y1 1Continuous-time model. 2. 程序代码如下:A=[0 1 0;0 0 1;-6 -11 -6]; B=[1 0 0]'; C=[1 1 0]; D=0;[sys,T]=canon(ss(A,B,C,D),'modal') 运行结果:a =x1 x2 x3 x1 -3 0 0 x2 0 -2 0 x3 0 0 -1b =u1x1 -7.762x2 -14.7x3 8.617c =x1 x2 x3 y1 0.2577 -0.2041 1.11e-016d =u1y1 0Continuous-time model.T =-7.7621 -11.6431 -3.8810-14.6969 -19.5959 -4.89908.6168 7.1807 1.4361A=T*A*T-1;B=T*B;C=C*T-1;D=D;2).A=[0 1 0;0 0 1;-6 -11 -6];B=[1 0 0]';C=[1 1 0];D=0;[sys,T]=canon(ss(A,B,C,D),'compaion')运行结果:a =x1 x2 x3x1 0 0 -6x2 1 0 -11x3 0 1 -6b =u1x1 1x2 0x3 0c =x1 x2 x3y1 1 0 -6d =u1y1 0Continuous-time model.T =1.0000 0 00 -1.0000 -0.16670 -0.1667 0A=T*A*T-1;B=T*B;C=C*T-1;D=D;3.程序代码如下:A=[-4 -3 -6;1 0 2 ;1 1 1];[V,D]=eig(A)运行结果:V =-0.9045 -0.9045 -0.80460.3015 0.3015 -0.26150.3015 0.3015 0.5331D =-1.0000 0 00 -1.0000 00 0 -1.00004. 程序代码如下:A=[0 1 0;0 0 1;-4 -8 -5];B=[0 0 1]';C=[1 0 0];D=0;[Q,J] = jordan(A);P=inv(Q);JA=P*A*QJB=P*BJC=C*QJD=D运行结果:JA =-1.0000 0.0000 0-0.0000 -2.0000 1.0000-0.0000 0.0000 -2.0000JB =0.2500-0.25000.5000JC =4 -2 -3JD =5. 程序代码如下:A=[3 -1 1 1 0 0;1 1 -1 -1 0 0;0 0 2 0 1 1;0 0 0 2 -1 -1;0 0 0 0 1 1;0 0 0 0 1 1];B=[1 -1 2 0 0 1; 0 1 1 -1 2 0]';[Q,D]=jordan(A);P=inv(Q);A=P*A*QB=P*B运行结果:A =2 1 0 0 0 00 2 1 0 0 00 0 2 0 0 00 0 0 0 0 00 0 0 0 2 10 0 0 0 0 2B =-0.5000 0.50000 -0.50002.0000 0-1.0000 2.00000 1.00001.00002.00006.程序代码如下:A=[0 1;-2 -3];A=A*0.3;expm(A)运行结果:ans =0.9328 0.1920-0.3840 0.35687.程序代码如下:A=[0 1; -2 -3];B=[0 1]';C=[];D=[];x0=[1 2]';sys=ss(A,B,C,D);[u,t]=gensig('square',3,10,0.1);[y,t,x]=lsim(sys,u,t,x0);plot(t,u,t,x)运行结果:四、实验总结思考题:化为能控得条件是系统能控、化为能观标准型得条件是系统能观测、化为约旦标准型的条件是系统的A矩阵的特征方程有重根。

相关主题