How to deal with this error??
7 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Good mind
il 4 Mag 2017
Commentato: Star Strider
il 7 Mag 2017
A model of the surface EMG signal is created by filtering a white gaussian noise, using a shaping filter H(f). this filter has low cut-off freq=60hz and high cut-off freq=120hz. this is my code but i don't know how to deal with Undefined function 'designfilt' for input arguments of type 'char'.
clear all;
subplot(322);
load nnoise.m;
plot(nnoise,'k');
% design shaping filter
bpFilt = designfilt('bandpassfir',...
'CutoffFrequency1',60,'CutoffFrequency2',120, ...
'SampleRate',2000);
subplot(323);
W = filter(bpFilt,nnoise);
plot(W,'k');title ('EMG');
2 Commenti
Adam
il 4 Mag 2017
Do you have the Signal Processing toolbox? If not then you will not have this function.
Risposta accettata
Star Strider
il 4 Mag 2017
The designfilt function was introduced in the R2014a version of the Signal Processing Toolbox.
If you have an earlier version of the Signal Processing Toolbox, this filter will work, since all the functions were introduced prior to R2006a:
Fs = 2000;
notch_frq = [50 60 120 130];
mags = [0 1 0];
devs = [0.05 0.01 0.05];
[n,Wn,beta,ftype] = kaiserord(notch_frq,mags,devs,Fs);
n = n + rem(n,2);
hh = fir1(n,Wn,ftype,kaiser(n+1,beta),'scale');
figure(1)
freqz(hh, 1, 2^17, Fs)
Use the filtfilt function to do the actual filtering of your signal.
See the documentation on the various functions to understand how to use them.
13 Commenti
Star Strider
il 7 Mag 2017
As always, it is my pleasure to help.
The ‘2^17’ is the length of the Fast Fourier Transform that freqz uses to compute the transfer function. I apologise for not explaining that earlier.
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Digital Filter Analysis in Help Center e File Exchange
Prodotti
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!