Effacer les filtres
Effacer les filtres

remove frequency from (0-200 hz)

3 vues (au cours des 30 derniers jours)
imran khan
imran khan le 23 Sep 2019
Commenté : Star Strider le 23 Sep 2019
i want to remove frequency from (0-200hz) from frequency domain of signal but i dont know how to do it,after doing this i have to take IFFT of signal to see signal in time domain.please anybody write code to perfom this task.i am pasting my code ypto FFT of signal which works perfectly but i dont know how to proceed futher to remove frequency and then take IFFT of signal
clc,close all,clear all
codn=70;
% fc=6e+3;
fs=36000;
bode=1000;
code=round(rand(1,codn));
code_len=round(1/bode/(1/fs))
for ii=1:codn
x((ii-1)*code_len+1:code_len*ii)=code(ii);
end
x2 = x-(1/2) % get rid of most of the dc peak
% set up time and frequency arrays
fs = 36000;
N = length(x);
delt = 1/fs;
delf = fs/N;
tvec = (1:N)*delt
fvec = (-N/2:N/2-1)*delf % shifted frequency array
figure(1)
plot(tvec,x2(1,:)+0.5)
title('orignal baseband signal')
xlabel('time');
ylabel('amplitude')
ylim([-1 1.5])
time domain.jpg
y = fftshift(fft(x2)/N);
figure(2)
plot(fvec,abs(y))
xlabel('frequency');
ylabel('amplitude')
fft.jpg
  1 commentaire
Star Strider
Star Strider le 23 Sep 2019
Use the highpass function (R2018a and later), or create your own filter. It is relatively easy to do this with the designfilt function.

Connectez-vous pour commenter.

Réponses (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by