您好,欢迎访问三七文档
当前位置:首页 > 高等教育 > 理学 > 实验五用MATLAB判定系统的能控性
实验五用MATLAB判定系统的能控性1、实验设备MATLAB软件2、实验目的①学习线性定常连续系统的状态空间模型的能控性判定、掌握MATLAB中关于该模型判定的主要函数;②通过编程、上机调试,进行模型判定。3、实验原理说明对于连续的线性定常系统,采用代数判据判定状态能控性需要计算能控性矩阵。Matlab提供的函数ctrb()可根据给定的系统模型,计算能控性矩阵Qc=[BAB…An-1B]能控性矩阵函数ctrb()的主要调用格式为:Qc=ctrb(A,B)Qc=ctrb(sys)其中,第1种输入格式为直接给定系统矩阵A和输入矩阵B,第2种格式为给定状态空间模型sys。输出矩阵Qc为计算所得的能控性矩阵。基于能控性矩阵函数ctrb()及能控性矩阵Qc的秩的计算rank(),就可以进行连续线性定常系统的状态能控性的代数判据判定。也可用函数Judge_contr()通过调用能控性矩阵函数ctrb()和计算矩阵秩的函数rank(),完成能控性代数判据的判定。4、实验步骤①根据所给状态空间模型,依据线性定常连续系统状态方程计算能控性矩阵,采用MATLAB编程。②在MATLAB界面下调试程序,并检查是否运行正确。习题1:试在Matlab中计算如下系统的状态能控性。uxx1-1-1112310020231Matlab源程序如下:A=[132;020;013];B=[21;11;-1-1];sys=ss(A,B,[],[]);Judge_contr(sys);函数Judge_contr()的源程序为:functionJudge_contr(sys)Qc=ctrb(sys);n=size(sys.a);ifrank(Qc)==n(1)disp('Thesystemiscontrolled')elsedisp('Thesystemisnotcontrolled')end表明所判定的系统状态不能控。习题2:试在Matlab中计算如下系统的状态能控性。Matlab源程序如下:G=[-410;0-40;00-3];H=[00;00;11];n=size(G,1);Qc=ctrb(G,H);41000(2)0400000311xxuifrank(Qc)==rank([QcG^n])disp('Thesystemiscontrolled')elsedisp('Thesystemisnotcontrolled')end表明所判定的系统状态不能控。
本文标题:实验五用MATLAB判定系统的能控性
链接地址:https://www.777doc.com/doc-2459133 .html