Two main types of encoders – An encoder is a mechanical device that translates an input signal (usually analog) into a series of pulses and outputs corresponding digital values. Encoders are used in many applications, from industrial control systems to consumer-oriented consumer electronics devices such as MP3 players.
Absolute encoders output pulses at precise intervals throughout the input cycle, while incremental encoders output one pulse when the input exceeds a certain threshold level or receives a code.
Most computer-controlled devices use absolute or incremental type encoders to control motors, regulate power consumption, and direct part movements and other mechanized elements.
Absolute encoders are usually used to determine actual rates. A typical example of this use is the speed of a digital camera. The camera's control circuit sends an image to the photo sensor at a specific rate that depends on many factors, such as the number of photons reaching the photo sensor, the photon energy, and other factors. Once the rate has been fixed, it can take photos at precise time intervals to produce time-lapse sequences or still-image sequences (e.g., by using multiple cameras).
Incremental encoders are mostly used in continuous feedback loop applications such as where the target value must continually be met, for example, in compensation control. An example of this application is the control of power consumption in a computer-controlled system.
A typical example of this type would be the use of an incremental encoder to control a brushless DC motor. In this case, the encoder would send a pulse every time the motor’s position changed by a total value. The encoder then uses that pulse number to determine how far and fast it has moved from its original position. This information can then be used to calculate how much power was required for that movement and track the total power consumption over time.
Another example of this type is a watt-hour meter. This type of meter uses an incremental encoder to clock the energy being put into the home’s power system by the generator. The unit then compares the total amount of fuel added with consumed to determine how much power is used in a given period.
Incremental encoders are also used in feedback loops and closed-loop control systems that require the target value to be continually met (such as PID controllers), where the encoder sends a pulse number for every change in position relative to the target, which can then be compared with a predetermined setpoint and output an error signal representative of any discrepancy between these two values. So in the case of a power control system, the encoder would pulse each time the motor changes by an incremental value. This triggers an interrupt in the CPU that calls a routine that adds 1
to the running total if it was forward or subtract one if it was back. No output is sent if the sum is exactly equal to the setpoint. Otherwise, an output pulse is sent. Although this type of encoder uses only one data line and therefore can function using only one wire, many modern encoders send several pulses per revolution instead of just one. This improves the accuracy of the encoder’s measured position but can reduce the speed at which a motor can be turned.
Incremental encoders come in many different types, depending on how they are constructed, and each style has its advantages and disadvantages. The most common types are:
A bipolar incremental encoder, as shown in Fig 1.1, consists of two sets of parallel coils connected to an input low-pass filter. The device is driven by a square wave signal that outputs pulses when positive and negative voltages reach their maximum value at different times during the rising and falling edges, respectively. These pulses reset the device to zero when they get their maximum voltage again.
The output of the encoder is taken from the difference in the resonant frequency of the two sets of coils, which amounts to one-half of a cycle. The device is designed so that when the input and output voltages reach their maximum value at different times, the Q-point (zero crossing) is exactly halfway between them.
A bipolar incremental encoder like this has an inherent time delay equal to 1/2 cycle plus a fixed filter time. This filter time varies with temperature but must be adjusted before it can be used in a control system. For example, if it takes 0.1 ms to reset a control system, then it takes 0.1/2 ms to prepare for the next step in the control process.
In a bipolar incremental encoder, one of the coils is used as an input and one (or both) as an output. This type of encoder does not have a feedback loop, so a control system cannot control it. Instead, there is a feedback path to monitor local changes in the voltage levels of the two coils. The function that uses this type of encoder is usually done by converting it into a bipolar encoder with two outputs – one set of rings connected in series with a second set tuned exactly halfway out from bandpass filters to generate an output signal proportional to how far the magnet has moved. This way, the local zero- the crossing can be used to count the number of lines to determine position.
A ratiometer is an incremental encoder that measures the shaft angle using two sensors. The input signal is sent through a low-pass filter and then split into two paths. One path is delayed by 90 degrees concerning the other and then multiplied together to form an analog readout for that position. This type of encoder has no inherent delay between pulses, so it does not suffer from problems caused by time delays as long as it is not used in a feedback control system.