|
From: | Bob McGwier |
Subject: | Re: [Discuss-gnuradio] AGC loop |
Date: | Thu, 21 Sep 2006 12:20:50 -0400 |
User-agent: | Mozilla Thunderbird 1.0.8-1.4.1 (X11/20060420) |
Eric Blossom wrote:
On Tue, Sep 19, 2006 at 01:36:55PM -0400, Robert W McGwier wrote:Tom:A good agc has at least two time constants. One for attack and one for decay. Your attack is much too slow.tmp = (reference - sqrt(real(y)^2 + imag(y)^2)); rate = rate1; if tmp > gain rate = rate2; gain += tmp*rate;Shouldn't this read:if tmp > reference rate = rate2;^^^^^^^^
I don't think so. If your noisy current observation, tmp, which is an instantaneous measurement on the needed gain to attain reference, is below the current smoothed state, gain, then you are in decay mode. If your instantaneous needed gain observation is less than the current smoothed gain, you are in the attack condition and a different time constant on the smoothing is needed. I am pretty sure what I told him is right. Does it make more sense now?
Bob -- Robert W. McGwier, Ph.D. Center for Communications Research 805 Bunn Drive Princeton, NJ 08540 (609)-924-4600 (sig required by employer)
[Prev in Thread] | Current Thread | [Next in Thread] |