Question 10.22: Full-State Feedback Control Design Consider the DC motor–dri...
Full-State Feedback Control Design
Consider the DC motor-driven cart discussed in Example 10.12, in which a PD controller was designed to achieve the requirements: overshoot M_{\mathrm{p}}<10 \% and rise time t_{\mathrm{r}}<0.15 \mathrm{~s}.
a. Find a full-state feedback controller such that the closed-loop system achieves the same requirements.
b. Use MATLAB to find the control gain matrix \mathbf{K}.
Learn more on how do we answer questions.
a. The transfer function of the cart is given by
G(s)=\frac{Y(s)}{U(s)}=\frac{3.778}{s^{2}+16.883 s},
where the output y is the position of the cart and the input u is the voltage applied to the DC motor. Using the position and the velocity as the state variables, that is, x_{1}=y and x_{2}= \dot{y}, we find the state-space model as
\begin{aligned} & \dot{\mathbf{x}}=\left[\begin{array}{cc} 0 & 1 \\ 0 & -16.883 \end{array}\right] \mathbf{x}+\left[\begin{array}{c} 0 \\ 3.778 \end{array}\right] u, \\ & y=\left[\begin{array}{ll} 1 & 0 \end{array}\right] \mathbf{x} . \end{aligned}
For a second-order system, the gain matrix \mathbf{K} is 1 \times 2 and
\mathbf{K}=\left[\begin{array}{ll} k_{1} & k_{2} \end{array}\right] .
Applying Equation 10.71
\left|s\mathbf{I}-(\mathbf{A}-\mathbf{B}\mathbf{K})\right|=0, (10.71)
yields the theoretical characteristic polynomial
\begin{aligned} |s \mathbf{I}-\mathbf{A}+\mathbf{B K}| & =\left|\left[\begin{array}{cc} s & 0 \\ 0 & s \end{array}\right]-\left[\begin{array}{cc} 0 & 1 \\ 0 & -16.883 \end{array}\right]+\left[\begin{array}{c} 0 \\ 3.778 \end{array}\right]\left[\begin{array}{ll} k_{1} & k_{2} \end{array}\right]\right| \\ & =\left|\begin{array}{cc} s & -1 \\ 3.778 k_{1} & s+16.883+3.778 k_{2} \end{array}\right| \\ & =s^{2}+\left(16.883+3.778 k_{2}\right) s+3.778 k_{1} . \end{aligned}
The time-domain specifications, M_{\mathrm{p}}<10 \% and t_{\mathrm{r}}<0.15 \mathrm{~s}, indicate that \zeta>0.59 and \omega_{\mathrm{n}}> 12.33 \mathrm{rad} / \mathrm{s}. Choose the same values of \omega_{\mathrm{n}} and \zeta as in Example 10.12, that is, \omega_{\mathrm{n}}=13.5 \mathrm{rad} / \mathrm{s} and \zeta=0.65. The desired closed-loop poles are then located at p_{1,2}=-\zeta \omega_{n} \pm j \omega_{n} \sqrt{1-\zeta^{2}}= -8.775 \pm 10.26 \mathrm{j}. Applying Equation 10.72
(s-s_{1})\;(s-s_{2})…(s-s_{n})=0, (10.72)
gives the desired characteristic polynomial
\left(s-p_{1}\right)\left(s-p_{2}\right)=s^{2}+2 \zeta \omega_{\mathrm{n}} s+\omega_{\mathrm{n}}^{2}=s^{2}+17.55 s+182.25
Equating the two characteristic polynomials, we have
\begin{aligned} & 16.883+3.778 k_{2}=17.55 \\ & 3.778 k_{1}=182.25 \end{aligned}
which gives \mathbf{K}=\left[\begin{array}{ll}48.24 & 0.18\end{array}\right]. So the full-state feedback controller is
u=-\mathbf{K x}=-48.24 x_{1}-0.18 x_{2}.
b. The following is the MATLAB session used to compute a full-state feedback control gain matrix \mathbf{K} using pole placement design:
>> A = [0 1; 0 -16.883];
>> B = [0; 3.778];
>> p = [-8.775+10.26j -8.775-10.26j]; % desired poles
>> K = place(A,B,p);
The command place returns the gain matrix \mathbf{K}, for which the full-state feedback u=-\mathbf{K} \mathbf{x} places the closed-loop poles at the desired locations.
It is interesting to see that the values of the gains k_{1} and k_{2} are the same as the values of the proportional and derivative gains k_{\mathrm{p}} and k_{\mathrm{D}} found in Example 10.12. This is because of the way we selected the states. In this example, u=-48.24 y-0.18 \dot{y}, and in Example 10.12, u=48.24(r-y)+0.18 \mathrm{d}(r-y) / \mathrm{d} t. If the reference signal r is zero, the two controllers will end up with the same expression. This implies that the closed-loop system with full-state feedback is a regulation system. For tracking control, the control law u=-\mathbf{K x} needs to be modified (more details can be found in control texts). Note that if a different set of state variables is selected, the corresponding gain matrix \mathbf{K} will be different. The reader can solve Problem 5 in Problem Set 10.7 to verify this conclusion.