FIR de disseny - mètode de convolució

C

claudiocamera

Guest
Em vaig trobar amb el següent error en el disseny de FIR utilitzant la finestra i les tècniques de convolució.

Projecte d'un filtre FIR utilitzant una finestra de Hamming per aconseguir les especificacions següents:

Pas de Banda 0,3-3,4 kHz
Stopband 0-0,2 i 4/8 kHz
Atenuació Stopband> 25 dB
Freqüència de mostreig 32 kHz

Des que la banda de transició és diferent, per tal de resoldre el problema cal construir un filtre de pas baix, llavors un filtre de pas alt i aplicar convolució al seu coeficient, amb aquest procediment és possible trobar un filtre de pas de banda.De realitzar aquests passos, em vaig trobar amb un gràfic de magnitud correcte, però un complot fase estranya.

A continuació presento el codi de MATLAB.Li agrairia si algú pogués córrer compte del que està malament.

Tot i la fase trobat és lineal, com requerit pels filtres FIR, és inversa del que hauria de ser, a més, és tota la banda fins Fs / 2, normalment la fase és lineal només a la banda de pas, que per què s Crec que hi ha alguna cosa malament.

Es tracta d'un problema acadèmic que he de crear un codi i no se'm permet utilitzar fir1 COMAND, ni Remez, fir2 o qualsevol altre, sé que puc resoldre aquest problema utilitzant fir1 comandament, però que no és el punt, la solució ha de ser donada a través de convolutioning els dos coeficients de filtre, de manera que, he de esbrinar el que està malament amb el codi de MATLAB que segueix:

dades generals%
Ap = 3;
Com = 25;
Fs = 32.000;

%, Tenint la menor ondulació
dp = (10 ^ (Ap/20)) -1; ds = 10 ^ (-As/20);
d = min (DP, DS);
Com = -20 * log10 (d);

Pasabajos%:

fp = 3.400;
fs = 4000;La normalització de les freqüències%

FPN = fp / F;
fsn = fs / F;
WCN = 2 * pi * FPN;

% Filtre per la finestra de Hamming
N = Ceilan (3.3 / (FSN-FPN));

Finestra de Hamming%
WD = Hamming (N,-1);

Filtre ideal%
na = 1: (N-1) / 2;
= 2 * FPN hd * sin (* Na. WCN). / (* Na. WCN);
Hdn = [fliplr (HD) 2 * FPN HD];

finestres%
HN = hdn .* WD;Highpass%

FP1 = 300;
FS1 = 200;

La normalització de les freqüències%

fpn1 = fp1/Fs;
fsn1 = fs1/Fs;
wcn1 = 2 * pi * fpn1;

% Filtre per la finestra de Hamming
N1 = ceil (3.3 / (fpn1-fsn1));

Finestra de Hamming%
WD1 = Hamming (N1);

Filtre ideal%
Na1 = 1: (N1-1) / 2;
HD1 =- 2 * fpn1 * sin (na1. * wcn1). / (Na1. * wcn1);
hdn1 = [fliplr (hd1) 1-2 * fpn1 hd1];

finestres%
HN1 = hdn1 .* WD1 ';

Filtre de pas de banda COEFICIENTS%

H = conv (HN1, HN);

Representació gràfica de% de resposta de freqüència

(freqz H, 1512, fs);

 

Welcome to EDABoard.com

Sponsor

Back
Top