HealthAtoms
Hardware & Devicesconcept · 5 min · updated Jun 28, 2026

Feedback control & PID

By HealthAtoms Editorial (AI-assisted draft)Awaiting expert review

How a machine holds a target — a temperature, a dose rate, a joint angle — by constantly measuring the error and correcting. PID runs inside incubators, pumps and robots.

In one line

Feedback control holds a system at a target by measuring the gap between where it is and where it should be and correcting — continuously. PID is the workhorse algorithm that decides how hard to correct.

<figure style="text-align:center;margin:1.5rem 0"> <svg viewBox="0 0 400 150" role="img" aria-label="Control loop: setpoint minus measured gives an error, the PID controller drives the process, output is fed back" style="width:100%;max-width:440px;height:auto;color:var(--c-iot)"> <text x="24" y="62" font-size="10.5" fill="var(--text-3)" text-anchor="middle">setpoint</text> <line x1="48" y1="58" x2="78" y2="58" stroke="currentColor" stroke-width="2"/> <circle cx="88" cy="58" r="10" fill="none" stroke="currentColor" stroke-width="2"/><text x="88" y="62" font-size="12" fill="currentColor" text-anchor="middle">−</text> <line x1="98" y1="58" x2="128" y2="58" stroke="currentColor" stroke-width="2"/><polygon points="120,53 130,58 120,63" fill="currentColor"/> <text x="113" y="48" font-size="9.5" fill="var(--text-3)" text-anchor="middle">error</text> <rect x="130" y="40" width="86" height="36" rx="5" fill="none" stroke="currentColor" stroke-width="2"/><text x="173" y="62" font-size="11" fill="currentColor" text-anchor="middle">PID controller</text> <line x1="216" y1="58" x2="248" y2="58" stroke="currentColor" stroke-width="2"/><polygon points="240,53 250,58 240,63" fill="currentColor"/> <rect x="250" y="40" width="86" height="36" rx="5" fill="none" stroke="currentColor" stroke-width="2"/><text x="293" y="62" font-size="11" fill="currentColor" text-anchor="middle">process</text> <line x1="336" y1="58" x2="380" y2="58" stroke="currentColor" stroke-width="2"/><text x="372" y="48" font-size="9.5" fill="var(--text-3)" text-anchor="middle">output</text> <path d="M358 58 V120 H88 V68" fill="none" stroke="currentColor" stroke-width="2" stroke-dasharray="5 4"/> <polygon points="83,78 88,68 93,78" fill="currentColor"/> <text x="223" y="136" font-size="10" fill="var(--text-3)" text-anchor="middle">measured value fed back — close the gap, repeat</text> </svg> </figure>

What PID actually does

The controller looks at the error (target − measured) three ways:

  • P — Proportional: correct in proportion to how far off you are now.
  • I — Integral: accumulate how long you've been off, to erase a lingering offset.
  • D — Derivative: react to how fast the error changes, to damp overshoot.

Tuned, the system reaches target quickly without overshoot. This is closed-loop — it measures the real result; open-loop just commands and hopes, unacceptable with a patient.

Where it shows up in digital health

  • Incubators & warmers hold skin temperature to a fraction of a degree.
  • Infusion & anaesthesia — closed-loop dosing from a measured signal (e.g. an artificial pancreas dosing insulin from a CGM).
  • Surgical & rehab robots — PID at every joint (see anatomy of a medical robot).
  • Ventilators regulate pressure and flow breath-by-breath.

Watch for

A closed loop is only as trustworthy as its sensor and its limits. A drifting sensor makes the controller confidently wrong; medical loops need hard bounds and a human-supervisable fallback.

References

  1. NIH/NLM — Closed-loop control in medicine

Related entries