Analog Electronics

Instrumentation Amplifier

3-op-amp precision differential amp — the universal sensor front-end

An instrumentation amplifier is a precision 3-op-amp circuit that pulls tiny differential signals from sensors out of large common-mode noise. CMRR up to 120 dB. Gain set by one resistor.

  • TopologyTwo buffer op-amps + one diff amp
  • CMRR~120 dB at G=100 (INA128, AD620)
  • Input impedance10 GΩ typical
  • Gain equationG = 1 + 2R / R_G (R = 25 kΩ on INA128)
  • Famous partsINA128, AD620, AD8221, INA333
  • ApplicationsStrain gauges, thermocouples, ECG, RTDs

Interactive visualization

Press play, or step through manually. The visualization is yours to drive — try it before reading on.

Open visualization fullscreen ↗

Watch the 60-second explainer

A condensed visual walkthrough — narrated, captioned, under a minute.

The signal-on-noise problem

A typical strain gauge sitting on a steel beam outputs a few millivolts when the beam bends — but it's wired with twisted-pair cable running ten metres across a factory floor full of motor drives, transformers, and 60 Hz radiation. Common-mode noise picked up along that cable pair can be several volts; the differential signal you actually care about is a millivolt. If you naively measure single-ended (one wire against ground), the noise is 1000× the signal.

The answer is differential measurement: measure the voltage between the two wires, ignore the voltage between either wire and ground. As long as the noise hits both wires equally (which it largely does for nearby pickup), differential subtraction kills it. The art is doing that subtraction without disturbing the source — and that's where the 3-op-amp instrumentation amplifier comes in.

The 3-op-amp architecture

                              R                R
   V_in+ ──┐                ┌──/\/\──┐      ┌──/\/\──┐
            │                │         │      │         │
            │  op1           │   op3   │      │         │
            ├── + ───────────┤ −       ├──────┤ +       ├── V_out
            │                │         │      │         │
   R_G ─────┤ −              │ +       │      │ −       │
            │                └─────┬───┘      └─────┬───┘
            │                      │                │
   V_in- ──┤  op2                  │                │
            ├── − ───────────┐  R_REF         R_REF │
            │                │                      │
            ├──/\/\──────────┤        difference amp │
            │   R            │                      │
            │                ─                      ─
            └── + ─────GND   GND                    GND

   G = 1 + (2R / R_G)
   For INA128/AD620: R ≈ 25 kΩ, so R_G = 50 Ω → G ≈ 1000

