Blue and red striped metal ring showcasing an encoder disc.

The What, Which, Where and How of Incremental and Absolute Encoders

by Richard Anslow and Michael Jackson

The previous blog in this series discussed motor encoder technologies (optical, magnetic) and reviewed critical metrics for specifying an encoder in a robot application. This blog looks at the function and operation of absolute and incremental encoders which are based on these technologies, and discusses the relative advantages and disadvantages of each.

What are Incremental Encoders and How do they Work?

An incremental encoder provides information about the position of a shaft relative to its starting point by producing a stream of binary pulses proportional to the rotational movement. Knowing an encoder's resolution (the total number of pulses per rotation) and counting the pulses generated as the shaft rotates, a controller can calculate its speed and position relative to a fixed reference referred to as 'home'. However, a limitation of single-channel incremental encoders is that they can't determine the direction of a rotating shaft. Determining direction requires a dual-channel design that produces two output pulses ("A" and "B"), 90° out of phase with each other (quadrature), and monitoring which channel goes high first. Incremental encoders are well suited for harsh environments because they are robust in the presence of vibrations. However, a significant drawback is that if a system experiences a temporary power outage, the encoder loses track of where it is relative to its starting point and requires resetting to its 'home' location after power is restored. Resetting can be problematic for some applications like, for example, a robot arm performing precision cutting of a metal sheet, which would be unable to continue from its original position, wasting raw material or potentially causing damage.

 Figure 1 Incremental encoder

Figure 1 Incremental encoder

What are Absolute Encoders and How Do They Work?

An absolute rotary encoder provides exact coordinates for the location of a motor shaft during one (or several) revolutions. Coordinates are represented as fixed digital codes, meaning this encoder type can still maintain a record of the shaft position if power fails. Once returned, the system can immediately resume motion without resetting the shaft to its 'home' location. Absolute encoders use a coded disc to create a unique binary representation of each point during a revolution. As the code's disc rotates, the motor control system periodically reads the code and converts it into a multi-bit digital number. By regularly polling the encoder, the controller can determine the position of the rotating shaft and use multiple readings to calculate its velocity. Even if a system misses a location reading, this is not a problem, as the encoder will provide the changed shaft position at the next reading. Many manufacturers provide standard single-turn encoders with 12- or 16-bit resolution, but higher-end models can resolve up to 22 bits. Tracking more than one shaft rotation requires a multi-turn encoder. These have a secondary disk geared to the primary disk, and the secondary disk code increments each time the primary disk completes a revolution. Multi-turn encoders typically provide coordinates for 4096 (12-bit) unique locations for up to 4096 (12-bit) revolutions.

 Figure 2 Absolute encoder

Figure 2 Absolute encoder

Which Type to Use and Where?

The type of encoder to use depends on the application requirements. Incremental encoders are excellent for monitoring speed and direction. They are also easy to integrate and require little maintenance, making them a good choice for less complex and lower-cost applications like monitoring the speed of conveyors in a factory. Whether the appropriate incremental encoder is a single-channel, or a quadrature depends upon whether the application is direction sensitive. Absolute encoders are more suitable for safety-critical applications like high-performance computer numerical control (CNC) machines. Figure 3 shows a signal-chain block diagram for the commonly used optical-based incremental encoder, while Table 1 provides a list of recommended ICs from Analog Devices for each block.

 Figure 3 Signal chain block diagram for an optical-based incremental encoder

Figure 3 Signal chain block diagram for an optical-based incremental encoder

Component

Recommended Part Numbers

MEMS Accelerometer

ADXL371, ADXL372, ADXL314, ADXL375

Temperature Sensor

ADT7320

Power (LDO)

ADP320, LT3023, LT3029

ADC, 12-,16-bit, 24 bit

AD7380, AD7866, AD7760

Precision Op-Amp

ADA4622-4

Dual Comparator

LTC6702

Transceiver (RS-485, RS-422)

MAX22506E, ADM3066E, ADM4168E, MAX22500E

Microcontroller, integrated ADC

MAX32672, MAX32662

Table 1 Recommended ICs from Analog Devices for each block in the signal chain.

The following blog in this series will look at some future trends for motor encoder technologies.