Full text
DIFERENCIACI´ ON MEDIANTE CONTROL POR MODOS DESLIZANTES R. Romero, J. Stojanov, A.S.I. Zinober y F.R.Rubio Dept Ingenier´ıa de Sistemas y Autom´atica Escuela Superior de Ingenieros de Sevilla e-mails: {romevi,rubio}@cartuja.us.es, jivk[email protected], a.zinob[email protected] Resumen En este art´ıculo se analizan diversos m´etodos para la diferenciaci´on de se˜nales con ruido. Recientes progresos en control por modos deslizantes avanzado son presentados como una alternativa prometedora para lograr resultados robustos y precisos. En particular puede emplearse el Control por Modo Deslizante de Orden Superior y el Control por Modo Deslizante Din´amico. El concepto, ventajas, simulaciones y ejemplos son mostrados para ambas t´ecnicas. Se presenta un ejemplo pr´actico de un robot manipulador industrial, las medidas de posici´on de los ejes requieren ser diferenciadas con el fin de obtener velocidades y aceleraciones. Otras aproximaciones num´ericas, como el filtro de Savitzky-Golay, son analizadas y comparadas con los diferenciadores basados en Modos Deslizantes. Palabras clave: Diferenciador, Savitzky-Golay, SMC, HOSMC, DSMC, Control por Modos Deslizantes 1 INTRODUCCI´ ON La diferenciaci´on en tiempo real es un conocido y ampliamente estudiado problema desde hace mucho tiempo. La principal dificultad a afrontar estriba en la sensibilidad que presenta ante ruidos en la se˜nal de entrada. Diferentes alternativas han sido empleadas a lo largo de las ultimas d´ecadas. Diversos m´etodos num´ericos fueron desarrollados como una alternativa eficaz cuando se desconoce la forma anal´ıtica de la funci´on a derivar, cuando la se˜nal esta contaminada por ruido o cuando proviene de la salida de un sistema no modelado. Uno de los m´etodos mas empleados ha sido la diferenciaci´on num´erica simple seguida de la aplicaci´on de un filtro para la eliminaci´on de las componentes de la se˜nal no deseadas. Este m´etodo presenta el inconveniente de que se requiere una elecci´on adecuada del filtro, que no deteriore demasiado la se˜nal deseada lo cual no siempre es f´acil de conseguir. Un camino alternativo consiste en ajustar un polinomio en una determinada ”ventana” de los datos a partir de una adecuada ley de ajuste. Este m´etodo se present´o en un conocido art´ıculo de Savitzki y Golay ([10]). Una implementaci´on software puede encontrarse en el libro “Numerical Recipes in C”. Otras recientes aportaciones, como la presentada en [1] no son apropiadas para su uso con se˜nales ruidosas como se ha comprobado con simulaciones que ser´an presentadas en este articulo. Los ´ultimos avances en t´ecnicas de control basadas en Modos deslizantes, como HOSMC o DSMC, han abierto una nueva posibilidad para la diferenciaci´on de este tipo de se˜nales. Con estas t´ecnicas se generalizan y mejoran los resultados obtenidos con el control por modo deslizante tradicional y se eliminan las restricciones que este presenta. Aplicadas como observadores, estos m´etodos pueden utilizarse para diferenciar se˜nales con la ventaja de que la diferenciaci´on es exacta en ausencia de ruido y robusta en su presencia. 2 INTRODUCCI´ ON AL CONTROL POR MODOS DESLIZANTES El m´etodo de modos deslizantes tradicional (ver [4]) puede ser presentado sucintamente como la aplicaci´on de una se˜nal de control conmutando a alta frecuencia que consigue llevar el estado del sistema a una superficie σ= 0 denominada superficie de deslizamiento y una vez en ella mantenerlo ante posibles perturbaciones externas. Dicha superficie de deslizamiento ser´a definida por el dise˜nador con el objeto de que el estado cumpla las especificaciones deseadas. La principal ventaja del control por modos deslizantes es que aporta robustez ante perturbaciones, tanto internas como externas, cuando estas tienen cotas conocidas. Por desgracia, este m´etodo posee un par de restricciones importantes. En primer lugar, el grado relativo del sistema, que puede definirse como el n´umero de veces que hay que derivar la funci´on que describe la superficie de deslizamiento (σ(x, u) ) para que la se˜nal de control aparezca expl´ıcitamente, debe ser uno. En segundo lugar el
efecto “chattering” provocado por la conmutaci´on de alta frecuencia de la se˜nal de control puede ser muy perjudicial en determinadas aplicaciones practicas y se ha visto a menudo como el principal argumento para desaconsejar este m´etodo. Por ejemplo, la implantaci´on de este m´etodo en el control de robots y otros sistemas mec´anicos pueden causar vibraciones capaces de excitar la frecuencia fundamental del sistema con desastrosos resultados o provocar el deterioro de las partes m´oviles por efecto de la fatiga. Sin embargo, en otro tipo de aplicaciones, como es en el control de sistemas electr´onicos con alta capacidad de conmutaci´on o en el caso de diferenciaci´on de se˜nales, que es el caso que nos ocupa, tales efectos nocivos no aparecen y este m´etodo de control podr´ıa ser utilizado sin ninguna modificaci´on en particular. En los dem´as casos es posible suavizar la ley de control a consta de perder precisi´on. Diversas metodolog´ıas han sido propuestas al respecto en la bibliograf´ıa especializada ([3]). 2.1 Ejemplo de SMC Para aclarar conceptos un ejemplo de SMC convencional se muestra a continuaci´on (Para mas informaci´on ver [11]). Supongamos que el sistema a controlar tiene la forma descrita por (1) y que deseamos reducir el orden del sistema de forma que el estado cumpla la ecuaci´on σ= 0 correspondiente a la de un sistema de primer orden. ˙x1=x2 ˙x2=bu (1) para tal fin puede definirse una superficie deslizante en la forma σ=gx1+x2(2) y una se˜nal de control como u=−sign(σ) (3) Como puede observarse (figuras 1 y 2), despu´es de un corto transitorio, se logra alcanzar la condici´on de deslizamiento (es decir, σ= 0). Es interesante apreciar que el par´ametro b en la ecuaci´on del sistema (1) podr´ıa ser desconocido, y no obstante la condici´on de deslizamiento seguir´ıa alcanz´andose dentro de un amplio rango de variaci´on del par´ametro. Como puede inferirse de este sencillo ejemplo, este tipo de control es robusto frente a indeterminaciones acotadas en el modelo del sistema. Adem´as puede demostrarse que la precisi´on en r´egimen permanente del deslizamiento (sup(|σ|)) es del orden del paso de integraci´on (τ). Figura 1: Evoluci´on de la funci´on de deslizamiento σ. Figura 2: Mapa de estados x1yx2. Figura 3: Evoluci´on de los estados. Convergencia exponencial.
Figura 4: Evoluci´on de la se˜nal de control. Efecto chattering. La figura 3 muestra la evoluci´on temporal de los estados, que como puede apreciarse, presenta una convergencia exponencial al origen. El efecto del chattering, comentado anteriormente, puede ser f´acilmente vislumbrado en la figura 4. 3 CONTROL POR MODO DESLIZANTE DE ORDEN SUPERIOR (HOSMC) Posteriormente han aparecido importantes avances en el control por modos deslizantes con la aparici´on del control por modo deslizante de orden superior [2]. La idea subyacente es controlar t´erminos de orden superior de la superficie deslizante imponiendo no solo que se anule la funci´on que la define ( σ= 0 ) sino tambi´en sus r-1 primeras derivadas (σ= ˙σ= ¨σ=... =σr−1= 0). Este m´etodo preserva y generaliza las principales ventajas del control por modo deslizante tradicional. Adem´as se mejora notablemente la precisi´on alcanzada en el control ( ahora sup(|σ|)≃τr) ) y se eliminan las restricciones que limitaban a aquel (desaparece el efecto chattering y es posible controlar sistemas con grado relativo r > 1). A continuaci´on se presentan ejemplos de leyes de control basadas en este m´etodo: u=−αsign( ˙σ+|σ|1/2sign(σ)) u=−αsign(¨σ+2|˙σ|3+|σ|2)1/6sign( ˙σ+|σ|2/3sign(σ)) 3.1 HOSMC como diferenciador En [2] se presenta una interesante aplicaci´on del HOSMC. La idea es utilizar el m´etodo como observador para diferenciar una se˜nal. Como ventajas mas notables cabe destacar que se consigue un diferenciador que es exacto en ausencia de ruidos y robusto en presencia de ruidos. Figura 5: Funci´on senoidal te´orica en ausencia de ruidos. fteorica En el citado art´ıculo se presenta el diferenciador de Levant en el siguiente modo. Dada una se˜nal f(t) a diferenciar, el sistema de ecuaciones: ˙z0=υ0, υ0=λ0L1/3|z0−f|2/3sign(z0−f) + z1 ˙z1=υ1, υ1=λ1L1/2|z1−f|1/2sign(z1−f) + z2 ˙z2=λ2Lsign(z2−υ1) (4) proporciona estimaciones de la funci´on f (z0) y de sus derivadas primera y segunda (z1yz2) 3.2 Simulaciones El diferenciador de Levant ha sido programado en lenguaje C para su simulaci´on. Para analizar sus resultados con un ejemplo representativo se ha utilizado una funci´on senoidal te´orica (ecuaci´on 5) como objeto de ensayo a la que se le ha a˜nadido un significativo ruido gausiano n(t) con desviaci´on t´ıpica 0.2 para analizar la robustez del diferenciador. fteorica =ft= 2 + sin(0.5t) + cos(t) +0.5∗sin(2t+ 0.5) −0.3cos(5t−0.5) (5) fteorica+ruido =ftr =ft+n(t) (6) as´ı pues, la derivada exacta de la funci´on, en ausencia de ruido, deber´ıa ser: fdteorica =fdt = 0.5cos(0.5t)−sin(t) +cos(2t+ 0.5) + 1.5sin(5t−0.5) (7) El resultado de la simulaci´on se representa en la figura 8. Tras un periodo transitorio (que
Figura 6: Funci´on senoidal te´orica m´as ruido. fteorica+ruido Figura 7: Derivada exacta de la funci´on senoidal (fd) en ausencia de ruidos. Figura 8: Representaci´on de la derivada estimada por Levant y la derivada exacta. se reduce significativamente cuanto mayor es el conocimiento que tenemos del valor inicial de la derivada a estimar) el diferenciador se ajusta con gran precisi´on al valor real de la derivada. 4 CONTROL POR MODO DESLIZANTE DINAMICO El concepto que subyace a esta metodolog´ıa es introducir din´amica adicional al sistema. Con ello se consigue combinar las caracter´ısticas de un control por modo deslizante convencional (insensibilidad ante perturbaciones y no linealidades acotadas) y las de un compensador din´amico tradicional (adaptaci´on a perturbaciones no acotadas). Puede demostrarse que este controlador permite alcanzar el modo de deslizamiento (σ= 0) en tiempo finito. Un ejemplo de ley de control no lineal DSMC puede ser implementado en la siguiente forma ([7]): ˙χ=bσ σ0.5−a(χ+σ) |χ+σ|0.5 J=χ+σ(8) siendo la ley de control en este caso: u=−ρsign(J) (9) 4.1 DSMC como diferenciador Una nueva clase de diferenciador ha sido presentada por Yuri Shtessel (([6])). Como en el caso anterior, este diferenciador deriva de un controlador usado como observador para derivar una se˜nal. El control por modo deslizante din´amico puede ser usado como diferenciador de segundo orden mediante la siguiente sucesi´on de ecuaciones: ¨ ˆχ=ρ0sign(J0) ˙χ=be |e|0.5−a(χ+e) |χ+e|0.5(10) J0=χ−e(11) e=χ−ˆχ(12) Finalmente la estimaci´on de la derivada de la funci´on χpuede obtenerse como: y=˙ ˆχ=Zρ0sign(J0)dτ (13)
Figura 9: Representaci´on de la derivada estimada por Shtessel y la derivada exacta. 4.2 Simulaciones La implementaci´on software del citado diferenciador en la forma de ecuaciones antes descritas ha sido simulada en C con el objeto de analizar su eficacia con la se˜nal senoidal te´orica anteriormente citada (ecuaci´on 5). La figura 9 muestra el resultado de las simulaciones comprob´andose de nuevo, tras el correspondiente transitorio, que una buena estimaci´on de la derivada es obtenida. Como en el caso del diferenciador de Levant, el periodo transitorio es despreciable si se conocen los valores iniciales de la derivada a estimar. 5 OTRAS T´ ECNICAS DE DIFERENCIACION A lo largo de las ´ultimas d´ecadas, muchas han sido las t´ecnicas desarrolladas para derivar se˜nales. En casos te´oricos ideales, en ausencia de ruidos y otras perturbaciones, y cuando las funciones que interesa derivar son conocidas, pueden usarse m´etodos anal´ıticos cada vez m´as abordables gracias a herramientas de calculo simb´olico como Maple, Matlab, etc. Una alternativa novedosa es la presentada en [9] donde se sugiere la diferenciaci´on autom´atica (Automatic Differentiation, AD) para su uso en algoritmos de control. Esta t´ecnica, al contrario que los procesos anal´ıticos, no requiere de una formula expl´ıcita para el calculo de derivadas y devuelve un valor num´erico para la estimaci´on de inter´es dados los valores de las variables implicadas. Cuando la funci´on que deseamos diferenciar no es conocida, como suele ocurrir en la mayor´ıa de las aplicaciones pr´acticas, se hace imprescindible el uso de otras t´ecnicas. El desarrollo en serie de Fourier puede ser un m´etodo a aplicar para obtener formulas de c´alculo de derivadas de cualquier orden de una se˜nal cuyo modelo anal´ıtico se desconoce. Desgraciadamente esta t´ecnica no presenta buenos resultados en presencia de ruidos por lo que no es interesante para muchas situaciones de la vida real. Entre las modernas t´ecnicas que pueden ser empleadas para la diferenciaci´on de se˜nales cuya fuente es desconocida y que presentan ruidos u otras perturbaciones, se puede hacer una divisi´on en dos categor´ıas ([8]). La primera consiste en ajustar un polinomio determinado en una ”ventana” de tama˜no fijo de los datos a diferenciar y(t) y que se mueve a lo largo de la variable independiente (t). El interesado podr´a profundizar en este m´etodo leyendo el articulo de Savitzky-Golay. La segunda versi´on se conoce como diferencias finitas y ha sido probablemente la m´as usada y popular por su sencillez. La t´ecnica de diferencias finitas mas sencilla para diferenciar una se˜nal y=f(ti) consiste en aplicar el m´etodo de la diferencia ”hacia delante” que se puede definir con la formula : f0(ti) = [f(ti+h)−f(ti)]/h (14) para i= 1...n −1 y siendo f0(ti) la primera derivada de fen tiy h el intervalo entre dos muestras sucesivas. El error de esta formula es h/2∗f00(ti) y puede hacerse excesivo si h no tiene un valor suficientemente peque˜no. El inconveniente m´as importante de este segundo m´etodo es que este error es significativamente mayor en presencia de ruidos lo que puede paliarse con la introducci´on de filtros que suavicen el resultado, pero a costa de incorporar posibles distorsiones a la se˜nal (recorte de picos m´aximos y m´ınimos, retrasos, etc). Savitzky y Golay ([10]) proponen ajustar la se˜nal a diferenciar en el instante tipor un polinomio en una ventana de los datos definida por nlpuntos ”pasados” (tj< ti) y por nrpuntos ”futuros” (tk> ti). De tal forma, la se˜nal f a diferenciar quedara aproximada en un punto t, por una combinaci´on lineal gtmediante la formula: gt= nr X n=nl cnft+n(15) Si se calculan los coeficientes cnno como valores constantes sino como polinomios de mayor orden ( t´ıpicamente orden 2 o 4) es posible preservar momentos de orden superior en la se˜nal. As´ı pues, primero se ajusta por m´ınimos cuadrados un polinomio con los puntos nl+nr+ 1 de la ventana de datos y despu´es se calcula el valor que toma en
el instante t (gt). Esta idea, pero en forma optimizada para su computaci´on, es la que se presenta en el algoritmo de Savitzky-Golay que puede encontrarse en [10]. En esta funci´on, el par´ametro ld indica que coeficientes cndesean obtenerse con la llamada a la funci´on. Es decir, con ld = 0 se obtienen los coeficientes para la se˜nal filtrada, con ld > 1 los de la estimaci´on de la ld-´esima derivada. De esta forma, con ld = 1 por ejemplo, una estimaci´on de la primera derivada de f puede ser obtenida con la convoluci´on definida por la formula (15) dividida por el paso de integraci´on h. 6 COMPARATIVAS Una comparativa de las distintas t´ecnicas analizadas puede ser esclarecedora sobre que tipo de diferenciador puede ofrecer mejores resultados. Para ello se ha utilizado la funci´on senoidal te´orica (5) ya introducida en 3.2. El diferenciador basado en series de Fourier y el introducido por Savitzky-Golay (analizados en el punto 5 ) son comparados con el diferenciador HOSMC en las figuras 10 y 11 respectivamente. Como se adelantaba en 5 el basado en series de Fourier presenta malos resultados en presencia de ruidos incluso cuando estos tienen una desviaci´on t´ıpica muy reducida. En la figura 10 por ejemplo se comparan los resultados entre el diferenciador de Levant cuando el ruido de la se˜nal original ( fteorica+ruido ) tiene desviaci´on t´ıpica 0.2 y el de Khan cuando el ruido es de desviaci´on t´ıpica 0.02. Sin embargo, tras el transitorio, la estimaci´on de Levant presenta mucho menos ruido. El diferenciador de Savitzky-Golay requiere de un alto n´umero de muestras en la ”ventana” de ajuste del polinomio para producir resultados aceptables. Sin embargo, incluso en el mejor de los casos, los resultados conseguidos no son tan espectaculares como los alcanzados con el diferenciador HOSMC. Finalmente, mediante la observaci´on de las figuras 9 y 8 y la representaci´on de los errores en las figuras 12 y 13, una comparativa entre el diferenciador HOSMC y el DSMC puede ser establecida. Como puede apreciarse, la precisi´on alcanzada en este caso por ambos diferenciadores es comparable aunque una vez m´as el diferenciador HOSMC parece ser la mejor alternativa tanto en precisi´on como en la rapidez en superar el transitorio. 7 UNA APLICACI´ ON REAL Con el fin de justificar la eficacia del diferenciador HOSMC se ha procedido ha ensayar el algoritmo comentado en 3.1 para obtenci´on de aceleraci´ones Figura 10: Comparaci´on entre las derivadas estimadas por el diferenciador de Levant y el basado en series de Fourier (Khan). Figura 11: Comparaci´on entre las derivadas estimadas por el diferenciador de Levant y el propuesto por Savitzky-Golay.
3 10− ≈ Figura 12: Se˜nal de error en la estimaci´on de la derivada (fd −fdestimada) (Levant). 2 10− ≈ Figura 13: Se˜nal de error en la estimaci´on de la derivada (fd −fdestimada) (Shtessel). Figura 14: Estimaciones de velocidad del primer eje del robot procedentes de la diferenciaci´on num´erica standard y el diferenciador de Levant. en un robot real ([5]). Para ello se ha hecho uso de las se˜nales procedentes de sensores colocados en un robot manipulador industrial. Los encoders situados en los ejes del robot proporcionan medidas de posici´on de los mismos pero, por requerimientos de control avanzado, se precisan asimismo medidas de velocidad y aceleraci´on. Como puede comprobarse en la figura 14 la velocidad del eje puede ser estimada f´acilmente mediante sencilla diferenciaci´on num´erica siendo los resultados obtenidos mediante esta t´ecnica suficientemente aceptables y el ruido de la se˜nal casi inapreciable. Sin embargo, en la figura 15 se puede comprobar como una segunda diferenciaci´on produce resultados totalmente inadmisibles desde el punto de su uso en el control del robot debido a su excesivo ruido. El uso de filtros m´as acusados provoca una distorsi´on de la se˜nal igualmente inaceptable. Sin embargo, mediante el uso del diferenciador HOSMC se puede obtener mucho mejores resultados, como puede verse en la figura 16. Ahora la se˜nal diferenciada es suficientemente suave como para ser empleada en posibles controladores como realimentaci´on y presenta una valor mas preciso de medidas de aceleraci´on de los ejes. 8 CONCLUSIONES FINALES Las m´as recientes t´ecnicas de control basadas en modos deslizantes han sido presentadas. El Control por Modo Deslizante de Orden Superior y el Control por Modo Deslizante Din´amico se presentan como novedosos y prometedores m´etodos que pueden ser empleados para diferenciar se˜nales en presencia de ruidos. Su robustez y precisi´on ha sido mostrada con simulaciones diversas. Los ensayos parecen reflejar que los mejores resultados se obtienen con el diferenciador HOSMC (Levant) si bien los diferenciadores basados en DSMC (Shtessel) presentan una menor complejidad. Otras t´ecnicas de diferenciaci´on han sido analizadas y comparadas con el diferenciador HOSMC, volviendo a mostrarse ´este, como el m´etodo m´as eficaz en el caso de se˜nales muy ruidosas. Un caso pr´actico ha sido asimismo presentado en el que la se˜nal de aceleraci´on de un eje de un robot manipulador industrial es estimada mediante el diferenciador HOSMC, comprob´andose significativas ventajas respecto a los m´etodos tradicionales de diferenciaci´on. Agradecimientos Este trabajo ha sido financiado por fondos de la comisi´on europea bajo el programa Marie Curie/Control Training Site (CTS). As´ı mismo los
Figura 15: Estimaci´on de la aceleraci´on procedente de la diferenciaci´on num´erica standard de la se˜nal de velocidad. Figura 16: Estimaci´on de la aceleraci´on procedente de la diferenciaci´on de la se˜nal de velocidad proporcionada por el m´etodo de Levant. Figura 17: Comparativa de estimaciones (diferenciador standard/Levant). autores desean expresar su agradecimiento al Ministerio de Ciencia y Tecnolog´ıa por financiar parcialmente este trabajo en el marco del proyecto DPI2001-2424-C02-01. Referencias [1] Ishtiaq Rasool Khan and Ryoji Ohba, New finite difference formulas for numerical differentiation, Journal of Computational and Applied Mathematics 126, 2000. [2] Arie Levant, Higher-order sliding modes, differentiation and output-feedback control, International Journal of Control in the upcoming 65th birthday special issue for Prof. V. Utkin[2003], 2003. [3] Yean-Ren Hwang Min-Shin Chen and Masayoshi Tomizuka, A state-dependent boundary layer design for sliding mode control, IEEE Transactions On Automatic Control, Vol. 47, No. 10, 2002. [4] Stanislaw H.Zak Raymond A.DeCarlo and Gregory P.Matthews, Variable structure control of nonlinear multivariable systems: A tutorial, Procedings of the IEEE, Vol.76 No.3, 1988. [5] Rafael Romero Vicente, Plataforma de experimentacin de controladores para robots industriales, Universidad de Sevilla, 2001. [6] Y. Shtessel, Second order sliding mode exact differentiator using ndsm technique, Seminar on Sliding Mode Control, University Of Sheffield, 2001. [7] Yuri Shtessel, Second order sliding mode control based on nonlinear dynamic sliding manifold, Seminar on Sliding Mode Control, University Of Sheffield, 2001. [8] Shyam S. Shukla and James F. Rusling, Comparison of methods for numerical differentiation, trends in analytical chemistry, vol. 4, no. 9, 1985. [9] Edward Moore Stephen L. Campbell and Yangchun Zhong, Utilization of automatic differentiation in control algorithms, IEEE Transanctions on Automatic Control, Vol.39, No.5, 1994. [10] Saul A. Teukolsky William H. Press and William T. Vetterling, Numerical recipes in c, Cambridge University Press, 2002. [11] Alan S.I. Zinober, Variable structure and lyapunov control, Lecture Notes in Control and Information Sciences 193, Springer-Verlag, 1994.