The two input op-amps (op1, op2) buffer the inputs — their non-inverting terminals see the raw V_in+ and V_in-, so the input impedance is essentially infinite. The single gain-setting resistor R_G ties their inverting inputs together. Whatever differential voltage exists across the inputs appears across R_G (by the golden rule that the op-amp's two inputs are at the same voltage), driving a current that flows through both R feedback resistors. The two buffer outputs therefore swing in opposite directions by an amount that depends on R_G — that's the gain stage.

The third op-amp (op3) is a unity-gain difference amplifier with four matched resistors. It subtracts the two buffer outputs, killing whatever common-mode voltage they share and outputting the amplified differential as a single-ended voltage referenced to ground (or to a reference pin, for level-shifted designs).

The gain equation

With the standard topology (R inside the chip, R_G external), the closed-loop differential gain works out to:

G = 1 + (2R / R_G)

For the INA128:   R = 25 kΩ
                  R_G = 50 Ω    → G = 1001
                  R_G = 500 Ω   → G = 101
                  R_G = 5 kΩ    → G = 11
                  R_G = ∞ (open) → G = 1

For the AD620:    R = 24.7 kΩ
                  R_G = 49.4 Ω  → G = 1000

One resistor sets gain. No matched pairs needed (because both R values are on the same silicon die — they match within 0.01%). This is the architectural win: the in-amp's gain is more accurate than the user's external resistor.

Worked example: ECG front-end

An ECG signal at the body surface is roughly 1 mV peak-to-peak. The two electrodes (right arm, left arm) connect through long wires that pick up 60 Hz mains hum at common-mode levels of several volts. The differential biosignal must be amplified to about 1 V to feed a 12-bit ADC at full scale.

Required gain. 1 V / 1 mV = 1000. Use AD620: R_G = 49.4 Ω + a small trim for exactly 1000.

CMRR requirement. Common-mode of 2 V mains; differential of 1 mV. CMRR must reduce common-mode contribution to well below the signal: aim for <0.1 mV from 2 V → CMRR > 86 dB. The AD620 spec at G=1000 is 130 dB — three orders of magnitude of margin.

Input bias current. AD620 input bias is 0.5 nA typical. Through a 1 MΩ skin-electrode impedance, that's 0.5 mV of offset — comfortably below the 1 mV signal. Good enough.

Bandwidth. At G=1000 the AD620's −3 dB bandwidth is 12 kHz. ECG bandwidth is 0.05–150 Hz, so plenty of room. A separate active filter strips DC drift and high-frequency noise.

Driven right leg. A second AD620 (in unity gain) buffers the body's common-mode voltage and feeds it through a current-limiting resistor back to the body as the "DRL" (driven right leg) signal. This active common-mode feedback adds another 20–30 dB of effective CMRR by forcing the body's common-mode to track the amplifier's reference.

Total bill of materials for the front end: two AD620s, one R_G, a few bias-return resistors, a couple of bypass caps. About $10 retail. Bedside ECG monitors and consumer wearables alike start with exactly this circuit.

In-amp family comparison

PartCMRR @ G=100Input biasOffsetSupplyUse case
INA128120 dB5 nA50 μV±2.25 to ±18 VIndustrial sensors
AD620120 dB1 nA50 μV±2.3 to ±18 VBio-signal, low-power
AD8221110 dB0.4 nA40 μV±2.3 to ±18 VHigh-precision DAQ
INA333110 dB0.2 nA25 μV+1.8 to +5.5 VBattery, rail-to-rail
AD8429130 dB120 nA50 μV±4 to ±18 VLow-noise, audio band
LT1167120 dB0.35 nA40 μV±2.3 to ±18 VBridge sensors, RTDs

In-amp + Wheatstone bridge

The textbook pairing: a 350 Ω strain-gauge Wheatstone bridge excited at 5 V. Three resistors are nominally 350 Ω, one is a strain gauge varying from 350 Ω to 350 Ω + ΔR with applied force. The bridge output is:

V_diff ≈ (ΔR / 4R) × V_exc

For a typical 2 mV/V load cell at full scale:
   V_diff = 2 mV/V × 5 V = 10 mV at full scale

Common-mode at each output = V_exc / 2 = 2.5 V
We need G ≈ 200 to fill a ±2 V ADC range.

R_G = 2R / (G − 1) = 50000 / 199 ≈ 251 Ω

The in-amp ignores the 2.5 V common-mode pedestal and gives a clean amplified signal in the 0–2 V range that the ADC can digitise. Total signal-conditioning components beyond the in-amp: an R_G, two supply bypass caps, optionally a single-pole RC low-pass. That's the whole sensor front-end.

Why CMRR collapses if you skip the in-amp

The temptation is to build a "discrete" in-amp from a quad op-amp and four matched resistors. It can work — but precision-resistor mismatch dominates CMRR. The classic single-op-amp difference amp:

CMRR ≈ (1 + R_f / R_in) × 1 / (4 × (ΔR/R))

R_f / R_in = 100 (gain of 100)
Matched 0.1% resistors → ΔR/R = 0.001
CMRR = 101 / (4 × 0.001) = 25,250 = 88 dB

Even with 0.1% resistors (relatively expensive), you only reach 88 dB. Get to 1% and CMRR drops to 68 dB — your sensor signal is buried in mains hum. The 3-op-amp in-amp gets around this by having the difference stage operate at unity gain, with internal laser-trimmed resistor pairs that match to 0.01% or better. That's where the 120 dB CMRR comes from.

Critical layout notes

  • Star ground at the in-amp. The reference pin (op3's non-inverting reference) is the analog measurement ground. Don't route motor currents through it.
  • Twisted-pair the differential inputs. The whole CMRR story assumes the two wires pick up the same noise. Untwisted pairs guarantee a CMRR floor.
  • Bias-current return paths. Even 1 nA × 10 MΩ source = 10 mV offset. AC-coupled or floating sources need a high-value resistor to ground at each input.
  • R_G placement. Mount close to the in-amp pins; long traces add stray capacitance and parasitic inductance that affect bandwidth and stability.
  • Shielding. Drive cable shields with the in-amp's reference or a unity-buffered common-mode signal to eliminate shunt capacitance effects on CMRR.
  • Input protection. Series resistors (1 kΩ) and Schottky clamps to the supply rails protect against ESD and accidental overvoltage; many in-amps already include internal protection FETs.

Where in-amps live

  • Industrial weighing scales. 4-wire load-cell bridge, 24-bit ADC, an in-amp doing the first 100×.
  • Medical bedside monitors. ECG, EEG, blood-pressure transducers, pulse-oximeters — every analog channel begins with an in-amp.
  • Temperature loggers. Type-K thermocouple outputs 41 μV/°C; an in-amp at G=200 turns each degree into 8 mV — directly readable.
  • Battery-management systems. Current-shunt sensing on the negative rail of a 48 V or 400 V battery uses a high-voltage common-mode in-amp (INA240, MAX9923) to measure tens of millivolts across a milliohm shunt at hundreds of volts common-mode.
  • 4–20 mA loop transmitters. A bridge sensor's output, in-amped, drives a precision voltage-to-current converter that modulates 4–20 mA on a two-wire loop running hundreds of metres of industrial cable.
  • Automotive sensor interfaces. Hall-effect, magneto-resistive, and piezo sensors with single-supply rail-to-rail in-amps (INA333) handle 12 V/24 V common-mode and low offset across automotive temperature range.

A 1969 invention that aged well

The 3-op-amp instrumentation amplifier topology was first formally described by George Tucker in a 1969 IEEE paper as an improvement on Robert Pease's earlier discrete-transistor sensor amplifiers. The first monolithic in-amp, the AD521 from Analog Devices in 1977, integrated the topology onto a single die with laser-trimmed resistors — pushing CMRR from the 70 dB ballpark of discrete designs to over 110 dB. The AD620 (1994) became the industry's reference part: pin-compatible variants and clones are produced by TI, Linear, Maxim, and many smaller vendors thirty years later, with the basic 3-op-amp architecture essentially unchanged.

Frequently asked questions

Why three op-amps instead of one?

A single-op-amp differential amplifier works in theory but has two crippling weaknesses: input impedance is set by the resistor network (typically 10–100 kΩ — too low for high-impedance sensors), and gain accuracy depends on matching four resistors to fractions of a percent. The 3-op-amp instrumentation amplifier solves both: the two input op-amps act as buffers giving 10 GΩ+ input impedance, and a single external R_G sets the gain — no precision matching required. The gain stability and CMRR both improve dramatically with the buffered front-end.

How is the gain set?

The two front-end op-amps share a single gain-setting resistor R_G between their inverting inputs. Each front-end op-amp's feedback resistor R is fixed inside the chip. Differential gain works out to G = 1 + (2R / R_G). Typical R is 25 kΩ (INA128) or 24.7 kΩ (AD620), so R_G = 50 Ω gives G = 1001. The final difference-amplifier stage usually has unity gain (matched 1:1 resistor ratios). The single-resistor design means no resistor matching is needed for gain accuracy — just pick R_G.

What is CMRR and why does it matter?

Common-Mode Rejection Ratio is how strongly the amplifier ignores signals appearing on both inputs simultaneously, expressed in dB. CMRR = 20 × log10(differential gain / common-mode gain). 60 dB means a 1 V common-mode signal looks like 1 mV differential; 100 dB means it looks like 10 μV; 120 dB means 1 μV. The INA128 and AD620 reach 120 dB at G = 100 — critical when amplifying a 1 mV thermocouple signal sitting on a 60 Hz mains-induced common-mode of several volts. Without high CMRR, the common-mode noise drowns out the differential signal.

Why not just use a fully-differential ADC?

Modern delta-sigma ADCs (ADS1256, AD7172) have differential inputs with very high CMRR built in, and many designs go straight from sensor to ADC with no in-amp. But in-amps still win when: (1) the sensor signal is too small for the ADC's full-scale range (need analog gain first), (2) the common-mode is outside the ADC's input range (in-amp shifts it to mid-supply), (3) you need AC coupling, filtering, or programmable gain in front of a slower or lower-resolution ADC, (4) cost — an INA126 at 1¢-per-unit-in-volume beats a 24-bit precision ADC. The in-amp is the standard sensor front-end; the ADC sits behind it.

How does the in-amp reject common-mode noise?

Common-mode signal appears identically on both inputs. The two front-end op-amps each follow their own input (virtual short via R_G), so the common-mode voltage propagates unchanged through both buffer outputs — same voltage, same direction, no current through R_G. The final difference amplifier subtracts these two equal voltages, leaving zero. Differential signal, in contrast, appears with opposite polarity on the two inputs, driving current through R_G, which gets amplified through both buffer feedback paths and finally differenced — producing G × (V_in+ − V_in-). The architecture inherently kills common-mode while passing differential.

What is a Wheatstone bridge and why pair it with an in-amp?

A Wheatstone bridge is four resistors in a diamond — two pairs of voltage dividers, with the differential measurement between their midpoints. When one or more resistors changes (strain gauge stretching, RTD heating), the bridge output ΔV is proportional to the resistance change times the excitation voltage. The output is tiny (a few mV at most) and sits on a common-mode of half the excitation. That's the textbook in-amp scenario: small differential signal on large common-mode pedestal, high source impedance. Every digital scale, every torque sensor, every pressure transducer pairs a Wheatstone bridge with an in-amp.

What sets in-amp input range?

Both the differential and common-mode input range depend on the gain and the supply rails — the front-end buffer outputs must not saturate. For an INA128 on ±15 V supplies at G = 100, the differential range is about ±100 mV and the common-mode range is roughly ±13 V — comfortable for most sensors. Rail-to-rail input in-amps (INA333, AD8226) extend common-mode to within tens of millivolts of either supply, important for single-supply battery-powered designs. The Howland-style 'instrumentation amplifier' variants (with a fourth op-amp) extend differential range at the cost of CMRR.