Cómo diseñar un controlador de retroalimentación de estado usando un algoritmo

Estoy estudiando para un examen y tengo muchas dificultades para entender esto, ya que tengo una formación mínima en ingeniería eléctrica y mis notas son confusas. He leído algunos ejemplos de varios sitios, pero estoy buscando un ejemplo paso a paso para que las cosas tengan sentido.

La pregunta que estoy tratando de usar como ejemplo de aprendizaje es:

Diseñe un controlador de retroalimentación de estado utilizando el algoritmo u=-kx para estabilizar el siguiente sistema lineal continuo invariante en el tiempo:

A =                       B =
   [-1  .5  0  -.5]          [ 1]
   [0  -.5  0 -1.5]          [ 1]
   [0   .5  2  -.5]          [-1]
   [0 -1.5  0  -.5]          [ 0]

Gracias por cualquier ayuda, estoy realmente bastante confundido.

Sería útil vincular los ejemplos relacionados que miró. ¿Es este un problema de tiempo continuo o de tiempo discreto? Estas dos formulaciones de espacio de estado están relacionadas, pero son lo suficientemente diferentes como para que realmente no se pueda responder sin esta información. Además, el problema debe proporcionar vectores/matrices Cy D.
@jbarlow Actualicé la pregunta para incluir que es un sistema CLTI, sin embargo, ahora tengo matrices C o D para el problema.

Respuestas (1)

Dejando a un lado las matemáticas por un momento, hablemos de qué se trata este problema.

Tienes un sistema que estás tratando de controlar. Por sí solo, en este caso, es inestable. Por otro lado, es posible controlar. u=-kx significa que tomará algo que sabe sobre el estado del sistema x, lo escalará en k y lo usará como su control, u.

Si está familiarizado con el análisis del lugar geométrico de las raíces, lo que está haciendo aquí es solo una versión multidimensional de eso.

Puedo decirte que A es inestable porque tiene valores propios positivos. Los valores propios siempre parecen un poco misteriosos, pero en realidad solo describen cómo una matriz transforma un conjunto de datos en otro. Son el "componente de escala" de una transformación; los vectores propios del "componente de rotación" (más o menos). Los valores propios positivos tienen este efecto de escala porque en un ciclo de retroalimentación, efectivamente está multiplicando el estado por A con cada iteración incremental. Una serie infinita de multiplicaciones significa que tienes una función exponencial relacionada con A. Matemáticamente, si A tiene valores propios positivos, entonces, cuando se eleva a una potencia, sus componentes están relacionados con las potencias de esos valores propios, por lo que crecen sin límite.

Encuentre una manera de hacer que todos los valores propios sean negativos y estabilizará el sistema.

Su sistema es estrictamente correcto. C = matriz identidad y D = matriz cero. El artículo de Wikipedia muestra cómo derivar una ecuación simple para esta situación. A lo que se reduce es:

Conoces A y B. Debes encontrar K, tal que la matriz A + KB tenga todos los valores propios negativos. Entonces debemos encontrar una manera de relacionar K con los valores propios de A + KB, usando una descomposición propia.

Eche un vistazo a este artículo que parece cubrir el procedimiento, con un ejemplo y comandos de Matlab. En su notación, 'F' toma el lugar de 'K', y 'v' = 0 en su problema, y ​​v_i es un vector propio en ambos problemas que no es igual a 'v'.