实验二利用MATLAB求取线性系统的状态空间模型的解
- 格式:docx
- 大小:86.33 KB
- 文档页数:3
现代控制理论第一次上机实验报告 实验二 利用MATLAB 求取线性系统的状态空间模型的解实验目的:1、根据状态空间模型分析系统由初始状态和外部激励所引起的响应;2、通过编程、上机调试,掌握系统运动的分析方法。
实验原理:一、系统时域响应的求解方法给定系统的状态空间模型:()()()()()()x t Ax t Bu t y t Cx t Du t =+=+ (2.1) 设系统的初始时刻00t =,初始状态为(0)x ,则系统状态方程的解为0()0()(0)()(0)()t At AtA t At A t x t e x e e Bu d e x e Bu d ττττττ--=+=+⎰⎰ (2.2)输出为()0()(0)()()tAt A t y t Ce x C e Bu d Du t τττ-=++⎰ (2.3) 包括两部分,第一部分是由系统自由运动引起的,是初始状态对系统运动的影响;第二部分是由控制输入引起的,反映了输入对系统状态的影响。
输出()y t 由三部分组成。
第一部分是当外部输入等于零时,由初始状态0()x t 引起的,故为系统的零输入响应;第二部分是当初始状态0()x t 为零时,由外部输入引起的,故为系统的外部输入响应;第三部分是系统输入的直接传输部分。
实验步骤1、构建系统的状态空间模型,采用MA TLAB 的m-文件编程;2、求取系统的状态和输出响应;3、在MA TLAB 界面下调试程序,并检查是否运行正确。
实验要求1、在运行以上程序的基础上,应用MA TLAB 验证一个振动现象可以由以下系统产生:01()10x t x ⎡⎤=⎢⎥-⎣⎦证明该系统的解是cos sin ()(0)sin cos t t x t x t t ⎡⎤=⎢⎥-⎣⎦假设初始条件0(0)1x ⎡⎤=⎢⎥⎣⎦,用Matlab 观察该系统解的形状。
m-程序如下:A=[0 1;-1 0];B=[0;0]; D=B;C=[1 0;0 1];sys=ss(A,B,C,D);x0=[0;1];t=[0:0.01:20];[y,T,x]=lsim(sys,u,t,x0)subplot(2,1,1),plot(T,x(:,1))xlabel('Time(sec)'),ylabel('X_1')subplot(2,1,2),plot(T,x(:,2))xlabel('Time(sec)'),ylabel('X_2')仿真结果如下:仿真分析:由仿真图可知,X1和X2周期相同约为6.2,相位差90度,故X1=sint;X2=cost,得证。
标题:MATLAB状态空间表达式的解析一、概述MATLAB是一种非常常用的数学软件,用于分析、设计和模拟动态系统。
在控制系统理论中,状态空间表达式是描述线性系统动态行为的重要方法。
本文旨在介绍如何使用MATLAB对状态空间表达式进行解析和分析。
二、状态空间表达式简介状态空间表达式是一种描述线性时不变系统的数学模型。
通常由状态方程和输出方程组成。
状态方程描述了系统的演化规律,而输出方程则描述了系统状态和输出之间的关系。
三、MATLAB中的状态空间表示在MATLAB中,状态空间表示可以使用ss函数进行表达。
该函数的输入参数包括系统的状态方程系数矩阵A、输入矩阵B、输出矩阵C 和前馈矩阵D。
四、求解状态空间表达式1. 稳态响应分析在MATLAB中,可以使用sys = ss(A,B,C,D)定义一个状态空间模型,然后使用step(sys)绘制系统的阶跃响应曲线。
通过阶跃响应曲线可以分析系统的稳态性能。
2. 传递函数表示使用tf(sys)可以将状态空间表示转换为传递函数表示,这样可以更方便地分析系统的特性。
3. 稳定性分析使用eig(A)可以计算状态方程系数矩阵A的特征值,从而判断系统的稳定性。
如果系统的所有特征值都是负实数,那么系统是稳定的。
4. 频域特性分析使用bode(sys)可以绘制系统的频率响应曲线,这样可以分析系统在不同频率下的特性。
五、应用实例以电机控制系统为例,假设系统的状态空间表达式为:A = [-2 -1; 3 -4]B = [1; 0]C = [0 1]D = [0]可以使用以下代码在MATLAB中求解该系统:sys = ss(A,B,C,D)step(sys)tf_sys = tf(sys)eig(A)bode(sys)六、结语本文介绍了MATLAB中状态空间表达式的解析方法,并以电机控制系统为例进行了说明。
希望本文能够帮助读者更好地理解和应用状态空间表达式在MATLAB中的求解方法。
利用MATLAB对状态空间模型进行分析(一)状态空间模型的引入
状态空间模型是一种概率统计模型,它利用了状态变量和观测变量来描述系统的特性,可以用来模拟复杂的或不可观测的动态过程。
状态空间模型的核心思想是,将动态系统的状态变量和观测变量分别建模,并用一组数学方程表示整个系统。
这样,状态空间模型可以更好地揭示动态系统的特性,从而更好地进行控制和优化。
(二)状态空间模型的形式
状态空间模型由两部分组成:状态转移方程和观测方程。
状态转移方程用于描述系统的状态变量的动态变化,而观测方程则用于表示系统的观测变量的变化趋势。
状态转移方程可以表示为:
x_t = A_tx_{t-1} + B_tu_t + ν_t
其中,x_t表示状态变量的确定值,A_t表示状态转移矩阵,B_t表示输入矩阵,u_t表示输入信号,ν_t表示噪声。
观测方程可以表示为:
y_t = C_tx_t + D_tu_t + ε_t
其中,y_t表示观测变量的确定值,C_t表示观测矩阵,D_t表示输出矩阵,u_t表示输入信号,ε_t表示噪声。
(三)MATLAB绘制状态空间模型
1.为了完成状态空间模型的绘制,首先需要利用MATLAB来定义状态转移方程与观测方程的矩阵参数。
实验报告实验名称利用 MATLAB 求解系统的状态方程系统的能控性、能观测性分析系专业班学号授课老师预定时间2014-5-28 实验时间实验台号14一、目的要求掌握状态转移矩阵的概念。
学会用 MATLAB求解状态转移矩阵。
掌握求解系统状态方程的方法,学会绘制状态响应曲线;掌握线性系统状态方程解的结构。
学会用 MATLAB 求解线性定常系统的状态响应和输出响应,并绘制相应曲线。
掌握能控性和能观测性的概念。
学会用 MATLAB 判断能控性和能观测性。
掌握系统的结构分解。
学会用 MATLAB 进行结构分解。
掌握最小实现的概念。
学会用 MATLAB 求最小实现。
二、原理简述线性定常连续系统的状态转移矩阵为。
函数 step( ) 可直接求取线性连续系统的单位阶跃响应。
函数 impulse( ) 可直接求取线性系统的单位脉冲响应。
函数 lsim( ) 可直接求取线性系统在任意输入信号作用下的响应。
函数 initial( ) 可求解系统的零输入响应。
n 阶线性定常连续或离散系统状态完全能控的充分必要条件是:能控性矩阵的秩为 n。
线性定常连续或离散系统输出能控的充分必要条件是:矩阵的秩为m。
n 阶线性定常连续或离散系统状态完全能观测的充分必要条件是:能观测性矩阵的秩为 n。
三、仪器设备PC 计算机,MATLAB 软件四、容步骤题2.1A=[0 1;-2 -3];B=[3;0];C=[1 1];D=0;G=ss(A,B,C,D);t=0.5;p=expm(A*t)u1=0;x10=[1;-1];[y1o,t,x1o]=initial(G,x10,t)t2=0:0.5:10;x20=[0;0];u2=ones(size(t2));[y2,t2,x2]=lsim(G,u2,t2);plot(t2,x2,':',t2,y2,'-')t3=0:0.5:10;u3=1+exp(-t3).*cos(3*t3);x30=[0;0];题2.1题2.2G = 0.9709 0.0448 -1.1212 0.7915H = 0.00120.0448。
Matlab解状态方程详解
一、引言
状态方程是描述系统动态行为的重要工具,广泛应用于控制工程、电子工程、机械工程等领域。
在Matlab中,可以使用各种方法来解状态方程,包括直接法、迭代法和优化法等。
本文将详细介绍Matlab解状态方程的几种常用方法,并给出相应的示例代码。
二、直接法
直接法是解状态方程最简单的方法之一。
对于简单的一阶或二阶线性时不变系统,可以通过简单的代数运算得到状态变量的解。
对于更复杂的多阶非线性系统,可能需要使用数值方法进行求解。
在Matlab中,可以使用以下代码实现直接法:
三、迭代法
迭代法是一种通过不断迭代来逼近状态变量解的方法。
常用的迭代法包括欧拉法、龙格-库塔法和雅可比迭代法等。
在Matlab中,可以使用以下代码实现欧拉法:
四、优化法
优化法是一种通过最小化某个代价函数来求解状态方程的方法。
常用的优化法包括梯度下降法、牛顿法和拟牛顿法等。
在Matlab中,可以使用以下代码实现梯度下降法:。
MATLAB根据传递函数矩阵求状态空间方程在探讨MATLAB如何根据传递函数矩阵求状态空间方程之前,首先需要了解传递函数和状态空间方程的概念。
传递函数是描述线性时不变系统输入与输出之间关系的数学方法,通常用于描述信号处理、控制系统等领域中的系统行为。
而状态空间方程则是另一种描述系统动态行为的方法,它能够全面描述系统的状态随时间的变化。
在工程领域中,状态空间方程常常用于分析系统的稳定性、控制系统的设计等问题。
在MATLAB中,我们可以利用控制工具箱提供的函数来求解传递函数矩阵对应的状态空间方程。
我们需要用tf函数将传递函数表示为MATLAB中的传递函数对象,然后利用ss函数将传递函数对象转化为状态空间对象,从而得到对应的状态空间方程。
接下来,我们以一个具体的例子来演示MATLAB如何根据传递函数矩阵求状态空间方程。
假设有如下传递函数矩阵:\[ G(s) = \begin{bmatrix} \frac{2s+1}{s^2+3s+2} &\frac{3s+2}{s^2+s+1} \\ \frac{s+1}{s^2+2s+1} &\frac{4s+1}{s^2+4s+3} \end{bmatrix} \]我们希望利用MATLAB求解对应的状态空间方程。
我们可以利用tf函数将传递函数矩阵表示为MATLAB中的传递函数对象:```matlabnum = {[2 1; 3 2]; [1 1; 4 1]}; % 分子矩阵den = {[1 3 2; 1 1 1]; [1 2 1; 1 4 3]}; % 分母矩阵G = tf(num,den);```接下来,我们可以利用ss函数将传递函数对象转化为状态空间对象:```matlabsys = ss(G);```通过以上步骤,我们就可以得到对应的状态空间方程。
值得注意的是,状态空间方程通常表示为如下形式:\[ \dot{x} = Ax + Bu \]\[ y = Cx + Du \]其中,\[ A \]、\[ B \]、\[ C \]、\[ D \] 分别是状态方程的系数矩阵,\[ x \] 是系统的状态向量,\[ u \] 是系统的输入向量,\[ y \] 是系统的输出向量。
MATLAB/Simulink 与控制系统仿真实验报告姓名:喻彬彬学号:K031541725实验1、MATLAB/Simulink 仿真基础及控制系统模型的建立一、实验目的1、掌握MATLAB/Simulink 仿真的基本知识;2、熟练应用MATLAB 软件建立控制系统模型。
二、实验设备电脑一台;MATLAB 仿真软件一个三、实验内容1、熟悉MATLAB/Smulink 仿真软件。
2、一个单位负反馈二阶系统,其开环传递函数为210()3G s s s =+。
用Simulink 建立该控制系统模型,用示波器观察模型的阶跃响应曲线,并将阶跃响应曲线导入到MATLAB 的工作空间中,在命令窗口绘制该模型的阶跃响应曲线。
3、某控制系统的传递函数为()()()1()Y s G s X s G s =+,其中250()23s G s s s+=+。
用Simulink 建立该控制系统模型,用示波器观察模型的阶跃响应曲线,并将阶跃响应曲线导入到MATLAB 的工作空间中,在命令窗口绘制该模型的阶跃响应曲线。
4、一闭环系统结构如图所示,其中系统前向通道的传递函数为320.520()0.11220s G s s s s s+=+++g ,而且前向通道有一个[-0.2,0.5]的限幅环节,图中用N 表示,反馈通道的增益为1.5,系统为负反馈,阶跃输入经1.5倍的增益作用到系统。
用Simulink 建立该控制系统模型,用示波器观察模型的阶跃响应曲线,并将阶跃响应曲线导入到MATLAB 的工作空间中,在命令窗口绘制该模型的阶跃响应曲线。
四、实验报告要求实验报告撰写应包括实验名称、实验内容、实验要求、实验步骤、实验结果及分析和实验体会。
五、实验思考题总结仿真模型构建及调试过程中的心得体会。
题1、(1)利用Simulink的Library窗口中的【File】→【New】,打开一个新的模型窗口。
(2)分别从信号源库(Sourse)、输出方式库(Sink)、数学运算库(Math)、连续系统库(Continuous)中,用鼠标把阶跃信号发生器(Step)、示波器(Scope)、传递函数(Transfern Fcn)和相加器(Sum)4个标准功能模块选中,并将其拖至模型窗口。
用MATLAB分析状态空间模型状态空间模型是一种用于描述动态系统的数学模型。
在MATLAB中,可以使用状态空间方法对系统进行分析和控制。
本文将从状态空间模型的定义、矩阵表示、稳定性以及控制器设计等方面进行详细介绍。
一、状态空间模型的定义状态空间模型是一种描述动态系统的数学模型,其中系统的行为是通过状态变量的演化来表示的。
状态空间模型通常由一组一阶微分方程表示,形式如下:dx(t)-------------------=Ax(t)+Bu(t)dty(t)=Cx(t)+Du(t)其中,x(t)是状态变量向量,表示系统的内部状态;u(t)是输入向量,表示对系统的外部输入;y(t)是输出向量,表示观测到的系统输出;A、B、C和D分别是系统的状态矩阵、输入矩阵、输出矩阵和直接传递矩阵。
二、状态空间模型的矩阵表示在MATLAB中,可以使用矩阵表示状态空间模型。
假设有一个由状态变量x、输入变量u和输出变量y组成的系统,可以通过矩阵表示如下:x'=Ax+Buy=Cx+Du其中,x'表示状态变量x的导数。
在MATLAB中,可以使用matrix函数创建状态矩阵A、输入矩阵B、输出矩阵C和直接传递矩阵D。
例如,可以使用如下代码定义一个状态空间模型:A=[12;34];B=[1;1];C=[10];D=0;sys = ss(A, B, C, D);在上述代码中,创建了一个状态空间模型sys,其中状态矩阵A是一个2×2的矩阵,输入矩阵B是一个2×1的矩阵,输出矩阵C是一个1×2的矩阵,直接传递矩阵D是一个标量。
三、状态空间模型的稳定性分析在控制系统设计中,稳定性是一个重要的指标。
对于线性时不变系统,可以使用状态空间模型进行稳定性分析。
MATLAB提供了一些函数用于稳定性分析,如eig、pole和isstable等。
eig函数用于计算系统的特征值,特征值的实部决定了系统的稳定性。
实验三用Matlab进行状态空间分析及设计1.A=[0 1 0;0 0 1;-6 -11 -6];B=[0;0;1];C=[1 0 0];sys1=ss(A,B,C,0);[num,den]=ss2tf(A,B,C,0);sys2=tf(num,den);[z,p,k]=tf2zp(num,den);e=eig(sys1);t=0;F=expm(A*t);t=[0:0.1:5];t0=0;x0=[2;1;2];u=stepfun(t,t0);[y,x]=lsim(sys1,u,t,x0);figure(1);plot(t,x);grid;title('step response of x');figure(2);plot(t,y);grid;title('step response of y');Qc1=ctrb(sys1);c=rank(Qc1);if c==3disp('sys1 is controlled');endQo1=obsv(sys1);o=rank(Qo1);if o==3disp('sys1 is observable');endsys3=ss(A',C',B',0);T=[1 2 4;0 1 0;0 0 1] ;sys4=ss2ss(sys1,T);Qc4=ctrb(sys4);c=rank(Qc4);if c==3disp('sys4 is controlled');endQo4=obsv(sys4);o=rank(Qo4);if o==3disp('sys4 is observable');end(1)传递函数及由此得到的系统的极点极点p =[-3.0000-2.0000-1.0000](2)根据状态空间模型得到的系统的特征值(由语句eig(sys1)求出)ans=[-1.0000-2.0000-3.0000]系统的特征值全部位于s平面的左半部分,由此判断出系统是一个稳定系统(3)求系统的状态转移矩阵(由语句symst1 ;expm(A*t1)求出)(4)求系统在x0=[2; 1; 2], u为单位阶跃输入时x及y的响应记录曲线如下:A:单位阶跃输入时状态变量X的响应曲线:B:单位阶跃输入时系统输出y响应曲线(5)系统的可控性,可观性分析A.系统的可控性矩阵s为:s = 0 0 10 1 -61 -6 25则系统可控性矩阵的秩f=3,矩阵A的维数为n=3得到系统的结果是system is controlled即系统是可控的B.系统的可观性矩阵v为:v =1 0 00 1 00 0 1则系统可观性矩阵的秩m=3,矩阵A的维数为n=3得到系统的结果是system is observable即系统是可观测的实验结论:由运行结果可知该系统既可控也可观(6)将原来的系统状态空间模型转化为以下俩种标准形式A.转化为对角线的标准形式(由语句sys3=canon(sys1,'modal')求出)B.转化成为A为伴随矩阵的标准形式(由语句sys4=canon(sys1,'companion')求出)(6)T=[1 2 4;0 1 0;0 0 1] 对上述状态空间模型进行变换,分析变换后的系统的空间模型为(有语句T=[1 2 4;0 1 0;0 0 1] ;sys5=ss2ss(sys1,T)实现)对变换后的系统的空间模型进行可控可观性分析得到的结果是系统的可控性矩阵s为s=1 0 00 1 00 0 1可控性矩阵的秩f=3得到系统的结果是system is controlled即系统是可控的系统的可观性矩阵v为v =0 0 10 1 -61 -6 25系统的可观测矩阵的秩m =3得到系统的结果是system is observable即系统是可观测的系统的特征根ans=[ -1.0000 -2.0000 -3.0000 ]2.A1=[0 2 0 0;0 1 -2 0;0 0 3 1;1 0 0 0];B1=[1 0;0 0;0 1;1 0];C1=[0 1 0 0;0 0 1 0];sys1=ss(A1,B1,C1,0);Qc1=ctrb(sys1);c=rank(Qc1);if c==4disp('sys1 is controlled');endQo1=obsv(sys1);o=rank(Qo1);if o==4disp('sys1 is observable');end系统的可控性矩阵s为:s =1 0 0 0 0 -4 -4 -160 0 0 -2 -2 -8 -10 -260 1 1 3 4 9 12 271 0 1 0 0 0 0 -4可控性矩阵的秩f = 4系统的维数n =4得到系统的结果是system is controlled即系统是可控的系统的可观性矩阵v为:v =0 1 0 00 0 1 00 1 -2 00 0 3 10 1 -8 -21 0 9 3-2 1 -26 -83 2 27 9系统的可观性矩阵秩m =4得到系统的结果是system is observable即系统是可观测的综上说明该系统即是可控的也是可观测的A2=[-3 1 0 0 0 0 0 0;0 -3 0 0 0 0 0 0;0 0 -4 1 0 0 0 0;0 0 0 -4 0 0 0 0;0 0 0 0 -1 1 0 0;0 0 0 0 0 -1 0 0;0 0 0 0 0 0 -5 1;0 0 0 0 0 0 0 5];B2=[1 3;5 7;4 3;0 0;1 6;0 0;9 2;0 0];C2=[3 1 0 5 0 0 3 6;1 4 0 2 0 0 7 1];sys2=ss(A2,B2,C2,0);Qc2=ctrb(sys2);c2=rank(Qc2);if c2==8disp('sys2 is controlled');endQo2=obsv(sys2);o2=rank(Qo2);if o2==8disp('sys2 is observable');end[A21,B21,C21,T21,K21]=ctrbf(A2,B2,C2);[A22,B22,C22,T22,K22]=obsvf(A2,B2,C2);系统的可控性矩阵s为:可控性矩阵的秩f=5系统的维数n =8得到系统的结果是system is no controlled即系统是不可控的系统的可观性矩阵v为:系统的可观性矩阵秩m =5得到系统的结果是system is no observable即系统是不可观测的综上说明该系统即是不可控的也是不可观测的A3=[-1 0 0 0;2 -3 0 0;1 0 -2 0;4 -1 2 -4];B3=[0;0;1;2];C3=[3 0 1 0];sys3=ss(A3,B3,C3,0);Qc3=ctrb(sys3);c3=rank(Qc3);if c3==4disp('sys3 is controlled');endQo3=obsv(sys3);o3=rank(Qo3);if o3==4disp('sys3 is observable');end[A31,B31,C31,T31,K31]=ctrbf(A3,B3,C3);[A32,B32,C32,T32,K32]=obsvf(A3,B3,C3);系统的可控性矩阵s为:s =0 0 0 00 0 0 01 -2 4 -82 -6 20 -72可控性矩阵的秩f = 2系统的维数n =4得到系统的结果是system is no controlled即系统是不可控的系统的可观性矩阵v为:v =3 0 1 0-2 0 -2 00 0 4 04 0 -8 0系统的可观性矩阵秩m =2得到系统的结果是system is no observable即系统是不可观测的综上说明该系统即是不可控的也是不可观测的3.A=[0 1 0; 0 0 1; -50 -25 -12];B=[0;0;1];C=[1 0 0];sys1=ss(A,B,C,0);Qc1=ctrb(sys1);c=rank(Qc1);if c==3disp('sys1 is controlled');endQo1=obsv(sys1);o=rank(Qo1);if o==3disp('sys1 is observable');endp=[-1,-10,-12];k=place(A,B,p);sys2=ss(A-B*k,B,C,0);[num,den]=ss2tf(A-B*k,B,C,0);G=tf(num,den);figure(1);step(sys1);grid;hold on;step(sys2);grid;legend('sys1','sys2');hold o ff;(1)判别系统的可控性系统的可控性矩阵s为:s =0 0 10 1 -121 -12 119可控性矩阵的秩f = 3系统的维数n =3得到系统的结果是system is controlled即系统是可控的系统的可观性矩阵v为:v =1 0 00 1 00 0 1系统的可观性矩阵秩m =3得到系统的结果是system is observable即系统是可观测的综上说明该系统即是可控的也是可观测的(2)设计状态反馈控制器使闭环极点为p=[-1,-10,-12];所求状态反馈增益矩阵为k=[70.0000 117.0000 11.0000] 状态反馈控制系统闭环状态矩阵:A1 =0 1 00 0 1-120-142 -23(3)求出闭环系统的传递函数和动态方程改变前系统传递函数改变后系统传递函数改变前系统的动态方程改变后系统动态方程(4)比较反馈前后系统的阶跃响应A.系统的单位阶跃响应状态曲线B.系统的单位阶跃响应输出曲线。
现代控制理论第一次上机实验报告 实验二 利用MATLAB 求取线性系统的状态空间模型的解
实验目的:
1、根据状态空间模型分析系统由初始状态和外部激励所引起的响应;
2、通过编程、上机调试,掌握系统运动的分析方法。
实验原理:
一、系统时域响应的求解方法
给定系统的状态空间模型:
()()()()()()
x t Ax t Bu t y t Cx t Du t =+=+ (2.1) 设系统的初始时刻00t =,初始状态为(0)x ,则系统状态方程的解为
0()0
()(0)()(0)()t At At
A t At A t x t e x e e Bu d e x e Bu d ττττττ--=+=+⎰⎰ (2.2)
输出为
()0()(0)()()t
At A t y t Ce x C e Bu d Du t τττ-=++⎰ (2.3) 包括两部分,第一部分是由系统自由运动引起的,是初始状态对系统运动的影响;第二部分是由控制输入引起的,反映了输入对系统状态的影响。
输出()y t 由三部分组成。
第一部分是当外部输入等于零时,由初始状态0()x t 引起的,故为系统的零输入响应;第二部分是当初始状态0()x t 为零时,由外部输入引起的,故为系统的外部输入响应;第三部分是系统输入的直接传输部分。
实验步骤
1、构建系统的状态空间模型,采用MA TLAB 的m-文件编程;
2、求取系统的状态和输出响应;
3、在MA TLAB 界面下调试程序,并检查是否运行正确。
实验要求
1、在运行以上程序的基础上,应用MA TLAB 验证一个振动现象可以由以下系统产生:
01()10x t x ⎡⎤=⎢⎥-⎣⎦
证明该系统的解是
cos sin ()(0)sin cos t t x t x t t ⎡⎤=⎢⎥-⎣⎦
假设初始条件0(0)
1x ⎡⎤=⎢⎥⎣⎦
,用Matlab 观察该系统解的形状。
m-程序如下:
A=[0 1;-1 0];
B=[0;0]; D=B;
C=[1 0;0 1];
sys=ss(A,B,C,D);
x0=[0;1];
t=[0:0.01:20];
[y,T,x]=lsim(sys,u,t,x0)
subplot(2,1,1),plot(T,x(:,1))
xlabel('Time(sec)'),ylabel('X_1')
subplot(2,1,2),plot(T,x(:,2))
xlabel('Time(sec)'),ylabel('X_2')
仿真结果如下:
仿真分析:
由仿真图可知,X1和X2周期相同约为6.2,相位差90度,故X1=sint;X2=cost,得证。
实验心得
通过本次实验,更清楚的了解了书上例2-1解题过程。