EMCH 367 · Controls · Fall 2026

P, I, D: Pick the Controller

A rotating inertia J with viscous friction c has G(s) = 1/(Js2 + cs). Close the loop with unity feedback, choose the controller in the first block, apply a step R(s) and read what each term of the controller does to the closed loop poles and the step response.

The instrument

Unity feedback with a selectable controller

Click the controller block, or use the buttons, to switch between P, I, D, PD, PI and PID. The step is applied at t = 0 with zero initial conditions. The response is computed exactly from the closed loop transfer function, and every readout comes from that response.

Controller
Block diagram: R(s) enters a summing junction (plus), the output C(s) is fed back with a minus sign; the error passes through the controller block and then G(s). R(s) + − CLICK TO CHANGE G(s) 1/(Js² + cs) C(s)
CONTROLLER Gc(s)
PLANT G(s)
CLOSED LOOP T(s) = C(s)/R(s) = GcG/(1 + GcG)
CHARACTERISTIC EQUATION

CONTROLLER GAINS

PLANT G(s) = 1/(Js² + cs)

STEP INPUT

STEP RESPONSE c(t) c(t) r(t) ±2% band

CLOSED LOOP POLES × AND ZEROS ○

STABILITY
POLES
DAMPING RATIO ζ
RISE TIME 10–90%
PEAK TIME
OVERSHOOT
SETTLING TIME 2%
FINAL VALUE
STEADY STATE ERROR

Try it

Six things to find

Start from J = 1, c = 2, R = 1 and automatic time span. Each card lists the settings; the numbers are what the readouts show.

Reading the result

What each term does here

The plant already contains a pole at s = 0, a free integrator, because a torque produces a speed and the angle is the integral of the speed. With unity feedback that makes the loop type 1, so P alone already gives zero steady state error to a step. The proportional gain sets ωn = √(Kp/J), while ζωn = c/(2J) does not depend on Kp, so raising the gain adds overshoot without shortening the settling time.

The derivative term adds damping: in PD the characteristic equation becomes Js² + (c + Kd)s + Kp = 0. On its own, D has no position feedback at all. The s in Kds cancels the plant's pole at the origin, the loop only feeds back speed, and the output settles short of the step.

The integral term adds a second pole at the origin and raises the order to three. For a step it is not needed with this plant, and it costs stability: I alone is unstable for every KI > 0, and PI is stable only while c·Kp > J·KI (Routh). Its real job is to remove the error caused by a constant disturbance torque, which this model does not include.

What the model leaves out. The motor torque is unlimited, so large gains give responses a real actuator could not produce. With D in the controller a step in r produces an impulse in the controller output at t = 0 (derivative kick); real controllers filter the derivative or act on the measurement only. There is no sensor noise, no delay and no disturbance torque.