What is an Absolute Encoder : Working & Its Applications

A rotary encoder or a shaft encoder is an electro-mechanical device, used to convert the motion of a shaft, position of angular, or convert the axle to analog/digital output signals. There are two types of rotary encoder like absolute encoder and incremental encoder. These encoders are applicable, where monitoring, controlling, or both are required  For example robotics, industrial controls, photographic lenses, etc. This article discusses one of the types of rotary encoders namely absolute encoder and its working with applications.

What is an Absolute Encoder?

An absolute encoder is used to provide a unique position value of shaft or data word at each point of revolution to represent the “absolute” position of the encoder. These encoders are available in either single-turn or multi-turn. Single-turn encoders are used where position verification is needed whereas multi-turn encoders are used for lengthy or complex positioning-based applications.

Absolute Encoders
Absolute Encoders

This encoder also retains the information on the current position when the power supply is detached from the encoder. The encoder position is accessible instantly once the power supply is given. This encoder includes different code rings through a variety of binary weightings which supply a data word signifying the encoder’s absolute position in a single revolution. So this kind of encoder is frequently called a parallel absolute encoder.

Working Principle

The absolute encoder working principle is, when the shaft rotates, it works by generating a digital word of bit. There are two discs including concentric rings through offset markers. Here, one disc is connected to the central shaft whereas the other moves freely.

Once the disc rotates, then the markers through the path of this encoder will adjust the fixed disc’s position. Every arrangement with an absolute rotary encoder disc signifies a unique binary code. The binary code in this encoder will determine the complete position of the object.

Absolute Encoder Types

There are different types of absolute encoders available which include the following.

Organic Solid Core Absolute Encoder

The organic solid core type is designed with carbon brushes. Its solid resistor body is wide, so it provides a longer mechanical life as compared to a binary encoder. The main function of this encoder is to adjust voltage & current within highly reliable, high wear resistance equipment and also in AC & DC circuits.

The advantages of absolute solid core mainly include high reliability, mechanical life is longer, heat resistance is good, higher power whereas the disadvantages are dynamic noise is high, moisture resistance is poor, accuracy is poor, the temperature coefficient is large & manufacturing process is complicated.

Metal Glaze Absolute Encoder

The matrix composition of this type of encoder is ceramic, whereas the resistor body is designed with sintered metallic glass glaze. This encoder is made with vacuum technology by arranging different materials like metal oxide film, metal composite film, button oxide film, metal alloy film on a ceramic substrate.

The advantages of this encoder include high resolution, less noise electromotive force, etc. The disadvantages are resistor value is small that ranges from 10 ohms to 00 kilo-ohms, mechanical life is less, wear resistance is poor, etc.

Winding Absolute Encoder

Winding type can be designed by using nickel-chromium alloy wire or constantan wire like a resistor & wounded on an insulating frame. This type of encoder is used mainly as a transformer & voltage divider.

The advantages of this encoder include high precision, contact resistance is small, and temperature coefficient is small. The disadvantages are low resistance, the resolution is poor and high-frequency characteristics are poor.

Digital Absolute Encoder

This encoder is a semiconductor IC, used mainly for measurement in 360 degrees of the revolution known as a single-turn encoder. So it is appropriate for audio surround control, home theater system, cable TV equipment & audio amplifier.

The advantages of this encoder mainly include small size, simple to connect, high adjustment accuracy, no noise, software control is easy and its life span is long. The disadvantages are; it is not suitable for harsh and outdoor environments, difficult to overcome the slip while measuring objects within the orbit.

Absolute Encoder vs Incremental Encoder

The difference between absolute encoder vs incremental encoder includes the following.

Absolute Encoder

Incremental Encoder

It includes a unique code for every shaft position to represent the fixed position of the encoder. It is an electro-mechanical device, used to change the angular position of the shaft into a pulse or digital signal.


These encoders require power while using this device. These encoders need power throughout the operation of the device.
Its cost is high as compared to the incremental type. Its cost is less due to less complex
These encoders are used in different applications where controlling, monitoring is required like diagnostic imaging, surgical robotics, etc. These are used in applications where velocity & direction information is necessary


