Measurement Studio for .NET Languages

cancel
Showing results for 
Search instead for 
Did you mean: 

Multirate Reasmpling (anti aliasing filter)

I'm trying to develop a routine to perform Multirate Resampling of time domain data in VB2005.
 
I have obtained data for our instrumentation recorders and the sample rate is based on recorder speed being 48kHz @ normal speed and integer fractions of this as the speed is lowered.
 
I require the ability to modify this rate to either 51.2kHz or 25.6kHz.
 
If we take the 48kHz to 25.6kHz as an example the procedure outlined is how I think this can be best accomplished: -
 
Assuming that: -
 
a) Fs(a) is the actual or current sampling rate
 
b) Fs(r) is the required sampling rate
 
c) Fc is the Filter cutoff frequency
 
Determine the factors L and M where: -
 
L is the Interpolation Factor
 
M is the Decimation Factor
 
Factor=Fs(r)/Fs(a)=0.53333 therefore L=8 and M is 15
 
 
The resampling Procedure therefore is: -
 
Interpolate by L  (pad each sample by L-1 zeroes)
 
Lowpass filter to Fc
 
Decimate by M (Throw away every 15th sample)
 
 
I therefore need to know the best Lowpass filter and its parameters from the many in the DSP.Filters namespace for the second part of the procedure.  This would be an anti aliasing filter.  In particular I need to know what is the best value to use for Fc or filter cutoff frequency for the Filter.
 
Currently I'm trying the KaiserFirLowpass filter with a Beta of 7.04 and varying the number of coefficients.
 
How do you detrmine Fc the cutoff frequency?
 
When it all shakes down, for the example above, the FFT will return 0-12.8kHz frequency data but I will only use 0-10kHz as is the case for traditional bench top analysers.
 
So I guess Fc should be between 10kHz-12.8kHz is this correct?
 
 
 
      
 
 
0 Kudos
Message 1 of 1
(3,203 Views)