Control accurate incremental voltage steps with a rotary encoder
Experimenting with an HF oscillator, I needed to control the varactor diode voltage in precise increments over a 2V-10V range. A buffered potentiometer was the obvious choice, and connecting two pots in series to give coarse/fine control (or using a multiturn pot) would offer improved control over the varactor voltage. However, this approach still didn’t allow me to generate uniform increments and decrements of the control voltage in a reliable, repeatable manner. I needed a solution that would provide the necessary precision together with complete flexibility over the size of the voltage increments.
I eschewed a microcontroller-DAC arrangement as this would require specialised components and the voltage increments would be dependent on the DAC resolution (and I was too lazy to write the code anyway). A digipot with up-down control was another possibility: this would offer a non-volatile solution like the DAC approach, but again, the increments would be entirely dependent on the pot’s resolution.
The solution documented in this Design Idea can be assembled using inexpensive, readily available components, and the voltage increments are user-definable. An inexpensive rotary encoder is used to control the output voltage – a single step of the encoder increments or decrements the voltage by a precise amount, providing easy up/down control like a conventional pot.
Figure 1 The rotary encoder controls a staircase waveform with precisely defined steps
The outputs of an incremental encoder typically consist of two signals in quadrature (i.e., phase-shifted by a quarter period), which produce a specified number of pulses per shaft revolution, each pulse corresponding to an increment of rotation. Internally, the encoder has two switches connected to a common terminal. This terminal is usually connected to ground, and the two outputs are connected to pull-up resistors (R1, R2). R3/C1 and R4/C2 provide contact debouncing, with IC1a and IC1b producing squared-up signals at points A and B. The encoder should be connected so that when it is rotated clockwise, the rising edge of signal A leads the rising edge of signal B by a quarter period; conversely, when it turns counterclockwise, signal B leads A by a quarter period: