2
\$\begingroup\$

I'm planning on making a robot whose exact location can be tracked, which would be appropriate to use-- an absolute encoder or an incremental encoder and convert the number of rotations to distance traveled?

\$\endgroup\$
  • \$\begingroup\$ What exactly do you have in mind when you say "absolute encoder"? \$\endgroup\$ – Nick Johnson Jul 13 '15 at 14:58
  • \$\begingroup\$ Whichever you choose it will probably not be accurate due to sliding between wheel and surface. \$\endgroup\$ – Chu Jul 13 '15 at 15:57
  • \$\begingroup\$ ... e.g. see: electronics.stackexchange.com/questions/13358/… \$\endgroup\$ – Chu Jul 13 '15 at 16:19
  • \$\begingroup\$ Would a better way around be to use accelerometers and gyroscopes and integrate their readings? But I've read that that might result in significant error in the position!! Is there a better, accurate way? \$\endgroup\$ – user10083 Jul 13 '15 at 16:36
  • \$\begingroup\$ You might look at how they control industrial grass cutters to produce patterns in sports fields. I suspect it's remotely by image processing \$\endgroup\$ – Chu Jul 13 '15 at 17:04
2
\$\begingroup\$

You are probably better off with an incremental encoder.

An absolute encoder will give you the exact position within the encoder's range of travel. For example, a standard single-turn potentiometer could be considered to be an absolute position encoder. You can determine the exact position of the shaft even after power up / power down.

In other words, an absolute position encoder will tell you where you are within the range of travel at any time. If you should remove power, then reapply power, the encoder will still tell you what position the encoder is at.

An incremental encoder simply provides pulses as the encoder is moved, along with direction information.

In general, if the encoder has to move past its full range of motion, an incremental encoder makes more sense.

I'll give a couple of examples.

If your robot has a rotating platform (a head), an absolute position encoder is a good choice. You can read the rotation position of the platform at any time and the reported position will always be accurate.

However, if you are measuring how far the robot has moved by measuring how many times the motor shaft has turned, an incremental encoder is more appropriate.

Specifically, if the encoder shaft has to rotate more than a single turn, an incremental encoder does not provide any benefit. You still have to keep track of how many times the shaft has turned.

| improve this answer | |
\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.