Está en la página 1de 314
Contenido | | Prefacio xii Capitulo 1. INTRODUCCION 1 LL. Antecedentes bistros 2 12 Origen y desarrollo de la robstica 5 13, Definicin y clasficacién del robot 8 1.3.1. Definicin del robot industri 9 132. Clasificacién del robot industrial u 13.3. Robots de servicio y teleoperados u 1.4, Bibliografia 4 Capitulo 2, MORFOLOGEA DEL ROBOT 15 2.1, Estructura mecénica de un robot 16 22. Transmisiones y reductores 19 2.211, ‘Transmisiones 2 2.22. Reductores 4 223. Accionamiento directo 24 23. Actuadores 25 23.1. Actuadores neuméticos 26 23.2. Actuadoreshidréulicos 28 233. Actuadore eléctsicos 29 24, Sensoresinternos 36 24.1. Sensores de posiciin ” 24.2. Sensores de velocidad 2 2.43. Sensores de presencia 8 25. Elementos temminales 4 26, Bibliogratia 46 Contenido Capitulo 3, HERRAMIENTAS MATEMATICAS PARA LA LOCALIZACION ESPACIAL 31 34 35 36. Representacin de la posicién 3.1. Sistema cartesiano de referencia 3112. Coordenadss cartesianas 3113. Coordenadas poles y 3.14. Coordenadas estéricas Representacin de a orientacién 3.2.1. Matrices de rotacién 322. Angulos de Euler 323. Parde rotacién Casterios + de transformacién homogéaea Coordenadas y matrices homogéneas Aplicacion de las matrices homogéness Signficado geométrco de ls matrices homogéneas Composicn de matrices homogéneas 335. Graficos de transformacion Aplicacin de los euaterios, 34,1. Algebra de cuaterios 3.42. Utilzacn de los cuaternios Relacién y comparaién entre los dstntos métodos de lcalizacign espacial 35.1. Comparacién de métodos de localizacin espacial 35.2. Relacion ene los dstnios métodos de localizacin espacial Bibliogratia Capitulo 4. CLNEMATICA DEL ROBOT 4 42. 43. 44, El problema cinemético directo 4.L.1. Resolucién del problema cinematico directo mediante matrices de transformacién homogénea, 4.1.2, Algoritmo de Denavit-Hartenberg para la obtencién del modelo cinemitica dieecto 4.1.3, Resolucién del problema cinematico directo mediante el uso de cuaternios Cinematica inversa 42.1. Resoluci6n del problema cinematico inverso por métodos geométricos, 422. Resolucién del problema cinemético inverso a partir de la matriz.de transformacién homogénea 4.2.3. Desacoplo cinematico Matriz Jacobiana 43.1. Relaciones diferenciales 43.2. Jacobiana inversa 43.3. Configuraciones singulares Bibliografia 49 30 50 31 sl 32 2 33 31 61 6 @ cs a 14 6 81 a1 83 85 86 92 93 94 o4 7 103 108 10 m2 is 12 12 124 126 129 Contenido ix Capitulo S. DINAMICA DEL ROBOT 13 5.1. Modelo dindmico de la estructura mecénica de un robot rigido 132 5.2, Obtencidn del modelo dindmico de un robot mediante la formulacién dde Lagrange-Euler 135 5.2.1. Algoritmo computacional para e] modelado dinémico por Lagrange-Euler 136 53, Obtencién del modeto dindmico de un robot mediante la formulacién de Newton-Euler 148 53.1. Algoritmo computacional para el modelado dinémico por Newton-Euler 148 5.4. Modelo dindmico en variables de estado 155 5.5. Modelo dinamico en el espacio de la tarea 159 56. Modelo dindmico de los actuadores 160 5.6.1, Motor eléctrico de corriente continua 161 5.6.2. Motor hidrdulico con servovélvula 168 5.7. Bibliogratia 161 Capitulo 6. CONTROL CINEMATICO 169 46.1. Funciones del control cinemtico 169 62. Tipos de trayectorias m 62.1. Trayectorias punto a punto m 62.2. Trayectorias coordinadas 0 isocronas 13 62.3. Trayectorias continuas 13 6.3. Generacién de trayectorias cartesianas 175 63.1, Evolucién de la orientacién 175 6.4 Intorpolacién de trayectorias 7 6.4.1. Interpoladores lineales 178 642. Interpoladores cibicos 178 64.3. Interpoladores a tramos 181 64.4. Owos interpoladores 186 6.5. Muestreo de trayectorias cartesianas 186 66. Bibliografla 185 Capitulo 7. CONTROL DINAMICO 187 7.4. Control monoasticular 188 7.1.1. Influencia del factor de reduceién 188 7.1.2. Control PID 193 7.1.3. Control PID con prealimentacién 197 7.1.4, Control PD con compensacién de gravedad 198 7.2. Control multiarticular 200 7.2.1. Desacoplamiento por inversién del modelo 200 7.22. Control PID con prealimentacién 202 x Contenido 7.3. Control adaptativo 208 73.1. Control adaptativo por planificacién de ganancias (GS) 205 7.32. Control adaptativo con modelo de referencia (MRAC) 207 733. Control de par calculado adaptativo 208 7.4, Aspectos pricticos de la implantacién del regulador 210 7.4.1. Ajuste de los pardmetros del PID. Especificaciones de disefio 210 74.2. Saturacién de los amplificadores. Efecto de la accidn integral 212 743. Flexién y oseilaciones estructurales nef 75. Bibliografia 218 Capitulo 8, PROGRAMACION DE ROBOTS 219 8.1. Métodos de programacién de robots. Clasificacién 220 8.1.1. Programacién por guiado 220 8.1.2. Programacién textual 223 8.2. Requerimientos de un sistema de programacién de robots 225 82.1. Entomo de programacién i 82.2, Modelado del entorno 226 82.3, Tipos de datos 27 82.4, Manejo de entradas-salidas 28 825. Control del movimiento del robot 29 8.2.6, Control del flujo de ejecucién del programa 230 8.3. Ejemplo de programacién de un robot industrial BI 8.4. Caracteristicas bisicas de los lenguajes RAPID y V+ 236 8.4.1. El lenguaje de programacién RAPID 236 8.4.2. El lenguaje de programacién V+ 246 85. Bibliografla 253 itulo 9, CRITERIOS DE IMPLANTACION DE UN ROBOT INDUSTRIAL 255 9.1, Disefo y control de una célula robotizada 256 9.1.1. Disposicién del robot en la eélula de trabajo 257 9.1.2, Caracteristicas del sistema de control de la célula de trabajo 261 9.2. Caracteristicas a considerar en la seleceién de un robot 262 92.1. Area de trabajo 263 9.2.2. Grados de libertad 265 923. Precisién, tepetibilidad y resolucién 266 9.24. Velocidad 267 9.25. Capacidad de carga 268 9.26. Sistema de control 268 9.3. Seguridad en instalaciones robotizads 2 9.3.1, Causas de accidentes am 932. Medidas de seguridad 9.33, Normativa legal 9.4, Justficacién econémica 9.4.1, Factores econémicos y datos bésicos necesarios 9.4.2. El robot como elemento principal del andlisis econémico 9.4.3. Métodos de andlisis econsmico 9.5. Mercado de robots 96. Bibliograf Capitulo 10. APLICACIONES DE LOS ROBOTS 10.1. Clasificacién 1022. Aplicaciones industriales de los robots 10.2.1. Trabajos en fundicién 102.2. Soldadura 10.2.3. Apliacién de materiales, Pintura 10.2.4. Aplicacién de adhesivos y sellantes 10.2.5. Alimentacién de maquinas 1026. Procesado 10.2.7. Conte 10.2.8, Montaje 10.2.9. Paletizacién 10.2.10. Control de calidad 10.2.11. Manipulacién en salas blancas 103. Nuevos sectores de aplicacin de los robots. Robots de servicio 103.1. Industria nuclear 103.2. Medicina 103.3, Construccién 10.4, Bibliogeafia Contenido xi 22 216 2m 218 219 280 285 288 291 292 293 293 204 297 299 299 301 302 304 305 307 308 31 312 313 314 316 Prefacio En menos de 30 afios la robstica ha pasado de ser un mito, propio de la imaginacién de algunos autores Tterarios, a una realidad imprescindible en el actual mercado productivo.Tras los primeros albores, timidos y de inciero futuro, la robstica experiments entre las décadas de los setenta y ochenta un notable auge, Hegando en los noventa a Jo que por muchos ha sido considerado su mayorfa de edad, ‘caracterizada por una estabilizaci6n de la demanda y una aceptacién y reconocimiento pleno en la industria, La formacién del profesional de Ia ingenierfa, nto en sus ramas de automatizacién, mecénica o incluso generalista, no ha podido dejar de lado esta realidad y ha incluido desde finales de los ochenta ala robstica como parte de sus ensefianzas La robstica posee un reconocido carécter interdisciplinario, participando en ella diferentes disci plinas basicas y tecnologtas tales como Ia teoria de control, a mecdnica, la electrénica, el algebra y la informatica, entre otras. Numerosas obras, la mayor parte en inglés, han surgido en el metcado biblio- eréfico desde 1980. En algunas de ellas se aprecia la tendencia de presentar la robética como un sim ple repaso de tecnologias bésicas (electrénica, informiética, mecdnica,etc.). En otros, por el contrario, se abusa de una excesiva especializacién, bien limitando el estudio de la robdtica a un complicado conjunto de problemas fisico matematicos, orientados a conocer con detalle el funcionamiento det sistema de control o bien tratando la robdtica tinicamente desde el punto de vista del usuario, sin dar ‘una adecuada informacién sobre las teenologias que la conforman, Ninguno de los planteamientos anteriores es a nuestro juicio acertado. Una formacién en robética focalizada exclusivamente en el control de robots no es la mis itil para la mayoria de los estudiantes, que de trabajar con robots lo harin como usuarios y no como fabricantes. Sin embargo, no hay que perder de vista que se esta formando a ingenieros, y que hay que proveeries de los medios adecuados para abordar, de la manera mis adecuada, los problemas que puedan surgir en el desarrollo de su pro- fesion, Por estos motivos, en este texto se ha procurado Hlegar a un adecuatlo equilibrio entre los temas relacionados con el conocimicnto profundo del funcionamiento de un robot (en sus aspectos mecéni- 0, informtitico y de control) y aquellos en los que se proporcionan los criterios para evaluar la conve- niencia de utilizar un robot y el modo mas adecuado de hacerlo, El libro esté fundamentalmente dirigido al estudiante de ingenieria en sus especialidades de Auto- rmatizacién, Electr6nica o similar. Con su estudio el alumno adquirira los conocimientos necesarios para poder abordar adecuadamente el proyecto de una instalacién robotizada, junto con una detallada comprensién del funcionamiento del robot. Asimismo, su lectura es aconsejable para los estudiantes de ingenieria técnica o superior de cualquier otra especialidad, aiv Prefacio El enfoque eminentemente prctico y aplicado de buena parte del texto, lo hace también stil para {odo aque! profesional que desee adquirir los conocimientos necesarios para entender y utilizar ade~ ccuadamente la robstica. Su contenido es el de un primer curso de robstica, que se considera completo para todo aquel que 4uierainiciarse en la misma sin dejar de lado sus multiples vertentes. Es a su vez imprescindible para aguellos que pretendan seguir sus estudios de posgrado dentro del area de la robstica, en sus aspectos _mas complejos e innovadores Para su correcta comprensi6n es preciso una formacién bisica en ingenierfa, Siendo en concreto descable tener una adecuada base en Algebra matricial, electrénica, control e informatica (programacién, arquitectura de computadores). No obstante, cualquier oteo lector sin esta formaciGn specifica, podré leer sin dificultad varios de los capitulos del libro, y captar, en los capitulos més complejos, cuales son los objetivos sin tener que ahondar en los medios usados para lograrlos. libro se ha organizado de acuerdo a la experiencia docente de los autores, que suman més de 30 aos impartiendo cursos de robética dentro del marco académico, asf como en cursos de especializa cidn para la industria, Se ha procurado et adecuado equilibrio entre los capftulos dedicados al control de robot (Capitulos 3,4,5.6,7) con los dedicados a su implantacién y uso (Capitulos 2,8,9,10), incln- yéndose en todos un adecuado mimero de ejemplos que faciliten el estudio y comprensién En el Capitulo 1 se presenta la robética como tecnologia interdisciplinar, definiendo al robot in- dustrial y comentando su desarrollo histérice y estado actual El Capitulo 2 esta dedicado al estudio de los elementos que componen un robot: estructura mecé- nica, transmisiones y reductores, actuadores, elementos terminales y sensores, No se pretende en el mismo hacer un estudio exhaustivo de estos componentes, pues no es este objetivo propio de la robd- tica, sino destacar las caracteristicas que los hacen adecuados para su empleo en los robots. Para que un robot pueda moverse y manipular objetos, es necesario una adecuada localizacién de las configuraciones espaciales por las que se pretende que el robot pase. Tanto para el usuario del robot como para su disefiador es necesario manejar adecuadamente una serie de herramientas mate ‘miticas que permitan situar en posici6a y orientacién un objeto (en particular, el extremo del robot) «en el espacio tridimensional. El Capitulo 3 recoge de manera pormenorizada las diferentes altemativas cxistentes para tal fin. Su adecuada asimilacién es imprescindible para abordar tanto los capitulos de contro! como el de programacién, El estudio de la cinemdtica del robot permite relacionar la posicién de sus actuadores con la posi= cidn y orientacién del extremo. Esta relacién no trivial, estudiada en el Capitulo 4, es fundamental para desarrollar el control del robot. El Capitulo 5 aborda el modelado dinémico de un robot. Como sistema dindmico, el robot es uno de los sistemas ms fascinantes para el control, por incorporar muchas de aquellas dificultades que ». a) b) Figura 3.4. Orientacion de un sistoma OUV respecto a otro OXY en un pane. 84 Fundamentos de robética Realizando una sencilla sere de transformaciones se puede legar ala siguiente equivalencia: Pl oglPs Bai py ole, Bal donde: es la llamada matriz de rotacién, que define 1a orientaciéin del sistema OUV con respecto al sistema OXY, y que sirve para transformar las coordenadas de un vector en un sistema a las del otro, También recibe el nombre de matriz de cosenos directores. Es fécil de comprobar que se trata de una mate, cortonormal, tal que R" = RY En el caso de dos dimensiones, la orientacién viene definida por un jnico parimetro independiente lera la posici6n relativa del sistema OUV girado un dngulo « sobre el OXY (Figura 34+), ‘ras realizar los correspondientes productos escalares, la matriz R serd de la forma: * se) Ba) coor Para el caso en que « = 0, en el que los ejes coordenatdos de ambos sistemas coinciden, la matriz R ‘corresponderd a Ja matriz unitaria En un espacio tridimensional, el razonamiento a seguit es similar. SupGnganse los sistemas OXYZy OUVW, coincidentes en el origen, siendo el OXYZel sistema de referencia fijo, y el OUVW el solidario. al objeto cuya orientacién se desea definir. (Figura 3.5.2). Los vectores unitarias del sistema OXYZ sein iy jy» Ke mientras que los del OUVW sera iy, jy, ky. Un. vector p del espacio podra ser referido « ‘cualquiera de los sistemas de la siguiente manera: = Pa Pys Pall = Poche Ponds * Poke hs Pow = [Pes Pall = Pate + Py dy + Py Ke 'Y al igual que en dos dimensiones, se puede obtener la siguiente equivalencia: p| fr »,|=R| p, Ba Py Pr, Herramientas mateméticas 58 donde: kis J, idk R=] ii ii ke B71 keg Kd, Keke | esla matriz de rotacién que define la orientacién del sistema OUVW con respecto al sistema OXYZ. | pun endo imesons tambin eb el smite de made cone toes ta || un matriz ortonormal, tal que la inversa de la matriz R es igual a su twaspuesta; R' = R’. bola Principal utilidad de esta matriz de rotacién corresponde a la representacién de la orientacién de sera gros een oe uo de lees pmsl del ser deere hi Fira 3h ls onenion del stoma OUVW, con le OU couse con eee OX set pesetda mediante lama 1 0 0 R(x,a)=|0 cos -seno. 8.8) 0 sener cose En la Figura 3.6-a, la orientacién del sistema OUVW, con el eje OV coincidente con el eje OY, a Figura 3.5, Sistema de reteroncia OXYZ y soldaro al objeto OUVW. 86 Fundamentos de robstica vendré representada mediante la matrz: cosh 0 seng Ry.=| 0 1 0 Bo sen 0 cos En Ia Figura 3.6-b, la orientacién del sistema OUVW, con el eje OW coincidente con el cje OZ, vvendri representada mediante la matt: cos@ —sen® 0 R(z,0)=|sen@ cosd 0 3.10) 0 of; Figura 3.6, Rotacién dl sistema OUVW con respecto a los e)es OY y OZ. Estas tres matrices, ecuaciones [3.8], [3.9] y [3.10], se denominan matrices basicas de rotacién de tun sistema espacial de tres dimensiones. ‘Composicién de rotaciones Las matrices de rotacién pueden componerse para expresar Ia aplicacién continua de varias rotaciones, Asi, si al sistema OUVW se le aplica una rotacin de dngulo sobre OX, seguida de una rotacidn de Angulo sobre OY y de una rotacién de dngulo @ sobre OZ, la rotacidn global puede expresarse como: Herramientas mateméticas 57 ce -se olf co o splfi o 0 T=RZE)Ry,g)R~,0)=|S6 co o|] 0 1 0/0 Ca -sa|= © 0 1J[-Se 0 co}lo sa ca cece -seca+cessa sasa+ceseca) ' =|S0Co CACa+SES9Sa -COSa+S0SECa -S6 CoSer Coco. onde C8 expresa cos6 y S@ expresa sen6. Es importante considerar el orden en que se realizan las rotaciones, pues el producto de matrices no ‘sconmutativo. Asi, sila rotacién se hiciera primero un singulo 0 sobre OZ, seguida de una rotacién de Gngalo ¢ sobre OY, para finalizar con otra rotacién de angulo a sobre OX, la rotacién global vendria expresada por: 1 0 0 ]fce 0 selfce -se o T=R(x,@)R(y,0)R(z,8) =|0 Ca -Sal} 0 1 0||S8 CB Ol= 0 sa ca |l-se o cello o 1 cece case so =| SaSeCe+Cas@ -SaS9s8+CaCe -SaCo ~CuS§CO+SaSE CaS~SE+SaCe —_CacH B12) que como se aprecia difiere en gran medida de ta anterior. Un estudio mis detallado sobre la composicién de rotaciones, aunque aplicado al caso més general de matrices de transformacién homogénea, se puede encontrar en el epigrafe 3.3.5. 3.2.2. Angulos de Euler ‘ara Ia representacién de orientacidn en un espacio tridimensional mediante un matriz. de rotacién es necesario definir mueve elementos. Aunque la utilizacién de las matrices de rotacién presente multiples venlajas, como se verd en el siguiente epigrafe, existen otros métodos de definicién de orientacién que hacen tinicamente uso de tres componentes para su descripcién. Este es el caso de los llamados dngulos de Euler. Todo sistema OUVW solidario al cuerpo cuya orientacién se quiere describir, puede definirse con respecto al sistema OXYZ mediante tres dngulos: 440,41, denominados dngulos de Euler. Girando sucesivamente el sistema OXYZ sobre unos ejes determinados de un triedro ortonormal los valores de 0.8.y, se obtendré el sisterna OUVW. Es necesario, por tanto, conocer ademiis de los valores de los 88 Fundamentos de robotica Jangulos, cuiles son las ejes sobre los que se realizan los giros. Existen diversas posibilidades (24 formalmente definidas),siendo las tres mAs usuales las que se muestran a continuacién: zyww UX yu" Figura 3.7, Angulos de Euler 2X2. Angulos de Euler 2X7, Es una de las representaciones ms habituales entre las que realzan los giros sobre cjespreviamente sicalos. Se le suele asciar con los movimienos bisios de un gréscopo, Si se parte de los sistem OXYZ y OUVW, inicialmente coincdentes, se puede colocar al sistema OUVW en cine orientaciOn siguiendo los siguientes pasos, (Figura 3.7.) 1. Girar el sistema OUVW un dngulo @ con respecto al eje OZ, convirtiéndose asi en ef OUV'W 2. Girar el sistema OU'V'W' un dngulo © con respecto al eje OU’, convirtigndose asi en et ouvw". 3. Girar el sistema OU'V elou"v"w" "W" un dngulo con respecto al eje OW" convirtiéndose finalmente en Es importante que estas operaciones se realicen en la secuencia especificada, pues las operaciones de _sros consecutivos sobre ejes no son conmutativas. Angulos de Euler ZYZ, Es otra de las representaciones mis habituales entre las que realizan los giros sobre ejes previamente girados, S6lo se difere ia del anterior en la eleccién del eje sobre el que se realiza el segundo giro. Sis Herramientas matematicas 59 Figura 3.8, Angulos de Euler 2¥2. pate de Ios sistemas OXYZ. y OUVW, inicialmente coincidentes, se puede colocar al sistema OUVW en ‘cualquier orientacién siguiendo los siguientes pasos. (Figura 3.8.) 1. Girar el sistema OUVW un dingulo 4 con respecto al eje OZ, convirtiéndose asi en el OU'V'W" 2. Girar el sistema OU'V'W' un dngulo @ con respecto al eje OV’, convirtigndose asi en el sistema ouv-w" 3, Girar el sistema OU"'V"'W"" un dngulo y con respecto al eje OW", convirtiéndose finalmente enelOU"V"W™. Como antes, es preciso considerar que el orden de los giros no es conmutativo, Roll, pitch and yaw (alabeo, eabeceo y guifiada) Se tata de la representacién utilizada generalmente en aerondutica. Es también la mi habitual de entre las que se aplican alos giros sobre los ejes del sistema fijo. Si se parte de los sistemas OXYZ. y OUVW, al igual que en el caso anterior, se puede colocar al sistema OUVW en cualquier orientacién siguiendo Ios siguientes pasos. (Figura 3.9.) 1. Girar ef sistema OUVW un dngulo y con respecto al eje OX. Es el denominado Yaw o guifla- da 2. Girar l sistema OUVW un dngulo O con respecto al eje OY. Es el denominado Pitch o cabe- 3. Girar el sistema OUVW tun dingulo ¢ con respecto al eje OZ. Es el denominado Rollo alabeo. 60. Fundamentos de robética Figura 3.9. Angulos de Euler: ol pitch y yaw. Aligual que en los casos anteriores, y en general siempre que se concatenan varios gros seguidos, es necesario considerar que no se trata de una transformacién conmutativa, debiéndose seguir una sccuencia determinada de aplicacién de los mismos. Figura 3.10. Representacion de oriantacién por eje y éngulo de giro (par de rotacién. 62 Fundamentos de robstica 3.3, MATRICES DE TRANSFORMACION HOMOGENEA En los epigrafes anteriores se han estudiado distintos métodos de representar la pasicién o la orientacién de un sGlido en el espacio, Pero ninguno de estos métodos por sf solo permite una representacion conjunta de la posicién y de la orientacién (localizacién). Para solventar este problema se introdujeron las denominadas coordenadas homogéneas, 3.3.1. Coordenadas y matrices homogéneas La representacién mediante coordenadas homogéneas de la localizacién de sélides en un espacio a dimensional se realiza a través de coordenadas de un espacio (n#1)-dimensional. Es decir, un espacio dimensional se encuentra representado en coordenadas homogéneas por (n+1) dimensiones, de tal forma que un vector p(ty.c) vendri representado por plw,w,w2w), donde w tiene un valor arbitrario y representa un factor de escala, De forma general, un vector p = ai + bj + ck, donde i, j y K som los vectores unitarios de los ejes OX, OY y OZ del sistema de referencia OXYZ, se representa en ‘coordenadas homogéneas mediante el vector colunana! bw| |b ellesltte 13.16) Por ejemplo, ef vector 21+ 3) + 4k se puede representar en coordenadas homogsneas como (2.34.1) © como [4,6,8,2}" o también como [-6,-9.-12,-3]', ete. Los vectores nulo se representan como (0.0.0. donde 1 es no-nulo, Los vectores de la forma {a.b,.01" sirven para representar direcciones, pues representanvectores de longitud infinita A partir de la definicicn de las coordenadas homogéncas surge inmediatamente el concepto de matiz de tansformacin homogénea. Se define como matriz de transformacién homogénea Ta una matic de dimensién 4 x 4 que representa la transformacién de un vector de coordenadas homogéneas de un sistema de eoordenadas aot. 171 ae i epee ee fir Won) LPerspectiva Bscalado Herramientas matemiticas 63 Se puede considerar que una matriz homogénea se haya compuesta por cuatro submatrices de distnto lamafio: una submatriz Ryq que coresponde a una matriz de rotacién; una submatriz py; que comesponde al vector de traslacicn; una submatriz f,s que representa una transformacién de perspectiva, yuna submattiz w)«) que representa un escalado global. En robstica generalmente sélo interesari ‘conocer el valor de Ris ¥ de Pax, considerdndose las componentes de fxs nulas y Ta de wy, la unidad, sungue rs adelante se estudia su ulilidad en otros campos. Al tratarse de una matriz 4 x 4, los veetores sobre los que se aplique deberdn contar con 4 dimensiones, que seran las coordenadas homogéneas del vector tridimensional de que se trate 33.2. Aplicacién de las matrices homogéneas Si como se ha mencionado, se considera la transformacién de perspectiva nula y el escalado global untario, a matriz homogénea T resultari ser de la siguiente forma: (3.18) Roe Pha] [Rotaciin Traslacién o ul ® 1 que representa la orientacién y posicién de un sistema O'UVW rotado y trasladado con respect al sistema de referencia OXYZ. Esta matriz sirve para conocer las coordenadas (r,.r;.1,) del vector Fen el sistema OXYZ a partir de sus coordenadas (r,,74.74) eM el sistema OXYZ: n n T B19) ‘También se puede utilizar para expresar la rotacidn y traslacion de un vector respecto de un sistem 4 referencia fijo OXYZ, de tal manera que un vector Fy rotado segtin Rss y trasladado segtin Py se convieste en el vector F’y, dado por: (3.20) En resumen, una matri2 de transformacin homogénea se puede aplicar para: 64 Fundamentos de robotica 1. Representar la posicién y orientacidn de un sistema girado y trasladado O'UVW con respecto a tun sistema fijo de referencia OXYZ, que es lo mismo que representar una rotaeién y traslacién realizada sobre un sistema de referencia. 2. ‘Transformar tn vector expresado en coordenadas con respecto a un sistema O'UVW, a su ex: presidn en coordenadas del sistema de referencia OXYZ, 3. Rotary trasladar un vector con respecto a um sistema de referencia fijo OXYZ. Se hace notar que se utilizan coordenadas homogéneas con factor de escalado la unidad, y que por tanto los vectores que intervienen en las transformaciones han de poseer cuatro componentes. Por comodidad, se eligeel factor de escalado w = A continuacién se va a analizar con detalle el empleo de las matrices homogéneas como herramienta para representar la localizacién de objetos en el espacio tridimensional, asi como para realizar proyecciones y escalados. ‘Traslacién Supéngase que el sistema O'UVW iinicamente se encuentra trasladado un vector p = pal + pj + pik con respecto al sistema OXYZ. La matriz T entonces corresponderd a una matriz homogénea de traslacidn: 100 p, 010 p B21 ool, 0 ° 1 {que es la denominada matriz bisica de traslacién, Un vector cualquiera r, representado en el sistema OUVW por fw, tendrii como componentes del vector con respecto al sistema OXYZ: 0 Plime] frotry 0 pllr| Jren, 1 0 = 3.22 P|] rw retP, Bal Herramientas mateméticas 68 ‘Yasu vez, un vector ry, desplazado segin T tendré como componentes Psy 100 pJfr] [rer 010 ally] tree, = = 3.23 001 plfr| free, BS) 1} [ooo aslt 1 Segin la Figura 3.11 el sistema O'UVW esté trasladado un vector p(6,-3.8) con respecto del siste- 1m OXYZ. Calcular las coordenadas (7, r,,72) del vector F cuyas coordenadas con respecto al sis- tema OUVW son Faoe(-2,7.3) Figura 3.11, Figura del Ejomplo 3.1. Aplicando la ecuacién [3.22] se obtiene: rn] flO 0 6]f-2] [4 66 Fundamentos de robstica Ejemplo 3.2. Caleular el vector r’yy,resultante de trasladar al vector Fiye(4,4,11) segsin Ia transformacién Tip) con p(6,-3,8) (ver Figura 3.12) 19 Figura 3.12, Figura del Ejemplo 82. Aplicando la ecuacién [3.23] se obtiene: Rotacién Supéngase ahora que el sistema OUVW solo se encuentra rotado con respeeto al sistema OXYZ. La suubmatriz de rotaciGn Ry serd la que defina la rotacién, y se corresponde al tipo matriz de rotacién presentada en el epigrafe 3.2.1. De igual forma que se hacfa alli, se pueden definir tres matrices hhomogéneas baisicas de rotacién segiin se realice ésta segin cada uno de las tes ejes coordenados OX, OY y OZ del sistema de referencia OXYZ: Herramientas mateméticas 67 1 0 00 © cose, -senar 0 T(x,a)= (3.24) © sene cosa 0 0 oO O14 send 0 0 0 cosp 0 (25) oo cosd —sen0 0 0 (es cod 0 0 ;o 0 10 ” Lo 0 01 Un vector cualquiera r, representado en el sistema girado O'UVW por ty, tendri como components (a.45, 72) eneel sistema OXYZ las siguientes: Bam 13.28) Herramientas mateméticas 69 - Figura 3.14, Distntos sistemas finales sogun el orden de las transtormaciones. La traslacién y la rotacién son transformaciones que se realizan en relacién a un sistema de referencia, Por lo (anto, si se quiere expresar la posicién y orientacién de un sistema OUVW, originalmente coincidente con el de referencia y que ha sido rotado y trasladado segiin éste, habré que fener en cuenta si primero se ha realizado la rotacidn y después la traslacién o Viceversa, pues se trata de transformaciones espaciales no conmutativas. En la Figura 3.14 se demuestra esta no conmutatividad de forma grifica, Se parte de un sistema OUVW coincidente con OXYZ al que se va a aplicar una tralacion segin un vector Pay, y una rotaciéin de 180° alrededor del eje OZ. Si primero se rota y después se traslada se obtiene un sistema final O'U'V'W". En cambio, si primero se traslada y después se rota se obtiene otro sistema final O"U"V"W", que representa una localizacidn totalmente distinta a la del sistema final anterior, Se tendré, por tanto, matrices homogéneas distintas segtin se realice una traslacién seguida de rotacién o una rotacién seguida de traslacion, Rotacidn seguida de traslacién Para el caso de realizar primero una rotacién sobre uno de los ejes coordenados del sistema OXYZ seguida de una traslacion, las matrices homogéneas serdn las que a continuacidn se expresan: Rotacién de un ngulo a sobre el eje OX seguido de un traslacién de vector Paya: 10 0 £¢ 0 cosa —sene p, © sena cosa p, oo Oo 4 T((x,«),p) = 8.29] 70 Fundamentos de robotica Rotacién de un angulo sobre el eje OY seguido de una trastacion de vector Pay, [ cosp 0 send p, 0 1 0 » TI * 3. 30) ((y.0).p) mse 0 cos p B.30) 0 0 0 1 Rotacin de un dngulo 8 sobre el eje OZ seguido de una taslacién de vector Pas cos8 send 0 p, send cosd 0 p, 1((c.0),p) = (@)P)=\ 9 gp Ban 0 CO) G1 ‘Traslacién seguida de rotacién Para el caso de realizar primero una traslacién seguida de una rotacién sobre los ejes coordenados del sistema OXYZ, las matrices homogéneas resultantes son las siguientes: Traslacidn de vector p, y2 Seguida de rotacidn de un angulo a sobre el eje OX. 10 o@ ?, © cosa ~senor p,coscr~ p,sencr W{p.(4.0)) = 3.32 ‘p..a) O sena cosa, p,seno. + p,coscr B33) 00 0 1 Traslacion de vector Puy, Seguida de rotacién de un inglo sobre el eje OY. j cos 0 senp p,cosd+ p,seno | o 10 P, T(p.ly.9)) Bx seng 0 cos p,cosh— p, send 0 0 0 1 Herramientas mateméticas T1 ‘Traslacion de vector pa. Seguida de rotacion de un ingulo 8 sobre el eje OZ. cos -sen@ 0 p,cosd~p, send ° sen@ cos® 0 p,senO +P,cos6 B34) 1 0 Te.@9))=|"y yg » o 0 1 Ejemplo Un sistema OUVW ha sido girado 90° alrededor del eje OX y posteriormente trasladado un vector p(8,4,12) con respecto al sistema OXYZ (Figura 3.15). Calcular las coordenadas (775.72) del vector r eon coordenadas Five (3,411). Figura 3.15. Sistemas de referencia del Ejemplo 3.6. Utilizando la matriz de la expresién [3.29] se tendri 10 -3] [5 r,|_]o 0 4} |7 | (0 1 11] "| 16 1} loo o sfti) io 72 Fundamentos de robética Ejemplo Un sistema OUVW ha sido trasladado un vector p(8,-4,12) con respecto al sistema OXYZ.y girado 90° alrededor del eje OX (Figura 3.16). Caleular las coordenadas (75, r,. r) del vector ¥ de coor- denadas fore -3,4,-11). Figura 3.16. Stuacién de los sistemas de referencia del Ejomplo 3.6. Utilizando la matriz de la expresién [3.32] se obtiene: mn] flo 0 81-3] 7s ry) [0 0 -1 -12]] 4 nl} lo 1 0 -4|]-11]>]o0 1} loo o a itt 1 Perspectiva y esealado Las matrices homogéneas también se pueden aplicar para la realizacién de un escalado de las componentes de un vector. Bastari utilizar una matrizT del tipo: Herramientas matemdticas 73 13.39] ence -eccs Sees Cualquier vector r(a.:2) puede ser transformado en el vector r(andy.cz). También se puede realizar unescalado global de las tres componentes mediante la matriz: 13. 36] eeen eo-°o e-co eco através de la cual, utilizando la definicién de coordenadas homogéneas, cualquier vector r(xy.z) puede | sertransformado en un vector r(s.9/,2/) | Una aplicacion mis de las matrices homogéneas es la transformacion de perspectiva. Supongase una lene situada sobre el plano OXZ. con distancia focal f situada sobre el eje OY (Figura 3.17). Se puede comprobar que el punto r(x.) se ve en el plano de la lente como un punto r'(x,y'2) cuyas coordenadas sienen dadas por la siguiente expresion: B37) sta transformacién, denominada de perspectiva, puede reslizarse através de una matriz homogénea deltipo [FU-88]: x] fl 0 0 Ofx] ‘| |o 1 0 Olly 0 0 1 Olle (3.38) 1} jo -r o afi Para las aplicaciones en robética de las matrices homogéneas, se supone que no existe ninguna ‘ransformacién de perspectiva y que el escalado es siempre unitario, 14 Fundamentos de robética Objeto real Foco de lente Y Figura 3.17, Transtormacion de perspectva, 3. Significado geométrico de las matrices homogéneas Como ya se ha descrito, una matriz homogénca sirve para transformar un vector expresado en coordenadas omogéneas con respecto a un sistema O'UVW, a su expresidn en las coordenadas del sistema de referencia OXYZ, También se puede utilizar para rotar y girar un vector referido a un sistema de referencia fijo, y en definitiva sirve para expresar Ia orientacién y posicion de un sistema de referencia OUVW con respecto a otro fijo OXYZ, {La matriz T de transformacion se suele escribir de la siguiente forma: [no a Py jn, 0, a, p,| [mo a pl of vf P| mo a P| Lo 00 1 loo 01 (3.39) donde n.o,a es una tema ortonormal que representa la orientacién y p es un veetor que representa la posicidn, Herramientas mateméticas 78 Si se considera un vector Fon. = [0.0,0,1]", es decir, el origen del sistema O'UVW, la aplicacién de la rmatiz T que representa la transformacién (traslacién + rotacién) de O'UVW con respect a OXYZ, se obiene Faye 0) fr no a pli) |p, 000 "| con (3.40) {que coincide con el vector columna p de T. Por tanto, este vector columna representa la posicién del «_atigen de OUVW con respecto del sistema OXYZ. | Si, de igual manera, se considera el vector de coordenadas homogéneas (1,0.0,1]" con respecto del {sistema OUVW, es decir, el vector director del eje coordenado O'U del sistema O'UVW, y suponiendo el vector p de traslacién nullo, se tendri ‘| [m o: a. Ppl] [ae ry|_ | 0) ay Py (| ny nO a P, 0)” 000 " ° B41) [1 Es decir, el vector columna m representa Jas coordenadas del eje OU del sistema O'UVW con respecto del sistema OXYZ. De igual forma, si se realiza la transformacion de los vectores (0,1.0,1]" y [00.1,17" referidos al sistema O'UVW, se obtiene que el vector columna o representa las coordenadas dl eje OY del sistema O'UVW con respecto del sistema OXYZ, y que el vector columna a representa las coordenaclas del eje O'W del sistema O'UVW con respecto del sistema OXYZ. Consecuentemente, los vectores n, © y a definen una terna ortonormal a derechas, 1o que significa ue {nl = [lol axo tal=1 al Como ya se vio cuando se explicé la matriz de rotacién, la submatriz de rotacién [n,0,a] corresponde ‘auna mattiz ortonormal, que cumple que: [no al'= [no af 5.83) 16 Fundamentos de robstica La matriz inversa de la matriz homogénea de transformacion Tes fécilmente obtenible, y corresponde a la siguiente expresion: My my om —n"p oy ~o'p : 13.44] a dy a ~a'p ooo 1 Siise tiene la relacién ty.=T tue y Se multiplica en ambos miembros por T'. se tiene: T'r, ne (3.45) por lo que, realizando e! mismo proceso que se hizo anteriormente, se deduce que los vectores fila de la submatriz de rotacién de la matriz T (vectores columna de la submattiz de rotacién de T"), representan los ejes principales del sistema de coordenadas de referencia OXYZ. con respecto a OUVW. Es decir, los vectores fila. de la matriz [n 0 a] representan otra tema ortonormal a derechas, 3. Composicién de matrices homogéneas Anteriormente se ha mencionado que una matriz de transformacién homogénea sitve, entre otras cosas, para representar el giro y Ja traslacién realizados sobre un sistema de referencia. Esta utilidad de las ‘nutrices homogéneas cobra atin mis importancia cuando se componen las matrices homogeneas par escribir diversos gitos y (raslaciones consecutivos sobre un sistema de referencia determinado De esta forma, una iransformacién compleja podra descomponerse en la aplicacién consecutiva de transformaciones simples (giros basicos y traslaciones). Por ejemplo, una matriz que representa un giro de un éngulo « sobre el eje OX, seguido de un giro de ‘ingulo sobre el eje OY y de un giro de un dngulo 6 sobre el eje OZ, puede obtenerse por la ‘composicién de las matrices basicas de rotacién: co -se 0 Of co 0 10 o O. > ; 88 C8 0 of} 0 1 0 Of/0 ca -se o|_ T=TAOTYNTHGD=| 9 9 1 9 -Sd 0 Ce O}/0 Sa Ca y 0 o 0 oto Oe CoCo -SeCu+COSSa SeSa+CASICA 0 S0CO —COCa+SBSGSa - COS +SOSECa 0 =so Cosa coco ° ° ° 4 Herramientas mateméticas 77 Debido a que el producto de matrices no es conmutativo, tampoco lo es la composicién de transformaciones. Si se invierte el orden de aplicacién de las transformaciones, el resultado es, Hbgicamente, distinto: 10 0 ojfce o se ojfce -so 0 o 0 ca -sa ol] 0 1 0 ollse co 00 T= Mx.) Ty.9) TH) = 0 Sa Ca 0||~s¢ 0 ce offo o 1 of” oo 0 ilo oo iho 0 O14} gay owe ~C9s0 spo SoS#CO+CaS# ~SaS9S0+CaCa -Sace Oo} © |=CoS#CO+SaS0 CoS#S8+SuCB Cacp 0 ° o o 1 Bjemplo 3. Se quiere obtener la matriz de transformacién que representa al sistema OUVW obtenido a partir 4el sistema OXYZ mediante un giro de Angulo -90° alrededor del eje OX, de una traslacién de vector Pry(5.5,10) y un giro de 90° sobre el eje OZ. Para ello bastara multiplicar en el orden adecuado las diferentes matrices basicas: 0-10 o}f1 00 s]f1 0 0 o} fo o -1 1 e100" sory! 9 0 off0 10 silo o 10] |r 0 0 STAM ITT =\4 9 1 o]o 0 1 10\]0 -1 0 of=]o -1 0 10 0 0 otjlooo ijlo o oi} foo o 7 En los ejemplos vistos anteriormente los ejes sobre los que se realizaban las operaciones corespondian al sistema fijo de referencia OXYZ. También es posible componer matrices de ‘nnsformacién de manera que las operaciones estén referidas en todo momento al sistema que esté roviéndose. Para ello bastard unicamente con ir concatenando matrices en orden inverso, Por ejemplo, nla siguiente ecuacién 78 Fundamentos de robotica 1 0 0 O}fcp 0 sp o}[co -so 0 0 T=TRAITWTOWO=!5 so cu ol|-se 0 co allo o 1 ol bo Spee LS oo) wm coco — cose sp 0 SoSGCB+ CaS -SeS9S8+CaCB ~SoCy 0 ~|-C8CaS6+SaS@ CaS9s0+SaCce@ Caco 0 0 o oo4 se muestra una matriz que representa un giro de angulo « sobre el eje OX del sistema fijo OXY2, seguido de un giro de valor ¢p sobre el eje OV y un giro de dngulo @ sobre el eje OW del sistema en movimiento OUVW. Comparar con la matriz de la ecuaciOn [3.46], que representa las misinas ‘ransformaciones referidas a los ejes de un sistema OXYZ.fijo de referencia Ejemplo 3.7. Obtener la matriz de transformacién que representa las siguientes wansformaciones sobre um siste- na OXYZ fijo de referencia: traslacién de un vector Pyyx(-3,10,10); giro de -90° sobre el eje OU del sistema trastadado y giro de 90° sobre el eje O'V del sistema girado. ‘Se escogen las matrices biisicas correspondientes y se componen en orden inverso al ejemplo anterior, 100 -3}f1 0 0 olfo 01 g 010 1//0 0 1 ol]o 100 T=TpIT U9) =|) 4 1 olla -1 0 oll-r 0 0 olm ooo sj oo lo oo lo oo 4 De forma general, a a hora de componer diversas transformaciones mediante matrices homogéneas, se han de tener en cuenta los siguientes criterios: 1. Sil sistema fijo OXYZ y el sistema transformado O'UVW son coincidentes, la matri2. homo génea de transformacién sera la matriz 4 x 4 identidad, I 2. Si el sistema O'UVW se obtiene mediante rotaciénes y trastaciones definidas con respecto al sistema fijo OXYZ, la matriz. homogénea que representa cada transformacién se deberd pre smultiplicar sobre las matrices de las transformaciones previas, I : | ' i | | Herramientas mateméticas 79 3, Si el sistema O'UVW se obticne mediante rotaciones y traslaciones definidas con respecto al sistema mévil, la matriz homogénea que representa cada transformacién se deberd postmultipl car sobre las matrices de las transformaciones previas. Siguiendo estas indicaciones, cualquier composicién de matrices homogéneas puede estudiarse como si se realiza cada transformacién con respecto al sistema fijo 0 se realiza cada transformacién con respecto al sistema movil Por ejemplo, la translormacién: T= T(x,a) T(2,0)T1y.9) B49] pede verse como una rotacién de & sobre OY, seguida de una rotacién @ sobre OZ. y de una rotacion « sobre OX del sistema fijo. O también puede verse eémo una rotaciGn «sobre el eje OU, seguida de una roiacién 0 sobre el eje OW y de una rotacién ¢} sobre el eje OV del sistema que estd siendo tansformado, Figura 3.18. Ejemplo de aplicacién de diversas transtormaciones para localizar un objeto. 80 Fundamentos de robitica 3.3.5. Graficos de transformacién. Es frecuente encontrar situaciones en las que la localizacién espacial de un objeto o de su sistema de referencia asociado, pueda realizarse a través de la composicién de diversas transformaciones distintas, En la Figura 3.18 se tiene un manipulador cuya base esta referida al sistema de! mundo OXYZ mediante la transformacién "Ty. A su vez, para pasar de la base del manipulador a su extremo se utiliza le transformacién "Ty, El extremo de Ia herramienta estd referido con respecto al extremo del manipulador por la transformacion "Ty, A su vez, un objeto estd referido con respecto al sistema OXYZ, mediante la transformacién "To, y por ultimo, el extremo de la herramicnta esté referide con respecto al objeto a través de la transformacién “Ty, Se observa que el final de la herramienta puede ser referido con respecto al sistema OXYZ de dos ‘maneras distintas: a través del manipulador y a través del objeto. De tal manera que se puede escribir: “Te ®Te T= “To Ts (3. 50) Figura 3.19. Gratico oe transtormacién Esta relacidn se puede representar mediante un grifico de transformacién como el de la Figura 3.19 (Pau-81]. De tal manera que si se quiere obtener la relacién entre el objeto y la herramienta bastaré ‘multiplicar ambos miembros de la ecuacién anterior por "Tg obtenicndose: (MTo)" "Te *Te Tu= OTH B.si) Cualquier otra relacién puede ser obtenida ficilmente a partir del grafico, Pata ello se ird desde el jbjeto inicial al final multiplicando las matrices de transformacién correspondiente a los arcos del rico, y considerando que de recorrerse éstos en el sentido inverso a las flechas deberd wtilizarse una ‘matriz inversa. As‘ la relacién entre la base del robot y el objeto vendra dada por: *Te *Tu( Ty, Herramientas mateméticas 81 bien por: *To=("Tr) 3.4. APLICACION DE LOS CUATERNIOS Enel epigrafe 3.2.4 se definid de forma genérica lo que es un cuaternio. A continuacién se describe et algebra de cuaternios y las aplicaciones en las que la utilizaciGn de cuaterios supone una ventaja sustancial sobre otros métodos de descripeién espacial, 34.1. Algebra de cuaternios Un cuaternio esté formado por cuatro componentes (ququ4ag:) que representan las coordenadas del cuaternio en una base {@yiK}. Qa det qitajtak =(s¥) (3.52) Sobre los elementos de Ia base se define una ley de composicién intema © (producto) segin se ‘mucstra en la Tabla 3.1. De este modo los cuateraios forman un grupo ciclico de orden cuatro, A cantinuaciSn se describen algunas propiedades tities de los cuaternios a la hora de su wiizacién para realizar transformaciones “Tabla 3.1. Ley de composicién interna de los cuaterios Cuaternio conjugado A todo cuatemio Q se le puede asociar su conjugado Q", en el que se mantiene el signo de la parte ‘scalar y se invierteel de la vectorial 82 Fundamentos de robética a= (s-¥) 13.53] Operaciones algebréicas ‘Se definen tres operaciones algebricas sobre los cuaternios: producto, suma y producto con un escalr. EI] producto de dos cuaternios Qi y Qa que va a ser muy atil para la composicién de transformaciones, puede decucirse de la Tabla 3.1. y viene dado por: Gr, )ol..¥)= (i Wven Xe #5,¥¢4%) 58) Se observa que no se trata de un producto conmutativo, Si se expresa componente a componente: 40 = F020 (4114a1 41242 #404) 4 = Yo a1* 990 W299 Ayden (3. 35] Iz = Wo Fan + V2 420 + Tis — Ms Fy x3 = Vo Fas F V1 Fa9 F Wi Fn2~ Vir La suma de dos cuatemios Q, y Qs se define come: Q=Q+Q,=(5.4)) (5.42) =65) 52,4) +¥2) (3.56) rmicnzas que el producto por un escalar es Q.=aQ, = als,.¥,) =(as,.av,) 3.57) EL producto de cuatemios es por tanto asocativo aunque no conmutatve Norma ¢ inverso Segin la definicin del cuaternio conjugado y la de producto de cuaternios, se deduce que: QeV=(2eai rar rare 13.58] Al nrimero real (qo’ + gi? + 43? + 43%)" se le denomina norma de Q_y se representa por [Q]. 6) inverso de un cuaternio puede hallarse mediante la expresi6n: Q (3.59) =o ial siempre y cuando se trate de un custernio no nulo. Herramientas mateméticas 83 34.2. Utilizacién de los cuaternios Las propiedades expuestas propician cl uso de los cuaternios para la representacion y composicion de rotaciones. Para ello, primeramente se define aquel cuaternio que represente un giro de valor @ sobre un sek como: 8 8 Q= Rot(k,8) = (cos$.x send) 3.60) Ejemplo 3. Obtener el cuatemio que representa una rotacién de 90° sobre el eje k(3,-2,1). Aplicando la ecuacién (3.60) Q= Rot(k,90°) En segundo lugar, la aplicacién de la rotacién expresada por el cuaternio Q a un vector r, vendri efinida por el producto: Qe(0,r)oQ" 3.61] Ejemplo 3. Obtener el vector F* resultante de aplicar la misma rotacién del Ejemplo 3.8. Rot(k,90°) donde K(3,-2,1), sobre el vector #(5,2,-6). Aplicando la ecuacién [3.61] se obtione el vector F (Eola! B)oosacn (Sf we AP 2 La composicién de rotaciones con cuaternios resulta tan sencilla como multiplicar cuaternios entre si De tal forma que el resultado de rotar segin el cuaternio Q,, para posteriormente rotar segtin Qs, ¢s el mismo que el de rotar segtin Qs, obtenido por la expresidn: 84 Fundamentos de robética 1.6) Es importante tener en cuenta el orden de multiplicacién, pues como se ha mencionado, el producto de enaternios no es conmutative, En el caso de componer rotaciones con traslaciones se procede como sigue: el resultado de aplcar una traslacién de vector p seguida de una rotacién Q al sistema OXYZ, es un nuevo sistema OUVW, ta que las coordenadas de un vector r en el sistema OXYZ, conocidas en OUVW, seri: (0% 2) = Qe Ore )eQ +n) Ba} El resultado de primero rotar y luego trasladar al sistema vendrd dado por: (0.r.)= Qe (0. +P)°Q 1.64) Si se mantiene el sistema OXYZ, fijo y se traskada el vector F segin p y Iuego se Te rota segin Q se obtendté el vector F" de coordenadas: (r)=Q0(.r+p)2Q" 1.65) Y si se aplica primero el giro y despues la traslacidn p al vector r, éste se convert en el ra través de la expresién .r) = Q0(0.r)°Q' +p) (3.68) Se observa que el empleo de cuatermios para la composicion de rotaciones es un méiods computacionalmente muy prictico, pues basta muitiplicar cuaterios entre sf, fo que corresponde a unt expresion de productos y sumas muy simple. Esta es su principal ventaja, tal y como se verd en lt comparacién de los distintos métodos, 3.5. RELACION Y COMPARACION DE LOCALIZACION ESPACIAL ‘TRE LOS DISTINTOS METODOS En los epigrafes anteriores se han explicado una serie de métodos para poder realizar la localizacién espacial de un solido y de su sistema de referencia asociado. Cada uno de ellos presenta una serie de ccaracteristicas que le hacen mAs 0 menos apto para una determinada aplicacién. Asi, algunos sélo sir Herramientas mateméticas 88 pera la representacién de orientacién, mientras otros, por ejemplo, son especialmente iitiles para la composicién de rotaciones. En este apartado se analizan las ventajas e inconvenientes de cada uno de ellos, adems de estudiar cémo se puede realizar el paso, cuando éste es posible, de uno a otro, 35.1. Comparacién de métodos de localizacién espacial En un principio todos los métodos expuestos son equivalentes, pero dependiendo del uso que se vaya a hacer, sera més adecuado emplear un procedimiento w otro, La comparacién se realiza fundamentalmente en razn a su capacidad para la realizacién de cuatro ‘vestiones baisicas de toda transformacion, 1. Capacidad de representacién conjunta de posicién y orientacién 2, Representar Ia posicién y orientacién de un sistema rotado y trasladado O'UVW con respecto a tun sistema fijo de referencia OXYZ. Que es lo mismo que representar una rotacion y traslacién realizada sobre un sistema de referencia, 3. Transformar un vector expresado en coordenadas con respecto a un sistema O'UVW, a su ex- presién en coordenadas de! sistema de referencia OXYZ. 4. Rotary trasladar un vector con respecto a un sistema de referencia fijo OXYZ. Matrices de transformacién homogénea Sus principales ventajas residen en su capacidad de representacién conjunta de posicién y orientacién y én Ja comodidad con la que se puede realizar la composicién de transformaciones, Para ello bastari Snicamente multiplicar, en el orden adecuado, las matrices de transformacién corespondicntes. Es posible, ademés, la aplicacién de una transformacion sobre un vector referido a un sistema fijo lnicamente maltiplicando la matriz de tansformacién correspondiente por el vector. Como principat inconveniente presenta su alto nivel de redundancia (necesita definir 12 componentes para solo 6 grados de libertad). Esto dificulta su implementacién en computador. Se trata del método mis popular, pues ademis de trabajar con matrices, cuya algebra es extensamente ‘conocida, es capaz de realizar las cuatro cuestiones apuntadas antetiormente. Angulos de Euler Los dngulos de Euler, en cualquiera de sus modalidades, solo son capaces de representar orientacién, y amue permiten tna notacién compacta (s6to tres niimeros reales), son dificiles de manejar para la composicién de rotaciones y para su aplicacién sobre un vector. Par de rotacién Elpar de rotacidn solo sirve para la representacin de orientaciones, Es eompacto, pues tinicamente usa ‘{parimnetros para ladefinicién de orientacién de un sistema con respecto a otro, Se puede aplica para la rotacion de un vector F un dngulo @ alrededor del eje k. Sin embargo, la composicién de rotaciones | Presenta una expresién complicada, lo que limita su utilizacién préctica en algunas aplicaciones. 86 Fundamentos de robética Cuaternios EI cuaternio, como tal, slo es capaz de representar la orientacién relativa de un sistema O'UVW con respecto a otto, a través del uso de cuatro componentes. Sin embargo, como se ha visto en 3.4.2, es posible componer rotaciones junto con traslaciones de forma bastante simple y computacionalmente ‘econdmica, Puede aplicarse también para la transformacién de un vector tanto en traslacion como en rotacion, 3.5.2. Rela in entre los distintos métodos de localizacién espacial Ya que los métodos vistos para Ia representacidn espacial son equivalentes, es decir, expresan lo mismo e forma distinta, deberd existir un modo de pasar de un tipo de representacion a otro, A continuacién se rmuestran las relaciones de paso que se utilizan mds frecuentemente. A través de ellas es posible pasar de tuna representacién a cualquier otta, aunque en algunos casos sea més cémodo utilizar una representaciéa auxiliar intermedia. Angulos de Euler: Matriz de transformacién homogénea, ‘Ya se ha mencionado en varias ocasiones que los angulos de Euler s6lo son capaces de realizar una representacién de la orientacién, Por ello, a Ta hora de obtener la matriz homogenea equivalente a un conjunto de dngulos de Euler dads, tinicamente quedara definida la submatriz de rotacién Ry. La obtencién de la matriz.homogénea correspondiente a cada conjunto de angulos de Euler es inmediata; bastard con componer las matrices que representan las rotaciones que definen los propios angulos: «Sistema ZXZ Este sistema responde, segtin el epfgrafe 3.2.2, a la composicidn de la siguiente secuencia de rotaciones: Texz = T(z.) T(U,0) Tew.) 3.67] que desarrollado en forma matricial: co -S9 0 O}f1 0 0 olfcy -sy 0 Sp Co 0 O//0 CB -S@ O|/Sy Cy 0 T=Te@)TwOIT}=|) 9 1 offo so co off o o 1 0 0 osfloo o ilo 0 0 Cécy -S9CoSy = Cesy-secacy S9S0_ o _|secw +cacasy sesy-+cecocy -c9se 0 ~ Sosy secy co 0 ° ° o 1 Herramientas matemdticas 87 # Sistema ZYZ Segin el epigrafe 3.2.2, el paso del sistema fijo al girado se hace realizando la siguiente secuencia de rotaciones: T=1(2.0)T(v,0)T(w,w) 3.65) ue desarolladoen forma matricial: ‘ce -S0 0 O}[. CB 0 Se Ol[cy -sy 0 OF _ _|8@ Ce 0 o]/ 0 1 0 ol]sy cy o of. Tetfeg)T.0)T(.¥) =) 4 0 1 ojf-se o ce olfo o 1 off 0 o oiflo oo lo 0 o4 13.70} ‘CeCOCY -SHSW -CECESY-SECY COSA 0} SECECY + COSY -SECBSY+CHCY SeSO 0 “| -secy sasy coo o 0 o 1 + RolkPitch-Yaw De igual forma que en los casos anteriores, estos 4ngulos de Euler se pueden representar mediante la concatenacién de las siguientes rotaciones: T (2,0) T(y,0) T(x, yw) B.711 yde forrna matricial: © -S9 0 o}fca o so ofr 0 0 o sc 0 0|] 0 1 0 olfo cy -sy o T=124)T.9TY)=| 9 9 1 ol|-so 0 co ollo sy cy ol” o o cillLo oo ilo o 0 1 (3.72) CeCe CosEsy-SeCy CoseCy+sesy 0 _|SeCO Sosesy+cgcy sesecy-cesy 0 -s0 cosy cocy ) 0 0 0 1 88 Fundamentos de robética Relacién inversa Fl paso de Ia representacién mediante matriz. homogénea a cualquiera de los conjuntos de dngulos de Buler vistos no es trivial, pues se necesita resolver una serie de ecuaciones trigonomeétricas acopladas, Par de rotacién: Matriz de transformaci homogénea Al igual que en el caso de los angulos de Euler, mediante un eje y dngulo de rotacién s6lo es posible representar orientacidn; de ahi que tinicamente quede definida la submatriz de rotacién Res de la matriz, hhomogénea de transformacién, Se quiere descomponer el giro de un dngulo @ alrededor del eje K(k.) en 1a composicién de rotaciones basicas que se puedan expresar mediante matrices basicas de rotacién. Esto se consigue realizando una serie de rotaciones para alinear el eje k con uno de Ios ejes coordenados, por ejemplo el OZ, girar el Angulo con respecto a él y deshacer las rotaciones previas hasta tener el vector k en su posicion inicial. Viendo la Figura 3.20, esto se consigue mediante la siguiente compasiciGn: T(k,6) = T(x.-a) Ty, 8) T(2.0)Tly.-B) T(x.01) 3.73) Y Figura 3.20. Angulo y ojo de rtacién, Herramientas mateméticas 89 ‘Teniendo en cuenta las siguientes relaciones: ky sena=—*—= cos Vk tke Vek (3.74) senB =k, cos = fk? +k? Expresindolo en forma matricial y sustituyendo en Ia ecuacién [3,73] se tiene la matriz homogénea {que expresa la rotacién alrededor del eje k de un angulo 0: K2VO+CO kA, sk, VO—k.S8 kk, VO+k, SO ga [kek VOR 88 BVOC kk, VO—K, 88 ~ kk, VO-k, S80 kk, VO+K.S8 — k2 VO+CB 0 0 0 13.75] -e00 donde V representa el término verseno definido como V8 = 1 - C8. Rel wersa Se quiere obtener un eje ky un dngulo @ de rotacién equivalente a la representacién de una rotacién mediante la matriz homogénea de rotacié: Me Ox a O a) mM 0: @: O (B761 1 ooo Se podrin igualar las matrices de las expresiones [3.75] [3.76] y realizar una equivalencia componente a componente. Considerando el dngulo @ como positivo entre 0° y 180°, se puede llegar a Jas siguientes expresiones tanto para el Angulo @ como para las componentes del vector B77) 90 Fundamentos de robética Cuando el dngulo 8 se acerca a 0° 0 a 180° aparecen problemas de indeterminacién en las ecuaciones anteriores. Por ello, en estos casos es necesario realizar otro tipo de aproximacién. Esta se describe con detalle en [PAUL-81] Par de rotacién: Cuaternios Relacién directa Por la propia definicién de cuaternios dada en el epigrafe 3.2.4, un cuaternio Q se puede expresar com é Q= (cos$.a sen (3.78) y componente a componente B75) Belacininversa La rela inversa se obteneficilmente de las anteriores expresiones 6 = 2arcos(a,) 4 a, 18.80) Toagt® * =qagyt aay (qo)? (=a) gy" Cuaternios: Matriz de transformacién homogénea E] paso de cuatemios a la matriz de transformacién homogénea, y viceversa, se pueden deducit ficilmente utilizando como representacién auxiliar intermedia el eje y angulo de rotacién. A ‘continuacion se expresan las relaciones finales, obviando los desarrollos intermedios que se puedes encontrar en (HAMILTON-69} Herramientas mateméticas 91 Relacién directa La representacion de la matriz de transformacién Ten funcién de las componentes de un cuatemio Q viene dada por la siguiente matriz [BEaGs-83]: GAG-F N42 %4o UI+I% 0 WEAN WEF 424-44 0 2 8.81) WWM LEAVUG GE oO oO o 1 Relacign inversa La relacién inversa se puede obtener ficilmente igualando la traza y los elementos de la diagonal Principal de la matriz (3.81] con la de la matriz [3.76]: a= h.+0,+0,+1) 1 a= syln-o,-4,+1 ! ‘ bnvoreet 13.82) i a=tYCnro-a.r1) I ot.) Tabla 3.2. Rolacién entre os métodos de localizacién espacial Matriz—Cuaternios Parde homopénea row Matric homogénea : ba Bm Custeraios oa - 13.80) Parderotacion (37511379) - Euler 2x2, 13.68) - . Euler 292, (370) : Euler RPY 1m - . 92 Fundamentos de robotica La Tabla 3.2 recoge de forma condensada las relaciones posibles entre los distintos métodos de localizacién espacial y cuiles son las expresiones que los relacionan. 3.6. BIBLIOGRAFIA [BaRRIENTOS-86] A. Barrientos, “Software de base para un robot de la segunda generaciGn”, en: Sis: tema operativo y lenguaje de programacién para robots dotados de sensores, Tesis Doctoral, DI- SAM, Universidad Politécnica de Madrid, 1986. [BEGGs-83] JS. Beggs, Kinematics, Springer Verlag, Berlin, 1983. [CoRKe-96] P.I Corke, “A Robotics Toolbox for Matlab”, IEEE Robotics & Automation Magazine, Vol. 3, no. 1, marzo 1996, [FU-88] Fu, KS., Gonzalez. R.C. y Lee, C.S.G., “Cinemiitica del brazo del robot”, en: Robdtica: con trol, deteccién, vision e inteligencia, McGraw-Hill, Madrid, 1988. [HaMILTON-69] Hamilton, W.R., Elements of Quaternions, Chelsea Publishing Co. New York, 1968. [Paut-81] Paul, R.P., “Homogeneous Transformations”, en: Robot Manipulators: Mathematics, Pro- gramming and Control, The MIT Press, Massachussets, 1981 Capitulo Sanaa Reve UNR CINEMATICA DEL ROBOT _ scanner Quien bien ata, bon desata, Refranero popular Lacinemiética del robot estudia el movimiento del mismo con respecto a un sistema de referencia. Asf, la cinemitica se interesa por la descripeién analttica de! movimiento espacial del robot como una funcién el tiempo, y en particular por las relaciones entre la posicién y la orientacién del extremo final del robot com los valores que toman sus coordenadas articulates Existen dos problemas fundamentales a resolver en la cinemitica del robot (Figura 4.1); el primero dz ellos se conoce como el problema cinematico directo, y consiste en determinar cual es la posi- «én y orientacién del extremo final del robot, con respecto a un sistema de coordenadas que se toma como referencia, conovidos los valores de las articulaciones y los pariimetros geométricos de los ele- ments del robot; el segundo, denominado problema cinemitico inverso, resuelve la configuracién que debe adoptar el robot para una posicién y orientacién del extremo conocidas. Denavit y Hartenberg propusieron un método sistemitico para deseribir y representar la geomettia «spacial de los elementos de una cadena cinemética, y en particular de un robot, con respecto a un sistema de referencia fijo. Este método utiliza una matriz de transformacién homogénea para describir |a relacién espacial entre dos elementos rigidos adyacentes, reduciéndose el problema cinemitico directo a encontrar una matriz de transformacién homogénea 4 x 4 que relacione la localizacidn espa- sial del extremo del robot con respecto al sistema de coordenadas de su base. Por otra parte, la cinematica del robot trata tambign de encontrar las relaciénes entre las velocida- es del movimiento de las articulaciones y las del extremo. Esta relacién viene dada por el modelo diferencial expresado mediante la matriz Jacobiana, 93 94 Fundamentos de robstica Cinemética directa Posicién y orientacion de! ‘extremo del robot Cinemética inversa oe) Figura 4.1. Diagrama de relacién entre cinematica directa e inversa, 4.1, EL PROBLEMA CINEMATICO DIRECTO. Como se a visto en el capitulo anterior, se utiliza fundamentalmente el dlgebra vectorial y matricial para representar y describir la localizacin de un objeto en el espacio tridimensional con respecto a un sistema de referencia fio. Dado que un robot se puede considerar como una cadena cinemitica formada por bjetos rigidos o eslabones unidos entre sf mediante artculaciones, se puede establecer un sistema de referencia fijo situado en la base del robot y describir la Tocalizacién de cada uno de los eslabones con respecto a dicho sistema de referencia. De esta forma, el problema cinemiético directo se reduce a ‘encontrar una matriz homogénea de transformacién T que relacione la posicién y orientacién del ‘extemo del robot respecto del sistema de referencia fijo situndo en la base del mismo, Esta matriz T ser funcin de las coordenadas artculares. 4.1.1. Resolucién del problema cinemitico directo mediante matrices de transformacién homogénea Laresolucin del problema cinemético directo consiste en encontrar las relaciones que permiten conocer la localizacién espacial del extremo del robot a partir de los valores de sus coordenadas articulares. ‘Asi, si se han escogido coordenadas cartesianas y &ngulos de Euler pare representar la posicign y crientacién del extremo de un robot de seis grados de libertad, la solucién al problema cinemitico describe la posicién y orientacién del segundo eslabén respecto del primero, etc. Del mismo modo, denominando "Ava las matrices resultantes del producto de las matrices “'A, con i desde 1 hasta k, se puede repre- sentar de forma total 0 parcial la cadena cinemtica que forma el robot. Asi, por ejemplo, a posicisn ¥ orientacin del sistema solidario con el segundo eslabén del robot con respecto al sistema de coor- denadas de la base se puede expresar mediante la matriz.°Aa Figura 4.2. Robot planar de 2 grados de libertad 96 Fundamentos de robética 14.3) n del sistema del tercer eslabsmn: ALAS 4.4) Cuando se consideran todos los grados de libertad, a la matriz °A, se le suele denominar T. Asf, dado un robot de seis grados de libertad, se tiene que la posicién y orientacién del eslabén final ven- ddr dada por la matriz. T TAG=PA TAPAS ASA AG (4.5) Aunque para describir la relacién que existe entre dos elementos contignos se puede hacer uso de cualquier sistema de referencia ligado a cada elemento, la forma habitual que se suele utilizar en ro- botica es a representacién de Denavit-Hartenberg (D-H). Denavit y Hartenberg,[DENAvtT-55) propu- sieron en 1955 un método matricial que permite establecer de manera sistematica un sistema de coor denadas (S,} ligado a cada eslabsn i de una cadena articulada, pudiéndose determinar a continuacién las ecuaciones cinematicas de Ia cadena completa (PAU-81). Segin la representacién de D-H, escogiendo adecuadamente los sistemas de coordenadas asocia- os a cada eslabsn, seré posible pasar de uno al siguiente mediante 4 transformaciones bisicas que es necesario que los sistemas se hayan escogido de acuerdo a unas determinadas normas. Estas, junto on la defiicidn de los 4 pardmetros de Denavit Hartenberg, conforman cl siguiente algoritimo para la ‘esolucién del problema cinemitieo directo: 4.1.2. Algoritmo de Dena cinematico directo Hartenberg para la obtencién del modelo D-H 1. Numerar los eslabones comenzando con 1 (primer eslabén mévil de la eadena) y acabando conn (Gltimo eslabén mévil). Se numeraré como eslabén 0 ala base fija del robox. D-H 2. Numerar cada articulacién comenzando por 1 (la correspondiente al primer grado de liber tad) y acabando en n. D-H 3. Localizar el eje de cada articulacién, Si €sta es rotativa, el eje sera su propio eje de giro. Si «es prismatica, serd el eje a lo largo del cual se produce el desplazamiento, D-H 4, Para i de 0a n-| situar el eje % sobre el eje de la articulacién i+ D-H 5, Situar el origen del sistema de Ia base (So) en cualquier punto del eje 20. Los ejes Xo € Yo Se sitwarn de modo que formen un sistema dextr6giro con D-H 6. Para i de 1 a n-t, situar el sistema {S;) (solidario al estabén i) en la interseccién del eje 2, con la linea normal comin a; y %, Si ambos ejes se cortasen se situarfa (S,} en el punto de corte. Si fuesen paralelos (S)} se situaria en la articulacién i+ D-H 7, Situar xen la Iinea normal comin a%1 y %. 98 Fundamentos de robética D-H 8, Situar y; de modo que forme un sistema dextrdgiro con x,y % D-H 9. Situar el sistema {S,) en el extremo del robot de modo que 2, coincida con la direccién de er ¥ Xe Sea normal 82q3 ¥ 2 D-H 10, Obtener 6, como el dngulo que hay que girar en torno a z,, para que Xs y Xx, queden para- Ielos. D-H 11. Obtener d, como Ia distancia, medida alo largo de 2, que habria que desplazar (Sy1} pa ra que % y x. quedasen alineados. DH 12, Obtener a, como la distancia medida a lo largo de x, (que ahora coinciditfa con x,1) que ha- bria que desplazar el nuevo (S,.,} para que su origen coincidiese con (S;} DIT 13. Obtener o, como el dngulo que habria que. girar entomo a x, (que ahora coincidiria con 1), para que el nuevo (5,1) coincidiese totalmente con (S,} DH 14. Obtener las matrices de transformacién "'A, definidas en (4.7). DI 1S. Obtener la matriz de transformacién que relaciona el sistema de la base con el del extremo. del robot T =°Ay,'An.. "Ay DH 16. La matriz T define Ia orientacién (submatriz de rotacién) y posicién (submatriz de trasla- cin) del extremo referido a la base en funcidn de las n coordenadas articulares, Aiculacién i+) anticulacién i 6 as 7 estab con 8, iol Figura 4.3, Parémetros D-H para un eslabén giratorio. Cinemética del robot 99 Los cuatro pardmetros de D-H (8, di, a, 04) dependen tinicamente de las caracteristicas geométri- cas de cada eslabén y de las articulaciones que le unen con el anterior y siguiente. En concreto estos representan (Figura 4.3) ©, Esl dngulo que forman los ejes x,; y x; medido en un plano perpendicular al eje 1, uti Tizando Ia regla de la mano derecha. Se trata de un pardmetro variable en articulaciones giratorias d, Es la distancia a lo largo del eje 221 desde el origen del sistema de coordenaas (i-1)- simo hasta la interseccicn del eje 2.1 con el eje x, Se trata de un parémetro variable en articulaciones prismaticas. Es la distancia a lo largo del eje x, que va desde la interseccién del eje 241 con el eje x; hasta el origen del sistema i-ésimo, en el caso de articulaciones giratorias. En el caso de articulaciones prismaticas, se calcula como la distancia mas corta entre los ejes 2 Y 2 a Esl Angulo de separacién del eje zy el eje %, medido en un plano perpendicular al eje 2, utilizando la regla de la mano derecha. Una vez obtenidos los parsmetros D-H, el céleulo de las relaciones entre los eslubones consecuti- ‘0s del robot es inmediato, ya que vienen dadas por las matrices A, que se calculan segin Ia expresién general [4.7]. Las relaciones entre eslabones no consecutivos vienen dadas por las matrices T que, como ya se coment6 anteriormente, se obtienen como producto de un conjunto de matrices A. Figura 4.4, Robot cilindrico del Ejemplo 4.1 100 Fundamentos de robética Obienida 1a matriz T, ésta expresard Ia orientacién (submatriz. (3 x 3) de rotacién) y posicién (submatriz (3 x 1) de traslacién) del extremo del robot en funcién de sus coordenadas articulares, con lo que quedara resuelto el problema cinematico directo. Tabla 4.1. Parémotros D-H para ol robot clindico dela Figura 4.4 ‘Articulacion o d a e. 1 a th 0 0 2 90. dy 0 90 3 0 ds 0 0 4 ° smplo 4.1. Con el fin de ilustrar el método expuesto anteriormente, se va a desarrollar a continuacién la reso- lucién completa del problema cinemético directo para un robot cilindrico. En primer lugar, se localizan los sistemas de referencia de cada una de las articulaciones del ro- bot (Figura 4.4). Posteriommente se determinan los parémetros de Denavit-Hartenberg del robot, con los que se construye la Tabla 4.1. Una vez calculados los parmetros de cada eslab6n, se cal culan las mattices A, sustituyendo en la expresién general (4.7) de la siguiente manera : 00 ° 00 o ii, 4, o1 1 ° c, -s, 0 0 ° 4 |S & 0 0 4, Alo 9 4, 1 0 0 ot Asi pues, se puede calcular la matriz T que indica ta localizacién del sistema final con respecto ma de referencia de la base del robot. al sist ~S:C, SS, Cd th) THA AACA, =| CHC# TOSe Si Suds +h) rhT 8,0 Cy, 0 dy +h, 0 o 0 1 I Cinemética det robot 101 ‘Tabla 4.2. Paramotros D-H para un robot IRBS400C Articulacion é a a e ' 1 @ 0 0 “90 i 2 6 h 0 90 i 3 0-90 0 oh 90 4 6 h 0 90 5 6 0 0 90 6 6 1, o 0 _Bjemplo 4.2. Se va a desarrollar a continuacién la resolucién completa del problema cinemdtico directo para un robot IRB6400C, En primer lugar, y siguiendo el algoritmo de Denavit-Hatenberg, se localizan los sistemas de re- ferencia de cada una de las articulaciones del robot (Figura 4.5)-Posteriormente se deterininan los parimetros de Denavit-Hartenberg del robot, con los que se construye la Tabla 4,2. Se calculan hora las matrices A, sustituyendo en la expresién general de la siguiente manera C0 -S, 0 Cc, 0 Ss, 0 on |S 9 GO 4, |S: 0 -e, 0 M=lo -i 6 © <- 1 oo 4 O00 0 1 00 01 102, Fundamentos de robética Figura 4.5. Asignacién do ojes de roferencia para a robot IRBG400C del Ejemplo 4.2 Asi pues, se puede calcular la matriz T que indica la tocatizacién del si temo del robot con respecto al sistema de referencia de la base del robot: tA 5 » Py AA SASASASA, = nO a P oo 0 1 A continuacién se desarrollan los términos de la matriz T Cinemética del robot 103 = (C8, #86, (CACC, -815,) C8, 6.6.6, 48, }# CE, +5,5,)8.C 5,68, +8,6,)(C.C,C4 8.8.) #88; 6.6.6, 4 5,) #(-5,C,6,-C S.C, 5,8, )(C,C.C, -8,8,)#C.(8,C,6,4C,8,)+8,C,8,C, on = (CES, #8,6,)(-C.6,C4 -8,8,)#ES,(S,C,6, #6,8,)# ECC, C8, #8, CACC, 8184) 8,8) (-8.C,C, #CS,)#(HS,C2C, -C,8,)E8,C,) HE.C,C, 8,5) ES.C.C, #C,8,)#8,6,68,C,) 7, = (6.05, 48,6, )(4C.8,)#6,5,015.5,)¥(CCC,48,8, LC. +h) 1.6.6.8, -1,8,,-1,8,) €,8,-€,6,)(1.€,8,)#,5,(U8.5,)*-Ci2.C, -C.8,) HC.) (18,6,8,-1,6,¢, +16) (,8,)(1.€.6,)+6,(18:5,)#8:6,CH6, +h )415,5) 4 #8,8,)(-8,C,) 8, 8. a= C p, = (-8 ciones anteriores se necesita realizar 12 llamadas a fonciones transcen- dentes, ademas de numerosas sumas y productos, teniendo en cuenta que cl vector a se calcula co- m0 el producto vectorial de los vectores ny 0 (a= mx 0), Como se ve, en estas ecuaciones queda reflejado el valor de Ia posicin (pa. py. 2) y ovienta- -cidn (n,0,a) del extremo del robot en funcién de las coordenadas articulares (8),93,03,84,s.8s). 4.1.3. Resolucién del problema cinematico directo mediante el uso de cuaternios Puesto que las matrices de transformacién homogénea y los cuaternios son métodos altematives para represontartransformaciones de rotacién y desplazamiento, seré posible utilizar estos titimos de manera equvalente a las matrices para laresolucidn del problema cinemtico directo de un robot. Para aclarar el uso de Tos euaternios con este fin, se van a utilizar a continuacién para resolver el rablema cinemitico directo de un robot tipo SCARA cuya estructura geométrica se representa en la Figura 46. El procedimiento a seguir sera el de obtener la expresién que permite conocer las coordenadas de In posicién y orientacién del sistema de referencia asociado al extremo del robot {Sx} con respecto al sistema de referencia asociado a Ja base {So}. sta relacién serd funcién de las longitudes lly ls de Jos elementos del robot asf como de las coordenadas articulates 41, 2.43 ¥ de Para obtener la relacidn entre {So} y {Ss} se ied convirtiendo sucesivamente (So} en (Sx), (Sz). (S5} y {Se} segtn la siguiente serie de transformaciones: 104 Fundamentos de robotica 1, Desplazamiento de {So} una distancia |; a lo largo del eje x9 y giro un angulo 4, alrededor del je 29, llegandose a (S,}. 2. Desplazamiento de (S;} una distancia t; a lo largo del ee x; y giro un dingulo g; alrededor del nuevo eje x, para llegar al sistema (S2) 3. Desplazamiento a lo largo del eje x2 una distancia ly para llegar al sistema {Ss} 4. Desplazamiento de {Ss} una distancia qs alo largo del eje my giro en torno a zy de un dngulo 4s, legandose finalmente a (S,}. De manera abreviada las sucesivas transformaciones quedan representadas por: S38: Thal) — Rot(z,g,) SS, Tol.) Rot(z,q,) To!) Rot(z.0) &S) 8,98: Teng.) Rotz.g.) % Figura 4.6, Asignacién do sistemas de reterencia en un robot SCARA, Cinemética del robot 105 onde los desplazamientos quedan definidos por los vectores: Pp, =0,1,) P:=(,,00) 4 P; = 0.00) (ol P, =(0,0-q,) Y os girs por ls cuaternios: Q=C,,0.0,8,) Q, = (C,,0,0,8,) [4 10) = (1.0.00) QW =E,.0.0,8,) donde fan) Aplicando las ecuaciones [3.62] y [3.63] de uso de cuatemios, un objeto localizado en el sistema de referencia {S,} por su vector de posicidn a, y su cuaternio de rotacién R, , tendré en el sistema de referencia {8,1} el vector de posicim a, y el cuaternio R,, siguientes (,a,.) = Q,(0,8,)Q; +(0.p,) OR, (4.12) donde p, y Q, son respectivamente el desplazamiento y posterior rotacién que permiten convertir {S.1} en {S,). Aplicando reiteradamente la expresién anterior a los sistemas de referencia {So).(Si},(S2).4Ss) y (Su) se tendrd: "Por lat iden la exposicisn, se ha suprimido el simbolo ° de producto entre cuaternios. 106 Fundamentos de robética (,a5) = Q,(0,8,)Q; +.) R,=QR, (.a,)=Q,0,a,)Q; +@,p,) R,=Q.R, . (4.13) (O,a;) = Q,(0,a,)Q5 +O.p,) R,=QR, (.a,) = Q,(0.a,)Q +O,p,) R,=QR, Sustituyendo de manera consecutiva en las expresiones anteriores, se obtiene: ag) = 0[2,[0,[2,(0.0.)0: +(0.p.J}Qi +O.) +Op,)f0% +0.p0 = = 0,0,0,0,(0.2,)8; 0529; +2,0,0,(047,)05050% + a +Q,Q, (0.p:)Q30; +Q, (0.p,)Q; + O.p,) = = Qps(0.84 Qn. +Qh(OPIQin +Qs(OP3}Q +2, (07,995 +p.) donde se ha tenido en cuenta que: [4.15] yaues . a Q = (QQ) = QQ (4.16) Desarollando los productos de cuaternios de la expresin [4.14] se tiene: Qe. Qiang = Qian (Osean yee) Qing = = (Sin day Cine tae Siae By Cn yy Sine BasCru Gee )Qiou = (4.17) 1 ay Sirs ne) 2OP, +P3)Q;, = OLl = 0.C 24 864 Sree QsOP IQs +Q.:O.P,IO5 Q10,9)Q; = Ol, E1,8,,.0) C Cia Cinemdtica del robot 107 Asimismo, segtin [4.9] (0,p,) =(0.00.1,) (4.18) con lo que finalmente resulta: (.a,) ty Sine tHE pm E> 0.44, Csr ” @ @ @ [4.19] Gy, Corrasg ~ Aa, Syrrrsg FU Sir + 19819446 Fst 1) En cuanto a la relacién entre los cuaternios que definen la orientacién de un objeto en los sistemas (So) y {Se} se tendra: Ry = Q,0,,.Q,Ry = Quay = (Cir 0.08.5) [420] Las expresiones [4.19] y [4.20] permiten conocer la posici6n as y orientacion Re de un objeto en el sistema {So} conocidas €stas en el sistema (S4) Si, en particular, este objeto estd posicionado y orientado en el extremo del robot, se tendré que: a, = (0.00) a R, = (1,000) (at conto que Og) = OC jar HCl Si thSiush — a) m @ . [4.22] Ro = (Cin.0.08,4) Jo que indica que el extremo del robot referido al sistema de su base {Sp}, esté posicionado en: X= da, = 1y605(q,+ 42) + 130084, y= ay, = 1,sen(g,+4,)+1,seng, (4.23) z= ay, Yesté girado respecto al sistema de la base wn dngulo qi + 42+ ge segtin la rotacién en torno al eje Rot(z,4,+4:+4.) [4241 108. Fundamentos de robotica Las expresiones [4.23] y [4.24] permiten conocer la tocalizacién del extremo del robot referidas al sistema de la base en funcién de las coordenadas articulares (41, 42, qs. ga)» Correspondiendo por Jo tanto a la solucién del problema cinemético directo. 4.2, CINEMATICA INVERSA EI objetivo del problema cinemético inverso consiste en encontrar los valores que deben adoptar las coordenadas articulares del robot q = {q1, 2; -» gal’ para que su extremo se posicione y oriente segiin tna determinada localizacisn espacial ‘Asi como es posible abordar el problema cinemitico directo de una manera sistemitica a pati de la utilizacion de matrices de transformacién homogéneas, ¢ independientemente de la configuracién del root, no ocurre lo mismo con el problema cinematico inverso, siendo el procedimiento de obtencn de las ecuaciones fuertemente dependiente de la configuracién del robot Se han desarrollo algunos procedimientos genéricos susceptibles de ser programados {GOLDENSERG- 8}, de modo que un computador pueda a partir del conocimiento de la cinemuitea del robot (con sus pardmetros de Denavit-Hartenberg, por ejemplo) obtener la n-upla de valores aniculares que posicionan Y orientan su extremo. El inconveniente de estos procedimientos es que se trata de métodos numéricos iterativos, cuya velocidad de convergenciae incluso su convexgencia en pre garantizaa A ahora de resolver el problema cinemtico inverso es mucho mas adecuado encontrar una solucin cerrada, Esto es, encontrar una rolacién matemtica explicita de la form: fe(ey.z,0,B.y) 4.25) 2 (GDL) Este tipo de sol i6n presenta, entre otras, las siguientes ventajas: 1. En muchas aplicaciones, el problema cinematico inverso ha de resolverse en tiempo real (por cjemplo, en el seguimiento de una determinada trayectoria). Una solucién de tipo iterative no garantiza tenet la solucidn en el momento adecuado, A contrario de fo que ocurtfa en el problema cinematico directo, con cierta frecuencia la solu cin del problema cinemitico inverso no es tnica; existiendo diferentes n-uplas [gyn il” que Posicionan y orientan el exiremo del robot del mismo modo. En estos easos una solucién cerra da permite incluir determinadas reglas o restricciones que aseguren que la solucién obtenida sea Jamis adecuada de entre las posibles (por ejemplo, limites en los recorridos articulates). No obstante, a pesar de las dificultades comentadas, la mayor parte de los robots poseen cinemiticas relativamente simples que facilitan en cierta medida la resalucién de su problema cinemético inverso, Por ejemplo, si se consideran sélo los tes primeros grados de libertad de muchos robots, éstos tienen una Cinemética del robot 109 estructura planar, esto es, los tres primeros clementos quedan contenidos en un plano. Esta circunstancia failta la resolucién det problema, Asimismo, en muchos robots se da la circunstancia de que los tes grados de libertad wkimos, dedicados fundamentalmente a orientar el extremo del robot, corresponden 8 giros sobre ejes que se cortan en un punto. De nuevo esta situacién faclita el célculo de la n-upla (ai. «al correspondiente ala posicidn y orientacién deseadas. Por lo tanto, para los casos citados, Y otros, es posible establecer ciertas pautas generales que permitan plantear y resolver el problema ‘inemitico inverso de una manera sistemdtica, Los métodos geomnétricos permiten obtener normalmente los valores de las primeras variables ar culates, que son Tas que consiguen posicionar el robot (prescindiendo de la orientacién de su extre- 2%), Para ello utilizan relaciones trigonométicas y geométricas sobre los elementos del robot. Se suele recurtir ala resolucién de trisngulos formados por los elementos y articulaciones del robot. Como alternativa para resolver el mismo problema se puede recurrir a manipular directamente las écuaciones correspondientes al problema cinematico directo. Es decir, puesto que éste establece la [ooo bl i201 Figura 4.7. Robot aricular, 110 Fundamentos de robética we los elementos ty son funcién de las coordenadas anticulares [g1 , .. . gu" «es posible pensar que mediante ciertas combinaciones de las 12 ecuaciones planteadas en [4.26] se puedan despejar las n variables aticulares gen funcidn de las componentes de los vectores n, 0, Por ultimo, si se consideran robots con capacidad de posicionar y orientar su extremo en el espa- io, eso es, robots con 6 GDL, el método de desacoplamiento cinemitico permite, para determinados tipos de robots, resolver los primeros grados de libertad, dedicados al posicionamiento, de manera independiente a la resolucién de los tkimos grados de libertad, dedicados a la orientaci6n, Cada uno de estos dos problemas més simples podré ser tatado y resuelto por valquier procedimiento. 4.2.1. Resolucién del problema cinemiitico inverso por métodos geométricos Como se ha indicado, este procedimiento es adecuado para robots de pocos grados de libertad o para el «aso de que se consideren s6lo los primeros grados de libertad, dedicados a posicionar el extremo. El procedimiento en si se basa en encontrar suficiente niimero de relaciones geoméitricas en las que imervendran las coordenadas del extremo del robot, sus coordenadas articulares y las dimensiones fisicas de sus elementos. Para mostrar el procedimiento a seguir se va a aplicar et métedo a ta resolucién del problema ci nemético inverso de un robot con 3 GDL de rotacién (estructura tipica articular). La Figura 4.7 muestra la configuracién del robot. El dato de partida son la coordenadas (ps, py. Ps) referidas a {So} en las que se quiere posicionar su extremo. Como se ve, este robot posee una estructura planar, quedando este plano definido por el fingulo de la primera variable articular q, El valor de q, se obtiene inmediatamente como: ) 4, =arctg| 2 427] Considerando ahora dnicamente los elementos 2 y 3 que estén situados en un plano (Figura 48-2), Y uiizando el teorema del coseno, se tendrl Papi tp; 2 = ad F 4 pl =I +12 +2h,1,cosq, bet py +p2 1-1 i [4.28] Cinemética del robot 111 Esta expresién permite obtener gs en funcién del vector de posicién del extremo p. No obstante, y por motivos de ventajas computacionales, es més conveniente utilizar la expresi6n de la arcotangente en lugar del arcoseno, Puesto que = C08? a, 1429) seng, se tended que gy = actg| (ee (4.30) Pot Dy +P 2h, con cos 4, ‘Como se ve, existen 2 posibles soluciones para 4, segin se tome el signo positivo o el signo nega- tivo en la raz. Estas corresponden a las configuraciones de codo arriba (Figura 4.8-a) y codo abajo (er Figura 4.8-b) del robot 8) Codo abajo Figura 4.8, Elemontos 2 y 3 del robot de la Figura 4.7 contenidos en un plano y en 4) configuracién code abajo b) contiguracicn code arriba, 112 Fundamentos de robstica El edlculo de q, se hace a partir de la diferencia entre Py a: a: =B-0 4.31) Siendo: [4.32] Lego, fnalmente Py 1, sen q, = arcte| — ~aretg] 24s 4.33 BON pare (ts) = De nuevo los dos posibles valores segtin la eleccién del signo dan lugar a dos valores diferentes de ‘gz correspondientes a las configuraciones codo arriba y abajo. Las expresiones (4.27), (4.30] y (4.33] resuelven el problema cinemAtico inverso para el robot de 3 GDL considerado. 4.2.2. Resolucién del problema cinemético inverso a partir de la matriz de transformacién homogénea En principio es posible tratar de obtener el modelo cinemtico inverso de un robot a partir del ‘conacimiento de su modelo directo. Es decir, suponiendo conocidas las relaciones que expresan el valor 4 la posicin y orientaciGn del extremo del robot en funcién de sus coordenadas articulares, obtener por ‘manipulacin de aquélla las relaciones inversas ‘Sin embargo, en la préctica esta tarea no es trivial siendo en muchas ocasiones tan compleja que obliga a desecharla, Ademés, puesto que el problema cinematico directo, resuelto a través de la expre- sin [4.26] contiene en el caso de un robot de 6 GDL 12 ecuaciones, y se buscan s6lo 6 relaciones (una por cada grado de libertad), existirén necesariamente ciertas dependencias entre las 12 expresio- nes de partida (resultado de la condicién de ortonormalidad de los vectores m, 0 y a) con lo cual la cleccidn de qué ecuaciones de [4.26] escoger debe hacerse con sumo cuidado. Se va a aplicar este procedimiento al robot de 3 GDL de configuracién esférica (2 giros y un des- plazamiento) mostrado en la Figura 4.9, El robot queda siempre contenido en un plano determinado porel ingulo 4. Cinemética del robot 113, Figura 4.9, Robot polar de 9 GDL. El primer paso a dar para resolver el problema einemitico inverso es obtener la expresisn [4.26] cotrespondiente a este robot. Es decir, obtener la matriz T que relaciona el sistema de referencia (So) ssociado @ la base con elsistoma de referencia (Ss) asociado a su extremo, La Figura 4.10 representa lu asignacin de sistemas de referencia segin os citer de Denavit-Hartenberg, con el robot situado nu posicion de partida (q1 = q2= 0), y la Tabla 4.3 muestra los valores de Tos parémetros de Dena- vit Hartenberg. [A partir de ésts es inmediato obtener las matrices A y la matriz M4 Fundamentos de robética Obtenida la expresisn de TT en funeién de las coordenadas articulares (q, ga. 43). ¥ supuesta une localizacin de destino para el extremo del robot defini por los vectores m, 0, a y p se podria inten- ‘ar manipulardirectamente las 12 ecuaciones resultant de T a fin de despejar gy, zs ¥ gs en funcién den. o.ayp. Tabla 4.3. Pardmetros D-H del robot de la Figura 4.9. ‘Articulacion @ d a a 1 a 0 907 2 a 0 90 3 ° 4 ° 0 Sin embargo, este procedimiento directo es complicado, apareciendo ecuaciones trascendentes. En lugar de ello, suele ser mas adecuado aplicar el siguiente procedimiento: Puesto que T="A, 'A2 As se tendré que: Figura 4.10, Asignacién de sistemas de referencia del robot polar de la Figura 4.9, Cinemética del robot 118 [4.35] [4.35] son funcién de las variables articulares (q, , ... , g)mientras que los miembros de Ja derecha lo son de las variables articulates (guys . ... 42): De este modo, dela primera de las expresiones de [4.35] se tend; aislado del resto de las varie bes artculares y tal vez seré posible obtener su valor sin la complejidad que se tendria abordando directamente la manipulacin de la expresin [426]. A su ver, una vez obtenida q, la segunda expre~ sion de (4.35] petmitira tener el valor de q: aislado respecto de 43. Por titimo, conocidos gy y a: s€ podré obtener qs dela expresisn [4.26] sin excesiva dificultad Para poder aplicar este procedimiento, es necesario en primer lugar obtener las inversas de las mae tices, “A, Esto es sencillo si se considera que la inversa de una matriz de transformacién homogénea viene dada por [3.44 m % a Pl’ [a omy om, mp no, a, o 0, 0, ~0° i | oe nm % a P| \a a, a, —a'p oo 1 000 1 Luego se tiene que: C0 Ss, oF fe, Ss, 0 0 . s, 0 -cC, 0} |o 0 1-1 Ags - 01 © 1) -|s5, -G o 9 0001 oo oO 1 c, 0 -s, oy [e, 8, 0 oF s, 0 © 0 0 0 -10 (437) 0-1 0 0 : 00 oo 6 0 oO. 100 0P fi00 0 0100] jotro o 0014) |o01 -g ooo] looo 1 116 Fundamentos de robotica Por lo tanto, utilizando la primera de las ecuaciones de [4.35] se tiene que: 0 OY a a Pp 1 -1|n, 0, a, p, 0 O}/n, o, a p,|~ 0 ooo 1 [4.38] De las 12 relaciones establecidas en la ecuaci6n [4.38] interesan aquellas que expn cidn de constantes ( y no de g: y qs) Asi por ejemplo, tomando el elemento (3,4) se ti S\p.-C\p,=0 > 2 | P, auf") ax 4, = arctar| © Py tan(q, )= ( Utilizando ahora la segunda de las ecuaciones de [4.38] se tendré nm 6 @ py) [1 000 rs % % m%{_ JO 1 9 Ol yay m % a P| [O01 w 0 0 o 1} [ooo 1} a, p,) fl 00 0 a, p,|_}0 100 a, p40 6 to o 1} looo1 Cinemética del robot 1X7 Tomundo el elemento (14) se tiene: C.C,7, #6,8,p, +837, “18 €.(C\r. +8,7,)+8:(9,-1,)=0 = tan(q,) lat y snsderando gue por [4.39] S, P.-C, p,=0 = (5, p.-C, p,) =8i pCi p3-28,C, p,p, <0 (IC) pi +(1-S)p5 =25,¢, pxp, = Ci pl+8} p+ 28,6, pp, = ptr? > Cp. +8,p, =p [4.2] 7 =P, 4, = arctan, 4.43] Por iltimo, tomando de [440] el elemento (34) se tiene: -S:C\p, 8,817, +P, -Gl = 4) CP.) SCP. +82) = 4 = C(9,-1)-8, P+ (44a) Las expresiones (4.39), [4.43] y [4.44] corresponden a la solucidn del problema cinematico inverso {el robot considerado. A continuacién se reproducen estas expresiones, M8 Fundamentos de robética h (4.45) 9, = CP, “V))- Safe + PS A los mismos resultados se podria haber Hlegado mediante consideraciones geométicas. 4.2.3. Desacoplo cinematico Los procedimientos vistos en los apartados anteriores permiten obtener los valores de las 3 primeras variables articulares del robot, aquellas que posicionan su extremo en unas coordenadas (Px, Py Pe) determinadas, aunque pueden ser igualmente utilizadas para la obtencisn de las 6 a costa de una mayor complejidad. Ahora bien, como es sabido, en general no basta con posicionar el extremo del robot en un punto Traza(U,,,5,U}) 15.13] h, con km = 12,01 L-E 8. Obtener Ia matriz columna de fuerzas de Coriolis y centripeta H = [hJ" cuyos elementos vienen definidos por: TE hatin [5.14] L-E 9. Obtener la matriz.columna de fuerzas de gravedad C = [c;]" cuyos elementos estén defini dos por: XE-mav,'s) 15.15) = 12 g:esel vector de gravedad expresado en el sistema de la base (So}y viene expresado por (g.0, B00, 0) ‘ny es el vector de coordenadas homogéneas del centro de masas del elemento j expresado en ct sistema de referencia del elemento i L-E 10, La ecuacién dinémica del sistema ser T=Dg+H+C 5.0 donde es el vector de fuerzas y pares motores efectivos aplicados sobre cada coordenada Notas 1. La derivada de la matriz. de D-H "A, respecto de la coordenada q, puede obtenerse fi mente de manera computacional, mediante la expresi aa {are A, {ol sij>i 94, 138 Fundamentos de robética sila articulacién i es de rotacién 0 ° 0 0 } sila articulacién i es de traslacién Sceoocos-3o Seeocces 2, Andlogament: ALQMALQMA, siizKEj PALQAQA, sii jzk (01 sik>ioj>i 3. Las matrices J, y D son simétricas y semidefinidas positivas. Figura 5.2. Robot polar de dos grados de libertad del Ejemple 5.1 Dindmica del robot 139 4, E] término hay representa el efecto, en cuanto a fuerza o par, generado sobre el estabén i como consecuencia del movimiento relativo entre los eslabones k y m. Se cumple que Pam=tins ¥ que he 5. En la obtenci6n de las matrices de pseudoinercia J, las integrales estan extendidas al ele- mento i, de modo que ésta se evaliia para cada punto del elemento de masa dm y coordena- das (x,y,z) referidas al sistema de coordenadas del elemento, Tabla 5.1. Pardmetros D-H del robot polar del Ejemplo 5.1 “Aniiculacion a on a o 1 6 0 0 zo) 2 0 de ° 0 jemplo 5.1. Se va a aplicar el método de Lagrange-Euler para la obtencién del modelo dinamico del robot de 2 _grados de libertad (@), d:) con base fija de la Figura 5.2. LE 1. Se asignan los sistemas de referencia y pardmetros de Denavit-Hartenberg segin la Figura 5.3 y la Tabla 5.1 Figura 5.3. Sistomas de referencia de! robot polar del Elemplo 5.1. 140 Fundamentos de robotica LE 2. Matrices de transformacién °A, Cc, 0-8, caf OS “lo -1 0 0 0 0 ¢, 8, 0 0 L-E3. Matrices U, —s, , a°A, |G Une ae, | 0 ° L 0 ° 0 1 ° aoo° ecco 1000 ord 0 ood, 900 1 -4,8, ac, oO 1 0 0 a°A, | Van gy =f) 0 -4.C, 000 -s, =4,S, o00¢, 0 000 0 oO oo00 0 Dinémica del robot 144 0 4s, 90 0 -a] ue 0 -C, -4.C, 000 -s,) ™ oo 0 000 0 000 96 000 0 000 -c Wy _|0 0 0 -s, aU, C= 3e lo 00 0 | Yen ag, Ol ooo o| L-E 5. Matrices de pseudoinereia J Elemento 1 Elemento 2 Figura $4, Clements del robot polar del Empl 5.1 Element 1 Jxtam=o Jrxam=Jxx¢m=0 x z,dm=0 Joram=0 Jed =[2,4m=0 J Jxam=o Jyam=0 fzdm= tym, fam=m, 142 Fundamentos de robética ar) o 90 mL? mL, mL, m, lemento.2 uesto que se considera la masa concentrada en el centro de masas y el origen del sistema de coor- TT (5.37) ‘donde T" es el vector de fuerzas y pares ejercidos en el extremo del robot expresado en el sistema de coordenadas de la base y t" el vector de fuerzas y pares ejercidas en las articulaciones. De [5.35] y [5.37] se obtiene: 160 Furdamentos de robotica => dT 15. 38] Expresion, de destacable utilidad, que relaciona los pares generalizados ejercidos en el extremo del robot con los ejercidos en cada una de las articulaciones. Susttuyendo [5.36] y [5.38] en la ecuacién del modelo dindmico [5.16] se obtiene: t=Da+H+C = STscJ'j-DI'Jq+H+C = T=(0') 'DS'j-(F') ‘DI Ja+(" He) C = 5. 39] [5.40] Las expresiones [5.39] y [5.40] definen e1 modelo dindmico en coordenadas cartesianas 0 de late rea de un robot a partir de su modelo dindmico en el espacio articular o de la configuracién y de su ‘matriz Jacobiana. 5,6. MODELO DINAMICO DE LOS ACTUADORES ‘Como se ha indicado en ta introduccién de este capitulo, el modelo dinémico de un robot se componé or una parte del modelo de su estructura mecdnica, que retaciona su movimiento con las fuerzas y pares ‘que lo originan, y por otra parte del modelo de su sistema de accionamiento, que relaciona las Srdenes de mando generadas en la unidad de control con las fuerzas y pares uilizados para proxiucr el movimiento En el Capitulo 2, dedicado a la morfologia del robot, se indicé que son los actuadores eléctricas d= corriente continua los mas utilizados en la actualidad, si bien es notable la tendencia a sustitut ésos por motores sin escobillas. En un caso u otro, ¢! modelo dinémico del actuador responde a ecaciones similares, por lo que a efectos de establecerlo se considerard el de motor de corriente continua Por su parte, los actuadores hidrdulicos son usados en robots en los que la relacién peso manipula ble/peso det robot deba ser elevada, El modelo dindmico de un actuador hidedulico es significative mente mas complejo que el de un actuador eléctrico. A las caracterfsticas dinémicas del conjunto ser Dindmica del robot 161 Figura 5.8, Eequema de funcionamienta de un motor de corslente continua controlado por inducido Yo-vilvula cilindro (o motor) se le debe incorporar el comportamiento no invariante del fluido (aceite), cuyas constantes dinémicas (indice de Bulk, viscosidad, etc.) varfan notablemente con la temperatura, Por ditimo, las propias lineas de transmisién, tuberfas 0 manguerss, que canalizan all fuido desde la boraba a las sexvo-vilvulas y de éstas alos actuadores, pueden influir en el comports- mmiento dindmico del conjunto Se van a exponer a continuacién los modelos dindmicos que son admitidos para trabajar con ambos tipos de actuadores, debiendo quedar claro que en ambos casos se han realizado cierto mimero de simplificaciones que, por lo general, son validas. 5.6.1. Motor eléctrico de corriente continua Un accionamiento eléetrico de corriente continua consta de un motor de corriente continua alimentado por una etapa de potencia y controlado por un dispositive analégico o digital. El modelado del motor de corriente continua controlado por inducido (Figura 5.8) responde a las ecuaciones que a continuacién se deducen, ‘Cuando el rotor gira, se induce en é1 una tensidn e, directamente proporcional a la velocidad an- ular y que se conoce como fuerza contraelectromoteiz, 2, =k,8 (5.41) La velocidad de giro se controla mediante la tensién e,, salida del amplificador de potencia. La ecuacién diferencial del circuito del rotor es L,i+Rite, (5.42) 162 Fundamentos de robotica Neto sin si ado ston tae = Figura 5.9. Esquoma de bloquos del modelo de motor iStrco de corriente continua Por otra parte, el motor desarrolla un par proporcional al producto del flujo en cl entrehierto Wry la intensidad i, siendo el flujo en el entrehierro: Waker 15.43] donde ices la corriente de campo. De esta manera, la expresién del par desarrollado por el motor es la siguiente tok iy [5.441 Para una corriente de campo i; constante, cl flujo se vuelve constante, y el par es directamente pro- porcional ala corriente que circula por el rotor: =k,i {5.45} ste par se emplea en vencer la inercia y la friccidn, ademas de posibles pares perturbadores: J+ Dd=1-2, 15.46 Por lo tanto, las ecuaciones del motor de corriente continua controlado por induccién son: Dindmica del robot 163 = k8 (Ls+R)i+e, (5.471 donde todas las variables son en transformada de Laplace. Para el control del motor se incluyen las etapas de potencia y control, utilizindose realimentacién 4ée intensidad y velocidad, tal y como se representa en la Figura 5.9, En la Figura 5.10 se ha representado el diagrama de bloques correspondiente haciendo uso de fun- ciones de transferencia (OcaTA93}, [D'Az20-95] y (OaaTa.92), donde pueden realizarse ciertassimpli- fieaciones G,= SG, L=0 J,B: Inercia y rozamiento viscoso equivalentes vistos, ala salida del eje del rotor Figura 5.10. Diagrama de bloques del modelo de motor eléctrico de cortinte continua. 164 Fundamentos de robotica Las simplificaciones del anterior diagrama permiten obtener (en ausencia de perturbaciones) Bs) Kykik u(s) ~ (Rk,k, s+ B)+k,(k, +k yk K,) [5.48] kkk, Us +B) i ‘Tys+1 (Rokk, }Us+B)+k, (ky +kikiK,) 7 T,s+1 [5.49] donde se tiene que’ kykik, k p(k, #kykk,)+B(R+k,k,) Bk, kk ilk, +h ky) BRR ky) 13. 50] UR+kk,) (k, +k kk, )+B(R+k\k) ky (5.51) z B Se observa, por lo tanto, que el comportamiento tension-velocidad del motor de cortiente continua responde al de un sistema de primer orden. Fn cuanto a la relacidn tensién-par, responde a un par polo-cero. En la préctica, la calidad de los motores utilizados en servoaccionamientos y las elevadas prestaciones de sus sistemas de control, hace que esta relacién pueda considerarse casi constante (sia la dinémica propia de los polos y ceros). 5.6.2, Motor hidrdulico con servovalvula La introduccién de sistemas electrénicos analégicos, y recientemente digitales, para el control de las vlvulas de distribucién de caudal utiizadas en los accionamiento hidraulicos (lineales o rotativos), ha permitido la evolucién de las vilvulas proporcionales a las servovélvulas, consiguiendo que el comportamiento dinémico de los actuadotes hidréulicos tenga Ia calidad adecuada para ser usados en servomecanismes, y en especial en robstica. El conjunto equipo electr6nico, servovalvula y motor hidréulico (Figura 5.11) puede ser modelado cen una versidn simplificada segtin las siguientes ecuaciones: Dindmica del robot 165 Equilibrio de pares: t= 16+ B04, 15.52] Par desarrollado por el motor: t=k,AP [5.531 Continuidad de eaudales: {W=HFA%+Q, 19.94] Caudal de fuga: [5.55] érdida de caudal por compresin del fluide: Q, =k, aP {5.56} BlectrGnica de mando de la corredera de la servovélvula: y=alu) 15.57] Caudal suministrado por la servovélvula Q, = f(y) VAP 15.58] Electronica de mando Figura 5.11. Esquema de un actuador hidedulco (motor hidréulico) 166 Fundamentos de robética donde: 6: Angulo girado por la paleta (y el eje) del rotor. ‘© par proporcionado por el motor. ‘tp: par externo perturbador. J, Br inercia y constante de rozamiento viscoso (de motor y carga) asociados a la articulacién, AP: diferencia de presiGn entre las dos cémaras del motor. Qj: caudal proporcionado por ta servovilvula (entrada al motor). (Qs caudal que se fuga entre las dos eiimaras del motor (leakage), Qe: caudal perdido por fa compresibilidad del fluido (depende del indice de Bulk, del volumen y de la diferencia de presiones). vi volumen en la cdmara de entrada al motor y: posicién de la corredera de la servovalvula, u: tensiGn de referencia a la clectrénica de mando de ta servovavula, ky key ke se considerardn constantes. El dispositivo electrénico de mando de la corredera de la vélvula se disefta con el objetivo de que Ja relacién entre sefal de mando “u' y posicién de la corredera ‘y' sea lo mas parecida posible a una constante. $i bien este objetivo no es del todo alcanzable, existiendo siempre una cierta dindmica en dicha relacién, la velocidad de la misma es muy superior 2 la dinmica propia del accionamiento hi- driulico y de la articulacién, por lo que puede ser considerada como constant Por este motivo, la relacién [5.57] se sustituye por: yekyu 5.59] Por otra parte, la relaci6n entre la posicién de la corredera de la vélvula, la diferencia de presiones yy el caudal suministrado [5.58] es en principio no lineal. Linealizando entorno a un punto de funcio- namiento se obtiene: Q =k y—k,AP {5. 60] Por io tanto, la relacisn entre fa sefial de mando ‘u’, el caudal Q, y la presin diferencial AP seré Q,=k,u-K,AP (5.61) Por tiltimo, ta velocidad de variacién de volumen en la cdmara del motor V, seri proporcional a la velocidad de giro de Ia paleta, luego: ¥=k,O (5.62) Dindmica del robot 167 Con lo que las ecuaciones (5.54], (5.55) y [5.56] podrén agruparse como: = k,O +k AP +K AP (5.63] ‘Transformando por Laplace las ecuaciones {5.52}, [5.53], [5.61] y [5.63] se obtiene el diagrama de bloques de la Figura 5.12, que como se observa presenta una absoluta analogia con el correspondiente «un accionamiento eléctrico (Figura 5.10) salvo por la realimentacién de velocidad de giro del actua- dor presente en aquel. Esta ultima puede ser incluida en la electeénica de mando, siendo entonces el rmodelado de ambos actuadores equivalente aunque con caracteristicas dindmicas y posibilidades dife- rentes. Figura 5.12. Diagrama de bloques del modelo de actusdor hidréulico. En el caso de utilizar un cilindro hidrdulico el modelado se hace més complicado, motivada entre ‘tras razones por la diferencia de areas del émbolo en ambas cémaras, lo que hace que su funciona miento a extensidn y retraccidn sea notablemente diferente, Estudios mis detallados del modelado de accionamientos hidréulicos pueden encontrarse en [Warton-89), 5.7, BIBLIOGRAFIA [AMARIS-95] H. Amaris, Modelado y control de la flexién de robots de grandes dimensiones, Tesis Doctoral, DISAM, Universidad Politécnica de Madrid, 1995, [CRAIG-89] J.J. Craig, “Manipulator Dynamics”, en: Introduction ro Roboties, Addsison Wesley, 2* edicién, 1989, Capitulo CONTROL CINEMATICO No hay atajo sin trabajo. ‘Refranero popular En capitulos anteriores se ha visto cémo obtener el modelo cinemitico y dinfmico de un robot, El objetivo fundamental de ambos modelos es el de poder establecer las adecuadas estrategias de control del robot que redunden en una mayor calidad de sus movimientos. E! control cinemitico establece cusles son las trayectorias que debe seguir cada articulacién del robot a lo largo del tiempo para lograr los objetivos fijados por el usuario (punto de destino, trayecto- ria cartesiana del efector final del robot, tiempo invertido por el usuario, etc.). Estas trayectorias se seleccionarin atendiendo a las restricciones fisicas propias de los accionamientos y a ciertos criterios i calidad de trayectoria, como suavidad o precisién de la misma, 6.1, FUNCIONES DE CONTROL CINEMATICO La Figura 6.1 muestra de manera esquemética el funcionamiento del control cinematico. Recibe como entradas los datos procedentes del programa del robot escrito por el usuario (punto de destino, precisién, lipo de trayectoria deseada, velocidad o tiempo invertido, etc.) y apoyandose en el modelo cinemitico el robot establece las trayectorias para cada articulacién como funciones de tiempo. Estas trayectorias eben ser muestreadas con un periodo T a decidir, generindose en cada instante kT un vector de referencias articulares para los algoritmos de control dindmico, 169 170 Fundamentos de robstica Puro de destino ss 20,829 Tipo detayecoria ‘Tiempos iver veloidad rei del punto finaly del wayctraearesana Wei y aden rabies ‘MODE ) CINEMA’ ‘THayetorisaticulares 440) Referencias pra el coal dadmiso (4) Figura 6.1. Funcionamiento del contol cinematic (en sombreado. De manera general, el control cinemitico deberd realizar las siguientes funciones: Convertir la especificacién del movimiento dada en el programa en una trayectoria analitica en espacio cartesiano (evolucién de cada coordenada cartesiana en funcidn del tiempo). “Muestrear la trayectoria cartesiana obteniendo un ntimero finito de puntos de dicha trayectoria Cada uno de estos puntos vendré dado por una 6-upla, tipicamente (x,y, 2, 0B, Usilizando fa transformacién homogénea inversa, convertir cada uno de estos puntos en sus co- respondientes coordenadas articulares (q1,42.9.guds.go). Debe tenerse en cuenta aqui la posible solucién miltiple de Ia transformacién homogénea inversa, asi como la posibilidad de ausencia de solucién y puntos singulares, de modo que se asegure la continuidad de Ia trayectoria Interpolacién de los puntos articulares obtenidos, generando para cada variable articular una ‘expresién qi(t) que pase o se aproxime a ellos de modo que, siendo una trayectoria realizable por los actuadores, se transforme en una trayectoria cartesiana lo més préxima a la especificada por el programa del usuario (en cuanto a precisisn, velocidad, ee.) “Muestreo de la trayectoria articular para generar referencias al control dindmico. Control cinemdtico 171 °) Figura 6.2, Ejemplo de control cinematico de un robot de 2 grados de libertad. La Figura 6.2 muestra un posible caso en el que se pretende que un robot de 2 grados de libertad se mmueva en linea recta desde el punto j'=(x', y') hasta ef punto J'=(x', y°) en un tiempo T (Figura 6.2-a) El control cinemitico selecciona 4 puntos de esta trayectoria j', jj J* (Figura 6.2-b) y mediante la transformacién homogénea inversa obtiene los correspondientes veciores articulares q', q°, 4°. 4° (Figura 6.2-c). A continuacién trata de unir estos 4 puntos con algtin tipo de funcién que pasando por todos ellos garantice la suavidad y no supere las velocidades y aceleraciones miximas permisibles para cada accionador (Figura 6.2-d). El resultado final del movimiento del extremo del robot es una lrayeetoria que se aproxima en mayor o menor medida a la linea recta deseada (Figura 6.2-e). El principal inconveniente del procedimiento descrito para la generacidn de trayectorias radica en la necesidad de resolver repetidamente ta transformacién homogénea inversa, lo que conlleva un ele- vado coste computacional. Como alternativa, puede ser considerado un procedimiento basado en la utilizacién de ta matriz, Jacobiana, Como se describié en el apartado 4.3, la matriz Jacobiana establece las relaciones diferenciales entre variables articulares y cartesianas en términos de la ecuacién [4.60], que de manera compacta puede expresarse como: Jo =J@acy (6.1) 172 Fundamentos de robética Esta relaci6n es lineal y para una localizacién q determinada permite conocer las velocidades car- tesianas a partir de las cortespondientes articulates. Adem, suponiendo J(q) invertible, lo que ocu- tvird siempre que las dimensiones del espacio articular y de la tarea sean iguales y q no sea un punto singular, se podré expresar: 4 = F'@IO (6.21 De este modo, a partir de ta trayectoria cartesiana deseada para et extremo del robot j(®) podré ob: tenerse su derivada y, a través de la relacién anterior, la velocidad que debe seguir cada una de las articulaciones. Debe considerarse que esta relaci6n es lineal y, por lo tanto ms, cil de obtener que Ja que utitiza la transformacién homogénea. No hay que olvidar, sin embargo, que J(q) varia para cada localizacién q considerada, siendo por tanto necesario actualizar continuamente los valores de los elementos de la mattiz J. La implementacién de este procedimiento en la unidad de contro! de un robot exigiré, una vez mis, la discretizaci6n de la trayectoria jt) y su derivada en un niimero finito de puntos que, posteriormen: te, y tas ser convertidos a velocidades articulares deberdn ser interpolados. Por lo tanto, para estudiar el control cinematic de un robot se deberd fundamentalmente conocer qué tipo de interpoladores pueden ser eficaces para unit los puntos articulases por los que se quiere pasar. Asimismo, sera conveniente establecer crterios para Seleccionar cudntos y qué puntos serén 'muestreados en la trayectoria del espacio cartesiano, 6.2. TIPOS DE TRAYECTORIAS Para realizar una tarea determinada el robot debe moverse desde un punto inicial a un punto final. Este ‘movimiento puede ser realizado segsin infinitas trayectorias espaciales. De todas ellas hay algunas que, bien por su sencillez. de implementaciGn por parte del contsol cinemitico o bien por su utilidad y aplicacin a diversas tareas, son las que en la préetica incorporan los robots comerciales, De este modo, puede encontrarse que los robots dispongan de trayectorias punto a punto, coordinadas y continuas. 6.2.1, Trayectorias punto a punto En este tipo de trayectorias cada artculacién evoluciona desde su posicin inicial ala final sin realizar consideracién alguna sobre el estado 0 evolucién de las demés articulaciones. Normalmente, cada actuador trata de llevar a su articulacién al punto de destino en el menor tiempo posible, pudiéndose Lr— t a4 4 > | t ‘ ‘ Figura 6.4. Posicién, velocidad y acelaracién para un intorpolador lineal. velocidades de paso por cada punto deben por tanto ser conocidas a priori, Esta seleccién no es obvia y se trata posteriormente. Se consigue asi una trayectoria compuesta por una serie de polinomios edbicos, cada uno valido entre dos puntos consecutivos. Este conjunto de polinomios concatenados, escogides de modo que cxisla continuidad en fa posicién y velocidad, se denominan splines (ctbicos, por ser de tercer grado), Una exposicion detallada de los mismos puede encontrarse en [ANAXD-93] La expresisn de la trayectoria que une dos puntas adyacentes (g", q') serd: git) =a+blt- there nat bag" (6.71 180 Fundamentos de robética ara poder calcutar Jos valores de los coeficientes del polinomio eiibico de la expresisn [6.7] &s preciso conocer los valores de las velocidades de paso q' Para ello existnin diferentes alternatives ‘Un primer crterio para seleccionar ls velocidades de paso [CratG-89] podrfa ser: jo si signo (q' -g**) # signo (q"" —q') [6.8] si signo (g' —q*") = signo (q'" -q') Esta seleccidn es de sencilla realizacién y da como resultado una continuidad razonable en la velo- cidad, Sin embargo, no establece ninguna condicién sobre la continuidad de la aceteracisi, ‘Como alternativa pueden escogerse las velocidades de paso de modo que cada spline ciibico sea continuo en posicién, velocidad y aceleracién con los dos polinomios adyacentes. De esta forma, os coeficientes de los k-1 polinomios de tipo spline ctibieo que pasan por los puntos q' (ie [1.k)), asegu rando la continuidad en posicidn, velocidad y aceleracién de Ia trayectoria global, serin tos dados por la expresin (6.7), donde las velocidades de paso por los puntos se obtienen de resolver el siguiente sistema de ecuaciones lineales de diagonal dominante [ROGERS-76} ° fe) 88 (eH -aeleyle-a)] | : que lever) +eHr-e)] | 9) oe ae F fever ote F af Como se observa, el sistema tiene k-2 ecuaciones y k incégnitas, que son las distintas velocidades de paso por los k puntos. Para completar el ntimero de ecuaciones de modo que el sistema esté defini do, se pueden afladir las siguientes condiciones: = [6.10] Es decir, que la articulacién parte de y ega a una situaci6n de reposo. Por lo tanto, las k ecuaci nes lineales definidas en (6.9} y [6.10] permiten obtener las k velocidades de paso necesarias para poder aplicar fa expresién (6.7) de los splines cbicos, asegurando la continuidad hasta la segunda erivada de la trayectoria global. Una ltima alternativa para obtener las velocidades de paso’ seria parti de las velocidades de pa- so deseadas en el espacio de la tarea, De este modo, lo mismo que el modelo geométrico del robot permite obtener las coordenadas articulares q partir de las cattesianas j, el modelo cinemético (mediante el uso de la Jacobiana) permitiria obtener las velocidades articulares a partir de las carte- Control cinemético 181 sianas_j . Sin embargo, es preciso en este caso considerar los problemas derivados de la posible exis- tencia de puntos singulares en la trayectoria cartesiana escogida, que darfan lugar a velocidades arti- culares infinitas no realizables por los actuadores. 6.4.3. Interpoladores a tramos En los interpoladores vistos hasta el momento, se utiliza. un polinomio de un grado determinado (I 0 3) para unit dos puntos consecutivos de la trayectoria, El uso de polinomios de tercer grado permite ssegurar que el polinomio pasa por los dos puntos y al mismo tiempo permite imponer los valores de velocidad de paso por los mismo, Sin embargo, al contrario de lo que ocurre con el interpolador de primer grado (lineal), la velocidad de la articulacién durante el recorrido esta variando continuamente, lo {que exige un control continuo de la misma. Una altemativa que proporciona una solucién intermedia consiste en descomponer en tres tramos consecutivos la trayectoria que une dos puntos g°, q'. En el tramo central se utiliza un interpolador lineal, y por lo tanto la velocidad se mantiene constante, no siendo preciso imprimir aceleracién algu- nv al actuador. En los tramos inicial y final se utiliza un polinomio de segundo grado, de modo que en cl tramo | la velocidad varie linealmente desde la velocidad de la trayectoria anterior a la de la pre~ %% a) v tramol —tramo2 tamo3 Figura 6.5. Interpolador con tres amos. 182 Fundamentos de robstica sente, yen el tramo 3 varie desde la velocidad de la trayectoria presente hasta la de la siguiente. Se tiene entonces que en los tramos inicial y final la aceleracién toma valores constantes distintos de cero, mientras que en el tramo intermedio la aceleracién es mula, Enel caso simple de una trayectoria con dos tnicos puntos de velocidad inicial y final nula, se tie- re (ver Figura 6.5) que las ecuaciones de tos tres tramos serfan: t1 4a=Kq =Ka =K't 7.31 donde ¢, expresa et par resultante en el eje del actuador. Por otra parte, la matriz de inercia Dg) puede expresarse siempre como: Diq) =D, +D, (4) 0.4) donde D; es una matriz diagonal formada por los elementos constantes de la diagonal principal de D(q) y representa la contribucién de cada eslabén en la inercia que soporta su correspondiente actuador. Sustituyendo las expresiones [7.3] y [7.4] en el modelo dindmico del robot [7.1], se obtiene: ¢, =K"(D, +D,)K "4, +KH+K"C+K "EK", 17.5) que se puede expresar de la siguiente manera: +, =K"D,K 14, +F,4, +7, donde: FB =KCRK* (rol t= K"D,K 14, +K"H+K"C Fx: ¢s la matriz diagonal de constantes de rozamiento viscoso visto por los actuadores (a la entra- da del reductor). ‘ty: puede ser considerado como un par perturbador. La Figura 7.1 representa mediante diagrama de bloques las ecuaciones [7.6], donde los valores de los bloques representados por cajas ovaladas dependen de las variables que llegan a ellos a través de las flechas a tramos. Los bloques encerrados en el recuadro sombreado estén formados por mattices diagonales constantes, lo que indica que representan el efecto que sobre el movimiento de la articula- cin i tiene el par proporcionado por et propio actuador. Por su parte, los bloques fuera del recuadro no son constantes sino que dependen de las posiciones y velocidades de los ejes y representan el efecto t) que sobre la articulacién i tiene el movimiento de los demas ejes. Este esquema permite evaluar en que condiciones puede considerarse al robot como a una serie de eslabones dinémicamente desacoplado (t) despreciable), en las que el movimiento de uno de ellos no afecta a los demas, 190 Fundamentos de robética Figura 7.1. Diagrama do bloques que representa el comportamionto dindmico do una articulacién. Obsérvese que si los factores de reduccién son elevados, esto es, si las velocidades del movimiento de los actuadores 4, son notablemente mayores que las de las articulaciones 4, se tendré que los clementos de la matriz diagonal K serén muy superiores a la unidad, y consecuentemente K" seré una ‘mattiz diagonal de elementos de reducido valor. En este caso, el término tp ser despreciable y podré considerarse que las articulaciones del robot estén desacopladas, de modo que un par motor en el ac- tuador i tendré efecto tinicamente sobre el movimiento de la articulacién i, siendo esta relacién la ‘correspondiente a una ecuacién diferencial lineal de 2# orden (recuérdese que K, Dj y Fy son matri- ces diagonales constantes), Por lo tanto, el disefio del regulador més adecuado para cada articulacién i puede hacerse utilizando las técnicas més frecuentes de disefio (PID, prealimentaci6n), cuyo objetivo ¢s garantizar las especificaciones de funcionamiento atin ante perturbaciones o imprecisiones en el conocimiento de D; y Fy. ‘Sin embargo, no debe pensarse que la introduccién de un reductor de elevada relacidn es en gene- ral conveniente, Frente a las ventajas aportadas derivadas de la posible simplificacién del modelo dinémico del robot, aporta importantes inconvenientes, como son el considerable aumento del roza- riento viscoso y la introduccién de holguras y elasticidades en la transmisién. ‘Como se sefial6 en el Capitulo 2, dedicado a la morfologta del robot, existen en la actualidad algu- nos modelos de robots denominados de accionamiento directo, en los que se ha prescindido del uso de reductores (K = I). En ellos se consiguen mayores velocidades y precisiones a costa de una mayor ‘complejidad en el disefio del sistema de contro, derivado de no poder considerar t, despreciable. Control dindmico 191 Ejemplo 7.1 Supéngase que el robot de 2 grados de libertad del Ejemplo 5.1 en configuracién horizontal, cuyos eslabones estin representados en la Figura 7.2, esté accionado a través de reductores de factor de reduccién 100 (I vuelta del eje suponen 100 vueltas del motor). Asimismo, supéngase que existe un par de rozamiento viscoso caracterizado por las constantes fy, = fy2 = 5 Nims/rad, Figura 7.2, Eslabones del robot del Ejemplo 7.1. s del robot se tomara: m)=10kg , m=1kg , Li=0.1m , g= 10 qv Tal y como se obtuvo en el Ejemplo 5.1, el modelo dinémico del robot viene dado por: ota, 0 oo1 2d,m,6,d,]_[24,6,4, a,m,0; |" | -4,6; [meses | + “eee md? 0 | my Por lo tanto se tendra: 192 Fundamentos de robética [? d KD;'K= ; 10" 10" 2, DK = ei 0] _fiowa:, 0 o 0 Figura 7.3. Diagrama de bloques del modelo dinamico det robot del Ejamplo 7.1 | Control dinémico 193 gg _[2:1074,8,4,]_[2-10°d,,6,.4,. K'H= = —107d,6? ~10°°d,,63, ec afO'C.(l+4,)]_ft0eos(10%9,)(1+10%4.) o's, | 10 'sen(10*6,,) Fo-K" 10°F, | “ 1of,, | Con lo que la representacisn en forma de diagrama de blogues del modelo dinamico del robot quedaré como en la Figura 7.3. Puede apreciarse cémo la aportacién de par ty es signifieativa- mente pequefia, pudiendo ser desprec 7.1.2. Control PID En casos como los expuestos en el epigrafe anterior, el control del robot puede ser tratado como el control de n ejes independientes, incluyendo en el par perturbador t) el efecto de los parmetros: no constantes de la diagonal de la matriz.D, asf como sus elementos no diagonals y los pares generados por la gravedad y movimientos relativos (matrices C y H). En estos casos y suponiendo el accionamiento de tipo eléctrco, se tend (ver epigrafe 5.6.1) que el correspondiente diagrama de bloques de cada eje seria 1 mostrado en la Figura 7.4, Por claridad se prescinde de aqui en adelante del factor de reduccién aplicado en el ej. Figura 7.4. Diagrama de bleques de un accionamionto eléctic, 194 Fundamentos de robotica Los términos J y B son, respectivamente, inercia y rozamiento viscoso vistos por el actuador, ¢ in- cluyen tanto los efectos del eslabén y la articulacién como los del motor y Ia transmisién, En la practica, 1a calidad de los sistemas de accionamiento es tal que se consigue una relacién li- neal entre la tensién de mando y el par proporcionado por el accionamiento, de modo que’ t=ku 0.7 canto que al ser: t= (st B)sq+t, 07.8) result k 1 9 GRO 94 ‘Suponiendo 7, inexistente y perfectamente conocidos k, J y B, podria plantearse obtener por inver: sidn del modelo la tension de mando u(t) que resultarfa en una trayectoria q(t) preestablecida, Sin ‘embargo, en la prictica ninguna de las dos premisas planteadas es cierta, por fo que es habitual utili- zar un esquema de control realimentado como el indicado en la Figura 7.5 Eneste esquema, R(s) representa un regulador tipo PID de funcién de transferencia: RO)=K, + 8 +ks=Hkstk, tks!) (7.10) r= (s+ Blass, Accionamiento Aniculacién Figura 7.5. Esquema de algoritme de control basado on PID, Control dindimico 195 El término k se ha introducido al objeto de que la salida del regulador R(s) sea directamente el pat t de entrada a la artculacién. La seftal de mando u (ley de control) en los accionamientos seri entonces: wy Esta expresi6n representa la ley de control que permite calcular cul es el par que se pretende que den los actuadores del robot. A la vista del diagrama de bloques, se tiene que: T= Rise 7.12) y haciendo uso de la ecuacién {7.8] que establece el comportamiento dindmico de la articulacién, se Us+B)sq+t, =Rie > 1, =R(s)e=(Js+ B)sq 17.13] Considerando que e = q, ~q y sumando (Is-+B)sq_ en ambos miembros de [7.13] se tiene: t, +(Us+B)sqy =[R(s) +(Is+BlsJe (7. 14] Con fo que el error entre la trayectoria deseada gat) y la real q(t) vendra dada por: +(Is+B)say 9) = Rg +Us+B)s (7.15) Esta expresién de e(s) indica que si no se cambia la posicién descada (qu(s) = 0), pero aparece una perturbacién en forma de escalén (t)= 1/5), el error valdré es) 17.16) (k,s+k, +k,s?)+Gs+B)s Supuesto el sistema estable, el valor final del error podré obtenerse por aplicacién del teorema del valor final: Ae(o) ims:e(s)=0 siempre que k, #0 a7) 196 Fundamentos de robética Obsérvese que de utilizar un regulador sin acci6n integral (regulador PD, k, = 0), el error ante per- turbacion escalén valdria: (9) = 71 (7.18) s(x, +k.s)+Gs+B)s} siendo su valor final Act lim s:e(8) (7.19) ‘que, aunque disminuird al aumentar la ganancia proporcional ky, no Hegard a hacerse cero. Por lo tanto, el esquema de control propuesto, utilizando un regulador PID (con accién integral no ula) garantiza, siempre que el disefio del regulador resulte en un sistema estable, que el efecto de los pares perturbadores en forma de escal6n se anula, Por otra parte, suponiendo que no existiese perturbacién, pero se demandase a la articulaci6n que ‘evolucionase seguin una determinada trayectoria qy(t), se tendfa, segtin la ecuacién [7.15] Us+B)sqy $9) = RG) +(is+ Bs (720) con lo que al ser por definicidn e = qy-q se tendré [Gs+B)s+R(s)-Us+B)s}q, =[Us+ Bls+R()]q => 4 R(s) Us+B)s au RO +(e Bs | RG) +054 Bs en Es decir, q(t) no coincide a lo largo del tiempo con q4\). Asi, ante una peticién de cambio instan- ‘neo en la posicién deseada de la articulaci6n (qs) = 1/s) se tenia k tks k (4, +Birks}+OseBs l 1 R®) (+ SR] +Us+ Bs als) (7.22) Resultando que git) y qa(t) no coinciden salvo, suponiendo el sistema estable, en el valor final (¢-9 =) em el que q vale 1, coincidiendo con Ia entrada. Control dindmico 197 En definitiva, el control PID permite anular el efecto de una posible perturbacién en escalén en ré- sgimen permanente, asf como asegurar que finalmente q y qq coinciden, sin embargo.no consigue que q siga la evolucién de qa a lo largo del tiempo. 7.1.3. Control PID con prealimentacién Como se ha visto, la utilizacién del control PID permite anular el efecto de la perturbacién en régimen Permanente, asi como conseguir que la salida q(t) alcance a la entrada pasado el suficiente tiempo. Sin ‘embargo, seria deseable que ante una trayectoria de entrada qa), la satida coincidiese con ella en todo ‘momento, consiguiendo no slo un error nulo en regimen permanente, sino también un error de seguimiento nulo, Para conseguir tal efecto puede utilizarse un control PID con prealimentacién, basado en un preci- so conocimiento del modelo de la articulacién (J y B). La Figura 7.6 representa el esquema de control PID con prealimentacién, donde @ la sefial de mando u se le ha incorporado una prealimentacién de velocidad y de aceleracién, siendo ahora la ley de control: u=k" [Re +s +B)sqy} (7.23) con R(s)= Haciendo uso de la caracterist culaci6n [7.8], se tendré: a tensiGn-par del actuador (7.7] y del modelo dindmico de la arti- Ainlacia | ira 7.6. Esquema de algoritmo de control basado en PID con prealimentacisn. 198 Fundamentos de robotica THkUSR(s)e+(Is+B)sq, t= (Is+B)sq+t, | - Ris)e+Us+B)sq, =(s+Bisq+t, = (R(s) + (s+ B)s)e = 4, © RO) +US+B)s = (7.24) Como se observa, a diferencia de a expresin [7.15}, obtenida para el error cuando slo se utiliza control PID, el error obtenido con el uso de control PID més uaa prealimentacién de aceleracién y velocidad, no depende de qu Luego, si bien ante presencia de perturbacién el error se comportard ‘como en el caso anterior (tendiendo a cero cuando tes un escal6n), ante una entrada en qy, no tendra valor alguno, consiguiéndose un seguimiento absoluto de la trayectoria deseada, es decir, q(t) = qu) para toda la trayectoria, Debe advertise una vez mas, ante el posible optimismo de los resultados anteriores, que el segui- imiento absoluto de la trayectoria deseada qu(t) ante ausencia de perturbaci6n se conseguirfa solo si J, B y k fuesen perfectamente conocidas. En la préctiea, habré que conformarse con tener una buena «esiimacién de estos valores y admitir ciertas desviaciones entre qy 4p 7.14. Control PD con compensacién de gravedad Como se vio en 7.1.2, ef control PID asegura que ante perturbacién se anula el error en régimen permanente. Sin embargo, de usar s6lo un regulador PD no se consigue este efecto. Por otra parte, es sabido que la inclusién de la accién integral (k) necesaria para eliminar el error en régimen permanente, \iende a empeorar ta respuesta dinamica de la articulacién (ademés de tener otros inconvenientes, como se veri en 7.4.2), También en 7.1.3 se ha visto cémo la prealimentacién puede ser utilizada para eliminar elerror de seguimiento, siempre que se tenga un buen modelo del sistema, Recordando el esquema presentado en la Figura 7.1, se observa que en régimen permanente el (ér- ‘ino % depende sélo de la gravedad (matriz C(q)) y eventualmente de perturbaciones aleatorias, Puesto que q y q son nulas en esta situacién. El control PD con compensacién de gravedad saca partido de estos hechos, no utilizando la aecién integral para anular el error permanente, sino una aportacién G(q) que compensa el valor t) en régi men permanente. Al ser el valor G(q) debido tan solo al término de gravedad, su conocimiento y computo en tiempo real es relativamente simple. La Figura 7.7 recoge el esquema de control corres- pondiente, en el que ahora R(s) es un control tipo PD, R(s) = ky + kys, resultando la ley de control “[Rwe+Gq@] (7.251 Control dinémico 199 Arlculacion Figura 7.7. Esquema del algortmo de contro! basade en PD con compensacién de gravedad. ‘con lo que al considerar la relacién tensiGnpar del actuador (7.7) y el modelo dindmico de la aticulacién {7.8}, se tiene t=ku=R(se+G(q) t= (Is+B)sq+t,, > Rise + G(q) =Us+B)sq+t, = (RG) + Us+ B)s)e =(Us-+ Bsq, +1, -GQ) => Gls) (s+ B)sq, + SRO +Us+ Bs (726) Suponiendo que el robot se encuentra parado, esto es, que Ags = 0, se tend +,=G(a) Ale) = Lim sR) s+ Bs ten Si en régimen permanente +, viene dado sélo por los efectos de la gravedad t= C, se tendré que para que el error permanente sea nule: 200 Fundamentos de robotica G@@)=t, Cla) 17.28) Por lo tanto, una compensacién calculada a partir de los términos de gravedad, permit utilizar un controlador PD asegurando que el error permanente es nulo. 7.2. CONTROL MULTIARTICULAR La consideracién de que cada articulacién no se ve afectada més que por sus propias caracteristicas dindmicas, siendo el efecto de las dems (tepresentado por el par perturbador 1;) poco significativo, no ces siempre aceptable Frente a las técnicas basadas en el supuesto desacoplamiento de las articulaciones, las técnicas de control acoplado contemplan ef modelo dindmico real del robot, haciendo uso del conocimiento del ‘mismo para tratar de desacoplar el sistema, 7.2.1. Desacoplamiento por inversién del modelo Considerando una vez mas el modelo dindmico del robot, incluyendo esta vez un posible par exterior t= Deqa+ W049) + Clq) +F,4+ t, = DQ) +NG.G) +t, (7. 29) donde en N(q.4) se han incluido todos los pares distintos del de inercia (Coriolis, gravedad, rozamiento, ete). Para desacoplar este modelo puede recurrirse al esquema representado en la Figura 7.8, en el que la tensién de mando de los actuadores u se obtiene a partir de la seal @ y de las matrices D(a) y Niq.d). siendo: t= Ku=[D@i+Neo.d] t= D@i+Na@.d+t, t=4+D"(q)t, (7. 30) Resultando que el esquema de la Figura 7.8-a equvale al de la Figura 7.8-b, en el que se observa aque en ausencia de par externo t., la relacin entre # y q es desacoplada y Tinea Una vez desacoplado el sistema, es sencllo calcular el part necesario para seguir la trayectria descada qy. Bastard para ello con que = @, = s°Iqy, con lo que: Control dinmico 201 c= Bele Nea), a) b) Figura 7.8. Desacoplamionto por inversion del modelo @ = a+D"@r, 7.31 Como se observa, en ausencia de par exterior tsi ¢ = @. la trayectoria deseada qa y la real coin «iden, Por lo tanto, la ley de control correspondiente al método de desacoplamiento del modelo supo- ne que la tensién de mando a proporcionar a los accionamientos sea (Figura 7.9) u=K“[D@qg)s'tq, +NG.a)] (7.32) ‘Acclonamiento ce D@I+NGAD*t, ‘Algoritmo de control Figura 7.9. Esquema de algortmo de control basado en desacoplami to por inversién dol modelo 202. Fundamentos de robética 1. Control PID con prealimentacién Una ve2 conseguido independizar dinimicamente el movimiento de las aticulaciones del robot, cabe aplicar cualquiera de las tenicas de control presentadas en 7.1 para el caso de ejes indepe! conereto, la presencia de perturbaciones t,aleatorias no modeladas,e incluso las discrepancia alores reales y los estimados en las matrices D y N, pueden ser en cierta medida compensados con el clésico esquema de control PID. En el diageama de bloques de Ia Figura 7.10, todas las variables son vectores de dimensién a y el blogue R(s) es una matriz diagonal (n x ) de reguladores tipo PID: : RO= ° ky, (7.33) Este diagrama es equivalente al de la Figura 7.9 afadiendo un bucle PID, resultando similar, tal y ‘como se ha justificado en 7.2.1, al de la Figura 7.11. En él se verifica t=s'Iq, +Rie \ t=Diyi+Ned| 2° Dég)[s*Tqy + Rise] + Nig.) (7.34) Digi +NGGa) +e, Algoritmo de control Figura 7.10. Esquema de algoritmo de control basado en PID y prealimentacign sobre el sistoma dasacopiado, Control dindmico 203 Figura 7.11. Esquema de algortmo de contro! pasado on PID y prealimontacién sobre @! sistema desacoplado, Por otra parte, el modelo dindmico del robot [7.29], establece que: t= Diq)s'Iq+ Ng) +t. (7.35) Tgualando las ecuaciones [7.34] y [7.35] se obtiene: Deg[s*Iq, + Rie D@@[st+R@le=t, = Deqg)s'Iq+t, => e=[Di(s1+R@)] tr, (7.361 Expresidn que pone de manifiesto que la utilizacién de reguladores PID y prealimentacion de ace- leracién independiente por cada ee, junto con el desacoplamiento por la inversiGn del modelo da u- gara que: 1. Bn ausencia de perturbaciones (t, = 0) el error es siempre nulo y, por tanto, 4 = iy 2. Ante una perturbacién en forma de escalén (t= 1/5), el error en régimen permanente se anula. e(ce) = lim s[s*1+ R69] D(a) = limR()"D"(q) =0 (7.37) 204 Fundamentos de robotica puesto que: 1 kystky tks ° ° 1 Ris)" =s| ° Kast ky. + kgs? ° (7.38) 0 : o 0 kas | De la expresidn [7.34] y considerando la relacién proporcional entre la tensién de mando del motor y el par proporcionade por és, se tiene: u=K't=K"D@g)[s"Iq, +RVe] K 'N(@.4) 17.39) siendo ésta la denominada ley de control que establece el céleulo del par que debe realizar la unidad de control para fijar las consignas de par de los actuadores. La evaluaci6n en tiempo real de la expresién (7.39) puede ser excesivamente costosa. En ocasio nes, y considerando que las velocidades q de las articulaciones no son muy elevadas (del orden de ‘media vuelta por segundo) puede simplificarse su edleulo despreciando el efecto de la matriz. H(q.@) y de la matriz F,(q)q, sobre el término Nig.) que entonees coinciiré con Ia matriz de gravedad iq). La expresién [7.39] es el caso general de control por par calculado y segiin se consideren o no ciertostérminos, se tondrén diferentes casos particulares 7.3. CONTROL ADAPTATIVO. Como se ha visto en el epigrafe anterior, si se conoce perfeotamente el modelo dinémico del robot, es posible utilizar la técnica de desacoplamiento por inversiOn del modelo para, en ausencia\ de Perturbacién, conseguir que la rayectoria real coincida exactamente con la deseada ‘Sin embargo, en la préctica esta técnica tiene una aplicacién limitada, bien porque los parimeteos ‘que definen el modelo (inercias, rozamientos, ete.) no son conocidos con precisidn, © bien porque el céleulo continuo en tiempo real del modelo inverso es excesivamente lento. La técnica del control adaptativo se puede aplicar con buenos resultados en aquellas ocasiones en tas que el modelo, aun sicndo conocido, cambia continuamente por cambiar las condiciones de fun cionamiento, La idea bisica del control adaptativo es modificar en tiempo real los parmetros que Control dindémico 208 definen ef regulador (PID por ejemplo) de acuerdo al comportamiento instantaneo del sistema [RopercuEZ 96} En el caso de un robot, es evidente que el comportamiento del sistema, y por lo tanto el modelo del ‘mismo, cambia con los valores de sus variables articulares y con la carga que transporta, De este mo- do, supuesto que se hubiese ajustado adecuadamente un controlador para unas condiciones determi- nadas de localizacién del robot y carga manipulada, este ajuste no serfa vilido cuando alguna de estas condiciones cambiase ‘Muchos robots industriales tienen un nico controlador ajustado para unas condiciones interme- dias de funcionamiento y asegurando que los movimientos del robot se mantienen estables en otras condiciones, aunque con su calidad disminuida (tiempo de establecimiento, oscilacin, precision, etc.) La utilizacin de ta téenica de control adaptative permite reajustar los parametros del regulador cada vez que el comportamiento del robot se modifica, de modo que los movimientos de éste $e apro- ximen siempre a las especificaciones deseadas, Existen diferentes esquemas de control que entran dentro de! concepto de control adaptative, En todos ellos se utilizan procedimientos de identificacidn de los parimetros del modelo del sistema y algoritmos de célculo de los parmetros del regulador. El control por planificacién de ganancias puede ser considerado como un caso simple de control adaptativo, en el que un mimero determinado de reguladores estin precalculados para diferentes con- diciones de funcionamiento. Segtin se detecta que éstas se modifican se conmuta de un regulador a EL control adaptativo con modelo de referencia realiza una comparacién en Iinea entre el compor= ‘umiento del sistema real y el deseado. 5 error entre ambos comporlamientos se utiliza para modificar los parimetros del regulador. El control adaptativo autoajustable identifica continuamente el modelo del sistema y utiliza algin algoritmo de disefio para ajustar los pardmetros del regulador. Comw caso particular de éte se co- mentaré el control de par calculado adaptativo, 7.3.1. Control adaptativo por planificacién de ganancias (GS) En el método de planificacién de ganancias, una vez seleccionado el tipo de control a ulilizar (por cjemplo PID con prealimentacion de aceleraciGn independiente por cada eje) se ajustan los pardmetros del mismo para un nimero determinado de condiciones de funcionamiento. Las variables que hacen que estas condiciones. de funcionamiento se modifiquen son la earga que ‘manipula el robot y los valores de las coordenadas articulares. Durante el funcionamiento, los valores de las coordenadas articulares son conocidas por la unidad de contra del robot (ya sean las deseadas, seneradas por el control cinemitico, o las reales, obtenidas por los eaptadores de posicién), Asimis- mmo, la carga puede ser conocida, bien porque el programa del robot ineluya insteucciones que perm {an la especificacién de la misma, bien porque el extremo del robot cuente con un sensor adectiado 0 bien porque se incluyan algoritmos que permitan calcular la carga a través del comportamiento de ‘magnitudes fisicas del sistema (intensidad de accionamientos eléctrios, presién diferencial en hi Ardulicos, ete.) (PaUL-81} Con estos datos, el algoritmo de planificacién de gunancias hace uso de una tabla en la que estin especificados los parémetros de los reguladores a utilizar para cada uno de los grados de libertad. En 206 Fundamentos de robotica «el caso de que el punto de funcionamiento no coincida exactamente con las entradas a la tabla, puede utlizarse alguna técnica de interpolacién. Debe considerarse que en el caso general de un robot de 6 grados de libertad se tendria hasta 7 va- ‘iables a ir modificando para establecer las diferentes condiciones de trabajo. Esto puede dar lugar a ‘un niimero excesivo de puntos de funcionamiento y, por lo tanto, de reguladores distintos, Ast, supo- niendo que cada grado de libertad tuviese un recorrido de 180°, discretizados en intervalos de 15°, y que la carga variase de 0 a 50 kg, discretizéndose en intervalos de 5 kg, se tendrfa que el nimero de puntos de funcionamiento distintos a considerar serfa: 50 (180) S 3 (#2) 2.985894. 10) Ala vista de este resultado se concluye que no es posible realizar la citada discretizacién. Para disminuir ef niimero de modelos diferentes puede comenzarse por hacer las siguientes consideracio- 1. Los movimientos de los wiltimos 3 grados de libertad, destinados @ orientar el extremo del robot, suponen pequefias variaciones en Ia dindmica del robot, por cuanto las longitudes de las corres” pondientes articulaciones (parmetro d en los pardmetros D-H) son reducidas, En muchos robots, como es el caso de los articulares, el valor del primer grado de la libertad esti en un plano perpendicular a los demés. Eso origina que el efecto de su movimiento sobre los dems sea minimo, especialmente si las velocidades de movimiento no son elevadas. Figura 7.12, Robot articular de 3 grados de libertad. Control dindmico 207 ‘Ademés, un adecuado estudio del robot permite combinar los ejes para disminuir el nimero de en- tradas a la tabla. Asi, en ef robot articular de la Figura 7.12, la dindmica del eje 1 se ve afectada por una funcién de la masa reducida M; (de los eslabones 2, 3 y masa manipulada M) y de la distancia dy de Ja masa reducida al eje de giro del grado de libertad 1, cuyo valor es: 4, =I,cosq, +1,c0s(4, +45) reduciéndose asf el nimero de entradas a la tabla. Del mismo modo, el eje 3 por ejemplo, veria afectada su dindmica por una funcidn de la masa re- ducida Ms (del estabsn 3 y masa manipulada M) y de la distancia d; de ésta al eje de giro del grado de libertad, reduciéndose del mismo modo el miimero de entradas a la tabla. (Consideraciones similares pueden hacerse. sobre los demas ejes.) Un segundo problema a considerar en la utilizacién de un control por planificacién de ganancias 8, que si bien para los puntos de funcionamiento deseado se tiene asegurado la estabilidad y buen funcionamiento del sistema (con estas premisas se ha diseftado el reguladot), para puntos intermedios, distintos de los considerados, no esta garantizada ni siquiera la estabilidad, Este problema puede ser tratado de manera te6rica con técnicas similares a las utilizadas en control robusto [ASTROM-95], 0 bien de manera més préctica realizando un niimero amplio de pruebas en dife- rentes condiciones de funcionamiento. La Figura 7.13 representa el esquema de funcionamiento de un control monoarticular con algorit- ‘no PID y prealimentacién de aceleraci6n usando una planificacién de ganancias. Téngase en cuenta que la determinacién de los parametros ky, ky, ki, ky debe realizarse para cada uno de los grados de libertad sobre los que se desee reajustar el regulador. Figura 7.13. Control monoartcular con planiicacién de ganancias. 7.3.2, Control adaptative con modelo de referencia (MRAC) En este tipo de control adaptativo se parte de un comportamiento ideal del sistema, definido por un nodelo de referencia (Ia eleccién del mismo no es trivial), La diferencia instantinea entre el 208 Fundamentos de robética Figura 7.14. Funcionamionto de un controlador MRAC. ‘comportamiento real del robot q y el modelo deseado q” se utiliza para calcular los parémetros del controlador uilizado, La Figura 7.14 representa el funcionamiento de un controlador MRAC. Junto con el bucle de con: trol normal, dibujado en trazo grueso, aparecen otros bloques que componen el control adaptative, El algoritmo de control puede ser cualquiera de los presentados en las secciones anteriores. Asi, el algo: ritmo de adaptacién podria calcular los parémetros del control PID para cada punto de funcionamien- wo, La principal dificultad en la implantacién de este tipo de control radica en la eleceién del algorit- mo de adaptacién que asegure Ia estabilidad y correcto funcionamiento del sistema, Normalmente, este algoritmo utiliza técnicas como la del gradiente o del descenso mis profundo {GAsTINEL-7S] para ‘minimizar el error q, entre el comportamiento del sistema real y del modelo de referencia, De nuevo, el anilisis tedrico de la citada estabilidad es complejo, por lo que en la prictica es fre- ccuente conformarse con un comprobacién experimental del comportamiento del sistema, Estudios detallados sobre el control adaptativo con un modelo de referencia y su aplicacién para robots, pueden encontrarse en [ASTROM-89], [CRa1G-88] y [Ko1vo-83} 7.3.3. Control de par calculado adaptativo En el epigrafe 7.2 se examiné la técnica de desacoplamiento por inversién del modelo, en la cual el ‘conocimiento de las matrices D y N del modelo dinamico del robot permitfan aplicar una ley de contol de la forma [7.39} u=K“DGg)[s*la, + Rise] +N(q.9) (7.40 Control dinémico 208 consiguigndose que la evolucién de las articulaciones respondicra a [7.36] 4, =4+(S'1+R)'D"(@)t, van) Esto es, en ausencia de perturbaciones, coincidian la trayectoria deseada qy y la real q, Y en pre- sencia de perturbaciones de tipo escalén, el error (e = qe- q) tenderia a cero [7.37] Los problemas de este método surgen por una parte de la dificultad de calcular en tiempo real la expresién [7.40] del par y por otra parte, del dificil conocimiento preciso del modelo dinémico del robot (matrices D y N), que ademés de variar con la localizacién q del robot, depende de ciertos pax rémetros, como masas, inercias o rozamientos, de dificil obtencidn. El par calculado adaptativo trata de resolver este problema con una identificacin paramétrica en tinea de las matrices D y N. De este modo, el esquema de control presentado en la Figura 7.10 se con vertird on el de la Figura 7.15. De nuevo, las dificultades aparecen a la hora de asegurar la estabilidad el sistema y de su implantaci6n en tiempo real. En concreto, la convergencia del algoritmo de identi- fieacién no esté asegurada, pot cuanto que los valores que toman las sefiales qu y q no estan seleccio- xados con vistas a la identificacién del modelo, sino que son consecuencia de las tareas encomenda- das al robot. Asimismo, 1 cdlculo en tiempo real de las matrices Dy N es extremadamente laborioso. Un estue dio detallado de la técnica de control por par calculado adaptativo y sus variantes puede verse en {Lews-93} Algoritmo de identificacién Figura 7.15. Esquema de control por par calculado adaptative. 210 Fundamentos de robotica 7.4, ASPECTOS PRACTICOS DE LA IMPLANTACION DEL REGULADOR Los algoritmos de control anteriormente expuestos, superadas sus limitaciones teéricas como robustez y convergencia, parecen prometedores por cuanto aseguran el objetivo de que la trayectoria deseada del robot se aproxime en mayor 0 menor grado a la real. Sin embargo, la implantacién prictica de estos algoritmos se encuentra con diferentes tipos de problemas, que en algunas ocasiones dificultan y ‘complican su puesta en marcha o incluso anulan completamente su utilida. ‘La primera dificultad, ya citada, se deriva del elevado coste computacional implicado en el célculo de alguno de ellos. Asf, en general, las tScnicas de inversiGn del modelo (con métodos adaptativos © ‘no) precisan de la obtencién en tiempo real de las matrices D y N. En algunos casos, la reciente po- tencia de los equipos de célculo utilizando procesadores digitales de sefial (DSP) o téenicas de proce: samniento en paralelo (transputer), resuelven este problema. Se van a tratar aqui otro tipo de dificultades, comunes en general a cualquier sistema de control discreto y que se centran en la implementacidn de las técnicas mas basicas, como es la del control PID. 74.1. Ajuste de los parametros del PID. Especificaciones de disefio En cualquiera de las téenicas de control establecidas alo largo de los epfgrafes anteriores, se planteaba la cexistencia de un control PID cuyo objetivo era que, atin con la presencia de posibles perturbaciones, cl error entre la trayectoria deseada y Ia real convergiese a cero de Ia manera més répida. Este regulador tenfa la forma estindar dada por la expresién: (7.42) _quedando por decidir los valores coneretos de las constantes proporcional ky, integral ky derivative ky La seleccién de estos parémetros afectard al modo en que el robot alcanza su posicisn final al va- ‘iar la referencia de ésta 0 al recibir una perturbacién que trata de modificarla (PaU-81]. En el caso simple del control monoarticular, el modelo del robot responde al esquema de la Figura 7.5. Suponiendo que se utilicen las tres acciones del regulador PID (i.e. ky. ki, ke distintas a cero) la fancién de transferencia del regulador podré suponerse de la forma: Rn, S640) 17.43) La Figura 7.16 representa el lugar de las raices del sistema global. La eleccién adecuada de los ce- ros ay by de la ganancia k (lo que equivale a seleccionar las constantes ky, kk.) s€ haré de acuerdo 212 Fundamentos de robética (7.46) Por otra parte, si bien se ha considerado que Ia estructura del robot es rigida, en realidad ésta ten- ddréuna determinada flexiblidad estructural caracterizada por una frecuencia de resonancia estructural «, En [PAULI] se aconseja evitar que el sistema se vea excitado por una frecuencia cereana a «, por Jo que la frecuencia natural del sistema regulado debera ser inferior ala mitad de ey. Esto es: o,<2 = a -256) ise comprucba el estado del canal de comunicacién comprobando que la recepcién es correcta IF IOSTAT(u_est,0) <= 0 THEN TYPE “iostat error!!!", IOSTAT(lu_est,0) TYPE "Recepcion incorrecta de orden" DETACH (Iu_est) se libera la unidad logica de la tarea asignada GOTO 10 END Programacién de robots 251 ;se asigna el cOdigo de la funcién recibida cod_fun = ASC(SMID($mens_rbdo,1,1)) :EJECUCION DE ORDENES 'se compricba si el robot esti listo, Si lo esti’ se da paso al programa de control, si no, se envia un mensaje diciendo que el robot no esta preparado IF ((STATE(1) <> 2) OR (cod_fun == 4)) THEN hay_cod_fun = TRUE ;da paso al programa del robot que estaba en espera activa, WAIT (NOT hay_con_fun) _ ;espera.a que se haya ejecutado la orden ELSE ‘Smens_tir = $CHR(S0+cod_fun)+SINTB(er_rob.n0.0k) END sTRANSMISION DE MENSAJES ‘WRITE (Iu_est) $mens_ttir,/S_;se envia el mensaje a través de la unidad logica sxe comprueba si hay error en la transmisidn. En ese caso se restablece la conexién IF IOSTAT(u_est) <= 0 THEN TYPE "ERROR en la transmision de" ‘TYPE ASC($MID($mens_ttr,1,1)) DETACH (lu_est) _;s¢ libera el canal de comunicacién GOTO 10 se restablece la conexién END hay_syst_err=FALSE. ;indica que no ha habido error GOTO 20 cespera una nueva orden END fin del programa de comunicacién El programa de control del robot se encarga de ejecutar los cédigos de funcién pasados por el or- denador en Scod_fun y devuelve el mensaje Smens_ttir. Segiin el cédigo de funcidn recibido, el robot puede realizar tres tareas : inicializacion, tarea de pick & place y parada. En el presente ejemplo slo se muestra la programacién de la tarea de pick & place, pudiendo et lector realizar el ejercicio de completar las otras dos tareas. El programa de control, podria tener el siguiente aspecto: PROGRAM robot() sINICIALIZACION DE LAS VARIABLES sindica la altura de aproximacin y salida en milimetros: sindica la velocidad répida ‘indica la velocidad lenta 282 Fundamentos de robiitica DE REENTRADA TRAS SYST_ERR programa de control ha sido relanzado" REACTE errores _;habilita el proceso asincrono de tratamiento de errores 20 WALT(hay_cod_fun) espera hasta que esté disponible un cédigo de funcidn TYPE "Codigo recibido", cod_fun_ indica através del monitor el cédigo que se ha recibido CASE cod_fun OF VALUE I: ;INICIALIZACION sag se ineluira el ebdigo de VALUE2: PARADA :agqui se ineluieia el cédigo correspondiente a la parada VALUE3: PICK & PLACE ‘TYPE "Recibida la orden de PICK & PLACE" ATTACH (0) ;Asigna al programa la tarea nimero 0 SET pos, ‘TRANS(431,610,523,0,180,45);indica el punto de recogida de las piezas SET pos_dej = TRANS(227,-548,712,0,180.45):indica el punto de dejada de las piezas scomienza la operacion de picking, SPEED rapida ALWAYS —_;selecciona la velocidad ACCEL 90, 75 :selecciona la aceleracién APPRO pos_in, altura ;se aproxima al punto de recogida a una distancia "altura SPEED lenta sreduce la velocidad MOVE pos_in ise mueve al punto de recogida CLOSEL icierra la pina DEPARTS altura :se separa hasta una distancia “altura” soperacion de dejada de la pieza SPEED rapida ALWAYS ;selecciona la velocidad ‘ACCEL 90,75 sselecciona la aceleracign APPRO pos_dej, altura :se aproxima al punto de dejada a una distancia “altura” SPEED lenta sreduce la velocidad MOVE pos_dej :se mueve al punto de dejada OPENI sabre la pinza, DEPARTS altura se separa hasta una distancia "altura" END _ finde la instruccion CASE hay_cod_fun = FALSE sindica que ya no hay eédigo de funcién GOTO 20 sregresa al éstado de espera END :fin del programa de control Por tltimo, se muestra un ejemplo de cémo seria el programa de tratamiento de errores. Programacién de robots 283 PROGRAM errores() ‘TYPE "RUTINA DE TRATAMIENTO DE ERRORES DEL SISTEMA V+" ‘TYPE "Error mimero : ", ERROR(-1) ‘TYPE "Mensaje : ", SERROR(ERROR(-1)) error = ABS(ERROR(-1)) __:asigna el error que se ha producido Scod_er = $INTB(error);comprueba cuil es el error hay_syst_err= TRUE sindiea que se ha producido un error hhay_cod_fun = FALSE indica que no hay eédigo de funcién EXECUTE 2 er_robot() sejecuta el programa err_robot asignsindole Ia tarea 2 CYCLEEND 2 RETURN END, sfin del programa de tratamiento de errores PROGRAM ert_robot() ABORT I saborta la ejecucién del programa de control del robot CYCLE.END 1 EXECUTE I robot() sejecuta el programa de control del robot ‘asignandole la tarea #1 ABORT 2 END fin del programa err_robot() 8.5, BIBLIOGRAFIA [ABB-94]ABB Robotics, RAPID Programmig Manual, 1994. (ADEPT-89} Adept Technology Inc., Adept V+ Programming Manual, 1989. [AMBLER-86] Ambler, A.P, Cameron, S.A. y Comer, D-F,, "Augmenting the RAPT Robot Language”, en: Languages for Sensor-Based Control in Roboties (U.Rembold y K. Hérmann Ed.), pp. 305. 317. Springer-Verlag, Berlin, 1986, [BARRIENTOS-86} A, Barrientos, Sistema operativo y lenguaje de programacién para robots dotados de sensores, Tesis Doctoral, DISAM, Universidad Politécnica de Madrid. (BLUME-86] Blume, C. y Jakob, W., Programming Languages for Industrial Robots, Springer-Verlag, Berlin, 1986, (BoNNER-82] Bonner, S. y Shin,K.G, “A Comparative Study of Robot Languages”, Computer, 12, pp 82-96, 1982 Capitulo CRITERIOS DE IMPLANTACION DE UN ROBOT INDUSTRIAL Nemsasanasresemcere Del dicho al hecho hay gran trecho. Refranero popular Un robot industrial raramente trabaja como un elemento aislado, sino que forma parte de un proceso de fabricacién que incluye muchos otros equipos. EI robot, parte principal de la denominada célula de trabajo robotizada, debe en general interactuar con otras miiquinas, formando parte de un estructura de fabricacion superior. En este capitulo se abordarin, tanto desde un aspecto téenico como econémico, aquellos temas relacionados con la implantacién de un robot en un entomo industrial. El primer aspecto considerado es el disefio de la célula desde el punto de vista del lay-out (esquema de disposicién de equipos, méquinas y dems elementos de la planta) y de la arquitectura de control. Se trata de una cuestiOn importante para poder extraer las meiximas prestaciones a un robot industrial durante su explotacién, como también Io es el escoger el robot adecuado para una determinada aplicacion. En este capitulo se dan algunas indicaciones y se explican aquellas cuestiones a considerar para tomar dicha decisién. La seguridad de Ia céluta robotizada también es tratada de forma especial, pues obliga a tener en cuenta consideraciones importantes en la fase de disefo, desarrollo y explotacién. ‘Se exponen también algunas indicaciones de cémo realizar la justificacion econdmiea de la implantacién de una eélula robotizada. Finalmente, se muestra una imagen actualizada de cudl es la situacién del mercado de robots en Espatia, 255 256 Fundamentos de robotica 9.1. DISENO ¥Y CONTROL DE UNA CELULA ROBOTIZADA. El proyecto e implantacién de un sistema robotizado implica la consideracién de un gran niimero de factores, que van desde el posible redisefio del producto, hasta la definicién detallada del Jay-out 0 plano de implantacién del sistema (Figura 9.1) Junto con ta seleccién més adecuada del robot para la aplicacién, habra que defini, e incluso diseftar, los elementos periféricos pasivos (mesas, alimentadores, utillajes, etc.) 0 activos (manipuladores secuenciales, maguinas CN, ete.) que intervienen en la célula, y situarlos fisicamente en el sistema, igura 9.1. Ejempio del lay-out de una célua robotizada de fabricacién de calzado, Criterios de implantacién 287 Asimismo seri preciso definir y seleccionar la arquitectura de control, tanto hardware como software, que todo sistema flexible de fabricacién debe incluir. La definicién del lay-out del sistema es un proceso iterativo del que debe resultar la especificacién del tipo y numero de robots a utilizar, asi como de los elementos periféricos, indicando la dispasicién relativa de los mismos, En este proceso iterativo es clave la experiencia del equipo técnico responsable del diseiio. La utilizacién de herramientas informiticas, como sistemas CAD, simuladores especificos para robots y simuladores de sistemas de fabricacién flexible facilitan enormemente esta tarea, Un simalador de sistemas robotizados permite de manera répida y eficiente evaluar las diferentes altemativas en cuanto al robot a utilizar y la disposicidn fisica de todo el sistema, Utilizando la interaccién grafica, se puede analizar qué robot de los existentes en la libreria del programa se adapta ‘mejor a la tarea programada, detectando posibles colisiones y verificando cl aleance [RoDRKGUEZ-93]. Un simulador de sistemas de fabricaci6n flexible permite dimensionar adecuadamente la célula, informando sobre su productividad, rendimiento y comportamiento ante cambios de Ia demanda o situaciones imprevistas (averias, cambios en el producto, etc.). Asimismo permite ensayar diferentes estrategias de control de la eétula encaminadas a optimizar su funcionamiento (CACI-95} 9.1.1, Disposicién del robot en la célula de trabajo ‘Ala hora de decidir fa disposicién del robot en la célula, cabe plantearse cuatro situaciones basicas: Robot en el centro de Ia e¢lula En esta disposicion ef robot se sitia de modo que quede rodeado por el resto de elementos que intervienen en la célula, Se trata de una disposicién tipica para robots de estructura articular, polar, cilindrica 0 SCARA, en la que se puede aprovechar al méximo su campo de accién, que presenta una forma bisica de esfera a) ») Figura 9.2. Disposicién del robot en a el centro da la célua yb) en tinea, 258 Fundamentos de robética Figura 9.3. Robot en ol centro de una célula de pulido del plazas de rel) (Contesta de KUKA,) La disposicin del robot en el centro se usa frecuentemente en aquellas aplicaciones en las que un robot sirve a una o varias méquinas (carga-descarga de miiquinas herramientas), asi como en las aplicaciones de soldadura al arco, paletizacién o ensamblado, en las que el robot debe alcanzar diversos puntos fijos dentro de su irea de trabajo (Figura 9.2-a y Figura 9.3). Robot en linea Cuando uno © varios robots deben trabajar sobre elementos que llegan en un sistema de transporte, la disposicion de robots en linea es la més adecuada. (Figura 9.2-b,) EI ejemplo mis representativo de esta disposicién son las Iineas de soldadura de carrocerias de vehiculos, en las que éstos pasan secuencialmente frente a sucesivos robots alineados, cada uno de los cuales realiza una serie de puntos de soldadura, En este tipo de disposicién cabe diferenciar que el transporte sea de tipo intermitente o continuo. En cl primer caso, en un momento determinado cada robot tiene delante una pieza sobre Ia que realiza las ‘operaciones establecidas. Una vez acabadas estas, bien se espera a que todos los robots finalicen sus tareas, para que entonces el sistema de transporte avance un puesto, o bien, si el sistema lo permite, da salida a la pieza que proceda, quedando disponible para recibir una nueva, Sie! transporte es continuo, esto es, si las piezas no se detienen delante del robot, éste debe trabajar sobre Ia pieza en movimiento, para lo que el transporte debera limitar su velocidad de modo que la pieza ‘quode dentro del aleance del robot durante al menos el tiempo de ciclo. Criterios de implantacion 289 Robot mévil En ocasiones es itil disponer al robot sobre una via que permita su desplazamiento lineal de manera controlada (Figura 9.4). Esta posibilidad permite, por ejemplo, seguir el movimiento de la pieza en el caso de que ésta se desplace sobre un sistema de transporte continuo, de modo que la posicién relativa entre pieza y robot durante el tiempo que dura el proceso se mantenga fija. Para ello es necesario una precisa sineronizacién de los dos movimientos: transporte de la pieza y transporte del robot, lo que se puede conseguir con un acoplamiento mecanico desembragable o mediante un adecuado control en cadena cerrada de ambos transports. En cualquier caso, una vez acabado el procesamiento de la pieza, el robot debe regresar ripidamente a su posicininicial para recibir una nueva tra situacién en la que el empleo del robot con capacidad de desplazamiento Tineal es particularmente ventajosa es cuando éste debe cubrir un elevado campo de accién. Por ejemplo, en la pintura de carrocerias de coches, el dotar al robot de este grado de libertad adicional permite que dos robots de dimensiones medias (2 metros de radio de alcance aproximadamente) lleguen con la orientacién adecuada a todos los puntos de proyeccién correspondientes a un coche. Asimismo, esta disposicién del robot puede utiizarse cuando éste tenga que dar servicio a varias maquinas (por ejemplo, para carga-descarga de miiquinas herramientas), obteniendo el maximo rendimiento del robot. Figura 9.4, Disposicién de robot mévil sobre rail. (Cortesia de KUKA) 260 Fundamentos de robstica Robot suspendido La disposicién del robot suspendido es la intrinseca de un robot tipo portico en la que éste queda situado sobre el area de trabajo. Pero ademis de esta estructura de robot, es posible colocar un robot articular invertido sobre la célula (Figura 9.5). Las vemtajas fundamentales que se obtienen en este segundo caso son las de un mejor aprovechamiento del area de trabajo, pues de este modo el robot puede acceder a puntos situados sobre su propio eje vertical Las operaciones tipicas donde se utiliza el robot suspendido son en aplicacién de adhesives © sellantes, proyeccidn de material (pintura, acabado superficial, ee.) corte (chorro de agua, liser, etc.) y soldadura al arco. Algunos fabricantes incluso han desarrollado modificaciones sobre sus rabots baisicos, tanto en su estructura mecanica como en su control, para facilitar el uso del robot en esta disposicion, Figura 9.5. Robot IRB 2200 proyactando cemento en disposicién suependide, (Cortesfa de DISAM-UPM,) Criterios de implantacién 261 9.1.2. Caracteristicas del sistema de control de la célula de trabajo Una vez establecidos los elementos operativos de la célula y su disposicién en la planta, cl segundo factor eritico en la definicién de la célula robotizada es la especificacin del sistema de control Una célula robotizada debe responder a las premisas de flexibilidad y automatizacién que justifican su empleo, Para ello es imprescindible el establecimiento de un buen sistema de control que deberd realizar, entre otras, las siguientes funciones. * Control individual de cada una de las miquinas, transportes y demas dispositivos, incluidos robots, que compongan la célula, © Sincronizaci6n del funcionamiento de los diferentes dispositivos entre i. + Deteccién, tratamiento y recuperacién si es posible de las situa rnamiento que puedan presentarse * Optimizacién del funcionamiento conjunto de los dispositivos de la célula, distribuyendo si ¢s posible las funciones de manera dindmica, para asf evitar paradas por espera o acciones in- ‘* Interfaz con el usuario, mostrando la informacién adecuada para que en todo momento se co- nozca con el detalle necesario el estado del sistema, asi como permitiendo que el aperador ac- cceda, con las restricciones pertinentes, al funcionamiento del mismo. ‘= Interfaz con otras cétulas, para permitir la sincronizacion entre ellas, oplimizando el funcio- namiento de un sistema de fabricacién flexible compuesto por varias células. * Interfaz con un sistema de control superior que resliza baisicamente funciones de supervisign y actualizacién de programas cuando se diese un cambio en la produccién, ‘ones andmalas de funcio- Estas funciones, que pueden ser necesarias en mayor o menor medida en el control de una célula robotizada, se implementarin en un hardware que serd preciso definir y dimensionar, En aquellas ccasiones en las que la simplicidad de ta célula lo permite, el propio controlador del robot podr simultanear las funciones propias de control de sus ejes con el mando del resto de los dispositivos, Para ello utilizar sus entradas/salidas digitales/analdgicas, o si fuera necesario la posibilidad de incorporar «jes extemos servocontrolados, Si por el contrario la célula incluye un mayor niimero de dispositivos, algunos de los cuales incluso disponen de su propio controlador, ser preciso disponer de una estructura jerarquizada en la que un elemento central (ordenador, PLC, etc.) mantenga una comunicacién con el resto de los controladores. En cualguier caso, el correcto dimensionamiento del control de la célula es tarea que no debe desestimarse, pues repercutira tanto en el coste de implantacién y desarrollo de la misma como en el de cexplotacion, 262 Fundamentos de robstica 9.2. CARACTERISTICAS A CONSIDERAR EN LA SELECCION DE UN ROBOT Cuando se desea robotizar un determinado proceso, el equipo de técnicos responsable de esta tarea debe seleccionar el robot mis adecuado. Para ello recurrird a su experiencia y buen criterio, escogiendo, dentro del amplio mercado de robots existente, aquel que mejor responda a las caracteristicas necesatias ¥y buscando siempre el adecuado compromiso entre precio y prestaciones, ‘Tabla 9.1, Ceractristicas a toner en cuenta pera le seleccién de un obot CBE. BEOMEISESS hoes de abajo (Gras de Hoertad Enos de posicioraieno Distancia as emergeoca Repaid Resoluién ores el segumiento de myers Calide de unaiea eta a, Precise endo se mee mimo inremento posible Crs cneméticts ida nominal maxima -Accleracion yceeeacon Carst indmiess De agare Capi maxima Conol defers par Freosncia de rsonancla Tipe movimientos Mviniestos puntos punto Movimienioscoorsinas Trays coninas (CP) Modo PoBrPWCISY sean unt Textual Tipp accionamlente gcc (6 altema oc. continua) Neumatieo Hicrduicn — BS Diptales/Analdgicas Comunicaciones linea serie Semicio provesdor — ganeeiminto, Servicio Ténico, Cursos 6 formciin Conte Criterios de implantacién 263 La scleccién del robot més idéneo debe hacerse valorando una gran variedad de caracteristicas, siendo éste un proceso de dificil sistematizacién. Sin embargo, en general puede ser suliciente con cconsiderar un conjunto Fimitado, En los catilogos de robots, los fabricantes proporcionan los valores de las prestaciones de sus productos. Estos valores estin con frecuencia medidos en condiciones éptimas, diferentes de las reales; ro obstante, sirven como medida comparativa para la seleccién del robot, Por otra parte, aunque hasta el momento no existe una homologacién oficial para los robots industriales que garanticen la veracidad de los datos de catilogo, si existen laboratorios con acreditado renombre en los que se realizan una serie de lest orientados a cuantificar las caracteristicas de los robots con elevada exactitud. Este es el caso del Instituto aleman IPA (Stuttgart) Se van a comentar a continuacidn las caracteristicas mis destacadas que deben ser consideradas a la hora de seleccionar un robot para una determinada aplicacién, y que han sido recogidas de manera resumida en la Tabla 9.1 9.2.1. Area de trabajo El rca de trabajo o campo de accidn es el volumen espacial al que puede llegar el extremo de! robot Este volumen esti determinado por el tamafio, forma y tipo de los eslabones que integran el robot (Figura 9.6), asi como por las limitaciones de movimiento impuestas por el sistema de control. Nunca deberd utilizarse et efector colocado en la mufieca para la obtencion del espacio de trabajo, ya que se trata de un elemento afadido al robot, y en el caso de variar el efector el rea de trabajo se tendria que caleular de nuevo, En los catalogos suministrados por os fabricantes se suele indicar el rea de trabajo mediante un Aibujo acotado. Cuando la informacién es de tipo numérico, el rea de trabajo se indica mediante el tango de recorrido de cada articulacn. El robot debe elegirse de modo que su rea de trabajo (0 campo de accién) le permita llegar a todos los puntos necesarios para evar a cabo su tarea. En este sentido, no debe olvidarse la necesidad de ineluir entre 10s puntos a acceder los correspondientes a puntos de recogida de piezas (alimentadores), mesa de trabajo, puntos de salida de piezas, ete. El que el robot pueda acceder a todo et espacio de trabajo no significa que lo pueda hacer con cualquier orientacién, Existirdn un conjunto de puntos, los mais alejados y los mis cereanos, que tnicamente se podran acceder con unas orientaciones determinadas, mientras que otros puntos admitirin cualquier orientacibn Se ha de tener en cuenta también la posible existencia de los denominados puntos singulaes, que yt fueron explicados en el epigrafe 4.3.3. Se trata de puntos con una determinada orientacin en el espacio sobre los que, por ejemplo, no es posible realizar una trayectoriarectilinea, bien sea porque su ejecucion implicaria el movimiento a velocidad infinita de uno de los ees. bien porque el valor de los ejes en ese punto con esa orientacién se encuentre indeterminado. La disposicin éptima de todos los elementos que compondrin Ia eélula junto con el robot, una delicada tarea por el gran mimero de variables a considerar. No basta con asegurarse de que todos los puntos necesarios quedan dentro del campo de accin, sino que se debera verificar que una vez situados los dems componentes de la célula, el robot no coisione con ellos al efectuar sus movimientos. 264. Fundamentos de robotica a Figura 9.6, Contiguracisn y seccién del éroa de trabajo del robot ROCCO. Por este motivo, es de gran ayuda el empleo de programas de simulacién grifica (ROBCAD, GRASP, TOROS, ete.), que dotados de un sistema de didlogo interactivo con el usuario, permiten seleccionat mediante ensayo y ertor la disposicién éptima de la eélula, pudiéndose incluso ensayar diferentes robots almacenados para tal efecto en memoria (Figura 9.7). Criterios de implanacion 265 Figura 9,7. Célula de soldadura en la industia de automocién simulada con ROBCAD. (Contesia de TECNOMATIX) 9.2.2. Grados de libertad E] mimero de grados de libertad con que cuenta un robot (GDL) determina la accesibilidad de éste y su ccapacidad para orientar su herramienta terminal. Es relativamente frecuente que el nimero de GDL de Jos robots comerciales coincida con el niimero de articulaciones, es decir, que cada articulacién representa un GDL, Laeleccion del mimero de grados de libertad necesarios viene determinada por el tipo de aplicacién. Asi, en muchas operaciones de manipulacién, (pick & place, paletizado) los objetos se recogen y depositan sobre planos horizontales. En estos casos, un robot con 3 GDL para posicionar, y a lo sumo uno mas para orientar (giro en tomo a un eje vertical), es suliciente. Sin embargo, en otras aplicaciones, es preciso orientar la herramienta en el espacio 0 acceder a posiciones complicadas, siendo precisos 6 0 incluso mis grados de libertad. Aplicaciones tipicas que precisan de 6 GDL pueden ser la pintura, la .soldadura al arco o la aplicacién de sellantes. Con cierta frecuencia los fabricantes de robots proporcionan un nimero determinado de grados de libertad ampliables (en 1 0 2) de manera opcional. Este grado extra se afiade al robot en unos casos en su extrema y en otros en su base. En general hay que considerar que el aumento del mimero de grados de libertad lleva parejo un considerable aumento del coste del robot. En ocasiones, éste puede suplirse con el empleo de un utillaje apropiado y con el redisefio de las piezas que entran a formar parte de la instalacion. Asi, en tareas en las 266 Fundamentos de robética que ¢ preciso acceder a piezas grandes 0 complejas, Estas pueden ir montadas sobre mesas Posicionadoras w orientadoras, que disponen de un niimero finito 0 infinito de posiciones alternativas, contoladas de manera sincronizada con el robot. En el primer caso, el accionamiento puede ser neumitico 0 hidréulico, siendo. su coste comparativamente reducido. En el segundo caso (osicionamiento continuo), el precio de estos periféricos auxiliaes es elevado, debiéndose escoger con Cuidado ia solucin a adopter. En cualquier caso, y para (areas muy especificas, se pueden desarrollar robots con mis de 6 GDL como configuracién basica. Se les suele denominar robots redundantes, aunque esta terminologia se aplica de forma més especfica a aquellos robots que poseen mis GDL que los que implica la tarea que realizan,independientemente de cudl sea el niimero de los mismos, En la actualidad los valores tipicos ‘en cuanto al mimero de GDL varia entre tes y seis. 9.2.3. Precisién, repetibilidad y resolucién Las ventajas del robot frente a otras méquinas en muchas de las aplicaciones actuales se basan ademis 4e en la flexibilidad y velocidad, en el bajo error de posicionamiento con el que realizan su trabajo, Para la definicién de este error es necesario tener en cuenta tres conceptos complementarios entre sf, como son: la precisién, la repetibilidad y la resolucién. De entre los res, el dato normalmente suministrado por los fabricantes es el de repetibilidad y éste es el utilizado a la hora de seleccionar un robot u otro por st cxactitud, La Figura 9.8 presenta graficamente estos tres conceptos. El origen de cada uno de ellos es diferente: su definicién y causa se indica a continuacién Pression ~ — Puntos Resolcidn Repeibiidad Figura 9.8. Visvalizacién de los conceptos de resoluciin, precisin y repetibilidad. Criterios de implantacién 267 ‘© Resolucién: Minimo incremento que puede aceptar la unidad de control del robot. Su valor esti limitado por Ia resolucién de los captadores de posicién y convertidores A/D y D/A, por el ‘iimero de bits con los que se realizan las operaciones aritméticas en la CPU. y por los ele~ mentos motrices, si estos son discretos (motores paso a paso, sistemas neumaticos todo nada, te.) ‘* Precisi6n: Distancia entre el punto programado (normalmente de manera textual) y el valor ‘medio de los puntos realmente alcanzados al repetir el movimiento varias veces con carga y temperatura nominales. Su origen se debe a errores en la calibracién del robot (punto de sincro- nnismo por ejemplo), deformaciones por origen térmico y dindmico, errores de redondeo en el ciileulo de la transformacién cinematica (especialmente en las cercanias de puntos singulares), errores entre las dimensiones reales y teéricas del robot, etc ‘+ Repetibilidad: Radio de la esfera que abarca los puntos alcanzados por el robot tras suficien- tes movimientos, al ordenarle ir al mismo punto de destino programado, con condiciones de ‘carga, temperatura, etc, iguales. (Normalmente se considera Ia banda que abarca el 99% de los puntos respecto a la media.) El error de repetibilidad es debido fundamentalmente a problemas cn el sistema mecénico de transmisién como rozamientos, histéresis, 2onas muertas (backlash). Ef error de repetibilidad tiene especial importancia en aquellos robots que son programados pot aprendizaje, pues entonces no afectan los debidos a la resolucién ni precisin, Los valores normales de error de repetibilidad de robots industriales comerciales varian entre los +2 milimetras y +0,01 rilimetros. En el valor total del error de posicionamiento de un robot, afectan una serie de factores, como la Tongitud de sus brazos, carga manejada, tipo de estructura (la cartesiana no precisa transformacién homogénea, evitindose errores de cilculo), que pueden dar una idea general sobre la calidad del posicionamiento final de su extrem. Asi, por lo general, os robots cartesianos y los de reducidas dimen- siones son mas precisos (en el sentido global) que otros como articulares 0 robots de gran envergadura. Otras medidas relativas a los posibles errores de posicién de un robot son las relacionadas con la precision con que un robot, que disponga de capacidad para ello, recorre una determinada trayectoria programada, por ejemplo una linea recta, En este caso, los posibles errores se ven afectados por las ‘mismas causas que los anteriores mis por aquellas derivadas del algoritmo interpolador de la trayectoria yy de su control dindmico. Asi, el niimero de puntos con que se interpole una trayectoria determinari la precision con que el robot la sigue. Este miimero de puntos esté limitado por el tiernpo de cdlcuto de la transformacién inversa (dependiente de fa estructura del robot, potencia de célculo del sistema de control, ete.) asi como por la velocidad con que se dese recorrer la trayectoria programada (Idgicamente una menor velocidad posibilitard un mayor nimero de puntos interpolados) 9.2.4. Velocidad ‘Como ya se ha indicado, la velocidad a la que puede moverse un robot y la carga que transporta, estén inversamente relacionados. Tanto es asi que en muchas ocasiones los datos proporcionados en catilogo sobre Ia velocidad de movimiento del robot se dan para diferentes valores de la carga a transportar. De 268 Fundamentos de robstica {gual forma y como es logico, también suele existir una relacién de orden inverso entre el error de Posicionamiemto y la velocidad del robot. La velocidad de movimiento de un robot puede darse por la velocidad de cada una de sus aniculaciones 0 por la velocidad media de su extremo, siendo esta ultima més ttl para el usuario, pero mds imprecisa. El valor de la velocidad nominal de movimiento de un robot es un dato relevante para el celeulo de los tiempos de cicto, sobre todo en robots destinados a tareas de manipulacién 0 ensamblaje, No obstante, hay que considerar que el dato proporcionado normalmente corresponde a la velocidad nominal en régimen permanente. Para alcanzar este régimen es preciso que el movimiento del robot sea sufieientemente largo. En otro caso, los tiempos de arranque y parada son proporeionalmente mas significativos que el correspondiente al movimiento a velocidad nominal. En la prictica, en ta mayoria de los casos los movimientos del robot son ripidos y cortos, con lo que Ja velocidad nominal es alcanzada en contadas ocasiones. Por este motivo, la medida del tiempo de ciclo no puede ser obtendia a partir de la velocidad, siendo ésta una valoracién cualitativa del mismo. En vez de este dato, algunos robots indican el tiempo empleado en realizar un movimiento tipico (un pick & lace, por ejemplo). Los valores habituales de velocidad del extremo oscilan entre 1 y 4 m/s con carga mixima, 9.2.5. Capacidad de carga La capacidad de carga del robot a seleccionar para una determinada tarea viene condicionada por el tamafio, la configuracién y el sistema de accionamiento del propio robot. Por otra parte, al evaluar la carga a manipular por el robot debe considerarse el peso de las piezas a manipula y el propio peso de la herramienta o pinza que emplee el robot colocada sobre Ia mufieca (en muchas ocasiones superior al de los propios objetos). Se debe tener en cuenta ademis de la carga, el momento que Ia pieza a transportar genera en el extremo del robot. Pata ello el fubricante puede proporcionar un cuadro en el que se indica Ja dismimucion de la posible carga a transportar para no disminuir prestaciones a medida que el centro de gravedad de la misma se aleja del centro de la musieca, El dato que normalmente se proporciona en la hoja de caracteristicas del robot, correspond a la carga ‘nominal que éste puede transportar sin que por ello disminuyan sus prestaciones dinamicas, y siempre considerando la configuracién del robot mais desfavorable, Sin embargo, es posible aumentar esta carga hasta un cierto limite, siempre y cuando se pueda admitir una disminucién en la velocidad de los 'movimientos del robot e incluso én su precision, Los valores mis frecuentes de capacidades de carga varfan entre 5-5Okg, aunque se pueden encontrar robots que transporten més de media tonelada, 9.2.6. Sistema de control La potencia de la unidad de control del robot determina en gran medida sus posibilidades. Las ccaracteristicas del control del robot hacen referencia por una parte a sus posibilidades cinemiticas (tipo de trayectorias) y dinimicas (prestaciones dinimicas del robot), y por otra parte a su modo de programacicn, En cuanto a las posibilidades cinematicas es muy importante tener en cuenta la aplicacién a realizar Para muchas aplicaciones (pick & place, por ejemplo), es suficiente con un control del movimiento Criterios de implantacion 269 punto a punto (PTP) en el que solo es relevante el panto final a alcanzar por el robot y no el eamino seguido. En otras, por el contrario, la trayectoria continua (CP) descrita por el extremo del robot es fundamental (Soldadura al arco). Casi todos los robots incorporan la posibilidad de realizar trayectoras en linea recta y con interpolacién circular, Estas posibilidades vienen normalmente indicadas en las espevificaciones tcnicas del robot, Un primer dato relativo al control dinémico de un robot, es el que indica si Este se efectia en cadena abiera o cerrada El primer caso no es frecuente si bien se emplea cuando no se prevén grandes inercias Su implementacin se realiza normalmente con motores paso a paso, simplificando notablemente la complejidad de los algoritmos de control Las caracteristicas del control dindmico del robot, como velocidad de respuesta y estabilidad, son de particular importancia cuando éste debe manejar grandes pesos con movimientos ripidos. En estos casos, tun buen contro! dinimico asegura que el extremo del robot no presente oscilaciones ni errores de posicionamiento. El sobrepasar el punto de destino (overshoot) por una elevada inercia, puede originar colisiones de graves consccuencias. Normalmente las prestaciones del control dindmico no son indicadas explicitamente como una caracterstica a conocer por un posible usuario. Algunos sistemas de control de robots permiten varar, incluso en mitad de la ejecucién de un programa, algunas de las earaterstcas del contol dindmico (st coin Po | en caso de que se trate de un servo). ira importante caracteristca relacionada con el control dindmico hace referencia a la posbilidad de realizar un control de esfuerzos de manera selectiva en alguna de las articulaciones o ejes cartesianos. Esta posibilidad, que implica el empleo de sensores de esfuerzos, es fundamental en aquellas aplicaciones en las que la pieza manipulada deba entrar en contacto con algsin objeto durante la realizacion de ta tarea(ensamblaj, desbarbado, pulido, et.) En cuanto a las caractersticas relacionadas con el metodo de programacién y las posibilidades que éxte ofrece, puede decirse que una primera divisién entre programacién por guiado y programacién textual es suficiente como para decidirse sobre el empleo de un robot u otro para una determinada Tabla . on un rbot segin su apicacin PINTURA PALETIZACION Programacién por guido Elevada capaci de carga Campo de acién similar al human _Relacié grande entre drea de wabajoy amo del robot Esuucturaanropométca Contol PTP 6 grados do libertad PROCESADO, ENSAMBLADO Sistema de programacion Elevada precsin y apidez 5-6 grados de libertad ‘Campo de acc similar a harman Campo de accida similar al humano_Potencia del sistema de programacion Control de tayectoria continua Sistema sensorial 210 Fundamentos de robotica aplicacin. Asi, una aplicacién de pintura debe realizarse con un robot cuya programacién se efectie fundamentalmente mediante guiado, y mis especificamente, con un sistema en el que la unidad de control memorice automdticamente el camino por el que se desplaza el extremo del robot durante la etapa de programacién. Por el contrario, en un robot destinado a tareas de paletizado seri aconsejabe la programacido textual Oras caracteristcas importantes relacionadas con el modo de programacién son las relativas al manejo de entradas salidas, posible estracturacién de los programas (manejo de subrutinas, bucles, et), posibitidad de atencin de interupeiones y modificacién de trayectorias atendiendo a sefales externas, sistemas de programacién y control desde un dispositivo externo (computador), etc, Estos aspectos ya se comentan con més detalle en el epigrafe 8.2, dedicado a los sistemas de programacién para robots industriales. ‘Tabla 9.3, Caractorsticas técnicas de algunos robots comerciales Fibs Modelo Aplicacin Conf GDL. Alence Carga Velv.—-Repet__ Acciona Conta ane orcie orion —mivina marina billed into aye nme) m/s) rim) ‘pb RB2400 Uso Angular 6 ISH2 «1 AO.«ODRClvtnco’ TPC seven (ea ‘TRsor Pints Angular «©2500 tco TPC ry ‘Ades Adept Us SCARA 4107051000025 het>PTPCP ‘we wera ee) DEA BRAVO Madhekin Cates, 3 S003 Bkuico TPC mus ee) FANUC ARCMale Sold. Amo Angular 6 = 1605.2 S OL tico’ TPC ois cay fea) Leo Cenener Polar Sta 00S elemico IPC ca) Keno AXR3000 Pinta Angulr—«7=—= (2500500010 tse KURA KRIS Uso Angur 6241012800002 kctnco PI CP eral ca Sub PUMAS6O Uso Angular 6 == 900700 Ekctico Pr CP nen te ax 90 Uso Angur 69029807 keco PT CP seme tes) Yoskawn Motoman Uso Angur, = 6S, MO kein PT CP skigs emer ea ea) Monwie SCARA 4 195060 02 BewicoprPcr Manipater te) Criterios de implantacién 271 Existen otras consideraciones, ademés de las meramente técnicas, a la hora de seleccionar ef robot ‘més adecuado para robotizar una proceso. Asi, es importante considerar el servicio técnico que Proporciona el fabricante (de postventa, mantenimicnto, formacién, actualizacién) y que lopicamente Yarlari segin la distribucién geogrifica del lugar de implantacion y de la fabrica 0 delegacién. del fabricante del robot. Tambin sera importante considerar el costo y posibilidad de amorizacion del robot, pues un robot mas barato, y con menos prestaciones, puede resolver correctamente la apicacién en euestién, pero ser dificilmente adaptable a otras aplicaciones futuras La Tabla 9.2 muestra una primera aproximacion de las caracteristicas a tener en cuenta para la eleccidn de un robot en una determinada aplicacién, Estas indicaciones no tienen porque ser vilidas en todas las situaciones, pero se cumplen de forma general. En la Tabla 9.3 se. proporcionan las

También podría gustarte