Ejemplo de Predictor de Smith El predictor de Smith es un tipo de compensador que permite lidiar con sistemas con tiempo muerto. Una de las características negativas de los sistemas con tiempo muerto es que son propensos a inestabilidad y difíciles de controlar con controladores convencionales. Definimos un sistema con un tiempo muerto de.3s y lo discretizamos con T =.s. s = tf('s'); sys = 5/((s+2)*(s+)); sys.outputdelay =.3; T =.; z = zpk('z',t); sys = zpk(c2d(sys,t)).2264 (z+.948) z^(-3) * --------------------- (z-.948) (z-87) step(feedback(sys,)).4.2 2 3 4 5 6 7 8 9 Figura : Respuesta ante escalón unitario del sistema con retardo realimentado unitariamente Graficamos la respuesta de lazo cerrado ante un escalón unitario del sistema con tiempo muerto y confirmamos que está poco amortiguado, tiene un tiempo de estabilización de más Control Automatico: Ejemplo Predictor de Smith Page
de 7s y presenta un error de estado estacionario de casi el 3%. Definimos los requisitos que tenemos para el sistema compensado en lazo cerrado Tiempo de estabilización del 2% menor a 2.5s Sobreimpulso menor al 5% Sin error de estado estacionario Ts = 2.5; Mp =.5; ess = ; Como primer paso, diseñamos el compensador adecuado como si el sistema no tuviese tiempo muerto, para lo cual definimos el sistema sin tiempo muerto y observamos su respuesta de lazo cerrado ante un escalón unitario. Gz = sys; Gz.outputdelay =.2264 (z+.948) --------------------- (z-.948) (z-87) step(feedback(gz,)).9.7.5.3..5.5 2 2.5 3 3.5 4 4.5 Figura: 2 Respuesta ante escalón unitario del sistema sin tiempo muerto en lazo cerrado realimentado unitariamente. Control Automatico: Ejemplo Predictor de Smith Page 2
Como puede observarse en la figura 2, el sistema tiene un error de estado estacionario de aproximadamente el 3%, está subamortiguado, con un sobreimpulso del 5% y se estabiliza en poco menos de 3s. El lugar de las raíces para el sistema sin tiempo muerto de la figura 3 nos muestra que se requiere un compensador de adelanto, para ubicar los polos dentro del área deseada, y así arreglar el sobreimpulso; y de un compensador PI para corregir el error de estado estacionario. Figura 3: Lugar de las raíces para el sistema original sin tiempo muerto Escogemos los puntos s, 2 =.75 +/-.5i, dentro del área definida por las restricciones de tiempo de estabilización y sobreimpulso, para ubicar los polos de lazo cerrado. s =.75 +.5i; Calculamos el compensador de adelanto por el método de la bisectriz utilizando la función kpzcalc [2]. syslead = kpzcalc(sys2,s) Control Automatico: Ejemplo Predictor de Smith Page 3
w = -2.687 +.974i El ángulo total a agregar es: 65.3473 Orden = El ángulo agregado por cada etapa del compensador es: 65.3473 k =.354 Vamos a graficar el círculo: radio =.7649 El compensador de adelanto es: Transfer function:.354 (z.7964) ------------------- (z -.5825) Creamos el compensador total de adelanto-pi, combinando el compensador de adelanto calculado junto a un compensador PI, con el cero de éste cancelando el polo en z =.948. syspi = (z.948)/(z - ); Kz = syslead*syspi.354 (z-.7964) (z-.948) --------------------------- (z-.5825) (z-) Ahora veremos la respuesta de lazo cerrado del sistema, con la planta sin tiempo muerto, con el compensador de adelanto-pi; diseñado para lograr la respuesta deseada sin tomar en cuenta el retardo; y lugar de las raíces correspondiente a este sistema. step(feedback(kz*gz,)) Se puede observar en la figura 4, que se ha logrado una respuesta con cero error de estado estacionario, un sobreimpulso menor al 5% y un tiempo de estabilización inferior a 2.5 segundos. Control Automatico: Ejemplo Predictor de Smith Page 4
.4.2.5.5 2 2.5 3 3.5 Figura 4: Respuesta ante escalón unitario de la planta sin tiempo muerto compensada con realimentación unitaria. Figura 5: Lugar de las raíces del sistema compensado en adelanto-pi Control Automatico: Ejemplo Predictor de Smith Page 5
En la figura 5 se puede apreciar como los polos de lazo cerrado se encuentran todos dentro de los límites impuestos al sobreimpulso y al tiempo de estabilización, como resultado de la corrección del lugar de las raíces proveída por el compensador de adelanto-pi diseñado. Satisfechos con el compensador diseñado sin considerar el tiempo muerto, como segundo paso, calculamos el compensador final según la definición del predictor de Smith [2]. Donde K(z) : Regulador calculado sin tomar en cuenta el tiempo muerto de la planta. G(z) : Planta sin tiempo muerto z -n : Tiempo muerto. smith = feedback(kz,gz*(-z^-3)).354 z^3 (z-.948) (z-87) (z-.7964) ------------------------------------------------------------------------- (z-7) (z-) (z^2 +.3865z +.7964) (z^2 -.95z +.3437) Se puede notar en el compensador, resultante de aplicar el Predictor de Smith, que éste es más complejo, de orden 6, y que conserva algunos polos y ceros del compensador adelanto- PI inicial: el polo en z =, el cero del compensador PI en z =.948 y el cero del compensador de adelanto en z =.7964; pero, añade la cancelación de los tres polos en el origen, z =, lo mismo que la cancelación del segundo polo de la planta en z = 87; para finalmente agregar 5 polos, cuatro de ellos en 2 conjuntos complejos conjugados. El efecto neto es que los todos los polos de lazo cerrado del sistema completo, especialmente los polos dominantes, en z, 2 = 25 +/-.9i, se encuentran en el mismo lugar que los polos de lazo cerrado del sistema compensado sin tomar en cuenta el retardo; por lo cual las características dinámicas seleccionadas en el diseño se conservan. Así mismo, tres polos de lazo cerrado se encuentran en z =, como en la planta original, produciendo el efecto de que el sistema compensado tiene el mismo retardo total que ésta. Finalmente se realiza la simulación, en lazo cerrado con realimentación unitaria, de la respuesta ante un escalón unitario, de la planta incluyendo el tiempo muerto y compensada con el regulador resultado del Predictor de Smith. También se simula la respuesta de la planta con el compensador de adelanto-pi que fue calculado sin considerar el tiempo muerto. En la figura 5 se puede verificar que se cumplieron todas las expectativas planteadas. El tiempo muerto es inevitable, e igual en ambas respuestas; pero el sobreimpulso se mantiene exactamente como se diseño, al aplicar el Predictor de Smith a la Control Automatico: Ejemplo Predictor de Smith Page 6
planta completa, mientras que si se aplica solo el compensador adelanto-pi a la misma planta, el sobreimpulso y tiempo de estabilización no se satisfacen. step(feedback(smith*sys,),feedback(syscomp*sys,)) legend('con predictor de Smith','Sin predictor de Smith').4.2 Con predictor de Smith Sin predictor de Smith 2 3 4 5 6 7 Figura 5: Respuesta de lazo cerrado ante escalón unitario del sistema, incluyendo el retardo de la planta, aplicando un compensador calculado como Predictor de Smith y aplicando solo el compensador de adelanto-pi. Conclusiones Se puede apreciar de los resultados obtenidos para el ejemplo desarrollado que el Predictor de Smith ayuda a realizar el control de plantas con tiempo muerto, utilizando para el cálculo de los compensadores básicos las mismas técnicas conocidas para las plantas sin tiempo muerto; obteniéndose resultados mucho mejores con el Predictor de Smith que los que se podrían obtener sin él. Los resultados por supuesto se basan en el conocimiento, cuanto más exacto mejor, del modelo de la planta, ya que usa este modelo para realizar su función. Referencias [] http://iaci.unq.edu.ar/materias/cont.digital/apuntes/apuntepagina/6-predictor_de_smith.pdf [2] http://www.ie.itcr.ac.cr/einteriano/control/matlab/kpzcalc.m EIS/27 Control Automatico: Ejemplo Predictor de Smith Page 7