十:使用MATLAB传递函数的绘制伯德图

您所在的位置:网站首页 小数函数的图像怎么画出来 十:使用MATLAB传递函数的绘制伯德图

十:使用MATLAB传递函数的绘制伯德图

2024-05-30 07:59| 来源: 网络整理| 查看: 265

最先介绍的是函数bode和logspace。其中bode用于绘制伯德图,函数logspace用于生成对数刻度的频率点向量,可以供函数bode使用。

伯德图

一个简单的例子:

1

其伯德图包含对数幅频增益曲线和相频特性曲线,如图

2

使用命令:

>> w = logspace(-1,3,200); >> num = 5*[0.1 1]; >> f1 = [1 0]; >> f2 = [0.5 1]; >> f3 = [1/2500 0.6/50 1]; >> den = conv(f1,conv(f2,f3)); >> sys = tf(num,den) sys = 0.5 s + 5 --------------------------------------- 0.0002 s^4 + 0.0064 s^3 + 0.512 s^2 + s Continuous-time transfer function. >> bode(sys,w) 解释

logspace命令在0.1和1000之间生成200个频率点,如果没有事先给定频率向量,函数bode则自动选取参与运算的频率点,并且能在频率响应变化较快的时候,自动加大频率点的选取密度;当指定了了频率向量,可以使用logspace生成所需的频率数据。

w = logspace(-1,3,200)

3

分子多项式系数

num = 5*[0.1 1];

因为分母是多个简单多项式的乘积,所以可以使用卷积命令conv来求乘积后的多项式系数

>> f1 = [1 0]; >> f2 = [0.5 1]; >> f3 = [1/2500 0.6/50 1]; >> den = conv(f1,conv(f2,f3));

可以看到系数有五项,这显然是一个四阶系统

den = 0.0002 0.0064 0.5120 1.0000 0

绘制bode图

bode(sys,w)

4

bode参数

以上的第一个参数是传递函数模型,bode命令也支持状态空间模型表示的系统。

5



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3