Skip to content
Feb 25

State Feedback and Pole Placement

MT
Mindli Team

AI-Generated Content

State Feedback and Pole Placement

Controlling a dynamic system often means shaping how it responds to commands or disturbances. While many controllers work with just the system's output, state feedback offers a powerful alternative by using knowledge of every internal state variable to dictate performance directly. This method's core strength lies in pole placement, the deliberate assignment of a system's closed-loop eigenvalues, which ultimately determines its stability, speed, and oscillation. Mastering this technique allows you to design a controller that makes a system behave exactly as you specify, provided you can access or reconstruct its full state.

The Principle of Full-State Feedback

In state-space control theory, a linear time-invariant system is often represented as: $$\dot{x} = Ax + Bu$$ $$y = Cx + Du$$ Here, $x$ is the state vector containing the variables that define the system's internal condition, $u$ is the control input, and $y$ is the measured output. The goal of state feedback is to generate the control signal $u$ as a linear combination of all the states. This is achieved through the state feedback control law:

$$u = -Kx$$

In this equation, $K$ is the gain matrix (or row vector for a single-input system). The negative sign convention signifies negative feedback. When this control law is applied, the system's closed-loop dynamics become: $$\dot{x} = Ax + B(-Kx) = (A - BK)x$$ The matrix $(A - BK)$ is the new closed-loop system matrix. Its eigenvalues are the closed-loop poles. The fundamental result of pole placement theory is that if the original system $(A, B)$ is controllable, then you can arbitrarily place the closed-loop poles (and thus dictate the system's dynamic response) anywhere in the complex plane by choosing the appropriate gain matrix $K$.

Selecting Desired Pole Locations

You don't place poles at random; their locations are chosen to meet specific transient response specifications. The poles of a system are the roots of its characteristic equation and directly map to time-domain performance. For a dominant second-order pair, specifications like rise time, settling time, peak overshoot, and steady-state error translate directly into desired regions in the s-plane.

For instance, a specification for a maximum settling time $T_s$ requires poles to have a real part more negative than $-4 / T_s$. A maximum percent overshoot requirement translates to a minimum damping ratio $\zeta$, which corresponds to poles lying within a specific angle from the negative real axis. For higher-order systems, the strategy is often to place two dominant poles to meet the transient requirements and place the remaining poles far enough into the left-half plane so they decay rapidly and have negligible effect on the overall response. This balances performance with realistic control effort.

Computing the Gains: Ackermann's Formula

Once you have a desired characteristic polynomial, you need to calculate the gain vector $K$ that achieves it. For single-input systems, Ackermann's formula provides a direct and elegant computational method. If the desired characteristic equation is: $$s^n + \alpha_{n-1}s^{n-1} + ... + \alpha_1 s + \alpha_0 = 0$$ Then the required state feedback gain is given by: $$K = \begin{bmatrix}0 & 0 & \cdots & 1\end{bmatrix} \mathcal{C}^{-1} \phi_d(A)$$

Let's break this down. The matrix $\mathcal{C}$ is the controllability matrix $[B \ AB \ A^2B \ ... \ A^{n-1}B]$. The term $\phi_d(A)$ is the desired characteristic polynomial evaluated at the matrix $A$ itself (using the Cayley-Hamilton theorem): $$\phi_d(A) = A^n + \alpha_{n-1}A^{n-1} + ... + \alpha_1 A + \alpha_0 I$$ Ackermann's formula elegantly packages the algebra of matching coefficients and requires system controllability (ensuring $\mathcal{C}$ is invertible). For multi-input systems, the gain matrix $K$ is not unique, and other design algorithms, like those based on robust eigenstructure assignment, are typically used.

The Need for State Estimation

The state feedback law $u = -Kx$ assumes that every state variable is available for measurement. In practical systems, this is often impossible or prohibitively expensive. Sensors may only measure the output $y$, which is a combination of states. To implement full-state feedback, you must therefore build an observer (or state estimator).

An observer is a dynamic system that uses the known inputs $u$ and measured outputs $y$ of the real plant to produce an estimate $\hat{x}$ of the true state vector $x$. A common structure is the Luenberger observer, which operates on the principle of corrective feedback: $$\dot{\hat{x}} = A\hat{x} + Bu + L(y - C\hat{x})$$ The matrix $L$ is the observer gain, designed to make the estimation error $(x - \hat{x})$ decay to zero rapidly. Critically, the design of the observer (pole placement via $L$) and the design of the state feedback controller (pole placement via $K$) can be performed independently—a principle known as the separation principle. You first design $K$ to place the closed-loop system poles where you want them. Then, you design $L$ to place the observer poles typically 2-5 times faster than the controller poles, ensuring the estimator dynamics settle quickly and the overall system behaves as if the true states were being used.

Common Pitfalls

  1. Ignoring Controllability: Attempting pole placement on an uncontrollable system is futile. You cannot arbitrarily assign poles associated with the uncontrollable modes. Always check the rank of the controllability matrix $\mathcal{C}$ before proceeding with the design.
  2. Unrealistic Pole Placement: Placing poles extremely far to the left in the s-plane will make the system very fast in theory. However, this typically requires immense control effort ($u$) that saturates actuators and can excite high-frequency, unmodeled dynamics, leading to instability or failure. Always consider the practical limits of your actuators.
  3. Neglecting Observer Design: Simply designing $K$ for a beautiful simulated response is only half the job. If the states are not measured, a poorly designed observer with slow poles will ruin the closed-loop performance. The observer poles must be sufficiently faster than the closed-loop poles to avoid interference.
  4. Forgetting About Reference Tracking: The standard state feedback law $u=-Kx$ is designed for regulation (driving states to zero). To make the system track a non-zero reference command $r$, you need to introduce feedforward or integral action. A common method is to augment the system with an integrator state or to compute a precompensator gain $N$ to achieve $y = r$ at steady-state.

Summary

  • State feedback uses the control law $u = -Kx$ to manipulate all the internal states of a system, changing its closed-loop dynamics to $(A - BK)$.
  • The power of this method is pole placement: by choosing $K$, you can set the eigenvalues of $(A-BK)$ to desired locations, directly controlling the system's transient response (speed, damping, stability), provided the system is controllable.
  • Ackermann's formula provides a direct calculation for the gain vector $K$ in single-input systems based on the desired characteristic polynomial.
  • Since all states are rarely measured, a state observer (like a Luenberger observer) is required to estimate $\hat{x}$ from the outputs $y$ and inputs $u$, allowing the implementation $u = -K\hat{x}$. The controller and observer can be designed separately.

Write better notes with AI

Mindli helps you capture, organize, and master any subject with AI-powered summaries and flashcards.