Pole Placement
 Pole Placement SISO All MATLAB Articles In order to prevent spam, users must register before they can edit or create articles.

## 1 Introduction to Pole Placement (or Polynomial Approach or Polynomial Design) to Controller Design

Pole placement is the most straightforward means of controller design.

1. The design starts with an assumption of what form the controller must take in order to control the given plant.
2. From that assumption a symbolic characteristic equation is formed.
3. At this point the desired closed-loop poles must be determined.
4. Typically, specifications designate overshoot, rise time, etc. This leads to the formation of a 2nd order equation. Most of the time the final characteristic equation will have more than 2 poles. So additional desired poles must be determined.
5. Once the closed loop poles are decided a desired characteristic equation is formed.
6. The coefficients for each power of s are equated from the symbolic characteristic equation to the desired.
7. Algebra is used to determine the controller coefficients necessary to achieve the desired closed-loop poles with the assumed controller form.

Typically, an integrator is used to drive the steady-state error towards 0. This implies that the final characteristic equation will have at least 1 more pole than the uncontrolled system started with.

The following pole placement examples show you how to decide on the desired closed-loop poles, determine the "extra" closed-loop poles, and create a generic and PID controller to achieve those desired closed-loop poles.

## 2 Generic Control design using Pole Placement

This example is lifted from the hovering helicopter example in which the dynamics of Blackhawk helicopter are defined and controller for pitch attitude is designed. Feedforward commands are generated by integrating gyro measurements.

Let's assume a 2nd order system of with the following form

 $LaTeX: H(s)=K\frac{\omega_n^2}{s^2+2\zeta\omega_n s+\omega_n^2} \mbox{ for } 0 \le \zeta \le 1$ Generic 2nd Order System

where
$LaTeX: K$ is the system gain
$LaTeX: \omega_n$ is the system's natural frequency
$LaTeX: \zeta$ is the system's damping ratio.

Also, we assume a compensator of form

 $LaTeX: K\left(s\right)=\frac{\left(B_{0}+B_{1}s\right)}{A_{0}+A_{1}s}$ 1

is adequate to control the plant.

The resulting characteristic equation is

 $LaTeX: \Phi=\left(s^2+2\zeta\omega_ns+\omega_n^2\right)\left(A_0+A_1s\right) + \left(B_0+B_1s\right)\omega_n^2$

This can be reduced to

 $LaTeX: \Phi=A_1s^3+\left(2A_1\zeta\omega_n+A_0\right)s^2+\left(A1\omega_n^2+2A_0\zeta\omega_n+B_1\omega_n^2\right)s+\omega_n^2\left(A_0+B_0\right)$ 2a

In matrix form this is

 $LaTeX: \begin{bmatrix}p_0\\p_1\\p_2\\p_3\end{bmatrix}=\begin{bmatrix}\omega_n^2 & \omega_n^2 & 0 & 0 \\ 2\zeta\omega_n & 0 & \omega_n^2 & \omega_n^2 \\ 1 & 0 & 2\zeta\omega_n & 0 \\ 0 & 0 & 1 & 0\end{bmatrix}\begin{bmatrix}A_0\\B_0\\A_1\\B_1\end{bmatrix}$ 2b

At this point we must decide what closed loop poles we would like. In order to do this we need to consider system overshoot and settling time (or time to peak). The equations for each are

 $LaTeX: M_p=e^{\left(\frac{-\pi\zeta}{\sqrt{1-\zeta^2}}\right)}$ Overshoot

 $LaTeX: \tau_s=\frac{4.6}{\zeta\omega_n}$ Settling Time

 $LaTeX: \tau_p=\frac{\pi}{\omega_n\sqrt{1-\zeta^2}}$ Time to Peak

I've never worked on a helicopter but I'm going to guess that minimizing overshoot is desired. Using the Overshoot equation we find that a common value, $LaTeX: \zeta=\frac{1}{\sqrt{2}}$, provides an overshoot of only 4.3%. Examination of the Time to Peak equation lets you know that a value of $LaTeX: \omega_n=\sqrt{2}$ provides a peak time of \pi seconds. However, a little over 3 seconds is probably too slow. Let's shoot for 0.5 seconds instead. This requires $LaTeX: \omega_n=\sqrt{2}\frac{\pi}{0.5}$.

Recap

• $LaTeX: \zeta=\zeta_{desired}=\frac{1}{\sqrt{2}}$
• $LaTeX: \omega_{n}=\omega_{desired}=\sqrt{2}\frac{\pi}{0.5}=8.8858$

However, this leaves us with only 2 roots (poles) in our desired characteristic equation. Since we want the above parameters to dominate the closed loop system dynamics we choose a 3rd pole that is well above the desired natural frequency.

 $LaTeX: \left(s+a\right)\left(s^2+2\zeta_{desired}\omega_{desired}s+\omega_{desired}^2\right)$ 3

where

• $LaTeX: a=10\omega_{desired}$ is our 3rd pole.

