[ CHAPTER 04 · 15 MIN ]

Motion feedback — encoders, resolvers and load cells

How a machine knows where it is: quadrature counting, the difference between incremental and absolute, single- versus multi-turn, and why load cells need care.

Incremental · absolute · SSI/EnDat · resolver · strain gauge

SERVO · ABSOLUTE FEEDBACKA / B QUADRATURE · 4× DECODEZ INDEX · 1 PULSE / REVWEIGHED VESSEL248.6 kgLOAD CELL · 2 mV/V

0% read · 0 of 9 sections

Incremental encoders and the point of two channels

An incremental encoder outputs pulses as it turns. One channel tells you the shaft moved; two channels 90° apart tell you which way. That phase relationship is quadrature, and it is why encoders have A and B rather than just A.

Because the counter can see all four edge combinations, a controller can count 1×, 2× or 4× the nominal pulses per revolution. A 1024 PPR encoder decoded 4× gives 4096 counts per revolution. Vendors quote both numbers, and mixing them up is the most common cause of a machine that moves exactly four times too far.

Most encoders add a Z (zero, index, marker) channel: one pulse per revolution. That is what a homing routine uses to establish a repeatable reference. Without Z, homing depends entirely on a home switch, and repeatability is limited by that switch.

OutputCable toleranceNotes
Open collector / NPN-PNPShort (a few metres)Cheap, slow edges, easily corrupted near drives
Push-pull (24 V)ModerateCommon on general-purpose industrial encoders
RS-422 differential (line driver)Long (up to 100 m)The right default in a noisy plant — noise cancels in the pair
SSILongAbsolute, clocked serial, simple and widely supported
EnDat / Hiperface / BiSSLongAbsolute plus device data; typical on servo motors
Analog sin/cosModerateVery high interpolated resolution, drive-dependent
Encoder output types

Absolute encoders: knowing where you are at power-up

An incremental encoder counts changes, so its position is only meaningful relative to wherever the counter was zeroed. Cut the power and the count is gone; the machine must home before it can be trusted. An absolute encoder reports its actual angular position on demand, so at power-up the controller already knows where the axis is.

Single-turn absolute gives a unique position within one revolution. Multi-turn adds a gear or battery-backed counter, so it also knows how many revolutions have passed — which is what you need on a ballscrew axis or a hoist where one revolution is a fraction of the travel.

The economics are simple. Absolute costs more per axis and saves you a homing sequence, the mechanics of a home switch, and the production time lost homing after every power cut. On a machine that stops and starts often, or where homing is dangerous or slow, absolute wins quickly.

Resolvers: the sensor that survives the environment

A resolver is a small rotating transformer: an excited rotor winding, two stator windings 90° apart, and outputs whose amplitude ratio gives the shaft angle. There is no glass disc, no LED, no electronics at the sensor — which makes it exceptionally tolerant of heat, shock, vibration and radiation.

That is why resolvers persist in traction motors, presses, foundry equipment and military kit long after optical encoders took over the general market. The price is the electronics at the other end: a resolver needs excitation and a resolver-to-digital converter, so the drive must support it.

Measuring speed without an encoder

Not every axis needs position. If all you need is speed, an inductive proximity sensor watching a toothed wheel, or a Hall sensor watching a magnet ring, gives a pulse train the PLC can measure — either by counting pulses over a window or by timing between them.

Choose the method by speed. At high speed, count pulses per fixed window: the count is large and the resolution is good. At low speed, time the gap between pulses instead, because a fixed window may contain one pulse or none and the reading collapses to a stutter. Many high-speed counter modules do both and switch over automatically; if yours does not, write it that way in code.

  • A zero-speed or motion-detection relay is the standard way to prove a shaft has actually stopped before a guard unlocks — do not infer it from a drive command.
  • A 60-tooth wheel gives one pulse per degree, which makes the arithmetic for RPM trivial: pulses per second = RPM.
  • Watch the maximum counting frequency of the input. A standard DI tops out in the low kilohertz; anything faster needs a high-speed counter channel.

Load cells and torque: measuring force properly

A load cell is a spring element with strain gauges bonded to it in a Wheatstone bridge. Under load the element deflects microscopically, the gauge resistances change, and the bridge produces a tiny differential voltage — typically 2 mV per volt of excitation at full scale, so about 20 mV at 10 V excitation for the whole range.

Millivolts is why load-cell wiring is unforgiving. Use a proper weighing transmitter or a dedicated strain-gauge card, keep the cable screened and continuous (a junction in a load-cell cable is a calibration change), and use 6-wire sense connections on long runs so excitation drop at the cell is compensated.

