# Thread: linear encoders?CPR? 1000 vs 500

1. ## linear encoders?CPR? 1000 vs 500

Can someone simply explain how a linear encoder works on a servo, primarily in regards to picking the 1000CPR vs 500 vs 250 etc... Shed some light
Thanks!

2. Linear differential encoder is no different from a rotary differential type, the rotary style represents so many pulses/rev which equates to so many pulses/inch, the same with a linear style, one motor revolution will represent so many pulses of linear travel, it really depends on what resolution you require in both cases.
Al.

3. See when i hear resolution i think accuracy but from what i have read that is not correct, and a common noob mistake (like myself). How do i figure out what resolution i need and how to correctly pick the right CPR rating 200,500,1000, etc.

Thanks Al!

4. Originally Posted by diyengineer
Can someone simply explain how a linear encoder works on a servo, primarily in regards to picking the 1000CPR vs 500 vs 250 etc... Shed some light
Thanks!
Well, I think you are messed up somewhere on your terminology. A servo does not have a linear encoder. A servo has a rotary encoder. A linear encoder is a long scale with the read head moving along its length.

Regarding resolution to select, at minimum, you select your resolution to be equal to your minimum mechanical resolution. If you think your mechanical resolution will be .001", then select an encoder that will give you that count (or close to it). If you are going for better accuracy, try to pick a resolution that is a factor of 10 better in resolution.

Example: You are building a good mechanical machine with tight ball screws and good ways. You want the machine to hold .001" repeatability and accuracy. Select an encoder that will have a resolution of .0001"

In order to work that out, you have to know the mechanical ratio between one revolution of the motor and one inch of travel on the machine.

Chris

5. Originally Posted by Chris D
Well, I think you are messed up somewhere on your terminology. A servo does not have a linear encoder. A servo has a rotary encoder.
Although a servo does not necessarily HAVE to have a rotary encoder.
A linear or scale encoder can be used in place of rotary.
Problems arise when backlash exists, then an encoder on the motor as well as the scale is used to split the PID loop, i.e. dual feedback system.
Al.

6. lol sorry i meant rotary encoder like below.
Thank you everyone!

US Digital: E5S-200-250-EG-PKG2
Individually Packaged Shaft-Mount Optical
Encoder with latching connector, 200 CPR, fit
1/4" diameter shaft. Molded mounting ears for
1.812" bolt circle

7. Many moons ago, I got some information from Mariss re the sizing of encoders for a servo.

To wit:
"Determine what is your software's maximum step pulse rate. It'll be published somewhere. Convert your motor no-load RPM into revs per second (divide RPM by 60)
and divide that by 4. Divide that into your software's max step frequency. The result will be the maximum encoder line count.
Pick the next lowest standard mfg encoder line count. In other words, if your result is 566.66 lines, pick a 500-line encoder."

Hope this helps sort out some of the confusion.

8. Originally Posted by diyengineer
lol sorry i meant rotary encoder like below.
Thank you everyone!

US Digital: E5S-200-250-EG-PKG2
Individually Packaged Shaft-Mount Optical
Encoder with latching connector, 200 CPR, fit
If you still intend going with Galil as per your previous posts, these will be quite low resolution, most of the Galil products now are ~12Mhz.
I use some of the older legacy cards and even they are rated at velocity 8Mhz.
I generally never use lower than 2000cpr, depending on the application/reduction etc.
Al.

Oops, I think I made a mistake about the Galil reference, I was thinking of another post, sorry.

9. If you pick a high resolution encoder, you should consider a drive with a step multiplier built in. This will give you some flexibility as to the pulse frequency you'll need to generate. The G320X, G340, Granite VSD-E, and others have this feature.

Steve

10. Originally Posted by Al_The_Man
If you still intend going with Galil as per your previous posts, these will be quite low resolution, most of the Galil products now are ~12Mhz.
I use some of the older legacy cards and even they are rated at velocity 8Mhz.
I generally never use lower than 2000cpr, depending on the application/reduction etc.
Al.

Oops, I think I made a mistake about the Galil reference, I was thinking of another post, sorry.
In general though you always run atleast 2000cpr?

11. You've got to consider the resolution you need and the pulse stream that Mach can generate. 500 CPR encoders will actually require 2000 steps (in quadrature) to move the motor one revolution. That's like a stepper in 10x micro-stepping.

Assuming .2 pitch screws, that's a potential resolution of 1/10,000". Do you need more than that? Remember we're talking rolled ballscrews, etc.

Also, assume your computer (running Mach) can generate a 60KHz pulse stream, that's 60K steps/second or 30 rev/sec or 6 in/sec or 360 IPM (with .2 pitch screws). Many computers can do better than that, but that's already getting close to your max feedrate (screw and software limited) without going to something like a Smooth Stepper.

I had mentioned the step multiplier before because it allows you to start with a higher resolution encoder (like a 2000 CPR), but "dumb" it down to a 500 CPR encoder by selecting the 4x step multiplier.

These are the reasons most DIY machines end up using encoders in the 200-500 CPR range, although sometimes a bit higher. Al's reference to 2000 CPR encoders is probably due to the fact that he is working on much higher end equipment that can support those speeds and resolution.

Steve