现代控制实验报告.docx

上传人:牧羊曲112 文档编号:3651102 上传时间:2023-03-14 格式:DOCX 页数:16 大小:41.69KB
返回 下载 相关 举报
现代控制实验报告.docx_第1页
第1页 / 共16页
现代控制实验报告.docx_第2页
第2页 / 共16页
现代控制实验报告.docx_第3页
第3页 / 共16页
现代控制实验报告.docx_第4页
第4页 / 共16页
现代控制实验报告.docx_第5页
第5页 / 共16页
亲,该文档总共16页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《现代控制实验报告.docx》由会员分享,可在线阅读,更多相关《现代控制实验报告.docx(16页珍藏版)》请在三一办公上搜索。

1、现代控制实验报告实 验 报 告 系 姓名 预定时间 实验名称 用MATLAB分析状态空间模型 信息院 专业 学号 实验时间 电气自动化 第十三周四 班 授课老师 实验台号 2 一、目的要求 1、掌握线性定常系统的状态空间表达式。学会在MATLAB 中建立状态空间模型的方 法。 2、掌握传递函数与状态空间表达式之间相互转换的方法。学会用MATLAB 实现不同 模型之间的相互转换。 3、熟悉系统的连接。学会用MATLAB 确定整个系统的状态空间表达式和传递函数。 4、掌握状态空间表达式的相似变换。掌握将状态空间表达式转换为对角标准型、约当 标准型、能控标准型和能观测标准型的方法。学会用MATLAB

2、 进行线性变换。 二、原理简述 1、线性定常系统的数学模型 在MATLAB 中,线性定常系统可以用4 种数学模 型描述,即传递函数(TF)模型、零极点增益(ZPK)模型和状态空间(SS)模型以及SIMULINK 结构图。前三种数学模型是用数学表达式表示的,且均有连续和离散两种类型,通常把它们 统称为LTI 模型。 2、传递函数模型 系统的传递函数模型用MATLAB 提供的函数tf( )建立。函数tf ( )不仅能用于建立系统 传递函数模型,也能用于将系统的零极点增益模型和状态空间模型转换为传递函数模型。该 函数的调用格式如下: G=tf(num,den) 返回连续系统的传递函数模型G Gtf=

3、tf(G) 可将任意的LTI 模型G 转换为传递函数模型Gtf 3、零极点增益模型 系统的零极点增益模型是传递函数模型的一种特殊形式。 该函数的调用格式如下: G=zpk(z,p,k) 返回连续系统的零极点增益模型G。 Gzpk=zpk(G) 可将任意的LTI 模型G 转换为零极点增益模型Gzpk。 4、状态空间模型(SS 模型) 该函数的调用格式如下: G=ss(A,B,C,D) 返回连续系统的状态空间模型G Gss=ss(G) 可将任意的LTI 模型G 转换为状态空间模型Gss 5、模型转换 上述三种LTI 模型之间可以通过函数tf( ),zpk( )和ss( )相互转换。线性定常系统的传

4、递 函数模型和零极点增益模型是唯一的,但系统的状态空间模型是不唯一的。函数ss( )只能将 传递函数模型和零极点增益模型转换为一种指定形式的状态空间模型。 函数tf2ss 给出了传递函数的一个状态空间实现,其一般形式是 A,B,C,D=tf2ss(num,den) 函数ss2tf 给出了状态空间模型所描述系统的传递函数,其一般形式是 num,den=ss2tf(A,B,C,D,iu) 其中对多输入系统,必须确定iu 的值。例如,若系统有三个输入u1,u2 和u3,则iu 必 须是1、2 或3,其中1 表示u1,2 表示u2,3 表示u3。该函数的结果是第iu 个输入到所有 输出的传递函数。 7

5、、状态空间表达式的相似变换 线性定常系统状态空间表达式为(A, B,C,D),假设存在一个非奇异矩阵T 将原状态 x 变换为z=Tx,则状态z 对应的状态空间表达式为(A, B,C,D),其中A TAT 1, B TB,C CT 1。 MATLAB 提供函数ss2ss( )可完成状态空间模型的相似变换。该函数调用格式为 Gt=ss2ss(G,T) 其中G 为原状态空间模型。T 为变换矩阵。Gt 为经变换得到的状态空间模型。 8、MATLAB 提供直接计算特征值和特征向量的函数为eig,其调用格式为: (1) d=eig(A) (2) V,D=eig(A) 第1 种格式为只计算所有特征值,输出格

