State Feedback Gain (Pole Placement) Calculator
Compute the state feedback gain vector K that places a 2-state system's closed-loop poles at a target damping ratio and natural frequency.
🎚️ What is State Feedback Gain (Pole Placement)?
State feedback gain is the vector K used in the control law u = -Kx, which feeds a weighted combination of a system's internal state variables back into its input. Pole placement is the design procedure for choosing K so that the resulting closed-loop system, with state matrix A minus BK, has poles at exactly the locations the designer wants, typically expressed as a target damping ratio and natural frequency for the closed-loop response.
Control engineers use pole placement whenever a system's natural (open-loop) dynamics do not meet the performance requirements on their own. A robotics engineer designing a joint controller places closed-loop poles to get a fast, well-damped response without excessive overshoot that could damage hardware. An aerospace engineer stabilizing an inherently unstable aircraft or drone attitude mode uses state feedback to move unstable open-loop poles into the stable left-half plane. A process control engineer tuning a multi-state chemical process model chooses closed-loop poles that balance response speed against actuator limits.
A common misconception is that pole placement and PID tuning solve the same problem. In reality, state feedback pole placement is a full-state, model-based design method, it requires access to (or an estimate of) every state variable and a known state-space model, and it can place poles anywhere the system's controllability allows. Classical PID tuning, by contrast, works from the output alone and offers only limited, indirect control over closed-loop pole locations.
This calculator takes a 2-state open-loop system's characteristic polynomial coefficients a1 and a0 (in the same controllable canonical form used across this site's control systems calculators), plus a target damping ratio zeta and natural frequency omega_n, and returns the state feedback gain vector K, the open-loop poles, the resulting closed-loop poles, a damping classification, and a pole-map diagram showing exactly how state feedback moves the poles.
📐 Formula
📖 How to Use This Calculator
Steps
💡 Example Calculations
Example 1 — Underdamped Placement from a Stable Open-Loop System
a1 = 4, a0 = 13, ζ = 0.7, ωn = 5 rad/s
Example 2 — Stabilizing a Marginally Stable Open-Loop System
a1 = 0, a0 = 4, ζ = 0.5, ωn = 3 rad/s
Example 3 — Overdamped Placement
a1 = 6, a0 = 9, ζ = 1.2, ωn = 4 rad/s
❓ Frequently Asked Questions
🔗 Related Calculators
What is state feedback gain and pole placement?
State feedback is a control law u = -Kx that feeds a linear combination of a system's internal states back into its input, and pole placement is the design process of choosing the gain vector K so that the resulting closed-loop system A minus BK has poles at chosen locations, typically selected to meet a target damping ratio and natural frequency.
How do you calculate the state feedback gain K for a 2-state system?
For a system in controllable canonical form with A = [[0,1],[-a0,-a1]] and B = [[0],[1]], state feedback gives A minus BK a characteristic polynomial s^2 + (a1+k2)s + (a0+k1) = 0. Matching this to the desired polynomial s^2 + 2*zeta*omega_n*s + omega_n^2 = 0 gives k1 = omega_n^2 minus a0 and k2 = 2*zeta*omega_n minus a1.
What is the desired closed-loop characteristic polynomial?
For a standard second-order response with damping ratio zeta and natural frequency omega_n, the desired closed-loop characteristic polynomial is s^2 + 2*zeta*omega_n*s + omega_n^2 = 0, this is the same standard second-order form used throughout classical control for specifying settling time, overshoot, and rise time.
What damping ratio should I choose for pole placement?
A damping ratio (zeta) around 0.7 is a widely used starting point, giving a fast response with only modest overshoot (roughly 5%). Lower zeta values (0.3 to 0.6) give a faster rise but more overshoot and ringing, while zeta at or above 1 eliminates overshoot entirely at the cost of a slower response.
How does natural frequency affect the closed-loop response?
For a fixed damping ratio, increasing the natural frequency omega_n makes the closed-loop response faster in every respect, settling time, rise time, and peak time all scale inversely with omega_n, while the percent overshoot (which depends only on zeta) stays exactly the same.
What does it mean if the open-loop poles are unstable or marginally stable?
It means the uncontrolled system either diverges or oscillates without decaying on its own. State feedback pole placement can move these poles to any desired stable location (as long as the system is controllable), which is exactly why pole placement is used, to convert a poorly behaved open-loop system into a closed-loop system with the exact dynamic response the designer wants.
What is the difference between underdamped, critically damped, and overdamped closed-loop poles?
Underdamped (zeta less than 1) gives a complex-conjugate pole pair and an oscillatory, overshooting response. Critically damped (zeta equal to 1) gives a repeated real pole and the fastest response with no overshoot. Overdamped (zeta greater than 1) gives two distinct real poles and a slower, non-oscillatory response.
Is this pole placement method the same as Ackermann's formula?
For this 2-state system already given in controllable canonical form, direct coefficient matching (used here) and Ackermann's formula give the identical result, Ackermann's formula is a more general matrix expression needed for systems not already in canonical form or with more than two states, but it reduces to the same simple arithmetic in this special case.
Does pole placement require the system to be controllable?
Yes. Pole placement can move a system's poles to any arbitrary location only if the system is controllable (its controllability matrix has full rank). A system already given in controllable canonical form, as used by this calculator, is controllable by construction, so pole placement always succeeds here.
Why do the eigenvalues of A minus BK equal the desired closed-loop poles?
This is the defining property of successful pole placement: once K is chosen so that A minus BK's characteristic polynomial exactly matches the desired s^2 + 2*zeta*omega_n*s + omega_n^2 polynomial, its eigenvalues (the closed-loop poles) are, by definition, the roots of that same polynomial, which are exactly minus zeta*omega_n plus or minus j*omega_n*square root of (1 minus zeta squared) for the underdamped case.