Lesson 6 · Objective
Derivative Control — Anticipation
By the end of this lesson you'll be able to explain what derivative control actually does: it reacts to the rate of change of error — how fast things are moving right now — not the error itself, and not how long it has stuck around.
Quick Refresher: P, I, and Now D
A fast recap of the two terms you already know, and where D fits next to them:
Proportional reacts to how far off the process is right now — the size of the error.
Integral reacts to how long error has been sticking around — the accumulated total.
Derivative reacts to how fast things are changing right now — the rate of change of error. That's this lesson's whole job.
Concept
Seeing It Coming
Picture an experienced operator who has watched a process for years. They don't just react to where the needle is right now — they react to how fast the needle is moving, and they start easing off before it gets there. That's anticipation, and it's exactly what derivative control brings to an automatic controller.
Everyday Anticipation
You already do this instinctively, every day:
- Braking a car: you brake harder the faster you're approaching a stop sign, not just based on how far away it is. A car crawling toward the sign needs a lot less brake than one flying toward it, even at the exact same distance.
- A hot water tap: if the water is heating up fast, you back the tap off before it reaches scalding — you don't wait until it's already too hot to react.
In both cases, the thing driving your reaction isn't just "how far from the target am I" — it's "how fast am I approaching it." That's the rate of change, and it's information that neither P nor I ever look at.
Concept
What "Derivative" Actually Means
Before you see derivative wired into a controller, it's worth pinning down what the word itself means. Strip away the PID context entirely: derivative is just the rate of change — how fast some value is moving, per unit of time. That's it. No error, no setpoint, not yet — just slope.
Steep vs. Shallow
Watch the two lines below draw. Both climb from the same starting point over the same amount of time, but at very different steepness — and the number below each one is that line's rate of change, ΔY ⁄ ΔT: how much the value changed, divided by how much time it took.
Hang on to that picture. In the pages ahead, the "value" doing the changing will specifically be error, and the controller will react to exactly this — how steep that error is rising or falling right now.
Concept
Where D Fits in the Block Diagram
You've already seen proportional and integral drawn as two parallel paths, both reacting to the same error signal and summed together into the controller output. Derivative is a third parallel path on that same diagram — it just reacts to error in a different way.
That last piece — Kd × d(Error)/dt — just means "Kd times how fast error is currently changing." Where the ∫ symbol in the integral term means "keep adding up," the d/dt symbol here means "how steep is the slope right now." Don't let either symbol intimidate you — they're just shorthand for the plain-English ideas you already have.
The Sum block now adds three terms together — you're not meeting "PD" or "PID" as a combined strategy yet; this diagram just shows where the D branch physically fits.
Concept
Kd: The Slope Multiplier
If Kp is a multiplier on error's size, and Ki is a dial on how fast the accumulator fills, think of Kd as a multiplier on error's slope — how steeply it's rising or falling right now. Mathematically, derivative output is Kd × d(Error)/dt: Kd times the instantaneous rate of change of error.
Big for a Fast Change, Zero for a Steady One
That definition has an important consequence worth sitting with: derivative output is large when error is changing quickly, and zero the instant error stops changing — even if error itself is still sitting there, nonzero. A steady, unmoving error contributes nothing to D, no matter how big it is. Only motion in the error signal produces a derivative response.
That's worth remembering for two reasons you'll run into shortly: it's exactly why D "does nothing" at steady state (there's nothing left to differentiate once the process has stopped changing), and it's part of why the muted demo coming up on the next page looks the way it does.
A Name From an Older Era
Just like Ki is sometimes called Reset, you'll sometimes see Kd called Rate instead of Derivative — same idea, older industrial name, same underlying math.
Live Demo: D Mechanics on the Tank
The button below opens the real PID simulator in its own tab, already set up for this exercise — this lesson tab stays open behind it, so just switch back (or close that tab) when you're done. This is the same tank-level process and the same well-tuned P+I baseline (Kp = 3, Ki = 0.3) you already trust from Lesson 5 — you're just adding Kd on top of it.
Concept
Why Doesn't D Help Much Here?
You just watched D mechanically work — spiking on the fast transient, settling back to zero as things flattened out — and yet the level's actual path to setpoint barely changed. That's not a mistake in the demo. It's telling you something important about when derivative actually earns its keep.
It Comes Back to Process Lag
Back in Lessons 4 and 5 you met the idea of process lag and dead time — how long a process takes to actually respond once the controller output changes. Derivative's whole value proposition is anticipation: reacting early to something that's about to become a problem. But anticipation is only useful if there's something worth anticipating.
The tank-level process you just used is near-integrating, with relatively little lag — the level responds to the valve quickly and fairly directly. There isn't much "coming" for derivative to see ahead of time; by the time error is changing fast, the process is already almost caught up. On a fast process like this, anticipation just doesn't have much to anticipate.
So let's look at a process where the lag is real — one where a controller genuinely benefits from seeing a change coming before it fully arrives.
Side-by-Side: Baseline (P+I) vs. Baseline (P+I) + D
Same setpoint step, same lag-dominant heater process, run through two controllers side by side — the only difference is whether Kd is zero or not. Both panels start from your same locked P+I baseline; the right panel just adds D on top of it.
Keep this in perspective: this page is only adding D on top of your existing P+I baseline — it's not "PID" as a named strategy or a decision framework yet. That's a later lesson's job. Here, the point is just seeing derivative's effect in isolation, on a process where it actually matters.
Hands-On: Add D Yourself
The button below opens the real PID simulator in its own tab, already set up for this exercise — this lesson tab stays open behind it, so just switch back (or close that tab) when you're done.
The baseline is an honest tune, not a rigged one. Kp = 1.9 and Ki = 0.03 are exactly what the standard Ziegler–Nichols reaction-curve rule gives you for this heater after a step test — nobody cranked the gain up to manufacture a problem. The overshoot you're about to see is simply what a correctly tuned two-term controller does on a process with this much lag and dead time behind it. Turning P down wouldn't fix it; it would just make a slow loop slower. What's missing is information about rate — and that's D's job.
Why you'll see D used far less often than P or I: in the large majority of real industrial control loops, D never gets turned on at all — most run P-only or PI. Three honest reasons, straight from running real loops.
First, most processes don't have anything for D to anticipate. Derivative earns its keep when a process has real inertia — several lags stacked up, a big thermal mass, a PV that keeps drifting the same direction for a while — like the heater above. If the dominant dynamic is a single lag, or the loop is already fast, D has nothing useful to predict and PI is simply enough. And if the loop is mostly dead time, derivative is worse than useless: during dead time the PV isn't moving yet, so there's no slope to read.
Second, derivative amplifies measurement noise. Any jitter in the signal gets multiplied by its rate of change, and a noisy PV turns into a jittery output that wears valves out. That's why flow and liquid-pressure loops — noisy and fast — almost never get D, while temperature and smooth level loops are its natural home.
Third, three terms are harder to tune than two. Adding D means one more knob whose effect shows up tangled with P and I in the loop's behavior, and derivative is the hardest of the three to get right.
That's not textbook caution — it's why, in the field, D stays off unless a process genuinely needs the anticipation, the way the heater process above did.
Review