6、式为将所有特征值排成向量; 第2 种格式可同时得到所有特征向量和特征值,输出格式为所有特征值为对角线元素的 对角线矩阵D,所有特征向量为列向量并排成矩阵V。 MATLAB 的函数eig不能直接计算广义特征向量,如要计算广义特征向量则需要符号 计算工具箱的函数jordan,调用格式为 (1) Jjordan(A) (2) V,J=jordan(A) 第1 种格式为只计算A 矩阵对应的约旦矩阵J; 第2 种格式可同时得到所有广义特征向量和约旦矩阵J,其中广义特征向量为列向量并 排成矩阵V。 三、仪器设备 PC计算机1台,MATLAB软件1套。 四、内容步骤 根据所给系统的传递函数或A、B、C矩阵,

7、依据系统的传递函数阵和状态空间表达式之间的关系式,采用MATLAB编程。 在MATLAB界面下调试程序,并检查是否运行正确。 五、数据处理 题1.1 已知SISO系统的传递函数为 s2+5s+8g(s)=4 s+2s3+6s2+3s+9将其输入到MATLAB工作空间; 获得系统的状态空间模型。 num = 1 5 8; den = 1 2 6 3 9; A B C D = TF2SS(num,den); 题1.2 已知SISO系统的状态空间表达式为 &1010x11xx1x&2=001x2+3u,y=100x2 &3x-4-3-2x3-6x3将其输入到MATLAB工作空间; 求系统的传递函数。

8、 A=0,1,0;0,0,1;-4,-3,-2; B=1;3;-6; C=1,0,0; D=0; num,den=SS2TF(A,B,C,D) num = 0 1.0000 5.0000 3.0000 den = 1.0000 2.0000 3.0000 4.0000 六、分析讨论 三种LTI 模型之间可以通过函数tf( ),zpk( )和ss( )是可以相互转换。线性定常系统的传递函数模型和零极点增益模型是唯一的,但系统的状态空间模型是不唯一的。函数ss( )只能将传递函数模型和零极点增益模型转换为一种指定形式的状态空间模型。 函数tf2ss 给出了传递函数的一个状态空间实现,其一般形式是

9、A,B,C,D=tf2ss(num,den) 函数ss2tf 给出了状态空间模型所描述系统的传递函数,其一般形式是 num,den=ss2tf(A,B,C,D,iu) 例如在第一题当中,有程序A B C D = TF2SS(num,den);在第二题当中,有程序 num,den=SS2TF(A,B,C,D),这样的话可以给我们的MATLAB使用带来方便。 实 验 报 告 系 姓名 预定时间 实验名称 利用MATLAB求解系统的状态方程 专业 学号 实验时间 电气自动化 第十三周四 班 授课老师 实验台号 2 一、目的要求 1、掌握状态转移矩阵的概念。学会用MATLAB 求解状态转移矩阵。 2、

10、掌握求解系统状态方程的方法,学会绘制状态响应曲线; 3、掌握线性系统状态方程解的结构。学会用MATLAB 求解线性定常系统的状态响应 和输出响应,并绘制相应曲线。 二、原理简述 1、线性定常连续系统状态转移矩阵的计算 线性定常连续系统的状态转移矩阵为(t) e At L1(sI A)1 。 在MATLAB 中, 状态转移矩阵可直接用指数矩阵法和拉氏反变换法计算。 2. 线性定常连续系统的状态方程求解 如果线性定常连续系统的状态空间表达式为 xAx Bu y Cx Du 且初始状态为x(0),那么状态方程解的拉氏变换式为 x(s) (sI A)1 x(0) (sI A)1Bu(s) 三、仪器设备

