Frequency follower - not envelope follower !
Haible Juergen
Juergen.Haible at nbgm.siemens.de
Tue Oct 7 16:27:40 CEST 1997
>Wait up! I cannot hear complex tones, only real ones. This
surely is
>a real valued problem that can be performed by basic trig
identities,
>though I agree that it probably is much faster using complex
>representation arithmetic.
Believe me, it's easier with complex numbers (;->) :
The equations for the Hilbert transform are
y(t) = H{x(t)}, [1a]
Y(f) = jX(f)sign(f) [1b]
The proposed circuit produces:
z(t) = x(t)**2 + y(t)**2 [2]
Factorizing gives (introducing complex numbers here):
z(t) = ( x(t) + jy(t) ) ( x(t) - jy(t) )
and with [1a]:
z(t) = ( x(t) +jH{x(t)} ) * ( x(t) - jH{x(t)} )
With fourier transform, the product becomes a convolution,
which I will write as "conv" instead of using the integral, for
ease of reading. So with fourier transform and [1b] we get
the spectrum of z:
Z(f) = ( X(f) - X(f)sign(f) ) conv ( X(f) + X(f)sign(f) )
- that's where we come back to real numbers in an elegant way.
Now the left part of the convolution term is zero for positive
frequencies, the right part is zero for negative frequencies, which
makes the convolution somewhat easier. If you do it graphically
for a few harmonic spectra, you'll notice this:
For one single frequency (pure sine and cosine), you'll get only one
spectral line at 0, i.e. DC. (This was the envelope detector idea.)
For harmonic signals with a number of N harmonics, you'll get
an output that only contains (N-1) harmonics, *and* the density
of energy is drastically shifted to lower frequencies, especially
to the fundamental of the input signal.
This makes the circuit useless for envelope detection, but
very interesting for frequency detection, where you always
have to fight zero crossings that are caused by other harmonics
than the fundamental.
JH.
PS.: This is written down from *memory* from what I have read
in EN over the weekend. So the idea is not mine, but B.
Hutchin's.
But if there is an error in the equations, it's most probably
mine. I hope you get the idea by reading this, at least.
More information about the Synth-diy
mailing list