Analog Sensing Signals

Every analog value on a BMS graphic — the duct static, the discharge pressure, the mixed-air temperature — started life as a small electrical quantity on a pair of wires, and somewhere between the wire and the screen a piece of software turned one into the other. This page is about that translation. One question, start to finish: how does a raw electrical signal become the engineering value on the graphic — and when should you not believe that value? The physical side of the story — how those signals get landed on a controller in the first place — is Controller Wiring; here we stay on the reading side, where the number meets your eyes.

Ranges and Scaling — the Published Promise

Start with the transmitter's nameplate. When a pressure transmitter says 0–250 psi, 4–20 mA, that line is a promise: at 0 psi the device drives exactly 4 mA, at 250 psi it drives exactly 20 mA, and in between it holds a straight line. That is the entire contract — two endpoints and linearity. Everything the graphic will ever show for this point is read off that line.

Because the map is a straight line, the arithmetic is one fraction: how far into the signal span are you? Say the input reads 8 mA. The span runs from 4 to 20, so 8 mA sits at (8 − 4) / (20 − 4) = 4/16 = 25% of span — and 25% of a 0–250 psi range is 62.5 psi. That same line can be written as a slope and an offset — the y = mx + b the software actually stores: here m = 250/16 = 15.625 psi per mA and b = −62.5 psi, so psi = 15.625 × mA − 62.5. Run the numbers yourself in the signal-scaling tool — it takes the same three ingredients (signal type, range min, range max) and shows the fraction, the value, and the formula. Being fast at this arithmetic is a field skill, not a math exercise; the rest of this page is about the days it saves you. (A sensor that reads a touch off at one known point is a different, smaller story — a calibration trim against a reference — not a range problem. Keep the two separate in your head: scaling is the line, calibration is a nudge to it.)

Here is the failure mode that makes the promise worth memorizing: the software has to copy both endpoints of the nameplate, exactly. Configure the point with the wrong span and nothing crashes, nothing alarms, and nothing ever looks broken — the value just comes out wrong by a fixed factor, forever. The classic version: a duct-static transducer with a published range of 0–2.5 in. w.c. gets its software point scaled 0–5 in. w.c. Every reading is now exactly double the truth: a duct really sitting at 0.9 in. w.c. shows up as a perfectly plausible 1.8 in. w.c. The number moves when the fan moves, trends look alive, and the loop will happily control to it — a plausible value is far more dangerous than an obviously broken one. The tell is never on the graphic; it is a hand gauge at the tap reading half the screen, or a fresh pair of eyes checking the point's scale against the nameplate. When a value is wrong by a suspiciously round factor, suspect the span before you suspect the sensor.

The diagram below is the whole section in one picture: the signal rail and the engineering rail drawn parallel, one state on each, joined by the mapping. Drag the slider and watch the pair move together — and notice what the line does outside the published span, because the next two sections live out there.

A 4 to 20 milliamp signal rail mapped onto a 0 to 250 psi engineering rail Two horizontal number lines drawn in parallel. The top rail is the raw signal in milliamps: a solid segment spans 4 to 20 milliamps, with dim dashed extensions below 4 and above 20. The bottom rail is the engineering value: a solid segment spans 0 to 250 psi, with dashed extensions into negative pressures on the left and past range max on the right. A dot on each rail marks the current state — 8 milliamps above, 62.5 psi below — joined by a vertical dashed connector: both dots always sit at the same fraction of their span. The dashed extensions line up too: a signal below the 4 milliamp live zero maps to an impossible negative pressure, and a signal above 20 milliamps maps past range max. A slider under the diagram moves the signal dot. SIGNAL — 4–20 mA (what the wire carries) 4 mA 12 mA 20 mA 0 psi 125 psi 250 psi negative = impossible past range max ENGINEERING VALUE — 0–250 psi (what the graphic shows)
8.0 mA → 62.5 psi
25.0% of span — in range: a measurement you can believe.

Live Zero — the Fault You Can See From the Chair

You may have noticed the 4–20 mA rail does something odd: its range starts at 4, not 0. Why the standard starts at 4 — the loop-power story — is the wiring lesson's territory; the 4–20 mA landing there walks it end to end. This page takes the 4 as given and cashes in what it buys you at the graphic: a live zero. Because the bottom of the range is a real, non-zero current, the space below 4 mA is signal territory no genuine measurement can ever occupy — which turns it into a vocabulary for faults. A healthy point never goes there; a dead one always does.

Watch what that does to the arithmetic. You have already met the number a dead loop reads: it is the b in y = mx + b. A broken wire, a dead loop, or an open terminal reads 0 mA, and scaled linearly against our 0–250 psi example that lands at (0 − 4)/16 = −25% of span: −62.5 psi on the graphic. An impossible number — and impossible is exactly what you want, because it cannot be mistaken for a reading. Compare the 0–10 V version of the same break: the input falls to 0 V, and 0 V is a perfectly legal value — the bottom of the range. The graphic shows range-min and sits there looking like a calm, valid low reading, indefinitely. A 0–10 V input cannot distinguish "broken" from "zero"; a 4–20 mA input can. (Voltage has its own live-zero variant — 2–10 V — which buys the same diagnostic space below 2 V; you will meet it on actuator feedback especially.)

