Rotary Encoder Pulses to DC voltage

Join the discussion
Ask a follow-up here, or get your own question answered by working scientists, mathematicians and engineers — people, not an autocomplete.
Real named experts · corrections over time · the nuance an AI answer skips
5 replies · 6K views
Mindscrape
Messages
1,854
Reaction score
1
Does anybody know a good way to take the pulses from a rotary encoder and turn them into a DC voltage that would go up for clockwise turning and down for counterclockwise turning? I have the A and B pulses from the encoder, and that's about it as of yet. I also have these chips
http://www.lsicsi.com/pdfs/Data_Sheets/LS7183_LS7184.pdf
and was thinking I could do something similar to what the datasheet suggested: use a digital potentiometer to get a linear gain from an inverting op amp. The only thing is that the AD digital pot they listed doesn't have the resolution I want, and the part count is starting to get up there.

I know this must be pretty standard from the perspective of robotics, and I'm thinking that there must be a good way to get an analog readout of the shaft position that I just haven't come up with yet. Any suggestions?
 
Engineering news on Phys.org
I would take a micro-controller with a DAC function for this. It should be the simplest and quickest way to get this up and running.

I'm not sure what type of resolution you want, but 10-12 bit DACs should not be a problem to find in a mcu.
 
You could run the UP and DN clocks into independent integrators -- diode, resistor, capacitor -- with appropriate time constants, and then to the + & - inputs of an opamp. But it's probably too much of a kludge.

I don't know of a "pretty standard" robotics use for this. Motor controllers I've worked with do the tracking digitally, so I second mdjensen22's micro-controller suggestion. You might do some google-digging for early quadrature schematics and see if there's anything of interest.
 
Run the A and B outputs into the clock and D inputs on a D type flip flop. Q and /Q will switch states when the direction of rotation changes.
 
Mindscrape said:
Does anybody know a good way to take the pulses from a rotary encoder and turn them into a DC voltage that would go up for clockwise turning and down for counterclockwise turning?

The micro-controller suggestion is a good one.

Another option is to use an N-bit counter and a DAC. Many counting chips will count up or down. So, connect the outputs of your Quadrature Clock Converter to the up/down inputs of a binary counter. Then the binary counter feeds the DAC.

example parts that might work:
74F579 8-bit binary counter
DAC0808 8-bit D/A converter
 
asynchronous13 said:
The micro-controller suggestion is a good one.

Another option is to use an N-bit counter and a DAC. Many counting chips will count up or down. So, connect the outputs of your Quadrature Clock Converter to the up/down inputs of a binary counter. Then the binary counter feeds the DAC.

example parts that might work:
74F579 8-bit binary counter
DAC0808 8-bit D/A converter

Yeah, I think I will end up doing something like this because while I have a microcontroller handy, it only has an ADC, not a DAC. Plus I can get handy surface mount parts with counters and DACs this way. Thanks for all the suggestions everybody!