What is an encoder?
An encoder is an electro-mechanical device that converts angular position or motion of a shaft or axle to a digital output. There are two main types of encoder: absolute and incremental. The output of absolute encoders indicates the exact position of the output shaft by reading the absolute encoder bits. The output of incremental encoders provides information about the motion of the shaft, which is typically further processed elsewhere into information such as speed, distance, and position.
As we can see from the above picture, The LED will emit the light through the 2 encoder slits. The two encoder slits will be for the A phase and B Phase. The A phase and B phase has an offset, so we would be able to determine the direction of the rotor shaft, by examining the encoder output. Because there is an offset on the slits, the output will have an electrical offset as well. We would be able to determine the direction of the motor (CW or CCW) by monitoring the A channel and B channel. Example, if A channel is leading, motor is going CW direction, and if B channel is leading, motor is going on CCW direction.
Not only that we can monitor the direction of the motor, we can determine the output speed by examining the frequency of the pulse. By monitoring the number of pulses, we can also determine position. The example above is based off a 2 channel type incremental encoder.
As we can see from the pictures above, this particular absolute encoder is an 8 bit absolute encoder. The different colors above are to represent the different bits. The outer most portion of the encoder would be the 1st bit (Yellow), and the inner most portion would represent the 8th bit (Gray).
How does it work? How an absolute encoder detects the exact position and not lose information when powered down?
Unlike an incremental encoder, and absolute encoder will look at the bit value instead of using the bit as a counter to count the number of pulses. From the example above, the red line would mark the position of rotor. An absolute encoder would detect the light that passes through the slits bits. And if the light passes through, the bit will be high, and if the light does not pass through bit will be low. Looking at Bit 1, 3, 6 we can see that light will pass through, and hence the output bit will be 00100101. Based on the binary bit output, we would be able to detect the exact position of the rotor.
1 post • Page 1 of 1