Articulo de referencia

Fórmula de Ackermann

En la teoría de control , la fórmula de Ackermann proporciona un método para diseñar controladores para lograr el comportamiento deseado del sistema calculando directamente las ...

En la teoría de control , la fórmula de Ackermann proporciona un método para diseñar controladores para lograr el comportamiento deseado del sistema calculando directamente las ganancias de retroalimentación necesarias para colocar los polos ( autovalores ) del sistema de lazo cerrado [ 1 ] en ubicaciones específicas ( problema de asignación de polos ).

Estos polos influyen directamente en la respuesta del sistema a las entradas y perturbaciones. La fórmula de Ackermann proporciona una forma directa de calcular los ajustes necesarios —en concreto, las ganancias de retroalimentación— para desplazar los polos del sistema a las posiciones objetivo. Este método, desarrollado por Jürgen Ackermann [ 2 ] , resulta especialmente útil para sistemas que no varían con el tiempo ( sistemas invariantes en el tiempo ), permitiendo a los ingenieros controlar con precisión la dinámica del sistema, como su estabilidad y capacidad de respuesta.

control de retroalimentación de estado

Consideremos un sistema lineal invariante en el tiempo continuo con una representación en el espacio de estados.

incógnita˙(t)=Aincógnita(t)+B(t)y(t)=doincógnita(t){\displaystyle {\begin{aligned}\mathbf {\dot {x}} (t)&=\mathbf {Ax} (t)+\mathbf {Bu} (t)\\\mathbf {y} (t)&=\mathbf {Cx} (t)\end{aligned}}}

donde x es el vector de estado, u es el vector de entrada, y A , B , C son matrices de dimensiones compatibles que representan la dinámica del sistema. Una descripción de entrada-salida de este sistema viene dada por la función de transferencia.

GRAMO(s)=do(sIA)1B=do adj(sIA)det(sIA) B.{\displaystyle {\begin{aligned}G(s)&=\mathbf {C} (s\mathbf {I} -\mathbf {A} )^{-1}\mathbf {B} \\[4pt]&=\mathbf {C} \ {\frac {\operatorname {adj} (s\mathbf {I} -\mathbf {A} )}{\det(s\mathbf {I} -\mathbf {A} )}}\ \mathbf {B}.\end{aligned}}}

donde det es el determinante y adj es el adjugado . Dado que el denominador de la ecuación de la derecha viene dado por el polinomio característico de A , los polos de G son los autovalores de A (nótese que lo contrario no es necesariamente cierto, ya que puede haber cancelaciones entre los términos del numerador y el denominador). Si el sistema es inestable , o tiene una respuesta lenta o cualquier otra característica que no especifique los criterios de diseño, podría ser ventajoso hacerle cambios. Sin embargo, las matrices A , B , C pueden representar parámetros físicos de un sistema que no se pueden alterar. Por lo tanto, un enfoque para este problema podría ser crear un bucle de retroalimentación con una ganancia k que alimentará la variable de estado x a la entrada u .

Si el sistema es controlable , siempre hay una entrada u ( t ) tal que cualquier estado x 0 puede transferirse a cualquier otro estado x ( t ) . Teniendo esto en cuenta, se puede agregar un bucle de retroalimentación al sistema con la entrada de control u ( t ) = r ( t ) kx ( t ) , de modo que la nueva dinámica del sistema será

incógnita˙(t)=Aincógnita(t)+B[r(t)kincógnita(t)]=[ABk]incógnita(t)+Br(t),y(t)=doincógnita(t).{\displaystyle {\begin{aligned}\mathbf {\dot {x}} (t)&=\mathbf {Ax} (t)+\mathbf {B} [\mathbf {r} (t)-\mathbf {kx} (t)]\\[2pt]&=[\mathbf {A} -\mathbf {Bk} ]\mathbf {x} (t)+\mathbf {Br} (t),\\[4pt]\mathbf {y} (t)&=\mathbf {Cx} (t).\end{aligned}}}

En esta nueva realización, los polos dependerán del polinomio característico Δ ​​nuevo de A Bk , es decir

Δnuevo(s)=det(sI(ABk)).{\displaystyle \Delta _{\text{nuevo}}(s)=\det {\bigl (}s\mathbf {I} -(\mathbf {A} -\mathbf {Bk} ){\bigr )}.}

