Observabilidad de sistemas dinámicos#
Concepto de observabilidad#
Considere un sistema \(n\)-dimensional en representación de espacio-estado como sigue
donde \(A\), \(B\), \(C\) son matrices de dimensión \(n\times n\), \(n\times 1\), y \(1\times n\), respectivamente. Además, \(D\) es escalar.
Supongamos que queremos estimar el estado de un sistema dinámico a partir de sus entradas \(u\) y salidas \(y\) como se aprecia en la Fig. 15.
Fig. 15 Diagrama a bloques de un observador de estados. El observador utiliza la señal medida \(y\) y la entrada \(u\) para estimar el proceso denotado como \(\hat{x}\).#
Para ello, considere que tenemos sólo una señal medida \(y\) que pueda ser afectada por ruido \(n\). Aquí, denotamos \(\hat{x}\) como el estado estimado dado por el observador.
Definition 7
Un sistema LTI es observable si es posible determinar el estado de un sistema \(x\) a través de las mediciones de \(y\) y \(u\) sobre el intervalo \([0,t]\), para cualquier \(t>0\).
Entonces, definimos la matriz \(n\times n\)
entonces el sistema (54) es observable si y sólo si la matriz \(V\) tiene rango \(n\) o bien, \(\text{det}\{V\} \neq 0\).
Note
La controlabilidad es una propiedad de \((A,B)\) mientras que observabilidad es una propiedad de \((A,C)\).
Ejemplo
Considere la siguiente función de transferencia
y determine si el sistema es observable.
Ejemplo
Considere la siguiente función de transferencia
y determine si el sistema es observable.
Ejemplo
Considere un modelo de dos compartimientos como se muestra en la Fig. 16
Fig. 16 Modelo compartimental.#
Asuma que la concentración del primer compartimiento puede ser medido y que el sistema está descrito por el siguiente sistema lineal
El primer compartimiento corresponde a la concentración de fármaco en el plasma sanguíneo mientras que el segundo representa la concentración del fármaco en el tejido donde es activo.
Determine si el sistema es observable.
Formas canónicas de observabilidad#
Un sistema SISO, está en la forma canónica observable si sus dinámicas están dadas como sigue
Si la entrada \(u\) y la salida \(y\) están disponibles, entonces el estado \(z_{1}\) puede ser estimado.
Estimación de estados#
Considere el siguiente sistema \(n\)-dimensional en representación de espacio-estado
Una estimación de los estados del sistema se puede obtener simulando las ecuaciones (55) dada una entrada adecuada. Por lo tanto, el estimador de estados está dado por la siguiente expresión
Para determinar las propiedades de esta estimación, es necesario definir el error de estimación \(\tilde{x} := x - \hat{x}\), de modo que el sistema se reescribe como sigue
Note
Si todos los eigenvalores de la matriz \(A\) se encuentran en el semi plano izquierdo, entonces el error \(\tilde{x}\rightarrow 0\).
Considere el siguiente observador
Podemos observar que la retroalimentación de la salida se logra agregando el término \(L(y-C\hat{x})\) la cual es proporcional a la diferencia entre la salida observada y la salida estimada por el sistema (56). Por lo tanto
Si la matriz \(L\) se escoge de manera que la matriz \(A-LC\) tiene eigenvalores con parte real negativa, entonces el error \(\tilde{x}\rightarrow 0\).
Note
La tasa de convergencia está determinada por una adecuada selección de los eigenvalores.
Diseño de observador via asignación de eigenvalores#
Theorem 10
Considere el siguiente sistema SISO
Sea \(\lambda_{A}(s) = s^{n} + a_{1}s^{n-1} + \cdots + a_{n-1}s + a_{n}\) el polinomio característico para \(A\). Si el sistema es observable, entonces el sistema dinámico
es un observador para el sistema, con \(L\) elegida como sigue
donde las matrices \(V\) y \(\tilde{V}\) están dadas por
El error del observador \(\tilde{x} = x - \hat{x}\) está dado por una ecuación diferencial que tiene como polinomio característico
El sistema dado en la Ec. (58) es llamado observador de estados del sistema (57) y su diagrama a bloques se muestra en la Fig. 17.
Fig. 17 Diagrama a bloques del observador de estados. Para producir una estimación \(\hat{x}\) se consideran las entradas \(u\) e \(y\) como entradas y \(L\) como la ganancia del observador.#
Ejemplo
Considere un modelo de dos compartimientos como se muestra en la Fig. 16
y diseñe un observador de estados.
Cálculo de la ganancia del observador#
Ejemplo
Considere el siguiente modelo lineal que representa la dirección de un vehículo, considerando la desviación de trayectoria lateral \(y\) con el ángulo de dirección \(u\)
Diseñe un observador de estados y calcule su ganancia.
Note
El estado \(x_{1}\) representa la desviación de la trayectoria lateral y \(x_{2}\) la velocidad de giro.
Ejemplo
Considere el siguiente modelo SISO en representación de espacio de estados
Teorema de dualidad#
Sea el sistema \(\Sigma_{1}\) representado por las siguientes ecuaciones
y el sistema dual \(\Sigma_{2}\) definido como
donde \(z\) es el vector de estado, \(v\) el vector de control, \(n\) el vector de salida y \({}^{*}\) denota la transpuesta conjugada.
El teorema de dualidad menciona que el sistema \(\Sigma_{1}\) es completamente controlable (observable) si y sólo si el sistema \(\Sigma_{2}\) es completamente observable (controlable).
Condiciones necesarias#
Para el sistema \(\Sigma_{1}\)
Condición de controlabilidad
Condición de observabilidad
Para el sistema \(\Sigma_{2}\)
Condición de controlabilidad
Condición de observabilidad
Procedimiento para obtener la ganancia del observador via Lyapunov#
La ganancia \(L\) del observador de estados \eqref{eqn:observer}, se pude obtener a partir de la siguiente expresión [Coronel-Escamilla et al., 2017]
donde \(S\) es la solución única de la ecuación algebráica de Lyapunov
donde \(\lambda\) denota el parámetro para sintonizar la convergencia del observador (56).
El siguiente fragmento de código permite encontrar la solución a la Ec. (59)
def lyapunov(lamb,N):
S = np.zeros((N,N))
for k in range(1,N+1):
for l in range(1,N+1):
c = nchoosek(l+k-2,k-1)
S[l-1][k-1] = ((-1)**(l+k)*c)/lamb**(l+k-1)
return S
donde la función nchoosek está dada como sigue
y su representación en Python como
def nchoosek(n, k):
return int(factorial(n)/(factorial(k)*factorial(n-k)))
Control utilizando estimadores de estado#
Considere un sistema en representación de espacio de estados de la forma
Este sistema sólo tiene una salida disponible y es necesario diseñar un control por retroalimentación. Para ello, asumimos que el sistema es controlable así como observable y que además, \(u\) e \(y\) son escalares.
Considerando la siguiente ley de control (retroalimentación), tenemos
Bajo la suposición de que todos los estados son medibles, proponemos el diseño de un observador para estimar el estado \(\hat{x}\) a partir de las entradas y las salidas.
Si todos los estados no están disponibles o bien, no son medibles, entonces proponemos la siguiente ley de control
donde \(\hat{x}\) es la salida del observador de estados
Para analizar el sistema en lazo cerrado, definimos la siguiente variable
y la reemplazamos en la variable de estado \(\hat{x}\). Con esto obtenemos la siguiente expresión
o en representación de espacio de estados como sigue
Por consiguiente, el polinomio característico del sistema está dado por la siguiente ecuación
Un diagrama de un sistema de control basado en observador se presenta en la Fig. 18.
Fig. 18 Diagrama a bloques de un sistema de control basado en observador. El observador utiliza la salida estimada \(y\) y la entrada \(u\) para obtener una aproximación de los estados \(x\). Esta estimación se utiliza por un sistema de control por retroalimentación de estados para corregir la entrada.#