3

137
INSTITUTO POLITÉCNICO NACIONAL CENTRO DE INVESTIGACIÓN EN COMPUTACIÓN Modelado y Control de un Manipulador Móvil en el Espacio de la Tarea TESIS QUE PARA OBTENER EL GRADO DE DOCTOR EN CIENCIAS DE LA COMPUTACIÓN PRESENTA: GASTÓN HUGO SALAZAR SILVA DIRECTORES DE TESIS: DR. MARCO ANTONIO MORENO ARMENDÁRIZ DR. JAIME ÁLVAREZ GALLEGOS México, D.F. Julio 2013

description

Tesis profesional, control de robot manipulador de dos grados de libertad con matlab y simulink

Transcript of 3

  • INSTITUTO POLITCNICO NACIONAL

    CENTRO DE INVESTIGACIN EN COMPUTACIN

    Modelado y Control de un ManipuladorMvil en el Espacio de la Tarea

    TESIS

    QUE PARA OBTENER EL GRADO DEDOCTOR EN CIENCIAS DE LA COMPUTACIN

    PRESENTA:

    GASTN HUGO SALAZAR SILVA

    DIRECTORES DE TESIS:

    DR. MARCO ANTONIO MORENO ARMENDRIZDR. JAIME LVAREZ GALLEGOS

    Mxico, D.F. Julio 2013

  • Resumen

    Un manipulador mvil es bsicamente un brazo manipulador estacionario el cual semonta sobre un robot mvil y por lo tanto es capaz de desempear simultneamente lastareas de locomocin y manipulacin. Al poder realizar ambas tareas concurrentemente,el manipulador mvil tiene ventajas sobre los manipuladores estacionarios, tales comoun mayor espacio de trabajo y mayor autonoma, lo cual puede ser una ventaja enambientes poco estructurados; tambin puede tener desventajas, tal como la presenciade restricciones no holnomas.

    El presente trabajo muestra los resultados obtenidos en el modelado y control deun manipulador mvil. En el problema del modelado se muestra un mtodo integralde modelado cinemtico de manipuladores mviles con ruedas que permite aplicar lasmismas herramientas usadas en el modelado de robots estacionarios, y presentan a losmanipuladores mviles como un caso particular de aquellos. Se presenta adems unalgoritmo para el modelado de la dinmica inversa de un manipulador mvil por mediode una extensin del mtodo de NewtonEuler. Por otro lado se aplican estas tcnicasde modelado en el desarrollo de un conjunto de controladores basados en el control porresolucin de aceleracin. Estos esquemas de control propuestos son puestos a pruebapor medio de simulaciones numricas y experimentos sobre una plataforma fsica.

    iv

  • Abstract

    A mobile manipulator is basically a robot arm which is mounted on a mobile robot,and therefore is able to perform concurrently the tasks of locomotion and manipulation.The mobile manipulators have advantages over stationary robots, such as a largerworkspace and higher autonomy, which can be an advantage in environments with lowstructure; however, they have disadvantages, such as the presence of non-holonomicrestrictions.

    This document shows the results obtained in the modeling and control of a mobilemanipulator. The kinematicmodeling problem is solved thanks to an integral methodthat apply the same tools used in the modeling of stationary robots; also an algorithmis showed for the dynamic modeling of a mobile manipulator through an extension ofthe NewtonEulers method . On the other hand, thanks to these modeling techniques,a set of controllers are developed. These proposed controllers are verified with help ofsimulations and experiments on a physical platform.

    v

  • Agradecimientos

    En primera instancia agradezco al Instituto Politcnico Nacional por el apoyo reci-bido para poder realizar mis estudios de doctorado. En particular deseo agradecer porsu apoyo al Dr. Efrn Parada Arias y al Dr. Luis Humberto Fabila Castillo, quienesfueran respectivamente Secretario General y Secretario de Investigacin y Posgrado delInstituto, as como al Dr. Jos Guadalupe Trujillo Ferrara, quien fuera titular de laDireccin de Posgrado.

    Tambin agradezco a la Unidad Profesional Interdisciplinaria en Ingeniera y Tec-nologas Avanzadas (UPIITA) por el apoyo recibido, y en particular al M. en C. ArodRafael Carballo Domguez, Director de la Unidad, agradezco su confianza y apoyo.

    Pude realizar esta meta en mi vida gracias a una licencia con goce de sueldo queobtuve con el apoyo del Comit Tcnico para el Otorgamiento de Becas de Estudio,Apoyos Econmicos y Licencias con Goce de Sueldo (COTEBAL); deseo agradecerparticularmente a la Lic. Araceli Baeza Ordua.

    Al Centro de Investigacin en Computacin agradezco por la confianza y la forma-cin recibida.

    Tambin tengo un agradecimiento especial a la Seccin de Mecatrnica en el Depar-tamento de Ingeniera Elctrica del Centro de Investigacin y de Estudios Avanzadosdel Instituto Politcnico Nacional (CINVESTAV) por su cooperacin y apoyo con elprstamo de equipo y espacio, y en particular de la plataforma experimental. En es-pecial al Dr. Alejandro Rodrguez ngeles, quien fuera el titular de la Seccin y quegracias a su apoyo este proyecto se pudo realizar.

    Tengo un especial agradecimiento a mis directores de tesis por su experiencia yapoyo, el Dr. Marco Antonio Moreno Armendriz y el Dr. Jaime lvarez Gallegos.

    Tambin deseo agradecer a los miembros del comit tutorial, el Dr. Alejandro Ro-drguez ngeles, el Dr. Juan Humberto Sossa Azuela y el Dr. Victor Ponce Ponce, querevisaron el documento y aportaron su experiencia e ideas para mejorarlo.

    vi

  • vii

    Agradezco especialmente al Dr. Carlos Alberto Cruz Villar y al Dr. Rafael CastroLinares, del CINVESTAV, por su apoyo con equipo e ideas.

    Por otro lado, agradezco al M. en C. Igor Morett Valenzuela y al Ing. Jess BauelosGonzlez, tambin del CINVESTAV, por su apoyo en el laboratorio.

    Tambin deseo agradecer al M. en C. Sergio Galvn Colmenares, y esperemos pron-tamente Doctor, por su apoyo.

    En cuanto a mi amigo Jos Javier Ruiz Leiva, un gran abrazo por su amistad yapoyo.

    Tambin deseo agradecer a mi madre, Ma. Armida Silva Lepe, y a mi padre, GastnH. Salazar Gmez, por su apoyo y su amor; tambin quiero mencionar a mis hermanosJuan y Fernanda. Por otro lado, quiero agradecer en especial a mi ta Cristina SalazarGmez por su apoyo y cario.

    Tambin le agradezco a mi suegra Daisy Elena Snchez Aizpura por su apoyo ycomprensin.

    Finalmente, pero no por ello al ltimo, deseo agradecer a mi esposa Hortensia ymis hijos Gastn y Julia; sin su cario, su confianza y apoyo este proyecto no hubierasido posible; gracias a ustedes tres con todo mi corazn y les dedico este trabajo.

    /Julio, 2013./

  • ndice general

    1. Introduccin 11.1. Estado del arte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

    1.1.1. Modelado de manipuladores mviles . . . . . . . . . . . . . . . . 31.1.2. Diseo de controladores para manipuladores mviles en el espacio

    de la tarea . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.2. Planteamiento del problema e hiptesis . . . . . . . . . . . . . . . . . . 61.3. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71.4. Resultados presentados en diversos foros . . . . . . . . . . . . . . . . . 71.5. Presentacin del trabajo . . . . . . . . . . . . . . . . . . . . . . . . . . 8

    2. Marco tericoconceptual 102.1. Cinemtica directa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112.2. Modelo cinemtico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

    2.2.1. Restricciones cinemticas no holnomas . . . . . . . . . . . . . . 122.2.2. Modelo cinemtico de configuracin . . . . . . . . . . . . . . . . 132.2.3. Modelo cinemtico de postura . . . . . . . . . . . . . . . . . . . 14

    2.3. Modelo dinmico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162.4. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

    3. Modelado de manipuladores mviles 193.1. Mtodo integral para obtener la cinemtica directa . . . . . . . . . . . 203.2. Mtodo integral para obtener el modelo cinemtico de postura . . . . . 213.3. Mtodo recursivo para obtener el modelo dinmico . . . . . . . . . . . 22

    3.3.1. Notacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223.3.2. Obtencin de la dinmica . . . . . . . . . . . . . . . . . . . . . 233.3.3. Obtencin de las velocidades y aceleraciones . . . . . . . . . . . 26

    viii

  • NDICE GENERAL ix

    3.3.4. Implementacin del algoritmo . . . . . . . . . . . . . . . . . . . 263.4. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

    4. Control de manipuladores mviles 294.1. Control por cancelacin de la dinmica y un regulador PD . . . . . . . 304.2. Control por resolucin de aceleracin en espacio de configuracin . . . . 324.3. Control por resolucin de aceleracin en el espacio de tarea . . . . . . . 334.4. Control robusto basado en Lyapunov por resolucin de aceleracin en el

    espacio de tarea . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344.5. Estimacin de B(q) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374.6. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

    5. Validacin numrica 395.1. Modelo numrico del manipulador mvil . . . . . . . . . . . . . . . . . 395.2. Controlador en el espacio de configuracin . . . . . . . . . . . . . . . . 435.3. Controlador en el espacio de tarea . . . . . . . . . . . . . . . . . . . . . 435.4. Controlador robusto en el espacio de la tarea . . . . . . . . . . . . . . . 465.5. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

    6. Validacin experimental 536.1. Implementacin del controlador . . . . . . . . . . . . . . . . . . . . . . 536.2. Resultados experimentales del control en el espacio de la tarea: caso 1 . 556.3. Resultados experimentales del control en el espacio de la tarea: caso 2 . 576.4. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

    7. Conclusiones y perpectivas 667.1. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 667.2. Perspectivas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 677.3. Recomendaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

    A. Publicaciones 75

  • Notacin

    n dimensin de la configuracin

    nb dimensin de la configuracin de la base mvil

    k dimensin del espacio de velocidades generalizadas admisibles para cadaconfiguracin q

    m dimensin del ncleo de la matriz de restricciones no holnomas (m = n k)

    p dimensin del espacio de tarea

    R espacio vectorial sobre el campo de los reales

    E espacio euclidiano

    r vector de la postura del marco de referencia asociado al elemento final decontrol (r(t) Rp).

    r vector de las velocidades del marco de referencia asociado al elemento finalde control (r(t) Rp).

    r vector de las aceleraciones del marco de referencia asociado al elemento finalde control (r(t) Rp).

    r vector del error de la postura del marco de referencia asociado al elementofinal de control (r(t) Rp).

    rd vector de la postura deseada del marco de referencia asociado al elementofinal de control (rd(t) Rp).

    vector de las velocidades de los actuadores ((t) Rm)

    Vector de las aceleraciones de los actuadores ((t) Rm)

    x

  • NDICE GENERAL xi

    d vector de las velocidades de referencia de los actuadores (d(t) Rm)

    vector del error en las velocidades de los actuadores ((t) Rm)

    a Vector de las aceleraciones deseadas en los actuadores (a(t) Rm).

    aq Vector de las aceleraciones generalizadas deseadas (aq(t) Rn).

    ar Vector de las aceleraciones en el espacio de tarea deseadas (ar(t) Rp).

    q Vector de las coordenadas generalizadas (q(t) Rn)

    q Vector de las velocidades generalizadas (q(t) Rn)

    q Vector de las aceleraciones generalizadas (q(t) Rn)

    q Vector de error en el espacio configuracin (q(t) Rn).

    qd Vector de la configuracin de referencia (qr(t) Rn).

    Vector de las fuerzas externas ((t) Rm)

    Vector de las fuerzas generalizadas ((t) Rn)

    G(q) Matriz de mapeo de las velocidades de los actuadores a las velocidadesgeneralizadas (G(q) Rnm)

    B(q) Matriz de mapeo de las velocidades de los actuadores a las velocidades depostura (B(q) Rnm)

    J(q) jacobiano (J(q) Rpn)

    D(q) matriz de inercia (D(q) Rnn)

    M(q) matriz de inercia del sistema reducido (M(q) Rmm)

    m(q, ) Vector de las fuerzas potenciales del sistema reducido (m(q, ) Rm)

    M(q) matriz de inercia del sistema reducido nominal (M(q) Rmm)

    m(q, ) Vector de las fuerzas potenciales del sistema reducido nominal(m(q, ) Rm)

    i,j,j smbolo de Christoff

  • NDICE GENERAL xii

    C(q, q) matriz de las fuerzas centrfugas y de Coriolis (C(q, q) Rnn).

    g(q) Vector de la fuerza de gravedad sobre los eslabones (g(q) Rn).

    A(q) matriz de ligaduras cinemticas (A(q) Rnk).

    S(q) mapeo de las fuerzas externas a fuerza generalizadas (S(q) Rnm).

    mi Magnitud de la masa del i-simo eslabn (mi(t) R)

    Jvi jacobiano de velocidad lineal del centro de masa

    Ji jacobiano de velocidad angular del centro de masa

    Fi Vector de la suma de fuerzas en el i-simo eslabn (Fi(t) E3)

    aci Vector de aceleracin del centro de masas del i-simo eslabn (aci(t) E3)

    ai Vector de aceleracin del centro de masas del i-simo eslabn (aci(t) E3)

    vi Vector de velocidad del centro de masas del i-simo eslabn (vi(t) E3)

    Ii Tensor del momento de inercia en el i-simo eslabn (Ii(t) R33).

    Ni Vector de la suma de momentos de fuerza en el i-simo eslabn (Ni(t) E3)

    i Vector de aceleracin angular del i-simo eslabn (i(t) E3)

    i Vector de velocidad angular del i-simo eslabn (i(t) E3)

    fi Vector de la fuerza ejercida por el eslabn i 1 sobre el i-simo eslabn(fi(t) E3)

    fi+1 Vector de la fuerza ejercida por el eslabn i+ 1 sobre el i-simo eslabn(fi+1(t) E3)

    gi Vector de la aceleracin debida a la gravedad ejercida sobre el i-simoeslabn (gi(t) E3)

    ni Vector del momento de fuerza ejercido por el eslabn i 1 sobre el i-simoeslabn (ni(t) E3)

    ni+1 Vector del momento de fuerza ejercido por el eslabn i+ 1 sobre el i-simoeslabn (ni+1(t) E3)

  • NDICE GENERAL xiii

    ri1,ci Vector de desplazamiento que va del marco de referencia {i 1} a{ci}(ri1,ci E3)

    ri,ci Vector de desplazamiento que va del marco de referencia {i} a {ci}(ri,ci E3).

    KP Matriz de ganancia proporcional (KP Rmm).

    KD Matriz de ganancia diferencial (KD Rmm).

  • Acrnimos

    GDL grado de libertad

    RAC control por resolucin de aceleracin

    RMRC control por resolucin de razn de movimiento

    PD proporcionalderivativo

    PID proporcionalintegralderivativo

    RMS cuadrtico medio

    xiv

  • Captulo 1

    Introduccin

    Los robots estn saliendo de los ambientes estructurados en las fbricas y labora-torios y empiezan a aparecer en lugares como casas, oficinas y hospitales, donde existepoco o ningn control sobre el ambiente [26]; los manipuladores mviles son una so-lucin para estos nuevos espacios de trabajo. Un manipulador mvil es bsicamenteun manipulador estacionario el cual se mont sobre un robot mvil y por lo tanto escapaz de desempear simultneamente las tareas de locomocin y manipulacin. Porlocomocin se entiende el desplazamiento del propio robot por medio de algn tipo depropulsin. En cuanto a la manipulacin, es la capacidad para cambiar la posicin y laorientacin de objetos, lo cual permite el uso de herramientas y el ensamble de com-ponentes. Al poder realizar ambas tareas simultneamente, el manipulador mvil tieneventajas sobre los manipuladores estacionarios, tales como un mayor espacio de trabajoy mayor autonoma. Tambin presenta desventajas, como la presencia de ligaduras noholnomas. Existen diversas formas de manipuladores mviles, dependiendo del tipode manipulador y su forma de locomocin; este trabajo se enfocar particularmente enmanipuladores mviles que estn formados por un robot manipulador montado sobreun robot mvil con traccin diferencial (figura 1.1).

    El presente documento tiene como objetivo presentar los resultados obtenidos en elmodelado y desarrollo de sistemas de control para manipuladores mviles. La funcinde este captulo es plantear el problema a resolver; para ello, primeramente se haceuna revisin del estado del arte en el modelado y control de manipuladores mviles(seccin 1.1). Posteriormente se plantea y delimita el problema a resolver (seccin 1.2), yse establecen los objetivos del trabajo (seccin 1.3). Finalmente se indican los resultadospresentados en diferentes foros (seccin 1.4), y se hace una descripcin del resto de los

    1

  • CAPTULO 1. INTRODUCCIN 2

    Figura 1.1: Ejemplo de manipulador mvil.

    captulos del trabajo (seccin 1.5).

    1.1. Estado del arte

    Aunque los manipuladores mviles pueden realizar concurrentemente las tareas delocomocin y manipulacin, antes slo se consideraba individualmente estas tareas, porejemplo en [55] se concentra en el movimiento de la base mvil; por otro lado, en [24] y[58] se concentran en el movimiento del brazo manipulador. Sin embargo, recientementeesto ha cambiado y se presenta en la literatura varios casos donde se busca desempearambas tareas al mismo tiempo.

    En la presente seccin primero se revisa el estado del arte en el modelado de ma-nipuladores mviles (subseccin 1.1.1), sobre todo en el caso de modelos dinmicos.

  • CAPTULO 1. INTRODUCCIN 3

    Posteriormente se presenta una revisin de la literatura con respecto al control demanipuladores mviles (subseccin 1.1.2).

    1.1.1. Modelado de manipuladores mviles

    Una gran herramienta en el diseo e implementacin de sistemas de control pararobots es el modelado. En el caso de los manipuladores mviles se usan tanto modeloscinemticos como modelos dinmicos. En un modelo cinemtico no se considera elefecto directo de fuerzas en el comportamiento del manipulador mvil. En un modelodinmico no slo se considera el efecto de estas fuerzas sobre el manipulador mvil,sino tambin las inercias que existen en ste.

    En la literatura se reportan desarrollos en el modelado de manipuladores mvilesy su aplicacin al control. La tcnica que prevalece consiste en desarrollar modeloscinemticos separados para la base mvil y el brazo manipulador, la cual se emplea en[21], [57], [12], y [48]. En [2] y [10], se propone una variante de esta tcnica, en la cual secombina estos dos modelos cinemticos por medio del llamado jacobiano extendido, yse obtiene el modelo cinemtico de postura de todo el manipulador mvil. Sin embargo,se tiene el problema de que no existe un mtodo integral para el modelado cinemticode manipuladores mviles.

    Por otro lado, tambin se han desarrollado tcnicas de modelado de la dinmica paramanipuladores mviles; sin embargo, estas tcnicas tambin adolecen del problema deque el modelado de la base mvil y el brazo se realiza por separado, pero con ayuda deljacobiano extendido se unifican. En la literatura, la mayora de los modelos dinmicosse obtienen por medio del mtodo de EulerLagrange; por ejemplo en [32], [31], [29],[14], [3], [56], [13], y [35]. Ejemplos particularmente interesantes son [32] y [31] dondetanto la base mvil como el brazo manipulador tienen restricciones no holnomas y,sin embargo, son modelados por tcnicas diferentes.

    Un problema con el mtodo de EulerLagrange es que su implementacin compu-tacional no es muy eficiente; una tcnica de modelado ms eficiente en este aspectoes el mtodo de NewtonEuler. De acuerdo a [16], los primeros trabajos aplicando elalgoritmo recursivo de NewtonEuler a mecanismos con cadenas cinemticas abiertasfueron presentados en [51] y [38]. En el caso de manipuladores mviles no se encon-traron en la literatura trabajos que desarrollen un algoritmo recursivo basado en elmtodo de NewtonEuler, el cual trate de manera unificada a la base mvil y al bra-zo. Por ejemplo en [4] se plantea un algoritmo recursivo para sistemas multi-cuerpos

  • CAPTULO 1. INTRODUCCIN 4

    con articulaciones y ruedas, pero solo considera el caso de robots mviles unidos porcadenas cinemticas abiertas. En [36], [7] y [6] se usan las leyes de Newton y Eulerpara obtener modelos dinmicos de manipuladores mviles, pero no desarrollan un al-goritmo; por ejemplo en [36] se modelan dos brazos montados sobre una plataformamvil, pero no se modela la plataforma ni se consideran ligaduras no holnomas. En[7] se modela un manipulador mvil considerando el derrape lateral y, por lo tanto, elmodelo desarrollado es holnomo. En [27] se utiliza el algoritmo de NewtonEuler enun manipulador mvil diferencial; pero solo se considera el movimiento rectilneo de labase mvil y, por lo tanto, no consideran ligaduras no holnomas. El algoritmo usadoes el clsico para manipuladores estacionarios. Es importante notar que el mtodo deNewtonEuler se usa en la prctica para desarrollar los modelos de robots estacionariosaplicados a simulaciones y controles por dinmica inversa.

    1.1.2. Diseo de controladores para manipuladores mviles en

    el espacio de la tarea

    En la literatura existen mucho trabajos que versan sobre el control de manipuladoresmviles en el espacio de tarea, pero no todos tratan el problema de las ligadurasholnomas. Por ejemplo, en [36] se trata el problema de dos brazos manipuladoresmontados sobre una base mvil, pero consideran a la base como una plataforma libre;en [27] y [15] se desarrolla el control para un manipulador mvil con traccin diferencialpero solo se considera el movimiento sobre un solo eje.

    El control a nivel cinemtico tambin es muy empleado en la literatura, pues muchosmanipuladores mviles ya vienen con un control dinmico integrado, por ejemplo uncontrol proporcionalintegralderivativo (PID). En [21] se utiliza un control por reso-lucin de razn de movimiento (RMRC), el cual es un control cinemtico en el espaciode la tarea, pero no consideran las restricciones cinemticas. En [12] se propone unavariante del mtodo de campos potenciales, en el que se establece un comportamientodinmico para definir la trayectoria del manipulador mvil.

    En cuanto al uso de controles de la dinmica del manipulador mvil, existen muchasvariantes, de las cuales se enumeran las principales. Una primera forma es el desarrollode controles separados para la base mvil y el brazo manipulador; por ejemplo en [25]se desarrolla un control a nivel dinmico para seguir una trayectoria en el espacio detarea, pero usa la arquitectura de dos controladores en paralelo. Por otro lado, en [19]el control propuesto se basa en dos esquemas diferentes de modos deslizantes para la

  • CAPTULO 1. INTRODUCCIN 5

    base mvil y del manipulador.Tambin existen controladores a nivel dinmico que consideran al manipulador

    mvil como un sistema integrado. Usualmente estos controladores calculan la dinmicainversa del manipulador mvil; dos estrategias muy utilizadas son el mtodo de EulerLagrange y otras basadas en redes neuronales.

    Existen trabajos que calculan la dinmica inversa por medio EulerLagrange; acontinuacin se enumeran algunos de ellos. En [32] usa un control del tipo back-stepingpara el control en el espacio de la tarea, sin embargo modela por separado la dinmicade la base mvil y la del brazo. En [3] tambin se desarrolla un control en el espacio detarea usando par calculado, pero se cierra el lazo de control por medio de un controladordifuso. En [53] se desarrolla un control por medio de dos modelos dinmicos descritosen el espacio de la tarea, los cuales posteriormente son conjuntados; adems el modelode la base mvil es para un sistema holnomo. En [56] se desarrolla un sistema decontrol por resolucin de aceleracin (RAC) en el espacio de tarea con un controladorpor impedancia, pero desafortunadamente ste no es robusto. Por ejemplo en [18] seplantea un control en el espacio de tarea para la regulacin de una posicin, pero usaun controlador proporcionalderivativo (PD) con un integrador basado en una funcinde la incertidumbre del robot.

    Por otro lado, el comportamiento dinmico de manipuladores mviles por mediode redes neuronales se usa en [22], donde se modela la incertidumbre del manipuladormvil por medio de una red neuronal y el control se realiza por medio de tcnicas demodos deslizantes. En cuanto a usar control por medio de redes neuronales, en [48]realizan control jerrquico, el cual se aplica para priorizar el orden de las tareas aejecutar. Por otro lado, en [29] utilizan un controlador adaptable robusto con redesneuronales.

    Finalmente, un mtodo poco usado para determinar la dinmica inversa es el m-todo de NewtonEuler. En [36], [7] y [27] se usa el mtodo de NewtonEuler paradeterminar la dinmica inversa, pero no consideran restricciones holnomas.

    Es importante sealar que no se encontr en la literatura el uso de este mtodopara calcular la dinmica inversa de todo el manipulador mvil y aplicarlo para cerrarel lazo de control. Tampoco se encontr en la literatura ningn trabajo en el que secompense o cancele un sistema de control ya existente va retroalimentacin.

  • CAPTULO 1. INTRODUCCIN 6

    1.2. Planteamiento del problema e hiptesis

    La capacidad de un manipulador mvil para realizar simultneamente las tareas delocomocin y manipulacin depende en mucho del modelo disponible y el diseo delsistema de control. Usualmente los controladores desarrollados son del tipo cinemticoya que los robots comerciales usualmente ya disponen de un controlador PD o PIDa nivel de actuadores que limita las posibilidades para implementar controladores anivel de la tarea. Por lo general las tareas se expresan en el espacio de la tarea, elcual es en realidad una descripcin en coordenadas cartesianas, cilndricas o esfricas.Sin embargo, es importante encontrar una descripcin de las tareas en el espacio deactuacin. El problema de investigacin se enuncia a continuacin.

    Problema. Sea un manipulador mvil no holnomo con un controlador PD instaladoen fbrica, y sea una trayectoria deseada en el espacio de tarea, denotada rd. Se debeencontrar una descripcin computacional del comportamiento cinemtico y dinmicodel manipulador mvil, y desarrollar un sistema de control a nivel dinmico que permitaal manipulador seguir la trayectoria deseada usando concurrentemente las capacidadesde locomocin y manipulacin del manipulador mvil.

    El manipulador mvil est compuesto por un robot de traccin diferencial Pioneer3DX de Adept MobileRobotics y un manipulador Cyton de 7 grado de libertad (GDL).El robot tiene un controlador PD a nivel de actuadores, el cual debe ser canceladopor el nuevo sistema de control. Para el control del manipulador mvil se propone unesquema de dos lazos de control anidados. El lazo interno de control deber controlar anivel dinmico el robot y cancelar la accin del controlador instalado en fbrica. El lazoexterno de control deber asegurar el desempeo de la tarea en el espacio cartesiano.

    Para resolver el problema enunciado se plantea la siguiente hiptesis.

    Hiptesis. Un manipulador mvil se puede modelar como un manipulador estaciona-rio con restricciones no holnomas en las articulaciones.

    Gracias a esta hiptesis, el problema de realizar concurrentemente la manipulacin ylocomocin en un manipulador mvil se puede transformar al problema de slo realizarla manipulacin.

  • CAPTULO 1. INTRODUCCIN 7

    1.3. Objetivos

    Para poder resolver el problema a tratar se define el siguiente objetivo general dela tesis.

    Objetivo general. Desarrollar un esquema de modelado y un sistema de control parael desempeo de una tarea descrita en coordenadas cartesiana por medio de las accionesconcurrentes de locomocin y manipulacin de un manipulador mvil.

    En cuanto a los objetivos especficos, se enumeran continuacin:

    1. Formular un esquema de modelado computacional general para determinar elcomportamiento cinemtico y dinmico de un manipulador mvil no holnomo.

    2. Desarrollar un sistema de control para el movimiento coordinado y concurrentede la base mvil no holnoma y el brazo manipulador en el espacio de la tarea.

    3. Estructurar un sistema de control para cancelar el regulador PD instalado enfbrica por medio de retroalimentacin.

    Una herramienta que se usar para alcanzar este objetivo es la transformacindel problema de locomocin y conjuntarlo con el de manipulacin, lo cual consideraa un manipulador mvil como uno estacionario con restricciones no holnomas en lasarticulaciones. Se buscar que el un mtodo computacional sea numricamente eficientecon respecto al nmero de operaciones.

    1.4. Resultados presentados en diversos foros

    De este trabajo se presentaron resultados parciales en diversos foros para su dis-cusin y publicacin; a continuacin se enumeran rpidamente las publicaciones reali-zadas. Con respecto artculos en revista, se public el modelado y control en espaciode tarea de un manipulador mvil con cancelacin de control proporcionalderivativoen la revista Computacin y Sistemas [45], la cual est en el padrn de revistas delConsejo Nacional de Ciencia y Tecnologa (CONACyT).

    Por lo que se refiere a publicaciones en congreso, se present una revisin del estadodel arte en [42]. En [43] se dio a conocer un esquema de modelado cinemtico y uncontrol a nivel dinmico en el espacio de configuracin; este mismo trabajo fue invitadopara ser publicado en una revista institucional [41].

  • CAPTULO 1. INTRODUCCIN 8

    En [44] se present un control en el espacio de tarea, y en [47] se modific el controlpara cancelar de un regulador PD. En [46] se present el control robusto en el espaciode tarea. Estos trabajos estn publicados en las memorias de los respectivos congresos.

    En el presente trabajo se incluye copia de los trabajos presentados (apndice A).

    1.5. Presentacin del trabajo

    El presente trabajo muestra los resultados obtenidos para alcanzar los objetivospropuestos (seccin 1.3) y se compone de cinco captulos adems de esta introduccin,conclusiones y un apndice.

    Primero se revisar brevemente varios conceptos tericos requeridos para el anlisisde la cinemtica de un manipulador mvil, as como la obtencin del modelo cinemticoy dinmico de un manipulador mvil (captulo 2).

    En seguida, se estudiar el problema del modelado (captulo 3) y se mostrar unmtodo integral de modelado cinemtico de manipuladores mviles con ruedas que per-mite aplicar las mismas herramientas usadas en el modelado de robots estacionarios ypresentan a los manipuladores mviles como un caso particular de aquellos. Ademsse presentar un algoritmo para el modelado de la dinmica inversa de un manipula-dor mvil por medio de una extensin del mtodo de NewtonEuler. Estos mtodosconsideran que el manipulador mvil es un robot estacionario con articulaciones quepresentan restricciones no holnomas; este enfoque permite que se puedan usar las he-rramientas ya existentes para la obtencin de los modelos cinemtico y dinmico, porejemplo los parmetros de DenavitHartenberg y los Jacobianos geomtricos.

    Posteriormente se presentar un conjunto de controladores que utilizan una arqui-tectura de dos lazos de control anidados (captulo 4). Para el primer lazo de control seutiliza la llamada dinmica inversa, el cual usa el llamado modelo reducido del manipu-lador mvil para obtener un sistema de orden reducido. En el lazo externo de control sepresentarn dos controladores, uno en el espacio de articulacin y el otro en el espaciode tarea, que utilizan el esquema de control por resolucin de aceleracin.

    Estos esquemas de control propuestos son puestos a prueba por medio de simula-ciones numricas (captulo 5). Tambin se presentar un modelo computacional de laplataforma experimental que se usar, as como la informacin relevante para deter-minar el modelo del manipulador mvil; posteriormente se presentan los resultados delas simulaciones del sistema de control en el espacio de tarea.

  • CAPTULO 1. INTRODUCCIN 9

    Tambin se presentarn resultados de experimentos donde el control se prueba enun manipulador mvil (captulo 6), el cual est compuesto por un robot de traccindiferencial Pioneer 3DX de Adept MobileRobotics y un manipulador Cyton de 7 GDL,del cual slo se consider una articulacin del manipulador, de tal manera que seconsidera un manipulador planar horizontal, y por lo tanto el modelo del manipuladormvil a simular es de 4 GDL.

    Finalmente se presentarn conclusiones de este trabajo y se plantearn posiblesextensiones (captulo 7).

  • Captulo 2

    Marco tericoconceptual

    Un modelo es una herramienta conceptual que describe el comportamiento de unsistema. Existen muchos tipos de modelos, pero en Ciencias e Ingeniera los modelosmatemticos son los de mayor utilidad ya que permiten no solo describir el compor-tamiento sino tambin predecirlo, simularlo y controlarlo. Una ventaja particular delos modelos matemticos es que pueden ser manipulados simblicamente; esto permitesimplificar el anlisis de los sistemas y encontrar relaciones entre las diferentes variablesdel modelo. La manipulacin simblica tambin permite la combinacin de diferentesmodelos con el propsito de sintetizar modelos ms complejos. En robtica, los modelosmatemticos se usan para describir el movimiento, ya sea por medio de la cinemtica ola dinmica [49]. Sin embargo, la obtencin de modelos para manipuladores mviles noes un proceso evidente. Por un lado, un manipulador mvil debe ser capaz de realizar,de forma simultanea preferentemente, las tareas de locomocin y manipulacin; porotro lado, existen diferencias en los mtodos usados para obtener la descripcin delcomportamiento del robot a ambas tareas. Para el caso de la locomocin en robotsmviles con ruedas, se utiliza la teora desarrollada en [5]; en este tipo de modelos, esimportante notar que se debe considerar el posible efecto de ligaduras no holnomascausadas por el mecanismo de traccin. En cuanto al caso de la manipulacin, se mode-la el mecanismo correspondiente usando los mtodos para manipuladores estacionarios,tales como los presentados en [49]. El problema fundamental es cmo combinar los mo-delos para ambas tareas; una propuesta para resolver este problema es el jacobianoextendido [10].

    El presente captulo presenta las metodologas actuales que se usan para determinarlos modelos cinemticos y dinmicos en manipuladores mviles. Por un lado, algunas

    10

  • CAPTULO 2. MARCO TERICOCONCEPTUAL 11

    de estas metodologas se utilizarn en el resto del trabajo como base para el desarrollode los modelos del manipulador mvil. Por otro lado, se utilizarn para compararsecon los mtodos desarrollados en el presente trabajo. En primer lugar, se expondrel problema de la cinemtica directa (seccin 2.1). Posteriormente se presentarn losmtodos expuestos en la literatura revisada para la obtencin de modelos cinemticos(seccin 2.2), considerando el problema de las ligaduras no holnomas y los modeloscinemticos de configuracin y de postura. Tambin se analizar el modelado dinmico(seccin 2.3). Finalmente se presentarn las conclusiones.

    2.1. Cinemtica directa

    En robtica es usual tener que determinar la posicin y orientacin del efector finalde un robot; a este problema se le conoce como cinemtica directa. En el caso de unmanipulador mvil, la cinemtica directa est dada por la funcin

    r = f(qb, qm) (2.1)

    donde r Rp es la postura del manipulador mvil, p es la dimensin del espacio detarea, qb Rnb y qm Rnm son las coordenadas generalizadas de la base mvil y delmanipulador respectivamente, f es la cinemtica del manipulador mvil, que no estsujeta a las restricciones no holnomas.

    Un mtodo para encontrar las cinemticas directas del manipulador estacionario y labase mvil, adems de que permite conjuntarlas, son las transformaciones homogneas[49]; para el caso del manipulador mvil se tiene que [28]

    T 0n = T0b T

    bn

    donde T 0b es la transformacin homognea que va de un marco de referencia {b} en laplataforma mvil a un marco base de referencia {0} y T bn es la transformacin homog-nea que va de un marco de referencia {n} en el ultimo eslabn del brazo manipuladoral marco de referencia {b}. En la literatura no existe una forma estandarizada paraencontrar la transformacin T 0b ; una forma posible es considerar el movimiento de labase mvil como un cuerpo rgido sobre el plano. Es importante notar que la cinemticadirecta no considera las restricciones no holnomas.

  • CAPTULO 2. MARCO TERICOCONCEPTUAL 12

    2.2. Modelo cinemtico

    Mientras la cinemtica directa describe la posicin de un robot, no describe elmovimiento que ste realiza; para determinar el movimiento sin considerar las causasque lo generan, se utiliza el llamado modelo cinemtico, con el cual se desarrollancontroladores a nivel cinemtico. Por otro lado, los modelos cinemticos son la basepara obtener el modelo dinmico, el cual s describe las causas del comportamiento delrobot.

    Figura 2.1: Relaciones entre velocidades en los diferentes espacios y los modelos cine-mticos.

    El modelo cinemtico depende de las restricciones cinemticas (subseccin 2.2.1);para el caso de los robots estacionarios con solo restricciones geomtricas, el modelocinemtico es simplemente la derivada en el tiempo de (2.1). Para el caso de los robotsmviles es necesario tomar en cuenta que el movimiento de estos dependen de restriccio-nes cinemticas impuestas por las ruedas. Estas restricciones usualmente se expresanpor medio de las velocidades de configuracin, por lo cual stas ya no son indepen-dientes. Para resolver este problema, en [5] se han propuesto dos modelos cinemticosdiferentes pero complementarios (Figura 2.1): el modelo cinemtico de configuracin(subseccin 2.2.2) y el modelo cinemtico de postura (subseccin 2.2.3).

    2.2.1. Restricciones cinemticas no holnomas

    El modelo cinemtico de un robot mvil con ruedas est caracterizado por las res-tricciones al movimiento impuestas por las ruedas [5, 9]; estas restricciones se conocencomo ligaduras [17, 20], y para que existan deben de haber fuerzas que obliguen alsistema a mantenerlas. Una forma de clasificar a las ligaduras es determinando si sonholnomas o no holnomas.

    Una ligadura se dice holnoma si sta se puede expresar sin considerar las veloci-

  • CAPTULO 2. MARCO TERICOCONCEPTUAL 13

    dades del sistema; una descripcin de este tipo de ligadura es por medio de la ecuacin

    hi(q) = 0;

    este tipo de ligadura es geomtrica, ya que limita en dnde puede estar la configuracindel sistema; es importante remarcar que la fuerza asociada a una la ligadura holnomasolo depende de la configuracin y por lo tanto es conservativa. Por otro lado, unaligadura se dice no holnoma si la ligadura no es independiente de la velocidad; unaligadura no holnoma se expresa de la forma

    ai(q, q) = 0;

    la fuerza que genera una ligadura no holnoma no es conservativa.Un caso particular es la ligadura pfaffiana, la cual es lineal con respecto a las

    velocidades del sistema, es decir que se puede expresar de la forma

    ai(q)q = 0;

    ste es el tipo de ligadura que aparece en los robots mviles con ruedas. Una ligadurapfaffiana es holnoma si existe una funcin hi(q), tal que

    hiq

    (q) = ai(q),

    esto es, la ligadura es integrable. Por otro lado, si no existen dicha funcin hi(q) entoncesla ligadura es no holnoma.

    2.2.2. Modelo cinemtico de configuracin

    Un conjunto de k ligaduras pfaffianas se puede acomodar en una matriz A(q) Rnk

    A(q) =

    a1(q)

    a2(q)...

    ak(q)

    T

  • CAPTULO 2. MARCO TERICOCONCEPTUAL 14

    tal que todas las ligaduras pfaffianas se pueden expresar por medio de la ecuacin

    A(q)T q = 0k

    donde 0k es un vector de k elementos, todos ellos igual a cero.Usando esta representacin matricial es posible encontrar un conjunto de velocida-

    des de configuracin que formen una base del espacio nulo de A(q)T ,

    q = G(q) (2.2)

    donde (t) Rnk es un vector de parmetros independientes y es posible seleccionarlos que ms se adecuen a la aplicacin; por otro lado, G(q) Rn(nk) se define pormedio de la expresin

    A(q)TG(q) = 0k(nk) (2.3)

    donde 0k(nk) Rk(nk) es una matriz con todos sus elementos igual a cero; se diceque G(q) es el aniquilador de la matriz A(q)T . En el caso de un robot con slo ligadurasholnomas, la matriz G(q) es simplemente la matriz identidad de dimensin n n.

    Si se selecciona de tal manera que represente las velocidades de los actuadores delrobot mvil, entonces (2.2) establece una relacin entre las derivadas de las variables deconfiguracin y las derivadas de las variables de los actuadores y se conoce como modelocinemtico de configuracin; es importante notar que el mapeo de las velocidades de losactuadores a las velocidades generalizadas se aplica para reducir el orden del modelodinmico de un manipulador mvil.

    2.2.3. Modelo cinemtico de postura

    El modelo cinemtico de postura define la relacin que existe entre las velocidadesen el espacio de tarea con respecto a las velocidades en los actuadores. Este modelo seutiliza para definir las acciones del robot en el espacio de la tarea;

    En [5] se define al modelo cinemtico de postura para el caso de un robot mvilcomo

    r = B(q),

    donde la matriz B(q) Rpm est definida como

    B(q) = J(q)G(q),

  • CAPTULO 2. MARCO TERICOCONCEPTUAL 15

    y la matriz J(q) Rpn se conoce como el jacobiano. Es importante notar que, en laliteratura revisada, el jacobiano de un robot mvil solo se obtiene de manera analticay no se utilizan mtodos numricos para su obtencin. Por otro lado, en el caso demanipuladores estacionarios se tiene que B(q) = J(q) y existen mtodos numricoseficientes para su cmputo.

    Como un ejemplo particular, se muestra la obtencin del modelo cinemtico depostura de un robot mvil con ruedas no orientables y traccin diferencial sobre unpiso plano. La postura del robot queda completamente especificada por el vector

    rb :=

    xy

    donde x y y son las coordenadas en el plano del robot mvil y denota la orientacindel robot con respecto al plano. En [5], se establece que el modelo cinemtico de posturapara un robot mvil del tipo de traccin diferencial es de la forma

    rb(t) = B(qb)b (2.4)

    donde b(t) Rm es el vector de velocidades de los actuadores, y B(q) Rnm es unamatriz cuyas columnas son una base del espacio nulo de las restricciones; para el casode un robot mvil con traccin diferencial est definido como

    B(q) =

    cos 0sin 00 1

    .En el caso particular de manipuladores mviles, se busca aprovechar la existencia

    de mtodos numricos eficientes para el cmputo de las velocidades en el brazo ycombinarlo con el cmputo analtico de la base mvil. En [10] se propone el llamadojacobiano extendido como un mtodo para combinar los cmputos de las velocidades yas obtener el modelo cinemtico de postura por medio de la relacin

    r =[Jb(qb)Sb(qb) Jm(qm)

    ] [ bqm

    ](2.5)

    donde r es un vector que conjunta los movimiento de postura de la base mvil y el

  • CAPTULO 2. MARCO TERICOCONCEPTUAL 16

    manipulador

    r =

    [rb

    rm

    ]y el jacobiano Jb de la base mvil, el cual se obtiene de manera independiente.

    2.3. Modelo dinmico

    Un sistema mecnico de n GDL y k ligaduras no holnomas se puede modelardinmicamente por medio del mtodo de EulerLagrange [9], del cual se obtiene elconjunto de ecuaciones diferenciales algebraicas en forma matricial

    D(q)q + C(q, q)q + g(q) = A(q)+ S(q)

    A(q)(q)T q = 0(2.6)

    donde (t) Rm es el vector de fuerzas externas, g(q) Rn es el vector de la fuerzade gravedad sobre los eslabones; en cuanto a D(q) Rnn es la matriz de inercia delsistema mecnico, C(q, q) Rnn es la matriz de las fuerzas centrfugas y de Coriolis,y S(q) Rnm es el mapeo de las fuerzas externas a fuerza generalizadas.

    La matriz de inercia D(q) es una descripcin de la respuesta del sistema a cambiarsu estado de movimiento, tanto lineal como angular. La matriz de inercia se obtienepor medio de la expresin

    D(q) =ni=1

    (miJviTJvi + Ji

    T IiJi) (2.7)

    donde mi es la masa del i-simo eslabn, Jvi es el jacobiano de velocidad lineal delcentro de masa con respecto al marco de referencia de la base, Ji es el jacobiano develocidad angular del centro de masa, e Ii es el momento de inercia en el i-simo eslabn.Para el caso de manipuladores estacionarios, es importante notar que los jacobianos sepueden obtener por medio del mtodo geomtrico [49], que no requiere explcitamentelas derivadas de la cinemtica.

    Por otro lado, la matriz de las fuerzas centrfugas y de Coriolis C(q, q) describeel movimiento de un cuerpo rgido desde un marco de referencia acelerado [49]; para

  • CAPTULO 2. MARCO TERICOCONCEPTUAL 17

    obtener el trmino ck,j de la matriz se usa la expresin

    ck,j =ni=1

    i,j,j(q)qi (2.8)

    donde i,j,j se conocen como los smbolo de Christoff y se definen por medio de

    i,j,j =1

    2

    (dk,jqi

    +dk,iqj di,j

    qk

    )(2.9)

    donde di,j es el elemento en la i-sima fila y j-sima columna de D(q).Dado que el sistema (2.6) depende del valor desconocido , se presenta un problema

    en el anlisis del sistema o en su resolucin numrica. Dicha dependencia se puede elimi-nar por medio de la relacin (2.3); El mtodo consiste en, primero, pre-multiplicar (2.6)por G(q)T y, posteriormente, aplicar la transformacin (2.2) [9]; entonces se obtiene laexpresin

    q = G(q)

    = M(q)1m(q, ) +M(q)1G(q)TS(q)(2.10)

    donde la matriz M(q) Rmm se define por medio de

    M(q) = G(q)TD(q)G(q) (2.11)

    y el vector m(q, ) Rm se define como

    m(q, ) = G(q)TD(q)G(q) +G(q)TC(q,G(q))G(q) +G(q)Tg(q). (2.12)

    Una consecuencia del procedimiento anterior es que la descripcin del sistema quedaahora en funcin de , la cual puede o no tener sentido fsico; una posible asignacin de es que corresponda con las velocidades de los actuadores y por lo tanto la ecuacindiferencial pasa a describir el comportamiento del manipulador mvil con respecto aestas velocidades. Otra consecuencia es la reduccin de la dimensin del estado en ladescripcin del sistema.

  • CAPTULO 2. MARCO TERICOCONCEPTUAL 18

    2.4. Conclusiones

    El presente captulo present las metodologas usadas en el modelado cinemtico ydinmico de manipuladores mviles. Primero se mostr el problema de la cinemticadirecta. El inconveniente con el enfoque utilizado hasta ahora usado es que usa dosmtodos diferentes para obtener la cinemtica de la base mvil y el brazo manipula-dor. En segundo lugar se presentaron los mtodos expuestos en la literatura revisadapara la obtencin de modelos cinemticos, considerando el problema de las ligadurasno holnomas y los modelos cinemticos de configuracin y de postura; aqu nueva-mente existen problemas por la falta de unidad en la teora de manipuladores mviles.Finalmente se revis el modelado dinmico.

    Las metodologas que se presentaron son usadas para determinar los modelos cine-mticos y dinmicos en manipuladores mviles. Por un lado, algunas de estas metodo-logas se utilizarn en el resto del trabajo como base para el desarrollo de los modelosdel manipulador mvil. Por otro lado, se utilizarn para compararse con los mtodosdesarrollados en el presente trabajo.

  • Captulo 3

    Modelado de manipuladores mviles

    Los modelos son un componente bsico en el diseo e implementacin de sistemasde control. En la literatura revisada, no existe una teora general, la cual combineel modelado cinemtico de manipuladores estacionarios y manipuladores mviles. Encuanto a modelos dinmicos, tampoco existe un mtodo general que considere amboscasos. Por otro lado, los mtodos encontrados en la literatura no resultan eficientescomputacionalmente, ya que se basan en el mtodo no recursivo de EulerLagrange,en el cual el nmero de operaciones crece de forma asinttica con respecto a n4, donden es el nmero de eslabones [16] [4].

    A continuacin se presenta un conjunto de mtodos, los cuales aprovechan los algo-ritmos existentes para robots estacionarios y los extienden para el caso de manipulado-res mviles. En particular, se busca que los mtodos desarrollados permitan extenderlas herramientas computacionales utilizadas para el modelado paramtrico de robotsestacionarios. Primero se presenta el problema de la cinemtica directa de un mani-pulador mvil (seccin 3.1), posteriormente se aplica este enfoque al desarrollo de unmodelo paramtrico de la cinemtica de postura (seccin 3.1). Tambin se presentauna extensin del mtodo de NewtonEuler para el caso de un manipulador mvil(seccin 3.3).

    19

  • CAPTULO 3. MODELADO DE MANIPULADORES MVILES 20

    3.1. Mtodo integral para obtener la cinemtica di-

    recta

    Como ya se mencion (seccin 2.1), la cinemtica directa de los manipuladoresmviles se plantea como dos problemas independientes: el de locomocin y el de mani-pulacin; esto presenta posteriormente dificultades para obtener el modelo cinemticoy el modelo dinmico. Para el caso de manipuladores estacionarios se tiene todo unconjunto de herramientas computacionales que simplifican el anlisis del sistema y lasntesis de controles; por ejemplo, existen modelos paramtricos. Para el caso de mani-puladores mviles, no existe un algoritmo general para obtener un modelo paramtricoen la literatura. El cambio de algn parmetro de la base mvil, implica que el mo-delo cinemtico se tiene que rehacer. Tambin existe el problema de que los modelosobtenidos por estos mtodos son ineficientes numricamente.

    Un hecho importante es que las ligaduras no holnomas slo afectan el movimientodel manipulador mvil pero no su posicin, y por lo tanto, stas no se involucran en lacinemtica directa; este hecho permite transformar el problema de locomocin en unode manipulacin. A continuacin, se propone una tcnica para obtener la cinemticadirecta de un manipulador mvil.

    La tcnica propuesta asume a la base mvil como un mecanismo virtual, el cualconsiste de dos eslabones unidos por una articulacin de nb GDL; uno de los eslabonesse considera fijo y el otro consiste de la propia base mvil. La articulacin virtual debetomar en cuenta los posibles movimientos de la base mvil; los grados de libertad dedicha articulacin se deben ajustar a la complejidad del movimiento requerido por labase mvil, por ejemplo, si slo se considera el movimiento sobre el plano en un robotmvil, entonces se requiere de 3 GDL para modelar su cinemtica directa. Por otrolado, si adems se considera que este robot mvil puede volcarse, entonces se requierede 5 GDL. Una vez hecha esta transformacin, la cinemtica directa del manipuladormvil se obtiene al considerar la base mvil y el brazo como una sola cadena cinemtica.

    El mtodo anteriormente expuesto permite usar las mismas herramientas que seaplican para determinar la cinemtica directa en un manipulador estacionario, comopor ejemplo el mtodo de DenavitHartenberg, lo que permite el uso de tcnicas compu-tacionales eficientes para evaluar numricamente la cinemtica directa. Otra ventajade esta tcnica es que facilita la obtencin del jacobiano por mtodos geomtricos, loscuales son numricamente eficientes. Por otro lado, el jacobiano geomtrico permite

  • CAPTULO 3. MODELADO DE MANIPULADORES MVILES 21

    desarrollar mtodos numricos eficientes para la obtencin de los modelos cinemticoy dinmico.

    3.2. Mtodo integral para obtener el modelo cinem-

    tico de postura

    El modelo cinemtico de postura (seccin 2.2) es til para desarrollar leyes decontrol en el espacio de tarea y obtener el modelo dinmico por el mtodo de EulerLagrange. El modelo cinemtico de postura se obtiene a partir de la cinemtica directay el modelo cinemtico de configuracin. Un hecho importante es que, en la literaturareportada se usan jacobianos y modelos cinemticos de configuracin diferentes pararesolver por separado los problemas de locomocin y manipulacin de un manipuladormvil; esto implica el problema de combinar los jacobianos, y los modelos cinemticosde configuracin, para obtener un solo modelo cinemtico de postura; a continuacin sedescribe un mtodo que no adolece del problema de combinar dos modelos cinemticosdiferentes.

    El mtodo consiste en usar simplemente la cinemtica directa, obtenida en el pasoanterior, para calcular el jacobiano del manipulador mvil. Ahora el problema consisteen encontrar el modelo cinemtico de configuracin, pero esto es directo al simplementeextender las ligaduras cinemticas a todas las variables cinemtica del manipuladormvil, esto es, modelar las ligaduras cinemticas de manera integral. Esto presentaotro beneficio, no requiere una forma muy especfica para el modelo cinemtico deconfiguracin, tal como se propone en [10]; otra ventaja es que se pueden incluir lasligaduras cinemticas que existan en el propio brazo.

    Al replantear el problema del manipulador mvil como uno de manipulacin, fueposible obtener la cinemtica directa de todo el robot; con ayuda de esta cinemticadirecta se puede determinar el jacobiano de ambos problemas en conjunto, sin requerircalcular por separado el jacobiano de cada problema de manera independiente; por lotanto ya no es necesario combinarlos de alguna forma. Otra ventaja de este enfoque deconsiderar todo el problema como manipulacin, es que existen algoritmos geomtricosnumricamente eficientes para obtener el jacobiano.

  • CAPTULO 3. MODELADO DE MANIPULADORES MVILES 22

    3.3. Mtodo recursivo para obtener el modelo din-

    mico

    A continuacin se presenta un mtodo recursivo basado en NewtonEuler [49], elcual se puede usar para obtener la dinmica inversa de un manipulador mvil o comoapoyo para obtener la dinmica directa. Es importante notar que, si bien en el anlisisde sistemas robticos se utiliza normalmente el formalismo de EulerLagrange, porrazones de eficiencia en el modelado computacional se termina implementando el m-todo recursivo de NewtonLagrange, tal como en [8]; otra ventaja del mtodo recursivoes que simplifica la obtencin del modelo por medio de parmetros. Por otro lado, sibien existen algoritmos basados en NewtonEuler que consideran las restricciones noholnomas en manipuladores mviles, tal como en [4], siguen considerando el modeladocinemtico como dos problemas diferentes. Tambin se presenta una transformacin decoordenadas de configuracin que permite usar la versin tradicional de NewtonEulersin modificacin.

    3.3.1. Notacin

    Es importante notar que las posiciones, velocidades y aceleraciones de una partculao un cuerpo rgido son consideradas como vectores en el espacio euclidiano de dimensin3, denotado como E3. A diferencia de los vectores expresadas en Rn, en E3 se debenexpresar con respecto a un marco de referencia, ya que es un espacio afn; el marco dereferencia A se denota como {A}.

    Un punto p E3 se denotar por medio de negritas. El vector correspondiente conrespecto al marco de referencia {A} se denotara por el mismo smbolo pero con unsuperndice indicando el marco de referencia, por ejemplo pA. Si para una magnitudparticular no se menciona de forma explcita el marco de referencia se asumir que estdado por el propio contexto.

    En el caso particular de los eslabones del robot, los marcos de referencia se asignande acuerdo a la convencin de Denavit-Hartenberg tal como es presentada en [49],donde se enumeran del 0, para la base, 1 para el siguiente eslabn, hasta n para eln-simo eslabn. Otro caso particular es el de los centros de masas de los eslabones,que se denotarn {ci}.

    Para cambiar la descripcin de la orientacin de un vector p de un marco de refe-rencia {A} a un marco de referencia {B} se usa una transformacin ortogonal RBA tal

  • CAPTULO 3. MODELADO DE MANIPULADORES MVILES 23

    quepB = RBAp

    A.

    3.3.2. Obtencin de la dinmica

    Las leyes de Euler del movimiento extienden las leyes del movimiento de Newton,las cuales tratan sobre partculas, para el caso de cuerpo rgido. Si se asume que todoslos vectores estn descritos en el marco de referencia {i}, entonces la primera ley deEuler es

    Fi = miaci (3.1)

    donde el vector euclidiano aci E3 representa la aceleracin del centro de masas deli-simo eslabn, y el vector euclidiano Fi E3 es la suma de fuerzas en el i-simoeslabn; el escalar mi R es la masa del i-simo eslabn, la cual es invariante conrespecto a la configuracin del manipulador.

    Por otro lado, la segunda ley de Euler establece una relacin entre los momentosde fuerza y la derivada con respecto del tiempo del momento angular; para el caso deun marco de referencia rotacional se tiene que

    Ni = Iii + i (Iii) (3.2)

    donde el vector euclidiano i E3 representa la aceleracin angular del i-simo esla-bn, y el vector euclidiano i E3 representa la velocidad angular del i-simo eslabn;la matriz Ii R33 es el tensor del momento de inercia en el i-simo eslabn, la cual esinvariante con respecto a la configuracin del eslabn cuando su marco de referencia esrotacional; finalmente, el vector euclidiano Ni E3 es la suma de momentos de fuerzaen el i-simo eslabn. El operador en la ecuacin representa el producto cruz entredos vectores.

    A continuacin se determinan las fuerzas que actan sobre un eslabn (figura 3.1);si se asume que todos los vectores estn descritos en el marco de referencia {i}, entoncesFi est dada por

    Fi = fi fi+1 +migi (3.3)

    donde fi E3 es la fuerza ejercida por el eslabn i 1 sobre el i-simo eslabn,fi+1 E3 es la fuerza ejercida por el eslabn i + 1 sobre el i-simo eslabn, y gi E3es la aceleracin debida a la gravedad ejercida sobre el i-simo eslabn. Resolviendo

  • CAPTULO 3. MODELADO DE MANIPULADORES MVILES 24

    f if i+1

    zizi1

    ci

    vci

    i gm

    Figura 3.1: Fuerzas afectando al eslabn. Se hace notar que todas estn descritas en elmarco de referencia {i}

    (3.3) para fi se tiene entonces que

    fi = Fi + fi+1 migi. (3.4)

    Es importante notar que (3.1) y (3.4) dependen de los valores de fi+1 y aci .

    f if i+1

    zizi1

    ci

    i

    r i,ci

    r i1,ci

    in i+1n

    Figura 3.2: Momentos de fuerzas afectando al eslabn. Se hace notar que todas estndescritas en el marco de referencia {i}

    En cuanto a los momentos de fuerza en el eslabn (figura 3.2), si se asume quetodos los vectores estn descritos en el marco de referencia {i}, se tiene que la sumade momentos de fuerzas Ni est dada por

    Ni = ni ni+1 + fi ri1,ci fi+1 ri,ci (3.5)

  • CAPTULO 3. MODELADO DE MANIPULADORES MVILES 25

    donde ni E3 es el momento de fuerza ejercido por el eslabn i 1 sobre el i-simoeslabn, ni+1 E3 es el momento de fuerza ejercido por el eslabn i+1 sobre el i-simoeslabn, ri1,ci es el vector de desplazamiento que va del marco de referencia {i 1}a {ci}, y ri,ci es el vector de desplazamiento que va del marco de referencia {i} a {ci};tanto ri1,ci como ri,ci son magnitudes invariantes con respecto a la configuracin deleslabn. Resolviendo (3.5) para ni se obtiene la expresin

    ni = Ni + ni+1 fi ri1,ci + fi+1 ri,ci (3.6)

    Para resolver (3.2) y (3.6) se necesita conocer los valores de ni+1, i y i.Una vez obtenidas las fuerza y momentos de fuerza aplicados a los eslabones, se ne-

    cesitan encontrar las fuerzas o momentos de fuerza proporcionados por los actuadores.En el caso de una articulacin prismtica se tiene que la relacin entre fuerza ejercidapor el eslabn i 1 sobre el i-simo eslabn y las fuerzas generalizadas est dada porla expresin [49]

    i = zTi1fi (3.7)

    donde i es el i-simo componente del vector de fuerzas generalizadas, y zi1 E3es el vector euclidiano correspondiente al eje z del i 1 eslabn. Por otro lado, si laarticulacin es rotacional entonces se tiene que la relacin entre la fuerza ejercida porel eslabn i 1 sobre el i-simo eslabn y las fuerzas generalizadas se define como

    i = zTi1ni. (3.8)

    Es importante notar que en el caso de un manipulador mvil, la fuerza ejercida por eleslabn i 1 sobre el i-simo eslabn fi incluye las fuerzas debidos a las ligaduras noholnomas que actan sobre el eslabn; por otro lado, tambin el momento de fuerzaejercido por el eslabn i 1 sobre el i-simo eslabn ni incluye los momentos de fuerzadebidos a las ligaduras no holnomas que actan sobre el eslabn; esta relacin sepuede expresar mejor por

    = S(q) + A(q). (3.9)

  • CAPTULO 3. MODELADO DE MANIPULADORES MVILES 26

    3.3.3. Obtencin de las velocidades y aceleraciones

    Para determinar la aceleracin lineal ai requerida en (3.1) se parte de la relacin[5]

    vi = JviS(q) (3.10)

    donde el vector vi E3 es la velocidad del centro de masas del i-simo eslabn, el vector Rm son las velocidades de los actuadores, el vector q Rn son las coordenadasgeneralizadas, y la matriz Jvi R3n es el jacobiano de velocidad lineal del centro demasa del i-simo eslabn. Para encontrar ai se deriva (3.10) con respecto al tiempo

    aci = JviS(q) + JviS(q) + JviS(q). (3.11)

    Por otro lado, para encontrar la aceleracin angular i y la velocidad angular iusadas en (3.2) se parte de la expresin

    i = JiS(q) (3.12)

    donde la matriz Ji R3n es el jacobiano de velocidad angular del centro de masa.Al derivar con respecto al tiempo a (3.12)

    i = JiS(q) + JiS(q) + JiS(q). (3.13)

    Es importante notar que la obtencin de Jvi y Ji se puede realizar numricamente demanera recursiva, lo cual resulta muy eficiente con respecto al nmero de operaciones.

    3.3.4. Implementacin del algoritmo

    En la descripcin de algoritmos, normalmente se utiliza el paradigma imperativode computacin; un enfoque diferente es el paradigma funcional [39], en el cual losprocesos computacionales se presentan como una composicin de funciones primitivas,en donde composicin se refiere a que la salida de una funcin es la entrada de otra.A continuacin se presenta una implementacin del algoritmo propuesto, el cual usacomposiciones de transformaciones de coordenadas de configuracin y fuerzas genera-lizadas, aplicadas al algoritmo clsico de NewtonEuler.

    En un contexto puramente funcional, se asume que ya existe una funcin rne queimplementa el mtodo de NewtonEuler, pero solo considera las restricciones holno-

  • CAPTULO 3. MODELADO DE MANIPULADORES MVILES 27

    mas, y est definida como = rne() (3.14)

    donde el vector R3n se define como

    =

    qqq

    . (3.15)Por otro lado, el mtodo desarrollado depende de las variables q, y , las cuales sepueden para definir el vector

    =

    q

    . (3.16)Teorema 1. Sea la funcin rne que implementa el mtodo de NewtonEuler que con-sidera slo las restricciones holnomas. entonces el algoritmo recursivo para sistemasno holnomos se puede expresar de la forma

    = (S(q)TS(q))1S(q)T rne(W (q)). (3.17)

    donde W (q) es una matriz definida por

    W (q) =

    I 0 00 S(q) 00 S(q) S(q)

    . (3.18)Demostracin. La relacin entre y est dada por

    = W (q). (3.19)

    Entonces, usando (3.9), (3.14) y (3.19), el algoritmo recursivo de NewtonEuler parasistemas con restricciones no holonomas, expresado en un estilo funcional, queda de laforma (3.17).

    Para implementar el algoritmo (3.17) se us la funcin rne suministrada por elrobotics toolbox para Matlab [8]. El algoritmo (3.17) implementa el mtodo recursivode NewtonEuler no solo tomando en consideracin las restricciones no holnomas; esimportante notar que las restricciones no holnomas restringen las velocidades posibles

  • CAPTULO 3. MODELADO DE MANIPULADORES MVILES 28

    ms no su posicin, esto es: su cinemtica directa no depende de dichas restricciones;por lo tanto la parte de la funcin rne que depende de la cinemtica directa tampocose ve afectada si el manipulador mvil se modela para este fin como un manipulador es-tacionario, permitiendo usar de manera integral las mismas herramientas de modeladocinemtico.

    3.4. Conclusiones

    Los mtodos presentados extienden los algoritmos existentes para robots estacio-narios para el caso de manipuladores mviles. En particular, estos mtodos permitendesarrollar modelos paramtricos para manipuladores mviles. El primer problema tra-tado es la cinemtica directa de un manipulador mvil. Posteriormente se procede aldesarrollo de un modelo paramtrico de la cinemtica de postura. Tambin se presentuna extensin del mtodo de NewtonEuler para el caso de un manipulador mvil.

    Una ventaja de estas extensiones a los algoritmos clsicos es que se pueden usar nosolo en manipuladores mviles, sino en otros robots que tengan ligaduras no holnomas.

  • Captulo 4

    Control de manipuladores mviles

    Una ley de control es una relacin que expresa las seales requeridas en la entradade un sistema, para que ste acte de una manera determinada y as alcanzar unobjetivo; dicho de otra manera, una ley de control determina el comportamiento de unsistema. En el caso de los robot, se utiliza una arquitectura de control consistente enun par de lazos de control anidados (figura 4.1). El lazo interno de control calcula elvector de las fuerzas y/o momento de entrada como una funcin de las mediciones delas variables de configuracin y sus derivadas en el tiempo; la entrada al lazo interno decontrol es el vector de las aceleraciones deseadas en los actuadores, denotado a; en losrobots holnomos completamente actuados las aceleraciones deseadas en los actuadoresequivale a las aceleraciones generalizadas. La funcin del lazo interno de control escompensar las no linealidades del robot. En cuanto al lazo externo de control, su funcines calcular el valor de las aceleraciones deseadas en los actuadores; usualmente este lazode control es ms acorde a los esquemas de control realimentado.

    Planificadorde Tarea

    Controlador deLazo Externo

    Controlador deLazo Interno

    Manipuladormovil

    rd a d r

    Figura 4.1: Arquitectura del controlador basada en dos lazos de control anidados.

    Usando esta arquitectura de control, en el presente captulo se presentan una seriede controladores que resuelven el problema de control en el espacio de tarea. Primerose presenta una ley de control en base a dinmica inversa, la cual no solo compensala dinmica del sistema, sino tambin cancela un regulador PD a nivel de actuadores,el cual fue previamente instalado (seccin 4.1). Una vez obtenida una ley de control a

    29

  • CAPTULO 4. CONTROL DE MANIPULADORES MVILES 30

    nivel dinmico, se combinar en cascada con otras leyes de control, por ejemplo conun RAC en espacio de configuracin (seccin 4.2), un RAC en el espacio de tarea(seccin 4.3), y un RAC robusto en el espacio de tarea (seccin 4.4). Finalmente, lasleyes de control en espacio de tarea requieren conocer la derivada en el tiempo delmapeo de las velocidades de los actuadores a las velocidades de postura, por lo cual sepresenta un estimador eficiente de este mapeo (seccin 4.5).

    4.1. Control por cancelacin de la dinmica y un re-

    gulador PD

    La funcin de una ley control a nivel dinmico es reducir el efecto de las inercias delos componentes del robot sobre el desempeo de la tarea. Dependiendo de la ley decontrol, tambin se puede compensar las fuerzas externas que actan sobre los compo-nentes. Una ley de control muy utilizada a este nivel es el mtodo de la dinmica inversa[49], tambin llamado mtodo del par calculado. Este tipo de control tiene la funcinde cancelar la dinmica propia del sistema, lo que permite que el sistema resultante secomporte como un doble integrador; sin embargo, este sistema resultante es sensiblea incertidumbres en los parmetros, pero se puede combinar con otras tcnicas paramejorar su robustez, por ejemplo se puede combinar con un lazo de retroalimentacin.

    Sea el modelo reducido de un sistema dinmico no holnomo (seccin 2.3) descritopor (n+m) ecuaciones de primer orden

    q = S(q) (4.1)

    = M(q)1m(q, ) +M(q)1S(q)TS(q) . (4.2)

    La ley de control por dinmica inversa se obtiene al resolver (4.2) con respecto al vectorde fuerzas externas , esto es

    = (S(q)TS(q))1m(q, ) + (S(q)TS(q))1M(q)a (4.3)

    donde a(t) Rm son las aceleraciones deseadas en los actuadores. Aplicando la ley decontrol (4.3) al sistema (4.2) se obtiene la expresin

    = a; (4.4)

  • CAPTULO 4. CONTROL DE MANIPULADORES MVILES 31

    Las ecuaciones (4.1) y (4.4) forman un sistema doble integrador, el cual tiene comoentrada de control al vector a de las aceleraciones deseadas en los actuadores; unaventaja de este sistema es que el diseador del control puede complementar la ley decontrol (4.3) para alcanzar otros objetivos de control.

    Por otro lado, los fabricantes de robots mviles usualmente incluyen un controladorde velocidad del tipo PID en sus equipos; esto es un problema cuando se requiereimplementar otras leyes de control en los robots. Una forma de solventar este problemaconsiste en desarrollar etapas de control y potencia que se conectan en paralelo a lasetapas desarrolladas por el fabricante, pero esto implica la posibilidad de daar elequipo e invalidar la garanta del mismo; a continuacin se presenta el modelo dinmicoa nivel de la velocidad de los actuadores y que incluye un regulador PD instalado enfbrica de la forma

    = M(q)1m(q, ) +M(q)1S(q)TS(q)(KP KD). (4.5)

    donde (t) Rm son las aceleraciones de los actuadores, (t) Rm es el error en lasvelocidades de los actuadores, definido como

    = d , (4.6)

    d(t) Rm es el vector de las velocidades de referencia de los actuadores, KP Rmm es la matriz de ganancia proporcional, y KD Rmm es la matriz de gananciadiferencial del regulador PD.

    Se presenta a continuacin una ley de control por dinmica inversa1, la cual no slocompensa la dinmica del sistema sino adems al regulador PD; dicha ley de controlse expresa de la forma

    d = +KP1KD + (S(q)TS(q)KP )1m(q, ) + (S(q)TS(q)KP )1M(q)a, (4.7)

    donde a(t) es otra vez el vector de las aceleraciones deseadas en los actuadores. Alsustituir (4.7) en (4.5) se compensa tanto la dinmica del sistema como al reguladorPD, y el resultado es otra vez (4.4). Un problema de la cancelacin del regulador PD essu sensibilidad a variaciones en los parmetros del sistema y las ganancias del regulador;otro problema es que las variables del estado se deben medir con gran exactitud, y en

    1Estos resultados se presentaron en [45].

  • CAPTULO 4. CONTROL DE MANIPULADORES MVILES 32

    particular se requieren las realizadas por el regulador instalado en fbrica del robot.

    4.2. Control por resolucin de aceleracin en espacio

    de configuracin

    Con (4.7) se puede realizar el control de un manipulador mvil en el espacio deconfiguracin, pero para ello es importante encontrar una relacin entre las aceleracio-nes de los actuadores y las aceleraciones generalizadas; en el caso de un manipuladorestacionario esta relacin es la identidad, pero en un manipulador mvil no holnomo,esta relacin est dada por la derivada con respecto al tiempo de (4.1),

    a = S(q)S(q) + S(q)aq, (4.8)

    donde la entrada aq(t) Rn es el vector de aceleraciones generalizadas deseadas, lamatriz S(q) Rnm es la derivada de S(q) con respecto al tiempo, y el operador ( )es la seudo-inversa [37]. La ley de control (4.8) se conoce como RAC y se ha usadopara el control en el espacio de tarea de robots estacionarios [30] y manipuladoresmviles [23], sin embargo no se ha aplicado a manipuladores mviles en el espacio deconfiguracin2 con las caractersticas de (4.5).

    La ley de control (4.8) se puede combinar con un lazo realimentado de la forma

    aq = qd +K1 q +K0q, (4.9)

    donde el vector q(t) Rn es el error en el espacio configuracin, el cual se define como

    q = qd q, (4.10)

    el vector qd(t) Rn es la configuracin de referencia; finalmente, las matrices cuadradasconstantes K1, K2, las cuales tienen el tamao adecuado, son las ganancias del lazorealimentado; estas matrices de ganancia se pueden escoger para asegurar una dinmicadel error de la forma

    q +K1 q +K0q = 0. (4.11)2Estos resultados se presentaron parcialmente en [43].

  • CAPTULO 4. CONTROL DE MANIPULADORES MVILES 33

    4.3. Control por resolucin de aceleracin en el espa-

    cio de tarea

    De manera similar al RAC para el espacio de configuracin (seccin 4.2), tambin sepuede realizar el control de un manipulador mvil en el espacio de tarea con (4.7), perose necesita encontrar una relacin entre las aceleraciones de los actuadores y las acele-raciones del marco de referencia asociado al elemento final de control (figura 4.2); estarelacin se puede encontrar a partir del modelo cinemtico de postura (subseccin 3.2)

    r = B(q) (4.12)

    donde la matriz B(q) Rpm es el mapeo de las velocidades de los actuadores a lasvelocidades de postura y est definido como

    B(q) = J(q)S(q) (4.13)

    donde la matriz J(q) Rpn es el jacobiano del robot; es importante notar que existenmtodos para evaluar numricamente el jacobiano para una configuracin dada; estosmtodos no necesitan tener una expresin analtica del jacobiano y son muy eficientesnumricamente [49].

    +PDTarea

    +Modelo

    CinematicoInverso

    EstimadorB

    ModeloDinamicoInverso

    PDInverso

    Velocidad

    +PD

    VelocidadManipulador

    Movil

    ModeloCinematicoPostura

    rd, rd a r, r

    rd

    Figura 4.2: Sistema de control robusto basado en Lyapunov por resolucin de acelera-cin en el espacio de tarea.

    Usando la derivada con respecto al tiempo de (4.12), se obtiene la ley de control

    a = B(q)B(q) +B(q)ar, (4.14)

    donde la entrada ar(t) Rp es el vector de aceleraciones en el espacio de tarea deseadas,y la matriz B(q) Rpm es la derivada del mapeo de las velocidades de los actuadoresa las velocidades de postura con respecto al tiempo.

    Una vez que se establece la ley de control (4.14), se puede cerrar el lazo de control

  • CAPTULO 4. CONTROL DE MANIPULADORES MVILES 34

    por medio dear = rd +K1 r +K0r (4.15)

    donde el vector ar(t) Rp son las aceleraciones en el espacio de tarea deseadas, el vectorrd(t) Rp denota la postura deseada del marco de referencia asociado al elemento finalde control, el vector r(t) Rp es el error de la postura del marco de referencia asociadoal elemento final de control, definido como

    r = rd r; (4.16)

    por otro lado, K1, K2 son matrices cuadradas constantes del tamao adecuado, lascuales representan las ganancias del lazo realimentado, y las cuales se escogen paradeterminar una dinmica del error de la forma

    r +K1 r +K0r = 0. (4.17)

    4.4. Control robusto basado en Lyapunov por resolu-

    cin de aceleracin en el espacio de tarea

    Se presenta a continuacin un controlador, el cual compensa la dinmica del sistemay al regulador PD pero de manera imperfecta3. La ley de control se expresa de la forma

    d = +KP1KD + (S(q)TS(q)KP )1m(q, ) + (S(q)TS(q)KP )1M(q)a, (4.18)

    donde M(q) Rmm es la matriz de inercia del sistema reducido nominal, y m(q, ) Rm es el vector de las fuerzas potenciales del sistema reducido nominal.

    Al aplicar la ley de control (4.18) a (4.5) se obtiene el modelo dinmico lineal sujetoa la incertidumbre

    = a+ (4.19)

    donde el vector Rm es la incertidumbre del modelo y se define como

    =(M(q)1M(q) Im

    )a+M(q)1 (m(q, )m(q, )) , (4.20)

    3Estos resultados se presentaron parcialmente en [45].

  • CAPTULO 4. CONTROL DE MANIPULADORES MVILES 35

    e Im Rmm es la matriz identidad.Para cerrar el lazo de control se propone el lazo de control

    ar = rd +K1 r +K0r + . (4.21)

    donde las ganancias K1, K2 son matrices cuadradas constantes que se eligen para ajus-tar la dinmica del error; la funcin Rp es un termino a ser diseado.

    Lema 2. La dinmica del error para el sistema dinmico (4.19) y (4.12), y con el lazode realimentacin (4.21), est dada por

    r +K1 r +K0r + +B(q) = 0. (4.22)

    Demostracin. Sea el sistema dinmico definido por (4.19) y (4.12) con el lazo derealimentacin (4.21). Al derivar (4.12) con respecto al tiempo se tiene

    r = B(q) +B(q); (4.23)

    sustituyendo (4.19) en (4.23) se obtiene la relacin

    r = B(q) +B(q)a+B(q); (4.24)

    por otro lado, usando (4.8) en (4.24) se obtiene la expresin

    r = ar +B(q); (4.25)

    entonces sustituyendo (4.25) en (4.21) se obtiene (4.22) que es lo que se quera demos-trar.

    Teorema 3. Existe una funcin (e) Rm tal que asegura la estabilidad de la combi-nacin del sistema dinmico (4.19), la ley de control (4.14), y el lazo de realimenta-cin (4.21).

    Demostracin. Sea el sistema dinmico (4.19), la ley de control (4.14), y el lazo derealimentacin (4.21). Por el lema 2 se tiene la dinmica del error (4.22), la cual sepuede expresar en el espacio del estado como

    e = Fe+H ( +B(q)) (4.26)

  • CAPTULO 4. CONTROL DE MANIPULADORES MVILES 36

    donde el vector e(t) R2p es el estado de la dinmica del error, el cual est definidocomo

    e =

    (r

    r

    ), (4.27)

    la matriz F R2p2p es constante y est definida como

    F =

    (0 I

    K0 K1

    )(4.28)

    la matriz H R2pp tambin es constante

    H =

    (0

    I

    )(4.29)

    Dado que K0 y K1 se pueden elegir de tal manera que la matriz F sea Hurwitz, esposible encontrar una matriz definida positiva Q R2p2p tal que

    F TP + PF = Q, (4.30)

    donde la matriz constante P R2p2p es definida positiva Para demostrar la estabili-dad de (4.26) se propone la funcin candidata de Lyapunov

    V = eTPe. (4.31)

    Al derivar (4.31) con respecto al tiempo se obtiene

    V = eT (F TP + PF )e+ 2eTPH ( +B(q)) . (4.32)

    Un funcin (e) que asegura que (4.32) sea negativa est definida como

    =

    (e) HTPe

    HTPe si HTPe 6= 00 si HTPe = 0.

    (4.33)

    donde la funcin (e) Rm est definida como

    (e) =1

    1 (2e2 + 1e+ 0

    )(4.34)

  • CAPTULO 4. CONTROL DE MANIPULADORES MVILES 37

    donde , 0, 1 y 2 son escalares constantes. Por lo tanto existe una funcin (e) queasegura la estabilidad del sistema.

    4.5. Estimacin de B(q)

    Para poder usar la ley de control (4.8), se necesita conocer el valor de B(q) parauna configuracin dada; la derivada de B(q) se puede obtener por medio de (4.35), loque da

    B(q) = J(q)S(q) + J(q)(q)S(q); (4.35)

    si bien se puede determinar de una manera relativamente simple la derivada con res-pecto al tiempo de S(q) [9], no es el mismo caso para el jacobiano; en la realidadresulta ms eficiente computar numricamente el jacobiano que obtener una expresinanalticamente, y por lo tanto obtener su derivada no es posible. A continuacin sepropone un mtodo4 para obtener una aproximacin numrica de la expresin B(q),que resulta ms eficiente que calcular slo B(q).

    Teorema 4. Sea un sistema no holnomo con un modelo cinemtico expresado como(4.12). Entonces la expresin B(q) puede ser obtenida a partir de

    B(q) =d

    dt(B(q))B(q) d

    dt. (4.36)

    Demostracin. Sea un sistema no holnomo con un modelo cinemtico de postura(4.12). Al derivar a (4.12) con respecto al tiempo y resolviendo para B(q) se obtieneque

    B(q) = r +B(q),

    o equivalentemente

    B(q) =d

    dtr B(q) d

    dt. (4.37)

    Finalmente, al sustituir (4.12) en (4.37) se obtiene

    B(q) =d

    dt(B(q))B(q) d

    dt

    que era lo que se quera demostrar.4Estos resultados se presentaron en [45].

  • CAPTULO 4. CONTROL DE MANIPULADORES MVILES 38

    La implementacin computacional de (4.36) se pueden obtener con ayuda de aproxi-maciones numricas de la derivada. Es importante notar que (4.36) depende de derivarnumricamente dos vectores, lo cual es un problema del orden O(p); por otro lado,obtener numricamente la derivada de la matriz B(q) es un problema O(pm), y por lotanto (4.36) resulta computacionalmente ms eficiente.

    4.6. Conclusiones

    En este captulo primero se present una ley de control que compensa la dinmicadel sistema y cancela un regulador PD instalado en fbrica. En combinacin con estaley de control a nivel dinmico, se construyeron una variedad de leyes de control, porejemplo con un RAC en espacio de configuracin, un RAC en espacio de tarea, yun RAC robusto en espacio de tarea . Finalmente, las leyes de control en espacio detarea requieren conocer la derivada en el tiempo del mapeo de las velocidades de losactuadores a las velocidades de postura, por lo cual se present un estimador eficientede este mapeo.

  • Captulo 5

    Validacin numrica

    El propsito de la validacin de un controlador es verificar que ste y la planta enconjunto satisfacen los requerimientos dados. Un requerimiento bsico en un sistemade control es que sea estable y de preferencia robusto. Una herramienta muy til en lavalidacin de sistemas de control son las simulaciones computacionales.

    El presente captulo muestra los resultados de la validacin numrica de los di-ferentes esquemas de control presentados en el trabajo. Primeramente se presenta laimplementacin numrica de los modelos cinemtico y dinmico de un manipuladormvil (seccin 5.1). Posteriormente se presentan los resultados de las simulaciones rea-lizadas con los esquemas de control en el espacio de configuracin (seccin 5.2), en elespacio de tarea. Finalmente se muestran los resultados de un controlador robusto en elespacio de tarea (5.3), en el cual se evala el comportamiento del sistema ante diversostipos de perturbaciones.

    5.1. Modelo numrico del manipulador mvil

    La plataforma a simular consiste en un manipulador mvil de 5 GDL. La basemvil es un robot mvil de traccin diferencial con caractersticas cinemticas y din-micas semejantes al robot Pioneer 3DX; normalmente el robot mvil se asume comoun monociclo sin deslizamiento sobre una superficie plana y horizontal, y sobre la cualel monociclo que avanza; sin embargo, para este trabajo se considera a la base mvilcomo un robot cartesiano en dos ejes y un tercer eje rotacional. El brazo manipuladorse considera como un manipulador planar de 2 GDL con articulaciones de rotacin yeslabones con forma de varillas.

    39

  • CAPTULO 5. VALIDACIN NUMRICA 40

    Figura 5.1: Disposicin de un manipulador estacionario como modelo para obtener lacinemtica directa de un manipulador mvil de 5 GDL. Los primeros tres ejes repre-sentan a la base mvil.

    Usando la descripcin anterior, entonces es posible describir al manipulador mvilcomo un robot estacionario de 5 GDL con restricciones no holnomas en las articula-ciones (figura 5.1); Las variables de coordenadas generalizadas del manipulador mvil,q, estn definidas como

    q =

    d1

    d2

    3

    4

    5

    (5.1)

    donde d1, d2 son las coordenadas (x, y) sobre la superficie de la base mvil, 3 es laorientacin de la base mvil, y 4, 5 son las variables articulares del brazo manipulador;a partir de esta descripcin se obtienen los parmetros de DenavitHartenberg (tabla5.1).

    El manipulador mvil modelado tiene un conjunto de ligaduras no holnomas, lascuales estn definidas por la expresin

    A(q) =

    sen q3

    cos q30

    0

    0

    . (5.2)

  • CAPTULO 5. VALIDACIN NUMRICA 41

    Tabla 5.1: Parmetros de DenavitHartenberg para el manipulador mvil de 5 GDL.

    i (rad) a (mm) (rad) d (mm) tipo de par cinemtico1 pi/2 0 0 0 prismtico2 pi/2 0 pi/2 0 prismtico3 +pi/2 0 0 237 rotacional4 0 150 0 0 rotacional5 0 168 0 0 rotacional

    Dada esta matriz de ligaduras cinemticas, un posible modelo cinemtico de configu-racin (seccin 3.1) esta dado por

    q = S(q) (5.3)

    donde R4 es el vector de las velocidades de los actuadores, el cual est definidocomo

    =

    v

    q3

    q4

    q5

    (5.4)donde v(t) es un escalar que describe la velocidad lineal de la base mvil; finalmentela matriz S(q), la cual se establece como

    S (q) =

    cos q3 0 0 0

    sen q3 0 0 0

    0 1 0 0

    0 0 1 0

    0 0 0 1

    , (5.5)

    es el mapeo de las velocidades de los actuadores a las velocidades generalizadas.El manipulador mvil se model en la dinmica de acuerdo a la expresin (sec-

    cin 4.1) = M(q)1m(q, ) +M(q)1S(q)TS(q)(KP KD). (5.6)

    El modelo (5.6), depende de conocer las masas y las dimensiones de los eslabones(tabla 5.2); es importante notar que los eslabones 1 y 2 se consideran sin masa y por

  • CAPTULO 5. VALIDACIN NUMRICA 42

    Tabla 5.2: Dimensiones de los eslabones del manipulador mvil de 5 GDL; se consideraque los eslabones 1 y 2 no tienen masa.

    i Longitud (mm) Ancho (mm) Altura (mm) Masa (kg)3 445 393 237 9.04 150 50 50 0.15 168 50 50 0.1

    lo tanto no influyen en la dinmica.Por otro lado, el modelo (5.6) depende de la matriz S la cual esta dada por

    S(q) =

    2 sen q3 0 0 02 cos q3 0 0 0

    0 0 0 0

    0 0 0 0

    0 0 0 0

    ; (5.7)

    esta matriz tambin se utiliza para el controlador por dinmica inversa que se implan-tar en la siguiente seccin.

    La implementacin computacional de (5.6) implic el desarrollo de diferentes rutinasde cmputo, las cuales utilizan como base la librera robotics toolbox [8] de Matlab;es importante notar que esta librera solo implementa modelos y controladores pararobots estacionarios. Las rutinas desarrolladas se basan en el cambio de coordenadasde configuracin. Las parmetros K1 y K2 son las ganancias del RAC y variaron paralas diferentes versiones de este controlador (tabla 5.3); por otro lado KP y KD son lasganancias del controlador PD instalado en fbrica.

    Tabla 5.3: Ganancias de los controladores.

    Controlador K0 K1 KP KDRAC en el espacio de la configuracin 2 4 40 0RAC en espacio de la tarea 2.2 .7 40 0RAC robusto en espacio de la tarea 2.2 .7 40 0

  • CAPTULO 5. VALIDACIN NUMRICA 43

    5.2. Controlador en el espacio de configuracin

    El primer controlador implementado consiste en dos etapas. La primera etapa esun controlador por dinmica inversa con cancelacin de un regulador proporcionalderivativo

    d = +KP1KD + (S(q)TS(q)KP )1m(q, ) + (S(q)TS(q)KP )1M(q)a. (5.8)

    La segunda etapa, que anida a la primera, es un RAC para el espacio de configuracin(seccin 4.2), descrito por

    a = S(q)S(q) + S(q)aq. (5.9)

    Finalmente, este conjunto de controladores en cascada y la realimentacin

    aq = qd +K1 q +K0q, (5.10)

    permite seguir una referencia descrita en las coordenadas generalizadas del manipuladormvil.

    El controlador conformado por (5.8) (5.9) y (5.10) se aplic a un modelo numricodel manipulador mvil (5.6). La referencia aplicada al controlador es una trayectoriagenerada por medio de una interpolacin lineal entre dos configuraciones distintas; esimportante notar que la trayectoria no satisface la restriccin no holnoma; por lotanto, se aprecia que el error de las coordenadas generalizadas (figura 5.2) crece; msan, el controlador le da prioridad a la orientacin sobre la posicin en el plano dela base mvil. Por otro lado, las articulaciones 4 y 5, que no dependen de A(q) nomuestran ese error.

    5.3. Controlador en el espacio de tarea

    El siguiente controlador a validar consisti en el sistema (5.8) con un RAC en elespacio de tarea (seccin 4.3) anidado, el cual est definido por

    a = B(q)B(q) +B(q)ar; (5.11)

  • CAPTULO 5. VALIDACIN NUMRICA 44

    Figura 5.2: Grfico del error cinemtico de configuracin para los controladores encascada de resolucin de aceleracin y de dinmica inversa.

    como (5.11) depende del valor de la derivada del mapeo de las velocidades de losactuadores a las velocidades de postura, se uso el estimador (seccin 4.5)

    B(q) =d

    dt(B(q))B(q) d

    dt; (5.12)

    finalmente, para cerrar el lazo de control se us la realimentacin

    ar = rd +K1 r +K0r. (5.13)

    La trayectoria de referencia en el espacio de tarea se gener a partir de las ecuaciones

    x(t) = cos((t))

    y(t) = sen((t)).(5.14)

    donde es una funcin del tiempo definida por un polinomio de tercer orden; las velo-cidades y aceleraciones se definen a partir de la primera y segunda derivadas de (5.14);la trayectoria resultante es un movimiento circular en la direccin contraria a las ma-

  • CAPTULO 5. VALIDACIN NUMRICA 45

    Figura 5.3: Seguimiento de la trayectoria en el plano.

    necillas del reloj. Es importante remarcar que esta trayectoria s satisface las ligadurasno holnomas definidas por A(q).

    Al aplicar la trayectoria (5.14) al controlador formado por (5.8), (5.11), (5.12)y (5.13) se obtuvo un movimiento circular (figura 5.3), donde el manipulador mvilinici su movimiento desde una posicin fuera de esta trayectoria y se aproxim ala trayectoria de referencia en direccin contraria, para posteriormente cambiar dedireccin y seguirla. Este cambio de direccin parece abrupto, sin embargo al analizarel movimiento con respecto al tiempo (figuras 5.4 y 5.5) se puede apreciar que realmentees suave.

    En el error de postura (figura 5.6) se muestra que el error converge muy rpidamentea cero. De hecho, a pesar de que error en el x es mayor, aparentemente ste convergetan rpidamente como el error en y.

    Ms informativo es el desplazamiento de las articulaciones (figura 5.7). Es importan-te notar que el manipulador mvil modelado tiene una redundancia cinemtica; esto seaprecia en el movimiento de las primeras cuatro articulaciones, mientras el movimien-to de la quinta articulacin no es apreciable. Los desplazamiento de las articulacionesestn acotados.

  • CAPTULO 5. VALIDACIN NUMRICA 46

    Figura 5.4: Seguimiento de la trayectoria en el eje x.

    5.4. Controlador robusto en el espacio de la tarea

    El controlador robusto en el espacio de la tarea (seccin 4.4) se implement con ladinmica nominal inversa con cancelacin de PD (5.8), definida como

    d = +KP1KD + (S(q)TS(q)KP )1m(q, ) + (S(q)TS(q)KP )1M(q)a, (5.15)

    y en conjunto con un RAC en el espacio de