Fórmula de Ackermann

Calcular el polinomio característico y elegir una matriz de retroalimentación adecuada puede ser una tarea desafiante, especialmente en sistemas más grandes. Una forma de facilitar los cálculos es mediante la fórmula de Ackermann. Para simplificar, consideremos un único vector de entrada sin parámetro de referencia r , como por ejemplo:

(t)=kTincógnita(t)incógnita˙(t)=Aincógnita(t)BkTincógnita(t),{\displaystyle {\begin{aligned}\mathbf {u} (t)&=-\mathbf {k} ^{\rm {T}}\mathbf {x} (t)\\[2pt]\mathbf {\dot {x}} (t)&=\mathbf {Ax} (t)-\mathbf {Bk} ^{\rm {T}}\mathbf {x} (t),\end{aligned}}}

donde k T es un vector de retroalimentación de dimensiones compatibles. La fórmula de Ackermann establece que el proceso de diseño se puede simplificar calculando únicamente la siguiente ecuación:

kT=[001]do1Δnuevo(A),{\displaystyle \mathbf {k} ^{\rm {T}}={\begin{bmatrix}0&\cdots &0&1\end{bmatrix}}\,{\mathcal {C}}^{-1}\Delta _{\text{new}}(\mathbf {A} ),}

en la que Δ nuevo ( A ) es el polinomio característico deseado evaluado en la matriz A , ydo{\displaystyle {\mathcal {C}}}es la matriz de controlabilidad del sistema.

Prueba

Esta demostración se basa en la entrada de la Enciclopedia de Sistemas de Soporte Vital sobre Control de Colocación de Polos. [ 3 ] Supongamos que el sistema es controlable . El polinomio característico deAdoL:=(ABkT){\displaystyle \mathbf {A} _{\rm {CL}}:=(\mathbf {A} -\mathbf {Bk} ^{\rm {T}})}evaluado enAdoL{\displaystyle \mathbf {A} _{\rm {CL}}}es dado por

Δ(AdoL)=(AdoL)norte+k=0norte1αkAdoLk{\displaystyle \Delta (\mathbf {A} _{\rm {CL}})=(\mathbf {A} _{\rm {CL}})^{n}+\sum _{k=0}^{n-1}\alpha _{k}\mathbf {A} _{\rm {CL}}^{k}}

Calcular las potencias de A CL da como resultado

(AdoL)0= (ABkT)0=I(AdoL)1= (ABkT)1=ABkT(AdoL)2= (ABkT)2=A2ABkTBkTA+(BkT)2=A2ABkT(BkT)[ABkT]=A2ABkTBkTAdoL (AdoL)norte= (ABkT)norte=AnorteAnorte1BkTAnorte2BkTAdoLBkTAdoLnorte1{\displaystyle {\begin{aligned}(\mathbf {A} _{\rm {CL}})^{0}=&\ (\mathbf {A} -\mathbf {Bk} ^{\rm {T}})^{0}=\mathbf {I} \\[4pt](\mathbf {A} _{\rm {CL}})^{1}=&\ (\mathbf {A} -\mathbf {Bk} ^{\rm {T}})^{1}=\mathbf {A} -\mathbf {Bk} ^{\rm {T}}\\[4pt](\mathbf {A} _{\rm {CL}})^{2}=&\ (\mathbf {A} -\mathbf {Bk} ^{\rm {T}})^{2}\\[2pt]&=\mathbf {A} ^{2}-\mathbf {ABk} ^{\rm {T}}-\mathbf {Bk} ^{\rm {T}}\mathbf {A} +(\mathbf {Bk} ^{\rm {T}})^{2}\\[2pt]&=\mathbf {A} ^{2}-\mathbf {ABk} ^{\rm {T}}-(\mathbf {Bk} ^{\rm {T}})[\mathbf {A} -\mathbf {Bk} ^{\rm {T}}]\\[2pt]&=\mathbf {A} ^{2}-\mathbf {ABk} ^{\rm {T}}-\mathbf {Bk} ^{\rm {T}}\mathbf {A} _{\rm {CL}}\\[4pt]\vdots \ &\\[4pt](\mathbf {A} _{\rm {CL}})^{n}=&\ (\mathbf {A} -\mathbf {Bk} ^{\rm {T}})^{n}\\[2pt]&=\mathbf {A} ^{n}-\mathbf {A} ^{n-1}\mathbf {Bk} ^{\rm {T}}-\mathbf {A} ^{n-2}\mathbf {Bk} ^{\rm {T}}\mathbf {A} _{\rm {CL}}-\ldots -\mathbf {Bk} ^{\rm {T}}\mathbf {A} _{\rm {CL}}^{n-1}\end{aligned}}}

