How to generate a bandpass signal in Matlab and sample it ?

12 次查看(过去 30 天)
I am trying to write a code that samples a bandpass signal with proper sampling frequency. I tried bandpass function but failed.

回答(1 个)

Nithin Kumar
Nithin Kumar 2023-6-8
Hi Abhishek,
I understand that you are facing an issue while generating a bandpass signal in MATLAB.
To generate a bandpass signal with proper sampling frequency using MATLAB, kindly refer to the following example:
fs = 1000; % sampling frequency in Hz
t = 0:(1/fs):1; % time vector
noise = randn(size(t)); % generating white noise with normal distribution
[b,a] = butter(2, [50/(fs/2), 200/(fs/2)], 'bandpass'); % generating filter coefficients for a 2nd order bandpass filter with a passband between 50Hz and 200Hz
x = filter(b,a, noise); % applying filter to noise signal
figure;
plot(t,x);
xlabel('Time (s)');
ylabel('Amplitude');
title('Bandpass Signal');
For more information regarding the "butter" and "filter" functions, kindly refer to the following documentation:
I hope this answer helps you.

Community Treasure Hunt

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

Start Hunting!

Translated by