Browser-local interactive workspace
Interactive workspace initializes in your browser. Engineering method, assumptions, validation, and references are available below.

Engineering reference

Control Systems: theory, method, and sources

This control systems workspace publishes 17 governing equations, 9 stated assumptions, 5 documented boundaries, 1 worked example, and 5 sources so the numbers it returns can be checked rather than taken on trust.

Calculations run locallyContent reviewed August 11, 2026Calculation & source methodology

How this tool works

Nineteen modules cover the core undergraduate control-systems workflow, from first- and second-order transient response through classical frequency-domain design, state-space analysis, and discrete-time stability.

Charts are selected to match the engineering quantity being studied: pole, root-locus, Nyquist, and z-plane modules use complex-plane plots; Bode and margin modules use logarithmic frequency axes; time-response modules use time histories; modules without a meaningful chart report results directly instead of forcing unrelated quantities into a graph.

The PI module evaluates the actual PI-controlled first-order transfer function, including the controller zero, rather than substituting a standard second-order numerator.

Calculators and topics covered

  • control systems
  • feedback
  • stability
  • PID
  • root locus
  • Bode
  • Nyquist
  • state space
  • digital control
  • step response
  • time constant
  • damping ratio
  • natural frequency
  • overshoot

Core equations

first-order lag:G(s)=Kτs+1,  y(t)=KU(1etτ)\text{first-order lag:}\quad G \left(s\right) = \frac{K}{\tau s + 1},\; y \left(t\right) = KU \left(1 - e^{\frac{- t}{\tau }}\right)second-order form:G(s)=ωn2s2+2ζωns+ωn2\text{second-order form:}\quad G \left(s\right) = \frac{\omega _{n}^{2}}{s^{2} + 2 \zeta \omega _{n} s + \omega _{n}^{2}}pole-zero model:G(s)=K(s+z)s2+a1s+a0\text{pole-zero model:}\quad G \left(s\right) = \frac{K \left(s + z\right)}{s^{2} + a_{1} s + a_{0}}negative feedback:T=G1+GH,  S=11+GH\text{negative feedback:}\quad T = \frac{G}{1 + GH},\; S = \frac{1}{1 + GH}Routh criterion: first-column sign changes equal the number of right-half-plane rootssteady-state error:ess=A1+Kp,  AKv,  or  AKa  for  step,  ramp,  or  parabola  inputs\text{steady-state error:}\quad e_{ss} = \frac{A}{1 + Kp},\; \frac{A}{Kv},\; \frac{or\; A}{Ka}\; for\; \text{step},\; \text{ramp},\; or\; \text{parabola}\; \text{inputs}root-locus example:1+Ks(s+a)(s+b)=0\text{root-locus example:}\quad 1 \frac{+ K}{s \left(s + a\right) \left(s + b\right)} = 0Ziegler–Nichols PID:Kp=0.6Ku,  Ti=Tu2,  Td=Tu8\text{Ziegler–Nichols PID:}\quad Kp = 0.6 Ku,\; Ti = \frac{Tu}{2},\; Td = \frac{Tu}{8}PI closed loop:T(s)=KpK(Ti  s+1)τTi  s2+Ti(1+KpK)s+KpK\text{PI closed loop:}\quad T \left(s\right) = \frac{KpK \left(Ti\; s + 1\right)}{\tau Ti\; s^{2} + Ti \left(1 + KpK\right) s + KpK}lead/lag:C(s)=K(1+sTz)1+sTp\text{lead/lag:}\quad C \left(s\right) = \frac{K \left(1 + sTz\right)}{1 + sTp}first-order Bode:G=K1+(ωτ)2,  G=arctan(ωτ)\text{first-order Bode:}\quad \left|G\right| = \frac{K}{\sqrt{1 + \left(\omega \tau \right)^{2}}},\; \angle G = - \arctan \left(\omega \tau \right)margins:GM=1L(jωpc),  PM=180+L(jωgc)\text{margins:}\quad GM = \frac{1}{\left|L \left(j\omega pc\right)\right|},\; PM = 180 {}^{\circ} + \angle L \left(j\omega gc\right)x˙=Ax+Bu,y=CxC=[BAB],O=[CCA]\begin{gathered}\dot{\mathbf{x}}=A\mathbf{x}+B\mathbf{u},\quad\mathbf{y}=C\mathbf{x}\\\mathcal{C}=\begin{bmatrix}B&AB\end{bmatrix},\quad\mathcal{O}=\begin{bmatrix}C\\CA\end{bmatrix}\end{gathered}canonical state feedback:K=[ωn2a0,  2ζωna1]\text{canonical state feedback:}\quad K = \left[\omega _{n}^{2} - a_{0},\; 2 \zeta \omega _{n} - a_{1}\right]sampling:z=esT,  fN=fs2\text{sampling:}\quad z = e^{sT},\; fN = \frac{fs}{2}discrete first order:y[k+1]=a  y[k]+b  u[k]\text{discrete first order:}\quad y \left[k + 1\right] = a\; y \left[k\right] + b\; u \left[k\right]second-order Jury conditions: |a₀|<1, 1+a₁+a₀>0, 1−a₁+a₀>0

