Lesson 4 — Proportional Control

INST 2755 · PID Section Rebuild (draft, not yet packaged as SCORM)

Lesson 4 · Objective

Proportional Control

By the end of this lesson you'll be able to explain what proportional control does, what proportional band (or Kp) controls, and — the single most important idea here — why proportional-only control never fully removes error. That last point is the thread every later lesson pulls on.

Keep this in mind as you go: a proportional-only controller will always settle near setpoint, never exactly at it. Watch for that gap in the live demo coming up.

Quick Terminology Refresher

This lesson leans on three terms you've already seen in earlier lessons. If any of these feel rusty, this is worth a second read before moving on:

SP

Setpoint — the target value you want the process at. This is the number you're trying to hold.

PV

Process Variable — the actual, measured value right now (the tank level, the temperature, whatever the sensor is reading).

CO

Controller Output — the signal the controller sends out to the final control element (the valve, the pump) to try to correct that error.

Concept

What Is Proportional Control?

A proportional controller produces an output that is proportional to the current error — the difference between setpoint (SP) and process variable (PV). Bigger error, bigger correction. Smaller error, smaller correction.

SETPOINT (SP) ERROR (SP − PV) CONTROLLER (P) CONTROL VALVE PROCESS PV SENSOR / TRANSMITTER ✓ PV is measured and fed back into the Error block — this loop repeats continuously

The sensor's reading (PV) is what the Error block compares against SP on every pass through the loop — that's the feedback that makes this closed-loop control.

Concept

Kp: Just a Multiplier

Strip away the jargon and Kp is nothing more than a multiplier applied to error. The proportional term's output is:

CO
=
Kp
×
Error
(SP − PV)

That's it — the whole proportional term is one multiplication. Bigger Kp, bigger multiplier, bigger output for the same error. Remember from Lesson 2: because every signal is scaled to percent-of-span before this math happens, Kp is always unitless — so a Kp of 2 simply means "make the output swing twice as far as the error."

The Missing Piece: Bias

Here's the catch with "CO = Kp × Error" — taken by itself, it says that when error is zero, CO is zero too. But think about what CO actually drives: a valve or a pump holding the process steady against some real, ongoing load. That load essentially never needs exactly 0% output to balance it. So the real formula has one more piece:

CO
=
Bias
+
Kp
×
Error

Bias (also called manual reset) is a fixed starting point — whatever CO happened to be the moment the loop switched into Auto (or, in the simulator, the moment you hit Start). Think of it as "here's roughly where the output needs to sit just to hold things steady," locked in before Kp even starts reacting to error.

In pure proportional-only control, bias never moves again. There's no integral term to walk it up or down over time — it's frozen at whatever value it started at. Kp × Error is just the swing added on top of that frozen bias, growing or shrinking as error grows or shrinks.

Worked example: say bias is 50% (that was CO right when the loop went to Auto) and Kp is 2. If error is currently −15%, then CO = 50 + (2 × −15) = 50 − 30 = 20%. Change the error and CO swings around that same fixed 50% bias — it never gets to reset itself to a new baseline. That frozen bias is exactly why proportional-only control can't fully close a permanent error, which is the offset you're about to see on the next few pages.

You'll get hands-on with this tradeoff in a few pages — for now, just hold onto the idea that this one setting (Kp) controls aggressiveness, and bias is the fixed floor it swings around.

Concept

Proportional Band: The Same Setting, Expressed Differently

Some manufacturers show this same setting as proportional band (PB) instead of Kp directly — a percentage, not a raw multiplier. They're two dials on the same knob, related by:

PB (%)
=
100 ÷ Kp

Because PB is inversely related to Kp, the two settings pull in opposite directions:

  • High Kp = narrow PB — a small error produces a big output change — fast, aggressive correction.
  • Low Kp = wide PB — the same error produces a smaller output change — gentler, slower correction.
Same knob, two labels: if a controller shows you PB instead of Kp, don't treat it as a separate concept — just run the conversion. Whichever one you're staring at, you're still adjusting the same multiplier on error.

What the “Band” Actually Is

That conversion is easy enough to run, but it leaves the important word unexplained. Why call it a band? A band implies a range — a range of what? The proportional band is a range of error, centered on setpoint, expressed as a percent of span: the amount of error it takes to drive the output all the way from 0% to 100%. Inside that range the controller is throttling. Outside it, the output is against a stop and proportional action has nothing left to give. That range — the throttling window — is the band.

All three charts below share the same axes, so the only thing that changes is the slope: error across the bottom, controller output up the side. Each line crosses zero error sitting on its bias.

