信号的频谱分析与信号滤波

信号的频谱分析与信号滤波

试验目的:熟悉信号的频谱分析与信号滤波。

信号的频谱分析

例、建立一个含50Hz和120Hz幅值为2的正弦信号(sin),然后叠加一个幅值为1的随机信号,利用Matlab分析其频谱。并滤除噪声信号和120Hz正弦信号。

实验提示:

1、FFT谱分析:利用 FFT分析含噪声的时域信号的频率组成。

2、滤波:滤除噪声信号和120Hz正弦信号。

Matlab 复制代码
% 试验目的
% 熟悉信号的频谱分析与信号滤波。
% 
% 例、建立一个含50Hz和120Hz幅值为2的正弦信号(sin),然后叠加一个幅值为1的随机信号,
% 利用Matlab分析其频谱。并滤除噪声信号和120Hz正弦信号。
% 
% 实验提示
% 1、FFT谱分析:利用 FFT分析含噪声的时域信号的频率组成。
% 2、滤波:滤除噪声信号和120Hz正弦信号。

clc; clear; close all;

fs = 1000;      % 采样频率为1000 Hz
t = 0:1/fs:.25; % 设定时间轴,t=0 到.25,时间步长为1毫秒

x = 2*sin(2*pi*50*t) + 2*sin(2*pi*120*t); % 建立信号,含50 Hz 、120 Hz的正弦信号
y = x + randn(size(t)); % 加入随机信号,幅值为1的噪声信号。

plot(y(1:50));            % 很难分辨信号的频率组成
xlabel('时间/s'); ylabel('幅值');
title('Noisy time domain signal'); % 带噪声的时域信号

N = 256;    % 取样点个数
Y = fft(y,N);       % 256点快速傅立叶变换FFT
Pyy = Y.*conj(Y)/N; % 复共轭(CONJ)计算功率谱密度
f = fs/N*(0:N/2-1);   % 为前128数据点(后128点与支对称)建立频率轴。
figure(2);            % 开第二个图形窗,并在该窗口画出第二个图形
plot(f,Pyy(1:N/2));   % 注意到在50 Hz和120 Hz有两个波峰
xlabel('Frequency (Hz)'); ylabel('功率谱密度');
title('Power spectral density'); % 带噪声的时域信号
相关推荐
dracula00022 分钟前
Simulink建模助手系列-2【自动创建缺失的Goto】
matlab
Evand J7 小时前
【UWB与IMU紧耦合定位,MATLAB例程】UWB的TOA定位方法,与IMU紧耦合,对目标轨迹定位并输出误差统计。适用于二维平面的高精度定位导航
开发语言·matlab·平面·uwb·组合导航
禁默8 小时前
零基础全面掌握层次分析法(AHP):Python实现+论文加分全攻略
python·数学建模·matlab
软件算法开发11 小时前
基于火烈鸟搜索算法的LSTM网络模型(FSA-LSTM)的一维时间序列预测matlab仿真
人工智能·rnn·matlab·lstm·一维时间序列预测·火烈鸟搜索算法·fsa-lstm
柏木乃一1 天前
Linux进程信号(2):信号产生part2
linux·运维·服务器·c++·信号处理·信号·异常
DuHz1 天前
汽车雷达高级信号处理和建模技术简介——文章精读(上)
linux·论文阅读·人工智能·汽车·信号处理
简简单单做算法1 天前
基于LSTM长短记忆网络模型的文本分类算法matlab仿真,对比GRU网络
matlab·分类·gru·lstm·文本分类
浩子智控1 天前
高精度高速模拟采集电路挑战
硬件架构·硬件工程·信号处理·dsp开发
dracula0001 天前
通过get()函数获取Simulink模块的所有属性
matlab
dracula0001 天前
simulink建模助手系列-1【批量创建goto和from】
matlab