用MATLAB求状态空间的解,实验二利用MATLAB求取线性系统的状态空间模型的解

现代控制理论第一次上机实验报告 实验二 利用MATLAB求取线性系统的状态空间模型的解

实验目的:

1、根据状态空间模型分析系统由初始状态和外部激励所引起的响应;

2、通过编程、上机调试,掌握系统运动的分析方法。

实验原理:

一、系统时域响应的求解方法

给定系统的状态空间模型:

x(t) Ax(t) Bu(t) (2.1) y(t) Cx(t) Du(t)

设系统的初始时刻t0 0,初始状态为x(0),则系统状态方程的解为

x(t) ex(0) eAtAt

t e0t A Bu( )d (2.2)

eAtx(0) eA(t )Bu( )d 0

输出为

y(t) CeAtx(0) C eA(t )Bu( )d Du(t) (2.3) 0t

包括两部分,第一部分是由系统自由运动引起的,是初始状态对系统运动的影响;第二部分是由控制输入引起的,反映了输入对系统状态的影响。输出y(t)由三部分组成。第一部分是当外部输入等于零时,由初始状态x(t0)引起的,故为系统的零输入响应;第二部分是当初始状态x(t0)为零时,由外部输入引起的,故为系统的外部输入响应;第三部分是系统输入的直接传输部分。

实验步骤

1、构建系统的状态空间模型,采用MATLAB的m-文件编程;

2、求取系统的状态和输出响应;

3、在MATLAB界面下调试程序,并检查是否运行正确。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MATLAB中线性时变系统的状态空间模型可以通过StateSpace函数来表示。StateSpace函数的输入参数为系统的状态方程和输出方程。 状态方程描述了系统的状态如何随时间变化。一般形式为dx/dt = Ax + Bu,其中x是系统的状态向量,A是系统的状态矩阵,B是系统的输入矩阵,u是系统的输入向量。 输出方程描述了系统如何根据其状态生成输出。一般形式为y = Cx + Du,其中y是系统的输出向量,C是系统的输出矩阵,D是系统的直接传递矩阵。 通过使用StateSpace函数,我们可以将系统的状态方程和输出方程表示为一个StateSpace对象。例如,假设我们有一个状态方程为dx/dt = 2x + 3u,输出方程为y = x + u的系统,可以使用以下代码表示: A = 2; B = 3; C = 1; D = 1; sys = ss(A, B, C, D); 其中,A = 2表示状态矩阵A的值为2,B = 3表示输入矩阵B的值为3,C = 1表示输出矩阵C的值为1,D = 1表示直接传递矩阵D的值为1。 通过StateSpace对象,我们可以对系统进行模拟、分析和控制等操作。例如,可以使用step函数来绘制系统的阶跃响应曲线。可以使用tf函数将StateSpace对象转换为传输函数模型,以便进行频域分析和设计控制器等。 总之,MATLAB中的StateSpace函数提供了一种方便的方式来表示和操作线性时变系统的状态空间模型。通过定义系统的状态方程和输出方程,可以对系统进行模拟、分析和控制等操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值