HOME

TheInfoList



OR:

In
control theory Control theory is a field of mathematics that deals with the control of dynamical systems in engineered processes and machines. The objective is to develop a model or algorithm governing the application of system inputs to drive the system to a ...
, Ackermann's formula is a
control system A control system manages, commands, directs, or regulates the behavior of other devices or systems using control loops. It can range from a single home heating controller using a thermostat controlling a domestic boiler to large industrial ...
design method for solving the pole allocation problem for invariant-time systems by
Jürgen Ackermann Jürgen or Jurgen is a popular masculine given name in Germany, Estonia, Belgium and the Netherlands. It is cognate with George. Notable people named Jürgen include: A * Jürgen Ahrend (born 1930), German organ builder *Jürgen Alzen (born 1 ...
. One of the primary problems in control system design is the creation of controllers that will change the dynamics of a system by changing the eigenvalues of the matrix representing the dynamics of the closed-loop system. This is equivalent to changing the poles of the associated
transfer function In engineering, a transfer function (also known as system function or network function) of a system, sub-system, or component is a mathematical function that theoretically models the system's output for each possible input. They are widely used ...
in the case that there is no cancellation of poles and zeros.


State feedback control

Consider a linear continuous-time invariant system with a state-space representation : \dot(t)=Ax(t)+Bu(t) : y(t)=Cx(t) where ''x'' is the state vector, ''u'' is the input vector, and ''A'', ''B'' and ''C'' are matrices of compatible dimensions that represent the dynamics of the system. An input-output description of this system is given by the
transfer function In engineering, a transfer function (also known as system function or network function) of a system, sub-system, or component is a mathematical function that theoretically models the system's output for each possible input. They are widely used ...
: G(s) = C(sI-A)^B=C\ \frac\ B. Since the denominator of the right equation is given by the
characteristic polynomial In linear algebra, the characteristic polynomial of a square matrix is a polynomial which is invariant under matrix similarity and has the eigenvalues as roots. It has the determinant and the trace of the matrix among its coefficients. The ...
of ''A'', the poles of ''G'' are
eigenvalue In linear algebra, an eigenvector () or characteristic vector of a linear transformation is a nonzero vector that changes at most by a scalar factor when that linear transformation is applied to it. The corresponding eigenvalue, often denot ...
s of ''A'' (note that the converse is not necessarily true, since there may be cancellations between terms of the numerator and the denominator). If the system is
unstable In numerous fields of study, the component of instability within a system is generally characterized by some of the outputs or internal states growing without bounds. Not all systems that are not stable are unstable; systems can also be m ...
, or has a slow response or any other characteristic that does not specify the design criteria, it could be advantageous to make changes to it. The matrices ''A'', ''B'' and ''C'', however, may represent physical parameters of a system that cannot be altered. Thus, one approach to this problem might be to create a feedback loop with a gain ''K'' that will feed the state variable ''x'' into the input ''u''. If the system is controllable, there is always an input u(t) such that any state x_ can be transferred to any other state x(t). With that in mind, a feedback loop can be added to the system with the control input u(t)=r(t)-Kx(t), such that the new dynamics of the system will be : \dot(t)=Ax(t)+B (t)-Kx(t) -BKx(t)+Br(t) :y(t)=Cx(t). In this new realization, the poles will be dependent on the characteristic polynomial \Delta_ of A-BK, that is : \Delta_\text(s)=\det(sI-(A-BK)).


Ackermann's formula

Computing the characteristic polynomial and choosing a suitable feedback matrix can be a challenging task, especially in larger systems. One way to make computations easier is through Ackermann's formula. For simplicity's sake, consider a single input vector with no reference parameter r, such as : u(t)=-k^T x(t) :\dot x(t)=Ax(t)-Bk^T x(t), where k^T is a feedback vector of compatible dimensions. Ackermann's formula states that the design process can be simplified by only computing the following equation: : k^T =\left \ 0\ \cdots \ 0\ 1\rightmathcal^\Delta_\text(A), in which \Delta_\text(A) is the desired characteristic polynomial evaluated at matrix A, and \mathcal is the controllability matrix of the system.


Proof

This proof is based on
Encyclopedia of Life Support Systems The Encyclopedia of Life Support Systems (EOLSS) is an integrated compendium of twenty one encyclopedias. The first Earth Summit of 1992, held in Rio de Janeiro, issued a document that is now famous as Agenda 21. This document refers to the Earth' ...
entry on Pole Placement Control. Assume that the system is controllable. The characteristic polynomial of A_:=(A-Bk^) is given by : \Delta(A_)=(A_)^n + \sum_^ \alpha_k A_^ Calculating the powers of A_ results in :\begin (A_)^0 &= (A-Bk^T)^0=I \\ (A_)^1 &= (A-Bk^T)^1=A-Bk^T \\ (A_)^2 &= (A-Bk^T)^2=A^2-ABk^T-Bk^T A+(Bk^T)^2=A^2-ABk^T-(Bk^T) -Bk^TA^2-ABk^T-Bk^T A_ \\ \vdots \\ (A_)^n & = (A-Bk^T)^n=A^n-A^ Bk^T-A^ Bk^T A_- \cdots -Bk^T A_^ \end Replacing the previous equations into \Delta(A_) yields\begin \Delta(A_)& =(A^n-A^ Bk^T-A^ Bk^T A_-\cdots-Bk^T A_^)+\cdots+\alpha_2(A^2-ABk^T-Bk^T A_) + \alpha_1 (A-Bk^T)+\alpha_0I \\ & = (A^n+\alpha_A^+\cdots + \alpha_2 A^2+\alpha_1 A+\alpha_0 I)-(A^Bk^+A^Bk^T A_+\cdots+Bk^TA_^) + \cdots -\alpha_2 (ABk^T+Bk^T A_)-\alpha_1(Bk^T) \\ & = \Delta(A)-(A^Bk^T+A^ Bk^T A_ + \cdots + Bk^T A_^) - \cdots - \alpha_2 (ABk^T + Bk^T A_) -\alpha_1 (Bk^T) \endRewriting the above equation as a matrix product and omitting terms that k^T does not appear isolated yields :\Delta(A_)=\Delta(A)-\left \ \ AB\ \ \cdots \ \ A^ B\rightleft begin \star \\ \vdots\\ k^T \end\right/math> From the
Cayley–Hamilton theorem In linear algebra, the Cayley–Hamilton theorem (named after the mathematicians Arthur Cayley and William Rowan Hamilton) states that every square matrix over a commutative ring (such as the real or complex numbers or the integers) satisfies ...
, \Delta\left(A_\right)=0, thus \left \ \ AB\ \ \cdots \ \ A^B\rightleft begin \star \\ \vdots\\ k^T \end\right\Delta(A) Note that \mathcal=\left \ \ AB\ \ \cdots \ \ A^B\right is the controllability matrix of the system. Since the system is controllable, \mathcal is invertible. Thus, :\left begin \star \\ \vdots\\ k^ \end\right\mathcal^\Delta(A) To find k^, both sides can be multiplied by the vector \left begin 0 & 0 & 0 & \cdots & 1\end\right/math> giving :\left begin 0 & 0 & 0 & \cdots & 1\end\rightleft begin \star \\ \vdots\\ k^ \end\right\left begin 0 & 0 & 0 & \cdots & 1\end\rightmathcal^\Delta(A) Thus, : k^=\left begin 0 & 0 & 0 & \cdots & 1\end\rightmathcal^\Delta(A)


Example

Consider \dot=\left begin 1 & 1\\ 1 & 2 \end\right+\left begin 1\\ 0 \end\right We know from the characteristic polynomial of A that the system is unstable since det(sI-A)=(s-1)(s-2)-1=s^2-3s+1, the matrix A will only have positive eigenvalues. Thus, to stabilize the system we shall put a feedback gain K=\left begin k_1 & k_2\end\right From Ackermann's formula, we can find a matrix k that will change the system so that its characteristic equation will be equal to a desired polynomial. Suppose we want \Delta_\text(s)=s^2+11s+30. Thus, \Delta_\text(A)=A^2+11A+30I and computing the controllability matrix yields : \mathcal=\left begin B & AB\end\right\left begin 1 & 1\\ 0 & 1 \end\right/math> and \mathcal^=\left begin 1 & -1\\ 0 & 1 \end\right Also, we have that A^2=\left begin 2 & 3\\ 3 & 5 \end\right Finally, from Ackermann's formula : k^=\left begin 0 & 1\end\rightleft begin 1 & -1\\ 0 & 1 \end\rightleft left[\begin 2 & 3\\ 3 & 5 \end\right11\left[\begin 1 & 1\\ 1 & 2 \end\right">begin 2_&_3\\ 3_&_5 \end\right.html" ;"title="left[\begin 2 & 3\\ 3 & 5 \end\right">left[\begin 2 & 3\\ 3 & 5 \end\right11\left[\begin 1 & 1\\ 1 & 2 \end\right30I\right] :k^T=\left begin 0 & 1\end\rightleft begin 1 & -1\\ 0 & 1 \end\rightleft begin 43 & 14\\ 14 & 57 \end\right\left begin 0 & 1\end\rightleft begin 29 & -43\\ 14 & 57 \end\right/math> :k^T=\left begin 14 & 57\end\right/math>


State observer design

Ackermann's formula can also be used for the design of state observers. Consider the linear discrete-time observed system : \hat(n+1) = A \hat(n) + B u(n) + L hat(n) - y(n) : \hat(n) = C \hat(n) with observer gain ''L''. Then Ackermann's formula for the design of state observers is noted as : L^ =\left \ 0\ \cdots \ 0\ 1\right\mathcal^)^ \Delta_\text(A^) with observability matrix \mathcal. Here it is important to note, that the observability matrix and the system matrix are transposed: \mathcal^ and A^. Ackermann's formula can also be applied on continuous-time observed systems.


See also

* Full state feedback


References

{{Reflist


External links

* Chapter about Ackermann's Formula on Wikibook of Control Systems and Control Engineering Mathematical concepts Engineering concepts Control engineering