En los sistemas de control de hoy en día el controlador suele ser un computador (ver Figura 1.1), con lo cual sus datos de entrada (y también de salida) son palabras digitales codificadas en binario. El circuito electrónico que presenta al computador una cadena de ceros y unos correspondientes al valor analógico de entrada convertido a digital es el convertidor analógico/digital (A/D); sin embargo, previo a él hay un circuito, integrado o no en el mismo convertidor, que se denomina muestreador y retenedor (sample & hold en inglés, S&H). La función del S&H es doble: 1) obtener muestras de la señal analógica cada cierto tiempo, normalmente constante, denominado periodo de muestreo T, y 2) mantener la señal muestreada constante el tiempo suficiente para que al convertidor A/D le dé tiempo a convertirla en una palabra digital.
Figura 2.12. Muestreador & retenedor. |
En la Figura 2.12 se muestra un esquema sencillo, casi conceptual, de S&H. Cuando una señal de control activa el interruptor S (un transistor MOSFET por ejemplo) el condensador C (un condensador de calidad para evitar fugas) se carga a la señal de entrada vi a través de la pequeña resistencia de entrada de A1 en configuración seguidor de tensión. Cuando la señal de control deja de estar activa, el interruptor se abre y la tensión almacenada en el condensador (señal muestreada) permanece estática, ya que la elevada resistencia de entrada de A2, también en configuración seguidor de tensión, evita su descarga. La tensión en el condensador es la de salida de A2, v0, y alimenta al convertidor A/D que iría a continuación. La señal de control del S&H debe ir ligada a la actuación del convertidor, con objeto de asegurar que éste tenga el tiempo suficiente para efectuar la conversión antes de capturar una nueva muestra. Nótese que el S&H funciona como una memoria analógica. En muestreo está memorizando la señal de entrada, mientras que en retención la recuerda y la mantiene en el tiempo.
En la Figura 2.13 se muestra de forma esquemática el efecto del muestreo sobre una señal continua 18 [1]. A partir de ésta, el circuito muestreador va obteniendo muestras cada incrementos de tiempo . El incremento de tiempo entre cada muestra es el tiempo o periodo de muestreo T, que normalmente es constante, con lo cual los intervalos temporales pueden ser escritos como donde k es un índice entero de valor
Figura 2.13. Muestreo de una señal. |
El control por computador implica que las leyes de control se implementen mediante software19, con lo cual las acciones a realizar sobre un sistema bajo control se desarrollan en el computador mediante un algoritmo20 [2], el cual trabaja en tiempo discreto. Esto implica que el trabajo con el computador involucra el manejo de señales cuyo valor es aproximado, ya que no se tienen completas. Sin embargo, esto no quiere decir que a efectos prácticos se obtengan menos prestaciones, ya que el error, la mayoría de las veces, se puede acotar, con lo cual bastará con utilizar un periodo de muestreo más pequeño para obtener mayor precisión21 [3].
Figura 2.14. Definición de derivada. |
Ejemplo 2.10. Solución aproximada de una ecuación diferencial ordinaria. Considérese el cálculo numérico de una ecuación diferencial ordinaria de primer orden y sea ésta, como ejemplo, la siguiente:
(2.91) |
La rama de las matemáticas que soluciona este tipo de problemas es el análisis o cálculo numérico. Esta disciplina crea algoritmos que permiten resolver problemas, en los que estén involucradas cantidades numéricas, con una precisión determinada.
El análisis numérico es de aplicación cuando: 1) Los problemas no tienen solución analítica o 2) el coste de cálculo de la solución analítica es mayor que la numérica. Para la resolución de ecuaciones diferenciales ordinarias los métodos más utilizados son el método de Euler y los métodos de Runge-Kutta22 [4].
Volviendo con el ejemplo, nótese en la Figura 2.14 que para T pequeño, puede aproximarse por la relación incremental (definición de derivada) siguiente:
(2.92) |
Resolviendo la ecuación anterior para se tiene que
(2.93) |
Evaluando esta ecuación para un tiempo discreto cualquiera t = kT se obtiene la ecuación en diferencias siguiente:
(2.94) |
La cual, para un T dado, puede ser escrita como
(2.95) |
La expresión anterior indica que el valor de la trayectoria (solución) en el instante de tiempo se calcula a partir del valor de x y de la excitación (entrada) u en el instante k.
La ecuación diferencial original (2.91) ha sido pues transformada por este método numérico sencillo (denominado de Euler23 [5]) en la ecuación en diferencias (2.94). Ésta puede ser programada ahora mediante un algoritmo numérico simple en un computador. Así por ejemplo, si , y para k par; para k impar, y , se tiene que las primeras 5 muestras de valen
(2.96) |
Si se observa la ecuación (2.91), su expresión es la de un modelo de estado de orden 1 y, por ende, la ecuación (2.95) es la discretización de un modelo de estado de orden 1. Con objeto de extender lo anterior para el caso de sistemas de orden mayor que 1, se parte de la ecuación de estado lineal general que reproducimos a continuación por comodidad:
(2.97) |
Aplicando a esta ecuación el proceso descrito para llegar de (2.91) a (2.95), se tiene que la ecuación matricial en diferencias del modelo de estado lineal continuo estará dada por
(2.98) |
Esta ecuación permite ver enseguida que la ecuación de estado discreta lineal tiene un aspecto muy similar a la de tiempo continuo. Ahora también dos matrices multiplican a los vectores de estado y de entrada igual que en el caso continuo. Respecto de la dependencia temporal de las variables, sus argumentos han sido sustituidos por el tiempo discreto k y por k + 1 para el vector de estado derivado. Esto se formalizará en la sección siguiente.
Ejemplo 2.11. Solución aproximada de un modelo de estado continuo de orden 2. Veamos una aplicación de la ecuación (2.98). Se van a calcular los primeros 4 valores discretos (iteraciones) del modelo continuo de ejemplo siguiente:
(2.99) |
Supóngase que T=0,02s, en cuyo caso la aplicación de la ecuación (2.98) sobre el ejemplo proporciona la expresión siguiente:
(2.100) |
Esto es,
(2.101) |
Sea , , una señal escalón, con lo cual , . Sea también . Entonces,
(2.102) |
Ejemplo 2.12. Respuesta temporal aproximada del sistema muelle – masa - amortiguador. En el ejemplo 2.9 se calculó la respuesta temporal exacta (analítica) de este sistema empleando la m-triz de transición de estado. Ahora se va a calcular de nuevo la respuesta temporal, pero mediante la aproximación en tiempo discreto.
El objetivo de este ejemplo es comparar la respuesta exacta del ejemplo 2.9 con la aproximada de éste; por ello es muy importante empezar a establecer una serie de pautas prácticas que permitirán obtener aproximaciones razonables.
La primera cuestión a considerar es qué periodo de muestreo elegir. Tal como se vio en la Figura 2.14, se ha de elegir un intervalo de tiempo T suficientemente pequeño de forma que la aproximación de derivada (ecuación 2.92) sea razonablemente precisa. Lógicamente, cada sistema tiene su propia dinámica y, en consecuencia, un periodo de muestreo que puede ser válido para un sistema no tiene porqué serlo para otro. Las Figuras 2.9 y 2.11 muestran la respuesta temporal del sistema objeto de análisis. Una observación mínima de las figuras no aconsejaría un tiempo de muestreo de por ejemplo T=0,2s; sin embargo, supóngase que el análisis no se ha realizado y se emplea este tiempo de muestreo, con lo cual la ecuación (2.97) es
(2.103) |
Sustituyendo en esta ecuación los valores de las matrices A y B dadas en (2.80),
(2.104) |
Esto es,
(2.105) |
Ahora, con objeto de comparar la respuesta aproximada en tiempo discreto con la exacta del ejemplo 2.9, considérese la aplicación de las mismas condiciones iniciales a la ecuación (2.105), y , en cuyo caso la primera iteración proporciona el valor siguiente:
(2.106) |
Para las tres iteraciones siguientes se obtiene que
(2.107) |
El cálculo exacto para las 4 iteraciones: 0,2 s; 0,4 s; 0,6 s y 0,8 s; se realiza mediante la expresión (2.86):
Tabla 2.1 | |||||||||
Tiempo t | 0 | 0,2 | Error | 0,4 | Error | 0,6 | Error | 0,8 | Error |
exacto | 1 | 1,1156 | 7,56% | 1,1123 | 7,88% | 1,0440 | 14,94% | 0,9442 | 2,69% |
aprox., T=0,2s | 1 | 1,2 | 1,2 | 1,2 | 0.9696 | ||||
exacto | 1 | 0,2251 | -100% | -0,2136 | -124,72% | -0,4417 | -52,14% | -0,5404 | -31,46% |
aprox., T=0,2s | 1 | 0 | -0,48 | -0,672 | -0,7104 |
|
(2.108) |
En la tabla 2.1 se resumen los resultados obtenidos junto al error cometido. Como se puede comprobar, el error cometido en es muy grande. Esto se comprende fácilmente observando la Figura 2.9, ya la pendiente negativa de al inicio es muy pronunciada, lo cual supone que su valor cambia mucho en 0,2 s.
Formalmente hablando, la frecuencia de muestreo24 [6] o inversa del periodo de muestreo, debe ser al menos el doble de la frecuencia más alta contenida en la señal analógica a muestrear. En la práctica es aconsejable que la frecuencia de muestreo esté comprendida entre 10 y 20 veces la de la frecuencia más alta contenida en la señal analógica a muestrear.
Si en vez del periodo de muestreo tomado se hubiera elegido uno 10 veces menor (frecuencia de muestreo 10 veces mayor), T=0,02s, el valor aproximado de en la primera iteración por ejemplo, hubiera sido 0,9; y el real para t=0,02s, 0,9026. Esto es, dividiendo el periodo de muestreo por 10 el error pasa de -100% a -0,29%.
En los sistemas discretos es una secuencia vectorial cuyo valor en cualquier punto de la secuencia es el estado del sistema en ese instante de tiempo discreto. También, al igual que en los sistemas continuos, el espacio de estado se define como el espacio vectorial donde toma valores el vector de estado . De la misma forma, teniendo en cuenta que el estado se concreta como la mínima cantidad de información (mínimo conjunto de variables) precisa para conocer la evolución del sistema para todo kT, las variables de estado en tiempo discreto son también linealmente independientes, con lo cual la dimensión del espacio de estado coincide con el número de variables de estado.
En virtud de lo anterior y por analogía con los sistemas continuos, se define como modelo de estado discreto de un sistema dinámico invariante con el tiempo, para un periodo de muestreo T dado, una relación matemática entre dos secuencias de entrada y salida del modo siguiente:
(2.109) |
Donde la primera ecuación en es la ecuación de estado, y la segunda en k es la de salida. La secuencia representa el vector de estado en tiempo discreto. Nótese por comparación de las ecuaciones (2.109) y (2.8) cómo para el caso discreto el modelo de estado se formula me-diante ecuaciones en diferencias, mientras que para el caso continuo se hace mediante ecuacio-nes diferenciales. Nótese también que si el sistema no fuera invariante con el tiempo (ver la primera sección del capítulo 3), las ecuaciones (2.107) deberían ser escritas como e .
El concepto de linealidad en los sistemas discretos es análogo al de los sistemas continuos. Esto es, un modelo de estado discreto lineal e invariante con el tiempo puede ser escrito de la forma matricial siguiente:
(2.110) |
Donde es el vector de estado en el instante k (de dimensión n), es el vector de entrada en el instante k (de dimensión p) e es el vector de salida en el instante k (de dimensión q). Ak, Bk, Ck y Dk son matrices constantes. La matriz Ak se denomina matriz de estado o matriz dinámica (de dimensión ), la matriz Bk se denomina matriz de entrada o matriz de control (de dimensión ), la matriz Ck se denomina matriz de salida o matriz sensora (de dimensión ), y la matriz Dk se denomina matriz de transferencia directa o simplemente término directo (de dimensión ).
Si bien la aproximación en tiempo discreto permite, como se ha visto, resolver (calcular la respuesta) sistemas lineales, éstos, la mayoría de las veces admiten solución analítica, que además es exacta. Sin embargo, los sistemas no lineales no admiten fácilmente una solución analítica, lo cual hace que su resolución se deba hacer de forma aproximada mediante métodos numéricos; en consecuencia, el método aproximado en tiempo discreto es particularmente útil para calcular la respuesta de sistemas no lineales.
Sea pues la expresión genérica de la ecuación de estado de un sistema invariante con el tiempo que puede ser no lineal:
(2.111) |
Si se asume que respecto del vector de control el sistema es lineal, la ecuación anterior puede ser escrita como
(2.112) |
Utilizando la aproximación de derivada en tiempo discreto dada por (2.92).
(2.113) |
La ecuación anterior puede ser escrita en el instante k (para un periodo de muestreo T) de la forma
(2.114) |
Con lo cual, resolviendo para se tiene que
(2.115) |
Ejemplo 2.13. Respuesta de un sistema no lineal. En el ejemplo 2.2 se dedujo un modelo lineal simple para describir la propagación de una enfermedad epidémica, el cual se reproduce a continuación por comodidad.
(2.116) |
El precio que se pagó entonces para hacer lineal el modelo y poderlo tratar en forma matricial, fue el no tener en cuenta la interacción entre las variables población en riesgo de ser infectada y población infectada . Ahora se va a mejorar el modelo teniendo en cuenta esta interacción del modo siguiente:
(2.117) |
El modelo (2.116) es no lineal, por tanto no admite un tratamiento matricial como en el Ejemplo 2.12. Sean los parámetros , con lo cual empleando la ecuación (2.115), el modelo (2.117) se escribirá en modo discreto de la forma
(2.118) |
Sean las condiciones iniciales , y . Nótese que en un caso real, el valor de estas variables podría estar en cientos o miles de individuos. Del mismo modo, la medida de tiempo podría ser días o meses. Considérese ahora que en el instante inicial hay aporte de individuos a la población infectada, el cual representaremos como (recuérdese que el significado físico de las entradas es velocidad de aporte), pero no hay aporte a la población en riesgo, con lo cual . Por último, asúmase que , y que la entrada decae con el tiempo hasta anularse del modo siguiente: ; y , . Teniendo en cuenta pues las condiciones establecidas, la expresión general del modelo en tiempo discreto para T = 0,1 será
(2.119) |
A partir de aquí y de modo iterativo se calcula la respuesta para cada instante de tiempo discreto k.
(2.120) |
Enlaces:
[1] http://uhu.es/antonio.barragan/content/18-0
[2] http://uhu.es/antonio.barragan/content/20-0
[3] http://uhu.es/antonio.barragan/content/21-0
[4] http://uhu.es/antonio.barragan/content/22
[5] http://uhu.es/antonio.barragan/content/23
[6] http://uhu.es/antonio.barragan/content/24