Selecting a Magnetostrictive Displacement Sensor: 4-20 mA Analog or CANopen Fieldbus?
When buying a magnetostrictive displacement sensor, the first question that cannot be avoided is: analog or fieldbus for the signal output? The two are not a matter of "whichever is more advanced is more suitable", but of your control system and operating conditions. The boundaries of each are set out below.
When analog output (4-20 mA / 0-10 V) is the right choice
Analog is the traditional but most robust approach. The sensor converts position into a standard current or voltage and feeds it directly into a PLC analog input module.
- Advantages: simple wiring; almost any PLC has analog inputs; a low commissioning threshold — a multimeter is enough to measure; low cost per point; the 4-20 mA loop adds a live-zero open-line check, since the reading falls below 4 mA on a broken wire and 0 V cannot be told from a true zero.
- Disadvantages: resolution is limited by the PLC's ADC bit depth (commonly 12–16 bit); one channel takes only one signal, so multi-axis machines need more cabling; long runs suffer voltage drop and temperature drift; immunity is only moderate, and running alongside power cables invites crosstalk.
Products such as the Series 191 analog suit single-axis machines, retrofits and cost-sensitive applications.
When fieldbus output (CANopen / Profibus / EtherCAT / PROFINET) is the right choice
The bus packs position data into digital telegrams and hangs multiple devices on a single communications cable.
- Advantages: digital transmission and high resolution (16 bit and above is readily achieved); one bus can carry dozens of axes, saving cable and cabinet space; built-in diagnostics (open circuit, overtravel, communications timeout); strong immunity — differential signalling copes with the shop-floor electromagnetic environment; one twisted bus pair strings several sensors, which beats one pair per axis once the axis count grows.
- Disadvantages: a matching bus master is required (the controller must support the protocol); commissioning needs familiarity with PDO/SDO or GSD files, so the threshold is higher; hardware cost per point is somewhat higher than analog.
Multi-axis synchronisation, servo closed loops and lines that need remote diagnostics almost always go to the bus — for example Series 194 CANopen and Series 197 EtherCAT.
How to choose: one table makes it clear
| Criterion | Analog (4-20 mA / 0-10 V) | Fieldbus (CANopen and similar) |
|---|---|---|
| Number of axes | Single axis / a few | Multi-axis / whole line |
| Commissioning difficulty | Low | Medium to high |
| Noise immunity | Moderate | Strong |
| Diagnostics | Weak | Strong |
| Overall cost | Low (when few axes) | Low (when many axes) |
Quick rule of thumb: a single axis with only analog cards uses analog; three axes up, or any need for diagnostics, uses fieldbus.
Practical constraints of protection rating and signal type
Whether analog or fieldbus, connector protection must keep up. The sensor body can achieve IP67 or even IP69K (for example the Series 13 mobile hydraulic type), but the protection rating of the plug and cable is often the weak link — on a bus in wet, oily environments you depend even more on a reliable M12 connector; do not let the interface hold the installation back.
Practical tips for engineers
- Analog outputs are factory-calibrated slightly wider than the nominal stroke; after installation the machine must be recalibrated.
- Two-point method: Slope = actual displacement ÷ (stroke-end reading − zero reading); Datum = Slope × zero reading; machine position = (Slope × current reading) − Datum.
- Example: zero reading 0.2 V, reading after moving 98 mm is 9.5 V → Slope = 98÷(9.5−0.2) = 10.537, Datum = 10.537×0.2 = 2.106.
Frequently Asked Questions
Q: How do I decide between analog and fieldbus output?
Three checks. First, whether your controller has the matching interface: a fieldbus needs a compatible master, and the wrong protocol means buying the wrong part. Second, axis count and cable length: analog suits a single axis or a few, fieldbus suits three axes and up or a whole line. Third, whether you need remote diagnostics, which in practice means fieldbus. Short version: one axis with only analog cards uses analog; three axes up, or any need for diagnostics, uses fieldbus.
Q: What is the live-zero benefit of a 4-20 mA loop?
On a 4-20 mA loop the normal minimum is 4 mA, so on a broken wire the reading falls below 4 mA and the controller can raise an alarm. A 0-10 V signal cannot do this, because 0 V cannot be told apart from a true zero.
Q: When is analog output not enough?
Three cases. Multiple axes: one channel carries one signal, so more axes means more cabling, whereas a single bus can carry dozens of axes. Long runs: analog suffers voltage drop and temperature drift, immunity is only moderate, and running it alongside power cables invites crosstalk. Diagnostics: analog diagnostics are weak, while a bus reports open circuit, overtravel and communications timeout itself.
Q: Is fieldbus always the cheaper route, and what does it cost me?
Not necessarily. Fieldbus requires a controller that supports the protocol, commissioning needs familiarity with PDO/SDO or GSD files, and hardware cost per point is somewhat higher than analog. What you get in return is cable and cabinet space saved on multi-axis machines, strong immunity from differential signalling, and 16-bit-and-above resolution readily achieved. On either output type the sensor body can reach IP67 or even IP69K, but the plug and cable are often the weak link, so a bus in wet, oily areas depends on a reliable M12 connector.
Q: The analog reading was off after installation. How do I calibrate it?
Analog outputs are factory-calibrated slightly wider than the nominal stroke, so the machine must be recalibrated after installation. Use the two-point method: Slope = actual displacement / (stroke-end reading - zero reading); Datum = Slope x zero reading; machine position = (Slope x current reading) - Datum. Example: a zero reading of 0.2 V and 9.5 V after a 98 mm move gives Slope = 98 / (9.5 - 0.2) = 10.537 and Datum = 10.537 x 0.2 = 2.106.








