ENINV IE 28 Encuentro de Investigación en Ingeniería Eléctrica Zacatecas, Zac, Marzo 3 4, 28 Control de Robots Móviles: Implementación Experimental en Tiempo Real con Matlab/Simulink Jesús Marcel García Yañez y Javier Moreno Valenzuela Centro de Investigación y Desarrollo de Tecnologia Digital, perteneciente al Instituto Politécnico Nacional. Av. del Parque 3, Tijuana, B.C. México 225 tel: (664)-623-377; fax: (664)-623-388 correo-e: garcia@citedi.mx, moreno@citedi.mx Resumen Este trabajo reporta algunos resultados preeliminares sobre el problema de control de los movimientos de un robot móvil en ambientes sin obstáculos. La idea fundamental consiste en la implementación de un controlador de seguimiento de trayectorias, ya propuesto en la literatura, para el popular robot uniciclo Boe Bot. La efectividad de la plataforma experimental y el controlador se muestra a través de experimentos. Abstract This document reports some results on the motion control problem of wheeled mobile robot in environments without obstacles. The main idea consists in the implementation of a trajectory tracking controller, already proposed in the literature, in the popular unicycle robot Boe Bot. The efficiency of the experimental platform and the controller in confirmed with the results obtained by experiments. Descriptores Robot móvil, plataforma experimental, seguimiento de trayectorias, controlador. I. INTRODUCCIÓN LA robótica móvil ha sido un área activa de investigación y desarrollo durante las últimas tres décadas. Este gran interés ha sido impulsado por el gran numero de aplicaciones que pueden ser sólo dirigidas por robots móviles y su habilidad para trabajar en ambientes potencialmente arriesgados o poco estructurados []. Particularmente, sus aplicaciones están asociadas con funciones que requieren cierta destreza para resolver situaciones en las que se requiere trabajar en ambientes altamente nocivos o extremos para las personas, tales como excavación de minas, aplicaciones militares, plantas nucleares, transportación de materiales químicos o biológicos altamente tóxicos y en los últimos años exploración espacial. De acuerdo a estas aplicaciones, está claro que se requiere un buen sensado del entorno para llevar a cabo el preciso nivel de control que las tareas requieren. Obtener información relevante sobre el entorno es una de los principales problemáticas en la robótica móvil, para resolverlo se em-
ENINV IE 28 Encuentro de Investigación en IE, 3 4 Marzo, 28 plean diversos tipos de sensores, elementos que nos permiten establecer un puente entre el mundo físico y el mundo electrónico (retroalimentación de información). En este trabajo se propone un sistema de sensado visual para la extracción de información sobre la posición y orientación de un robot móvil dentro de su entorno. Al menos dos principales aspectos justifican el uso de la visión para proveer de capacidad sensorial a un robot móvil: la amplia disponibilidad de cámaras CCD de bajo costo y la gran cantidad de información del entorno donde se mueve el robot en una sola imagen (en comparación con las medidas de los sensores de ultrasonido o láser). Actualmente, la visión generalmente resulta en una buena combinación balanceada de bajo ruido, alta cantidad de información y bajo costo. Sin embargo, la extracción de información relevante en tiempo real a partir de una sola imagen o un conjunto de imágenes es una tarea bastante compleja, lo que sigue siendo un gran obstáculo todavía para el uso intensivo de la visión en robots móviles [2]. Un robot móvil es uno de los bien conocidos sistemas que tienen las limitaciones de mecanismos no-holonómicos y muchos trabajos con diversos métodos de control para este tipo de sistemas esta disponible en la literatura. El objetivo de este trabajo es presentar los resultados obtenidos por la implementación experimental de un controlador propuesto en [] para la solución del problema de seguimiento de trayectorias de un robot móvil tipo uniciclo bajo restricciones no-holonómicas. Los resultados obtenidos en la simulación numérica y experimentación muestran la efectividad tanto del controlador como de la plataforma experimental. El resto de este documento esta organizado de la siguiente manera. La sección II presenta el modelado del sistema, el objetivo de control y el controlador para la solución del problema de seguimiento de trayectorias. La sección III presenta el sistema experimental usado en la implementación del controlador. La sección IV reporta algunos resultados de simulación del robot móvil con la incorporación del controlador propuesto en []. La sección V presenta resultados obtenidos en la implementación experimental del controlador descrito en la sección II. Finalmente las conclusiones obtenidas se presentan en la sección VI. II. MODELADO Y CONTROL DE ROBOTS MÓVILES A. Modelo del robot El modelo más simple de un robot móvil noholonómico es el uniciclo, un vehiculo de dos ruedas motoras actuadas por dos servomotores independientes y una rueda adicional para mantener el equilibrio [3]. El robot móvil usado en este trabajo es el Boe Bot, un modelo tipo uniciclo desarrollado por Parallax [4], el cual se asume está bajo la restricción noholonómica de rodamiento puro y no deslizamiento. El modelo cinemático del robot móvil con dos ruedas actuadas es descrito por [] q = S(q)υ, () donde q, q IR 3 se definen como q = [x c y c θ] T, q = [ẋ c ẏ c θ] T, (2) con x c, y c denotando la posición del centro de masa del robot móvil a lo largo de las coordenadas cartesianas (x,y), θ representa el ángulo de orientación del robot, ẋ c, ẏ c denotan los componentes de la velocidad lineal del robot representada por υ IR y
Control de Robots Móviles θ IR refiere la velocidad angular alrededor del eje vertical, mientras que la matriz S(q) IR 3 2 se define como S(q) = cos θ sinθ, (3) y el vector de velocidad υ IR 2 se denota por υ = [υ θ] T. (4) La relación entre υ, θ y la velocidad angular de las ruedas del robot se define por [ ] ωder ω Izq = [ /r /r ] [ υ θ ], (5) donde ω Der, ω Izq denotan la velocidad angular para las ruedas derecha e izquierda respectivamente, r representa el radio de las ruedas del robot. B. Seguimiento de trayectorias El objetivo de control para el problema de seguimiento de trayectorias consiste en que la diferencia entre la posición y orientación actual del robot y una trayectoria de posición y orientación de referencia variante con el tiempo debe tender a cero []. Para cuantificar el objetivo de control se definen x, ỹ, θ IR como sigue x = x c x rc, ỹ = y c y rc, θ = θ θ r, (6) donde la posición y orientación actual denotada por x c, y c, θ son definidas en (2) y q r = [ x rc y rc θ r ] T IR 3 denota una trayectoria de referencia variante con el tiempo. La trayectoria de referencia es generada a través de un modelo cinemático de referencia, el cual se define de acuerdo a q r = S(q r )υ r, (7) donde la matriz S(q r ) fue definida en (3) y υ r = [ υ r θ r ] T IR 2 denota la velocidad lineal y angular variante con el tiempo, las cuales se asume son acotadas al igual que sus derivadas. Con el fin de facilitar el desarrollo del sistema en lazo cerrado y su análisis de estabilidad, una transformación global invertible ha sido definida en [] como sigue e e 2 e 3 = cos θ sinθ sinθ cos θ x ỹ θ.(8) Para relacionar las señales auxiliares del e- rror denotadas por e, e 2 y e 3 IR al error de posición y orientación dados por x, ỹ y θ definidas en (6), se toma la derivada con respecto al tiempo de (8) y u- sando ()-(4), (6), (7) se obtiene e e2 = e3 υ + θe 2 υ r cos e 3 θe + υ r sine 3 θ θ r. (9) Se dice que si se encuentra una ley de control (υ, θ) para la transformación cinemática dada en (9) tal que si el límite lím t e e 2 e 3 =, () se cumple, entonces se satisface el objetivo de control de seguimiento de trayectorias. Un controlador diferenciable y variante con el tiempo ha sido propuesto en [] como sigue [ ] [ ] k e + υ r cos e 3 = υ θ sin e υ 3 r e 3 e 2 k 2 e 3 + θ,() r donde k, k 2 son ganancias de control constantes y positivas. Sustituyendo la ley de control dada en () dentro del sistema en lazo abierto en (9) se obtiene la siguiente expresión e θe 2 k e e2 = θe + υ r sine 3, (2) e3 sin e υ 3 r e 3 e 2 k 2 e 3
2 ENINV IE 28 Encuentro de Investigación en IE, 3 4 Marzo, 28 ω x c y c ω 2 θ Figura. Esquema de bloques: Plataforma experimental en tiempo real que denota el sistema de lazo cerrado en terminos del vector de estados [e e 2 e 3 ] T IR 3. Es posible demostrar que lím t lo que implica que lím t e e 2 e 3 x ỹ θ =, (3) =. (4) III. SISTEMA EXPERIMENTAL La validación experimental del controlador propuesto en este trabajo ha sido realizada usando una base experimental (figura ) desarrollada en el Centro de Investigación y Desarrollo de Tecnologia Digital (CITEDI), la cual emplea un lazo de retroalimentación visual para el control de posición y orientación del robot móvil Boe Bot en ambientes libres de obstáculos. La figura muestra un diagrama de bloques del sistema experimental. El desarrollo de la plataforma experimental se ha realizado usando el siguiente equipo: un microcontrolador Basic Stamp II, incluido en el robot móvil accionado por dos servomotores ubicados en las ruedas derecha e izquierda del robot, un adaptador serie/bluetooth Parani SD-, un adaptador bluetooth EB-5, dos computadoras personales, una cámara de video CMOS y software científico (Matlab/Simulink). IV. RESULTADOS DE SIMULACIÓN Usando simulaciones numéricas, en esta sección se ilustra el rendimiento del controlador dado en () en lazo cerrado con el modelo dinámico dado en (). La trayectoria deseada fue seleccionada de acuerdo a los siguientes parametros υ r = 6 [pixeles/seg], θ r =,25 [radianes/seg], (5) mientras que las condiciones iniciales q() y q r () del sistema fueron asignadas como sigue x c() q() = y c () = 55 4, (6) θ(),5 q r () = x rc() y rc () θ r () = 6 4. (7),25
Control de Robots Móviles 3 25.6 2 x rc x c.4.2 θ r θ [píxeles] 5 [radianes].8.6.4.2 5 Tiempo [Segundos] Tiempo (segundos) Figura 2. Simulación: componente x c y x rc. 3 3 Figura 4. Simulación: componente θ y θ r [píxeles] 25 2 5 5 y rc y c Coordenada y [píxeles] 25 2 5 5 Trayectoria deseada Trayectoria real 5 5 2 25 Coordenada x [píxeles] Figura 3. Simulación: componente y c y y rc. Figura 5. Simulación: Trayectoria real (x c, y c) y deseada (x rc, y rc) Las ganancias del controlador han sido seleccionadas como k =, k 2 = 5. (8) La simulación fue realizada en un tiempo de 5 segundos. Los resultados obtenidos por la respuesta del sistema en lazo cerrado se muestran en las figuras 2-5. Como se muestra en las figuras, el error de seguimiento de posición y orientación es prácticamente cero despues de un tiempo de cinco segundos de simulación, lo que muestra la efectividad del controlador. V. RESULTADOS EXPERIMENTALES A. Experimento En esta sección se reportan resultados experimentales sobre la implementación del controlador () en el robot Boe Bot usando las trayectorias de referencia definidas por la ecuación diferencial (7), υ r y θ r en (5), las condiciones iniciales en (7), y las ganancias de control en (8). El experimento inicia con la posición y orientación del robot en q() en (6), obtenida por el sistema de visión. Los
4 ENINV IE 28 Encuentro de Investigación en IE, 3 4 Marzo, 28 resultados obtenidos se muestran en las figuras 6-9. Nótese que éstos coinciden con los resultados producidos por la simulación del sistema () usando el controlador (), descritos en la sección IV. En forma adicional, se han calculado del experimento las señales de error de posición x, ỹ y orientación θ. Dichas señales son mostradas en las figuras -2. En estas figuras se observa que las señales de error x, ỹ y θ permanecen acotadas y con cierta tendencia a oscilar. Particularmente el error de posición se mantiene oscilando entre valores menores a [píxeles], mientras que el error de orientación oscila entre valores cercanos a. [radianes], estos hechos implican que el error en la trayectoria del robot es proporcional a la curvatura de la referencia. B. Discusión de resultados De los resultados experimentales ilustrados por las figuras 6-2, es posible concluir que el controlador () presentado en este documento alcanza un seguimiento razonable de la posición deseada variante con el tiempo, sin embargo el rendimiento del seguimiento de la orientación deseada no puede ser conveniente para muchas aplicaciones. Basado en la experiencia que se tiene en el desarrollo y uso de la plataforma experimental se puede concluir que la carencia de exactitud en el seguimiento de orientación se debe a algunos factores, entre ellos esta la limitación de la plataforma experimental en relación a la diferencia entre las tasas de muestreo de datos empleadas por los módulos del sistema, y es que aunque el control y envio de comandos de velocidad para las ruedas del robot se realiza en tiempo real, el calculo y retroalimentación de la posición y orientación actual del robot depende de la tasa de transmisión de la cámara empleada, asi como del tiempo de procesamiento de la imagen captada por el sistema de visión. Otro obstáculo en la implementación del controlador propuesto fue determinar la posición y orientación del robot móvil en el espacio captado por la cámara de una forma eficiente. Para solucionar este obstáculo se emplearon algoritmos de binarización por umbrales y análisis estadístico para obtener la posición de una marca de dimensiones y características conocidas colocada sobre el centro de masa del robot. Desafortunadamente por el movimiento del robot, las velocidades altas, los algoritmos de procesamiento de la imagen y la iluminación empleada resulto en una medición ruidosa. De este hecho se obtiene que ya que la medición de la posición solo necesita de una marca, el controlador fue capaz de alcanzar un rendimiento razonable. Sin embargo la medición de la posición de dos marcas es necesaria para determinar la orientación del robot móvil. En conclusión ya que la posición de ambas marcas esta sujeta al error y el ruido, el resultado del calculo de la orientación del robot fue comprometido. Esta ultima observación sugiere que si la medición de posición y orientación se realizara con algoritmos de procesamiento mas sofisticados, el error de seguimiento en la posición y orientación mostrado por el controlador disminuiría. VI. CONCLUSIONES En este trabajo se presentaron algunos avances en el desarrollo de una plataforma experimental basada en Matlab y Simulink que permite aplicaciones de control mediante dispositivos Bluetooth. Por otra parte se concluye que los resultados experimentales presentados en este documento son satisfactorios, verificando con ello la efectividad tanto del controlador empleado como de la plataforma experimental propuesta para
Control de Robots Móviles 5 la solución del problema de control de los movimientos de robots móviles. Referencias [] W. Dixon, D. Dawson, E. Zergeroglu, A.Behal Nonlinear Control of Wheeled Mobile Robots, John Wiley & Sons, 24. [2] C. M. Soria, R. Carelli, Control de un Robot Móvil Utilizando el Flujo Optico Obtenido a través de un Sistema Omnidireccional Catadióptrico, en memorias del IV Jornada Argentina de Robótica, Cordova, Argentina, 6 y 7 de noviembre, 26. [3] T. Hieu Bui, T. Tien Nguyen, T. Lam Chung and S. Bong Kim A Simple Nonlinear Control of a Two-Wheeled Welding Mobile Robot, International Journal of Control, Automation, and System Vol., No., pp. 35-4, 23. [4] Online : http://www.parallax.com/, website de Parallax, Inc. [5] C. Canudas de Wit, B. Siciliano, G. Bastin Theory of Robot Control, Springer, 996. 25 2 x rc x c [Pixeles] [radianes] 3 25 2 5 5 y rc y c Figura 7. Experimento: componente y c y y rc..6.4.2.8.6.4.2 θ r θ [píxeles] 5.2.4 Figura 8. Experimento: componente θ y θ r 3 5 Figura 6. Experimento: componente x c y x rc. Coordenada y [píxeles] 25 2 5 5 Trayectoria deseada Trayectoria real 5 5 2 25 Coordenada x [píxeles] Figura 9. Experimento: Trayectoria real (x c, y c) y deseada (x rc, y rc)
6 ENINV IE 28 Encuentro de Investigación en IE, 3 4 Marzo, 28 2 8 6 4 [pixeles] 2 2 4 6 8 Figura. Experimento: error de posición x 5 [pixeles] 5 5 Figura. Experimento: error de posición ỹ.. [radianes].2.3.4.5.6 Figura 2. Experimento: error de orientación θ