Free Shipping on orders over US$39.99 How to make these links

How to Build a Programmable Oscillator Using a Digital Potentiometer

Digital potentiometers (digiPOT) are versatile and have a wide range of applications, for example, for filtering or generating AC signals. However, sometimes the frequency must be able to vary and be adjusted according to application needs. In such designs, programmable solutions that support frequency adjustment through the appropriate interface are extremely useful and, in some cases, very helpful to development. This article presents a simple and easy way to build a programmable oscillator in which the oscillation frequency and amplitude can be adjusted independently of each other by using digiPOT.

Digital potentiometers (digiPOT) are versatile and have a wide range of applications, for example, for filtering or generating AC signals. However, sometimes the frequency must be able to vary and be adjusted according to application needs. In such designs, programmable solutions that support frequency adjustment through the appropriate interface are extremely useful and, in some cases, very helpful to development. This article presents a simple and easy way to build a programmable oscillator in which the oscillation frequency and amplitude can be adjusted independently of each other by using digiPOT.

How to Build a Programmable Oscillator Using a Digital Potentiometer

Figure 1. Amplitude Stable Programmable Wien Bridge Oscillator in which resistors are replaced by digiPOTs.

Figure 1 shows a typical diode-stabilized Venturi bridge oscillator that can be used to generate a precise sine wave signal at the output (VOUTPUT) of about 10 kHz to 200 kHz. The Wien Bridge oscillator has two bridges, one consisting of a bandpass filter and the other consisting of a voltage divider. In addition to the ADA4610-1 rail-to-rail precision amplifier, this example uses the AD5142digiPOT, which contains two independently controllable potentiometers, each with 256-step resolution. The resistor value is set through SPI programming, as shown in Figure 2. Alternatively, the AD5142A controlled by the I²C can be used. Both are available as 10 kΩ or 100 kΩ potentiometers.

How to Build a Programmable Oscillator Using a Digital Potentiometer

Figure 2. Functional block diagram of the AD5142.

In the classic oscillator circuit shown in Figure 1, the paths of R1A, R1B, C1 and C2 form positive feedback, while R2A, R2B and the two parallel diodes D1 and D2 or their resistor RDIODE form negative feedback. In this case, Equation 1 can be used:

How to Build a Programmable Oscillator Using a Digital Potentiometer

How to Build a Programmable Oscillator Using a Digital Potentiometer

In order to achieve continuous stable oscillation, the phase shift in the loop gain needs to be eliminated. Expressed as a formula, the oscillation frequency:

How to Build a Programmable Oscillator Using a Digital Potentiometer

How to Build a Programmable Oscillator Using a Digital Potentiometer

where R represents the programmable resistor value on the AD5142:

How to Build a Programmable Oscillator Using a Digital Potentiometer

How to Build a Programmable Oscillator Using a Digital Potentiometer

D represents the decimal equivalent of the programmable digital code in the AD5142, and RAB represents the total resistance of the potentiometer.

In order to maintain oscillation, the Wien bridge oscillator should be relatively balanced, that is, the positive and negative feedback gains must be coordinated. If the positive feedback (gain) is too large, the oscillation amplitude or VOUTPUT will increase until the amplifier saturates. If negative feedback dominates, the oscillation amplitude will decay accordingly.

In the circuit shown here, the gain R2/R1 should be set to around 2 or more. This ensures that the signal starts to oscillate.

However, alternately turning on the diodes in the negative feedback loop also causes the gain to be temporarily less than 2, which stabilizes the oscillations.

Once the desired oscillation frequency is determined, the oscillation amplitude can be tuned independently of frequency via R2. It can be calculated by the following formula:

 How to Build a Programmable Oscillator Using a Digital Potentiometer

Therefore, the variables ID and VD represent the diode forward current and diode forward voltage through D1 and D2, respectively. If R2B is shorted, an oscillation amplitude of about ±0.6 V will result. When the magnitude of R2B is of the correct magnitude, equilibrium is reached, allowing VOUTPUT to converge. In the circuit shown in Figure 1, a single 100 kΩ digiPOT is used for R2B.

in conclusion

Using the described circuit and a 10 kΩ dual digiPOT, the 8.8 kHz, 17.6 kHz, and 102 kHz oscillation frequencies can be tuned with resistance values ​​of 8 kΩ, 4 kΩ, and 670 Ω, respectively, with frequency errors as low as ±3%. Increasing the output frequency may affect the frequency error. For example, at 200 kHz, the frequency error will increase to 6%.

When using such circuits in frequency-dependent applications, care must be taken not to exceed the bandwidth limit of the digiPOT, as this value is a function of the programmable resistance. In addition, the frequency tuning shown in Figure 1 requires the same resistor values ​​for R1A and R1B. However, the two channels can only be set in sequence and result in a momentary critical intermediate state. For some applications, this situation is not acceptable. In these cases, a digiPOT that supports daisy-chain mode (such as the AD5204) can be used to be able to change resistor values ​​simultaneously.

The Links:   CM150RX1-24A LQ6RA02

We will be happy to hear your thoughts

Leave a reply

House idea
Logo
Enable registration in settings - general
Compare items
  • Total (0)
Compare
0
Shopping cart