#matlab# 简单实验之采样测得频率值

参考连接:https://ww2.mathworks.cn/help/matlab/math/basic-spectral-analysis.html
注:生成的波形周期个数越多,得到的频谱越尖。增大tt可以使频谱更纯粹。
在这里插入图片描述
wx = 2pi f * x

%% matlab 采样,FFT,得到频率
FFSS = 4000;%采样频率
FF = 200; %200Hz 
TT = 1/200;%0.005 s

QQ = 0; %相位
tt = 0:   1/FFSS:   TT*20-1/FFSS;
Ssin = sin(2*pi*FF*tt+QQ);
figure
subplot(2,1,1);
plot(tt,Ssin);

fft_Ssin=fft(Ssin);
n =length(fft_Ssin);
f = (0:n-1)*(FFSS/n);     % frequency range
power = abs(fft_Ssin).^2/n;
subplot(2,1,2);
plot(f,power);

在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于压力传感器测得的离散数据进行滤波降噪,可以采用以下步骤: 1. 读取数据并绘制原始信号的时域波形,例如: ```matlab data = load('pressure_data.txt'); % 读取数据文件 x = data(:,2); % 取出需要处理的信号 t = data(:,1); % 取出时间向量 subplot(2,1,1); plot(t, x); xlabel('时间'); ylabel('压力信号'); title('原始信号'); ``` 其中,假设数据文件中第一列为时间向量,第二列为压力信号。 2. 对原始信号进行FFT变换,并绘制其频域波形,例如: ```matlab Fs = 1000; % 采样率为1000Hz N = length(x); % 信号长度 X = fft(x); f = (0:N-1)*(Fs/N); subplot(2,1,2); plot(f, abs(X)); xlabel('频率'); ylabel('幅'); title('原始信号的频域波形'); ``` 3. 设计低通滤波器,并使用filter函数对信号进行滤波,例如: ```matlab fc = 50; % 截止频率为50Hz N = 50; % 滤波器阶数为50 b = fir1(N, fc/(Fs/2)); y = filter(b, 1, x); ``` 其中,fir1函数用于设计低通滤波器,filter函数用于对信号进行滤波。 4. 绘制滤波后的信号的时域波形和频域波形,例如: ```matlab subplot(2,1,1); plot(t, y); xlabel('时间'); ylabel('压力信号'); title('滤波后的信号'); Y = fft(y); subplot(2,1,2); plot(f, abs(Y)); xlabel('频率'); ylabel('幅'); title('滤波后的信号的频域波形'); ``` 以上就是对压力传感器测得的离散数据进行滤波降噪的基本步骤,可以根据具体情况对滤波器的参数进行调整。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值