La descomposición canónica de las ecuaciones de estado nos ayuda a establecer la relación que existe entre la representación por variables de estado y la representación por matriz de función de transferencia. Y asi sabremos si un sistema es controlable o observable.
Antes que nada recuerda que puedes darle un vistazo al curso gratuito de Sistemas Dinámicos Lineales donde aprenderas sobre espacio de estados y sobre descomposición Canonica: 👉🏼 VER CURSO GRATUITO
Para comenzar, debemos recordar lo visto en la clase pasada de representación equivalente (Transformación de Similitud):
👇👇 Puedes Ver el Video de YouTube 👇👇👇 sobre descomposición Canónica. Si todavía No te has Suscrito al Canal, te estas perdiendo MUCHA información Valiosa, vuélvete un experto en sistemas de control SUSCRIBETE en el botón de la barra derecha de esta pagina web 👉👉👉
🌳 Descomposición Canónica
Teníamos que la transformación de similitud me permite representar mi sistema original en otro sistema equivalente, donde este concepto consiste en tomar mi sistema dado por:
Defino una matriz de similitud P, donde:
Multiplico por P a la izquierda del sistema
Recordando que:
Mi sistema transformado vendria dado entonces por:
donde ,
,
.
Veamos esta descomposición canónica
Matriz de Controlabilidad
Si determinamos la matriz de Controlabilidad para mi sistema original (tal como lo vimos en la entrada de controlabilidad y observabilidad) y determinamos la misma matriz de controlabilidad para mi sistema equivalente, podremos ver que la matriz de transformación de similitud (P), aparece en la relación de las dos matrices:
Matriz de Observabilidad
Lo mismo ocurre en la descomposición canónica de la matriz de Observabilidad:
Matriz de Similaridad
Como la matriz de similitud P es inversible (O sea que tiene rango completo) implica en que NOOOO se altera la matriz de Controlabilidad y Observabilidad cuando se hace una transformación de similitud del sistema.
Ahora cuando el sistema no sea controlable significa que algunos estados no son alcanzables para la entrada. Osea que no puedo modificar todos los estados generando una determinada entrada, entonces lo que podria hacer en esos casos es utilizar una transformación de similitud para separar el problema en dos partes, una parte donde se consiga controlar el sistema y otra parte donde NO lo consigo controlar a partir de la entrada. Con esa representación mi sistema queda particionado como:
En los estados la parcela controlable es la primera fila y la parcela no controlable es la segunda fila. Siempre que tenga estados no controlables va a aparecer un cero en la matriz de entrada B (como puede verse en la segunda fila de los estados).
Para obtener esa representación por medio de la matriz de similitud, lo que hago es saber como determinar la matriz P. Para eso se toma la matriz de controlabilidad de dimension n, dada por:
Como sabemos que mi matriz no va a ser controlable, pues nuestro rank nos va a dar [/latex]n_1[/latex], quiere decir que esa matriz de controlabilidad solo tendra [/latex]n_1[/latex] columnas linealmente independientes. Entonces se usan [/latex]n_1[/latex] columnas linealmente independientes para formar la inversa de la matriz de similitud P:
Pero notemos que para formar la matriz de similitud P, es necesario que tenga n columnas (dimension del sistema), entonces lo que hago es adicionar columnas arbitrariamente y que sean linealmente independientes en relación a las [/latex]n_1[/latex] columnas primeras de forma que la matriz P tenga rango completo.
Ahora si apenas se considera el SubSistema Controlable:
Sabemos que la dimension de ese subsistema sera que era dado por el rango de la matriz de controlabilidad. Entonces aqui aparece un resultado muy interesante, si yo calculo la función de transferencia de ese subsistema menor y la función de transferencia del sistema grande (donde esta la parcela no controlable) vamos a encontrar que van a dar exactamente la misma función de transferencia:
EJEMPLO Matriz de Controlabilidad:
Determino la matriz de controlabilidad, sabemos que el rango de una matriz nunca sera mayor que el menor de sus dimensiones, en otras palabras sabemos que el rango va a ser menor igual a 2 (el rango minimo de la matriz B es 2) :
Con ese resultado vemos que en ese sistema tengo 2 estados controlables y 1 estado que NO es controlable.
Ahora si usamos la idea de tomar dos columnas linealmente independientes de la matriz de controlabilidad mas otra columna cualquiera para formar una matriz de similitud, para hacer la transformación del sistema, voy a conseguir separarlo en una parte controlable y una parte no controlable.
De la matriz de controlabilidad voy a escoger las dos primeras las cuales sumadas me dan la tercera columna, asi mi matriz de similitud viene dada por . Aqui la tercera columna es arbitraria, la unica conición que debe cumplir es que sea linealmente independiente con respecto a las otras dos columnas.
Aplico transformación de similitud usando esa matriz y obtengo la siguiente decomposición canonica, ,
.
,
,
Asi el subsistema controlable viene dado por:
Ahora si calculo la función de transferencia de ese subsistema y la función de transferencia del sistema original, voy a obtener la misma función de transferencia para ambos.
En matlab puedo calcular esa descomposición canónica:
>> ctrbf(A,B,C)
Con esto sacamos una primera conclusión. Y es que todo lo que no sea controlable no va a aparecer en la función de transferencia del sistema. Veamos que lo mismo se cumple para la observabilidad.
Como sabemos que mi matriz no va a ser controlable, pues nuestro rank nos va a dar [/latex]n_2[/latex]. Al igual que el caso anterior la matriz P se calcula con la matriz de observabilidad pero esta vez lo hago con filas linealmente independientes.
Nuestro subsistema observable viene dado entonces por:
Donde también obtendremos que nuestra función de transferencia del subsistema observable será igual a la funcion de transferencia del sistema completo:
🍀 Sistemas No Controlables y No Observables
Para este caso particular, consigo realizar otra transformación de similitud conocida como descomposición de Kalman, donde el sistema es separado en cuatro bloques
La unica parte controlable y observable son los primeros terminos de cada matriz (,
,
). Aqui se cumple la misma propiedad, es decir que si se crea un subsitema apenas con la parte controlable y observable y se calcula la función de transferencia, será exactamente igual a la función de transferencia del sistema completo.
En matlab existe una función que encuentra ese subsistema
>> sys=ss(A,B,C,D); %Creo el sistema completo
>>[subsys,P] = minreal(sys); %Determina el subsistema y la matriz de transformación
EJEMPLO Sistemas Controlables y No Controlables
Código en Matlab, debes compartir para poderlo ver:
[sociallocker id=948]
%% ******************************************************************** %% % ****** DESCOMPOSICION DE KALMAN ***** % ****** SERGIO ANDRES CASTAÑO GIRALDO % ++++++ https://controlautomaticoeducacion.com %% ******************************************************************** %% clc clear all close all % Sistema Lineal A=[-1 0 0 0;0 -2 0 0;0 0 -3 0;0 0 0 -4]; B=[1;0;0;1]; C=[1 1 0 0]; D=0; %Creo el sistema con esa representacion display('Sistema Lineal') sys=ss(A,B,C,D) %Creo el sistema completo [subsys,P] = minreal(sys); %Determina el subsistema y la matriz de transformación de similitud %Muestra los resultados display('SubSistema Controlable y Observable') subsys display('Matriz de Transformación de Similitud') P %% Calculamos las Funciones de Transferencia de Ambos Sistemas display('Función de Transferencia del Sistema Completo:') sysC=tf(sys) display('Función de Transferencia del SubSistema:') Ssys=tf(subsys)
[/sociallocker]
🐘 Condiciones en la forma de Jordan
Cuando tengo un sistema MIMO (Varias entradas y varias salidas), la forma de identificar si mi sistema es Controlable y Observable mirando las matrices A,B y C puede hacerse llevando el sistema a la Forma diagonal, ó como ya lo habíamos visto, en el caso de tener autovalores repetidos en la forma de Jordan.
Para eso supongamos que tenemos el siguiente sistema en la forma diagonal, donde tengo tres bloques de Jordan y mi matriz B y C tienen varias columnas:
Donde con
y
Lo que implica que la fila de la matriz B está asociada a la ultima fila de la matriz
y que la columna
de la matriz C está asociada a la primeira coluna da matriz
.
Viendo en un ejemplo numerico seria como sigue donde tenemos 2 entradas y 2 salidas:
1. La ultima fila del bloque de Jordan es esta, por eso la fila que me interesa de la matriz B es esta.
2. La columna de la matriz C asociada a la primera columna del bloque de Jordan. La primera columna de Jordan es esta, entonces la columna en C que me interesa es esta para la primera partición.
3. La segunda partición del bloque de Jordan es la ultima fila de la matriz B y la primera Columna de la matriz C.
Son las únicas filas y columnas que me interesan cuando deseo hacer el análisis sea de sistema controlable o observable cuando dicho sistema se encuentra en la representación de la forma diagonal ó de Jordan
Si las dos filas escogidas en la matriz B son linealmente independientes significa que el sistema es Controlable y si las dos columnas escogidas en la matriz C son linealmente independientes, quiere decir que mi sistema es Observable.
Miremos el siguiente sistema y tratemos de identificar si el sistema es Controlable y Observable:
Tomando las primeras filas de la Matriz B de cada bloque de Jordan
Como solo tengo 3 Filas linealmente independientes, por lo tanto no es rank completo y NO es CONTROLABLE.
Tomando las primeras columnas de la Matriz C de cada bloque de Jordan
Como tengo una columna lleno de ceros sabemos que solo tendremos 3 columnas linealmente independientes, por lo tanto no es rank completo y NO es OBSERVABLE.
🐠 Sistemas Discretos
Si tenemos el siguiente sistema discreto
Se dice que el par (A,B) es controlable si para cualquier condicion inicial y cualquier estado final
existe una secuencia de entrada de tamaño finito que lleva el estado desde
para
, caso contrario el sistema no es Controlable.
Recordemos que el caso discreto es por instanes, osea que puedo tener una entrada en el instante cero, uno, dos, …. .
Entonces si el sistema es de orden 5, voy a necesitar de 5 instantes de tiempo para poder determinar si consigo llevar el estado inicial al estado final y saber si es controlable.
Aplicamos el mismo concepto visto en el caso continuo, determinando las matrices de Controlabilidad y Observabilidad.
Eso es todo por la entrada del dia de hoy, espero les haya gustado y hayan aprendido algo nuevo. Si te ha servido el contenido de esta entrada, de los videos y los códigos de implementación y deseas apoyar mi trabajo invitandome a un café super barato, puedes hacerlo en el siguiente link:
👉 Invitar a Sergio a un Café ☕️
Que esten muy bien, nos vemos en la siguiente entrada.
Mi nombre es Sergio Andres Castaño Giraldo, y en este sitio web voy a compartir una de las cosas que mas me gusta en la vida y es sobre la Ingeniería de Control y Automatización. El sitio web estará en constante crecimiento, voy a ir publicando material sobre el asunto desde temas básicos hasta temas un poco más complejos. Suscríbete al sitio web, dale me gusta a la página en Facebook y únete al canal de youtube. Espero de corazón que la información que comparto en este sitio, te pueda ser de utilidad. Y nuevamente te doy las gracias y la bienvenida a control automático educación.