Sustituyendo las ecuaciones anteriores en Δ ( A CL ) se obtiene

Δ(AdoL)=(AnorteAnorte1BkTAnorte2BkTAdoLBkTAdoLnorte1)(AdoL)norte++α2(A2ABkTBkTAdoL)+α1(ABkT)+α0Ik=0norte1αkAdoLk=(Anorte+αnorte1Anorte1++α2A2+α1A+α0I)(Anorte1BkT+Anorte2BkTAdoL++BkTAdoLnorte1)+α2(ABkT+BkTAdoL)α1(BkT)=Δ(A)(Anorte1BkT+Anorte2BkTAdoL++BkTAdoLnorte1)α2(ABkT+BkTAdoL)α1(BkT){\displaystyle {\begin{aligned}\Delta (\mathbf {A} _{\rm {CL}})&=\overbrace {(\mathbf {A} ^{n}-\mathbf {A} ^{n-1}\mathbf {Bk} ^{\rm {T}}-\mathbf {A} ^{n-2}\mathbf {Bk} ^{\rm {T}}\mathbf {A} _{\rm {CL}}-\ldots -\mathbf {Bk} ^{\rm {T}}\mathbf {A} _{\rm {CL}}^{n-1})} ^{(\mathbf {A} _{\rm {CL}})^{n}}+\overbrace {\ldots +\alpha _{2}(\mathbf {A} ^{2}-\mathbf {ABk} ^{\rm {T}}-\mathbf {Bk} ^{\rm {T}}\mathbf {A} _{\rm {CL}})+\alpha _{1}(\mathbf {A} -\mathbf {Bk} ^{\rm {T}})+\alpha _{0}\mathbf {I} } ^{\sum _{k=0}^{n-1}\alpha _{k}\mathbf {A} _{\rm {CL}}^{k}}\\[4pt]&=(\mathbf {A} ^{n}+\alpha _{n-1}\mathbf {A} ^{n-1}+\ldots +\alpha _{2}\mathbf {A} ^{2}+\alpha _{1}\mathbf {A} +\alpha _{0}\mathbf {I} )-(\mathbf {A} ^{n-1}\mathbf {Bk} ^{\rm {T}}+\mathbf {A} ^{n-2}\mathbf {Bk} ^{\rm {T}}\mathbf {A} _{\rm {CL}}+\ldots +\mathbf {Bk} ^{\rm {T}}\mathbf {A} _{\rm {CL}}^{n-1})+\ldots -\alpha _{2}(\mathbf {ABk} ^{\rm {T}}+\mathbf {Bk} ^{\rm {T}}\mathbf {A} _{\rm {CL}})-\alpha _{1}(\mathbf {Bk} ^{\rm {T}})\\[4pt]&=\Delta (\mathbf {A} )-(\mathbf {A} ^{n-1}\mathbf {Bk} ^{\rm {T}}+\mathbf {A} ^{n-2}\mathbf {Bk} ^{\rm {T}}\mathbf {A} _{\rm {CL}}+\ldots +\mathbf {Bk} ^{\rm {T}}\mathbf {A} _{\rm {CL}}^{n-1})-\ldots -\alpha _{2}(\mathbf {ABk} ^{\rm {T}}+\mathbf {Bk} ^{\rm {T}}\mathbf {A} _{\rm {CL}})-\alpha _{1}(\mathbf {Bk} ^{\rm {T}})\end{aligned}}}

Reescribiendo la ecuación anterior como un producto matricial y omitiendo los términos que k T no aparecen aislados se obtiene

