新手入门matlab之线性系统的时域分析

基本语法

##  matlab是一个基于矩阵运算的数学软件,又称矩阵实验室,所以里面的所有东西都是以矩阵的形式来进行运算的  ##

##   首先我们先介绍一下构建传递函数的基本格式,以及一些函数的用法 ##

一.首先打开matlab,直接在命令行窗口新建对应闭环传递函数的矩阵

 

 ***上面是系统开环传递函数***

 

 1). 在命令行窗口内新建俩个矩阵;其中分子是mem,分母是den,正好对应闭环传递函数的分子分母的系数(也就是图中1所示的位置)

  ***注释:在根据闭环传递函数进行创建矩阵时,注意矩阵内部数据是按自变量S(或者其他名字例如X)降幂排列的,每相邻数字中间用空格隔开;也就是说例如此处的分母为(s^2+4s+25),所以对应的分母矩阵den=[1 4 25]依次降幂排列;如果没有对应的降幂次项,则系数写为0,而且一定要写;例如s^2+25(此处没有二次项),则den=[1 0 25] ***

 mem=[25]

den=[1 4 25]

 2).用tf函数进行传递函数的构建和显示(例如图中2)

 ***注释:首先tf()函数是系统函数,我们仅仅需要知道怎么用即可;此处是把构建好的传递函数用g来表示***

3).最终的结果是例如3位置所示。

二.其次进行传递函数输出响应的测试

一.阶跃响应

1).先上代码然后一一介绍(阶跃响应

t=0:0.5:10
step(g,t)
grid;
xlabel('t/s');
ylabel('h(t)');
title('Response to 25/(s^2+4s+25)');

 ***注释:以上代码是用上面的建好的传递函数求出其在阶跃响应下的输出图像;并且对坐标图进行设计***

 2).  t:设置一个执行区间(名字随意,因为t常常表示时间嘛)1

       step:系统自带的求传递函数阶跃响应的函数   2

      grid:系统自带额画网格的函数    3

      xlabel和ylabel是坐标轴标签的设置(注意里面的引号是在英文状态下的单引号) 4

      title:是图像的总的名称  5

 ***注释:左侧结果图对应了不同命令的结果位置***

 ***注释:此处看起来图像的锯齿性明显,说明是我们的执行区间的分隔度太大了我们下面改小一点***

  ***注释:此处看起来图像的锯齿性明显就减小了,说明是我们的执行区间的分隔度变小了;对比发现上面的区间分隔度为0.5,而下面的是0.1,所以会流畅很多;不过细心的小伙伴会发现,为啥这个时候没有显示对t的展开(就是里面显示的0 0.5 1 1.5等),那是因为我在对t定义时后面加了分号***

二.冲激响应

1)其余信息不变,直接在刚才的代码后面调用impulse()函数直接对传递函数进行脉冲响应

   ***注释:上面就可以看到脉冲响应的结果图了***

最后至于斜坡响应加速度响应就留给大家通过脉冲响应阶跃响应自己组合来显示了。

除此之外,matlab中的所有输入都得是英文输入。

三.最后进行闭环特征方程的零极点位置的判断

1.首先我们要知道判断线性系统稳定的判据是啥?

 对于一个线性定常系统来说,其闭环特征方程的根全部位于复平面的左侧时系统稳定(或者说所有根的实部都是负数)

2.那如何求方程的根呢?matlab给我们提供了一个特别厉害的函数:roots()函数,看我操作;

 首先假设系统的闭环特征方程是:S^4+10S^3+35S^2+50S+24=0

然后写出闭环特征方程系数矩阵num=[1 10 35 50 24],然后执行roots(num)

最后得出如下结果:四个根(3)全部在复平面左侧所以系统稳定。

 

 

  • 2
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值