Two practical wrinkles before you lean on this. First, many controllers and front ends clamp an under-range point at range-min instead of displaying the negative — some flag a fault status, some do not. On those systems the impossible number is hidden, but the habit that survives is: open the point and read the raw signal. Scaled values can clamp; a raw reading of 0 mA — or anything below about 3.8 mA, where transmitters declare under-range — is unambiguous. Second, not every sensor plays this game: a resistance sensor like a 10K thermistor fails differently again — an open circuit reads as pinned-cold rather than as a signal fault — and that story belongs with the temperature-sensor curves rather than here. The takeaway for the chair is a short checklist: know which signal family the point is, know where "broken" lands for that family, and treat the space below a live zero as a message, not a measurement.

Where a broken wire lands on a 0 to 10 volt scale versus a 4 to 20 milliamp scale Two vertical signal scales side by side. On the left, a 0 to 10 volt scale: the whole rail is live range, and a single marker at the bottom carries two labels — a broken wire reads 0 volts and a true range-min also reads 0 volts — the same point, so the graphic cannot tell them apart. On the right, a 4 to 20 milliamp scale: the live range spans 4 to 20 milliamps, and the stretch from 0 to 4 milliamps is dashed fault space. A true range-min sits at 4 milliamps, alive; a broken wire sits at 0 milliamps, below the live zero, unambiguously a fault. A caption reads: a live zero moves broken somewhere no real measurement can be. 0–10 V zero is a legal value 10 V — range max a broken wire reads 0 V a true range-min reads 0 V same point — the graphic cannot tell which is which 4–20 mA zero is below anything real 20 mA — range max fault space 4 mA — true range-min, alive 0 mA — a broken wire: below live zero, unambiguous a live zero moves "broken" somewhere no real measurement can be

Railed Signals Are Ceilings, Not Measurements

The third habit is about the top of the range. When the truth climbs past range max, the transmitter does not follow it — it rails: the signal parks at full scale and stays there, and the graphic shows range max no matter how far past it the real value goes. A railed reading carries exactly one bit of information: the truth is at least this much. It is a ceiling, not a measurement — and it wears a disguise, because range max is usually a clean, plausible-looking number. The trend signature to burn in: a value that climbs, then flatlines at a round number near the top of the sensor's range, hour after hour, suspiciously smooth. Real processes wander; ceilings do not.

This site already carries the definitive war story: in the duct-static lesson's "Static Is Not Flow" section, a cranked supply fan pushes a duct past what its 0–2.5 in. w.c. / 0–10 V transducer can say, and the trend flatlines at exactly 2.5 in. w.c. while the real static climbs on, unmeasured, past where a safety should have tripped. Read it there in full — it is told from the fan's side. This page is the general lesson underneath it: that flatline was not a duct behaving strangely; it was a sensor answering the only way a railed sensor can.

The prevention is a design habit: pick ranges so the operating point lives mid-span. A duct that controls to 1.5 in. w.c. sits at 60% of a 0–2.5 sensor — resolution to read it, and headroom above to see an abnormal excursion instead of losing it over the ceiling. Both directions of range-picking fail: too tight a range rails during exactly the events you most need to see, while a too-generous range (say 0–10 on that same duct) buries normal operation in the bottom sixth of the scale, where an accuracy spec written as a percent of full scale becomes a large fraction of the reading. The range is not a formality on a submittal — it decides both what the point can say and how precisely it can say it.

A trend of a railed sensor: the reported value flatlines at range max while the truth keeps climbing A strip chart with time on the horizontal axis and duct static pressure on the vertical axis. A dashed horizontal line marks range max at 2.5 inches of water column, the top of a 0 to 2.5 sensor. A solid reported-value line climbs and then clamps flat exactly on the range-max line, running smooth and level for the rest of the chart. From the same point, a dashed line marked actual keeps climbing above the range line, unmeasured. The point where they part is marked railed here. The reported flatline is a ceiling, not a measurement. time → duct static (in. w.c.) range max — 2.5 in. w.c. (top of a 0–2.5 sensor) railed here reported — flatlines at exactly range max suspiciously smooth actual — keeps climbing, unmeasured

reported value (railed) actual value (above the range)

That closes the question this page opened. A raw signal becomes the value on the graphic through one straight line — two endpoints, copied from the nameplate into the software. And you stop believing that value in three specific places: when the two spans do not match (plausible-but-wrong, forever), when the signal falls below a live zero (a message, not a measurement), and when it flatlines at the top of its range (a ceiling, not a reading). Know the range, know where broken lands, know where the ceiling is — and the graphic goes back to being the most honest tool in the building.

← Back to Education