Once the power is lost, it doesn’t lose the information of position. Once the power is lost, the system shows an error.

Servo Motor Control with Absolute Encoder with Arduino

In this section, let us know how to control a servo motor using an absolute encoder with Arduino. The interfacing diagram of servo motor control with absolute encoder is shown in the figure below.

If this encoder is rotated in a clockwise direction, then the rotation of the servo motor is also in a clockwise direction. Similarly, if this encoder is rotated in an anticlockwise direction, then the servo motor also rotates in the anticlockwise direction. Connections are made as per the absolute encoder wiring diagram shown above. The required components are,

Absolute Encoder Interfacing with Arduino Board
Absolute Encoder Interfacing with Arduino Board
  • Arduino
  • Servo motor
  • Absolute encoder
  • Power supply

The supply pin-like ‘Vin’ of the absolute encoder is connected to the 5 Volts supply of the Arduino and the ground pin of the encoder is connected to the Arduino’s ground pin. The data pin of this encoder is connected to the (digital) pin 4 of the Arduino and the clock pin and switch pin of this encoder is connected to the digital pins 3 and 4 of the Arduino.

Then the Vin of the servo motor is connected to the 3.3volts of the Arduino. The ground of the Arduino is connected to the servo motor’s ground. The signal pin of the servo motor is connected to the Arduino’s digital pin. The code to interface encoder with Arduino for servo motor control is given below.

#include <Servo.h>
#define clk 3
#define data 4
#define sw 5
int counter=90;
int state;
int lstate;
Servo s;
void setup()
s.attach(9); (here ‘s’ refers to servo motor)
void loop()
state= digitalRead(clk);
if (state!=lstate)
if(digitalRead(data)!= state)
counter= constrain(counter,1,180);
counter= constrain(counter,1,180);

The library function of the servo motor is included in the Arduino code to run the code. Next, the clock pin, data pin, and switch are defined with 3, 4, and 5 pins respectively. The value of the counter is set to 90. To store the data, state and Istate variables are utilized.

The variable ‘s’ is defined for servo motors. The pins CLK, SW, and data are defined as input pins in the setup function and servo motor attached at pin 9. To monitor the output function on the screen, the serial being function is used. Read the state of the stored data and clock pin in the Istate variable. While in the loop function, the state of the stored data is read in the stated variable. The function limits the counter value between 1-180. Then the function is written to apply the counter value on the servo motor.

Advantages and Disadvantages

The advantages of an absolute encoder include the following.

  • Battery backup is not necessary to avoid data loss.
  • They have different functions like scaling, speed, Fieldbus & preset.
    Magnetic or optical scan measurement.
  • Once power is lost, it provides continuous position monitoring.
  • The flexibility of programming.
  • Interface options are multiple like Ethernet, Analog, Serial, Parallel & Fieldbus.
  • Precision control allows use in different applications where functional safety is required.
  • The exact position of a machine can be determined.

The disadvantages of an absolute encoder include the following.

  • Complicated to manufacture
  • Expensive

Where are Absolute Encoders used/Applications?

These are applicable where controlling or monitoring of mechanical systems is required like the following.

  • Surgical robotics
  • Microelectronics
  • Diagnostic imaging
  • Photonics
  • Radiation therapy
  • Industrial robotics
  • Satellite communications
  • ROVs & UAVs

How do you test the Absolute Encoder?

The absolute encoder testing is used to declare whether that is absolute or incremental. If the encoder has to move to determine its position then it is known as incremental. If the output of the encoder is in a stable position without motion then it is known as absolute.

How do you troubleshoot an encoder?

For troubleshooting an encoder, we need to check the connections, position of the shaft, loose connections, incorrect voltage supply, etc.

What is an absolute angle encoder?

An encoder that measures absolute or true angular position is known as the absolute angular encoder.

What is the difference between encoder and multiplexer?

The encoder is a combinational circuit used to encode a set of binary codes into another set of binary codes including a less number of bits. The multiplexer (mux) is a combinational circuit element that connects one of its several inputs to its single output based on the selection inputs.

Thus, this is all about an overview of an Absolute Encoder, working, advantages, disadvantages, and its applications. Here is a question for you, what are the different types of encoders used in electronic projects.