Clippers, Clampers & Peak Detectors

Shaping waveforms with diodes. Learn series and shunt clippers (positive, negative, biased and double-ended), limiters for input protection, clamper (DC restorer) circuits and their time-constant requirement, peak detectors and envelope detectors, droop and ripple trade-offs, precision (op-amp) versions that remove the diode drop, voltage multipliers, and practical uses in protection, AM demodulation and signal conditioning — with Python simulating a biased clipper, a clamper and peak-detector droop.

Diodes combined with resistors, capacitors and bias voltages can limit, shift and hold waveforms. These wave-shaping circuits protect ADC inputs, restore DC levels in video, detect AM envelopes and measure signal peaks.

Their accuracy is limited by the diode drop, so precision versions put the diode inside an op-amp feedback loop.

An analogy

A clipper is like a ceiling that stops a bouncing ball from going higher; a clamper is like lifting the whole floor so the lowest bounce touches a chosen level; a peak detector is a ratchet that remembers the highest point reached.

Clippers and limiters

Series clippers pass the signal only when the diode conducts; shunt clippers divert the signal when it exceeds a threshold. Biasing the diode with a reference voltage (or using a Zener) sets the clipping level; two diodes give a double-ended limiter. Uses: protecting ADC and op-amp inputs (clamping to the rails through a series resistor), amplitude limiting and generating square-ish waves from sines.

Clampers (DC restorers)

A capacitor charges through a diode to the signal's peak; afterwards the output equals the input shifted by that stored voltage, preserving shape and peak-to-peak value. Requires RC ≫ period so the capacitor doesn't discharge noticeably between peaks. Adding a bias voltage clamps to any chosen level. Used in video (restoring black level), level shifting and charge pumps.

Peak and envelope detectors

Design trade-offs:

Precision and practical issues

Diode drops (and their −2 mV/°C drift) limit accuracy to hundreds of mV; precision rectifiers and peak detectors put diodes in op-amp loops so errors divide by open-loop gain — watch op-amp slew rate and saturation recovery. Diode capacitance and reverse recovery distort high-frequency clipping. For input protection, series resistance limits clamp current; the rail must be able to absorb injected current (or add a Zener to stop 'back-powering'). Voltage multipliers (Cockcroft–Walton) combine clamper and peak-detector stages.

Formulas

Worked example: Clamper capacitor

Given: 1 kHz signal, R_L = 100 kΩ

Find: C for RC ≥ 10T.

Answer: ≥ 100 nF

Worked example: Envelope detector

Given: Carrier 1 MHz, audio 5 kHz, R = 10 kΩ

Find: C range.

Answer: C ≈ 2.2–4.7 nF

Worked example: Droop

Given: 5 V peak held on 1 µF with 1 µA leakage for 1 s

Find: ΔV.

Answer: 1 V (use lower leakage or larger C)

Biased shunt clipper and clamper

Clipper:  v_in ──[R 1k]──┬──── v_out (≤ V_B + V_F)
                          │
                          ►|  D (anode at output)
                          │
                         V_B 2 V
                          │
                         GND

Clamper:  v_in ──||C──┬──── v_out (lifted so its minimum ≈ −V_F)
                      │
                     ─┴─ D (cathode up, anode to GND)   [R_L ≫, RC ≫ T]

The clipper conducts when the output tries to exceed V_B + V_F, holding it there. The clamper's capacitor charges to the input's negative peak through the diode and then shifts the whole waveform upward by that amount.

Clipper, clamper and peak-detector droop

import math
# Clipper, clamper and peak detector behaviour with sampled signals
Vm, Vf = 5.0, 0.7
samples = [Vm * math.sin(2 * math.pi * k / 12) for k in range(12)]
clipped = [min(v, 2.0 + Vf) for v in samples]          # positive clipper biased at 2 V
print("clipper output:", [round(v, 2) for v in clipped])
clamped = [v + (Vm - Vf) for v in samples]              # negative-peak clamp: shift up
print(f"clamper: min {min(clamped):.2f} V, max {max(clamped):.2f} V (DC shift {Vm-Vf:.1f} V)")
# Peak detector droop: C = 1 uF, load 100 k, hold time 10 ms
C, R, t = 1e-6, 100e3, 10e-3
print(f"peak detector droop over 10 ms: {Vm*(1-math.exp(-t/(R*C))):.3f} V ({(1-math.exp(-t/(R*C)))*100:.1f}%)")
# clipper output: [0.0, 2.5, 2.7, 2.7, 2.7, 2.5, 0.0, -2.5, -4.33, -5.0, -4.33, -2.5]
# clamper: min -0.70 V, max 9.30 V (DC shift 4.3 V)
# peak detector droop over 10 ms: 0.476 V (9.5%)

The biased clipper flattens the top of the 5 V sine at 2.7 V while the negative half passes untouched. The clamper shifts a ±5 V sine to span −0.7 V to +9.3 V — a DC restorer. A peak detector with τ = 100 ms loses 9.5% in 10 ms: longer τ holds better but responds more slowly to falling signals.

Common mistakes

Applications

Key takeaways

Going further