Worked examples

PI control of a first-order thermal plant

A heater behaves as a first-order plant with a DC gain of 2 °C per unit of controller output and a time constant of 4 s. Open loop it takes about 12 s to reach 95% of a setpoint change and always leaves a steady-state offset. A PI controller is added to remove the offset and speed the loop up.

Inputs
  • Plant: K = 2, τ = 4 s, so G(s) = 2/(4s + 1)
  • Controller: K_p = 8, T_i = 0.2 s
  • Unit step setpoint change
Method
  1. The loop gain is K_p·K = 16. Closing a PI loop on a first-order plant gives the second-order characteristic polynomial τT_i s² + T_i(1 + K_pK)s + K_pK.
  2. That maps onto the standard form with ωₙ = √(K_pK/(τT_i)) = 4.472 rad/s and ζ = 0.4752.
  3. Because ζ < 1 the response is underdamped, with a damped frequency of ω_d = ωₙ√(1 − ζ²) = 3.935 rad/s.
  4. Overshoot follows M_p = exp(−πζ/√(1 − ζ²)) = 18.33%, peaking at t_p = π/ω_d = 0.798 s.
  5. The 2% settling time is approximately 4/(ζωₙ) = 1.882 s.
  6. The integrator drives steady-state error to zero for a step, so the loop settles exactly on the setpoint.

Result: The PI loop settles within 2% in 1.88 s with 18.3% overshoot and no steady-state offset, against roughly 12 s and a permanent offset for the plant alone.

Interpretation: The offset is gone because the integrator adds a pole at the origin, making this a type 1 loop. The 18.3% overshoot is the price of the aggressive integral time; lengthening T_i to 0.3 s at the same K_p raises ζ to 0.582 and cuts overshoot to 10.6% while leaving the settling time essentially unchanged at 1.88 s, which is usually the better trade for a thermal process. Note this treatment ignores actuator saturation — a real heater cannot deliver negative power, so a loop tuned this tightly will integrator-wind-up on a large setpoint step unless anti-windup is implemented.

Method and assumptions

Assumptions

  • Models are linear and time invariant unless a module explicitly describes a sampled recursion; actuator saturation, dead zones, backlash, quantisation, and rate limits are not represented.
  • Time-response calculations assume zero initial conditions and ideal step inputs.
  • The Routh module accepts real polynomials up to eighth order and handles a zero pivot with an epsilon substitution and a complete zero row with the auxiliary-polynomial derivative method.
  • The root-locus module uses the specific unity-feedback open-loop model K/[s(s+a)(s+b)] so the plotted branches have an unambiguous physical interpretation.
  • The lead/lag and Bode modules evaluate ideal rational transfer functions without transport delay.
  • Gain/phase margins and the Nyquist module use L(s)=K/[s(τ₁s+1)(τ₂s+1)].
  • The state-space controllability and observability module is restricted to a two-state SISO model.
  • State-feedback pole placement uses controllable canonical form; arbitrary A and B matrices require a general pole-placement algorithm.
  • Digital modules assume uniform periodic sampling and ideal arithmetic.

Limitations and design boundaries

  • This workbench is intended for teaching and preliminary analysis, not final safety-critical controller validation.
  • MIMO loop-shaping, observers/Kalman filters, LQR/LQG, H-infinity synthesis, nonlinear control, adaptive control, and model-predictive control are not yet implemented.
  • The Nyquist module focuses on a representative stable-plant loop form and does not automatically count arbitrary open-loop right-half-plane poles.
  • Controller tuning must still be validated against actuator limits, sensor noise, plant uncertainty, delays, and operating-point changes.
  • Numerical plots use finite sweeps and double-precision arithmetic; they are not substitutes for a dedicated simulation environment when high-order or stiff models are involved.

Sources and references

Primary sources are preferred for ratings, standards, manufacturer data, and externally defined constants.

Source policy
  • Ogata, Modern Control EngineeringTransient response, Routh–Hurwitz stability, root locus, state-space analysis, and pole placement.
  • Nise, Control Systems EngineeringPole-zero interpretation, steady-state error, frequency response, gain/phase margins, and compensator design.
  • Franklin, Powell and Emami-Naeini, Feedback Control of Dynamic SystemsSensitivity, state-space control, digital control, and frequency-domain design.
  • Åström and Murray, Feedback SystemsFeedback principles, robustness, loop shaping, state-space models, and digital implementation.
  • Åström and Hägglund, PID Controllers: Theory, Design, and TuningPID structure, practical tuning, and limitations of Ziegler–Nichols rules.