Most weighing problems are mechanical, not electrical. Rigid pipework into a weighed vessel carries load away from the cells; a stay rod tightened during maintenance changes the calibration; thermal expansion of a frame shows up as slow drift. Flexible connections, correct mounting kits and a repeatable check weight solve more weighing tickets than any amount of filter tuning.

Wiring feedback so it survives the drive next to it

Feedback cable shares a machine with the noisiest device in it — the drive that is following it. The mitigations are the same as chapter 1, applied more strictly: differential (RS-422 or the vendor's serial protocol) rather than single-ended output, screened cable with the screen clamped at the drive end, and separation from motor cable along the entire route, not just in the cabinet.

Use the pre-made feedback cable from the drive vendor where one exists. It is not brand loyalty: those cables have the correct pair grouping, screen construction and connector shell bonding, and hand-built substitutes are behind a large share of intermittent position-loss faults.

  • Never run feedback in the same multicore as motor power or brake supply.
  • A brake released through the same conduit as the feedback cable is a common cause of a single count error per release.
  • Position-loss faults that only appear on rapid moves are almost always noise or a marginal cable, not a controller bug.

[ WHEN IT GOES WRONG ]

The faults this chapter's hardware actually produces, with the cause and the fix.

  • Axis moves exactly four times the commanded distance

    Cause · Counts per revolution entered as PPR while the counter decodes 4× quadrature (or the reverse).

    Fix · Set the scaling to the decoded counts, not the nameplate PPR: 1024 PPR at 4× is 4096 counts per revolution.

  • Position drifts a little further each cycle in one direction

    Cause · Missed counts from noise, a marginal cable, or a mechanical coupling slipping.

    Fix · Check the Z pulse against a known reference each revolution. If Z stays consistent, the loss is mechanical; if Z also wanders, it is electrical.

  • Machine loses position after every power cut and must be homed

    Cause · Incremental feedback — that is its normal behaviour.

    Fix · Accept and automate homing, or fit a multi-turn absolute encoder and remove the homing sequence entirely.

  • Encoder faults appear only when the drive accelerates hard

    Cause · Coupled noise on single-ended outputs, or a screen not bonded at the drive end.

    Fix · Move to RS-422 differential output, use the vendor feedback cable, and clamp the screen 360° at the drive.

  • Weight reading will not return to zero when the vessel is empty

    Cause · Mechanical restraint — rigid pipe, tight stay rod, or debris under a mount.

    Fix · Free the restraint, refit flexible connections, then re-tare and verify with a check weight.

  • Speed reading stutters between a value and zero at low RPM

    Cause · Counting pulses in a fixed window that sometimes contains no pulse.

    Fix · Switch to period measurement (time between pulses) below a threshold speed, or add teeth to the sensed wheel.

[ WHICH ONE DO I BUY? ]

Real selection questions, answered the way a colleague would answer them.

  • Incremental or absolute for a new servo axis?

    Absolute, unless the axis is genuinely trivial. Modern servo motors ship with absolute feedback as standard, and the removed homing sequence simplifies both the program and the risk assessment.

  • Single-turn or multi-turn absolute?

    Single-turn is enough when one revolution covers the whole travel — a rotary table or an index drum. Anything geared, a ballscrew, or a hoist needs multi-turn, otherwise the controller cannot tell revolution three from revolution four.

  • Encoder or resolver?

    Encoder for almost everything, because resolution and integration are better and drives expect it. Resolver where the environment kills electronics: high temperature, severe shock and vibration, traction and press applications.

  • Do I need a high-speed counter card?

    Work out the maximum pulse frequency: PPR × decode × max RPM ÷ 60. A 1024 PPR encoder at 4× and 3000 RPM is 204.8 kHz — far beyond any standard DI, so yes. Under a few kilohertz, a standard input with an interrupt or a fast task will cope.

[ CHECK YOURSELF ]

Six questions. Every answer explains itself, pass or fail.

Module quiz

6 questions. Answer them all; each answer explains itself whether you get it right or wrong.

  1. Q01

    A 2500 PPR incremental encoder is decoded 4×. Counts per revolution?

  2. Q02

    What does the Z (index) channel provide?

  3. Q03

    A ballscrew axis must know its position at power-up. What feedback do you specify?

  4. Q04

    Why choose RS-422 differential encoder outputs in a plant full of drives?

  5. Q05

    A weighed vessel reads stable but will not zero when emptied. Most likely cause?

  6. Q06

    Maximum pulse frequency of a 1024 PPR encoder, 4× decode, at 1500 RPM?

Score: 0 / 6