Estabilidad de un robot cuadrúpedo durante un modo de caminar cuasi-estático mediante realimentación del ZMP
Héctor Montes Franceschi
Facultad de Ingeniería Eléctrica
Universidad Tecnológica de Panamá
RESUMEN
En este artículo se explica un método para lograr la estabilidad de un robot caminante de cuatro patas durante una locomoción cuasi-estática. Esta locomoción se conoce con el nombre de modo de caminar discontinuo de dos fases [1]. El método incluye las mediciones de las fuerzas en cada una de las patas del robot en el eje de las 'z', para ello, se implementan galgas extensiométricas sobre el eje de cada pie del robot [2]. El robot utilizado como plataforma experimental es un robot cuadrúpedo caminante y escalador de grandes dimensiones, accionado hidráulicamente, llamado ROBOCLIMBER [3]. Con la medición de las fuerzas en cada una de las patas del robot se realiza el cálculo, en tiempo real, del punto de momento cero, ampliamente conocida en el mundo de la robótica con el acrónimo de ZMP [4] (del inglés Zero-Moment point). El método de estabilidad propuesto compara el ZMP con centro de gravedad (cdg) del robot en cada instante durante el modo de caminar. El error que existe de la diferencia de estas variables, se convierte a través del sistema de control, en las fuerzas deseadas que deben tener cada una de las patas de la máquina para que el ZMP del robot esté dentro de los márgenes de estabilidad (polígono de soporte).
Palabras claves: Robot cuadrúpedo, medición de fuerza, punto de momento cero (ZMP), centro de gravedad, margen de estabilidad.
ABSTRACT
In this article, an approach to obtain the stability of a four leg walking robot during quasi-static locomotion is described. This robot locomotion is known like two-phase discontinuous gait [1]. In this approach, the force measurements in each one of the 'z' axes of the robot legs are required. For this reason, strain gauges have been implemented on each robot foot axis [2]. The experimental platform employed is a quadruped walking and climbing robot of great dimensions driven hydraulically called ROBOCLIMBER [3]. By means of the forces measurement in each one of the robot legs the calculation (in real time) of the point where the summation of moments is zero, is carried out. This value is widely known in the robotics world with the acronym ZMP (Zero-Moment point) [4]. The proposed method of stability compares the ZMP with center of gravity (cog) of the robot at each moment during the locomotion. The control system converts the error between the ZMP and the cog in desired forces in each robot legs. Thus, the ZMP produced by the robot legs contact forces are inside of the stability margins (support polygon).
Keywords: quadruped robot, force measurement, zero-moment point (ZMP), center of gravity (cog), stability margin.
1. Introducción
Entre las diversas clases de robots que existen hoy en día, los robots caminantes [5] poseen características específicas (debido al hecho de emplear patas) diferenciadas de las que exhiben los robots que emplean ruedas para su desplazamiento, por lo tanto, poseen ventajas y desventajas. Entre las ventajas que ofrecen las máquinas caminantes con respecto a las conducidas por ruedas [6], se pueden señalar las siguientes: (a) pueden desplazarse sobre terrenos no estructurados y discontinuos, lo que le facilita realizar diversas tareas; (b) dependiendo del tamaño del robot pueden presentar menos problemas de atascamiento sobre terreno blando; producen menos daños al entorno por donde se desplazan; (c) poseen una omnidireccionalidad inherente en el modo de caminar; (d) pueden sortear diferentes obstáculos, así como rebasar zanjas; etc.
Sin embargo, los robots caminantes presentan algunas desventajas en relación a los robots con ruedas, señalando como las más significativas: (a) que poseen una velocidad muy inferior si se trasladan dentro de un terreno continuo y sin obstáculos; (b) la complejidad en el diseño mecánico, electrónico y de control, ya que se debe coordinar un gran número de actuadores que propulsan la estructura del robot [6].
Por otro lado, la estabilidad de los robots caminantes, durante la realización del ciclo de locomoción, es un reto al que los investigadores dedican un gran esfuerzo [7- 10]. Por lo tanto, la consideración de una determinada medida de estabilidad durante la locomoción influye de manera directa en la seguridad de la máquina. En [10] se encuentra un estudio comparativo de las medidas y de los principales márgenes de estabilidad para robots caminantes. Este estudio se centra en la estabilidad de robots de cuatro o más patas.
Así pues, se puede decir que la situación respecto a la estabilidad es particularmente complicada en robots de menos de cuatro patas. Por ejemplo, en un robot bípedo, el criterio de estabilidad más utilizado por los investigadores es el de generación de trayectoria para el ZMP [4], lo que permite establecer la relación que existe entre las posiciones, velocidades y aceleraciones articulares del robot con los márgenes de estabilidad de la máquina, durante las fases de locomoción.
En este artículo se presenta un método para mejorar la estabilidad de un robot cuadrúpedo que presenta las patas en configuración cilíndrica. Para ello se obtiene el ZMP por medio de la medición de las fuerzas de contacto de las patas con el suelo. El ZMP se compara con el cdg del robot y el centro geométrico del cuerpo del robot, con la finalidad de reducir la diferencia que existe entre las variables y, por lo tanto, procurar una mayor estabilidad durante la marcha de la máquina. Así pues, se presentan los resultados de simulación de este método realizados en Matlab®.
2. Configuración general de ROBOCLIMBER
ROBOCLIMBER [3, 11] es un robot cuadrúpedo de grandes dimensiones que puede desplazarse por el suelo, y que puede, escalar las laderas de las montañas con ayuda de cables de sujeción.
Todo el concepto del robot se basa en una estructura mecánica con una masa aproximada de 2500 Kg. Las patas del robot tienen configuración cilíndrica [3] y éstas están alimentadas por medio de un sistema hidráulico y cuyo sistema de control está situado a bordo del robot [11]. Cada pata del robot tiene tres grados de libertad, donde una articulación es de rotación y las otras dos son prismáticas, y la masa total de cada una de las patas es de 170 Kg. El sistema está diseñado para sobrepasar obstáculos algo mayores de 500 mm., y además, el robot puede soportar, a bordo, el equipo necesario (unos 1500 Kg. adicionales) para realizar las tareas de consolidación y de monitorización de las laderas de montañas.
a) b)
Figura 1.(a) ROBOCLIMBER en los laboratorios del IAI-CSIC; (b) Parámetros cinemáticos del robot (vista del plano lateral y vista lateral de la pata del robot).
La articulación de rotación y una articulación prismática de cada pata del robot están sobre el plano lateral de la máquina, mientras que el movimiento de la otra articulación prismática es ortogonal a dicho plano. En la Figura 1(a) se muestra ROBOCLIMBER en su primera configuración. la configuración mecánica del robot se muestra en la Figura 1(b). En dicha figura se muestra la vista superior del robot y la vista lateral de una de las patas.
En la configuración mecánica del robot se pueden apreciar las cuatro articulaciones rotacionales y las cuatro articulaciones radiales prismáticas del robot. Las articulaciones rotacionales tienen un recorrido de ± 45°, y las articulaciones radiales prismáticas tienen un desplazamiento de 300 mm. La tercera articulación (véase la Figura 1(b)) tiene un desplazamiento prismático de 700 mm., en el eje 'z', cuando el robot está sobre una superficie horizontal.
2.1 Formulación matemática del ZMP
Para obtener el ZMP, además, de medir las fuerzas de contactos de las patas del robot, hay que tener en cuenta los parámetros cinemáticos del robot (véase la Figura 1(b)) y la postura durante el seguimiento de una trayectoria. Así pues, cuando el robot está dinámicamente equilibrado se puede obtener el ZMP en el plano sagital (plano de avance) y en el plano transversal (plano de la vista frontal) del robot [12].
Así, el ZMP sobre los planos sagital y transversal son, respectivamente
Las funciones para el cálculo del ZMP (1) se pueden utilizar, indistintamente, si el robot tiene apoyadas tres o las cuatro patas. También, se incluye en cálculo cualquier tipo de desplazamiento de las articulaciones rotacionales o prismáticas radiales.
3. Estructura del controlador
Durante la generación de un modo de caminar de una máquina caminante es indispensable mantener al robot en equilibrio durante la transferencia de una pata o durante el movimiento del cuerpo.
Cuando el robot está en equilibrio, entonces, se dice que el robot está en un estado estable. Por otro lado, cuando el robot deja de estar en equilibrio, éste volcaría, estando en un estado inestable. Algunos autores han realizados estudios de estabilidad para robots caminantes proponiendo algunos criterios de estabilidad los cuales son medidos por los denominados márgenes de estabilidad [7- 10].
Como un criterio de estabilidad, se propone una estrategia de control que incluye la realimentación de fuerza. En este caso se desea que el ZMP siga al centro de gravedad del robot, cuando éste realiza un modo de caminar. Para ello, se calcula el ZMP, en tiempo real, evitando cualquier interferencia ocasionada por incertidumbres en las mediciones de las fuerzas, esto sucede cuando hay deslizamientos o en el momento en que sobreviene algún fenómeno transitorio de la distribución de las fuerzas. En esta estrategia de control se modifica el desplazamiento de las patas en el eje vertical de tal modo que el ZMP se acerque al centro de gravedad del robot (ver Figura 2).
Figura 2. structura del sistema de control para la estabilización de ROBOClIMBER durante un modo de caminar cuasi-estático.
Para ello se define como sistema de referencia del robot su centro geométrico en el plano lateral, esto es debido a que sólo se miden las fuerzas que lo atraviesan. Por lo tanto, se pueden escribir las ecuaciones de equilibrio como W = AF,
donde, Fz, es la sumatoria de fuerzas de reacción sobre el suelo; Mx, es el momento que existe sobre el eje 'x' del centro de gravedad; My, es el momento sobre el 'y' del centro de gravedad; pyi, es la diferencia de la posición de las patas en el eje 'y' con el centro de gravedad sobre el plano sagital pyi=yi - cdgsagital y pxi, es la diferencia de la posición de las patas en el 'x' con el centro de gravedad sobre el plano transversal pxi=xi-cdgtransversal .
Se está representando mediante la ecuación de equilibrio (3) la forma de resolver la distribución de fuerzas en un robot cuadrúpedo empleando mediciones de fuerzas en el eje vertical. Como el robot realiza una trayectoria cuasi-estática, entonces, es posible representar el problema de la distribución de la fuerzas de manera separada del problema de la dinámica. El objetivo del problema de la distribución de fuerzas es calcular qué fuerzas de contacto que se deben tener con el entorno, para luego saber que disposición de las patas hay que efectuar para que sigan a las fuerzas de contacto, previamente calculadas.
ROBOCLIMBER es un robot estáticamente estable, que se puede sustentar con sólo tres patas de apoyo, si estas forman un polígono de soporte en donde el centro de gravedad o el ZMP, esté dentro de él. Como es necesario conocer las fuerzas de contacto que deben tener las patas, la ecuación (3) hay que despejarla para conocer cada una de las fuerzas. Si el apoyo es de solo tres de las patas es posible despejarla porque la matriz A, sería de 3x3, y encontrar la inversa de ella es una operación muy sencilla. Por el contrario, cuando se tienen las 4 patas en contacto con el suelo se tiene una matriz A (3x4), por lo que ya no será posible calcular su inversa. Existe un criterio sencillo y directo para encontrar la inversa de una matriz que no sea cuadrada, que es el empleo de la pseudoinversa de Moore-Penrose, que minimiza la suma de los cuadrados de las componentes de las fuerzas, y, así, la solución para F de la ecuación (4) queda como, F = -A+ w , donde, experimental. Lo que se pretende es minimizar el error que existe entre el ZMP y el cdg. Luego, estos momentos combinados con la sumatoria de fuerzas de contacto, son utilizados junto con la pseudoinversa de A (o inversa dependiendo del número de patas en contacto) para encontrar las nuevas fuerzas de contacto que debe tener el robot. Teniendo un modelo que relacione las fuerzas con la posición de cada pie en el eje de las 'z' en las condiciones de postura adecuada, entonces, es posible controlar en posición las articulaciones prismáticas de cada pata en el eje 'z'.
4. Resultados de la simulación
Antes de iniciar con la simulación del controlador propuesto, se obtuvieron los modelos de las posiciones en el eje 'z' en función de las fuerzas de contacto de cada una de las patas del robot. Para ello, se realizaron muchos ensayos experimentales registrando mediciones de posición y de fuerza de cada una de las patas del robot Para ello, se realizaron muchos ensayos experimentales registrando mediciones de posición y de fuerza de cada una de las patas del robot en las posturas de un modo de caminar discontinuo de dos fases. Con los resultados conseguidos se obtuvo el modelo q zi (Fi) de las patas del robot, representado por la siguiente ecuación matricial,
Figura 3. omparación de los resultados del ZMP con el cdg para el plano transversal y sagital.
En una postura de contacto con tres patas, es posible solo mover la pata diagonalmente contraria a la pata que no está apoyada para desplazar el ZMP hacia el cdg. Según algunos criterios de control, es posible dar por válida una banda estrecha del error del ZMP respecto al cdg, para luego seguir con el modo de caminar. Otro criterio puede darse al establecer Mx = My = O, es decir, que los momentos alrededor de los ejes que cruzan el centro de gravedad se anulen, en lugar de calcularlos utilizando el concepto anterior de Mx =K (ZMP _ sag - cdg_ sag) y My= K (ZMP _ trans- cdg _ trans).
En la Figura 3 se muestran los resultados de simulación realizados en Matlab® para la obtención del ZMP.
5. Conclusión
Después de comparar los resultados obtenidos del ZMP con la utilización de ambos criterios, el primero, el del cálculo de los momentos con la diferencia de ZMP y cdg y el segundo, estableciendo los momentos en 'x' y 'y' iguales a cero, se obtiene, aparentemente, mejor estabilidad con el segundo criterio, pero para tomar una decisión definitiva conviene implementarlo y evaluarlo experimentalmente.
En cualquier caso, se ha logrado obtener un error muy pequeño para el criterio de M=O en el plano sagital, pero en el plano transversal, el criterio del calculo de Mx y My, resulta algo menor que para el criterio de M=O. Generalmente, se puede dar como válido en esta simulación, que el criterio de establecer los momentos a cero proporciona una mejor estrategia para estabilizar el robot.
6.Agradecimientos
Quiero agradecer a mi Tutor Dr. D. Manuel Armada por haberme brindado la oportunidad de trabajar con ROBOCLIMBER, el cual, se ha realizado en el marco de un proyecto de la Comunidad Europea bajo el contrato G1ST-CT-2002- 50160. Los participantes del proyecto han sido: ICOP S.p.a. (coordinador), Space Aplications Services (SAS), Otto Natter Prazisionenmechanik GMBH, Comacchio SRL, Te.Ve. Sas di Zannini Roberto & Co., MACLYSA, D'Appolonia S.p.a., Universidad de Genova (DIMEC) y el Instituto de Automática Industrial del Consejor Superior de Investigaciones Científicas (IAI-CSIC).
7. Referencias Bibliográficas
[1]P. González de Santos y M.A. Jiménez, Generation of discontinuous gaits for quadruped walking vehicles", Journal of Robotics Systems, Vol. 12, No. 9, pp. 599-611, 1995.
[2]H. Montes, S. Nabulsi, M. Armada y V. Sánchez, Design and implementation of force sensor for ROBOCLIMBER", In Proceedings of lnternational Conference on Climbing and Walking Robots CLAWAR'O4, September 22-24, Madrid, España, 2004.
[3]P. Anthoine, M. Armada, S. Carosio, P. Comacchio, F. Cepolina, P. González, T. Klopf, F. Martin, R.C. Michelini, R.M. Molfino, S. Nabulsi, R. Razzoli, E. Rizzi, L. Steinicke, R. Zannini y M. Zoppi, ROBOClIMBER", In Proc. ASER03, 1st International Workshop on Advances in Service Robotics, Marzo 13-15, Bardolino, Italia, 2003.
[4]M. Vukobratovic y D. Juricic, Contribution to the síntesis of biped gait", lEEE Trans. Bio-Medical Engineering, Vol. 16, pp. 1-6, 1969.
[5]K. Berns, The walking machine catalogue, disponible en http://www.walking-machines.org/ [Consulta: 17 de agosto de 2005].
[6]M. Armada y P. González de Santos, Climbing, walking and interventions robots", lndustrial Robots: An lnternational Journal, Vol. 24, No. 2, MCB University Press, 1997.
[7]D. E. Orin, lnteractive control of a six- legged vehicle with optimization of both stability and energy, Ph. D. Thesis, The Ohio State University, 1976.
[8]M. H. Raibert, Legged robots that balance, The MIT Press. Cambridge. Massachussets, 1986.
[9]B.S. Lin y S.M. Song, Dynamic modeling, stability, and energy efficient of a quadrupedal walking machine", lEEE lnternational Conference on Robotics and Automation, Atlanta, Georgia, pp. 367-373, 1993.
[10]E. García, Optimización de la estabilidad y la velocidad de robots caminantes, Tesis Doctoral, Universidad Politécnica de Madrid, España, 2002.
[11]S. Nabulsi, H. Montes y M. Armada, ROBOCLIMBER: control system architecture", In: Proceedings of lnternational Conference on Climbing and Walking Robots, Septiembre 22- 24, Madrid, España, 2004.
[12]H. Montes, S. Nabulsi y M. Armada, Detecting Zero-Moment Point in legged robot", In: Proceedings of lnternational Conference on Climbing and Walking Robots, Septiembre 22- 24, Madrid, España, 2004.