您好,欢迎访问三七文档
实验报告实验名称用MATLAB分析状态空间模型(1)系信息院专业电气自动化班姓名学号授课老师预定时间实验时间第十三周四实验台号2一、目的要求1、掌握线性定常系统的状态空间表达式。学会在MATLAB中建立状态空间模型的方法。2、掌握传递函数与状态空间表达式之间相互转换的方法。学会用MATLAB实现不同模型之间的相互转换。3、熟悉系统的连接。学会用MATLAB确定整个系统的状态空间表达式和传递函数。4、掌握状态空间表达式的相似变换。掌握将状态空间表达式转换为对角标准型、约当标准型、能控标准型和能观测标准型的方法。学会用MATLAB进行线性变换。二、原理简述1、线性定常系统的数学模型在MATLAB中,线性定常(lineartimeinvariant,简称为LTI)系统可以用4种数学模型描述,即传递函数(TF)模型、零极点增益(ZPK)模型和状态空间(SS)模型以及SIMULINK结构图。前三种数学模型是用数学表达式表示的,且均有连续和离散两种类型,通常把它们统称为LTI模型。2、传递函数模型(TF模型)系统的传递函数模型用MATLAB提供的函数tf()建立。函数tf()不仅能用于建立系统传递函数模型,也能用于将系统的零极点增益模型和状态空间模型转换为传递函数模型。该函数的调用格式如下:G=tf(num,den)返回连续系统的传递函数模型GGtf=tf(G)可将任意的LTI模型G转换为传递函数模型Gtf3、零极点增益模型(ZPK模型)系统的零极点增益模型是传递函数模型的一种特殊形式。该函数的调用格式如下:G=zpk(z,p,k)返回连续系统的零极点增益模型G。Gzpk=zpk(G)可将任意的LTI模型G转换为零极点增益模型Gzpk。4、状态空间模型(SS模型)该函数的调用格式如下:G=ss(A,B,C,D)返回连续系统的状态空间模型GGss=ss(G)可将任意的LTI模型G转换为状态空间模型Gss5、模型转换上述三种LTI模型之间可以通过函数tf(),zpk()和ss()相互转换。线性定常系统的传递函数模型和零极点增益模型是唯一的,但系统的状态空间模型是不唯一的。函数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、状态空间表达式的相似变换线性定常系统状态空间表达式为(A,B,C,D),假设存在一个非奇异矩阵T将原状态x变换为z=Tx,则状态z对应的状态空间表达式为(A,B,C,D),其中ATAT1,BTB,CCT1。MATLAB提供函数ss2ss()可完成状态空间模型的相似变换。该函数调用格式为Gt=ss2ss(G,T)其中G为原状态空间模型。T为变换矩阵。Gt为经变换得到的状态空间模型。8、MATLAB提供直接计算特征值和特征向量的函数为eig(),其调用格式为:(1)d=eig(A)(2)[V,D]=eig(A)第1种格式为只计算所有特征值,输出格式为将所有特征值排成向量;第2种格式可同时得到所有特征向量和特征值,输出格式为所有特征值为对角线元素的对角线矩阵D,所有特征向量为列向量并排成矩阵V。MATLAB的函数eig()不能直接计算广义特征向量,如要计算广义特征向量则需要符号计算工具箱的函数jordan(),调用格式为(1)J=jordan(A)(2)[V,J]=jordan(A)第1种格式为只计算A矩阵对应的约旦矩阵J;第2种格式可同时得到所有广义特征向量和约旦矩阵J,其中广义特征向量为列向量并排成矩阵V。三、仪器设备PC计算机1台,MATLAB软件1套。四、内容步骤①根据所给系统的传递函数或A、B、C矩阵,依据系统的传递函数阵和状态空间表达式之间的关系式,采用MATLAB编程。②在MATLAB界面下调试程序,并检查是否运行正确。五、数据处理题1.1已知SISO系统的传递函数为243258()2639ssgsssss(1)将其输入到MATLAB工作空间;(2)获得系统的状态空间模型。num=[158];den=[12639];[ABCD]=TF2SS(num,den);题1.2已知SISO系统的状态空间表达式为112233010100134326xxxxuxx,123100xyxx(1)将其输入到MATLAB工作空间;(2)求系统的传递函数。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=01.00005.00003.0000den=1.00002.00003.00004.0000六、分析讨论三种LTI模型之间可以通过函数tf(),zpk()和ss()是可以相互转换。线性定常系统的传递函数模型和零极点增益模型是唯一的,但系统的状态空间模型是不唯一的。函数ss()只能将传递函数模型和零极点增益模型转换为一种指定形式的状态空间模型。函数tf2ss给出了传递函数的一个状态空间实现,其一般形式是[A,B,C,D]=tf2ss(num,den)函数ss2tf给出了状态空间模型所描述系统的传递函数,其一般形式是[num,den]=ss2tf(A,B,C,D,iu)例如在第一题当中,有程序[ABCD]=TF2SS(num,den);在第二题当中,有程序[num,den]=SS2TF(A,B,C,D),这样的话可以给我们的MATLAB使用带来方便。实验报告实验名称利用MATLAB求解系统的状态方程(2)系专业电气自动化班姓名学号授课老师预定时间实验时间第十三周四实验台号2一、目的要求1、掌握状态转移矩阵的概念。学会用MATLAB求解状态转移矩阵。2、掌握求解系统状态方程的方法,学会绘制状态响应曲线;3、掌握线性系统状态方程解的结构。学会用MATLAB求解线性定常系统的状态响应和输出响应,并绘制相应曲线。二、原理简述1、线性定常连续系统状态转移矩阵的计算线性定常连续系统的状态转移矩阵为(t)eAtL1[(sIA)1]。在MATLAB中,状态转移矩阵可直接用指数矩阵法和拉氏反变换法计算。2.线性定常连续系统的状态方程求解如果线性定常连续系统的状态空间表达式为xAxBuyCxDu且初始状态为x(0),那么状态方程解的拉氏变换式为x(s)(sIA)1x(0)(sIA)1Bu(s)三、仪器设备PC计算机,MATLAB软件四、内容步骤(1)根据所给系统的状态方程,依据系统状态方程的解的表达式,采用MATLAB编程。(2)在MATLAB界面下调试程序,并检查是否运行正确。五、数据处理题2.1已知SISO系统的状态方程为01323011xxuyx(1)0u,101x,求当t=0.5时系统的矩阵系数及状态响应;A=[0,1;-2,-3];expm(A*0.5)x0=[1;-1];x=expm(A*0.5)*x0;ans=0.84520.2387-0.47730.1292(2)1()ut,000x,绘制系统的状态响应及输出响应曲线;A=[0,1;-2,-3];B=[3;0];C=[1,1];D=0;G=ss(A,B,C,D);[y,t,x]=step(G);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('输出响应');(3)1cos3tuet,000x,绘制系统的状态响应及输出响应曲线;A=[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,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('输出响应');(4)0u,102x,绘制系统的状态响应及输出响应曲线;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);xlabel('t');ylabel('x');title('状态响应');subplot(2,1,2);plot(t,y);xlabel('t');ylabel('x');title('输出响应');(5)在余弦输入信号和初始状态101x下的状态响应曲线。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;subplot(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已知一个连续系统的状态方程是0102541xxu若取采样周期0.05T秒(1)试求相应的离散化状态空间模型;(2)分析不同采样周期下,离散化状态空间模型的结果。A=[0,1;-25,-4];B=[0;1];[Gz,Hz]=c2d(A,B,0.05)Gz=0.97090.0448-1.12120.7915Hz=0.00120.0448六、分析讨论从MATLAB的运算的图像结果来看,随着x[]的元素数据的增加,该系统的状态方程和输出方程越来越不稳定。学习系统齐次、非齐次状态方程求解的方法,需要我们不断的改变其中的不同数据来分析规律。另一方面,当我们计算矩阵指数,求状态响应和输出响应的内在关系要把它们的曲线放在一个界面当中,更易于观察。实验报告实验名称系统的能控性、能观测性分析(3)系专业电气自动化班姓名学号授课老师预定时间实验时间第十三周四实验台号2一、目的要求①学习系统状态能控性、能观测性的定义及判别方法;②通过用MATLAB编程、上机调试,掌握系统能控性、能观测性的判别方法,掌握将一般形式的状态空间描述变换成能控标准形、能观标准形。二、原理简述1、能控性1)线性定常系统状态能控性的判断n阶线性定常连续或离散系统(A,B)状态完全能控的充分必要条件是:能控性矩阵的秩为n。*2)线性定常系统输出能控性的判断线性定常连续或离散系统(A,B,C,D)输出能控的充分必要条件是:m(n1)r矩阵秩为m,其中r为系统的输入个数,m为输出个数。2、能观测性n阶线性定常连续或离散系统(A,C)状态完全能观测的充分必要条件是:能观测性矩阵秩为n。3.线性系统的结构分解1)按能控性分解如果线性系统的状态不完
本文标题:现代控制实验报告
链接地址:https://www.777doc.com/doc-2224380 .html