Rotary Encoder Resolution bit-rating

Joined Dec 6, 2015
12
I'm in process of selecting a rotary encoder for a project I'm working on and I could use some help. My confusion stems from the tendencies of different brands expressing the specs of their products differently, some simply state the angular resolution of the encoders and other show bit-rating.
Is there a linear relationship between the two measurements? Or are there other factors that need to be accounted to calculate angular resolution from bit-rating?
I need to have at least 0.01deg resolution for my application, which would be in the higher end of what can be accomplished by the magnetic rotary position sensors I'm thinking of using.

cmartinez

Joined Jan 17, 2007
6,679
I'm in process of selecting a rotary encoder for a project I'm working on and I could use some help. My confusion stems from the tendencies of different brands expressing the specs of their products differently, some simply state the angular resolution of the encoders and other show bit-rating.
Is there a linear relationship between the two measurements? Or are there other factors that need to be accounted to calculate angular resolution from bit-rating?
I need to have at least 0.01deg resolution for my application, which would be in the higher end of what can be accomplished by the magnetic rotary position sensors I'm thinking of using.
You're asking for at least 15-bits of resolution for your project. That is a very ambitious undertaking.
Perhaps you could take a look at some of the sensors available from Avago Technologies.

WBahn

Joined Mar 31, 2012
25,115
It's been quite some time since I've looked at encoder specs, so I may be way out in left field here, but I think by "bit rating" you might be referring to how many bits there are in the output of the encoder which would normally represent the number of states in one full revolution. So it was a 10-bit encoder there would be 2^10 = 1024 states in one revolution, which would give a nominal resolution of 0.35°. To get a resolution of 0.01° you would need at least 36000 states which would require a 16-bit encoder (which has 65536 states compared to the 32768 states of a 15-bit encoder). Note that by saying "at least 0.01°" you are precluding the use of a 15-bit encoder because it would only achieve a bit better than 0.11°, which you are indicating isn't good enough).

Do you need a full revolution or do you just need a partial revolution? If only a partial, then you could gear things so that you can get the resolution you want over a smaller arc. For instance, if you only needed 90° then you could get the needed resolution with only 14 bits, which seems a lot more doable.

panic mode

Joined Oct 10, 2011
1,812
and what is the max RPM of the device you are monitoring? probably low if you are looking at high res.... but still needed info.

cmartinez

Joined Jan 17, 2007
6,679
Some encoders are also capable of delivering absolute position through a serial interface. And the "bit rating" term applies to the speed at which they're capable of delivering that information.
Another thing you have to consider is your maximum speed, and see if it's within the working range of the encoder that you decide to use.

JohnInTX

Joined Jun 26, 2012
3,949
.01deg is 36000 PPR. Pretty stout. Here are a couple of hits from searching 'precision rotary encoder'. You're pushing the edge of optical, I would think and you'd definitely need 4X decoding. The inductive one looks pretty cool.

With optical encoders, 4X decoding means that you get the max resolution if you can detect all changes of the 2 phase outputs. Some lesser logic only triggers on one phase change, looking at the other one for direction. Doing it that way loses half the resolution. Simple logic only takes one edge of one phase as the trigger giving 1X resolution and wasting the other 3 state changes. A common decoder is to use a uC with an interrupt-on-change feature that interrupts the processor on any phase change. By combining the two 'new' bits with the two 'old' bits, you get full decoding and max res.

http://www.gurley.com/Encoders/rotinc.htm
http://www.zettlex.com/products/incoder/?gclid=CNPHqpr2oMsCFYkCaQodBmgG_g

Good luck!

EDIT: FWIW, you can determine the bit resolution required by noting the discrete steps per rev and calculating:

log(steps) / log(2)

For 36000 steps, @cmartinez is (almost) correct. (sorry, pal)
log(36000)/log(2) = 15.13 so 16 bits.
Note that the steps / rev is the decoded steps/rev. If you have a lame decoder, you don't get the resolution.

