Matlab滤波、频谱
Matlab滤波、频谱分析
滤波:
某目标信号是由5、15、30Hz正弦波混合而成的混合信号,现需要设计一个滤波器滤掉5、30Hz两种频率。
分析:显然我们应该设计一个带通滤波器,通带频率落在15Hz附近。
% 滤波
% 某目标信号是由5、15、30Hz正弦波混合而成的混合信号,
% 现需要设计一个滤波器滤掉5、30Hz两种频率。
%
% 分析:显然我们应该设计一个带通滤波器,通带频率落在15Hz附近。
N = 100; %采样点数
t = (1:100)/N; %采样步长
s1 = sin(2*pi*t*5); % 5Hz正弦波
s2 = sin(2*pi*t*15);% 15Hz正弦波
s3 = sin(2*pi*t*30);% 30Hz正弦波
s = s1 s2 s3; %信号叠加
plot(t,s); %显示信号
xlabel('时间/s'); ylabel('幅值');
title('时域信号time domain signal');
[b,a] = ellip(4,0.1,40,[10 20]*2/N); %设置滤波器
% %下面四行可以不操作
figure(2)
[H,w] = freqz(b,a,512); %数字滤波器频响
plot(w*N/(2*pi),abs(H)); %显示频率响应
xlabel('Frequency (Hz)'); ylabel('Mag. of frequency response'); %设定标签
title('频率响应');
grid; %显示网格
% %上面四行可以不操作
figure(3)
sf = filter(b,a,s); %数字滤波
plot(t,sf); %显示滤波结果
axis([0 1 -1 1]); %设定轴刻度
xlabel('时间/s'); ylabel('幅值');
title('滤波后的时域信号');
% 查找帮助看看ellip的参数,注意通带的设置以及采样频率、采样点数的选取。
% 函数ellip的简要说明,
% ellip(4,0.1,40,[10 20]*2/N),其中的4是滤波器的阶数,这里为4阶滤波器,
% 通带衰减为0.1 dB, 阻带衰减为40 dB,[10 20]为通频带10~20Hz,
% 注意最后一项的值必须大于0小于等于1。
查找帮助看看ellip的参数,注意通带的设置以及采样频率、采样点数的选取。
函数ellip的简要说明,ellip(4,0.1,40,[10 20]*2/N),其中的4是滤波器的阶数,这里为4阶滤波器,通带衰减为0.1 dB, 阻带衰减为40 dB,[10 20]为通频带10~20Hz,注意最后一项的值必须大于0小于等于1。
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhibkbbh
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
微信运动停用后别人还能看到步数吗
PHP中文网 07-22 -
excel打印预览压线压字怎么办
PHP中文网 06-22