MATLAB 控制系统设计与仿真 - 11

常用时域函数

控制系统的时域分析是指输入变量是时间t的函数,求出系统的输出响应,其响应肯定也是时间t的函数,称为时域相应。利用时域分析可以获得控制系统的动态性能指标以及线性系统稳定性,如延迟时间,上升时间,调节时间,超调量等,以及稳态性能指标---稳态误差。

MATLAB提供了响应呢的时域分析函数,具体如下:

1. roots

在MATLAB中,利用roots函数可以计算多项式的根,进而用来判断线性系统的稳定性。其调用格式为:

p=root(den); % den为按降序排列的特征多项式细说,p为特征方程的根,以向量的方式保存

例如:

clear all;clc;
den=[1 2 3 4 5 6 7];
p=roots(den)

运行程序 ,结果如下:

p =

  -1.3079 + 0.5933i
  -1.3079 - 0.5933i
   0.7104 + 1.1068i
   0.7104 - 1.1068i
  -0.4025 + 1.3417i
  -0.4025 - 1.3417i

由于有一个极点大于零, 所以该线性系统是不稳定的。

2. dcgain函数

在MATLAB中,提供了dcgain函数来计算系统的增益,函数的调用格式为:

k=dcgain(sys);
k=degain(num,den);

该函数用来计算线性时不变系统的稳态终值。

例如:求取一下传递函数的稳态误差

clear all;clc;
sys=tf(10,[1 0.6 100]);
staticError=1-dcgain(sys);
step(sys)
grid on;

运行结果如下:

staticError =

    0.9000

3. gensig函数

在MATLAB中,提供了gensig函数用于生成任意信号,函数的调用格式为:

[u,t]=gensig(type,tau); % type为一下标识字符之一: 
                        % sin & square & pulse, tau为周期,Tf为持续时间,Ts为采样时间
[t,t]=gensig(type,tau,Tf,Ts);

例如:

clear all;clc;
[u,t]=gensig('square',2,10,0.01);
plot(t,u);
axis([0 10 -0.5 2]);

运行结果如下:

最后,欢迎大家有问题给我留言。

另外欢迎小伙伴们点赞转发加关注。

谢谢大家!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

东雁西飞

打赏一下,买杯咖啡提提神吧!!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值