Sensor Signal Conditioning: From Raw Measurement to Accurate Reading
How to design the amplifier, filter, and ADC interface between a sensor and a microcontroller. Covers RTDs, thermocouples, load cells, current shunts, and 4-20mA loops.
What Is Signal Conditioning?
Sensors produce small, noisy, or non-linear signals that are incompatible with microcontroller ADC inputs. Signal conditioning is the analog front-end that transforms these signals into clean, scaled voltages ready to digitise.
The signal chain: Sensor → Excitation → Amplification → Filtering → ADC
Each stage introduces error. Use the Sensor Accuracy Budget calculator to track total system accuracy through the chain.
---
RTD Signal Conditioning (PT100 / PT1000)
An RTD (Resistance Temperature Detector) changes resistance with temperature. The PT100 follows the Callendar-Van Dusen equation:
where /°C, /°C².
Use the PT100 Resistance calculator to find R at any temperature.
Measurement Circuit
The classic approach is a constant-current source through the RTD, measuring voltage:
Key Considerations
- Self-heating: too much excitation current heats the RTD. Keep mW.
- Use a low-noise instrumentation amplifier (INA128, AD8221)
- PT1000 is preferred for battery-powered designs (higher resistance = smaller excitation current)
Thermocouple Signal Conditioning
Thermocouples generate a very small EMF (microvolts to millivolts) proportional to the temperature difference between the hot junction and the cold junction:
where is the Seebeck coefficient (Type K: ~41 μV/°C).
Use the Thermocouple Voltage calculator to find the expected EMF.
Cold Junction Compensation
The cold junction is where the thermocouple wire connects to your PCB. Its temperature must be measured (usually with an NTC or RTD on the PCB) and added to the reading.
Integrated ICs like the MAX31855 (Type K) or LTC2986 handle amplification, cold junction compensation, and linearisation internally. Use these unless you have a reason not to. Discrete design requires: 1. ~10 mV/°C gain through a precision instrumentation amplifier 2. A separate temperature sensor for cold junction compensation 3. A linearisation lookup table or polynomial in firmware---
Load Cell / Strain Gauge Signal Conditioning
A load cell is a Wheatstone bridge of strain gauges. Full-scale output is typically 1–3 mV/V of excitation:
With 5V excitation and 2 mV/V sensitivity, full-scale = 10 mV — tiny, and buried in noise.
Use the Load Cell Amplifier calculator to find the required gain.
Amplifier Selection
INA125P / INA128 are classic choices. The INA125 includes a precision voltage reference for excitation:- Set gain with one external resistor:
- RTI noise: ~8 nV/√Hz typical — adequate for 24-bit ADC
---
Current Sensing with Shunt Resistors
Current is measured by the voltage drop across a low-value shunt resistor:
A 10 mΩ shunt at 10A gives 100 mV — a reasonable signal for a difference amplifier.
Use the Current Shunt calculator to verify shunt voltage, power dissipation, and ADC resolution.
High-Side vs Low-Side Sensing
Low-side (shunt between load and GND): Simplest. Single-ended amplifier works. Problem: load is not at true ground. High-side (shunt between supply and load): Load stays at true ground, no load ground shift. Requires a difference amplifier or bidirectional current sense IC (INA219, INA240).Selecting Shunt Resistance
Target = 50–100 mV at full scale. Too small → poor SNR. Too large → excessive power dissipation ().
---
Photodiode / Optical Sensor Signal Conditioning
Photodiodes produce current proportional to incident light. A transimpedance amplifier (TIA) converts this to voltage:
A 10 μA photocurrent with = 100 kΩ gives 1V output.
Use the Photodiode TIA calculator to find bandwidth and noise.
Stability
The TIA can oscillate without a feedback capacitor. Add across to stabilise:
Typically = 1–10 pF provides stability while maintaining adequate bandwidth.
---
4–20 mA Current Loop
Industrial sensors use a 4–20 mA current loop over long cable runs (up to 1 km). The current encoding is immune to cable resistance:
- 4 mA = 0% of range (also provides power to the transmitter)
- 20 mA = 100% of range
Receiving the Signal
At the receiver, a 250Ω precision resistor converts 4–20 mA to 1–5V (for a 0–5V ADC):
This 1–5V range conveniently indicates cable breaks (0V) and sensor faults (<1V).
---
Building an Accuracy Budget
Every component in the signal chain contributes error:
| Source | Typical Error |
|---|---|
| Sensor nonlinearity | 0.1–0.5% FS |
| Amplifier offset | 0.02–0.2% FS |
| ADC quantisation | LSB/2 |
| Temperature drift | 50–500 ppm/°C |
| Reference voltage | 0.05–0.5% |
Use the Sensor Accuracy Budget calculator to model your system's accuracy across temperature.
---
Summary
| Sensor Type | Typical Output | Recommended IC |
|---|---|---|
| PT100 RTD | 100–400 Ω | INA128 + constant-current source |
| Thermocouple | 1–50 mV | MAX31855 |
| Load cell | 1–10 mV | HX711 or INA125 |
| Photodiode | 1 nA–100 μA | TIA with OPA2134 |
| Current shunt | 10–100 mV | INA219 or INA240 |
| 4–20 mA loop | 1–5 V (via 250 Ω) | ADC direct |