Δ(AdoL)=Δ(A)[BABAnorte1B][kT]{\displaystyle \Delta (\mathbf {A} _{\rm {CL}})=\Delta (\mathbf {A} )-{\begin{bmatrix}\mathbf {B} &\mathbf {AB} &\cdots &\mathbf {A} ^{n-1}\mathbf {B} \end{bmatrix}}{\begin{bmatrix}\star \\\vdots \\\mathbf {k} ^{\rm {T}}\end{bmatrix}}}

Del teorema de Cayley-Hamilton , Δ ( A CL ) = 0 , por lo tanto

[BABAnorte1B][kT]=Δ(A){\displaystyle {\begin{bmatrix}\mathbf {B} &\mathbf {AB} &\cdots &\mathbf {A} ^{n-1}\mathbf {B} \end{bmatrix}}{\begin{bmatrix}\star \\\vdots \\\mathbf {k} ^{\rm {T}}\end{bmatrix}}=\Delta (\mathbf {A} )}

Tenga en cuenta quedo=[BABAnorte1B]{\displaystyle {\mathcal {C}}={\begin{bmatrix}\mathbf {B} &\mathbf {AB} &\cdots &\mathbf {A} ^{n-1}\mathbf {B} \end{bmatrix}}}es la matriz de controlabilidad del sistema. Dado que el sistema es controlable,do{\displaystyle {\mathcal {C}}}es invertible. Por lo tanto,

[kT]=do1Δ(A){\displaystyle {\begin{bmatrix}\star \\\vdots \\\mathbf {k} ^{\rm {T}}\end{bmatrix}}={\mathcal {C}}^{-1}\Delta (\mathbf {A} )}

Ambos lados pueden multiplicarse entonces por el vector.[001]{\displaystyle {\begin{bmatrix}0&\cdots &0&1\end{bmatrix}}}donación

[001][kT]=[001]do1Δ(A){\displaystyle {\begin{bmatrix}0&\cdots &0&1\end{bmatrix}}{\begin{bmatrix}\star \\\vdots \\\mathbf {k} ^{\rm {T}}\end{bmatrix}}={\begin{bmatrix}0&\cdots &0&1\end{bmatrix}}\,{\mathcal {C}}^{-1}\Delta (\mathbf {A} )}

y por lo tantokT{\displaystyle \mathbf {k} ^{\rm {T}}}necesariamente tiene la siguiente forma:

kT=[001]do1Δ(A){\displaystyle \mathbf {k} ^{\rm {T}}={\begin{bmatrix}0&\cdots &0&1\end{bmatrix}}\,{\mathcal {C}}^{-1}\Delta (\mathbf {A} )}

Dado que se supone que el sistema es controlable, esta condición necesaria también es suficiente.

Ejemplo

Considere [ 4 ]

incógnita˙=[1112]incógnita+[10]{\displaystyle \mathbf {\dot {x}} ={\begin{bmatrix}1&1\\1&2\end{bmatrix}}\mathbf {x} +{\begin{bmatrix}1\\0\end{bmatrix}}\mathbf {u} }

Sabemos por el polinomio característico de A que el sistema es inestable ya que

det(sIA)=(s1)(s2)1=s23s+2,{\displaystyle {\begin{aligned}\det(s\mathbf {I} -\mathbf {A} )&=(s-1)(s-2)-1\\&=s^{2}-3s+2,\end{aligned}}}

La matriz A solo tendrá valores propios positivos. Por lo tanto, para estabilizar el sistema, colocaremos una ganancia de retroalimentación.

k=[k1k2].{\displaystyle \mathbf {k} ={\begin{bmatrix}k_{1}&k_{2}\end{bmatrix}}.}

A partir de la fórmula de Ackermann, podemos encontrar una matriz k que modificará el sistema de manera que su ecuación característica sea igual a un polinomio deseado. Supongamos que queremosΔdeseado(s)=s2+11s+30.{\displaystyle \Delta _{\text{desired}}(s)=s^{2}+11s+30.}

De este modo,Δdeseado(A)=A2+11A+30I{\displaystyle \Delta _{\text{desired}}(\mathbf {A} )=\mathbf {A} ^{2}+11\mathbf {A} +30\mathbf {I} }y el cálculo de la matriz de controlabilidad produce

