Rotary Encoder Resolution bit-rating

Discussion in 'General Electronics Chat' started by Crusader68, Mar 1, 2016.

  1. Crusader68

    Thread Starter New Member

    Dec 6, 2015
    9
    0
    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.
     
  2. cmartinez

    AAC Fanatic!

    Jan 17, 2007
    3,555
    2,519
    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.
     
  3. WBahn

    Moderator

    Mar 31, 2012
    17,716
    4,788
    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.
     
  4. panic mode

    Senior Member

    Oct 10, 2011
    1,319
    304
    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.
     
  5. cmartinez

    AAC Fanatic!

    Jan 17, 2007
    3,555
    2,519
    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.
     
  6. JohnInTX

    Moderator

    Jun 26, 2012
    2,341
    1,024
    .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: Mar 1, 2016
    cmartinez likes this.
  7. nsaspook

    AAC Fanatic!

    Aug 27, 2009
    2,907
    2,165
  8. AnalogKid

    Distinguished Member

    Aug 1, 2013
    4,518
    1,247
    Wow. Gotta ask what that thing costs in ones...

    ak
     
  9. MaxHeadRoom

    Expert

    Jul 18, 2013
    10,510
    2,369
    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: Mar 2, 2016
    cmartinez likes this.
  10. nsaspook

    AAC Fanatic!

    Aug 27, 2009
    2,907
    2,165
    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.
    [​IMG]

    A coworker is using two I gave him for the position platform motor drive on his telescope.
    [​IMG]
    [​IMG]
    [​IMG]
     
    cmartinez likes this.
  11. Sensacell

    Well-Known Member

    Jun 19, 2012
    1,128
    266
    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.
     
  12. ericgibbs

    AAC Fanatic!

    Jan 29, 2010
    2,501
    380
    hi,
    If you told us what the application is we maybe able to suggest a simpler/less expensive solution.
    E
     
    cmartinez likes this.
  13. MaxHeadRoom

    Expert

    Jul 18, 2013
    10,510
    2,369
  14. Crusader68

    Thread Starter New Member

    Dec 6, 2015
    9
    0
    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
     
  15. MaxHeadRoom

    Expert

    Jul 18, 2013
    10,510
    2,369
    I am not sure who was responsible for that article, but I have a few issues with it, for one the statement::
    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: Mar 27, 2016
    JohnInTX, cmartinez and nsaspook like this.
Loading...