11、 PC 计算机,MATLAB 软件 四、 内容步骤 根据所给系统的状态方程,依据系统状态方程的解的表达式,采用MATLAB编程。 在MATLAB界面下调试程序,并检查是否运行正确。 五、数据处理 题2.1 已知SISO系统的状态方程为 013&x=x+0u-2-3 y=11xu=0,x(0)= A=0,1;-2,-3; expm(A*0.5) x0=1;-1; x=expm(A*0.5)*x0; ans = 0.8452 0.2387 -0.4773 0.1292 u=1(t),x(0)=,绘制系统的状态响应及输出响应曲线; A=0,1;-2,-3;B=3;0;C=1,1;D=0; G=ss(

12、A,B,C,D);y,t,x=step(G); figure; subplot(2,1,1); plot(t,x); xlabel(t); ylabel(x); 1,求当t=0.5时系统的矩阵系数及状态响应; -100title(状态响应); subplot(2,1,2); plot(t,y); xlabel(t); ylabel(x); title(输出响应); u=1+ecos3t,x(0)=,绘制系统的状态响应及输出响应曲线; -t00A=0,1;-2,-3;B=3;0;C=1,1;D=0; t=0:.04:4;u=1+exp(-t).*cos(3*t); G=ss(A,B,C,D);y

13、,t,x=lsim(G,u,t); figure; subplot(2,1,1); plot(t,x); xlabel(t); ylabel(x); title(状态响应); subplot(2,1,2); plot(t,y); xlabel(t); ylabel(x); title(输出响应); u=0,x(0)=,绘制系统的状态响应及输出响应曲线; A=0,1;-2,-3;B=3;0;C=1,1;D=0; t=0:.04:7;u=0;x0=1;2;G=ss(A,B,C,D); y,t,x=initial(G,x0,t); figure; subplot(2,1,1); plot(t,x);

14、 xlabel(t); ylabel(x); title(状态响应); subplot(2,1,2); plot(t,y); xlabel(t); ylabel(x); title(输出响应); 121在余弦输入信号和初始状态x(0)=下的状态响应曲线。 1 A=0,1;-2,-3;B=3;0;C=1,1;D=zeros(1,1); x0=1;1;t=0:.04:15; u=cos(t); G=ss(A,B,C,D); G1=tf(G); y1,t,x1=initial(G,x0,t); y2,t,x2=lsim(G,u,t); y=y1+y2; x=x1+x2; figure; subplo

15、t(2,1,1); plot(t,x); xlabel(t); ylabel(x); title(状态响应); subplot(2,1,2); plot(t,y); xlabel(t); ylabel(x); title(输出响应); 题2.2 已知一个连续系统的状态方程是 100&x=x+u -25-41若取采样周期T=0.05秒 试求相应的离散化状态空间模型; 分析不同采样周期下,离散化状态空间模型的结果。 A=0,1;-25,-4;B=0;1; Gz,Hz=c2d(A,B,0.05) Gz = 0.9709 0.0448 -1.1212 0.7915 Hz = 0.0012 0.0448

16、 六、分析讨论 从MATLAB的运算的图像结果来看,随着x的元素数据的增加,该系统的状态方程和输出方程越来越不稳定。学习系统齐次、非齐次状态方程求解的方法,需要我们 不断的改变其中的不同数据来分析规律。 另一方面,当我们计算矩阵指数,求状态响应和输出响应的内在关系要把它们的曲线放在一个界面当中,更易于观察。 实 验 报 告 系 姓名 预定时间 实验名称 系统的能控性、能观测性分析 专业 学号 实验时间 电气自动化 第十三周四 班 授课老师 实验台号 2 一、目的要求 学习系统状态能控性、能观测性的定义及判别方法; 通过用MATLAB编程、上机调试,掌握系统能控性、能观测性的判别方法,掌握将一般

