EmbDev.net

Forum: DSP FIR-bandpass and Hilbert-flter in one?


Author: W.S. (Guest)
Posted on:

Rate this post
0 useful
not useful
hallo together,

today I have a little question: Is it possible to turn a common 
FIR-bandpass into a bandpass with 90 degree phase shift? And if 
possible, how to do?

My usual procedure:
1. make a lowpass for the lower frequency edge (sin(x)/x * Blackmann)
2. make a second lowpass for the upper frequency edge (also sin(x)/x * 
Blackmann)
3. normalize both lowpasses
4. turn the second lowpass per spektral inversion to a highpass
5. add both passes, this makes a band reject pass
6. turn it into a band pass by spektral inversion

This makes all the taps for a decent FIR-bandpass, it works fine for 
even as well as for odd tap numbers, but without any phase shift.

The output is limited to the desired frequency span as requested, so I 
hope it should be possible to add a 90 degree phase shift to it (a la 
Hilbert)

A decent testbench for the a.m. filter I already have written for 
myself, but not yet for a added Hilbert transformation.

so, has anyone a nice idea for this?

kind regards
W.S.

Author: Wolfgang Kiefer (Guest)
Posted on:

Rate this post
0 useful
not useful
Iowa Hills Hilbert Filter Designer Ver 2.3 (free)

I hope, this helps.

Author: W.S. (Guest)
Posted on:

Rate this post
0 useful
not useful
Sorry, no.
I already know the apps from IOWA.
My intention is rather, to be able to calculate the taps at runtime in 
the device. So I need the algorithm raher than the output of a IOWA 
filter app.

thanks and
kind regards
W.S.

Author: derguteweka (Guest)
Posted on:

Rate this post
0 useful
not useful
Moin,

Maybe this recipe works out for you:

All frequencies between 0..1(=Fsample/2)

Lower Band edge: Fa
Upper Band edge: Fb

Calculate:
 Fshift=(Fa+Fb)/2
 Flp=(Fb-Fa)/2

Design Lowpass filter with Flp as usual. Index of its coefficents goes 
from -k...0...+k.
For the Quadrature-BP: Multiply each of its coefficients by 
sin(pi*k*Fshift) (for the Inphase-BP: Multiply with cos(pi*k*Fshift))

Gruss
WK

Author: Christoph Kessler (Guest)
Posted on:

Rate this post
0 useful
not useful
Octave has an open remez algorithm for hilpert FIR
http://octave.sourceforge.net/signal/function/remez.html

Author: W.S. (Guest)
Posted on:

Rate this post
0 useful
not useful
derguteweka wrote:
> Maybe this recipe..

thanks a lot, I will try.

kind regards
W.S.

Reply

Entering an e-mail address is optional. If you want to receive reply notifications by e-mail, please log in.

Rules — please read before posting

  • Post long source code as attachment, not in the text
  • Posting advertisements is forbidden.

Formatting options

  • [c]C code[/c]
  • [avrasm]AVR assembler code[/avrasm]
  • [code]code in other languages, ASCII drawings[/code]
  • [math]formula (LaTeX syntax)[/math]




Bild automatisch verkleinern, falls nötig
Note: the original post is older than 6 months. Please don't ask any new questions in this thread, but start a new one.