This 3rd pole is a high frequency pole that allows the desired poles to the dominate the closed-loop system response while allowing the desired characteristic equation to have the correct number of poles.

Our desired characteristic equation, Eqn. 3, can be reduced to

 $LaTeX: \Phi_{desired}\left(s\right)=s^3+\left(2\zeta_{desired}\omega_{desired}+a\right)s^2+\left(\omega_{desired}^2+2\zeta_{desired}\omega_{desired}a\right)s+a\omega_{desired}^2$

This results in

 $LaTeX: p_3=1$

 $LaTeX: p_2=2\zeta_{desired}\omega_{desired}+a$

 $LaTeX: p_1=\omega_{desired}^2+2\zeta_{desired}\omega_{desired}a$

 $LaTeX: p_0=a\omega_{desired}^2$

From here we go back to our characteristic equation (Eqn. 2a or 2b) to determine

 $LaTeX: A_1=1$

 $LaTeX: A_0=2\zeta_{desired}\omega_{desired}+a-2\zeta\omega_n$

 $LaTeX: B_0=\frac{\left(a\omega_{desired}^2-A_0\omega_n^2\right)}{\omega_n^2}$

 $LaTeX: B_1=\frac{\omega_{desired}^2+2\zeta_{desired}\omega_{desired}a-2\zeta\omega_nA_0-A_1\omega_n^2}{\omega_n^2}$

## 3 PID Control design using Pole Placement

Let's assume a 2nd order system of with the following form

 $LaTeX: H(s)=K\frac{\omega_n^2}{s^2+2\zeta\omega_n s+\omega_n^2} \mbox{ for } 0 \le \zeta \le 1$ Generic 2nd Order System

where
$LaTeX: K$ is the system gain
$LaTeX: \omega_n$ is the system's natural frequency
$LaTeX: \zeta$ is the system's damping ratio.

Let's assume we have a PID controller of form

 $LaTeX: C_{PID}\left(s\right)=K_P\left(k+\frac{k_{i}}{s}+k_{d}s\right)$ PID[1]

Roll $LaTeX: K_p$ inside the parentheses and add a factor to denominator of the integrator

 $LaTeX: C_{PID}\left(s\right)=k+\frac{k_{i}}{\alpha s}+k_{d}s$

Do a little algebra...

 $LaTeX: C_{PID}\left(s\right)=\frac{k\alpha s+k_{i}+k_{d}\alpha s^2}{\alpha s}$

Finally, rearrange

 $LaTeX: C_{PID}\left(s\right)=\frac{k_{d}\alpha s^2+k\alpha s+k_{i}}{\alpha s}$

The characteristic equation of this system is

 $LaTeX: \Phi_{CL}=\left(s^2+2\zeta\omega_{n}s+\omega_{n}^2\right)\alpha s+\omega_{n}^2\left(k_{d}\alpha s^2+k\alpha s+k_{i}\right)$

 $LaTeX: \Phi_{CL}=\alpha s^3+\left(2\zeta\omega_{n}\alpha+k_{d}\alpha\omega_{n}^2\right)s^2+\left(\omega_{n}^2+k\alpha\omega_{n}^2\right)s+\omega_{n}^2k_{i}$

From the order of $LaTeX: \Phi_{CL}$ we know we need 3 stable closed loop poles so the form of the desired characteristic equation is

 $LaTeX: \beta s^3+\gamma s^2+\chi s+\nu$

Therefore

Table 1: Pole Placement Results
Result

$LaTeX: s^3$

$LaTeX: \beta=\alpha$

$LaTeX: s^2$

$LaTeX: \gamma=\left(2\zeta\omega_{n}\alpha+k_{d}\alpha\omega_{n}^2\right)$

$LaTeX: s^1$

$LaTeX: \chi=\left(\omega_{n}^2+k\alpha\omega_{n}^2\right)$

$LaTeX: s^0$

$LaTeX: \nu=\omega_{n}^2k_{i}$

Once the desired closed loop poles are determined then $LaTeX: \beta, \gamma, \chi,$ and $LaTeX: \nu$ can be determined. Algebra does the rest.

## 4 Notes on 3rd poles

In the [Helicopter Hover Example|hovering helicopter example] the desired closed loop poles are determined by deciding what a reasonable overshoot and rise time would be. This allowed for the determination of a desired $LaTeX: \zeta$ and $LaTeX: \omega_n$. From those a standard 2nd order system was formed. Since 3 poles were required, just as in the cases provided here, a 3rd pole was placed at an arbitrarily high frequency. The desired chracteristic equation from that became

 $LaTeX: \left(s+a\right)\left(s^2+2\zeta_{desired}\omega_{desired}s+\omega_{desired}^2\right)$

where

• $LaTeX: a=10\omega_{desired}$ is our arbitrarily high 3rd pole.

The addition of the pole at $LaTeX: -a$ required that a prefilter be included to reduce overshoot. That prefilter was

 $LaTeX: W\left(s\right)=\frac{a}{\left(s+a\right)}$