17、形式的状态空间描述变换成能控标准形、能观标准形。 二、原理简述 1、能控性 1)线性定常系统状态能控性的判断 n 阶线性定常连续或离散系统(A, B)状态完全能控的充分必要条件是:能控性矩阵的秩为n。 *2)线性定常系统输出能控性的判断 线性定常连续或离散系统(A, B,C,D)输出能控的充分必要条件是:m(n 1)r 矩阵 秩为m,其中r 为系统的输入个数,m 为输出个数。 2、能观测性 n 阶线性定常连续或离散系统(A,C)状态完全能观测的充分必要条件是:能观测性矩 阵秩为n。 3. 线性系统的结构分解 1) 按能控性分解 如果线性系统的状态不完全能控,则可通过非奇异线性变换, 将系统(或

18、状态)分解为能 控和不能控两部分。 MATLAB 提供的函数ctrbf( )。 该函数的调用格式为: Ac Bc Cc Tc Kc=ctrbf(A,B,C) 其中(A,B,C)为给定系统的状态空间模型,(Ac,Bc,Cc)为分解后系统的状态空间模型。 Tc 为相应线性变换矩阵,Kc 返回系统中能控状态变量的数目。 4. 最小实现 MATLAB 提供的函数minreal( )可直接得出系统的最小实现,其调用格式为 Gm=mineral(G) 其中G 为系统的LTI 对象,Gm 为系统的一个最小实现。 三、仪器设备 PC计算机1台,MATLAB软件1套。 四内容步骤 1根据系统的系数阵A和输入阵B

19、,依据能控性判别式,对所给系统采用MATLAB编程;在MATLAB界面下调试程序,并检查是否运行正确。 2根据系统的系数阵A和输出阵C,依据能观性判别式,对所给系统采用MATLAB编程;在MATLAB界面下调试程序,并检查是否运行正确。 3.构造变换阵,将一般形式的状态空间描述变换成能控标准形、能观标准形。 五、 数据处理 题3.1 已知系数阵A和输入阵B分别如下,判断系统的状态能控性 6.666-10.6667-0.33330,B=1 A=1011201 A=6.666,-10.6667,-0.3333;1,0,1;0,1,2;B=0;1;1; Uc=ctrb(A,B) n=det(Uc);

20、 if abs(n) A=6.666,-10.6667,-0.3333;1,0,1;0,1,2;C=1,0,2; Uo=obsv(A,C) n=det(Uo); if abs(n) A=0,2,-1;5,1,2;-2,0,0;B=1;0;-1;C=1,1,0; Uc=ctrb(A,B); Uo=obsv(A,C); n1=det(Uc); if abs(n1) A=0,2,-1;5,1,2;-2,0,0;B=1;0;-1;C=1,1,0; Uc=ctrb(A,B); Uo=obsv(A,C);n2=det(Uo); if abs(n2) A=0,2,-1;5,1,2;-2,0,0;B=1;0;

21、-1;C=1,1,0; Uc=ctrb(A,B); p1=0,0,1*inv(Uc); %P=p1;p1*A;p1*A2 P=obsv(A,p1) Ac=P*A*inv(P) Bc=P*B P = 0.1364 0.0455 0.1364 -0.0455 0.3182 -0.0455 1.6818 0.2273 0.6818 Ac = 0 1.0000 -0.0000 0 -0.0000 1.0000 -10.0000 12.0000 1.0000 Bc = 0 0 1.0000 构造变换阵,将其变换成能观测标准形; A=0,2,-1;5,1,2;-2,0,0;B=1;0;-1;C=1,1,0

22、; Uo=obsv(A,C); T1=inv(Uo)*0;0;1; %T=T1,A*T1,A2*T1 T=ctrb(A,T1) Ao=inv(T)*A*T Co=C*T T = -0.5000 0 -1.0000 0.5000 0 2.0000 1.0000 1.0000 0 Ao = 0 0 -10 1 0 12 0 1 1 Co = 0 0 1 六、 分析讨论 根据系统的系数阵A和输入阵B,计算出来能控性判别式并且可以依据能控判别式,判断该系统是否是能控的;同理,根据系统的系数阵A和输出阵C,依据能观性判别式判别系统是否可观测。一般的空间状态,我们都可以构造变换阵P,将一般形式的状态空间描述变换成能控标准形、能观标准形。 例如:p1=0,0,1*inv(Uc); %P=p1;p1*A;p1*A2 P=obsv(A,p1) Ac=P*A*inv(P) Bc=P*B 就是在构造P来把系统转换成能控标准型。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号