EDIT2: stumbled across this which addresses the different encoding schemes:
http://machinedesign.com/sensors/basics-rotary-encoders-overview-and-new-technologies-0

Last edited:

AnalogKid

Joined Aug 1, 2013
8,259
Wow. Gotta ask what that thing costs in ones...

ak

Joined Jul 18, 2013
19,773
There are basically three types of rotary encoder, the 9 bit and up parallel output, the Quadrature encoder, and quadrature sine wave, which is basically the same as a resolver.
Both sine wave examples use the Arc-tangent calculation for high resolution.
The two pulse optical Quadrature digital are among the most popular and now go to 100K P/rev resolution.
US Digital make fairly economical optical encoders.
(The machine Design article does not explain completely the method used to decode the quadrature resolution using the Moiré effect).
Max.

Last edited:

nsaspook

Joined Aug 27, 2009
6,730
Wow. Gotta ask what that thing costs in ones...

ak
A factory refurb is about 2500 on ebay.

I've got a few in my junk pile at home from some obsolete equipment that still work.

A coworker is using two I gave him for the position platform motor drive on his telescope.

Sensacell

Joined Jun 19, 2012
2,544
Can you place the encoder up-stream in your drive train? before a gear reduction?
The only issue there becomes drive train backlash.

Then you could use an encoder of lesser resolution.

ericgibbs

Joined Jan 29, 2010
9,382
hi,
If you told us what the application is we maybe able to suggest a simpler/less expensive solution.
E

Joined Dec 6, 2015
12
Sorry for the delay in my response, school has been demanding most of my time lately(thank Jesus for Spring Break!).
WBAHN: I only need 0-90° rotation range with this project.

Seems like optical encoders tend to be significantly more expensive than magnetic or capacitance encoders. Avago make a 16bit magnetic encoder, AEAT-6600-T16, that can be had for ~$8. Interface seems to be difficult, or would be for me, and the references I've found of others trying to use this IC are not very encouraging as most seem to have nothing but problems. What about using a precision potentiometer as a rotary encoder? Novotechnik has a couple different units that they claim to have resolution down to 0.007°, like this one http://www.novotechnik.com/pdfs/P6500.pdf I don't know what they sell for, I'm sure not cheap. Whilst surfing eBay I came across a sensor unit by SOC Robotics(never heard of them), model RP12, which they claim is 16bit resolution and capable of 0.01° res. It's based on the 3382 sensor from bourns with a ads1100 ADC. My concern is that the datasheet for the 3382 sensor lists it's linearity as +- 2% but under resolution it lists "Essentially Infinite", how is that possible? I emailed SOC about info on their sensor but they never responded. If the RP12 is capable of 16bit, then it would be by far the most economical option at$25. Any thoughts? Here's the specs http://www.soc-robotics.com/pdfs/RP12 Technical Reference Manual.pdf

Joined Jul 18, 2013
19,773
EDIT2: stumbled across this which addresses the different encoding schemes:
http://machinedesign.com/sensors/basics-rotary-encoders-overview-and-new-technologies-0
I am not sure who was responsible for that article, but I have a few issues with it, for one the statement::
For industrial applications, incremental encoders (used when only relative position is needed, or cost an issue) are typically used with ac induction motors.
In contrast, absolute encoders (which give a different binary output at each position, so shaft position is absolutely determined) are often paired with permanent-magnet brushless motors in servo applications.
Incremental encoder have been in use almost from 'day one' for CNC servo application, primarily at first with DC brushed, later with BLDC with the inclusion of Hall equivalent commutation tracks.
The absolute encoder has generally been used where power up position has to be known without the need for zeroing and generally found in robot applications.
Also the simplified description of the optical detection system used in incremental encoders does not indicate that unless a technique using the Moiré effect, that trying to read anything above around 200 counts/rev is impossible with a optical encoder without this effect.
Which BTW, now go up to 100,000 counts/rev.
Also for a long time the detection has been left as two sine waves and the arc-tangent method often used to detect even higher resolution than quadrature pulses x 4.
Max.

Last edited: