Very basic question about fir1 command

4 visualizzazioni (ultimi 30 giorni)
I'm all new to Matlab and everything including, i was taking some classes to learn matlab and signal processing and there was this question that my teacher asked during an exam and i still havent figured it out . She basically gave us a signal ;
t=0:1/500:0.3
n=cos(2*pi*10*t) + sin(2*pi*50*t);
and asked us to design a FIR filter with 32-order and then plot the signal. There's no other explanation, i'm assuming i should use fir1 command but i'm not sure how. If you guys help me, that'd really help.

Risposta accettata

Star Strider
Star Strider il 30 Giu 2022
Probably something like this —
t=0:1/500:0.3;
n=cos(2*pi*10*t) + sin(2*pi*50*t);
Fs = 500;
Fn = Fs/2;
b = fir1(32, 25/Fn);
figure
freqz(b, 1, 2^16, Fs)
n_filt = filtfilt(b, 1, n);
figure
plot(t, n)
hold on
plot(t, n_filt)
hold off
grid
legend('Original Signal','Filtered Signal', 'Location','best')
Experiment with it!
.
  2 Commenti
Star Strider
Star Strider il 30 Giu 2022
My pleasure!
If my Answer helped you solve your problem, please Accept it!
.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Time-Frequency Analysis in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by