MATLAB画频率响应曲线(幅频特性和相频特性)并将横坐标转换为赫兹hz单位 |
您所在的位置:网站首页 › 带阻滤波器幅频特性曲线 › MATLAB画频率响应曲线(幅频特性和相频特性)并将横坐标转换为赫兹hz单位 |
matlab画频率响应曲线的函数为: [h,w] = freqz(b,a,n)b,a:传递函数系数 h:频率响应 w:角频率,0~π 更多参数解释参考官方链接https://ww2.mathworks.cn/help/signal/ref/freqz.html?requesteddomain=true 用freqz画频率响应曲线的一个例子:绘制如下系统的频响曲线: H(z)=(1-0.5z^-1) B=[1 -0.5]; A =[1]; [H,w]=freqz(B,A); Hf=abs(H); %取幅度值实部 Hx=angle(H); %取相位值对应相位角 clf figure(1) plot(w,20*log10(Hf)) %幅值变换为分贝单位 title('离散系统幅频特性曲线') figure(2) plot(w,Hx) title('离散系统相频特性曲线')幅频特性曲线: 此时幅频特性曲线的横坐标为数字角频率w。有时候我们想把横坐标转换为频率f(以赫兹hz为单位): 首先要弄懂各个频率之间的关系:模拟频率f:每秒经历多少个周期,单位Hz,即1/s; 模拟角频率Ω:每秒经历多少弧度,单位rad/s; 数字角频率w:每个采样点间隔之间的弧度,单位rad。 各频率之间的关系:Ω=2*π*f; w =Ω*T; 因为T=1/fs(fs为采样率) 所以w =Ω*T=2*π*f/fs。 因此将数字角频率w转换为模拟频率f的公式为: f=w*fs/(2*π) 因此,将横坐标转换为以赫兹为单位的代码如下(假设采样率为1000hz): B=[1 -0.5]; A =[1]; [H,w]=freqz(B,A); Hf=abs(H); %取幅度值实部 Hx=angle(H); %取相位值对应相位角 clf figure(1) plot(w*fs/(2*pi),20*log10(Hf)) %幅值变换为分贝单位 title('离散系统幅频特性曲线') figure(2) plot(w*fs/(2*pi),Hx) title('离散系统相频特性曲线')此时幅频特性曲线的横坐标为频率f,单位为hz ps: 当幅频特性曲线的横坐标为数字角频率w时,其最大值为π,这是因为当采样率为fs时,根据香农定理,能够采样的信号的最高频率为fs/2,fs/2频率对应的数字角频率w即为π。因此通常我们只关心0-π的幅频响应。 从上面最后一张图可以看到,当横坐标转换为频率后,横坐标最大值为fs/2,即500hz。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |