<< abcdchk | Control System functions | append >> |
K = acker(A, B, P) |
State matrix: Nx-by-Nx matrix
Input-to-state matrix: Nx-by-Nu matrix
Desired closed-loop pole location vector.
feedback gain matrix.
The function acker computes the feedback gain matrix K for a single-input system described by the state-space matrices A and B.
The closed-loop poles of the system under the feedback law u = -Kx are determined by the specified vector P, where P represents the desired pole locations.
The closed-loop poles are essentially the eigenvalues of the matrix A - B*K, calculated as P = eig(A - B*K).
It's important to note that this algorithm utilizes Ackermann's formula.
However, users should be aware that this method may not be numerically reliable, particularly for systems of order greater than 10 or for systems that are weakly controllable.
If the algorithm encounters numerical instability or if the closed-loop poles deviate significantly (more than 10%) from the desired locations specified in P, a warning message is issued to alert the user about potential issues.
Users are advised to exercise caution and consider alternative methods for higher-order or weakly controllable systems.
A = [0 1 0; 0 0 1;-1 -5 -6];
B = [ 0; 0; 1];
P = [-10 -2-4i -2+4i];
K = acker(A, B, P)
Version | Description |
---|---|
1.0.0 | initial version |
Allan CORNET