NivaarExam PrepOfficial exam papers ↗

22-Elec-B2 Advanced Control Systems · May 2016

Question 3 of 6: Full state feedback with pole placement and unity DC gain

Nivaar worked solution (AI-drafted; not reviewed by a licensed engineer)

Notes on this paper

Paper format. 07-Elec-B2 Advanced Control Systems, May 2016 — closed book, three hours, six questions. The instructions state that “any four questions constitute a complete paper” and that “all questions are of equal value”, so each carries 25 marks and a candidate answers four. Tables of Laplace and z-transforms are appended to the paper. All six questions are worked below, because this set is a study resource rather than a three-hour sitting.

Reference texts. G. F. Franklin, J. D. Powell and A. Emami-Naeini, Feedback Control of Dynamic Systems, 8th ed. (Ch. 3 root locus and Routh, Ch. 6 frequency response and margins, Ch. 7 state-space design); K. Ogata, Modern Control Engineering, 5th ed. (Ch. 5, 7, 9); K. J. Åström and B. Wittenmark, Computer-Controlled Systems: Theory and Design, 3rd ed. (Ch. 2 sampling and the ZOH equivalent, Ch. 4 pole placement, Ch. 13 identification); G. F. Franklin, J. D. Powell and M. Workman, Digital Control of Dynamic Systems, 3rd ed. (Ch. 4, 8). These are the references listed for exam code 07-Elec-B2 / 16-Elec-B2 in the Engineers Canada syllabus.

Question 3: Full state feedback with pole placement and unity DC gain (25 marks)

Question text not reproduced: the examination questions are © Engineers and Geoscientists BC. Open the official past paper (linked at the top of this page) to read the question, then follow the worked solution below.

Given. A third-order state-space plant whose input vector carries an unspecified scalar gain $B$, with the output taken as the third state.

Given data
ItemValue
State matrix$A=[[-1,0,0];[1,-2,-1];[0,1,0]]$
Input vector$b=B\,[1,\,0,\,0]^{T}$
Output vector$c=[0,\,0,\,1]$
Control law$u(t)=L\,r(t)-K\,x(t)$
Desired closed-loop poles$s=-5,\ -3+j,\ -3-j$
Desired DC gain$y(\infty)/r=1$

Find. The state-feedback row vector $K$ that places the three closed-loop poles as specified, and the scalar reference gain $L$ that makes the steady-state output equal the steady-state reference.

rL+−uplantx' = Ax + bu , y = cxystate vector xK
Control structure: the reference is scaled by L, the full state vector is fed back through K. Only K moves the poles; only L sets the DC gain.

Approach. Expand $\det\!\left(sI-(A-bK)\right)$ symbolically, match it coefficient by coefficient against the desired characteristic polynomial to get $K$, then evaluate the resulting closed-loop transfer function at $s=0$ to get $L$.

  1. Part 1 — find the open-loop characteristic polynomial. The plant matrix is block lower-triangular in its first column, so expanding along the top row$$\det(sI-A)=(s+1)\left[s(s+2)+1\right]=(s+1)(s+1)^{2}=(s+1)^{3}=s^{3}+3s^{2}+3s+1$$All three open-loop poles sit at $s=-1$. The plant transfer function is $c(sI-A)^{-1}b=B/(s+1)^{3}$ — a triple lag with no finite zero, which is worth knowing before designing anything.
  2. Part 2 — form the closed-loop characteristic polynomial symbolically. With $u=Lr-Kx$ and $K=[k_{1}\;k_{2}\;k_{3}]$, the feedback term $bK$ only populates the first row, because $b=B[1\;0\;0]^{T}$. Expanding $\det\!\left(sI-(A-bK)\right)$ gives a tidy result:$$\det\!\left(sI-(A-bK)\right)=(s+1)^{3}+Bk_{1}(s+1)^{2}+Bk_{2}s+Bk_{3}$$Each gain therefore enters exactly one place in the polynomial, which is what makes this a three-equation linear match rather than an Ackermann computation.
  3. Part 3 — expand and match against the desired polynomial. The requested poles give$$\alpha_{d}(s)=(s+5)\left(s^{2}+6s+10\right)=s^{3}+11s^{2}+40s+50$$while the expansion above is $s^{3}+(3+Bk_{1})s^{2}+(3+2Bk_{1}+Bk_{2})s+(1+Bk_{1}+Bk_{3})$. Equating coefficients in descending order and back-substituting each result into the next:
  4. Part 4 — solve the three equations in order. $$3+Bk_{1}=11\Rightarrow Bk_{1}=8;\qquad 3+16+Bk_{2}=40\Rightarrow Bk_{2}=21;\qquad 1+8+Bk_{3}=50\Rightarrow Bk_{3}=41$$$$\boxed{\;K=\frac{1}{B}\begin{bmatrix}8&21&41\end{bmatrix}\;}$$Substituting $B=1$ and computing the eigenvalues of $A-bK$ numerically returns $-5$ and $-3\pm j$, confirming the placement.
  5. Part 5 — choose $L$ from the closed-loop DC gain. The closed-loop transfer function is $Y(s)/R(s)=L\,c\,\left(sI-(A-bK)\right)^{-1}b$. Because $c$ picks the third state and $b$ drives only the first, the numerator is the $(3,1)$ entry of the adjugate, which evaluates to the constant $B$ with no $s$ dependence:$$\frac{Y(s)}{R(s)}=\frac{BL}{s^{3}+11s^{2}+40s+50}$$State feedback moves poles but leaves the numerator alone, and here that numerator is a pure gain.
  6. Part 6 — impose unity DC gain. Setting $s=0$,$$\frac{Y(0)}{R(0)}=\frac{BL}{50}=1\quad\Longrightarrow\quad\boxed{\;L=\frac{50}{B}\;}$$so the reference gain is exactly the constant term of the desired characteristic polynomial divided by the input gain. Evaluating $c\left(-(A-bK)\right)^{-1}bL$ numerically at $B=1$ returns $1.000$, which closes the design. Note that this feed-forward trick gives zero steady-state error only if $B$ and the plant model are exact; there is no integral action in the loop, so a modelling error in $B$ shows up directly as a DC offset.
Final results
QuantitySymbolValue
Open-loop characteristic polynomial$\det(sI-A)$$(s+1)^{3}$
Open-loop transfer function$c(sI-A)^{-1}b$$B/(s+1)^{3}$
Desired characteristic polynomial$\alpha_{d}(s)$$s^{3}+11s^{2}+40s+50$
State-feedback gains$K$$[\,8/B\quad 21/B\quad 41/B\,]$
Reference gain$L$$50/B$
Closed-loop transfer function$Y/R$$\dfrac{50}{s^{3}+11s^{2}+40s+50}$ (at $B$ arbitrary)