place
Pole placement design
Syntax
K = place(A,B,p)
[K,prec,message] = place(A,B,p)
Description
Given the single- or multi-input system
and a vectorp
of desired self-conjugate closed-loop pole locations,place
computes a gain matrixK
such that the state feedbacku= –Kxplaces the closed-loop poles at the locationsp
. In other words, the eigenvalues ofA–BKmatch the entries ofp
(up to the ordering).
K = place(A,B,p)
places the desired closed-loop polesp
by computing a state-feedback gain matrixK
. All the inputs of the plant are assumed to be control inputs. The length ofp
must match the row size ofA
.place
works for multi-input systems and is based on the algorithm from[1]. This algorithm uses the extra degrees of freedom to find a solution that minimizes the sensitivity of the closed-loop poles to perturbations inAorB.
[K,prec,message] = place(A,B,p)
returnsprec
, an estimate of how closely the eigenvalues ofA–BKmatch the specified locationsp
(prec
measures the number of accurate decimal digits in the actual closed-loop poles). If some nonzero closed-loop pole is more than 10% off from the desired location,message
contains a warning message.
You can also useplace
for estimator gain selection by transposing theA
matrix and substitutingC'
forB
.
l = place(A',C',p).'
Examples
Pole Placement Design
Consider a state-space system(a,b,c,d)
with two inputs, three outputs, and three states. You can compute the feedback gain matrix needed to place the closed-loop poles atp = [-1 -1.23 -5.0]
by
p = [-1 -1.23 -5.0]; K = place(a,b,p)
Algorithms
place
uses the algorithm of[1]which, for multi-input systems, optimizes the choice of eigenvectors for a robust solution.
In high-order problems, some choices of pole locations result in very large gains. The sensitivity problems attached with large gains suggest caution in the use of pole placement techniques. See[2]for results from numerical testing.
References
[1] Kautsky, J., N.K. Nichols, and P. Van Dooren, "Robust Pole Assignment in Linear State Feedback,"International Journal of Control,41 (1985), pp. 1129-1155.
[2]Laub, A.J. and M. Wette,Algorithms and Software for Pole Assignment and Observers, UCRL-15646 Rev. 1, EE Dept., Univ. of Calif., Santa Barbara, CA, Sept. 1984.