Injection-lock a Wien-bridge oscillator
|Click here to download a PDF|
I recently had the opportunity to investigate a new micropower 6-MHz LTC6255 op amp driving a 12-bit, 250k sample/sec LTC2361 ADC. I wanted to acquire the FFT of a pure sinusoid of about 5 kHz. The problem is that getting the FFT of a pure sinusoid requires, well, a pure sinusoid. Most programmable signal generators, however, have fairly poor noise and distortion performance, not to mention digital “hash” floors, compared with dedicated op amps and good ADCs. You can’t measure 90-dB distortion and noise using sources that are “60 dB-ish.” So rather than try to find and keep an almost-ideal programmable signal generator, I decided to build up a low-distortion Meacham-bulb-stabilized Wien-bridge oscillator using an ultralow-distortion LT1468-2 op amp (Figure 1).
Figure 1 This Meacham-lightbulb-stabilized, low-distortion, low-noise 5-kHz Wien-bridge sinusoidal oscillator’s RC feedback network attenuates by a factor of 3 at its midband. The bulb’s self-heating forces a gain of 3 in the op amp.
The lightbulb amplitude-stabilization technique relies on the positive temperature coefficient of the bulb impedance stabilizing the gain of the op amp to match the attenuation factor of 3 in the Wien bridge at its center frequency. As the output amplitude increases, the bulb filament heats up, increasing the impedance and reducing the gain and, therefore, the amplitude. I did not have immediate access to the usually called-for 327 lamp, so I decided to try a fairly low-power, high-voltage bulb, like the C7 Christmas bulb shown. At room temperature, it measured 316Ω; fresh out of the freezer (about −15°C), it measured 270Ω. Based on the 5W, 120V spec, it should be about 2.8k at white hot. That seemed like plenty of impedance range to stabilize a gain of 3, so I decided to linearize it a bit with a series 100Ω resistor.
For a gain of 3, the bulb plus 100Ω must be half of the 1.24k feedback (or equal to 612Ω), so the bulb must settle at 512Ω. Roughly calculating a resistance temperature coefficient of (316–270Ω)/[25−(−15°C)]=1.15Ω/°C means that the bulb filament will be about 195°C.
The oscillator powered up fine, giving a nice sinusoidal 5.15-kHz output at several volts, and independent measurements showed the second- and third-harmonic distortion products to be lower than −120 dBc. I applied the oscillator to the LTC6255 op-amp input after blocking and adjusting the dc level and ac amplitude, using the caps and pots as shown in Figure 2. The ac amplitude was adjusted for −1 dBFS, and the dc level was adjusted to center the signal within the ADC range. But, of course, this oscillator was purely analog and had no “10-MHz reference input” on the back to allow it to be synchronized with the ADC clock. The result is substantial spectral leakage in the FFT, so that it looks more like a circus tent than a single spike. Applying a 92-dB Blackman-Harris window to the data to reduce FFT leakage produced a fine-looking FFT (Figure 3).
Figure 3 This 4096-point FFT was achieved using an unlocked oscillator with a 92-dB Blackman-Harris window. Note that the peak does not look like –1 dBFS and that there is power in the bins around the peak.
Although this FFT is accurate in some ways, a closer inspection reveals some problems. For example, the input signal is −1 dBFS, but it certainly looks graphically lower than −1 dB down. The reason is that even an excellent windowing function leaves some of the fundamental power in the frequency bins adjacent to the main spike. The software includes these bins in its power calculations, and rightly so, but the fact is that the spike looks too low to make a good photograph.