100%50%0% −500+50 shut wide open the 20% band Error (SP − PV) — % of span Controller output — %
Narrow band — PB 20% (Kp = 5)
Full stroke over a 20% error. Outside that window the valve is slammed against a stop. Aggressive, and easily twitchy.
100%50%0% −500+50 the 100% band Error (SP − PV) — % of span Controller output — %
Wide band — PB 100% (Kp = 1)
It takes a full-span error to walk the output the whole way. Throttling everywhere, but never pushing hard. Gentle, and easily sluggish.
100%50%0% −500+50 only 25% only 75% the 200% band — off both ends Error (SP − PV) — % of span Controller output — %
Very wide band — PB 200% (Kp = 0.5)
The band is wider than the measurement itself. Even a full-span error only moves the output 25% off bias, so it never reaches either stop.
We're assuming a control valve here. That's why “output pinned” is drawn as the valve being wide open or fully shut. CO doesn't always drive a valve — it could be a pump VFD, a damper, or a heater — but the idea is identical whatever it drives: past the edge of the band, the output is against a stop and can't push any harder.
Live Illustration

Same Error, Different Kp: Watch CO React

Same ramping error, fed into two identical proportional controllers side by side — the only difference is Kp. Watch what happens to CO as the error climbs.

CO
=
Kp
×
Error

Note: this illustration ignores bias (assumes it's 0) to keep the picture simple. The point isn't the exact CO number — it's that a higher Kp makes the correction happen faster for the same error. Add bias back in and every value here just shifts up by that same fixed amount.

Error CO (normal) CO (saturated — clamped at 100%)
Low Kp = 0.5
Error: 0%    CO: 0%
High Kp = 3.0
Error: 0%    CO: 0%
Same formula, same error, very different result: CO equals Kp times error on both sides. The high-Kp panel's output shoots up and pins at 100% (the line turns red — the actuator is saturated, it physically can't go higher) long before the low-Kp panel even gets close. That's Kp directly scaling the same error into a much bigger — or much smaller — output demand.

The Core Idea

The Catch: Permanent Offset

Here's the part students almost always trip on: proportional-only control never fully removes error. It needs some leftover error to keep producing a correcting output at all — no error, no correction, and the process would drift right back away from setpoint. So a P-only loop settles into a stable balance point that is close to setpoint, but not exactly on it. That permanent gap is called offset.

See It On a Graph

Setpoint steps up, the P-only loop responds, PV rises and settles — but watch closely where it settles:

Setpoint (SP) Process Variable (PV) Offset (the permanent gap)
PV: 0%    SP: 0%    Offset: 0%
Right there — that gap. PV climbs and settles, but it settles below setpoint, not on it. That small red-labeled gap is offset, and no amount of waiting makes it close on its own with P-only control.
Live Demo

Try It 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.

Watch It Happen
P-only, preset and ready. Click Start, let it settle, then drag the Outflow slider to a new value — a permanent change in demand. Watch the level line settle near setpoint, but not on it. That lasting gap is offset.
▶ Watch It Happen
Live Demo

Converging vs. Diverging

If you push Kp too high, the response starts to oscillate — swing past setpoint, back past it the other way, and so on. There are two very different ways that can go:

Converging — correctly tuned
Each swing gets smaller. The loop settles.
Diverging — badly tuned
Each swing gets bigger. The loop never settles — Kp is too aggressive for this process.

A quick label, nothing more to memorize here — just be able to recognize the difference by eye. If you ever see a diverging response on the real simulator, back Kp off; that's Kp set too high for this process.

Names you'll hear later: tuning P (and later PI/PID) by hand like this works, but there are also standardized, named approaches to picking Kp/PB systematically instead of by feel. You don't need to know how any of these work yet — just recognize the names when they come up:
Ziegler–Nichols Lambda / IMC Cohen–Coon
We'll go into how these actually work in a later lesson on tuning methods.

See Both, Live

Each example below is preset — Kp is already dialed in for you, and only P is active. Click Start, then drag the Outflow slider from 50 up to 55 to trigger it.

Convergent — still too aggressive
Kp preset to 20 — oscillates hard and takes a long time to settle, but each swing gets smaller and it does settle.
✓ Convergent Demo
Divergent — out of control
Kp preset to 35 — every swing gets bigger, never settles, and drives the valve into saturation on both ends.
⚠ Divergent Demo
Watch the CO, not just the level. In both demos above, keep an eye on the valve position (CO) trend, not only the level trend. Level is a slow, self-averaging process, so the level line can look deceptively calm even while the CO is swinging hard underneath it — in the divergent demo, that's the valve slamming to 0% and 100% over and over. The CO is your control output; that's the one that's really telling you how aggressive the tuning is.
Live Demo

Tune It 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.

Tune It Yourself
P-only, free tuning. Step the Setpoint or bump the Outflow to create a disturbance, then narrow the proportional band (raise Kp) — faster, but watch for overshoot. Widen it (lower Kp) — sluggish, but overshoot backs off. No "right" answer here, just get a feel for it.
🎛 Tune It Yourself

Review

Review

Coming up in Lesson 5: Integral control — the fix for the offset you just watched happen.