do=[BAB]=[1101]do1=[1101]{\displaystyle {\begin{aligned}{\mathcal {C}}&={\begin{bmatrix}\mathbf {B} &\mathbf {AB} \end{bmatrix}}={\begin{bmatrix}1&1\\0&1\end{bmatrix}}\\[4pt]\implies {\mathcal {C}}^{-1}&={\begin{bmatrix}1&-1\\0&1\end{bmatrix}}\end{aligned}}}

Además, tenemos esoA2=[2335].{\displaystyle \mathbf {A} ^{2}=\left[{\begin{smallmatrix}2&3\\3&5\end{smallmatrix}}\right].}

Finalmente, a partir de la fórmula de Ackermann

kT=[01][1101]([2335]+11[1112]+30I)=[01][1101][43141457]=[01][29431457]=[1457]{\displaystyle {\begin{aligned}\mathbf {k} ^{\rm {T}}&={\begin{bmatrix}0&1\end{bmatrix}}{\begin{bmatrix}1&-1\\0&1\end{bmatrix}}\left({\begin{bmatrix}2&3\\3&5\end{bmatrix}}+11{\begin{bmatrix}1&1\\1&2\end{bmatrix}}+30\mathbf {I} \right)\\[2pt]&={\begin{bmatrix}0&1\end{bmatrix}}{\begin{bmatrix}1&-1\\0&1\end{bmatrix}}{\begin{bmatrix}43&14\\14&57\end{bmatrix}}\\[2pt]&={\begin{bmatrix}0&1\end{bmatrix}}{\begin{bmatrix}29&-43\\14&57\end{bmatrix}}\\[6pt]&={\begin{bmatrix}14&57\end{bmatrix}}\end{aligned}}}

diseño del observador estatal

La fórmula de Ackermann también se puede utilizar para el diseño de observadores de estado . Consideremos el sistema observado lineal de tiempo discreto.

incógnita^(norte+1)=Aincógnita^(norte)+B(norte)+L[y(norte)y^(norte)]y^(norte)=doincógnita^(norte){\displaystyle {\begin{aligned}\mathbf {\hat {x}} (n+1)&=\mathbf {A{\hat {x}}} (n)+\mathbf {Bu} (n)+\mathbf {L} [\mathbf {y} (n)-\mathbf {\hat {y}} (n)]\\\mathbf {\hat {y}} (n)&=\mathbf {C{\hat {x}}} (n)\end{aligned}}}

con ganancia del observador L. Entonces, la fórmula de Ackermann para el diseño de observadores de estado se denota como

LT=[001](OT)1Δnuevo(AT){\displaystyle \mathbf {L} ^{\rm {T}}={\begin{bmatrix}0&0&\cdots &1\end{bmatrix}}({\mathcal {O}}^{\rm {T}})^{-1}\Delta _{\text{new}}(\mathbf {A} ^{\rm {T}})}

con matriz de observabilidadO{\displaystyle {\mathcal {O}}}Aquí es importante señalar que la matriz de observabilidad y la matriz del sistema están transpuestas :OT{\displaystyle {\mathcal {O}}^{\rm {T}}}y A T.

La fórmula de Ackermann también se puede aplicar a sistemas observados en tiempo continuo.

Véase también

Referencias

  1. Teoría y diseño de sistemas de control modernos, 2.ª edición, por Stanley M. Shinners
  2. ^ Ackermann, J. (1972). "Der Entwurf linearer Regelungssysteme im Zustandsraum" (PDF) . En-Automatisierungstechnik . 20 ( 1– 12): 297– 300. doi : 10.1524/auto.1972.20.112.297 . ISSN 2196-677X . S2CID 111291582 .  
  3. Ackermann, JE (2009). "Control de colocación de polos". Sistemas de control, robótica y automatización . Unbehauen, Heinz. Oxford: Eolss Publishers Co. Ltd. ISBN 9781848265905OCLC 703352455 
  4. "Tema n.º 13 : 16.31 Control de retroalimentación" (PDF) . Web.mit.edu . Consultado el 6 de julio de 2017 . 
  • Capítulo sobre la fórmula de Ackermann en el Wikilibro de Sistemas de Control e Ingeniería de Control.
Obtenido de " https://en.wikipedia.org/w/index.php?title=Ackermann%27s_formula&oldid=1314763203 "