You are on page 1of 403

Introduccin a la

robtica

Introduccin a la

robtica
Subir Kumar Saha
Indian Institute of Technology

Revisin tcnica:

Jorge Eduardo Aguirre Aguilar Francisco Javier Sandoval Palafox


Departamento de Ingeniera Mecnica y Mecatrnica Instituto Tecnolgico y de Estudios Superiores de Monterrey Campus Estado de Mxico

MXICO BOGOT BUENOS AIRES CARACAS GUATEMALA MADRID NUEVA YORK SAN JUAN SANTIAGO SO PAULO AUCKLAND LONDRES MILN MONTREAL NUEVA DELHI SAN FRANCISCO SINGAPUR ST. LOUIS SIDNEY TORONTO

Director Higher Education: Miguel ngel Toledo Castellanos Editor sponsor: Pablo Roig Vzquez Coordinadora editorial: Marcela Rocha Martnez Editora de desarrollo: Karen Estrada Arriaga Supervisor de produccin: Zeferino Garca Garca Diseo de portada: Mara Josefa Vaca Garca Traduccin: Dr. Thomas W. Bartenbach INTRODUCCIN A LA ROBTICA Prohibida la reproduccin total o parcial de esta obra, por cualquier medio, sin la autorizacin escrita del editor.

DERECHOS RESERVADOS 2010, respecto a la primera edicin en espaol por McGRAW-HILL/INTERAMERICANA EDITORES, S.A. DE C.V. A Subsidiary of The McGraw-Hill Companies, Inc. Prolongacin Paseo de la Reforma 1015, Torre A Pisos 16 y 17, Colonia Desarrollo Santa Fe, Delegacin lvaro Obregn C.P. 01376, Mxico, D.F. Miembro de la Cmara Nacional de la Industria Editorial Mexicana, Reg. Nm. 736 ISBN 13: 978-607-15-0313-8 Copyright 2008 de la primera edicin en ingls de Introduction to robotics, by Subir Kumar Saha, published by Tata McGraw-Hill Education Private Limited, NOIDA, India. ISBN: 978-0-07-066900-0 All rights reserved 1234567890 Impreso en Mxico 109876543210 Printed in Mexico

Dedicado a Los estudiantes de la India

Contenido

Sobre el autor Prefacio xii

1. Introduccin 1
1.1 Historia 1 1.2 Robots 5 1.3 El uso de robots 8 Resumen 13 Ejercicios 13 Ejercicios basados en la web

13

2. Robots seriales 14
2.1 2.2 2.3 2.4 2.5 2.6 Subsistemas de robots 14 Clasificacin de robots por aplicacin 24 Clasificacin de robots por sistema de coordenadas 24 Clasificacin de robots por su sistema de potencia 29 Clasificacin de robots por el mtodo de control 29 Clasificacin de robots por mtodo de programacin 30 Resumen 30 Ejercicios 31 Ejercicios basados en la web 31

Contenido

vii

3. Actuadores 32
3.1 3.2 3.3 3.4 Actuadores neumticos 33 Actuadores hidrulicos 36 Actuadores elctricos 38 Seleccin de motores 49 Resumen 50 Ejercicios 51 Ejercicios basados en la web

51

4. Sensores 52
4.1 4.2 4.3 4.4 4.5 Clasificacin de sensores 52 Sensores internos 53 Sensores externos 62 Sistema de visin 66 Seleccin de sensores 72 Resumen 74 Ejercicios 75 Ejercicios basados en la web 75

5. Transformaciones 76
5.1 5.2 5.3 5.4 Arquitectura de robots 76 Posicin de un cuerpo rgido 83 Transformacin de coordenadas 92 Los parmetros de Denavit y Hartenberg (DH) Resumen 109 Ejercicios 109 Ejercicios basados en MATLAB 110

100

6. Cinemtica 112
6.1 6.2 6.3 6.4 6.5 6.6 6.7 6.8 Anlisis de la posicin directa 113 Anlisis de la posicin con cinemtica inversa 121 Anlisis de velocidad: la matriz jacobiana 130 Velocidades de eslabones 133 Computacin jacobiana 134 Jacobiano usando el DeNOC 138 Singularidad 142 Anlisis de aceleracin 143 Resumen 144 Ejercicios 145 Ejercicios basados en la web 145

viii

Contenido

7. Esttica 146
7.1 7.2 7.3 7.4 7.5 Balance de fuerzas y momentos 147 Clculo recursivo 149 Pares de torsin equivalentes 151 El papel del jacobiano en la esttica 157 Elipsoide de fuerza 161 Resumen 162 Ejercicios 162 Ejercicios basados en MATLAB 162

8. Dinmica 163
8.1 8.2 8.3 8.4 8.5 Propiedades de inercia 164 Formulacin de Euler-Lagrange 172 La formulacin Newton-Euler 181 Algoritmo recursivo de Newton-Euler 186 Algoritmos dinmicos 195 Resumen 203 Ejercicios 203 Ejercicios basados en la web 203 Ejercicios basados en MATLAB 204

9. Dinmica recursiva de robots


9.1 9.2 9.3 9.4

205

Modelado dinmico 206 Expresiones analticas 211 La dinmica inversa recursiva usando RIDIM 221 La dinmica directa recursiva y la simulacin 229 Resumen 236 Ejercicios 236 Ejercicios basados en RIDIM 236 Ejercicios basados en MATLAB 237

10. Control 239


10.1 10.2 10.3 10.4 10.5 10.6 10.7 10.8 10.9 10.10 Tcnicas de control 240 Sistemas lineales de segundo orden 242 Control retroalimentado 246 El desempeo de sistemas de control retroalimentados Una articulacin robtica 255 Controlador de articulaciones 260 Control de trayectoria no lineal 266 Representacin de estado-espacio y control 270 Estabilidad 276 Controles cartesianos y de fuerza 279 Resumen 281 Ejercicios 282 Ejercicios basados en MATLAB 282

252

Contenido

ix

11. Planeacin de movimientos


11.1 11.2 11.3 11.4 11.5

283

Planeacin de espacios articulares 284 Planeacin del espacio cartesiano 290 Trayectorias de posicin y orientacin 295 Planeacin de punto a punto 300 Generacin de ruta continua 306 Resumen 314 Ejercicios 314 Ejercicios basados en MATLAB 315

12. Computadoras para robots 316


12.1 12.2 12.3 12.4 12.5 Velocidad de computacin 316 Requerimientos de hardware 320 Consideraciones de control 322 Programacin de robots 325 La arquitectura de hardware 334 Resumen 337 Ejercicios 337 Ejercicios basados en la web 337 338 346 357 365 369

Apndice A: Principios bsicos matemticos Apndice B: El uso de MATLAB y RIDIM Apndice C: Proyectos de estudiantes: Estudios de caso Referencias ndice analtico

Apndice A

Principios bsicos matemticos

Sobre el autor

Nacido en Maldaha, Bengala Occidental (India), el profesor Subir Kumar Saha realiz la mayor parte de sus estudios escolares en Vidyasagar Vidyapith, Midnapore (tambin en Bengala Occidental). En 1983, complet su BE (Mech.) en el RE College (hoy NIT), en Durgapur, seguido por la maestra del IIT en Kahargpur en 1985. Obtuvo su doctorado por la McGill University de Canad en 1991 y se afili inmediatamente despus al centro de investigacin y desarrollo de la Toshiba Corporation de Japn. En 1995 regres al ITT Madras como docente invitado, y luego se incorpor como profesor asistente en el ITT Delhi. El profesor Saha es receptor de la beca Humboldt y pas nueve meses en la University of Stuttgart, Alemania, durante 1999-2000. Tambin ha sido profesor invitado de varias universidades en el extranjero, entre otras: McGill University en Canad, Monash University en Australia y la University of Verona en Italia. l est activamente involucrado en la docencia, investigacin y desarrollo de tecnologas y estableci la seccin de Delhi del SAE-IIT en 1997, as como el Laboratorio de Mecatrnica del IIT Delhi en julio de 2001. Sus actividades de investigacin, consultora y capacitacin incluyen muchas empresas privadas como Asahi India, Sona Steering, Minda-Huf, SAMTEL, Colour Rubes; as como del sector pblico entre las que se encuentran BHEL, CEPC; adems de agencias gubernamentales como DST, MIT, CWDB; todas estas empresas son una clara indicacin de la confianza que tiene la industria en el compromiso del profesor Saha. A su favor tiene ms de 125 publicaciones de investigacin en revistas que gozan de reputacin y en memorias de congresos. Dos de sus intereses ms recientes son los siguientes: 1) popularizar el concepto de la formacin en ingeniera por medio de la participacin en concursos de robtica. Por ejemplo, desde 2003, ha dirigido los equipos de estudiantes del IIT Delhi en su participacin

Sobre el autor

xi

en los concursos Doordarshan-Robocon. El equipo liderado por l fue campen en 2007 y represent a la India en el concurso internacional celebrado en Hanoi, Vietnam. A fin de fortalecer ese concepto, el profesor Saha ha emprendido una serie de conferencias llamadas Robotics [AT]? durante su estancia en el IIT Madras entre diciembre de 2006 y diciembre de 2007. Hasta la fecha, ha pronunciado ocho conferencias en diferentes universidades e institutos. 2) A fin de popularizar los problemas de ingeniera que enfrentan las industrias rurales de la India, por ejemplo, la industria alfombrera, el profesor Saha ha formulado, entre los estudiantes de los IIT y de otras escuelas de ingeniera, los problemas tcnicos rurales como problemas de investigacin a fin de resolverlos mediante herramientas modernas, ya sea de software o tericas. Este concepto ha conducido a varias publicaciones en revistas nacionales e internacionales, as como a una tesis de doctorado cuya publicacin como libro especial se espera en 2009 por parte de una editorial internacional de renombre.

Prefacio

La robtica es un tema que atrae a muchas mentes jvenes, lo cual se debe principalmente a la abundante representacin de robots en muchas historias de ciencia ficcin y en pelculas populares. A partir de los aos sesenta, los robots se han usado sobre todo en aplicaciones industriales, particularmente en la industria automotriz para la soldadura de carroceras. Incluso, hoy da, los usuarios ms importantes de robots son los gigantes automovilsticos. Los robots tambin encuentran aplicaciones cada vez mayores en la ciruga mdica, la industria minera y la exploracin del espacio, y aun en instituciones que se preocupan del cuidado de personas de la tercera edad. Introduccin a la robtica tiene por objetivo la comprensin de los conceptos subyacentes en el diseo y construccin de un robot, y en su funcionamiento. En el mercado existe un nmero de libros que normalmente tienen en cuenta a investigadores que trabajan fundamentalmente en los aspectos de anlisis de robots, por ejemplo, cinemtica, dinmica, control, etc., o a ingenieros en activo interesados en el estudio de viabilidad del uso de robots para aplicaciones particulares, su adquisicin, programacin, economa, etc. En un plan de estudios de licenciatura, es importante que los estudiantes conozcan tanto los aspectos de anlisis como las aplicaciones. Por lo tanto, se percibi la necesidad de un libro que cubriera ambos aspectos de manera lcida. La inspiracin para escribir este tipo de libro, sin embargo, lleg hace casi una dcada (abril de 1999), cuando el profesor Gayatri Kansal, de la Indira Gandhi National Open University (IGNOU), en Nueva Delhi, me pidi algunos materiales de instruccin sobre robtica para sus estudiantes. Al mismo tiempo, no encontr ningn libro de texto sobre robtica disponible en la India a un precio accesible. Por lo tanto, sent el impulso de escribir uno que deba tener calidad internacional, pero con precio indio. Esto no slo ayudara a los estudiantes

Prefacio

xiii

de la India a poseer un libro de robtica, sino tambin a los de otros de pases de condiciones econmicas parecidas. A pesar de que el libro se dirige bsicamente a estudiantes universitarios de las ingenieras mecnica y elctrica y a alumnos de ciencias de la computacin que se inscriben en un curso de robtica, tambin puede servir a las necesidades de un curso de robtica de nivel avanzado dirigido a estudiantes de maestra o doctorado que se enfoquen, por ejemplo, en cinemtica, dinmica y control de robots. El material que ofrece este libro tambin pueden utilizarlo ingenieros activos con o sin previa experiencia en el tema de la robtica, con el propsito de adoptar, mantener o incluso disear un robot. De hecho, debido a los mltiples ejemplos y ejercicios que ofrece el libro, cualquiera podr prepararse para un examen competitivo sobre robtica. La intencin de este libro es la de servir tanto a los estudiantes de licenciatura como a los de posgrado en sus cursos de robtica. La siguiente es una gua para los maestros que atienden los siguientes niveles:

Para cursos de licenciatura


En el nivel introductorio (de preferencia estudiantes del 2o. y 3er. ao) Para la disciplina mecnica, utilice los captulos 1 a 6. Para los estudiantes de electricidad y ciencias computacionales, utilice los captulos 1 a 5 y 12. En el nivel superior (de preferencia estudiantes del 3er. y 4o. ao) Para la disciplina mecnica, utilice los captulos 2, 6 a 8 y 11. Para los estudiantes de electricidad y ciencias computacionales, utilice los captulos 2, 5, 6, 8, 10 y 11.

Para cursos del nivel de posgrado (estudiantes de maestra y doctorado)


Sin antecedentes de un curso de robtica Para la disciplina mecnica, utilice los captulos 1 a 8. Para la disciplina elctrica, utilice los captulos 1 a 5, 10 y 12. Con antecedentes de cursos del nivel licenciatura sobre robtica Para la disciplina mecnica, utilice los captulos 5 a 11. Para los estudiantes de electricidad y ciencias computacionales, utilice los captulos 5 a 8, 10 y 11. Adems, el libro es adecuado para cursos sobre mecatrnica y dinmica multicuerpo. Por ejemplo, los captulos 3 a 6, 8 y 10 cubren aproximadamente de 75 a 80% de un curso sobre mecatrnica, mientras que los captulos 5, 6, 8 y 9 pueden cubrir hasta 80% de un curso sobre dinmica de multicuerpos que slo trate de los cuerpos rgidos, y aproximadamente 60% de un curso sobre dinmica de multicuerpos que trate de los cuerpos deformables. En este libro se introducen varias caractersticas especiales que lo distinguen de cualquier otro texto contemporneo sobre robtica:

xiv

Prefacio

Flujo natural del contenido, es decir, los temas estn organizados de tal modo que el estudiante pueda comprender el tema de manera lgica. Por ejemplo, cada vez que escuchamos sobre alguna cosa nueva, tenemos curiosidad acerca de cmo se ve o cmo funciona. Por ende, los aspectos de los diferentes robots y su clasificacin se cubren en los captulos 1 y 2. Entonces despertar el inters de conocer los componentes de un robot. Por lo tanto, se explican los actuadores y sensores en los captulos 3 y 4. Despus de conocer la estructura del robot y sus componentes, es natural sentir curiosidad sobre cmo se mueve un robot y cules son las fuerzas causantes. Aqu se presenta la necesidad de transformacin, cinemtica, esttica y dinmica. Esto se cubre en los captulos 5 a 9, respectivamente. A esto le siguen las leyes de control en el captulo 10. Entonces el robot est listo para el uso prctico, y el usuario tiene que decidir cmo moverlo para una tarea particular. La planeacin de movimiento del captulo 11 es la que explica los movimientos del robot. Finalmente, se estudia el hardware y software que accionan al robot, lo que se explica en el captulo 12. Se ofrecen cuadros de texto para resaltar informacin histrica, contempornea y de otros intereses que podrn ayudarle al lector a complementar sus conocimientos tericos obtenidos en los contenidos de los captulos. Ejercicios basados en la web y en MATLAB aparecen al final de cada captulo y ayudan al estudiante a mantenerse al tanto de lo que est pasando en la robtica alrededor del mundo y a saber cmo implementar los conceptos matemticos para las aplicaciones reales.

La organizacin completa del libro es la siguiente: Captulo 1: Introduccin Se introducen los diferentes tipos de robots con sus campos de aplicacin, poblacin, etctera. Captulo 2: Robots seriales clasificacin de robots. Se presentan diferentes metodologas que se usan para la

Captulo 3: Actuadores Se explican varios tipos de actuadores, a saber: neumticos, hidrulicos y elctricos, y se recomienda cmo proceder a su seleccin. Captulo 4: Sensores Se explican los sensores, los componentes importantes de un sistema robtico. Captulo 5: Transformaciones Se definen las arquitecturas de un robot, adems, se presenta la descripcin matemtica de la postura del robot, es decir, la posicin y orientacin de su efector final, junto con la definicin de los parmetros de Denavit y Hartenberg (DH). Captulo 6: Cinemtica Forma la base fundamental para el diseo y control de un robot. Se calculan ecuaciones, relacionando las coordenadas de articulaciones con las coordenadas cartesianas del efector final. Captulo 7: Esttica Cuando los robots se mueven lentamente, es suficiente considerar las fuerzas que actan sobre los robots, independientemente de los movimientos que las causan. Esto se llama esttica. Captulo 8: Dinmica La dinmica es til para el control y la representacin virtual de un sistema robtico. Aqu se infieren diferentes metodologas, como las ecuaciones de movimiento de Euler-Lagrange y Newton-Euler.

Prefacio

xv

Captulo 9: Dinmica recursiva de robots* Se presenta la dinmica recursiva de robots, un conjunto de algoritmos modernos y avanzados. El asterisco (*) que hay junto al ttulo indica que este captulo puede saltarse en un curso de licenciatura o posgrado preliminar. Slo deber abordarse en el curso de posgrado avanzado dirigido a estudiantes de maestra y doctorado o por los que desean aceptar un proyecto de maestra o una investigacin de doctorado en el rea de la dinmica de robots. Captulo 10: Se cubren las leyes de control lineal, P, PD, PID, estabilidad, etctera. Captulo 11: Planeacin de movimientos Se analizan varios aspectos de la planeacin de movimientos. Se calculan ecuaciones de planeacin de trayectorias basadas en la articulacin y en el espacio cartesiano. Captulo 12: Computadoras para robots Una vez que los algoritmos se hayan desarrollado, es importante implementarlos en el hardware electrnico. Por ende, se describen diferentes programas de robots, tales como ACL, etctera. Referencias Contiene la lista de libros, artculos y otras fuentes de las que se toman diferentes materiales para su uso en este libro. Apndice A: Principios bsicos de matemticas Se introducen muchos conceptos bsicos de lgebra lineal, teora del control y otros que le ayudarn al lector en la comprensin de las expresiones que se usan en diferentes captulos, en particular en los captulos 5 a 10. Apndice B: Uso de software de MATLAB y RIDIM Se explica cmo usar las dos aplicaciones de software, a saber: MATLAB y el software de desarrollo propio, RIDIM. Apndice C: Estudios de caso, proyectos de estudiantes Se explican varios estudios de caso, es decir, robots desarrollados por estudiantes para competencias de robtica, as como para proyectos de licenciatura y posgrado. El libro cuenta con varios complementos que facilitan el proceso de enseanza-aprendizaje. Para mayor informacin sobre este material de soporte, pngase en contacto con su representante local. Finalmente, es mi deber agradecer a las personas sin cuyo apoyo el libro no hubiese visto la luz del da. Fue un largo viaje desde abril de 1999, pero estoy feliz de que finalmente termin; ciertamente, fue un esfuerzo lento pero seguro para m. Despus del profesor Gayatri Kansal, como mencion anteriormente, quisiera recordar a mis estudiantes de posgrado, Mahesh Sharma, Subhashis Pati, T. Gopala Rao, Tamogna Das y Naveen Sukumar, por escribir algunas partes de los captulos y dibujar varios diagramas para este libro. Estoy agradecido con S. S. Petkar, Arvind Patle, estudiantes del MTech, y con Pankaj Marothiya y Amit, estudiantes del BTech, por generar el cdigo C++ para el desarrollo interno del software RIDIM (Recursive Inverse Dynamics for Industrial Manipulators) que se usa para resolver muchos ejemplos de este libro y que tambin est disponible en la pgina web del mismo. Estoy en deuda con dos de mis ex estudiantes de doctorado, Dr. Prasad Bhangale y Dr. Himanshu Chaudhary, por el uso del RIDIM durante su trabajo de investigacin y por atestiguar su confiabilidad. Quisiera agradecer a muchos estudiantes del IIT Delhi, particularmente a los que han participado en las competencias ROBOCON bajo mi supervisin y que han mostrado gran entusiasmo para construir los mltiples robots en funcionamiento que aparecieron en el apndice C. Gracias tambin al Dr. I. N. Kar, profesor titular del de-

xvi

Prefacio

partamento de Ingeniera Elctrica del IIT Delhi, por ofrecerse amablemente para la lectura del captulo 10 sobre control y por darme sus comentarios oportunos al respecto. Agradezco en especial a Suril V. Dhah, un alumno que actualmente est estudiando su doctorado y que ley meticulosamente los captulos y me ayud a preparar las soluciones a los problemas que se dan en los ejercicios de este libro. Me gustara dar las gracias a los muchos revisores por sus valiosos comentarios que realmente han elevado la calidad de este libro.

Revisores de la India
A.K. Jha Departamento de Ingeniera Mecnica, Instituto de Tecnologa, Banaras Hindu University (BHU), Varanasi Rajeev Gupta Departamento de Ingeniera Mecnica, Harcourt Butler Technological Institute (HBTI), Kanpur Shubhashis Sanyal Departamento de Ingeniera Mecnica, Government Engineering College, Raipur S. Natarajan Departamento de Ingeniera Mecnica, Global Academy of Technology, Bangalore Umesh M. Daivagna Departamento de Ingeniera Mecnica, Sei Taralabalu Jagadguru Institute of Technology, Ranebennur, Karnataka Arul Sanjivi Departamento de Tecnologa de Produccin, Amrita Viswa Vidya Peetham Deemed University, Coimbatore Tanmoy Mohanty Departamento de Ingeniera Mecnica, Kalinga Institute of Industrial Technology, Bhubaneswar D. R. K. Parhi Departamento de Ingeniera Mecnica, National Institute of Technology, Rourkela M. T. Puranik Departamento de Ingeniera Mecnica, Vishwakarma Institute of Technology, Pune

Revisores internacionales
Gregory P. Starr Harvey Lipkin Mark Minor Warren Dixon University of New Mexico, Albuquerque, USA Georgia Institute of Technology, USA University of Utah, Salt Lake City, Utah, USA University of Florida en Gainesville, USA

Mis agradecimientos estaran incompletos si no menciono a Tata-McGraw Hill por estar de acuerdo con la publicacin de este libro, as como a sus ejecutivos, Vibha Mahajan, Shukti Mukherjee, Surabhi Shukla, Sohini Mukherjee, Baldev Raj, Anjali Razdan y muchos otros en el fondo, por su conviccin y ayuda. Sin ellos, el libro no se hubiera hecho realidad. Finalmente, mi familia mi esposa Bulu y mi hija Esha ha estado esperando mucho tiempo por ms atencin de mi parte, para pasar tiempo de familia conmigo. Les agradezco su paciencia, comprensin, apoyo y cooperacin. Estoy convencido de que los lectores encontrarn este libro verdaderamente valioso en su calidad y lcida presentacin, de tal modo que podrn adquirir fcilmente los conocimientos

Prefacio

xvii

requeridos. Sin embargo, tratndose de la primera edicin, podr contener algunos errores y fallas tipogrficas involuntarias, y les ruego a los lectores que me las sealen en forma directa (saha@mech.iitd.ac.in) o que escriban a la pgina web del libro cuya direccin se ha mencionado anteriormente. Feliz lectura! IIT Delhi 14 de febrero de 2008 Subir Kumar Saha

xviii

Apndice A

Principios bsicos matemticos

Lista de abreviaturas
ABU AC ADC AGV BRA CCD CID CNC CP CPL CPU CSG D DAC DAE DC DeNOC det. DH DOF Asian Broadcasting Union Corriente alterna Convertidor de anlogo a digital Vehculo guiado automticamente British Robot Association Dispositivo de carga acoplada Dispositivo de inyeccin de carga Control numrico por computadora Ruta continua Lenguaje de programacin de computadoras Unidad central de procesamiento Geometra slida constructiva Derivativo Convertidor de digital a anlogo Ecuaciones algebraicas diferenciales Corriente directa Complemento ortogonal natural desacoplado Determinante Denavit y Hartenberg Grados de libertad

Lista de abreviaturas

xix

DSP EL EMF GIM HaPRA I ISO JIRA JV KE LED LSI LVDT MCI MIMO MOS MTTF MTTR NASA NC NE NO NOC ODE P PD PE PI PID PLC PM PO PR PSD PTP PUMA RAM RIA RIDIM RNE RP

Procesamiento digital de seales Euler-Lagrange Fuerza electromotriz Matriz de inercia generalizada Brazo robtico planar suspendido Integral International Standad of Organization The Japan Industrial Robot Association Variable articular Energa cintica Diodo de Emisin luminosa Integraciones de gran escala Transformador diferencial de variables lineales Matriz de inercia convectiva Mltiples entradas-mltiples salidas Semiconductor de xido metlico Tiempo promedio entre fallas Tiempo promedio de reparacin National Aeronautic Society of America Normalmente cerrado Newton-Euler Normalmente abierto Complemento ortogonal natural Ecuaciones diferenciales ordinarias Proporcional Proporcional derivativo Energa potencial Proporcional integral Proporcional integral derivativo Controlador lgico programable Imn permanente Porcentaje de sobrealimentacin Revoluto o Rotacional prismtico Detector sensible a la posicin Punto a punto Programmable Universal Manipulator for Assembly Random Access Memory Robotics Institute of America Dinmica inversa recursiva para manipuladores industriales (Recursive Inverse Dynamics for Industrial Manipulators) Newton-Euler recursivo Revoluta o rotacional prismtica

xx RPL RUR RVDT SCARA SBEU SFED SFEU SISO TF WMR VCI VLSI 5P

Lista de abreviaturas

Lenguaje de programacin de robots Rossums Universal Robots Transformador diferencial de variables rotativas Selective Compliance Assembly Robot Arm SBED Hombro atrs/codo abajo Hombro atrs/codo arriba Hombro al frente/codo abajo Hombro al frente/codo arriba Entrada nica/salida nica Funcin de transferencia Robot mvil sobre ruedas Vector de inercia convectiva Integraciones a muy grande escala Proper Planning Prevents Poor Performance (la planeacin correcta impide el desempeo defectuoso)

Lista de smbolos
g C q q q r i we wi wi w i ai Bij b bi, qi, ai, ai C c ci Vector n-dimensional de aceleraciones gravitacionales Potencia debida a la llave de torsin de restriccin wC Vector n-dimensional de coordenadas generalizadas Vectores n-dimensionales de velocidades y aceleraciones, respectivamente Funcin spline Vector n-dimensional de fuerzas generalizadas debido a fuerzas y momentos externos Par torsional en cada articulacin Vector tridimensional de velocidad angular del efector final Vector tridimensional de velocidad angular del i-simo cuerpo Vectores tridimensionales de velocidad angular y aceleracin del eslabn i, respectivamente Vector tridimensional denotando el punto Oi+1 de Oi Matriz de propagacin de torsin 6 6 desde #i hasta #j Coeficiente de amortiguamiento Cuatro parmetros DH Matriz de n n para trminos de inercia convectiva (MCI) Nmero total de restricciones impuestas por articulaciones p Nmero de restricciones impuestas por cada articulacin

xxii ci c i c i di ess ei fij g h I Ii Ii

Lista de smbolos

J k kp, kv, ki L M M Mi Mi Mw, Mi, Me mi m m N Nd Nl Nu n ni nij p p pi [p]F

Vector tridimensional denotando el centro de masa Ci del origen F Vectores tridimensionales de velocidad y aceleracin lineales del centro de masa del eslabn i, respectivamente Vectores tridimensionales de velocidad y aceleracin lineal del centro de masa Ci desde el punto de origen Oi Error de estado estacionario Vector unitario tridimensional a lo largo del eje de la i-sima articulacin Vector tridimensional de la fuerza resultante ejercida sobre el eslabn i por el eslabn j en Oi Vector tridimensional de aceleracin debida a la gravedad Vector n-dimensional de trminos de inercia convectiva (VCI) Matriz de inercia generalizada de n n (GIM) Tensor de inercia de 3 3 del i-simo cuerpo o eslabn alrededor de su centro de masa, Ci Tensor de inercia de 3 3 del i-simo cuerpo compuesto consistente de eslabones rgidamente conectados, a #iy #n Matriz jacobiana de 6 6 para un robot de n DOF Constante de resorte Ganancias proporcionales, derivativas e integrales, respectivamente Lagrangiano Matriz de masa generalizada de 6n 6n Matriz de masa compuesta de 6n 6n Matriz de masa de 6 6 para el i-simo cuerpo Matriz de masa de 6 6 para el i-simo cuerpo compuesto Matrices de 6n 6n que constituyen MCI Masa del i-simo cuerpo Momento lineal Momento angular Matriz NOC de 6n 6n Matriz de bloque diagonal de 6n 6n de las matrices DeNOC Matriz triangular de bloque inferior de 6n 6n de las matrices DeNOC Matriz triangular de bloque superior de 6n 6n de las matrices DeNOC Grado de libertad del sistema completo Grado de libertad relativo de cada articulacin Vector tridimensional del momento resultante ejercido sobre el eslabn i por el eslabn j en Oi Nmero de pares cinemticos o articulaciones en el sistema Vector de posicin de un punto P. El vector de posicin de cualquier otro punto se representa de forma semejante Vector de propagacin 6-dimensional de movimiento de articulacin Representacin del vector P en el sistema fijo F. Representacin similar para otros sistemas

Lista de smbolos

xxiii

Q Qi

r ri s T T Tl Td t te ti ti U W Wi wi w wE, wC E w i x, y, z 1 O 0 []T

Matriz de rotacin de 3 3 Matriz de rotacin de 3 3 transformando el sistema i al sistema i+1, es decir, cualquier representacin vectorial en el sistema i+1 se premultiplica por esta matriz para encontrar la representacin en el sistema i Nmero de cuerpos rgidos o eslabones en el sistema Vector tridimensional del origen Oi+1 desde el centro de masa Ci Dimensin del espacio de trabajo (para planar, s = 3; para espacial, s = 6) Energa cintica Matriz de transformacin homognea de 4 4 Matriz DeNOC triangular de 6n 6n del bloque inferior Matriz DeNOC diagonal de bloque de 6n 6n Vector 6n-dimensional de torsin generalizada Vector de torsin 6-dimensional del efector final Vector de torsin 6-dimensional de torsin asociado al i-simo cuerpo Vector de rapidez de torsin 6-dimensional del i-simo cuerpo Energa potencial Matriz generalizada de 6 6 de las velocidades angulares Matriz de velocidad angular de 6 6 para el i-simo cuerpo Vector 6-dimensional de llave de torsin actuando sobre el i-simo cuerpo compuesto Vectores 6-dimensionales de llave de torsin generalizada Vectores 6-dimensionales de llaves de torsin externas y de restriccin, respectivamente Vector 6-dimensional de llave de torsin externa para el i-simo cuerpo compuesto Vectores unitarios a lo largo de los ejes X, Y y Z, respectivamente. Notaciones similares para otros vectores unitarios Matriz identidad de dimensin compatible Matriz de dimensin compatible en donde todos sus elementos son ceros Vector de dimensin compatible en donde todos sus elementos son ceros Transpuesta del argumento []

DEMOSTRACIN PASO A PASO


Captulo

1
Introduccin

El tema de la Robtica es relevante en el plan de estudios de ingeniera hoy en da debido a la capacidad de los robots para realizar trabajos incesantes y peligrosos. Un robot slo tiene sentido cuando su intencin es la de relevar a un trabajador humano de una labor aburrida, desagradable o demasiado precisa. Normalmente, un robot es diseado para que asista a un trabajador humano. Al contrario de lo que por lo general se cree, en realidad no es ms rpido que los humanos en la mayora de las aplicaciones, pero es capaz de mantener su velocidad durante un largo periodo. De esto resulta que la productividad aumenta si la cantidad de piezas que se va a producir es muy grande. Adems, la inteligencia de los robots ms avanzados de la actualidad no se acerca a la humana. Por lo tanto, la introduccin de un robot en un proceso sin el entendimiento real de los benecios que puede proporcionar sera desastrosa y no es aconsejable.

1.1

Historia

Aunque la idea de los robots se remonta a tiempos antiguos, hace ms de 3 000 aos en la leyenda hind de los elefantes mecnicos (Fuller, 1999), la palabra robot se us por primera vez en 1921, en la obra de teatro Rossums Universal Robots (RUR), escrita por el checo Karel apek (1890-1938). En la obra RUR (Dorf, 1988), un fabricante cticio de criaturas mecnicas diseaba robots para reemplazar a trabajadores humanos. Ecientes pero completamente faltos de emociones,

Origen de la palabra robot El origen de la palabra robot puede ser encontrado en la palabra checa robota, que signica trabajo forzado u obligatorio.

Los cuadros de texto en cada captulo proporcionan hechos histricos e informacin relacionada con el tema para complementar el conocimiento obtenido a travs del texto del libro.

Las fotos de robots en la prctica y sus aplicaciones reales ofrecen un entendimiento y utilidad verdadera del tema que cubre este libro.

Introduccin

a)

b)

Figura 1.4 Un AGV: a) autnomo; b) trabajando (recogiendo un bastidor con puertas de automvil) [Cortesa de: www.globalspec.com]

ii) Robots caminates Estos robots caminan como seres humanos, como se muestra en la gura 1.6. Se usan en los ejrcitos, en la exploracin subacutica y en lugares de terreno accidentado. iii) Robots paralelos
Como lo indica su nombre, estos robots tienen una conguracin paralela, en contraste con la estructura de tipo serial de un robot industrial como los que se ven en las guras 1.1 y 1.3. En este sentido, un robot caminante con todas sus patas en contacto con el suelo es un robot paralelo. Como se muestra en la gura 1.7, tambin se usa una estructura paralela con seis patas para controlar la plataforma mvil como simulador de vuelo para la capacitacin de futuros aviadores. Como se ve en la misma gura, la estructura tiene seis patas para controlar la plataforma mvil. Estos robots tambin se usan

a) Una rueda Mekanum

b) Un AGV

Figura 1.5 Un vehculo guiado automticamente (AGV) con ruedas Mekanum [Cortesa de ngeles (2003)]

seguridad varan de un pas a otro y son esenciales para asegurar que toda instalacin cumpla con la legislacin local. La seguridad se reere principalmente a mantener al personal fuera del alcance de trabajo del robot y sirve para asegurar que los movimientos puedan detenerse fcilmente en caso de una emergencia. Para este n, los robots tienen cadenas de seguridad dual o cadenas de marcha integradas. stos son dos circuitos paralelos que detendrn el movimiento del robot cuando sean interrumpidos. Tambin se prevn conexiones externas, incluidos los paros de emergencia. Asimismo, cabe mencionar que casi todos los robots tienen frenos de disco operados elctricamente en cada eje, y activados slo si se aplica la energa para soltarlos. Por lo tanto, en caso de un corte del suministro elctrico o si el paro de emergencia es aplicado, el robot se detiene en seco, en una fraccin de segundo, en su posicin. No sufre un colapso y retiene sus datos posicionales y de programa.

Los resmenes al nal de cada captulo dan una visin general del tema que se ha explicado.

RESUMEN
En este captulo se presentan los robots, su historia, deniciones, categoras, aplicaciones y poblaciones. Tambin se exponen las leyes de robtica y cundo deben usarse los robots.

EJERCICIOS
1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 1.10 Qu es un robot? Cules son los tipos de robots? Mencione algunas aplicaciones tpicas de un robot industrial. Cules son las diferencias entre un robot y una mquina-herramienta CNC? Cmo debe decidirse sobre el uso de un robot para un determinado trabajo? Qu son las cuatro D de la robtica? Qu es R.U.R.? Cules son las leyes de la robtica? Anote las diferencias entre robots seriales y paralelos. Cules son los problemas de seguridad en el uso de robots?

Los ejercicios basados en la web mantienen a los lectores al corriente de los ltimos desarrollos en este campo.

EJERCICIOS BASADOS EN LA WEB


Basndose en bsquedas en la web, conteste las siguientes preguntas: 1.11 1.12 1.13 1.14 Busque nombres de diferentes fabricantes de robots. Cmo se especica un robot industrial? Cul es la poblacin de robots en el mundo? Qu industria es considerada el usuario ms grande de robots industriales de tipo serial? 1.15 Cules son las reas nuevas de aplicaciones de robots?

3.4

Seleccin de motores

La seleccin de componentes (motores en este ejemplo) y los clculos necesarios, ofrecen al estudiante un planteamiento prctico del tema y proporcionan informacin til al ingeniero en planta para las aplicaciones de productos reales.

Para cualquier aplicacin de robots tiene que decidirse cul de los actuadores disponibles es el ms adecuado. Tiene que tomarse en consideracin precisin de posicionamiento, conabilidad, velocidad de operacin y costo, as como otros factores. Los motores elctricos son por naturaleza limpios y con capacidad para trabajar con alta precisin si son operados correctamente. En contraste, los sistemas neumticos no son capaces de operar una trayectoria continua de alta precisin, y los actuadores hidrulicos requieren del uso de aceite a presin. Los sistemas hidrulicos pueden generar mayor potencia en un volumen compacto que en los motores elctricos. El aceite a presin puede conducirse por tuberas hacia actuadores sencillos, capaces de generar pares de torsin con altos valores y operaciones rpidas. Tambin hay que tomar en cuenta que la potencia necesaria para controlar una vlvula electrohidrulica es pequea. Bsicamente, este trabajo se realiza mediante la compresin del aceite y suministrarlo a los accionamientos del brazo del robot. Toda la energa puede ser suministrada por un solo motor elctrico poderoso y eciente que acciona la bomba hidrulica que est en la base del robot o ubicada en alguna distancia. La potencia es controlada en vlvulas electrohidrulicas compactas. Sin embargo, las vlvulas electrohidrulicas de alta precisin son ms costosas y menos conables que los amplicadores y controladores elctricos de baja potencia. Por otra parte, los motores elctricos deben tener controles individuales capaces de controlar su potencia. En robots de mayores dimensiones, esto requiere la conmutacin de 10 a 50 amperios con 20 a 100 voltios. La conmutacin de la corriente tiene que ser rpida; de lo contrario, habr una gran disipacin de potencia en el circuito de conmutacin que causar un exceso de calor. Los motores elctricos pequeos usan circuitos de conmutacin sencillos y son fciles de controlar por medio de los circuitos de baja potencia. Los motores a pasos son particularmente sencillos para la operacin de un lazo abierto. La ventaja ms grande de un sistema hidrulico es la seguridad de su operacin. Como regla general, se preeren actuadores hidrulicos donde se requieren movimientos rpidos con altos pares de torsin, en rangos de potencia que estn aproximadamente en el orden de los 3.5 kW, a menos que no pueda tolerarse la ligera posibilidad de una fuga de aceite. Los motores elctricos son preferidos para niveles de potencia que estn por debajo de a 1.5 kW aproximadamente, a menos que haya un peligro debido al posible incendio de materiales explosivos. En rangos entre 1-5 kW, podr determinar la decisin la disponibilidad de un robot en un sistema de coordenadas particular con caractersticas especcas o por un costo ms bajo. La conabilidad de todo tipo de robots manufacturados por fabricantes reconocidos industrialmente es sucientemente buena. No obstante esto no es el factor ms determinante.

3.4.1

Clculos

Se necesitan clculos matemticos simples para determinar el par torsor, velocidad y caractersticas de potencia de un actuador o motor para diferentes aplicaciones. El par torsor se dene en trminos de una fuerza multiplicada por distancia o momento. Una fuerza f, a la distancia a del centro de rotacin, tiene un momento o par torsor t, o sea t = fa. En trminos

th21=atan2(s21,c21); th22=atan2(s22,c22); th23=pi-th21; th24=pi-th22; %Angles in degree r2d=180/pi; th11d=th11*r2d, th12d=th12*r2d, th21d=th21*r2d, th22d=th22*r2d, th23d = th23*r2d, th24d = th24*r2d, th31d=th31*r2d, th32d=th32*r2d

6.2.3

Una mueca

Considere la mueca de la figura 6.9, cuyas relaciones cinemticas pueden darse mediante la ecuacin (6.12). Se buscan las variables de las articulaciones 1, 2 y 3, correspondientes a una orientacin del efector final Q con la siguiente forma:
q11 Q q21 q31

donde qij para i, j = 1, 3 son los elementos de la matriz de bloque Q de la matriz de transformacin homognea T, ecuacin (6.12). Entonces es posible computar las soluciones de los ngulos de las articulaciones directamente como q1 = a tan 2 (q23, q13) q2 = a tan 2

LM MM N

q12 q 22 q32

q13 q23 q33

OP PP Q

q3 = a tan 2 ( q32, q31)

FH

2 2 , q33 q13 + q23

IK

(6.30a) (6.30b) (6.30c)

para 2 entre 0 y . Observe que si se permite que cada articulacin gire 360, existen dos posibles soluciones para los ltimos tres desplazamientos de las articulaciones. En efecto, ya que las ecuaciones (6.30a-c) involucran la funcin de arcotangente, el ngulo 1 podr tener dos valores que se encuentran a 180. Las dos configuraciones que corresponden a las dos soluciones se ilustran en la figura 6.9.
Z1 X3, X4 #2 #2 Z2 X1, X2 #1 #1 #3 Z3, Z4 #3

Los conceptos complejos, como las rotaciones, se explican con diagramas detallados y expresiones matemticas.

Solucin i(1)

Solucin i(2)

Figura 6.9

Mltiples conguraciones de la mueca

Tq =

LMCq MM Sq MN 0 0

i i

- Sq i Cq i 0 0

0 0 1 0

0 0 0 1

OP PP PQ

(5.49b)

La resultante transformacin de coordenadas entre los sistemas conectados con los cuerpos i 1 e i, es decir, Ti, se obtiene ahora mediante la posmultiplicacin de las cuatro transformaciones elementales de arriba, como se hace en la ecuacin (5.31d), es decir, Ti = Tb Tq Ta Ta (5.50a) La expresin Ti tambin puede leerse como matriz de transformacin del sistema adjuntado al cuerpo i, es decir, sistema i + 1, como se representa en el sistema incorporado al cuerpo i 1, es decir, sistema i. Por medio de sustitucin de las expresiones de matriz de las ecuaciones (5.49 a-d) a la ecuacin (5.50a), se obtiene la siguiente expresin:

Ti =

LMCq MM Sq MN 0 0

i i

- Sq i Ca i Cq i Ca i Sa i 0

Sq i Sa i - Cq i Sa i Ca i 0

ai Cq i a i Sq i bi 1

OP PP PQ

(5.50b)

Ejemplo 5.24

Obtenga la ecuacin (5.50b) por medio de MATLAB

Los ejemplos de la programacin MATLAB ayudan al estudiante a resolver problemas complejos con facilidad.

Para obtener la ecuacin (5.50b), las operaciones simblicas tienen que ejecutarse en MATLAB. Para este fin, se usan los siguientes comandos:
>syms bi thi ai ali; >tbm=[1,0,0,0;0,1,0,0;0,0,1,bi;0,0,0,1]; >tthm=[cos(thi),-sin(thi),0,0;sin(thi),cos(thi),0,0;0,0,1,0;0,0,0,1]; >tam=[1,0,0,ai;0,1,0,0;0,0,1,0;0,0,0,1]; >talm=[1,0,0,0;0,cos(ali),-sin(ali),0; 0,sin(ali),cos(ali),0; 0,0,0,1]; >tim=tbm*tthm*tam*talm tim = [ cos(thi), -sin(thi)*cos(ali), sin(thi)*sin(ali), cos(thi)*ai] [ sin(thi), cos(thi)*cos(ali), -cos(thi)*sin(ali), sin(thi)*ai] [ 0, sin(ali), cos(ali), bi] [ 0, 0, 0, 1]

donde el comando syms se usa para definir las variables simblicas bi, thi, ai y ali para los parmetros DH bi, qi, ai y ai, respectivamente. Adems, se usan las notaciones tbm, tthm, tam y talm para representar las matrices Tb, Tq, Ta y Ta, dadas por las ecuaciones (5.49a-d), respectivamente. Finalmente, la resultante matriz Ti denotada como tim en el ambiente de MATLAB, se evala arriba, lo que coincide con la ecuacin (5.50b).

esfera unitaria de n dimensiones en el espacio torsional de la articulacin se traza sobre un cilindro de 6 dimensiones en el espacio de fuerza del efector final. De este modo, la ventaja mecnica del manipulador se torna infinitamente grande en alguna direccin.

RESUMEN
En este captulo se derivan los pares de torsin que se requieren para ejercer una fuerza y un momento por el efector final mientras el robot est en equilibrio esttico. Se demuestra cmo el jacobiano de velocidad entra en consideracin en el anlisis esttico. Finalmente, se da una interpretacin fsica de la matriz Jacobiana en el dominio de la fuerza.

EJERCICIOS
Qu es un equilibrio esttico en la robtica? Cmo se relacionan las matrices de propagacin de torsin y de llave de torsin? Define el desplazamiento y el trabajo virtuales. Cmo entra en consideracin la matriz del jacobiano de velocidad en el anlisis esttico? 7.5 Qu le pasara a las fuerzas del efector final si se aplicaran pares de torsin de articulacin mientras el jacobiano asociado fuese singular? 7.6 Extraiga la matriz jacobiana para el brazo planar rotacional-prismtico (RP) del ejemplo 7.2. 7.7 Busque la expresin de la matriz Jacobiana arriba mencionada en el sistema fijo. 7.8 Por qu es importante el concepto de elipsoide de fuerza en el estudio de la esttica? 7.9 Qu pasa si uno de los ejes principales del elipsoide de fuerza desaparece? 7.10 Derive las expresiones del par de torsin y fuerza para el brazo planar prismticorotacional (PR) que se presenta en la figura 5.26 si se aplica la fuerza fe del efector final y no se consideran los pesos de eslabones. 7.1 7.2 7.3 7.4

EJERCICIOS BASADOS EN MATLAB


7.11 Verifique los resultados del ejercicio 7.7 usando un programa MATLAB. 7.12 Verifique los resultados del ejercicio 7.10. 7.13 Busque las expresiones de par torsional para el robot SCARA que se presenta en la figura 5.28. 7.14 Averige los pares torsionales para el brazo antropomrfico del ejemplo 7.6, mientras 1 = 2 = 0 y 3 = /2. 7.15 Cules son los valores del par torsional para la mueca esfrica que se muestra en la figura 5.30 si se aplica solamente un momento ne en su efector final?

Los ejercicios basados en MATLAB aumentan las destrezas para la solucin de problemas.

El software de desarrollo propio no slo permite que el lector obtenga resultados para problemas complejos, sino tambin ofrece la posibilidad de escribir nuevos programas basados en los ya existentes.

DINMICA INVERSA RECURSIVA DE MANIPULADORES INDUSTRIALES

DR. S.K. SAHA DEPARTAMENTO DE INGENIERA MECNICA INSTITUTO DE TECNOLOGA DE LA INDIA, DELHI

CANCELAR

SIGUIENTE

Figura 9.5

Interfaz de MS-Windows de RIDIM

2.

3. 4. 5.

separacin articular, ngulo articular, longitud de eslabn y ngulo de torsin, respectivamente. Historial de tiempo del parmetro DH variable, es decir, qi para un par rotacional y bi para una articulacin prismtica, as como su primera y segunda derivada en el i, b i, respectivamente. tiempo, es decir, qi, bi, y q Masa de cada cuerpo mi. Vector que denota la distancia de la (i + 1)sima articulacin del isimo centro de masa Ci en el (i + 1)simo sistema de referencia, es decir, [ri]i+1. Tensor de inercia del isimo eslabn alrededor de su centro de masa Ci en el (i + 1) simo sistema [Ii]i+1.

Observe que RIDIM tiene las siguientes caractersticas: Puede manejar manipuladores con pares o articulaciones tanto rotacionales o revolutas como prismticas: Toma en cuenta la gravedad, pues considera la aceleracin negativa debido a la gravedad denotada por g al primer cuerpo #1, como se muestra en la ecuacin (9.32).

Ejemplo 9.3

Dinmica inversa de un manipulador planar de tres DOF

En la figura 9.6 se presenta el manipulador de tres eslabones en estudio, cuyos parmetros DH e inerciales se muestran en la tabla 9.2. Se supone que el manipulador se mueve en el plano X-Y, donde la gravedad est trabajando en la direccin negativa Y. Suponga que i y j son los dos vectores unitarios paralelos a los ejes X y Y, respectivamente,

Tabla A.1

Evaluacin de la funcin Atan2

x
+ve 0 ve

Atan2(y, x)
Atan(z) Sgn(y) p/2 Atan(z) + Sgn(y)U

la tabla Atan2(1, 1) = p/4 y Atan2(1, 1) = 3p/4, mientras que Atan(1) devuelve p/4 en ambos casos.

A.2

Vectores

Mientras no se seale algo diferente, los vectores sern definidos como vectores de columna y denotados con letras minsculas en negrillas. Por ende, un vector a n-dimensional se define como a

donde a1, , an son los elementos del vector a. El vector a tambin puede representarse como (A.3) a [a1, , an]T donde el superndice T denota transposicin. La magnitud, longitud o norma del vector a, denotada con letras itlicas, se determina por a=
aTa =
2 2 + + an a1

LM a OP MM PP Na Q
1 n

(A.2)

Los principios bsicos matemticos repasan rpidamente los fundamentos matemticos necesarios para los temas cubiertos en el libro, sin la necesidad de consultar inmediatamente otras fuentes.

(A.4)

A.2.1

Vectores unitarios

Un vector unitario se define como un vector con magnitud igual a 1. Por tanto, el vector unitario a lo largo del vector a, denotado con a, puede definirse como a (A.5) a = a donde a se determina por la ecuacin (A.4). Por ende, la magnitud del vector unitario a es a = 1. Ahora, si i, j y k denotan los vectores unitarios a lo largo de los ejes X, Y y Z, respectivamente, del sistema de coordenadas como se presenta en la figura A.1, cualquier vector cartesiano tridimensional que se muestra en la figura A.1, por decir, a } [a1, a2, a3]T, puede expresarse como a = a1 i + a2 j + a3 k (A.6) en la que los vectores unitarios i, j y k tienen las siguientes representaciones:
1 0 0 i 0 ,j 1 ,y k 0 0 0 1

LM OP MM PP NQ

LM OP MM PP NQ

LM OP MM PP NQ

(A.7)

Los robots construidos por estudiantes le dan a los lectores la conanza para crear sus propios robots que, ciertamente, aumentarn sus conocimientos acerca de estos temas.
Figura C.2 Robot automtico de 2007 Figura C.3 Robot manual de 2007

mecanismo de un paralelogramo de cuatro barras para el robot manual de la figura C.3. Este ltimo puede extenderse casi medio metro enfrente del robot para poder colocar el bloque dentro de la lnea de lmite del polgono de 10 lados. Una vez terminado el diseo, el siguiente nivel de desafo es su fabricacin, ensamble, programacin y funcionamiento exitoso. Segn la experiencia del autor, normalmente debern revisarse los siguientes aspectos para completar este tipo de proyecto con xito: 1. Una planeacin correcta, tomando en cuenta las 5 P (Proper Planning Prevents Poor Performance la planeacin correcta impide el desempeo defectuoso). 2. Cada estudiante debe llevar una bitcora de proyecto para registrar actividades diarias, esbozos, informaciones, etc. 3. Seguimiento estricto de un diagrama de Gantt bien planeado. Un tpico diagrama Gantt se presenta en la figura C.4. En caso de que no pueda cumplirse con las fechas lmite, debern averiguarse las causas y deben tomarse medidas sin redefinicin del diagrama de Gantt. De hecho, el calendario actual podr colocarse debajo del calendario planeado. 4. Es de extrema importancia que los estudiantes aprendan cmo trabajar en grupo. En particular, los coordinadores de diferentes tareas, por ejemplo, mecnico, elctrico, fabricacin, etc., debern saber cmo distribuir el trabajo entre otros miembros de sus grupos. De lo contrario, ellos terminarn haciendo la mayor parte de los trabajos mientras que otros no tendrn trabajo. Este ltimo grupo podr frustrarse e incluso abandonar el proyecto.

Captulo

1
Introduccin

El tema de la Robtica es relevante en el plan de estudios de ingeniera hoy en da debido a la capacidad de los robots para realizar trabajos incesantes y peligrosos. Un robot slo tiene sentido cuando su intencin es la de relevar a un trabajador humano de una labor aburrida, desagradable o demasiado precisa. Normalmente, un robot es diseado para que asista a un trabajador humano. Al contrario de lo que por lo general se cree, en realidad no es ms rpido que los humanos en la mayora de las aplicaciones, pero es capaz de mantener su velocidad durante un largo periodo. De esto resulta que la productividad aumenta si la cantidad de piezas que se va a producir es muy grande. Adems, la inteligencia de los robots ms avanzados de la actualidad no se acerca a la humana. Por lo tanto, la introduccin de un robot en un proceso sin el entendimiento real de los benecios que puede proporcionar sera desastrosa y no es aconsejable.

1.1

Historia

Aunque la idea de los robots se remonta a tiempos antiguos, hace ms de 3 000 aos en la leyenda hind de los elefantes mecnicos (Fuller, 1999), la palabra robot se us por primera vez en 1921, en la obra de teatro Rossums Universal Robots (RUR), escrita por el checo Karel apek (1890-1938). En la obra RUR (Dorf, 1988), un fabricante cticio de criaturas mecnicas diseaba robots para reemplazar a trabajadores humanos. Ecientes pero completamente faltos de emociones,

Origen de la palabra robot El origen de la palabra robot puede ser encontrado en la palabra checa robota, que signica trabajo forzado u obligatorio.

CAPTULO

Introduccin

se pensaba al principio que estos robots eran mejores que las personas, puesto que hacan lo que se les ordenaba sin preguntar. Al nal, los robots se volvieron contra sus amos. Acabaron con la raza humana, salvo un solo hombre para que pudiera seguir produciendo ms robots. Desgraciadamente, la frmula se haba perdido en la destruccin causada por los robots. Este sentimiento de odio hacia los robots parece existir hasta hoy. El miedo de que vayan a apoderarse del trabajo de las personas ha dado como resultado el retraso en el desarrollo en esta rea. Sin embargo, Isaac Asimov, en sus historias de ciencia ccin de los aos cuarenta, se imaginaba al robot como ayudante de la humanidad y postulaba tres reglas bsicas para robots. Por lo general, stas se conocen como las leyes de la robtica.

Las leyes de la robtica


1. Un robot no debe daar a un ser humano ni, por su inaccin, dejar que un ser humano sufra dao. 2. Un robot debe obedecer las rdenes que le son dadas por un ser humano, excepto si stas entran en conicto con la primera ley. 3. Un robot debe proteger su propia existencia, a menos que sta entre en conicto con las dos primeras leyes. Ms tarde, Fuller (1999) introdujo una cuarta ley que dice: 4. Un robot podr tomar el trabajo de un ser humano, pero no debe dejar a esta persona sin empleo. Existen intentos de apegarse a estas leyes de la robtica, pero no hay modos automticos para su impleEl porqu del nombre mentacin. Por ejemplo, lo ms probable es que el roUNIMATION bot militar, por su propia naturaleza, se haya diseado con la intencin de romper estas reglas. La mayora La palabra UNIMATION es la contraccin de los trminos UNIversal y aude los robots industriales de la actualidad estn disetoMATION, debido a la creencia de ados para trabajar en ambientes que son peligrosos y que el robot es una herramienta unimuy difciles para trabajadores humanos. Por ejemplo, versal que puede usarse para muchos tipos de tareas. la mano de un robot puede disearse para la manipulacin de un objeto muy caliente o muy fro, que la mano humana no podra manipular de manera segura. Inspirado por los libros de Asimov sobre robots, Joseph H. Engelberger intent disear un robot trabajador en la dcada de los cincuenta. Junto con George C. Devol, fund la empresa UNIMATION Robotics Company en 1958 Sin embargo, el primer robot de esta compaa fue instalado hasta 1961, en la compaa automotriz de General Motors en Nueva Jersey, Estados Unidos. Se trataba de un molde automatizado de fundicin para dados (o matrices) que arrojaban manijas de puertas al rojo vivo, as como otras partes de autos dentro de tanques con refrigerante en una lnea que las transportaba hacia los trabajadores para su recorte y pulido. Su caracterstica ms interesante era una tenaza sobre una armadura de acero que eliminaba la necesidad de que un operario tocara piezas de acero fundido de autos recin fabricados. Este robot tena 5 grados de libertad (Degrees of freedom: DOF), pero haba algunas aplicaciones donde se requeran 6 DOF. La gura 1.1 muestra un robot Unimate con 6 DOF. Desde entonces, la robtica ha evolucionado en un sinnmero de aplicaciones, desde su uso en soldadura, pintura, ensamble, carga y descarga de herramentales de mquinas,

1.1

Historia

a) Fotografa de un robot Unimate [Cortesa de http://www.robothalloffame.org/unimate.html] Armado para el servicio. Un manipulador Unimate en realidad slo un brazo levanta y coloca piezas en una planta de General Electric.

Movimiento

Movimiento radial Cabeceo (Pitch) Movimiento vertical

Balanceo (Roll) b) Bosquejo de un robot Unimate [Cortesa de Critchlow (1985)]

Rotacin (Yaw)

Figura 1.1

Robot Unimate

CAPTULO

Introduccin

inspeccin, agricultura, enfermera, ciruga mdica, usos militares y seguridad hasta las exploraciones subacuticas y del espacio. La mayora de estos robots se siguen usando en la soldadura (aprox. 25%) y en el montaje (aprox. 33%). Los ltimos en la serie son el Pathnder Lander y el microrover Sojourner, que aterriz en Marte el 4 de julio de 1997. stos fueron desarrollados por la National Aeronautic Society of America (NASA) de Estados Unidos. Las guras 1.2 a) y b), respectivamente, muestran el Mars Pathnder Lander y el microrover Sojourner.

a) Pathfinder Lander con el microrover a bordo afuera.

b) Microrover Sojourner

Figura 1.2

Sistemas robticos para la exploracin de Marte [Cortesa: http://mpfwww.jpl.nasa.gov]

1.2

Robots

1.2

Robots

El robot se dene, de manera formal en la Organizacin Internacional para la Estandarizacin (ISO), como un manipulador multifuncional reprogramable, capaz de mover materiales, piezas, herramientas o dispositivos especiales, a travs de movimientos variables programados, para Mquinas-herramienta el desempeo de tareas diversas. Existen otras denicon control numrico ciones dadas por otras asociaciones, como por ejemcomputarizado (CNC) plo, el Robotics Institute of America (RIA), la Japan vs. Robots Industrial Robot Association (JIRA), la British Robot Las mquinas-herramienta con conAssociation (BRA) y otras. Todas ellas coinciden en trol numrico computarizado (CNC) se distinguen de los robots porque dos puntos: la capacidad de reprogramacin y la mulstos tienen capacidades de reprotifuncionalidad de los robots. gramacin y multifuncionalidad. En trminos generales, los robots son clasicados como industriales, no industriales o para usos especiales. Un tpico robot industrial fabricado por la compaa Cincinnati Milacron de Estados Unidos se muestra en la gura 1.3a) y un robot indio apropiado para aplicaciones industriaExtensin del codo Pivote del hombro

Rotacin

Balanceo Movimiento del brazo Cabeceo

a) Cincinnati Milacron (T3) [Cortesa: Koivo (1989)]

CAPTULO

Introduccin

b) Robot pick and place de Systemantics India Figura 1.3 Robots industriales

les ligeras se puede ver en la gura 1.3b). Estrictamente hablando, un robot es un manipulador controlado por una computadora. En el estudio de la robtica, sin embargo, siempre se supone que un manipulador como el que se muestra en la gura 1.3 es controlado por computadora. Por lo tanto, puede ser considerado un robot. El objetivo de los robots industriales es el de servir a un propsito universal y de mano de obra no calicada o semicalicada, por ejemplo, para soldar, pintar, realizar mecanizados, etc. Por otro lado, un robot de uso especial es el que se emplea en ambientes distintos del entorno normal de una fbrica. Por ejemplo, un robot de serie montado sobre una nave espacial para la recuperacin de un satlite defectuoso o para volver a colocarlo despus de la reparacin puede ser considerado un robot de uso especial. El rover Sojourner de la gura 1.2b) tambin puede calicarse como robot de uso especializado. Otros robots de uso especial se clasican como sigue:
Es AGV lo mismo que WMR?

i) Vehculos guiados automticamente (AGV) Son sistemas robticos mviles que

se usan comnmente para el manejo de materiales en fbricas. Las guras 1.4a) y b), respectivamente, muestran un AGV de este tipo y su aplicacin en el manejo de materiales. Por lo general, estos AGV siguen una trayectoria que est sealada en el piso de la nave. Tambin existen AGV autnomos que no necesitan una trayectoria cableada. Asimismo, hay caractersticas adicionales, por ejemplo, la capacidad de movimiento omnidireccional, como se muestra en la gura 1.5. Las ruedas omnidireccionales o MekAGV vs. robots anum de la gura 1.5a), a diferencia de las ruedas caminante convencionales de dos grados de libertad (DOF) Un robot caminante es otro tipo de que se usan en automviles y otros AGV, proporciorobot mvil, en el cual se usan patas nan tres DOF; es decir, estos AGV tambin pueden en lugar de ruedas para la locomomoverse lateralmente. Los AGV se usan asimismo cin como es el caso de los AGV. Por lo tanto, un robot caminante es disen hospitales en enfermera, en vigilancia y otras tinto de un AGV o WMR. aplicaciones.
Un vehculo guiado automticamente (AGV) es un tipo de robot mvil que tiene ruedas para su locomocin. Por lo tanto, tambin se llama robot mvil con ruedas (WMR). Resulta entonces que un AGV es lo mismo que un WMR.

1.2

Robots

a)

b)

Figura 1.4 Un AGV: a) autnomo; b) trabajando (recogiendo un bastidor con puertas de automvil) [Cortesa de: www.globalspec.com]

ii) Robots caminates

Estos robots caminan como seres humanos, como se muestra en la gura 1.6. Se usan en los ejrcitos, en la exploracin subacutica y en lugares de terreno accidentado.

iii) Robots paralelos Como lo indica su nombre, estos robots tienen una conguracin paralela, en contraste con la estructura de tipo serial de un robot industrial como los que se ven en las guras 1.1 y 1.3. En este sentido, un robot caminante con todas sus patas en contacto con el suelo es un robot paralelo. Como se muestra en la gura 1.7, tambin se usa una estructura paralela con seis patas para controlar la plataforma mvil como simulador de vuelo para la capacitacin de futuros aviadores. Como se ve en la misma gura, la estructura tiene seis patas para controlar la plataforma mvil. Estos robots tambin se usan

a) Una rueda Mekanum

b) Un AGV

Figura 1.5 Un vehculo guiado automticamente (AGV) con ruedas Mekanum [Cortesa de ngeles (2003)]

CAPTULO

Introduccin

Figura 1.6

El robot caminante de la Universidad Estatal de Ohio, un hexpodo [Cortesa de Todd (1985)]

como mquina-herramientas y como robots mdicos para reducir el temblor de la mano del cirujano durante una operacin, etc. La gura 1.8 muestra el uso de un robot paralelo de una mquina fresadora. En este libro slo se analizarn los robots industriales de tipo serial, como los que se ven en las guras 1.1 y 1.3. Sin embargo, las herramientas usadas o desarrolladas aqu pueden extenderse para analizar otros robots, como AGV, paralelos y similares.

1.3

El uso de robots

Los robots de cualquier tipo, industrial o no industrial, no son tan rpidos ni tan ecientes como las mquinas automatizadas de uso especial. Sin embargo, estos robots pueden fcilmente reentrenarse o reprogramarse para realizar un sinfn de tareas, mientras que una mquina automatizada de uso o propsito especial, incluso una mquina CNC, slo puede

Figura 1.7

Robot paralelo para un simulador de vuelo [Cortesa de biostavart.tripod.com]

1.3

El uso de robots

Figura 1.8

Robot paralelo que funciona como fresadora [Cortesa de: http:// biotsavart.tripod.com/hexapod.htm#HISTORY]

realizar una serie de labores muy limitada. Es el grado de reprogramabilidad lo que distingue un robot de una mquina-herramienta de CNC. Sin embargo, no hay ninguna lnea de demarcacin internacionalmente reconocida. Queda la pregunta, pues, sobre cundo debe considerarse que un determinado trabajo ha de ser ejecutado por una persona, un robot o una mquina especial. La respuesta a esta pregunta no es sencilla. Algunas normas generales pueden servir para proponer factores signicativos que deben tenerse presentes.

Reglas generales para la decisin sobre el uso de un robot


1. La primera regla por considerar se reere a lo que se conoce como Las cuatro D de la robtica (Four Ds of Robotics), es decir, si la tarea es sucia (Dirty), aburrida (Dull), peligrosa (Dangerous) o difcil (Difcult). De tener una de estas caractersticas, un ser humano probablemente no ser capaz de ejecutar la tarea en forma eciente. Por lo tanto, es un trabajo apropiado para que se le automatice o para que lo realice un robot. 2. La segunda regla es que un robot no debe dejar a un ser humano sin trabajo o desempleado. La robtica y la automatizacin deben servir para hacer nuestra vida ms placentera, no ms desagradable. 3. La tercera regla implica cuestionarse si es posible o no encontrar personas dispuestas a realizar el trabajo. De no ser as, dicho trabajo es candidato para la automatizacin o la robtica. Ciertamente, esto debera ser un motivo primordial para el crecimiento de la automatizacin y de la robtica. 4. La cuarta regla general es que el uso de robots o de automatizacin debe tener benecios econmicos a corto y largo plazos.

10

CAPTULO

Introduccin

As, como punto de partida general, consideraremos lo siguiente: una tarea que tiene que realizarse una sola vez o unas cuantas veces y que no es peligrosa es mejor que la efecte un ser humano. Despus de todo, l es la ms exible de todas las mquinas. En cambio, ser mejor que una tarea que tenga que ser hecha cientos o cientos de miles de veces sea ejecutada por una mquina automatizada exible, como un robot industrial. Y una tarea que debe realizarse un milln de veces o ms, probablemente sea mejor que se efecte mediante la construccin de una mquina altamente automatizada de uso especial.

1.3.1

Aplicaciones

En todo el mundo, los robots se usan ms extensiva y ampliamente en la industria automotriz. En los ltimos tiempos, sin embargo, adems de este sector, una fuerte demanda de la industria de componentes electrnicos, de la industria de equipos de comunicacin y de la de computadoras estn reforzando el incremento de la participacin en el mercado. La gura 1.9 muestra la distribucin estimada de aplicaciones de robots en diferentes sectores en los aos 2004 y 2005.

1.3.2

Poblacin

La gura 1.10 muestra la poblacin estimada de robots industriales en diferentes continentes, mientras que la tabla 1.1 presenta la distribucin de robots por pases y los pronsticos para el futuro. Las aplicaciones de otros robots pueden verse en la gura 1.11.

1.3.3

Economa

Los robots industriales son cada vez ms y ms econmicos, lo que se reeja en los precios para robots industriales usados. Tome en cuenta que un ABB IRB 6000, que est valorado en aproximadamente 7 000 dlares costaba ms de 157 515 dlares cuando era nuevo, en 1993. Un robot equivalente nuevo costar entre 52 505 dlares y 105 dlares, dependiendo
Vehculos automotores Partes automotrices Industrias elctricas Industrias qumicas Productos metlicos Maquinaria Productos alimenticios Comunicacin Productos de precisin y pticos 2004 2005

5 000

10 000

15 000 20 000 Unidades

25 000

30 000

Figura 1.9

Uso de robots industriales durante 2004-2005 [Fuente: http://www.ifr.org/statistics/keyData2005.htm]

1.3
80 000 70 000 60 000

El uso de robots

11

Unidades

50 000 40 000 30 000 20 000 10 000 0 1996 1997 1998 1999 2000 2001 2002 2003 Europa Amrica 2004 2005

Asia/Australia

Figura 1.10

Poblaciones estimadas de robots industriales [Cortesa de http://www.ifr.org/statistics/keyData2005.htm]

del fabricante y de las especicaciones. Los precios para robots se estn volviendo tan econmicos que en algunos pases uno nuevo es incluso ms econmico que el trabajador ms barato.

Constituyen los robots una amenaza para el empleo? Las estadsticas muestran que los usuarios ms grandes del mundo no son los que tienen la tasa ms alta de desempleo. Por ende, puede considerarse que los robots no son una amenaza directa al empleo.

1.3.4

Seguridad

Los robots industriales pueden ser peligrosos. Son dispositivos extraordinariamente potentes, especialmente aquellos modelos que tienen gran capacidad y alcance. Esto signica que la seguridad es de suma importancia, tanto en la instalacin como durante la produccin. Los reglamentos de
Nmero de unidades
12 000 10 000 8 000 6 000 4 000 2 000 0

Figura 1.11

Su ba cu t ic o Li m D pi ef ez en a sa ,r se es gu ca Co rida te, d n de stru m cc ol i ic n/ i n Ca m Pl po ro ata bo fo r ts m m as v d ile e M s ed ic in a Lo g To sti do ca sl os de m s


Hasta finales de 2005 Nuevas instalaciones 2006-2009

Aplicaciones de otros robots y su pronstico [Cortesa de http://www.ifr.org/statistics/keyData2005.htm]

12

CAPTULO

Introduccin

Tabla 1.1 Existencias estimadas de robots industriales durante 2004-2005 y pronstico para 2006-2009
Instalaciones anuales Pas Amrica Brasil Norteamrica (Canad, Mxico, USA) Resto de Amrica Asia/Australia China India Indonesia Japn Malasia Filipinas Repblica de Corea (todos los tipos industriales) Singapur Taiwn provincia de China Tailandia Vietnam Resto de Asia Australia Nueva Zelanda Europa Austria Benelux Dinamarca Finlandia Francia Alemania Italia Noruega Portugal Espaa Suecia Suiza Turqua Reino Unido Pases de Europa Central/Oriental Resto de Europa frica Total 2004 15 400 208 15 170 22 52 311 3 493 369 74 37 086 250 65 5 457 2005 21 555 320 21 136 99 76 047 4 461 450 193 50 501 243 80 13 005 2006 17 200 16 500 2009 20 100 Existencias operacionales al nal del ao 2004 2005 2006 2009 182 500 176 000 126 961 143 203 153 500 2 352 2 672 19 100 123 663 139 553 149 400 946 978 443 193 481 664 502 000 7 096 11 557 619 1 069 121 314 356 483 373 481 372 000 1 452 1 695 93 173 51 302 61 576

65 000

76 000

583 000

40 000

46 000

388 500

244 3 680 757 14 170 652 29 409 545 536 296 401 3 009 13 401 5 679 61 211 2 826 833 310 24 785 419

424 4 096 1 458 99 124 913 28 863 485 1 097 354 556 3 275 10 506 5 425 115 144 2 649 939 442 207 1 363 1 149

5 443 11 881 1 014 14 3 505

5 463 15 464 2 472 113 3 349

28 200

33 800

3 000 10 700 5 100

800

4 170 4 938 279 019 297 374 307 700 3 907 4 148 8 749 9 362 2 342 2 661 3 712 4 159 3 700 28 133 30 434 32 200 13 000 120 544 126 725 132 300 6 200 53 244 56 198 58 900 724 811 1 488 1 542 21 893 24 081 7 341 8 028 3 539 3 732 196 403 1 200 14 176 14 948 14 700 8 372 9 337

345 400

37 900 142 700 66 400

14 300

73 157 87 204 97 207 126 669

220 110 60

250 130 150

659 805 430 634 900 1 600 849 603 922 875 964 100 1 112 500

Ejercicios basados en la web

13

seguridad varan de un pas a otro y son esenciales para asegurar que toda instalacin cumpla con la legislacin local. La seguridad se reere principalmente a mantener al personal fuera del alcance de trabajo del robot y sirve para asegurar que los movimientos puedan detenerse fcilmente en caso de una emergencia. Para este n, los robots tienen cadenas de seguridad dual o cadenas de marcha integradas. stos son dos circuitos paralelos que detendrn el movimiento del robot cuando sean interrumpidos. Tambin se prevn conexiones externas, incluidos los paros de emergencia. Asimismo, cabe mencionar que casi todos los robots tienen frenos de disco operados elctricamente en cada eje, y activados slo si se aplica la energa para soltarlos. Por lo tanto, en caso de un corte del suministro elctrico o si el paro de emergencia es aplicado, el robot se detiene en seco, en una fraccin de segundo, en su posicin. No sufre un colapso y retiene sus datos posicionales y de programa.

RESUMEN
En este captulo se presentan los robots, su historia, deniciones, categoras, aplicaciones y poblaciones. Tambin se exponen las leyes de robtica y cundo deben usarse los robots.

EJERCICIOS
1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 1.10 Qu es un robot? Cules son los tipos de robots? Mencione algunas aplicaciones tpicas de un robot industrial. Cules son las diferencias entre un robot y una mquina-herramienta CNC? Cmo debe decidirse sobre el uso de un robot para un determinado trabajo? Qu son las cuatro D de la robtica? Qu es R.U.R.? Cules son las leyes de la robtica? Anote las diferencias entre robots seriales y paralelos. Cules son los problemas de seguridad en el uso de robots?

EJERCICIOS BASADOS EN LA WEB


Basndose en bsquedas en la web, conteste las siguientes preguntas: 1.11 1.12 1.13 1.14 Busque nombres de diferentes fabricantes de robots. Cmo se especica un robot industrial? Cul es la poblacin de robots en el mundo? Qu industria es considerada el usuario ms grande de robots industriales de tipo serial? 1.15 Cules son las reas nuevas de aplicaciones de robots?

Captulo

2
Robots seriales

Normalmente, un robot industrial es serial por naturaleza, tal como se muestra en las guras 1.1 y 1.3, por lo que a stos se les conoce como robots seriales. Cualquier robot, serial o de otro tipo, consiste en varios subsistemas, por ejemplo, subsistema de movimiento, subsistema de reconocimiento, etc. stos se explican en la seccin 2.1. Las especicaciones de uno de estos robots seriales, el Cincinnati Milacron de la gura 1.3, se muestra en la tabla 2.1. Segn sta, la aplicacin del robot (la 2 de la tabla) es para el manejo de materiales; es decir, el robot es el ms apropiado para este propsito. Por lo tanto, este robot puede clasicarse como un robot de manejo de materiales. Ahora considere el espacio de operacin del brazo (las 6-9 de la tabla). Donde se muestran el alcance y la ubicacin en la que el brazo puede moverse, lo que dene una forma geomtrica, esto quiere decir que otra manera de clasicar especicaciones de Volumen de trabajo o un robot se basa en su volumen geomtrico de trabajo, espacio de trabajo? o bien en la conguracin del brazo o en su sistema de Estos trminos signican lo mismo: coordenadas. De manera similar, existen otros tipos de los puntos ms lejanos que puede alclasicacin, basadas en los diferentes aspectos de un canzar el efector nal de un robot. robot, lo que se explica en la seccin 2.2.

2.1

Subsistemas de robots

Como se ilustra en la gura 2.1, un sistema robtico consiste por lo general en tres subsistemas: subsistema de movimiento, subsistema de reconocimiento y subsistema de control. Sus funciones se describen a continuacin.

Tabla 2.1 Una especicacin de robot tpica (Fig. 1.1) [Cortesa de: Cugy y Page (1984)]

Fabricante Modelo
Repetibilidad: Precisin: Velocidad 635 mm/s 635 mm/s 635 mm/s Eje 4 Eje 5 Eje 6 180 270 Mueca Espacio operativo N/D 2.00 mm Velocidad 635 mm/s 635 mm/s

Cincinnati Milacron T3-595

Pas de origen: Aplicaciones principales:

Estados Unidos Manejo de materiales

Conguracin (cinemtica): Capacidad de carga mxima:

Polar 204 kg

Brazo

Espacio operativo

Eje 1 Eje 2 Eje 3

240 90 120

Sistema de potencia: elctrico, 380 V 50 Hz, 27 kVA, pistn hidrulico lineal ms cinco pistones rotativos, 155 bar Alcance horizontal mximo: 2 590 mm; posicin de montaje: piso casete Caja de teach-in punto a punto 2.1 dilogo directo (ingls) integrado como estndar

Sistema de control

Tipo de memoria: Tamao de memoria estndar:

Nmero de programa: Sensores:

CIP 3200 Minicomputadora RAM 64 K mx. 1 750 puntos N/D disponibles

Canal de control: Mtodo de teach-in Modo de operacin: Lenguaje utilizado para el programa del controlador: Diagnstico:

Peso total del robot: 2 300 kg

Subsistemas de robots

N/D: Datos no disponibles.

15

16

CAPTULO

Robots seriales
Subsistema de reconocimiento

Subsistema de movimiento

Computadora Ambiente del objeto

Subsistema de control

Figura 2.1

Subsistemas de robots y sus interacciones [Cortesa de: Yoshikawa (1990)]

i) Subsistema de movimiento El subsistema de movimiento es la estructura fsica del robot que realiza un movimiento deseado parecido al de los brazos humanos, tal como se ilustra en la gura 2.2. ii) Subsistema de reconocimiento
El subsistema de reconocimiento utiliza diferentes sensores para recabar informacin sobre el propio robot, sobre cualquier objeto que va a ser manipulado y sobre el ambiente de trabajo. Basndose en los datos de los sensores, este subsistema reconoce el estado del robot, el de los objetos y el del ambiente de trabajo.
Eslabn 2 Articulacin 2 Eslabn 1 Articulacin 1 Eslabn 3 Brazo Codo Eslabn 4 Articulacin 4 Eslabn 5 Eslabn 6 a) Robot PUMA Articulacin 5 Mueca Mano Articulacin 6 Dedo b) Partes equivalentes en el cuerpo humano Articulacin 3 Hombro

Eslabn 0 (Base)

Figura 2.2

Manipulador robtico y sus partes equivalentes en el cuerpo humano

2.1

Subsistemas de robots

17

iii) Subsistema de control El subsistema de control regula el movimiento del


robot con el n de lograr una determinada tarea, usando la informacin proporcionada por el subsistema de reconocimiento. Puede ser til sealar aqu que una persona con una formacin en ingeniera mecnica trabaja norPor qu la robtica es malmente en el rea del subsistema de movimiento, interdisciplinaria? mientras que personas con conocimientos en ciencias Porque requiere conocimientos en de la computacin e ingeniera elctrica se enfocan en ingeniera mecnica, ingeniera elclos subsistemas de reconocimiento y control, respectitrica, ciencias de la computacin y vamente. Esto se debe a las asignaturas de sus planes tecnologas de la informacin. de estudios. La robtica, sin embargo, es un campo interdisciplinario, y el conocimiento detallado de las tres disciplinas sin duda ayudar en el diseo y desarrollo de un mejor sistema robtico. As resulta que no es raro ver cmo las personas rebasan sus lmites de especializacin. Se ve con frecuencia que un especialista en ingeniera mecnica trabaja en el rea de inteligencia articial (subsistema de reconocimiento), mientras que alguien con formacin en ingeniera elctrica o ciencias de la computacin se ocupa de la simulacin dinmica y del diseo de robots (subsistema de movimiento).

2.1.1

El subsistema de movimiento
Robot o manipulador?

Los elementos del subsistema de movimiento son los siguientes:

Se trata de la estructura fsica, la parte que se est moviendo. sta incluye eslabones (tambin llamados cuerpos) y articulaciones (que tambin se denominan pares cinemticos), normalmente conectadas en serie, como es el caso de los robots que se muestran en las guras 1.1 y 1.3, y del robot PUMA de la gura 2.2a). Los eslabones estn hechos de acero o de aluminio. Tambin pueden usarse otros materiales, dependiendo de los requerimientos. Las articulaciones son por lo general del tipo rotatorio o de traslacin. En el estudio de la robtica y de los mecanismos, a estas articulaciones se les conoce respectivamente como revolutas y prismticas, tal como se muestra en las guras 5.1 y 5.2 del captulo 5. Un ejemplo de una articulacin revoluta es la bisagra de una puerta; una articulacin prismtica es el arreglo pistn/cilindro del motor de combustin interna que se utiliza en automviles. A semejanza del conjunto que forman el brazo, la mueca y la mano del ser humano, tal como se muestra en la gura 2.2b), el manipulador del robot tambin tiene tres partes. Las primeras dos, el brazo y la mueca, pueden verse en las guras 2.2a) Qu es PUMA? y b), respectivamente, mientras que la tercera parte, la mano, se muestra en la gura 2.3a) y b). La funcin de PUMA signica Programmable Uniun brazo es la de colocar un objeto en una determinaversal Manipulator for Assembly (Manipulador universal programada ubicacin en el espacio cartesiano tridimensional, ble para el ensamble). donde es orientado por la mueca. Para un robot tpico
En este libro, ambas palabras se usan muchas veces en forma indistinta. Sin embargo, como se explica en este captulo, el manipulador es la estructura mecnica del robot.

i) Manipulador

18

CAPTULO

Robots seriales

de seis grados de libertad, como se muestra en las guras 1.1 y 1.3 o 2.2a), los primeros tres eslabones y articulaciones forman el brazo y las ltimas tres articulaciones de interseccin mutua conforman la mueca.

ii) Efector nal

sta es la parte instalada en el extremo del manipulador. Es equivalente a la mano humana. Un efector nal podra ser una mano mecnica que manipula un objeto o que lo sostiene antes de que sea movido por el brazo del robot. En las guras 2.3a) y b) se muestran dos manos tpicas. La gura 2.3a) presenta un sujetador sencillo de dos dedos para sujetar objetos sencillos, mientras que una mano de dedos mltiples, como la de la gura 2.3b), puede ejecutar tareas ms complejas. Otros sujetadores ms Efector nal o mano? sencillos operados en forma neumtica pueden verse en la gura 2.4. Tambin se consideran como efectores Una mano mecnica (gura 2.3) es un tipo de efector nal que se usa en nales algunas herramientas especializadas, como un robots. Efector nal es un trmino electrodo de soldadura, un soplete oxiacetilnico, una mucho ms genrico para lo que se brocha de pintura o una muela abrasiva montada en el encuentre montado en el extremo extremo de un brazo manipulador para la ejecucin de de un manipulador de robot. Otros ejemplos de efectores nales son una tareas especcas.
pistola para soldar, una brocha para pintar, etctera.

iii) Actuador Los actuadores de un robot pro-

porcionan el movimiento para el manipulador y para el efector nal. Se clasican como neumticos, hidrulicos o elctricos, segn su principio de operacin, lo cual se explica en el captulo 3. Observe aqu que un motor, por ejemplo un motor elctrico de CD o CA, que se acopla a los elementos mviles de transmisin, es decir,

Pistn con cremallera (alternativamente puede usarse un motor elctrico con un tornillo sinfn) a) Sujetador simple [cortesa de Mair (1988)] b) Mano de tres dedos [cortesa de ngeles (2003)]

Figura 2.3

Manos de robot

a)

b)

c)

d)

2.1

1: Mordaza o dedo; 2: Cilindro neumtico; 3: Gua recta; 4: Disco de leva

Subsistemas de robots

Figura 2.4

Sujetadores de accionamiento neumtico: a) Mordaza angular; b) Mordaza paralela; c) Mordaza paralela con dos cilindros; d) Mordaza paralela con disco de leva [Cortesa: Robot grippers por Gareth J. Monkman, Stefan Hesse, Ralf Steinmann, Henrik Schunk, Wiley, 2007; http://media.wiley.com/product_data/excerpt/90/35274061/3527406190.pdf]

19

20

CAPTULO

Robots seriales

a) Banda sncrona o dentada

b) Cadena de rodillos

Figura 2.5

Transmisin por banda y cadena

engranajes, etc., es llamado actuador. Sin embargo, un sistema neumtico o hidrulico que proporciona movimientos para los eslabones del robot, con o sin elementos de transmisin, se llamar actuador y no motor.

iv) Transmisin Como lo sugiere el trmino, estos elementos transmiten el movimiento de motores y de actuadores a los eslabones del manipulador. En el caso de motores elctricos, estos elementos, junto con el motor elctrico, forman un actuador. Los siguientes son elementos de transmisin tpicos:

a) Transmisin por banda y cadena Los accionamientos por banda se utilizan


mucho en la robtica, especialmente la banda sncrona, como se muestra en la gura 2.5a). Sin embargo, su vida til es breve, ya que dependen de la tensin de la banda para producir agarre a travs de la polea. Las cadenas, por otro lado, como se muestra en la gura 2.5b), son por lo general ms econmicas. Tienen una mayor capacidad de carga y una vida til ms larga en comparacin con las transmisiones por banda, aunque menor en comparacin con los engranajes.

b) Engranajes Entre todas las transmisiones mecnicas, los diferentes tipos de engranajes, como se muestra en la gura 2.6, son los ms conables y duraderos, aunque el juego entre los dientes tendr que tomarse en cuenta cuidadosamente durante la fase de diseo.

Engranajes de dientes rectos

Engranajes helicoidales

Engranaje cnico recto

Engranaje cnico de dientes curvos

Engranaje de tornillo tangente

Engranaje de pin y cremallera

Figura 2.6

Engranajes

2.1

Subsistemas de robots

21

c) Mecanismos de eslabones A n de reducir el peso y exceso de exibilidad de los elementos de transmisin arriba mencionados, se emplean los mecanismos de eslabones de la figura 2.7a). La gura 2.7b) muestra cmo se utiliza un gato de husillo con un arreglo de cuatro barras para transmitir movimientos.
Qu es un mecanismo? Una serie de eslabones, por lo general rgidos, acoplados por articulaciones que permiten movimientos relativos entre cualquiera de dos eslabones, forman un mecanismo.

2.1.2

Subsistema de reconocimiento

El elemento ms importante en el subsistema de reconocimiento es el sensor, el cual puede compararse con nuestros ojos o nuestra nariz. La inclusin de sensores en un robot cambia su naturaleza de estpida a inteligente. A n de procesar la seal detectada, en su mayora anloga, por medio de un controlador digital, se requiere un convertidor analgico digital (Analog-to-Digital Converter, ADC). De esta manera, un subsistema de reconocimiento consiste normalmente en los siguientes dos elementos.

i) Sensores La mayora de los sensores son esencialmente transductores, que convierten la forma de una seal en otra. Por ejemplo, el ojo humano convierte patrones de luz en seales elctricas. Los sensores forman parte de una de varias reas generales: visin, tacto, deteccin de rango y proximidad, navegacin, reconocimiento del habla, etc. Cada una de estas reas es en s un rea de investigacin individual. Sin embargo, algunas de ellas se explican en el captulo 4.

ii) Convertidor analgico digital (ADC) Este dispositivo electrnico se comunica con los sensores y con el controlador del robot. Por ejemplo, el ADC convierte
2 4 1 3 4 3 1 2 1 3 4 2 + +

2 1 3 4 Gato de husillo Ensamble de servomotor b) Uso de mecanismos en el manipulador de robtico

a) Mecanismos de cuatro barras

Figura 2.7

Mecanismos y su uso en el manipulador de robtico

22

CAPTULO

Robots seriales

el voltaje creado por una deformacin unitaria en una galga extensomtrica en una seal digital, es decir, 0 o 1, de manera que el controlador digital del robot pueda procesar esta informacin. Fsicamente se ve como cualquiera otra tarjeta de interface de computadora dentro de la unidad de procesamiento central (CPU), como se muestra en la gura 2.8.

2.1.3

Subsistema de control

El papel de un sistema de control en un mando de robot se muestra en la gura 2.9a). Principalmente consiste en los siguientes dispositivos:

i) Controlador digital El controlador digital es un dispositivo electrnico especial que tiene un CPU, memoria y, a veces, un disco duro para almacenar los datos programados. En sistemas de robtica, estos componentes se mantienen dentro de una caja sellada que se denomina controlador, como puede verse en la gura 2.9b). Se usa para controlar los movimientos del manipulador y del efector nal. Un controlador de robot es como un supervisor en una fbrica. Puesto que una computadora tiene las mismas caractersticas que un controlador digital, tambin se utiliza como un controlador de robot. Un controlador procesa los comandos programados por el usuario y transmite seales apropiadas a los actuadores a travs de los convertidores analgicos digitales (DAC). Los lenguajes de programacin pueden ser los mismos que se usan en la computacin, es decir, BASIC, Fortran, C y C++. Para los robots comerciales, sin embargo, los lenguajes son generalmente distintos. Por ejemplo, Fanuc de Japn usa el lenguaje de programacin de robots Karel. Esto sirve principalmente para la introduccin de caractersticas especcas en los sistemas robticos con el n de que se distingan los productos. ii) Convertidor digital analgico (DAC) Un DAC convierte la seal digital del controlador del robot en una seal anloga para accionar los actuadores; por ejemplo, un motor elctrico de CD. El controlador digital tambin est acoplado a un DAC para re-

Figura 2.8

Un convertidor analgico digital [Cortesa: http://www.eeci.com/adc-16p.htm]

2.1

Subsistemas de robots

23

Trayectoria deseada del efector final Desplazamiento y velocidad de las articulaciones Controlador Entrada de accionamiento Robot Sensor

Configuracin actual del efector final a) Esquema de control de un robot b) Controlador ABB

Figura 2.9

Subsistema de control [Cortesa: http://www.abb.com/Product/seitp327/ f0cec80774b 0b3c9c1256fd a00409c2c.aspx]

convertir su seal en una seal anloga equivalente, es decir, el voltaje elctrico para el motor de CD. La apariencia fsica de un DAC se muestra en la gura 2.10. Puesto que los comandos de control del controlador digital convertidos en seales anlogas por el ADC son muy dbiles, requieren de amplicacin para realmente accionar los motores elctricos del manipulador de robot.

ADC vs. DAC Un DAC sirve al propsito opuesto al de un ADC.

iii) Amplicador

Figura 2.10

Un convertidor digital analgico [Cortesa: http://www.eeci.com]

24

CAPTULO

Robots seriales

2.2

Clasicacin de robots por aplicacin

Este mtodo de clasicacin se vuelve ms relevante, pues cada vez ms robots se estn diseando para servir en tareas especcas. Por ejemplo, muchos robots estn diseados para trabajos de ensamble y no sern muy fcilmente adaptables para otras aplicaciones. stos se denominan robots de ensamble. Para la soldadura de costura, algunos proveedores proporcionan sistemas de soldadura completos junto con el robot, es decir, el equipo de soldadura con sus unidades de manejo de materiales, sus mesas giratorias, etc., juntas como una unidad integral. Este sistema robtico integral se llama robot de soldadura, aunque su unidad manipuladora independiente podra adaptarse para una variedad de tareas. Algunos robots estn especcamente diseados para la manipulacin de cargas pesadas y, por lo tanto, se llaman robots de trabajo pesado.

2.3

Clasicacin de robots por sistema de coordenadas

A esta clasicacin tambin se le conoce como clasicacin por la conguracin del brazo y por el volumen geomtrico de trabajo. Este mtodo clasica al robot sin tomar en cuenta al efector nal. Indica el volumen de coordenadas alcanzables por un punto en el efector nal, en vez de sus orientaciones. Existen cuatro tipos fundamentales: Cartesiano, cilndrico, esfrico o polar y articulado o de revoluta.

i) Cartesiano Cuando el brazo de un robot se mueve de modo rectilneo, es decir,


en las direcciones de las coordenadas x, y y z del sistema de coordenadas cartesianas rectangulares diestras, como se ve en la gura 2.11a), se le llama tipo cartesiano o rectangular. El robot asociado se conoce entonces como robot cartesiano. Se llama a los movimientos desplazamiento x, altura o elevacin y y alcance z del brazo. Su espacio de trabajo tiene la forma de una caja o de un prisma rectangular, como se indica en la gura 2.11b). Un robot cartesiano necesita un espacio de gran volumen para su operacin. Sin embargo, este robot tiene una estructura rgida y ofrece una posicin precisa para el efector nal. El manteniy z

a) Configuracin del brazo

b) Caja rectangular

Figura 2.11

Un brazo de robot cartesiano y su espacio de trabajo

2.3

Clasicacin de robots por sistema de coordenadas

25

miento de estos robots es difcil, puesto que los movimientos rectilneos se obtienen por lo general a travs de conjuntos de actuadores elctricos giratorios acoplados a tuercas y tornillos esfricos. El polvo acumulado en los tornillos puede llegar a dicultar el movimiento suave del robot. Por lo tanto, tienen que cubrirse mediante fuelles. Adems, mantener la alineacin de los tornillos requiere una mayor rigidez en estos componentes. Por ende, estos robots tienden a ser ms caros.

ii) Cilndrico Cuando el brazo de un robot tiene Por qu hay diferentes sistemas una articulacin de revoluta y dos prismticas, es decir, de coordenadas para si la primera articulacin prismtica del tipo cartesiadenir arquitecturas no, gura 2.11a), es reemplazada por una articulacin de robots? de revoluta con su eje girado 90 respecto al eje z, los No hay ninguna razn especial, aparpuntos que puede alcanzar pueden ser convenientete de la conveniencia de denir un mente especicados con coordenadas cilndricas, es punto en el espacio cartesiano tridimensional. decir, ngulo q, altura y y radio z, como se indica en la gura 2.12a). Un robot con este tipo de brazo se denomina robot cilndrico, cuyo brazo se mueve por medio de q, y y z, es decir, tiene una rotacin de base, una elevacin y un alcance, respectivamente. Puesto que las coordenadas del brazo pueden asumir cualquiera de los valores entre los lmites superior e inferior especicados, su efector nal puede moverse en un volumen limitado, que es una seccin de corte dentro del espacio entre los dos cilindros concntricos, como se muestra en la gura 2.12b). Observe que ste no es el caso para un brazo cartesiano; su volumen de trabajo es una caja slida,

a) Configuracin del brazo

b) Forma cilndrica

Figura 2.12

Brazo de robot cilndrico dentro de su volumen de trabajo

26

CAPTULO

Robots seriales

como se muestra en la gura 2.11b). La lnea punteada de la gura simplemente completa el lmite del volumen de espacio de trabajo para una mejor visualizacin. No tiene otro propsito. Un robot de este tipo podr tener problemas para tocar el piso cerca de la base. Se usan exitosamente cuando una tarea requiere que se alcancen aperturas pequeas o en el trabajo sobre supercies cilndricas, por ejemplo, para la soldadura de dos tubos.

iii) Esfrico o polar Cuando el brazo de un robot es capaz de cambiar su conguracin moviendo sus dos articulaciones de revoluta y su articulacin prismtica, es decir, cuando la segunda articulacin prismtica a lo largo de la altura y del tipo cilndrico es reemplazada por una articulacin de revoluta con su eje girado 90 respecto al eje z, se denomina brazo de robot esfrico o polar; la posicin del brazo se describe convenientemente por medio de las coordenadas esfricas q, f y z; el brazo se muestra en la gura 2.13a). Los movimientos del brazo representan la rotacin de la base, los ngulos de elevacin y el alcance, respectivamente. Su volumen de trabajo es indicado en la gura 2.13b). iv) Articulado o de revoluta Cuando un brazo de robot consiste en eslabones conectados por articulaciones de revoluta, es decir, cuando la tercera articulacin prismtica tambin es reemplazada por otra articulacin de revoluta con su eje girado 90 respecto al eje z, se le Por qu son huecos algunos volmenes de llama brazo unido articulado o de revoluta. Este caso trabajo, por ejemplo, se muestra en la gura 2.14a). Su volumen esfrico de el de la gura 2.12b)? trabajo se muestra en la gura 2.14b) donde su supercie interna es difcil de determinar. Tales robots son Las partes huecas son aquellas que relativamente ms sencillos de fabricar y mantener, estn fuera del alcance del efector ya que los actuadores del robot estn directamente nal del robot. Se denominan zonas singulares (vase el captulo 6 para la acoplados mediante transmisiones de engranes o bien denicin). por bandas. Sin embargo, la realizacin de una tarea

f z

a) Configuracin del brazo

b) Forma esfrica

Figura 2.13

Robot esfrico con su volumen de trabajo

2.3
y f

Clasicacin de robots por sistema de coordenadas

27

a) Configuracin del brazo

b) Espacio de trabajo

Figura 2.14

Un brazo de robot articulado con su espacio de trabajo

en coordenadas cartesianas requiere de transformaciones matemticas. Estos aspectos se estudian en el captulo 6. Es bastante interesante observar que las cuatro arquitecturas fundamentales del brazo que se mencionan arriba pueden derivarse unas de otras. Esto se explica en la tabla 2.2. Adems, la tabla 2.3 proporciona las ventajas y desventajas de estos brazos robticos bsicos. En parte de la literatura tambin se usan clasicaciones como Gantry y SCARA (Selective Compliance Assembly Robot Arm), como se muestra en las guras 2.15 y 2.16, respectivamente. Esto en verdad no se requiere, pues los tipos fundamentales son sucientes para ayudar a su entendimiento. Por ejemplo, el brazo del robot tipo gantry es del tipo cartesiano puesto al revs. Este robot es grande, verstil en su operacin, pero caro. El SCARA, por otro lado, es
Tabla 2.2 Transformacin de tipos de brazo de robot

Tipo Cartesiano Cilndrico Esfrico

Articulaciones 1 (base): Movimiento 2 (elevacin): Movimiento 3 (alcance): Movimiento P: desplazamiento x P: altura y P: alcance z R: R: P+R+90@z rotacin q -do-do P: R: R: -doP+R+90@z ngulo f -do P: P: R: -do-doP+R+90@z ngulo y

Articulado: R:

P: Quitar la articulacin prismtica; +R: Agregar articulacin de revoluta; +90@: Girar la articulacin de revoluta alrededor del eje z por 90; -do-: Sin cambios.

28

CAPTULO

Robots seriales

Tabla 2.3 Comparacin de brazos de robot fundamentales [Cortesa de Fuller (1999)]

Desventajas Alcance slo hacia adelante y atrs Requiere gran espacio en las instalaciones Los ejes son difciles de sellar Caro No tiene alcance hacia Cilndrico (1 eje giratorio y 2 Llega a todo su derredor Ejes y y z rgidos arriba de s mismo ejes lineales) Los ejes q son fciles de se- Eje q menos rgido q: rotacin de la base Ejes y y z difciles de sellar llar f: altura No puede llegar alrededor z: alcance de obstculos El movimiento horizontal es circular No tiene alcance hacia Esfrico (2 ejes giratorios y Llega a todo su derredor Llega arriba y debajo de obs- arriba de s mismo 1 eje lineal) Corto alcance vertical tculos q: rotacin de la base Gran volumen de trabajo f: ngulo de elevacin z: alcance Articulado (3 ejes giratorios) Llega arriba y debajo de obs- Difcil de programar ofine tculos q: rotacin de la base rea de trabajo ms grande Dos o ms maneras de alf: ngulo de elevacin para el espacio de instala- canzar un punto y: ngulo de alcance El robot ms complejo cin ms reducido un tipo cilndrico cuyo alcance se logra mediante el uso de una articulacin de revoluta en lugar de una articulacin prismtica (compare las guras 2.12a) y 2.16). Un robot SCARA es muy conveniente para operaciones de ensamble; por lo tanto, se usa mucho para este propsito en varias industrias.
y x

Conguracin Cartesiano (3 ejes lineales) x: desplazamiento de la base y: altura z: alcance

Ventajas Fcil de visualizar Estructura rgida Programacin ofine fcil Paradas mecnicas fciles

Figura 2.15

Robot tipo gantry [Cortesa de Koivo (1989)]

2.5

Clasicacin de robots por el mtodo de control

29

Figura 2.16

Brazo SCARA [Cortesa de Fuller (1999)]

2.4

Clasicacin de robots por su sistema de potencia

Los robots son accionados por energa elctrica o por energa de uidos. Esta ltima categora est subdividida en sistemas neumticos e hidrulicos. Hoy en da, el mtodo de accionamiento ms comn es la energa elctrica mediante el uso de varios tipos de motores, por ejemplo, el motor de pasos, servo CD y servo CA sin escobillas. Los robots neumticos se utilizan en trabajos de ensamble ligero o embalaje, pero por lo regular no son convenientes para tareas pesadas o donde se necesite control de velocidad. Por otro lado, los robots hidrulicos se utilizan en aplicaciones de cargas pesadas debido a su alta proporcin potencia-tamao.

2.5

Clasicacin de robots por el mtodo de control

En este caso, el trmino control puede signicar dos cosas: una es su estrategia de control de movimientos, es decir, si un robot est servocontrolado o no, y la otra es cmo se logra la trayectoria de movimiento, es decir, de punto a punto o de manera continua.

i) Servocontrolado/no servocontrolado Los robots son servocontrolados (ciclo cerrado) o no servocontrolados (ciclo abierto). Con el n de aprovechar las ventajas completas del control digital o por microprocesador, lograr una buena precisin en condiciones de carga pesada y llevar a cabo tareas complejas con seguridad, se requiere el servocontrol completo. En este mtodo de control, se transmiten comandos a los actuadores de los brazos para mover cada eje nicamente con la cantidad necesaria. El movimiento real se

30

CAPTULO

Robots seriales

monitorea tanto para el desplazamiento como para la velocidad, y se compara con la seal del comando. La diferencia entre el comando y la accin, que se dene como el error, se utiliza como retroalimentacin al controlador con la nalidad de realizar la modicacin de los comandos para corregir la posicin. La mayora de los robots elctricos e hidrulicos son servocontrolados. Los robots neumticos normalmente no son servocontrolados. En este caso, se transmite una seal de comando y se supone que el brazo del robot alcanza su posicin deseada. El no servocontrol es apropiado cuando slo se requiere el control de posicin de cargas ligeras. Sin embargo, si se ha de controlar velocidad, aceleracin y par de torsin, o si el movimiento contra cargas pesadas es necesario, entonces el no servocontrol usualmente no es posible. La mayora de los robots industriales de la actualidad utilizan el servocontrol. Este problema de control requiere conocimientos de control proporcional-derivativo (PD), proporcionalintegral (PI), proporcional-integral-derivativo (PID, lgica difusa, redes neurales, as como otras teoras de control.

ii) Control de trayectoria En un control de trayectoria punto a punto, el brazo del robot se mueve desde un punto deseado hasta el siguiente sin considerar la trayectoria que se toma entre ellos. La trayectoria real que se toma podr ser el resultado de una combinacin de movimientos de eslabones del brazo, calculada para proporcionar el tiempo mnimo de viaje entre los puntos. El control punto a punto se usa extensamente en el ensamble, en el paletizado y en la carga/descarga de mquinas-herramientas. En un control de trayectoria continua, el robot se mueve a lo largo de una trayectoria continua con orientaciones especcas, por ejemplo, en soldadura, donde la seal de los sensores en las articulaciones es constantemente monitoreada por el controlador del robot. Un problema de control de esta ndole se denomina problema de planeacin de trayectoria.

2.6

Clasicacin de robots por mtodo de programacin

Los robots industriales pueden ser programados por diferentes medios. Pueden programarse, por ejemplo, online u ofine. Los mtodos online requieren el uso directo del robot y utilizan un teach pendant (caja de enseanza) para la programacin punto a punto, as como brazos de esclavo o un accesorio de empuadura de pistola para la programacin de trayectoria continua. Los robots ms recientes tienen la posibilidad de programacin ofine, es decir, el robot puede seguir trabajando en una tarea particular, mientras se prepara un programa para una nueva tarea en una terminal de computacin, utilizando el lenguaje de programacin del robot, por ejemplo, VAL, ALU u otros.

RESUMEN
En este captulo se han presentado varios subsistemas de un sistema robtico. Un robot es clasicado con base en su volumen de trabajo, mtodo de control, etc. Las clasicaciones presentadas en este captulo permitirn al usuario seleccionar/pedir un robot segn sus requerimientos.

Ejercicios basados en la web

31

EJERCICIOS
2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 Cules son los diferentes subsistemas de un sistema robtico? Por qu se usan transmisiones en un manipulador de robot? Cundo deber darse preferencia a una polea de banda y no a los engranajes? Cules son las ventajas de usar mecanismos y no otros arreglos de transmisin? Cules son las diferentes formas de clasicar un robot? Por qu se requiere ADC y DAC en robots? Qu tipo de robot es conveniente para pintar una barra? Por qu? Cul es la forma del volumen de trabajo del robot SCARA (gura 2.16)? Dibjela. 2.9 Por qu estn vacos algunos volmenes de trabajo? 2.10 Cul es el signicado completo de PUMA? 2.11 Qu tipo de brazo bsico tiene el robot PUMA? 2.12 Cul es el tipo de control que es apropiado para operaciones de soldadura?

EJERCICIOS BASADOS EN LA WEB


Basndose en bsquedas en la web, conteste las siguientes preguntas: 2.13 Mencione algunos fabricantes de robots y sus lenguajes de programacin de robots. 2.14 Cules son las relaciones de engranaje que se usan normalmente en robots industriales? 2.15 Busque algunas aplicaciones industriales donde se utilizan robots Gantry. 2.16 Mencione algunas industrias que emplean robots SCARA as como la razn. 2.17 Cules son los precios normales de los robots industriales que se usan para la soldadura de carroceras de automviles?

Captulo

3
Actuadores

En este captulo se analizar uno de los componentes bsicos del robot: el actuador. Los actuadores son los msculos de los robots y comprenden lo siguiente: i) ii) iii) iv) una fuente de alimentacin un amplicador de potencia un servomotor un sistema de transmisin Las conexiones entre todos los componentes de los actuadores se describen en la gura 3.1. Para elegir un actuador, vale la pena empezar desde el requerimiento impuesto sobre la potencia mecnica, Pu, por la fuerza y velocidad que describe el movimiento de articulaciones. Con base en la fuente de la potencia de entrada, Pa, los actuadores pueden clasicarse en tres grupos:

Actuador vs. motor Un motor, junto con la transmisin y otros accesorios, si existe, se llama actuador (vase la gura 3.1). Sin embargo, en muchos casos, estos trminos se usan de manera indistinta para decir que mueven un eslabn del robot.

i) Actuadores neumticos Estos actuadores utilizan energa hidrulica proporcionada por un compresor y la transforman en energa mecnica por medio de pistones o turbinas.

ii) Actuadores hidrulicos

Estos actuadores emplean la energa neumtica almacenada por un compresor que la transforma en energa mecnica mediante pistones o turbinas.

3.1 Actuadores neumticos

33

Fuente de alimentacin Pp Pc Amplificador de potencia Pa Motor o servomotor Pm Pu

Transmisin

Pda

Pds

Pdt

Pp: Fuente primaria de potencia (electricidad, uido presurizado o aire comprimido, etc.). Pc: Potencia de control de entrada (normalmente elctrica). Pa: Potencia de entrada al motor (de tipo elctrico, hidrulico o neumtico). Pm: Salida de potencia del motor. Pu: Potencia mecnica que se requiere. Pda, Pds y Pdt: Prdidas de potencia por disipacin durante las conversiones realizadas por el amplicador, el motor y la transmisin. Figura 3.1 Un sistema de actuador

iii) Actuadores elctricos La fuente principal de energa de entrada es la energa


elctrica que uye desde el sistema de distribucin elctrico. Una parte de la potencia de entrada del motor, Pa, se convierte en potencia mecnica, Pm, a la salida y el resto , Pds, se disipa debido a las prdidas de los motores mecnicos, elctricos, hidrulicos o neumticos. En una aplicacin robtica, un actuador deber tener las siguientes caractersticas: baja inercia alta relacin de potencia-peso posibilidad de sobrecarga y entrega de pares de torsin de impulsos capacidad para desarrollar altas aceleraciones amplios rangos de velocidad alta precisin de posicionamiento buena precisin de rastreo de trayectorias y posicionamiento

3.1

Actuadores neumticos

El actuador neumtico es uno de los dos tipos de dispositivos de potencia dada por uidos para robots industriales. El otro es hidrulico y se describe en la siguiente seccin. Los actuadores neumticos utilizan aire comprimido para su accionamiento y se usan extensamente para realizar los movimientos tpicos de abrir y cerrar las mordazas en el sujetador (gripper) de un robot, como se muestra en la gura 2.4, o bien para su accionamiento de brazos de robot sencillos en aplicaciones donde el control continuo de movimientos no sea una preocupacin. Un actuador neumtico que incluye un cilindro neumtico y otros accesorios se muestran en la gura 3.2. Las especicaciones de estos sistemas son empleadas, por ejemplo, en los sujetadores de robots de la gura 2.4 y se exponen en la tabla 3.1.

34

CAPTULO

Actuadores
Cilindro neumtico

Pistn ubicado dentro del cilindro Cilindro de Unidad del compresor doble efecto Indicador de nivel Unidad de aire acondicionado Biela de mando

Motor elctrico

Drenaje de agua

Tanque receptor

Filtro Lubricador Regulador a) Componentes del actuador neumtico Indicador Regulador de presin

Vlvula de control de cuatro vas de activacin manual

Vlvulas ajustables de control de flujo (una en cada lnea)

Lubricador

Filtro Tanque receptor Secador

Actuador

Posrefrigerador

Paquete FRL (Filtro Regulador Lubricador)

Vlvula de control direccional

Compresor

Filtro de aire

Entrada de aire

b) Circuito neumtico

Figura 3.2

Un actuador neumtico

Las ventajas y desventajas de los actuadores neumticos son las siguientes:

Ventajas
Es la forma ms econmica de todos los actuadores. Los componentes son perfectamente asequibles y por lo regular el aire comprimido ya se encuentra disponible en las instalaciones de las fbricas. El aire comprimido puede almacenarse y transportarse fcilmente a travs de largas distancias. El aire comprimido es limpio, a prueba de explosiones e insensible a uctuaciones de temperatura. Por lo tanto, puede emplearse en muchas aplicaciones. Estos actuadores tienen pocas partes mviles, por lo que son muy conables y ayudan a reducir los costos de mantenimiento.

3.1 Actuadores neumticos Tabla 3.1 Especicaciones de un actuador para un sujetador (Catlogo RS)

35

Especicaciones tcnicas
Marca Nm. de parte del fabricante Tipo Barreno ngulo de operacin Rango de presin Tamao del puerto de conexin Rango de temperatura Medio Par de sujecin Repetibilidad en posicin de cerrar Frecuencia de operacin mxima SMC MHC2-25D Sujetador (doble efecto) 25 mm 30 (abierto) a 10 (cerrado) 1 a 6 bar M5 m 0 a 60 C Aire no lubricado 1.4 Nm a 5 bar 0.1 mm 80 cpm (ciclos por minuto)

Puesto que los sistemas neumticos son comunes en toda la industria, el personal que suple Cunto es un bar? a otro est frecuentemente muy familiarizado con la tecnologa. Un bar = un atm = 14.7 psi = 101 356.5 N/m2 o aproximadamente 105 PA. Tienen una accin y un tiempo de respuesta muy rpida, lo que permite ciclos de trabajo expeditos. Normalmente no se requiere ninguna transmisin mecnica. Un sistema neumtico puede ser intrnsecamente seguro en reas con peligro de explosin, ya que no se requiere un control elctrico. En condiciones de humedad, no existe tampoco peligro de electrocucin. Los sistemas son por lo regular compactos. El control es sencillo, por ejemplo, se usan con frecuencia topes mecnicos. Los componentes individuales pueden interconectarse fcilmente.

Desventajas
Puesto que el aire es compresible, el control de la precisin en la velocidad y la posicin no es fcil de lograr, a menos que se incorporen dispositivos electromecnicos mucho ms complejos en el sistema. Esto signica que a menudo slo est disponible una secuencia limitada que opera con una velocidad ja. Si se usan topes mecnicos, la reanudacin del sistema puede ser lenta. Los sistemas neumticos no son convenientes para mover cargas pesadas bajo control preciso, debido a la compresibilidad del aire. Esta compresibilidad requiere de la aplicacin de ms fuerza de la que normalmente sera necesaria para asegurar que el actuador est rmemente en posicin contra su tope en condiciones de carga. Si penetra humedad en las unidades y se ha usado metales ferrosos, podran ocasionarse daos en los componentes individuales.

36

CAPTULO

Actuadores

La compresibilidad del aire en un actuador neumtico no permite un control sosticado, pero de esto puede sacarse provecho, impidiendo daos debidos a sobrecarga y proporcionando el cumplimiento que puede ser requerido en muchas aplicaciones prcticas.

3.2

Actuadores hidrulicos

Los actuadores hidrulicos tambin son dispositivos de potencia de uidos para robots industriales. Ellos utilizan uidos de alta presin, como aceite, para transmitir fuerzas al punto de aplicacin deseado. Un actuador hidrulico es muy similar en aspecto a uno accionado neumticamente. Los diferentes componentes se muestran en la gura 3.3 y una especicacin tpica del cilindro se ofrece en la tabla 3.2. Estos actuadores estn diseados para operar con presiones mucho ms altas (normalmente entre 70 y 170 bar). Son apropiados para aplicaciones de alta potencia. Las ventajas y desventajas de los actuadores hidrulicos son las siguientes:

Ventajas
Alta eciencia y alta relacin potencia-tamao. Es posible el control completo y preciso de velocidad, posicin y direccin de los actuadores.

Tabla 3.2 Un cilindro hidrulico con un barreno de 32 mm y una carrera de 50 mm (Catlogo RS)

Especicaciones tcnicas
Marca Nm. de parte del fabricante Tipo Cuerpo Tamao de barreno Carrera Tamao del puerto Presin de prueba esttica Presin de trabajo Fuerza mxima a 160 bar Caudal mximo a 0.1 mm/seg Largo total Largo total (pistn extendido) Dimetro de la punta de la barra Tamao de rosca de la punta de la barra Material de sellado Medio hidrulico recomendado Rango de temperatura de trabajo del lquido hidrulico Rexroth CDL1M00/32/18/50/CIX/B1CHUMS Cilindro-vstago rtula Acero al carbono 32 mm 50 mm G 1/4 240 bar 160 bar 12.8 kN 4.8 l/min 200 mm 250 mm 18 mm 18 mm NBR / Poliuretano Lquidos con base en aceites minerales 20 a +80C

3.2 Actuadores hidrulicos


Vlvula de cuatro vas Lnea de suministro Cilindro de doble efecto

37

Filtro de aceite

Vlvula Indicador de cierre Bomba de presin manual hidrulica

Vlvula de seguridad de presin

Depsito de aceite

Lneas de retorno

Palanca de inversin de control manual Cilindro de doble biela y doble efecto

Punzonadora Carga esttica Muela lineal

a) Componentes del actuador hidrulico Acumulador Bomba de desplazamiento Vlvula de retencin variable Filtro Flujo libre

Amortiguador viscoso

R Depsito Vlvula de control direccional

Vlvula de seguridad accionada por piloto Depsito

b) Circuito hidrulico

Figura 3.3

Un actuador hidrulico

Ocurren pocos problemas de contragolpe debido a la rigidez e incompresibilidad del uido, especialmente cuando el actuador acta como la propia articulacin o unin, que es el caso de los actuadores rotativos de aspas que se describen ms adelante. Contragolpe es el trmino que se usa para describir el juego no deseado en componentes de transmisin desde su posicin deseada cuando se ponen en condiciones de carga debido al desgaste o a espacios libres entre supercies. Grandes fuerzas pueden aplicarse directamente en las ubicaciones requeridas. Por lo general, tienen una mayor capacidad de carga que los actuadores elctricos y neumticos. No se requiere ninguna conexin mecnica, es decir, se obtiene un accionamiento directo con simpleza mecnica. Son autolubricantes (bajo desgaste) y no corrosivos. Debido a la presencia de un acumulador, el cual acta como un dispositivo de almacenamiento, el sistema puede responder a sbitas demandas de potencia. Los robots hidrulicos son ms capaces de resistir cargas sbitas que los elctricos.

38

CAPTULO

Actuadores

Desventajas
Pueden darse fugas que causan una prdida de rendimiento y contaminacin general del rea de trabajo. Tambin hay un mayor riesgo de incendios. La fuente de alimentacin puede ser ruidosa, normalmente alrededor de 70 decibeles o dBA, o incluso ms, si no est protegida por un amortiguador acstico. Cambios de temperatura alteran la viscosidad del lquido hidrulico. Por lo tanto, la viscosidad del lquido se incrementar y posiblemente cause movimiento lento del robot. Para robots ms pequeos, la energa hidrulica usualmente no es econmicamente factible, puesto que el costo de los componentes hidrulicos no se reduce en proporcin al tamao. El servocontrol de sistemas hidrulicos es complejo y no se entiende tan ampliamente como el servocontrol elctrico.

Sistemas hidrulicos impulsan a los robots ms fuertes y rgidos, y por ende la seleccin del mdulo de Cun ruidoso son 70 decibeles? compresibilidad del aceite es un atributo de suma importancia. Un mdulo de compresibilidad alta implica El nivel de 70 decibeles es aproximaun sistema de respuesta rgido, de respuesta rpida y damente el del ruido generado por el trco pesado. con un aumento de presin de rapidez correspondiente, mientras que uno de compresibilidad baja podr dar como resultado un sistema muy libre debido a la alta compresibilidad del aceite. Los sistemas o circuitos hidrulicos siempre tienen cuatro componentes esenciales: un depsito para almacenar el uido, bombas para transportarlo, vlvulas para controlar el ujo y un actuador para llevar a cabo los dictados del uido sobre alguna carga. Igual que los actuadores rotativos neumticos, los hidrulicos estn disponibles en el mercado.

3.3

Actuadores elctricos

Por lo general, se habla de los actuadores elctricos como aqullos donde un motor elctrico acciona los eslabones del robot por medio de alguna transmisin mecnica como por ejemplo los engranes. En los primeros aos de la robtica industrial, los robots hidrulicos eran los ms comunes, pero las recientes mejoras en el diseo de motores elctricos implicaron que la mayora de los robots nuevos fueran de construccin completamente elctrica. El primer robot Quin es ABB? comercial de accionamiento elctrico fue introducido por ABB en 1974. Las ventajas y desventajas de un ABB es una empresa multinacional motor elctrico son las siguientes: con sede en Zrich, Suiza, que trabaja

Ventajas
Amplia disponibilidad en el suministro de energa. El elemento de accionamiento bsico en un motor elctrico es normalmente ms ligero que para la energa de uidos.

en las reas de la tecnologa de energa y automatizacin. La empresa fue constituida en 1988 por medio de la fusin entre ASEA de Suecia y Brown, Boveri & Cie. de Suiza. Tiene operaciones en ms de 100 pases y una de las manufacturas de robots industriales ms grandes del mundo.

3.3 Actuadores elctricos

39

Alta eciencia en la conversin de la energa. Sin contaminacin del ambiente de trabajo. En relacin con el costo, la precisin y repetibilidad de los robots accionados por energa elctrica es comnmente mejor que la de robots accionados por uidos. Por ser relativamente silenciosos y limpios, resultan muy respetuosos con el ambiente. Son de fcil mantenimiento y reparacin. Los componentes estructurales pueden ser de peso ligero. El sistema de accionamiento es muy conveniente para el control electrnico.

Desventajas
Los robots de accionamiento elctrico frecuentemente requieren la incorporacin de algn tipo de sistema de transmisin mecnica. Esto agrega masa y movimiento no deseable que requieren energa adicional y que pueden complicar el control. Debido a la complejidad ms alta del sistema de transmisin, se generan costos adicionales para su adquisicin y mantenimiento. Los motores elctricos no son intrnsecamente seguros. Por lo tanto, no pueden usarse, por ejemplo, en ambientes explosivos.

Las desventajas mencionadas anteriormente son paulatinamente superadas por la introduccin de sistemas motrices de accionamiento directo, donde el motor elctrico es una parte relevante de la articulacin del brazo del robot, por lo que se eliminan los elementos de transmisin. Adems, la introduccin de ms recientes motores sin escobillas permite que se usen los robots elctricos en algunas aplicaciones de riesgo de incendios, tales como la pintura con pulverizador, puesto que se ha eliminado la posibilidad de chispas en las escobillas del motor. Los diferentes tipos de motores elctricos son motores de paso, de CD y CA.

3.3.1

Motores a pasos
CD vs. CA

Los motores a pasos (Stepper Motors) (tambin llamados en ingls como stepping motors) se utilizaron CD signica corriente directa o continua, mientras que CA signica coprimero para el control remoto de los indicadores de rriente alterna. Las bateras en lindireccin para tubos lanzatorpedos y caones en buternas, autos, etc., suministran CD. ques de guerra britnicos y, ms tarde, para propsitos Para el uso domstico, sin embargo, el suministro elctrico es de CA con similares en la armada de Estados Unidos. Un tipo de 230 voltios y 50 ciclos (en la India y motor de reluctancia variable fue patentado por vez otros pases), 110 voltios, 60 ciclos primera en 1919, por C. L. Walker, un ingeniero civil (en Estados Unidos y otros pases), y escocs; sin embargo, su produccin comercial no coparecidos. menz sino hasta 1950. Estos motores son empleados en algunos robots en el ms pequeo y trmino medio del rango industrial y con los robots de enseanza y pasatiempo. Tambin son ampliamente usados en otras aplicaciones industriales y tienen las ventajas de que no necesariamente requieren un sistema de retroalimentacin y de los costos asociados. Sin embargo, son compatibles con muchos dispositivos de retroalimentacin, si esto se requiriera, y son usados en conguraciones de servocontrol total en robots industriales de servicio medio. Puesto que se trata de motores de control digital, no necesitan el gasto adicional de equipos de conversin de digital

40

CAPTULO

Actuadores

a analgica cuando se conectan a un sistema de control por computadora. Normalmente, la echa del motor gira en forma incremental en pasos iguales en respuesta a un tren de impulsos de entrada programado. Como el rotor indexa una cantidad especca para cada pulso de control, todo error de posicionamiento es no acumulativo. Para conocer la posicin nal del rotor, todo lo que se requiere es contar el nmero de pulsos transmitidos al devanado de fase de la bobina del estator. El nmero de pulsos por unidad de tiempo determina la velocidad del motor. El rotor puede estar hecho para indexar lentamente, haciendo una pausa despus de cada incremento, o puede moverse rpidamente generando un movimiento continuo que se llama slewing (hasta llegar a una velocidad de giro constante). El mximo par torsor dinmico en un motor de paso ocurre con bajas frecuencias de pulsos. Por lo tanto, puede fcilmente acelerar una carga. Una vez que se haya alcanzado la posicin requerida y se terminen los impulsos de comando, la echa se detiene sin necesidad de embragues o frenos. Los momentos de rotacin o ngulos de paso reales de la echa pueden obtenerse normalmente desde 1.8 hasta 90, dependiendo de la seleccin particular del motor. As, con un ngulo de paso nominal de 1.8, una corriente de 1 000 pulsos dar un desplazamiento angular de 1 800 o cinco revoluciones completas. Tambin tienen una capacidad de velocidad baja sin necesidad de reduccin de engranaje. Por ejemplo, si el motor mencionado anteriormente es accionado por 500 pulsos por segundo, girar a 150 RPM. Otra ventaja del motor a pasos es que la inercia del motor a menudo es baja, y tambin si ms de un motor a pasos es accionado desde la misma fuente stos se mantendrn perfectamente sincronizados. Algunas desventajas son que los motores a pasos tienen menor salida y eciencia en comparacin con otros, y que las entradas y circuitos de accionamiento tienen que estar cuidadosamente diseados en relacin con el par torsor y velocidad requeridas. Hay varios tipos de motores a pasos, por ejemplo, los de reluctancia variable, los de imanes permanentes y los hbridos.

i) Motor a pasos de reluctancia variable Reluctancia magntica o simplemente reluctancia es el trmino anlogo de resistencia elctrica. Igual que una corriente slo sucede en un lazo cerrado, un ujo magntico ocurre slo alrededor de una trayectoria cerrada, aunque tal vez sta pueda ser ms variada que el de una corriente. La gura 3.4a) muestra la forma bsica del motor a pasos de reluctancia variable. El rotor est hecho de acero bajo carbono y tiene cuatro polos, mientras que el estator tiene seis. Cuando una de las fases, por ejemplo AA, es excitada debido a una corriente de CD que pasa a travs de las bobinas alrededor de los polos, las posiciones del rotor completan la trayectoria de ujo que se muestra en la gura 3.4a). Observe que existe una trayectoria de ujo principal a travs de los dientes alineados de rotor y estator, y que las trayectorias de ujo secundarias ocurren como se indica. Cuando los dientes del rotor y el estator estn alineados de esta manera, la reluctancia es minimizada y el rotor est en reposo en esta posicin. Puede decirse que esta trayectoria de ujo es casi como un hilo elstico que constantemente est tratando de acortarse a s misma. El rotor se mover hasta que los polos de rotor y estator estn alineados. Esto se llama la posicin de mnima reluctancia. Para girar el motor en sentido opuesto a las manecillas del reloj, se apaga la fase AA y se excita la fase BB. En ese momento la trayectoria de ujo principal tiene la forma indicada en las guras 3.4b) y c). Esta forma del motor a pasos generalmente da ngulos de paso de 7.5 o 15. ii) Motor a pasos de imanes permanentes El mtodo bsico de operacin
de un tipo de motor de imanes (o magnetos) permanentes es similar al de reluctancia varia-

3.3 Actuadores elctricos


N

41

A B

B N N

C A

N N S 30

S a) Configuracin bsica S B

B B

S b) Inicio del paso

S c) Paso completado

Figura 3.4

Motor a pasos de reluctancia variable

ble. Como se ilustra en la gura 3.5, hay dos bobinas, A y B, cada una de las cuales produce cuatro polos, pero que estn desplazadas una de la otra por medio paso polar. El rotor es de construccin de imanes permanentes y tiene cuatro polos, tal como se ilustra. Cada polo est enrollado con devanado de campo y las bobinas que hay en los pares opuestos de polos estn en serie. La corriente es suministrada desde una fuente de CD hasta el devanado a travs de interruptores. Puede verse en la gura 3.5a) que el motor est en reposo y que los polos del rotor de imanes permanentes estn sostenidos entre los polos residuales del estator. En esta posicin, el rotor est enganchado, a menos que se aplique una fuerza de giro. Si se energizan las bobinas y se invierte en el primer pulso la polaridad magntica de los polos de la bobina A, el rotor sufrir un par torsor y girar en sentido contrario a las manecillas del reloj, como se muestra en la gura 3.5b); los polos invertidos se identican como A. Si ahora se invierten los polos de la bobina B, quedan B, como se muestra en la gura 3.5c), el rotor nuevamente sufrir un par torsor y dar otra vuelta hasta que los polos del rotor estn posicionados a medio camino entre los polos del estator. De este modo, cambiando las corrientes a travs de las bobinas, el rotor gira 45. Si en el primer impulso los polos de la bobina B hubieran sido invertidos, entonces el motor hubiera girado en el sentido de las manecillas del reloj. Los ngulos de paso que se producen comnmente con este tipo de motor son 1.8, 7.5, 15, 30, 34 y 90.

iii) Motor a pasos hbrido Los motores a pasos hbridos combinan las caractersticas de los motores de reluctancia variable y de imanes permanentes, teniendo un imn

42

CAPTULO

Actuadores
A B N S A S S A B B S A A a) A N N S N B Rotor B S N N N B B S N N S N S B A S N N A B N S Estator S A B

B N A N S B S

S N N S A b) S

S A c)

Figura 3.5

Motor a pasos de imanes permanentes

permanente interconectado en cubiertas de hierro que estn cortadas para tener dientes, como se muestra en la gura 3.6. El rotor se coloca en la posicin de reluctancia mnima en respuesta a que se estn energizando un par de bobinas del estator. Los ngulos de paso normales son 0.9 y 1.8. De la descripcin anterior resulta entonces obvio que la velocidad con la que se aplican los impulsos determina la velocidad del motor, el nmero total de impulsos determina el desplazamiento angular y el orden en el que se energizan las bobinas en la primera instancia determina la direccin de rotacin. Es precisamente por esta facilidad de accionamiento, usando el control digital directo, que los motores a pasos son apropiados para su empleo en un robot controlado por computadora, aunque el motor s requiere interactuar con una fuente de pulsos de alta corriente.

3.3.2

Motores de CD

Aunque mucha gente podra nunca haber tenido suciente experiencia con sistemas neumticos o hidrulicos, todos han tenido contacto casi diario con motores elctricos. Ya sean motores CD (frecuentemente operados por bateras) para arrancar el auto u operar un juguete de nios, o motores CA (operados por la red elctrica) para encender la licuadora, etc.,

Dientes en cubiertas

Imn permanente

Figura 3.6

Motor a pasos hbrido

3.3 Actuadores elctricos

43

sus capacidades son bien conocidas. El primer robot industrial y comercial elctricamente accionado fue introducido en 1974 por la gigantesca corporacin sueca ASEA. Tradicionalmente, los expertos en robtica empleaban motores de DC (corriente directa) elctricamente accionados para robots no slo por la disponibilidad de versiones potentes, sino porque son fcilmente controlables con dispositivos electrnicos relativamente sencillos. Aunque se necesita corriente directa, rara vez se usan bateras (para robots no mviles); en cambio, se rectica el suministro de CA para dar un equivalente adecuado de CD. La operacin de un motor elctrico se basa en el principio de que un conductor sufrir una fuerza si una corriente elctrica uye con ngulos rectos hacia un campo magntico. Por lo tanto, se requiere dos componentes bsicos para construir un motor: uno para producir el campo magntico usualmente llamado estator y otro para funcionar como conductor comnmente llamado armadura o rotor. El principio se muestra en la gura 3.7a) para un elemento de un motor CD, mientras que un motor CD de dos polos se presenta en la gura 3.7b). El campo
Conductor Rotacin s

Escobillas

Campos magnticos Conmutador i + a) Principio de un motor CD Estator Bobinas de campo

Rotor o armadura N S

Escobillas

Conmutador b) Motor CD de dos polos con bobinas de campo

Figura 3.7 Motor CD

44

CAPTULO

Actuadores

Tabla 3.3 Especicaciones de un motor CD (Catlogo RS)

Especicaciones tcnicas
Marca Nm. de parte del fabricante Tipo Tamao del eje (SMI) Velocidad (rpm) Potencia nominal (W) Voltaje nominal (VCD) Corriente de entrada Altura (mm) Ancho (mm) Largo (mm) Parvalux PM2 160W511109 Motor elctrico industrial CD M 4 000 rpm 160 W 50 V(CD) 3.8 A 78 mm 140 mm 165 mm

magntico podr ser creado por bobinas de campo devanadas en el estator o por imanes permanentes. Si se usaran las bobinas de campo, recibiran una corriente elctrica para crear los polos magnticos en el estator. En la gura 3.7b), la corriente del rotor es suministrada a un conductor por medio de escobillas y conmutadores. La corriente que pasa a travs del campo produce un par torsor en el conductor que tiene el mximo para s = 90. Adems, entre ms alto sea el voltaje suministrado a las bobinas del estator del motor, ms rpidamente girar el motor, lo que proporciona un mtodo muy sencillo para el control de velocidad. De manera parecida, la variacin de la corriente que recibe la armadura controla el par torsor. La inversin de la polaridad del voltaje causa que el motor gire en el sentido opuesto. Algunos robots grandes utilizan motores de CD de control de campo, es decir, motores en los cuales el par torsor es controlado por la manipulacin de la corriente que va a las bobinas de campo. Estos motores permiten una mayor salida de potencia con altas velocidades y pueden dar una buena relacin de potencia-peso. Especicaciones tpicas de un motor CD se dan en la tabla 3.3, mientras que sus caractersticas de velocidad/par torsor se muestran en la gura 3.8 para diferentes valores de voltaje. Sin embargo, puede decirse que para sistemas robticos industriales, los mtodos de control de campos excitados por corriente Voltaje signican un tiempo de respuesta demasiaalto do lento y causan prdidas que hacen que el control por campos magnticos permanentes y por armadora sea ms atractivo.
Par torsor

i) Motores de CD de imanes permanentes (IP) En el motor de imanes


permanentes no se usa bobinas de campo y el campo es producido por los imanes permanentes. Algunos motores de (Imanes Permanentes) IP tienen bobinas devanadas sobre

Voltaje bajo

Velocidad de rotacin

Figura 3.8 Caractersticas de velocidad del par torsor

3.3 Actuadores elctricos


Yunque Imanes permanentes

45

rbol

Armadura a) Cilndrico b) Disco

Figura 3.9 Dos tipos de conguraciones de motores de CD de imanes permanentes

los polos de imanes, pero stas slo sirven para recargar los imanes si su fuerza falla. Debido al hecho de que el ujo de campo es una constante, el par torsor de estos motores es directamente proporcional a la corriente de la armadura. Otras ventajas son: no se requieren fuentes de energa de excitacin para las bobinas de campo, la conabilidad es mejorada conforme no exista fallas en las bobinas de campo, y el que no existan prdidas de potencia de las bobinas de campo se traduzcan en una mejora en la eciencia y el enfriamiento. Dos tipos de conguracin de IP se muestran en la gura 3.9. Se trata de los tipos cilndricos y de disco. El motor cilndrico trabaja de manera parecida a la que ya se describi para otros motores de CD, excepto porque no hay bobinas de campo, mientras que el motor de disco tiene un dimetro largo y una armadura corta de algn material no magntico. El que ms comnmente se usa en robots industriales es el motor cilndrico.

ii) Motores de CD de imanes permanentes sin escobillas Un problema de los motores de CD es que requieren un conmutador y escobillas a n de invertir peridicamente la corriente a travs de cada bobina de la armadura. Las escobillas hacen un contacto de deslizamiento con los conmutadores, saltan chispas entre los dos y, en consecuencia, sufren desgaste. Por lo tanto, las escobillas tienen que cambiarse peridicamente y la supercie de los conmutadores debe renovarse. Para evitar estos problemas se disearon motores sin escobillas que consisten bsicamente en una secuencia de la bobina del estator C A y un rotor de imanes permanentes. Un conductor que lleva corriente en un campo magntico experimenta una fuerza; de igual manera, como N B B consecuencia de la tercera ley de movimiento S de Newton, el imn tambin sufrir una fuerza Bobinas opuesta e igual. En el motor CD convencional, Rotor del estator el imn est jo y se hace que los conductores de imn de corriente se muevan. En el motor CD de imaA C permanente nes permanentes sin escobillas el mecanismo es al contrario: los conductores de corriente estn Figura 3.10 Motor CD de imanes perjos y el imn se mueve. El rotor es un imn manentes sin escobillas

46

CAPTULO

Actuadores

permanente de ferrita o cermico. La gura 3.10 muestra la forma bsica de uno de estos motores. La corriente que va a las bobinas del estator es electrnicamente cambiado por transistores en secuencia alrededor de las bobinas, donde la conmutacin est controlada por la posicin del rotor, de tal modo que siempre hay fuerzas que actan sobre el imn, haciendo que gire en el mismo sentido. Los motores sin escobillas tienen muchas ventajas sobre los motores CD convencionales; por ejemplo: Tienen una mejor disipacin de calor, ya que ste se pierde ms fcilmente desde el estator que desde el rotor. Hay una inercia reducida del rotor. Los motores sin escobillas son menos costosos. Son mucho ms duraderos. Pesan menos. Son de menores dimensiones, pero con una potencia comparable. La ausencia de escobillas reduce los costos de mantenimiento debido al desgaste de escobillas y conmutadores, y tambin permite que los robots elctricos se utilicen en reas de peligro, por ejemplo, en atmsferas inamables, como aplicaciones de aspersin de pintura.

Una desventaja es que el sistema de control para motores sin escobillas es relativamente ms caro.

3.3.3

Motores CA

Hasta hace poco, los motores CA (de corriente alterna) no se haban considerado apropiados para robots debido a los problemas involucrados en el control de sus velocidades. En su forma ms sencilla, el motor CA consiste en electroimanes externos alrededor de un rotor central pero sin ninguna forma de mecanismo de conmutacin mecnico para los electroimanes. Sin embargo, puesto que la corriente alterna (tal como el suministro elctrico pblico) constantemente cambia de polaridad (primero uyendo en un sentido, luego en el opuesto, varias veces por segundo, por ejemplo, 50 veces en la India y 60 en Estados Unidos), es posible conectar el suministro de CA directamente a los electroimanes. La inversin alterna del sentido de la corriente a travs de las bobinas realizar la misma tarea de cambio de polaridad que en los motores DC. El campo magntico de las bobinas parecer girar (casi como si las bobinas por mismas hubiesen sido giradas mecnicamente). Especicaciones tpicas de un motor CA se muestran en la tabla 3.4. Las caractersticas de velocidad/par torsor de los motores CA se presentan en la gura 3.11. Los motores CA no han sido extensamente empleados en aplicaciones robticas debido a los problemas que surgen en el control de velocidad. En principio, entre ms alta sea la frecuencia de la corriente alterna aplicada al motor, ms rpidamente girar. Hasta hace poco, en gran medida fue muy imprctico suministrar frecuencias variables en forma simultnea a un nmero de accionamientos de ejes. Observe que en ambos tipos de motores el electromagnetismo se usa para suministrar el frenado regenerativo con el n de disminuir los tiempos de desaceleracin y minimizar el exceso del eje. Ambos tipos demuestran un incremento de velocidad cuando hay un aumento de la seal de entrada. Sin embargo, por cualquier aumento

3.3 Actuadores elctricos Tabla 3.4 Especicaciones de un motor CA (Catlogo RS)

47

Especicaciones tcnicas
Marca Nm. de parte del fabricante Tipo Voltaje de alimentacin Potencia de salida Corriente de entrada Dimetro del rbol Largo del rbol Velocidad Par torsor nominal Par de arranque Altura Largo Ancho ABB 1676687 Motores industriales elctricos monofsicos y trifsicos 220-240 VCA 50 Hz 180 W 0.783 A 14 mm 30 mm 1 370 rpm 1.3 Nm 1.3 Nm 150 mm 213 mm 120 mm

de la seal de entrada dado (por voltaje o por frecuencia de voltaje), la velocidad del motor no puede pronosticarse con precisin. Tienen que hacerse preparativos adicionales para medir la velocidad del motor y comparar esta velocidad real con la velocidad del comando. Los motores de corriente alterna (CA) pueden clasicarse en dos grupos, monofsicos y polifsicos, donde cada grupo est subdividido en motores de induccin y motores sncronos. Los monofsicos se usan normalmente para requerimientos de baja potencia, mientras que los polifsicos, para potencias mayores. Los motores de induccin son por lo regular ms econmicos que los que son sncronos y, por lo tanto, se emplean muy extensamente.
Diseo A 300

Par torsor (% del valor nominal)

Diseo C Diseo D 200

100 Diseo B

20 40 60 80 Velocidad (% del valor nominal)

100

Figura 3.11 Caractersticas normales de velocidad/par torsor para cuatro diferentes diseos de un motor de induccin CA. [Cortesa: http://www.offshoresolutions.com/products/motors/ac/ induction.htm]

48

CAPTULO

Actuadores

i) El motor de induccin monofsico con rotor jaula de ardilla

Este motor consiste en un rotor de jaula de ardilla hecho de barras de cobre o aluminio que caben en ranuras en los anillos de extremos para formar circuitos elctricos completos, como los que se muestran en la gura 3.12. No hay conexiones elctricas externas al rotor. El motor bsico consiste Motor CD en este rotor con un estator que tiene un conjunto de o motor CA? devanados. Cuando una corriente alterna pasa a traLos motores CD son fciles de controvs de los devanados del estator, se produce un campo lar en comparacin con los motores magntico alternativo. Como resultado de la inducCA. Por lo tanto, se preeren los pricin electromagntica, fuerzas electromagnticas son meros en aplicaciones robticas. inducidas en los conductores del rotor y el ujo de corriente en el rotor. Inicialmente, cuando el rotor es estacionario, las fuerzas que hay en los conductores que portan corriente o en el rotor del campo magntico del estator son tales que dan como resultado que no exista un par torsor neto. El motor no es de arranque automtico. Existen mtodos para hacer que el motor sea de arranque automtico y para dar este impulso para arrancarlo. Uno de estos mtodos es el de usar un devanado de arranque auxiliar para dar al rotor un empuje inicial. El rotor gira con una velocidad determinada por la frecuencia de la corriente alterna que se aplica al estator. Para un suministro de frecuencia constante a un motor monofsico de dos polos, el campo magntico alternar con esta frecuencia. Esta velocidad de rotacin del campo magntico se denomina velocidad sncrona. El rotor nunca igualar esta frecuencia de rotacin y normalmente diere de ella en 1 a 3%. Esta diferencia se llama slip (diferencia de velocidad entre la rotacin sncrona y la operativa). Por lo tanto, para un suministro de 50 Hz, la velocidad de rotacin del rotor ser casi 50 revoluciones por segundo.

ii) El motor de induccin trifsico Como se muestra en la gura 3.13a), este motor es parecido al de induccin monofsico, pero tiene un estator con tres devanados ubicados con 120 aparte, donde cada devanado est conectado a una de las tres lneas del suministro. Puesto que las tres fases alcanConductores del rotor que forman la jaula de ardilla zan sus corrientes mximas en diferentes momentos, puede considerarse que el campo magntico gira alrededor de los polos del estator, completando una rotacin en un Anillos de extremos que conectan los extremos ciclo completo de la corriente. La rotacin de todos los conductores para formar los circuitos del campo es mucho ms suave que en el en los cuales se inducen corrientes motor monofsico. El motor trifsico tiene Estator Rotor una gran ventaja sobre el motor monofsico por ser de arranque automtico. El sentido Polo Polo de rotacin se invierte por el intercambio de cualquiera de dos de las conexiones de lnea, lo que cambia el sentido de rotacin del campo magntico. iii) Motores sncronos Los motores sncronos tienen estatores similares a los que se describen arriba para los motores
Vista del extremo de la jaula de ardilla

Figura 3.12 Motor de induccin monofsico

3.4

Seleccin de motores

49

Tres pares de induccin, pero un rotor es un imn persimtricamente ubicados manente. El campo magntico producido Rotor por el estator gira, as que el imn lo hace con l. Con un par de polos por fase de suministro, el campo magntico gira 360 en un N S ciclo del suministro, por lo que la frecuencia de rotacin en esta disposicin es la misma que la frecuencia del suministro. Se utilizan Estator motores sncronos cuando se requiere una a) b) velocidad precisa. Estos motores no son de Figura 3.13 Motor de CA trifsico arranque automtico, por lo que tiene que emplearse algn sistema para arrancarlos. En comparacin con los motores de CD, los motores CA tienen la gran ventaja de ser ms econmicos, resistentes, conables y libres de mantenimiento. Sin embargo, el control de velocidad es por lo general ms complejo que en motores DC; como consecuencia, un accionamiento de CD con control de velocidad generalmente resulta ms barato que un accionamiento CA con control de velocidad, aunque la diferencia de precios se reduce cada vez ms como resultado de desarrollos tecnolgicos y de la reduccin de precios de dispositivos de estado slido. El control de velocidad de motores CA est basado en la disponibilidad de un suministro de frecuencia variable, puesto que la velocidad de estos motores es determinada por la frecuencia del suministro. En algunos casos especiales, por ejemplo, en motores CA de induccin de rotor devanado, la velocidad puede ser controlada mediante el acceso al circuito del rotor, donde diferentes valores de resistencia pueden insertarse en el circuito del rotor.

3.4

Seleccin de motores

Para cualquier aplicacin de robots tiene que decidirse cul de los actuadores disponibles es el ms adecuado. Tiene que tomarse en consideracin precisin de posicionamiento, conabilidad, velocidad de operacin y costo, as como otros factores. Los motores elctricos son por naturaleza limpios y con capacidad para trabajar con alta precisin si son operados correctamente. En contraste, los sistemas neumticos no son capaces de operar una trayectoria continua de alta precisin, y los actuadores hidrulicos requieren del uso de aceite a presin. Los sistemas hidrulicos pueden generar mayor potencia en un volumen compacto que en los motores elctricos. El aceite a presin puede conducirse por tuberas hacia actuadores sencillos, capaces de generar pares de torsin con altos valores y operaciones rpidas. Tambin hay que tomar en cuenta que la potencia necesaria para controlar una vlvula electrohidrulica es pequea. Bsicamente, este trabajo se realiza mediante la compresin del aceite y suministrarlo a los accionamientos del brazo del robot. Toda la energa puede ser suministrada por un solo motor elctrico poderoso y eciente que acciona la bomba hidrulica que est en la base del robot o ubicada en alguna distancia. La potencia es controlada en vlvulas electrohidrulicas compactas. Sin embargo, las vlvulas electrohidrulicas de alta precisin son ms costosas y menos conables que los amplicadores y controladores elctricos de baja potencia. Por otra parte, los motores elctricos

50

CAPTULO

Actuadores

deben tener controles individuales capaces de controlar su potencia. En robots de mayores dimensiones, esto requiere la conmutacin de 10 a 50 amperios con 20 a 100 voltios. La conmutacin de la corriente tiene que ser rpida; de lo contrario, habr una gran disipacin de potencia en el circuito de conmutacin que causar un exceso de calor. Los motores elctricos pequeos usan circuitos de conmutacin sencillos y son fciles de controlar por medio de los circuitos de baja potencia. Los motores a pasos son particularmente sencillos para la operacin de un lazo abierto. La ventaja ms grande de un sistema hidrulico es la seguridad de su operacin. Como regla general, se preeren actuadores hidrulicos donde se requieren movimientos rpidos con altos pares de torsin, en rangos de potencia que estn aproximadamente en el orden de los 3.5 kW, a menos que no pueda tolerarse la ligera posibilidad de una fuga de aceite. Los motores elctricos son preferidos para niveles de potencia que estn por debajo de a 1.5 kW aproximadamente, a menos que haya un peligro debido al posible incendio de materiales explosivos. En rangos entre 1-5 kW, podr determinar la decisin la disponibilidad de un robot en un sistema de coordenadas particular con caractersticas especcas o por un costo ms bajo. La conabilidad de todo tipo de robots manufacturados por fabricantes reconocidos industrialmente es sucientemente buena. No obstante esto no es el factor ms determinante.

3.4.1

Clculos

Se necesitan clculos matemticos simples para determinar el par torsor, velocidad y caractersticas de potencia de un actuador o motor para diferentes aplicaciones. El par torsor se dene en trminos de una fuerza multiplicada por distancia o momento. Una fuerza f, a la distancia a del centro de rotacin, tiene un momento o par torsor t, o sea t = fa. En trminos generales, la potencia P es transmitida en un eje de mando y es determinada por el par torsor t, multiplicado por la velocidad angular w. La potencia P es expresada como P = tw. Como ejemplo, el clculo puede sealar cuntos kilovatios o caballos de potencia se requieren en un motor que se usa para accionar un brazo de robot de 2 metros que levanta una masa de 25 kg a 10 rpm. Si la masa del brazo es considerada igual a cero, entonces P = (25 9.81 2) (2p 10/60) = 0.513 kW El uso de ecuaciones simples de este tipo es a menudo suciente para lograr una aproximacin til de un valor deseado. Clculos ms detallados pueden considerar todos los datos apropiados, usando las ecuaciones de esttica y dinmica que apliquen.

RESUMEN
Un robot se mueve por actuadores. Se explican diferentes formas de actuadores, a saber: neumticos, hidrulicos y elctricos. Para los motores elctricos, se presentan sus especicaciones normales as como las caractersticas de velocidad/par torsor. Tambin se resume a grandes rasgos cmo debe seleccionarse un motor adecuado.

Ejercicios basados en la web

51

EJERCICIOS
3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 3.10 3.11 3.12 3.13 3.14 3.15 3.16 3.17 3.18 3.19 3.20 Mencione los componentes de un sistema actuador de una articulacin. Qu es un actuador? Mencione los requerimientos de un actuador para aplicaciones robticas. Cules son los diferentes tipos de actuadores? Haga una lista de tres ventajas y tres desventajas de un actuador neumtico. Indique las aplicaciones tpicas de los actuadores neumticos. Por qu se preeren actuadores neumticos en robots de montaje de la industria? Por qu se necesita un tanque de almacenamiento en actuadores neumticos? Qu componente provee bsicamente el movimiento mecnico? Cundo se preeren actuadores hidrulicos en los sistemas robticos? Qu uido es utilizado en actuadores hidrulicos y cul es el rango de presin? Indique los diferentes tipos de actuadores hidrulicos. Cules son los riesgos al usar actuadores hidrulicos? Cul es la funcin de la Vlvula de Control de Direccional? Indique las ventajas y desventajas de los motores elctricos. Cules son los tipos de motores a pasos? Por qu se preere utilizar motores de CD como si fueran servomotores? Describa las diferencias funcionales entre los motores a pasos, los CD y los CA. Dibuje una grca tpica de velocidad/par torsor de un motor CD. Cmo se selecciona un motor?

EJERCICIOS BASADOS EN LA WEB


Basndose en bsquedas en la web, conteste las siguientes preguntas: 3.21 Mencione tres empresas que fabrican tanto actuadores neumticos como hidrulicos. Cules son los precios de estos actuadores? 3.22 Busque por lo menos tres fabricantes de motores elctricos CD y CA. Cules son sus precios? 3.23 Cul es un valor tpico de la constante del motor CD? 3.24 Infrmese si existe algn software que pueda especicar un motor con base en los requerimientos de carga y la velocidad de un robot. Indquelo. 3.25 Encuentre dos empresas que fabriquen motores de accionamiento directo.

Captulo

4
Sensores

Los sensores en los robots son como nuestros ojos, nariz, odos, boca y piel. A semejanza de los rganos humanos, por ejemplo los ojos o la piel, trminos como visin, tctil, etc., han surgido en la jerga de los sensores de robots. Tal como los seres humanos, los robots tienen que recabar amplia informacin sobre su ambiente a fin de funcionar de manera efectiva. Tienen que recoger un objeto y saber que lo han recogido. Cuando el brazo del robot se mueve a travs del espacio cartesiano, tiene que evitar obstculos y acercarse a los objetos con una velocidad controlada. Algunos objetos son pesados; otros, frgiles; y algunos ms, demasiado calientes para ser manejados. Estas caractersticas de los objetos y del ambiente tienen que reconocerse e introducirse en la computadora que controla los movimientos del robot. Por ejemplo, para mover el efector final de un robot, con o sin carga, a lo largo de una trayectoria deseada y ejercer una fuerza definida sobre un objeto, el efector final y los sensores (que normalmente se ubican en las articulaciones) trabajan en coordinacin con el controlador del robot (microprocesador, computadora o microcontrolador, cualquiera que fuere el caso).

4.1

Clasicacin de sensores

Las capacidades ms comunes requeridas por un robot son las siguientes:

i) Tacto sencillo Presencia o ausencia de un objeto.

4.2

Sensores internos

53

ii) Palpacin o tacto complejo Presencia de un objeto ms alguna informacin sobre su tamao o forma.

iii) Fuerza simple Fuerza medida a lo largo


de un solo eje.
Sensor vs. transductor

iv) Fuerza compleja


largo de dos o ms ejes.

Fuerza medida a lo

v) Proximidad
contacto.

Deteccin de un objeto sin

vi) Visin simple Deteccin de bordes, agujeros, esquinas, etctera.

Un sensor es una especie de transductor, mientras que un transductor es un dispositivo que convierte un tipo de energa en otro para varios propsitos, incluida la medicin de parmetros fsicos como posicin, velocidad, etctera.

vii) Visin compleja Reconocimiento de formas.


Para el control de movimiento, dispositivos como potencimetros, generadores tacomtricos, encders, etc., se usan como sensores en las articulaciones, mientras que sensores basados en galgas extensomtricas, etc., se usan en el efector final para el control de la fuerza de contacto. Una clasificacin amplia de sensores se encuentra en la figura 4.1.

4.2

Sensores internos

Como lo sugiere el nombre, los sensores internos se emplean para monitorear el estado interno de un robot, es decir, su posicin, velocidad, aceleracin, etc., en un momento determinado. Basado en estas informaciones, el controlador decide acerca del comando de control. Dependiendo de las diferentes cantidades que miden, los sensores se denominan como de posicin, velocidad, aceleracin o fuerza.

4.2.1

Sensores de posicin

Los sensores de posicin miden la posicin de cada articulacin, es decir, el ngulo de articulacin de un robot. A partir de dichos ngulos puede encontrarse la configuracin del ejecutor final, y ubicar su posicin y orientacin por medio de la cinemtica directa, que se revisar en el captulo 6. A continuacin se explican los diferentes sensores de posicin.

i) Encder El encder es un dispositivo ptico digital que convierte el movimiento


en una secuencia de pulsos digitales. Mediante el conteo de un solo bit o la decodificacin de un conjunto de bits, los pulsos pueden convertirse en medidas relativas o absolutas. De este modo, los encders son de tipo incremental o absoluto. Adems, cada tipo puede ser lineal y rotatorio a su vez. a) Encder lineal incremental Como se muestra en la figura 4.2a), este encder tiene una escala transparente con una retcula opaca. El tamao del espesor de las lneas de la retcula y el del espacio entre ellas son iguales y se encuentran en el rango de micrones. De un lado, la escala se equipa con una fuente de luz y un lente de condensador. Del otro, hay celdas

54

Sensores

CAPTULO

Sensores internos

Sensores externos

4 Sensores

Posicin Aceleracin

Velocidad Fuerza

Tipo de contacto

Tipo sin contacto

Lineal Todos los sensores de fuerza Interruptores neumticos Sensores piezoelctricos Interruptores piezoelctricos Galgas extensomtricas Interruptores de lmite

Rotativo

Sensores de proximidad Sensores de efecto Hall Sensores de microondas Sensores ultrasnicos

Encder incremental Interruptores de efecto Hall

Encder absoluto

Todos los sensores de posicin Tacmetro

Potencimetro

LVDT

Transductores de presin

Sensor de efecto Hall

Sensores lser

Reslver

Sensores de visin

Figura 4.1

Clasicacin de sensores

4.2
Fuente de luz Lente de condensador Escala de vidrio con retcula opaca

Sensores internos

55

Retcula de ndice Celdas sensibles a la luz a) Tipo lineal incremental Posicin del escner

1 0 0 1 1 0 15 OP 1 OP2 OP3 OP4

16 0 0 2 1

El escner lee la posicin como 16 + 2 + 1 = 19 c) Tipo rotativo incremental Disco codificado perforado Electrnica de procesamiento de seales Muchas fuentes de luz Fuente de luz Detector de luz

b) Tipo lineal absoluto 14 13 12 11 10 9 5 1 2

Eje o flecha 3 4

6 8 7 d) Tipo rotativo absoluto e) Encder rotativo Encders

Figura 4.2

sensibles a la luz. La resistencia de las celdas (fotodiodos) disminuye cada vez que reciben un rayo de luz. De este modo, se genera un pulso cada vez que un rayo de luz es atravesado por la lnea opaca. Este pulso se introduce en el controlador que actualiza a un contador (un registro de la distancia recorrida). b) Encder lineal absoluto En principio, se parece al encder lineal incremental. La diferencia es que da un valor absoluto de la distancia recorrida en cualquier momento. As, las posibilidades de perder los pulsos a altas velocidades son menores. La salida es digital en este caso. La escala se marca con una secuencia de tiras opacas y transparentes, como se muestra en la figura 4.2b). Si el bloque opaco que aparece en la escala de la ilustracin repre-

56

CAPTULO

4 Sensores

senta 1 (uno) y el bloque transparente 0 (cero), entonces la columna de la extrema izquierda mostrar un nmero binario como 00000, es decir, un valor decimal de 0, y la columna siguiente mostrar un nmero binario 00001, es decir, una valor decimal de 1. c) Encder rotativo incremental Se parece al encder incremental lineal, con la diferencia de que las retculas se encuentran en este caso en un disco, como en la figura 4.2c). El valor comn del espesor de los espacios transparentes es igual a 20 micrones. Hay dos conjuntos de lneas de retculas en diferentes crculos que detectan el sentido de rotacin, lo que permite mejorar la precisin del sensor. Tabla 4.1 Muestra de cdigos grises Hay otro crculo que slo contieDecimal Cdigo binario Cdigo gris ne una marca de retcula. ste se usa para la medicin del nmero 0 0000 0001 de revoluciones completadas. 1 0001 0001
2 0010 0011 d) Encder rotativo absoluto 3 0011 0010 Parecido al encder lineal absoluto, el disco se divide en un nme4 0100 0110 ro de tiras circulares, y cada tira tiene segmentos de arco definidos, como se muestra en la figura 4.2d). Este sensor proporciona directamente la salida digital (absoluta). El encder se monta directamente sobre el eje del motor o con algn engranaje para aumentar la precisin de medicin. Con el fin de evitar ruidos en este encder, a veces se usa una escala gris. Un cdigo gris, a diferencia de los cdigos binarios, permite que slo uno de los bits binarios en una secuencia de cdigo cambie entre lneas radiales. Tambin impide que se confundan los cambios en la salida binaria del encder absoluto cuando el encder oscila entre puntos. Una muestra de un cdigo gris se presenta en la tabla 4.1 para algunos nmeros. Observe la diferencia entre los cdigos grises y binarios. La disposicin bsica del encder rotativo se presenta en la figura 4.2e).

ii) Potencimetro El potencimetro, tambin llamado simplemente poti, es un


dispositivo de resistencia variable que expresa desplazamientos lineales o angulares en trminos de voltaje, tal como se muestra en las figuras 4.3a) y b), respectivamente. Consiste en una clavija deslizante que hace contacto con un elemento resistivo; conforme se mueve este punto de contacto, la resistencia entre el contacto deslizante y las conexiones de los extremos del dispositivo cambia en proporcin al desplazamiento, x y para potencimetros lineales y angulares, respectivamente.

iii) LVDT El transformador diferencial lineal variable (LVDT) es uno de los transductores de desplazamiento que ms extensamente se usa, particularmente cuando se necesita alta precisin. Genera una seal de CA cuya magnitud se relaciona con el desplazamiento de un ncleo mvil, como se indica en la figura 4.4. El concepto bsico es el de un ncleo frrico que se mueve en un campo magntico, donde el campo se produce de un modo similar al campo de un transformador estndar. Existe un ncleo central, rodeado por dos bobinas secundarias idnticas y una bobina principal, como se muestra en la figura 4.4. Conforme el ncleo cambia su posicin con respecto a las bobinas, cambia tambin el campo magntico y, por tanto, se modifica la amplitud de voltaje en la bobina secundaria como una funcin

4.2

Sensores internos

57

+ vR L x R0 v0

a) Tipo lineal

+ vR

a q

R0

v0

b) Tipo rotatorio vR: Voltaje de referencia; v0: Voltaje medido L, x, R0, a, q: Otros parmetros fsicos

Figura 4.3

Potencimetros
Bobinas secundarias idnticas

Aislador Ncleo frrico mvil Bobina principal Voltage |v0| de salida

x Conexin con el objeto desplazado

a O a Posicin del ncleo x

a: Valor de x para la zona lineal

Figura 4.4

Principio del LVDT

58

CAPTULO

4 Sensores

del desplazamiento del ncleo a travs de un segmento considerable. Un transformador diferencial rotatorio variable (RVDT) opera con el mismo principio que el LVDT, y tambin est disponible con un rango de aproximadamente 40.

iv) Sincronizadores y reslvers Mientras que los encders producen salidas


digitales, los sincronizadores y reslvers proporcionan seales anlogas como salida. stos consisten en un eje (flecha) giratorio (rotor) y una carcasa estacionaria (estator). Sus seales tienen que convertirse a la forma digital por medio de un convertidor analgico a digital antes de que la seal sea introducida a la computadora. Como se ilustra en la figura 4.5, los sincronizadores y reslvers emplean rotores de un solo devanado que giran dentro de estatores fijos. En un sincronizador sencillo, el estator tiene tres devanados, orientados a 120 uno del otro y elctricamente conectados en una conexin Y. Los reslvers difieren de los sincronizadores en que sus estatores slo tienen dos devanados orientados a 90. Puesto que los sincronizadores tienen tres bobinas de estator en una orientacin de 120, son ms difciles de fabricar que los reslvers y, por tanto, ms caros. Los reslvers modernos, en contraste, estn disponibles sin escobillas ya que emplean un transformador para acoplar las seales del rotor desde el estator al rotor. El devanado principal de este transformador se ubica en el estator, y el secundario en el rotor. Otros reslvers utilizan las escobillas o anillos colectores tradicionales para acoplar la seal al devanado del rotor. Los reslvers sin escobillas son ms resistentes que los sincronizadores porque no hay riesgo de que las escobillas puedan romperse o soltarse, por lo que la vida til de un reslver sin escobillas slo est limitada por sus cojinetes. La mayora de los reslvers se fabrican para trabajar a en un rango de de 2V hasta 40V RMS y a frecuencias de entre 400 Hz a 10 kHz. Las precisin angular abarca de 5 minutos de arco hasta 0.5 minutos de arco. (Hay 60 minutos de arco en un grado y 60 segundos de arco en un minuto de arco.) En la operacin, los sincronizadores y reslvers se parecen a transformadores rotatorios. El devanado del rotor se excita mediante un voltaje de referencia de CA con frecuencias de hasta algunos kHz. La magnitud del voltaje inducido en cualquier devanado del estator
S1 Rotor Rotor R1 V sen t R2 S3 Rotor R1 Estator V sen t R2 Estator S4 Resolver Estator S2 Sincronizador S1 A S 3 = V sen t sen S3 A S 2 = V sen t sen ( + 120) S2 A S 1 = V sen t sen ( + 240)

S1 A S 3 = V sen t sen S4 A S 2 = V sen t sen ( + 90 = V sen t cos S2

Figura 4.5

Sincronizadores y reslvers

4.2

Sensores internos

59

es proporcional al seno del ngulo entre el eje de la bobina del rotor y el eje de la bobina del estator. En el caso de un sincronizador, el voltaje inducido a travs de cualquier par de terminales del estator ser la suma vectorial de los voltajes a travs de las dos bobinas conectadas. Por ejemplo, si el rotor de un sincronizador se excita mediante un voltaje de referencia V sen (w t) a travs de sus terminales R1 y R2, la terminal del estator ver voltajes en la siguiente forma: V sen (w t ) sen q V sen (w t) sen ( q + 120) V sen (w t) sen ( q + 240) donde V y w son la amplitud de entrada y frecuencia, respectivamente, mientras que es el ngulo del eje (flecha). En el caso de un reslver con un voltaje de referencia de CA del rotor de V sen (w t), los voltajes en las terminales del estator sern S1 a S3 = V sen (w t) sen q S4 a S2 = V sen (w t) sen ( q + 90) = V sen (w t) cos q Como se mencion anteriormente, la salida de estos sincronizadores y reslvers primero tiene que digitalizarse. Para este propsito se utilizan convertidores analgicos-digitales, que normalmente son de 8 o 16 bits. Ocho bits significa que el rango completo de seales analgicas ser convertido en un mximo de 28 = 256 valores.

4.2.2

Sensores de velocidad

Los sensores de velocidad realizan la medicin tomando medidas de posicin consecutivas a intervalos de tiempo constante, calculando la razn de cambio respecto al tiempo de los valores de posicin, o lo determina en forma directa con base en diferentes principios.

i) Todos los sensores de posicin Bsicamente todos los sensores de posicin, cuando se utilizan con ciertos lmites de tiempo, pueden dar la velocidad, por ejemplo, el nmero de pulsos proporcionados por un encder de posicin incremental dividido entre el tiempo consumido en hacerlo. Sin embargo, este mtodo impone una carga computacional sobre el controlador, que podr estar ocupado por algunas otras operaciones.

ii) Tacmetro Estos sensores pueden encontrar directamente la velocidad en cualquier momento y sin mucha carga computacional. stos miden la velocidad de rotacin de un elemento. Hay varios tipos de tacmetros en uso, pero un diseo sencillo se basa en la regla de Fleming, que declara que el voltaje producido es proporcional al ndice del acoplamiento inductivo. Aqu un conductor (bsicamente una bobina) se sujeta al elemento rotativo que gira en un campo magntico (estator). Conforme incrementa la velocidad del eje, el voltaje producido en las terminales de las bobinas tambin aumenta. De otra manera, como se muestra en la figura 4.6, puede colocarse un imn sobre el eje rotativo y una bobina sobre el estator. El voltaje producido es proporcional a la velocidad de rotacin del eje. Esta informacin se digitaliza mediante un convertidor analgico-digital y se introduce en la computadora. iii) Sensor de efecto Hall
Otro dispositivo de medicin de velocidad es el sensor de efecto Hall, cuyo principio se describe a continuacin. Si una pieza plana de ma-

60

CAPTULO

4 Sensores

Eje (flecha)

Imn permanente

Lneas de fuerzas magnticas Ncleo ferromagntico

Seal de voltaje

Figura 4.6

Diagrama esquemtico de un tacmetro

terial conductivo llamada chip Hall se sujeta a una diferencia de potencial en sus dos lados opuestos como se indica en la figura 4.7, entonces el voltaje que se genera a travs de las caras perpendiculares es cero. Pero si un campo magntico se induce en ngulos rectos al conductor, el voltaje se genera en las otras dos caras perpendiculares. Entre ms alto sea el valor de campo, ms lo ser el nivel de voltaje. Si se utiliza un imn anular, el voltaje producido ser proporcional a la velocidad de rotacin del imn.

4.2.3

Sensores de aceleracin

De manera parecida a las mediciones de velocidad que se dan a partir de la informacin de los sensores de posicin, pueden encontrarse las aceleraciones como la razn de cambio respecto al tiempo de las velocidades obtenidas por los sensores de velocidad o calculado a partir de las informaciones de posicin. Pero sta no es una manera eficiente para calcular la aceleracin, puesto que impondr una carga de trabajo pesada sobre la computadora, lo que puede reducir la velocidad de operacin del sistema. Otra forma de medir la aceleracin es calculando la fuerza que resulta de multiplicar masa por aceleracin. Las fuerzas se

Flujo de corriente Chip Hall N Flujo (campo magntico) Seal de voltaje

Seal de voltaje (analgico)

Figura 4.7

Principio de un sensor de efecto Hall

4.2

Sensores internos

61

miden, por ejemplo, usando galgas extensomtricas, cuya frmula es F=

D RAE RC

Por qu aceleracin a partir de la fuerza pero no a partir de la velocidad? Encontrar la aceleracin a partir de la fuerza involucra integracin, lo que suprime cualquier ruido en la seal de fuerza. Sin embargo, si la seal de velocidad se usa para determinar la aceleracin, tiene que realizarse la diferenciacin, lo que amplica el ruido en la seal de velocidad. Por lo tanto, se recomienda el primer mtodo.

donde F: fuerza; R: cambio de resistencia de la galga; A: rea; E: mdulo de elasticidad del material de la galga; R: resistencia original de la galga; y C: constante de deformacin de la galga. Por tanto, la aceleracin a es la fuerza dividida entre la masa del objeto de aceleracin m, es decir, a=

D RAE RCm

Se seala aqu que las velocidades y aceleraciones que se miden mediante el uso de sensores de posicin requieren diferenciaciones. Por lo general, esto no es deseable, puesto que el ruido en los datos medidos, si es que existe, ser amplificado. En forma alternativa, se recomienda el uso de integradores para obtener la velocidad a partir de la aceleracin y, por consiguiente, las posiciones. Los integradores tienden a suprimir el ruido.

4.2.4

Sensores de fuerza
Qu es el factor de calibre?

Se trata de una medida de sensibilidad para las galgas extensomtricas que se dene por

G = 1 DR e R
donde G es el factor de calibre y es la deformacin unitaria.

Una balanza de resorte es un ejemplo de un sensor de fuerza en donde se aplica una fuerza, por ejemplo, el peso, al platillo de balanza que causa un desplazamiento, es decir, el resorte se estira. El desplazamiento es entonces una medida de la fuerza. Existen otros tipos de sensores de fuerza, por ejemplo, con base en galgas, utilizando el sensor de efecto Hall, etctera.

i) Galgas extensomtricas

El principio de este sensor es que el alargamiento de un conductor aumenta su resistencia elctrica. La resistencia elctrica normal para galgas es de 50-100 ohmios. El incremento de resistencia se debe a

Incremento de la longitud del conductor; y Decremento en el rea del conductor.

Las galgas estn hechas de conductores elctricos, usualmente de alambre o papel metlico grabado sobre un material base, como se muestra en la figura 4.8. Estn pegados en las superficies donde se medirn las deformaciones unitarias, por ejemplo, R1 y R2 de la figura 4.9a). Las deformaciones ocasionan cambios en la resistencia elctrica de las galgas, lo que se mide mediante su conexin al circuito de puente de Wheatstone como una de las cuatro resistencias, R1 R4 de la figura 4.9b). ste es un mtodo barato y preciso para medir deformaciones. Sin embargo, deber tenerse cuidado con los cambios de temperatura. Para mejorar el voltaje de salida y anular los cambios de resistencia debidos al cambio de tempe-

62

CAPTULO

4 Sensores

ratura, se usan dos galgas, tal como se muestra en la figura 4.9a), para medir la fuerza en el extremo de la viga voladiza.

ii) Sensor piezoelctrico

Un material piezoelctrico presenta un fenmeno conocido como efecto piezoelctrico. Este efecto seala que cuando cristales elsticos asimtricos se deforman mediante una fuerza, se desarrollar un potencial elctrico dentro de la red cristalina deformada, como se ilustra en la figura 4.10. Este efecto es reversible. Esto quiere decir que si se aplica un voltaje entre las superficies del cristal, ste cambiar sus dimensiones fsicas. La magnitud y polaridad de las cargas inducidas son proporcionales a la magnitud y direccin de la fuerza aplicada. Los materiales piezoelctricos son cuarzo, turmalina, sal de Rochalle y otros. El rango de fuerzas que pueden medirse usando sensores piezoelctricos es de 1 a 20 kN y con una proporcin de 2 105. Estos sensores pueden usarse para medir un cambio instantneo en la fuerza (fuerzas dinmicas).

Figura 4.8 Galgas extensomtricas


Galgas extensomtricas R1 F

R2 a) Viga voladiza con galgas R1

R2

iii) Deteccin con base en la corriente Puesto que el par de torsin proporcionado por un motor elctrico es una funcin de la corriente consumida, su medicin, junto con las caractersticas conocidas del motor, proporciona la deteccin del par de torsin.

R3

R4

b) Circuito de puente de Wheatstone

Figura 4.9 Medicin de deformacin

4.3

Sensores externos

Los sensores externos se utilizan principalmente para saber ms acerca del ambiente del robot, especialmente sobre los objetos que se va a manipular. Los sensores externos pueden dividirse en las siguientes categoras: Tipo de contacto Tipo sin contacto
+ + + + + + + + + + + +

4.3.1

Tipo de contacto

i) Interruptor de lmite

Un interruptor de lmite se construye de modo muy parecido al interruptor de luz comn que se usa en casas y oficinas. Tiene las mismas caractersticas de

Figura 4.10 Sensor piezoelctrico

4.3

Sensores externos

63

+V encendido/apagado. El interruptor de lmite tiene generalmente un brazo mecnico sensible a la presin, como se muestra en la figura 4.11a). Cuando un objeto aplica presin sobre el brazo mecnico, se activa el interruptor. Es posible que un objeto tenga un imn que cause que un contacto suba y cierre cuando el objeto pase sobre el brazo. Como se muestra en la figura 4.11b), el registro de subida a) b) mantiene la seal en +V hasta que el interruptor Figura 4.11 Interruptor de lmite cierra, transmitiendo la seal a tierra. Los interruptores de lmite pueden ser normalmente abiertos (NO) o normalmente cerrados (NC) y pueden tener polos mltiples. Un interruptor normalmente abierto permite flujo de corriente hasta que se aplica presin al interruptor. Un interruptor de polo sencillo permite que se abra o cierre un circuito al contacto, mientras que un interruptor de polos mltiples permite que circuitos de interruptores mltiples estn abiertos o cerrados. Los interruptores de lmite son dispositivos mecnicos que pueden tener los siguientes problemas:

Estn sujetos a fallas mecnicas; Su tiempo promedio entre fallas es bajo en comparacin con sensores sin contacto; y La velocidad de operacin es relativamente lenta en comparacin con la velocidad de conmutacin de microsensores fotoelctricos, que es hasta 3 000 veces ms rpida.

Los interruptores de lmite se utilizan en robots para detectar las posiciones extremas de los movimientos, donde el eslabn apaga el actuador correspondiente cuando alcanza una posicin extrema y, de este modo, impide posibles daos de la estructura mecnica del brazo del robot.

4.3.2

Tipo sin contacto

i) Sensor de proximidad La deteccin de proximidad es la tcnica que se usa para detectar la presencia o ausencia de un objeto por medio de un sensor electrnico sin contacto. Hay dos tipos de sensores de proximidad: inductivo y capacitivo. Los sensores de proximidad inductivos se usan en lugar de interruptores de lmite para la deteccin sin contacto de objetos metlicos. Los sensores de proximidad capacitivos se usan sobre la misma base que los sensores de proximidad inductivos, pero tambin pueden detectar objetos no metlicos. a) Sensor de proximidad inductivo Todos los sensores de proximidad inductivos consisten en cuatro elementos bsicos, a saber: Bobina de sensor y ncleo frrico Circuito detector Circuito oscilador Circuito de salida de estado slido

Como se muestra en la figura 4.12, el circuito del oscilador genera un campo magntico de frecuencia de radio. El campo se centra alrededor del eje del ncleo frrico que modela el campo y lo dirige hacia la cara del sensor. Cuando un objeto metlico se acerca a la cara y entra al campo magntico, se inducen corrientes de Eddy en la superficie del objeto. Esto da como resultado un efecto de carga o amortiguacin que causa una reduccin en la amplitud de la seal del oscilador. El circuito del detector identifica el cambio de la amplitud del oscilador. El circuito del detector se encender con una amplitud de operacin especfica. Esta seal

64

CAPTULO

4 Sensores

enciende el circuito de salida de estado slido. A esto se le llama frecuentemente condicin amortiguada. Cuando el objeto sale del campo de deteccin, el oscilador responde con un aumento de amplitud. Cuando la amplitud aumenta ms all de un valor especfico, se detecta mediante el circuito detector. ste se apaga, haciendo que la seal de salida regrese al estado normal o apagado. El rango de deteccin de un sensor de proximidad inductivo es la distancia entre la cara del detector y el objeto. Tambin indica la forma del campo de deteccin que se genera mediante la bobina y el ncleo. Hay varios factores mecnicos y ambientales que afectan el rango de deteccin. El rango usual es hasta 1015 mm, pero algunos sensores tambin tienen rangos tan altos como 100 mm.

Objeto

Oscilador

b) Sensor de proximidad capacitivo Un sensor de proximidad capacitivo tra-

Detector

baja de manera muy parecida a un sensor de proximidad inductivo. Sin embargo, el medio de deteccin es bastante distinto. La deteccin Salida capacitiva se basa en la capacitancia dielctrica. La capacitancia es la propiedad de los materiales aislantes para almacenar una carga. Un capacitor consiste en dos placas que estn separadas Figura 4.12 Sensor de proximidad por un material aislante, usualmente llamado inductivo dielctrico. Cuando se cierra el interruptor, se Cable de alimentacin almacena una carga en las dos placas. La distancia entre las placas determina la capacidad Electrodo del capacitor para almacenar la carga y puede Medio dielctrico calibrarse como una funcin de la carga almacenada para determinar el estatus de conmutacin discreto de ENCENDIDO y APAGADO. La figura 4.13 ilustra el principio de un sensor Figura 4.13 Principio de sensores capacitivo. Una placa capacitiva forma parte capacitivos del interruptor, la cara del sensor es el aislador y el objeto es la otra placa, todos unidos con tierra fsica. El interruptor capacitivo tiene los mismos cuatro elementos que el sensor inductivo, es decir, sensor (el medio dielctrico), circuito oscilador, circuito detector y circuito de salida de estado slido. El circuito del oscilador en un interruptor capacitivo trabaja igual que el de un interruptor inductivo. El circuito del oscilador incluye la capacitancia de la placa del objeto externo y de la placa del objeto interno. En un sensor capacitivo, el oscilador empieza a oscilar cuando se detecta una capacitancia de retroalimentacin suficiente. Las caractersticas principales de los sensores de proximidad capacitivos son las siguientes:

4.3

Sensores externos

65

Pueden detectar objetos no metlicos Pueden detectar objetos de peso ligero o pequeos que no pueden ser detectados por interruptores de lmite mecnicos Ofrecen un alto ndice de conmutacin para una respuesta rpida en aplicaciones de conteo de objetos Pueden detectar objetos a travs de barreras no metlicas (vidrio, plstico, etc.) Tienen una larga vida operacional con un nmero virtualmente ilimitado de ciclos de operacin La salida de estado slido proporciona una seal de contacto libre de rebotes

Los sensores de proximidad capacitivos tienen dos limitaciones principales: Les afecta el vaho y la humedad Necesitan un rango extenso para la deteccin efectiva

Los sensores de proximidad capacitivos tienen un mayor rango de deteccin que los de proximidad inductivos. La distancia de deteccin para interruptores capacitivos tiene que ver con el rea del plato, as como el tamao de la bobina tiene que ver en los sensores de proximidad inductivos. Los sensores capacitivos bsicamente miden un intervalo dielctrico. Por consiguiente, es deseable poder compensar las condiciones del objeto y la aplicacin por medio de un ajuste de sensibilidad para el rango de deteccin. La mayora de los sensores de proximidad capacitivos se equipa con un potencimetro de ajuste de sensibilidad.

ii) Sensor de desplazamiento de semiconductor Como se muestra en la figura 4.14, el sensor de desplazamiento de semiconductor utiliza un diodo de emisin de luz (LED) de semiconductor o lser como fuente de luz, as como un detector sensible a la posicin (PSD). El rayo lser se enfoca sobre el objeto por medio de un lente. El objeto refleja al rayo, que luego se enfoca sobre el PSD creando un punto de luz. El punto de luz

Circuito de accionamiento Circuito de amplificacin de seales

Lser de semiconductor Lente del transmisor

Elemento de deteccin de la posicin de la luz (PSD) Desplazamiento Lente receptor de luz Posicin de referencia Objeto de medicin

Figura 4.14

Sensor basado en semiconductores [Cortesa de: http://www.sensorcentral.com/displacement/ laser02.php]

66

CAPTULO

4 Sensores

se mueve cuando el objeto lo hace. El desplazamiento de la pieza de trabajo puede entonces determinarse detectando el movimiento del punto de luz.

4.4

Sistema de visin

Los sensores de visin pueden clasificarse como de tipo externo sin contacto, como lo indica la figura 4.1. Sin embargo, aqu se estudian en una seccin separada debido a su complejidad, que requiere un tratamiento detallado. Los componentes tpicos de un sistema de visin para uso como alarma de seguridad se muestran en la figura 4.15. Los sistemas de visin se utilizan exitosamente con robots para permitir que miren a su alrededor con el fin de encontrar las piezas que van a recoger y para colocarlas en los lugares apropiados. Anterior a los sistemas de visin en robots se empleaban plantillas para el posicionamiento exacto de objetos. Estos dispositivos son muy caros. Otras tareas de sistemas de visin que se usan para robots incluyen la determinacin del patrn geomtrico de los objetos, el movimiento de los mismo y la reconstruccin de la geometra 3D de los objetos a partir de sus imgenes en 2D para la medicin, y la construccin de los mapas del ambiente para la navegacin del robot. Los sistemas de visin proporcionan informacin que es difcil o imposible de obtener de otra manera. Su cobertura va desde unos cuantos milmetros hasta decenas de metros, con un ngulo angosto o amplio, dependiendo de las necesidades y el diseo del sistema.

4.4.1

Elementos del sensor de visin

En los sistemas de visin, el componente principal de visin es una cmara completa, incluidos un equipo sensor, la electrnica asociada, el formato de seales de salida y un lente. En funcin de la aplicacin, la cmara podra ser una RS-170/CCIR, NTSC/PAL (stas son seales estndares de televisin americana RS-170 monocolor, de televisin europea/india CCIR monocolor, NTSC color y PAL producidas por las videocmaras, respectivamente), de escaneo progresivo, variable o de lneas. Los cinco parmetros de sistema ms importantes que rigen la eleccin de la cmara son campo de vista, resolucin, distancia de trabajo, profundidad de campo e ndice de adquisicin de datos de imgenes. Como regla general, para mediciones de tamao, el sensor deber tener un nmero de pixeles de por lo menos el

Luz IR Tarjeta de imgenes de video

Cmara

Computadora

Alarma Micro controlador

Figura 4.15

Tarjeta de imgenes de video

4.4

Sistema de visin

67

doble de la proporcin del tamao ms grande al ms pequeo de los objetos de inters. La iluminacin deber organizarse de tal forma que se iluminen los objetos de inters. A menudo, como interfaz entre la cmara y una computadora anfitriona, se necesita una tarjeta de video o de captura de video, usualmente en forma de tarjeta de enchufe que se instala en la computadora. La tarjeta de imgenes de video almacenar las imgenes de la cmara en una memoria de tarjeta o de sistema, muestreando y digitalizando los datos analgicos conforme sea necesario. En algunos casos, la misma cmara podr producir los datos digitales que son compatibles con una computadora estndar. En estos casos, no ser necesaria una tarjeta de imgenes de video por separado. Se necesita un software de visin para crear el programa que procesa las imgenes. Cuando una imagen se haya analizado, el sistema debe ser capaz de comunicar el resultado para controlar el proceso o para transmitir la informacin a una base de datos. Esto requiere una interface digital de entrada/salida. El ojo y cerebro humanos pueden identificar objetos e interpretar escenas bajo una amplia variedad de condiciones. Los sistemas de visin artificiales son mucho menos verstiles, as que la creacin de un sistema exitoso requiere de la consideracin cuidadosa de todos los elementos del sistema y de una identificacin precisa de las metas que se van a lograr, lo que deber mantenerse lo ms sencillo que sea posible.

i) Sistemas de cmaras Los primeros sistemas de visin empleaban la cmara


vidicn, que era un dispositivo voluminoso de tubos de vaco. Las cmaras vidicn son mucho ms susceptibles a la interferencia de ruido electromagntico y requieren mucha energa. Sus ventajas principales son una ms alta resolucin y mejor sensibilidad a la luz. A fin de reducir el tamao, en la mayora de los sistemas actuales se usan cmaras de estado slido, basadas en tcnicas de dispositivos de carga acoplada (CCD) o en dispositivos de inyeccin de carga (CID). Las cmaras de estado slido son ms pequeas, ms resistentes, duran ms y tienen menos distorsin de imgenes inherente que las cmaras vidicn. Tambin son levemente ms caras, pero los precios estn bajando. Los fabricantes frecuentemente recomiendan la operacin de los sensores con filtros apropiados para eliminar longitudes de onda IR. Tanto los chips de CCD como de CID utilizan tcnicas de transferencia grande para capturar una imagen. En una cmara CCD, la luz incide en el equivalente ptico de un chip de memoria de acceso aleatorio (RAM). La luz se absorbe en sustrato de silicn, donde la acumulacin de carga es proporcional a la cantidad de luz que llega al equipo. Una vez que se haya recibido la cantidad suficiente de energa para proporcionar una imagen, las cargas se transmiten a travs de los registros de control integrados. Algunos chips CCD utilizan una tcnica de transferencia de cargas entre lneas. Otros emplean el mtodo de transferencia de fotogramas, que es ms flexible por variar el periodo de integracin. Un tipo de dispositivo electrnico puede ajustar la sensibilidad de la cmara a la luz por medio del control de la cantidad de voltaje a travs de sus elementos y del periodo de tiempo que el equipo se sujeta a la carga. La cmara CID trabaja con un principio similar. Un chip CID es un dispositivo basado en el semiconductor de xido y metal (MOS) con mltiples puertos, parecido a los CCD. La seal de video es el resultado de un pulso de corriente de una recombinacin de los portadores. Los CID producen una mejor imagen (de menos distorsin) y usan una tcnica de lectura distinta que los CCD, lo que requiere una unidad de direccin de escaneo separada. Por tanto, los CID son ms caros que los CCD. La diferencia principal entre una cmara CCD y una CID es el mtodo para generar la seal de video. En los CID, la carga tiene que moverse fuera del equipo mediante la conmutacin de voltajes entre puertas pares

68

CAPTULO

4 Sensores

Adquisicin de imgenes

Procesamiento de imgenes

Sensor

Pixeles

Clasificacin de pixeles

Representacin Clase de pixeles

Descripcin Lmites de regiones de conjuntos de pixeles

Propiedades

Segmentacin

Figura 4.16

Deteccin visual

e impares. El flujo de la corriente que resulta crea una seal analgica. En la cmara CID, cada elemento se descarga y el flujo que resulta se usa en forma directa. La cantidad de carga almacenada es una funcin lineal de la intensidad reflectiva del objeto y del tiempo de exposicin a la cmara.

4.4.2

Pasos en la deteccin de visin

Como se ilustra en la figura 4.16, la deteccin de la visin, tambin llamada visin de mquina, tiene dos pasos: la adquisicin de imgenes y el procesamiento de imgenes.

i) Adquisicin de imgenes En la adquisicin de imgenes, una imagen se obtiene y digitaliza para su ulterior procesamiento, tal y como se muestra en la figura 4.17. El primer paso en la digitalizacin es dividir la imagen en celdas (pixeles), especificadas por hileras y columnas. Una imagen exagerada se muestra en el lado izquierdo. A cada pixel se le asigna un nmero basado en su intensidad de luz o luminosidad de imagen. A pesar de que la adquisicin de imgenes es principalmente una funcin de hardware, puede usarse software para controlar intensidad de la luz, ajuste de apertura del lente, ngulo de la cmara, sincronizacin, campo de vista, tiempos de lectura y otras funciones. La adquisicin de imgenes tiene cuatro elementos principales, a saber:
Una fuente de luz, controlada o ambiental; Un lente que enfoca la luz reflejada desde el objeto hasta un sensor de imagen: Un sensor de imgenes que convierte la imagen de luz en una imagen elctrica almacenada; Elementos de electrnica para leer la imagen detectada desde el elemento de deteccin de imgenes y que, despus de procesarla, transmite la informacin de la imagen a una computadora para su procesamiento.

Despus, la computadora realiza el resto de los pasos, es decir, el anlisis de imgenes y el reconocimiento de patrones.

ii) Procesamiento de imgenes El procesamiento de imgenes examina los


datos digitalizados para localizar y reconocer un objeto dentro del campo de imgenes. Pueden usarse diferentes mtodos. La mayora de las tcnicas de anlisis de imgenes incluye segmentacin, extraccin de parmetros y reconocimiento de patrones. La segmentacin desglosa la escena en diferentes piezas o segmentos y permite que el objeto deseado sea aislado; si mltiples objetos de inters estn presentes, la segmentacin los separa en la imagen. La extraccin de parmetros examina despus los objetos segmentados y determina

4.4
j (columnas) 1 1 2 3 4 5 6 7 8

Sistema de visin

69

9 10

j (hileras)

2 3 4 5 6 7 8 9 10 j (columnas) 1 1 2 3 4 5 6 7 8 9 10 45 78 35 34 41 40 74 121 126 128 42 67 12 27 31 44 66 115 129 124 40 63 28 25 20 27 59 109 117 126 62 74 49 110 136 145 138 102 112 115

j (hileras)

2 3 4

5 124 103 77 226 238 243 240 104 109 191 6 127 117 69 109 221 230 225 109 101 107 7 130 127 66 78 118 210 205 93 8 134 134 85 73 129 175 190 125 85 103 99 100

9 138 136 133 199 80 94 98 104 105 108 10 139 136 133 129 126 122 112 119 139 171

Figura 4.17

Imagen digitalizada

la caracterstica clave, por ejemplo, tamao, posicin, orientacin, forma, intensidad, color y textura. El reconocimiento de patrones intenta equiparar las caractersticas observadas con criterios almacenados y permite as que se identifiquen los objetos. Con base en una actividad especfica durante la fase de procesamiento de imgenes, un sistema de visin se clasifica como visin de bajo, mediano o alto nivel, como se indica en la figura 4.18. Estos niveles se explicarn a continuacin.

a) Visin de nivel bajo La actividad en la visin de nivel bajo consiste en procesar la imagen para la extraccin de datos (flujo de contornos, de esquinas u ptico). Las operaciones se llevan a cabo en los pixeles de la imagen para extraer las propiedades arriba mencionadas respecto a su intensidad o profundidad en cada punto de la imagen. Por ejemplo, uno podr interesarse en la extraccin de regiones uniformes, donde el gradiente de los pixeles permanece constante, o en los cambios de primer orden en el gradiente, lo que correspondera a lneas rectas, o en los cambios de segundo orden, que podran usarse para extraer propiedades de superficie tales como picos, hoyos, crestas, etc. Las actividades de visin de

70

CAPTULO

4 Sensores

Imagen reticulada

Reconocimiento de patrones

Estreo

Caractersticas

Objetos especficos

Mapa de profundidad

Mapa de bordes

Agrupamiento

Lneas, curvas, regiones Etiquetado

Objetos

Reconocimiento

Descripcin funcional

Figura 4.18

Niveles de visin

nivel bajo estn invariablemente basadas en datos, y a veces se llaman ascendente. Se trata del rea donde el modelaje del funcionamiento de la corteza visual es ms apropiado.

b) Visin de nivel intermedio En este nivel se reconocen los objetos y se interpretan escenas de 3D usando los datos obtenidos de la visin de nivel bajo. El nivel intermedio de procesamiento se ocupa fundamentalmente de agrupar las entidades. El caso ms simple es cuando uno agrupa los pixeles en lneas. Puede entonces expresarse la lnea en forma funcional. De manera similar, si la salida de la informacin del nivel bajo es un mapa de profundidad, posiblemente uno tendr, adems, que distinguir los lmites del objeto u otras caractersticas. Incluso en el caso ms sencillo, donde se intenta extraer una sola esfera, no es un proceso fcil irse de una representacin de profundidad de superficie a una representacin de centro y radio. c) Visin de nivel alto La visin de nivel alto, que es equivalente a la comprensin de la imagen, se ocupa de manera principal de la interpretacin de la escena en trminos de los objetos que hay en ella, y se basa usualmente en el conocimiento de los objetos especficos y sus relaciones. La interpretacin de una escena va ms all de las tareas de extraccin de lneas y agrupamiento. Se requiere adems tomar decisiones acerca de los tipos de lmites, como los que ocluyen, y sobre qu informacin est oculta para el usuario. En esta fase es esencial ms agrupamiento, ya que posiblemente an tendremos que decidir

4.4

Sistema de visin

71

cules lneas se agrupan para formar un objeto. Para este propsito, uno tiene que distinguir, adems, qu lneas forman parte de la estructura de los objetos, cules de ellas forman parte de una textura de superficie o son causadas por sombras. Por ende, los sistemas de nivel alto se orientan a objetos y a veces se llaman desde arriba hacia abajo. Casi siempre requieren algn grado de conocimiento acerca de los objetos de la escena.

4.4.3

Dicultades en la visin y sus remedios

Un sistema de visin no puede representar o procesar de modo nico todos los datos disponibles debido a problemas computacionales como memoria y requerimientos de tiempo de procesamiento que se imponen a la computadora. Por lo tanto, el sistema tiene que hacer concesiones. Otros problemas incluyen las variaciones de la luz, el tamao del objeto y la ubicacin del objeto, as como limitaciones en el rango dinmico disponible en los sensores de visin Qu es un pixel? normales. El sistema de visin requiere hardware y software especializados. Es posible adquirir solamenUn pixel es la abreviatura de picte el hardware con poca o ninguna programacin de ture element (elemento de imagen). aplicacin. De hecho, algunos programas de terceros Se trata de un solo punto en una imaestn disponibles. Un planteamiento de slo hardware gen grca. es ms econmico y puede hacerse ms flexible para manejar los requerimientos de visin comunes. Sin embargo, visto que este planteamiento requiere destreza en el procesamiento de imgenes, solamente es de inters para usuarios que desean tener la responsabilidad de la interpretacin de imgenes. Es una prctica usual obtener el hardware y el software de aplicacin juntos de parte del proveedor. Pero el usuario an tendr que realizar programacin especfica para alguna aplicacin. Los proveedores principales de sistemas de visin se especializan en el suministro de software slo para algunas reas de aplicacin. Todo sistema de visin requiere un sensor con el fin de convertir la imagen visual en una seal electrnica. Se usan varios tipos de sensores de video, incluidos cmaras vidicn, dispositivos de tubos de vaco y sensores de estado slido. Originalmente, muchos de estos sistemas de visin se disearon para otras aplicaciones, por ejemplo, la televisin, as que se tiene que procesar la seal para extraer la imagen visual y remover la informacin de sincronizacin antes de que la seal se transmita a la computadora para su ulterior procesamiento. Despus, la computadora trata esta seal como un arreglo de pixeles y procesa estos datos para extraer la informacin deseada. El procesamiento de imgenes puede ser muy lento. Para un sensor normal de 200 000 o ms pixeles, un sistema de visin podr consumir muchos segundos, incluso minutos, para analizar la escena completa y determinar la accin que debe tomarse. El nmero de bits que se va a procesar es bastante grande. Por ejemplo, un sistema con un arreglo de 512 512 pixeles y una intensidad de 8 bits por pixel produce ms de dos millones de bits que deben procesarse. Si se recibiera una imagen continua con un rango de cuadros de 30 Hz, los bits de datos se recibiran a una razn de 8 MHz. Pocas computadoras pueden aceptar entradas con esta velocidad de datos, y de todas maneras no quedara tiempo para procesar los datos. Cuando se considera un sistema de mayor resolucin, un sistema de color o un sistema de mltiples cmaras, los requerimientos de gestin de datos se tornan astronmicos. Pueden usarse varios mtodos para reducir la cantidad de

72

CAPTULO

4 Sensores

datos que se van a manejar y, al mismo tiempo, reducir el tiempo de procesamiento. stos se explican a continuacin: a) Un planteamiento es la visin binaria que se utiliza cuando se procesa solamente una informacin en blanco y negro (se ignoran las variaciones de intensidad y tonos grises). En la visin binaria, una fotografa se convierte en una imagen binaria por medio del umbralamiento, como se ilustra en la figura 4.19. En el umbralamiento, se selecciona un nivel de brillo. Todos los datos con intensidades iguales o mayores que este valor se consideran blanco; todos los dems valores, como negro. b) Otro mtodo para recortar el tiempo de proceso es el control de la colocacin de objetos, de tal modo que los objetos de inters no pueden traslaparse en la imagen. Por lo tanto, los complicados algoritmos para separar imgenes son innecesarios, y se reduce el tiempo de procesamiento de imgenes. c) Un tercer planteamiento reduce la gestin de datos por medio del procesamiento de nicamente una ventana pequea de los datos existentes; es decir, el objeto se ubica en un campo de vista predefinido. Por ejemplo, si el robot busca una marca en una tarjeta de circuitos impresos, el sistema de televisin puede disponerse de tal modo que la marca se encuentre siempre en la esquina superior derecha. d) Una cuarta manera toma una muestra estadstica de datos y adopta decisiones basadas en esta muestra. Desgraciadamente, todos estos planteamientos ignoran algunos de los datos disponibles y, en efecto, producen un sistema de robot menos slido. Se ahorra tiempo de procesamiento, pero algunos tipos de objetos complejos no pueden reconocerse.

4.5

Seleccin de sensores

Cuando se utilizan sensores, primero que nada tiene que decidirse qu es lo que el sensor tendr que hacer y cul es el resultado que se espera. Esta seccin abordar algunas de las

a) Imagen inicial

b) 30% umbral

Figura 4.19 Umbralamiento de imgenes [Cortesa de: Handbook of Industrial Automation, R. L. Shell y E. L. Hall editores, 2000, Marcel Dekker, Nueva York]

4.5

Seleccin de sensores

73

caractersticas que deben tomarse en consideracin para la seleccin y el uso de diferentes tipos de sensores para aplicaciones de robots. Se trata de las siguientes:

i) Rango El rango es una medida de la diferencia entre los valores mnimos y mximos medidos. Por ejemplo, una galga pudiera medir valores en el rango de 0.1 a 10 newton. ii) Sensibilidad La sensibilidad se define como la proporcin del cambio de salida a un cambio de entrada. Como ejemplo, si un movimiento de 0.025 mm causa un voltaje de salida por 0.02 voltios, entonces la sensibilidad es 0.8 voltios por mm. A veces se usa para indicar el cambio ms pequeo en la entrada que ser observable como cambio de salida. Usualmente, se busca la mxima sensibilidad que ofrezca una seal lineal y precisa. iii) Linealidad La linealidad perfecta permitira que se grafique la salida versus la
entrada como lnea recta en una hoja cuadriculada. La linealidad es una medida de la constancia de la proporcin de salida y entrada. La forma de ecuacin sera y = bx donde x es la entrada, y la salida y b es una constante. Si b es variable, la relacin no es lineal. Por ejemplo, b podr ser una funcin de x, de tal modo que b = a + dx, donde el valor de d introduce una no linealidad. Una medida de no linealidad podra darse como valor de d.

iv) Tiempo de respuesta El tiempo de respuesta es aquel que se necesita para


que un cambio en la entrada sea observable como cambio estable en la salida. En algunos sensores, la salida oscila durante un tiempo breve antes de fijarse en un valor estable. Se mide el tiempo de respuesta desde el inicio de un cambio en la entrada hasta el momento en el que la salida se haya fijado en un rango especificado.

v) Precisin

Precisin es una medida de la diferencia entre los valores medidos y reales. Una precisin de 0.025 mm significa que en todas las circunstancias consideradas, el valor medido estar dentro de 0.025 mm del valor real. Para el posicionamiento de un robot y su ejecutor final, la verificacin de este nivel de precisin requerira la medicin cuidadosa de la posicin del ejecutor final respecto a la ubicacin base de referencia con una precisin general de 0.025 mm en todas las condiciones de temperatura, aceleracin, velocidad y carga. Se necesitara un equipo de medicin de precisin cuidadosamente calibrado contra estndares secundarios para verificar esta precisin.

vi) Repetibilidad La repetibilidad es una medida de la diferencia de valor entre


dos mediciones sucesivas en las mismas condiciones y es un criterio mucho menos estricto que la precisin. En tanto que las fuerzas, la temperatura y otros parmetros no hayan cambiado, se esperara que los valores sucesivos estuvieran iguales, sin importar lo mala que fuera la precisin.

vii) Resolucin La resolucin es una medida del nmero de mediciones dentro de


un rango desde el mnimo hasta el mximo. Tambin se usa para indicar el valor del incremento ms pequeo del valor que sea observable.

74

CAPTULO

4 Sensores

viii) Tipo de salida La salida puede ser en forma de un movimiento mecnico, una
corriente o voltaje elctrico, una presin o un nivel de lquido, una intensidad de luz u otra forma. Para ser til, debe convertirse en otra forma, por ejemplo, en el LVDT (transformador diferencial lineal variable) o en galgas extensomtricas que se explicaron con anterioridad. Adems de las caractersticas que se mencionan arriba, los sensores debern tener caractersticas fsicas adecuadas. Por ejemplo:

i) Tamao y peso Usualmente, tamao y peso son importantes caractersticas fsicas de los sensores. Si el sensor ha de ser montado sobre la mano o el brazo del robot, se volver parte de la masa que tiene que acelerarse y desacelerarse por parte de los motores de accionamiento de mueca y brazo. De esta manera, afecta el desempeo del robot en forma directa. La reduccin de tamao y peso es un reto para los diseadores de sensores. Uno de los primeros sensores de fuerza/par de torsin de la mueca, por ejemplo, tena un dimetro de aproximadamente 125 mm, pero se redujo a aproximadamente 75 mm de dimetro por medio de un cuidadoso rediseo. ii) Conabilidad La confiabilidad es de mxima importancia en todas las aplicaciones de robots. Puede medirse en trminos de tiempo medio sin averas (MTTF) como el nmero medio de horas entre la falla que causa que alguna parte del sensor se vuelva inoperante. En el uso industrial, se espera que el sistema del robot en total est disponible hasta 98 o 99% de los das laborales. Puesto que hay cientos de componentes en un sistema de robot, cada uno de ellos debe tener una confiabilidad muy alta. Algunos de los sensores, aunque buenos, son incapaces de resistir la presin ambiental diaria y, por ende, no pueden utilizarse en robots. Parte del requerimiento para la confiabilidad es la facilidad de mantenimiento. Un sensor de fcil reparacin no tiene que ser tan confiable como el que se esconde en las profundidades del robot. La facilidad de mantenimiento es, por tanto, una medida en trminos de tiempo medio sin reparacin (MTTR).

iii) Interconexin La interconexin de sensores con dispositivos de acondicionamiento de seales y del controlador del robot es a menudo un factor determinante en la utilidad de sensores. Los enchufes no estndares o los requerimientos para voltajes y corrientes no estndares podrn hacer que un sensor sea demasiado complejo y caro para el uso. Las seales de un sensor tambin tienen que ser compatibles con el resto del equipo que se usa si el sistema ha de trabajar correctamente.

RESUMEN
En este captulo se presentan la necesidad de sensores en la robtica, los diferentes tipos de sensores que se usan en aplicaciones robticas y los criterios de su seleccin. Se enfatizan los aspectos funcionales ms que sus modelos matemticos para que el lector sea capaz de decidir qu sensor debe usarse y cundo. Los diferentes sensores se clasifican segn sus usos funcionales, por ejemplo, posicin, velocidad, aceleracin, fuerza, etctera.

Ejercicios basados en la web

75

EJERCICIOS
4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 4.9 4.10 4.11 4.12 4.13 4.14 4.15 4.16 Defina sensibilidad y linealidad. Distinga precisin de repetibilidad. Indique las caractersticas fsicas en la seleccin de sensores. Cules son los componentes fundamentales de un sensor? Por qu se usan los trminos interno y externo para clasificar sensores? Clasifique los sensores internos. Mencione algunos sensores de velocidad. Por qu no se prefieren los sensores de posicin para velocidad y aceleracin? Existe alguna ventaja de los sensores externos sobre los internos? Mencione algunos tipos de sensores de contacto y sin contacto. Cules son las ventajas de sensores de proximidad capacitivos? Qu es una visin de mquina? Cules son los componentes principales de un sistema de visin? Cul es el componente del sensor en un sistema de visin? Cules son las dificultades tpicas en un sistema de visin? Cules son las caractersticas que debern revisarse en la seleccin de un sensor?

EJERCICIOS BASADOS EN LA WEB


Basndose en bsquedas en la web, conteste las siguientes preguntas: 4.17 Mencione por lo menos cinco empresas comerciales que fabrican diferentes tipos de sensores. Ordene los sensores segn el nombre de cada compaa. 4.18 Cules son los precios tpicos de encders, generadores tacomtricos y acelermetros? 4.19 Cul es el precio de una cmara CCD? 4.20 Mencione una compaa fabricante de robots que implemente un sistema de visin en sus robots.

Captulo

5
Transformaciones

Con el fin de controlar un robot, es necesario conocer las relaciones entre los movimientos de las articulaciones (entrada) y los movimientos del efector final (salida), ya que los primeros controlan a los segundos. Por tanto, el estudio de la cinemtica es importante cuando tienen que realizarse transformaciones entre los sistemas de referencia de las coordenadas a los que son referidos los diferentes eslabones del robot.

5.1

Arquitectura de robots

Un robot se compone de varios eslabones que se conectan en forma serial mediante articulaciones. Los grados de libertad del robot (DOF) dependen del nmero y tipos de eslabones y articulaciones, as como de la cadena cinemtica del robot.

5.5.1

Eslabones y articulaciones

Los cuerpos individuales que forman un robot se llaman eslabones. En este estudio, a menos que se seale lo contrario, se supone que todos los eslabones son rgidos, es decir, la distancia entre dos puntos dentro del cuerpo no cambia mientras ste se mueva. Un cuerpo rgido en el espacio cartesiano tridimensional tiene seis DOF. Esto implica que la posicin del cuerpo puede describirse mediante tres coordenadas de traslacin y la orientacin por medio de tres coordenadas de rotacin. Por as convenir al anlisis, ciertos cuerpos no rgidos, como cadenas, cables o correas, podrn considerarse como eslabones cuando realizan la misma funcin que los cuerpos rgidos. Desde el punto de vista cinemtico, se consideran como un solo eslabn dos o ms miembros cuando se conectan entre s sin ningn movi-

5.1

Arquitectura de robots

77

miento relativo entre ellos. Por ejemplo, un ensamble con dos engranes conectados por un eje comn representa un solo eslabn. Los eslabones de un robot se acoplan mediante pares o articulaciones cinemticas. Una articulacin acopla dos eslabones y proporciona las restricciones fsicas para el movimiento relativo entre los eslabones. No es una entidad fsica, sino simplemente un concepto que permite especificar cmo un eslabn se mueve respecto a otro. Por ejemplo, una articulacin en bisagra de una puerta le permite a sta moverse alrededor de un eje en relacin con el muro fijo. Ningn otro movimiento es posible. El tipo de un movimiento relativo permitido por una articulacin se rige por la forma de la superficie de contacto entre los miembros, que puede ser una superficie, una lnea o un punto. Por consiguiente, se les llama articulaciones de pares inferiores o superiores. Si dos eslabones pareados estn en contacto mediante una superficie, a esta articulacin se le conoce como articulacin de par inferior. De lo contrario, si los eslabones estn en lnea o contacto mediante un punto, la articulacin se conoce como de par superior. Por esta definicin, la articulacin de bisagra de la puerta siempre es una articulacin de par inferior, mientras que una bola que corre sobre un plano representa una articulacin de par superior. Los pares inferiores y superiores de mayor uso aparecen en la tabla 5.1.

i) Articulacin revoluta o rotacional, R Una articulacin revoluta o rotacional, tambin conocida como par giratorio, bisagra o articulacin de clavija, permite que dos eslabones pareados giren, uno respecto al otro, alrededor del eje de la articulacin, por ejemplo Z, tal como se muestra en la figura 5.1. Por lo tanto, una articulacin revoluta impone cinco restricciones, es decir, prohbe que uno de los eslabones se traslade respecto al otro a lo largo de los tres ejes perpendiculares X, Y y Z, junto con la rotacin alrededor de dos ejes, X y Y. Esta articulacin tiene un grado de libertad (DOF).

ii) Articulacin prismtica, P Una articulacin prismtica o par cinemtico prismtico permite que dos eslabones arreglados en pares se deslicen, uno respecto al otro, a lo largo de su eje, como se muestra en la figura 5.2. Tambin impone cinco restricciones y, por tanto, tiene un DOF. iii) Articulacin helicoidal, H Como se muestra en la figura 5.3, una articulacin helicoidal permite que dos eslabones unidos giren alrededor del eje de la articulacin y se trasladen, al mismo tiempo, a lo largo de l. Sin embargo, el traslado no es independiente, sino que se relaciona con la rotacin por el paso del tornillo. Por ende, la articulacin helicoidal tambin tiene cinco restricciones y, por consiguiente, un DOF.
X Y R

Z a) Forma geomtrica b) Representaciones

Figura 5.1

Una articulacin revoluta o rotacional

78

CAPTULO

Transformaciones

a) Forma geomtrica

b) Representaciones

Figura 5.2

Una articulacin prismtica

a) Forma geomtrica

b) Representaciones

Figura 5.3

Una articulacin helicoidal

iv) Articulacin cilndrica, C Esta articulacin permite la rotacin alrededor del eje de la articulacin y el traslado independiente a lo largo de ella, como se muestra en la figura 5.4. Por lo tanto, una articulacin cilndrica impone cuatro restricciones sobre los eslabones pareados y tiene dos DOF. v) Articulacin esfrica, S Este tipo de articulacin permite que uno de los eslabones pareados gire libremente en todas las orientaciones posibles respecto al otro alrededor del centro de una esfera. No permite el traslado relativo. Por consiguiente, impone tres restricciones y tiene tres DOF.

a) Forma geomtrica

b) Representaciones

Figura 5.4

Una articulacin cilndrica

5.1

Arquitectura de robots

79

a) Forma geomtrica

b) Representaciones

Figura 5.5

Una articulacin esfrica

a) Forma geomtrica

b) Representaciones

Figura 5.6

Una articulacin planar

vi) Articulacin planar, L Esta articulacin de tres DOF permite dos traslados a lo largo de dos ejes independientes del plano de contacto y una rotacin alrededor del eje perpendicular del plano, como se ve en la figura 5.6. La tabla 5.1 resume las articulaciones bsicas de pares inferiores, donde todas tienen contacto de superficie entre los eslabones interconectados. Otra articulacin de pares inferiores de uso comn en la robtica es la articulacin universal de dos DOF, como se muestra en la figura 5.7, que es la combinacin de dos articulaciones revolutas entrecruzadas. Ejemplos de articulaciones de pares superiores en robots son los engranes y las levas con seguidores de rodillos, donde hacen lneas de contacto.

5.1.2

Cadena cinemtica

Una cadena cinemtica es una serie de eslabones conectados por articulaciones. Cuando cada uno de los eslabones de una cadena cinemtica se acopla a un mximo de otros dos, la cadena se denomina cadena cinemtica simple.
R #1 #2

O R

#3

Figura 5.7

Una articulacin universal

80

CAPTULO

Transformaciones

Tabla 5.1

Articulaciones de pares inferiores

Nombre
Rotacional Prismtica Helicoidal Cilndrica Esfrica Planar

Smbolo
R P H C S L

Forma geomtrica y representaciones


Figura 5.1 Figura 5.2 Figura 5.3 Figura 5.4 Figura 5.5 Figura 5.6

DOF
1 1 1 2 3 3

Superficie comn
Cilindro Prisma Tornillo Cilindro Esfera Plano

Mecanismo vs. manipulador Mientras que un mecanismo puede ser un sistema mecnico de cadena abierta y cerrada, un manipulador se trata en este estudio como un sistema de cadena abierta.

Una cadena cinemtica sencilla puede ser abierta o cerrada. Es cerrada cuando cada uno de los eslabones se acopla a otros dos eslabones, como se muestra en la figura 5.8. Una cadena cinemtica es abierta si contiene exactamente dos eslabones, es decir, los eslabones de los extremos, que se acoplan solamente a un eslabn. El manipulador robtico que se muestra en la figura 5.9 se clasifica en esta categora.

5.1.3

Grado de libertad
#2

Formalmente, el grado de libertad (DOF) de un sistema mecnico se define como el nmero de coordenadas independientes o coordenadas mnimas necesarias para describir perfectamente su posicin o configuracin. As, un cuerpo rgido que se mueve en el espacio cartesiano tridimensional tiene seis DOF, tres para la posicin y tres para la orientacin. Existen varias metodologas para determinar el DOF. Uno de estos mtodos, presentado por Grubler en 1917 para mecanismos planares, fue posteriormente generalizado por Kutzbach, en 1929, para mecanismos espaciales. En forma conjunta, se conocen como el criterio de Grubler-Kutzbach y se describen a continuacin:

#3 #1

Base, #0

Figura 5.8 Un mecanismo de cuatro barras

Suponga lo siguiente: s: dimensin del espacio de trabajo (para mecanismos planares, s = 3; para espaciales, s = 6), r: nmero de cuerpos rgidos o eslabones en el sistema; p: nmero de pares cinemticos o articulaciones en el sistema; ci: nmero de restricciones impuestas por cada articulacin; c: nmero total de restricciones impuestas por articulaciones p; ni: grado de libertad relativo de cada articulacin; n: grado de libertad de todo el sistema.

5.1

Arquitectura de robots

81

b3 2 #3 #1 #2 4 #5 6 1, 2, b3, 4, 5 y 6 : movimientos de articulaciones #6 #4 5

Base, #0

Figura 5.9

Un manipulador robtico

El DOF del sistema completo, n, se determina entonces a partir del DOF total asociado con todas las articulaciones mviles menos el nmero total de restricciones impuestas por todas las articulaciones, es decir, n = s (r 1) c donde c (5.1)

c i.
i =1

Observe que 1 en la ecuacin (5.1) corresponde al eslabn fijo del sistema que tiene un DOF de cero. Adems, para los eslabones acoplados, la suma del nmero de restricciones impuestas por cada articulacin ci y el grado de libertad relativo permitido por esta articulacin ni es igual a la dimensin del espacio de trabajo s, es decir, s = ci + ni Por lo tanto, el nmero total de restricciones impuestas por todas las articulaciones puede ser reescrito c=

ci =
i =1 i =1

(s n i ) = s p

ni
i =1

(5.2)

Cuando se sustituye la ecuacin (5.2) en la ecuacin (5.1), se obtiene el DOF n como n = s (r p 1) +

ni
i

(5.3)

que es el muy conocido criterio de Grubler-Kutzbach para la determinacin de los grados de libertad de un sistema. Observe que las dimensiones del eslabn no se incluyen en la frmula, lo que ocasionalmente afecta al DOF del mecanismo debido a la disposicin geomtrica de sus eslabones.

82

CAPTULO

Transformaciones

Ejemplo 5.1

Mecanismo de cuatro barras

La figura 5.8 muestra un mecanismo plano de cuatro barras cuyos eslabones, incluida la base, se conectan en un giro mediante cuatro articulaciones rotacionales. Aqu, s = 3, r = 4 y p = 4. La ecuacin (5.3) da n = 3 (4 - 4 - 1) + (1 + 1 + 1 + 1) = 1 Por tanto, la conexin planar de cuatro barras tiene un DOF. (5.4)

Ejemplo 5.2

Un manipulador robtico

La figura 5.9 muestra el diagrama esquemtico de un robot Stanford. Su DOF puede determinarse usando la ecuacin (5.3) siendo s = 6, r = 7 (incluida la base fija) y p = 6. Entonces, segn la ecuacin (5.3), el DOF del robot es n = 6 (7 - 6 - 1) + 6 1 = 6 (5.5)

Ejemplo 5.3

Mecanismo de cinco barras

La figura 5.10 muestra un mecanismo planar de cinco barras. Hay cinco eslabones conectados en un lazo mediante cinco articulaciones rotacionales o revolutas. Por tanto, s = 3, r = 5 (incluida la base) y p = 5. La ecuacin (5.3) proporciona n = 3 (5 - 5 - 1) + 5 1 = 2 (5.6)

El mecanismo planar de cinco barras tiene dos DOF, el cual tambin se usa frecuentemente como manipulador robtico.

#2 #3 #4 #4 #0 #1 #2

#3

#1

#0

Figura 5.10 Un mecanismo de cinco barras

Figura 5.11 Un mecanismo de paralelogramo doble

5.2

Posicin de un cuerpo rgido

83

Ejemplo 5.4

Un mecanismo de paralelogramo doble

La figura 5.11 muestra un mecanismo de paralelogramo doble, donde s = 3, r = 5 (incluida la base fija) y p = 6. Segn lo anterior, la ecuacin (5.3) proporciona n = 3 (5 - 6 - 1) + 6 1 = 0 (5.7)

lo que interpreta el sistema como una estructura con cero DOF. Esto no es cierto, puesto que se sabe que el mecanismo tiene un DOF. En realidad, el eslabn 4 tiene una longitud igual que la del eslabn 1. Por ende, el eslabn 4 es cinemticamente redundante y puede quitarse sin destruir la cadena cinemtica bsica ni el comportamiento de entrada/salida del mecanismo. En general, si el criterio de Grubler-Kutzbach, ecuacin (5.3), proporciona n > 0, el mecanismo tiene n DOF. Si el criterio proporciona n = 0, se trata de una estructura con cero DOF, y si n < 0, el sistema es una estructura estticamente indeterminada con restricciones redundantes. Sin embargo, se presentan excepciones como la que se muestra en la figura 5.11, que no obedece al criterio de Grubler-Kutzbach. Para estos sistemas, Tsai (1999) describe un criterio de movilidad diferente, por ejemplo, el criterio de movilidad del lazo, etc., que puede emplearse para determinar su DOF.

5.2

Posicin de un cuerpo rgido

El movimiento de un cuerpo rgido en el espacio Diferencia entre cartesiano tridimensional comprende la traslacin y posicin y conguracin la rotacin. Mientras que la traslacin se define mediante el uso de las tres coordenadas cartesianas, la Estos trminos signican lo mismo rotacin necesita tres coordenadas angulares. Por lo en este libro, es decir, la posicin de un punto sobre un cuerpo rgido y la tanto, el movimiento del cuerpo rgido puede definirse en forma completa usando las seis coordenadas. En el orientacin del cuerpo rgido. estudio de la cinemtica de manipuladores robticos, se trata constantemente con la posicin y orientacin de varios cuerpos en el espacio. Los cuerpos de inters incluyen los eslabones del manipulador, las herramientas y las piezas de trabajo. Con el fin de identificar la posicin y orientacin de un cuerpo, es decir, su postura o configuracin, se establece un sistema de coordenadas fijas que se llama sistema o marco de referencia fijo. Luego se emplea un sistema de coordenadas cartesianas que se adjunta al cuerpo mvil para describir su postura. La postura o la posicin y orientacin de un cuerpo rgido respecto al sistema de coordenadas de referencia se conoce a partir de los seis parmetros independientes. Como se muestra en la figura 5.12, supongamos que el sistema de coordenadas X-Y-Z fuese el sistema de referencia fijo. El sistema de coordenadas U-V-W se adjunta al cuerpo mvil y se denomina sistema de referencia mvil. Queda claro que la postura o configuracin del cuerpo rgido se conoce si se sabe la posicin del sistema mvil respecto al sistema fijo. Esta posicin se

84

CAPTULO

Transformaciones

determina a partir de la posicin de cualquier punto sobre l, por ejemplo, el origen O o el punto P, y la orientacin del sistema mvil respecto a al sistema fijo.

5.2.1

Descripcin de la posicin

La posicin de cualquier punto P sobre un cuerpo rgido en movimiento respecto a un sistema de referencia fijo puede describirse mediante el vector cartesiano tridimensional p como se indica en la figura 5.12. Si las coordenadas del punto P o los componentes del vector p son px, py, pz en el sistema fijo F, se denota como [p]F

donde el subndice F se refiere al sistema de referencia en el que el vector p se representa. Los subndices x, y y z representan las proyecciones del vector de posicin p sobre los ejes de coordenadas del sistema de referencia fijo, a decir, a lo largo de X, Y y Z, respectivamente. El vector p puede expresarse en forma alternativa como (5.9) donde x, y y z denotan los vectores unitarios a lo largo de los ejes X, Y y Z del sistema F, respectivamente, como se indica en la figura 5.12. Sus representaciones en el sistema F, es decir, [x]F, [y]F y [z]F son como sigue: [x]F 0 , [y]F 1 , y [ z]F 0 p = px x + py y + pz z

LM p OP Mp P MN p PQ
x y z

(5.8)

Si se sustituye la ecuacin (5.10) en la (5.9), puede demostrarse que la expresin del vector p en el sistema F, es decir, [p]F, es la misma que se da en la ecuacin (5.8). Observe que si el vector p se representa en otro sistema de referencia fijo al del sistema F, tendr diferentes componentes a lo largo de los ejes de coordenadas nuevos, a pesar de que la posicin real del punto P no ha cambiado. Por lo tanto, se escribir un vector normalmente sin mencionar
pz Z W pw p z w x px X U O u pu v y P pv V

LM1OP MM PP N0Q

LM0OP MM PP N0Q

LM0OP MM PP N1Q

(5.10)

Sistema mvil, M py Y

Sistema fijo, F

Figura 5.12

Descripcin espacial

5.2

Posicin de un cuerpo rgido

85

algn sistema, por ejemplo, como ocurre en la ecuacin (5.9), la cual se llama, en contraste con las ecuaciones (5.8) y (5.10), representacin de un sistema invariante. Sin embargo, es importante observar que cuando se resuelve un problema numrico, debe elegirse un sistema de coordenadas adecuado.

Ejemplo 5.5

Posicin de un punto en el sistema jo

Si las coordenadas de un punto P en el sistema de coordenadas fijas son px = 3, py = 4 y pz = 5, entonces el vector de posicin p, segn la ecuacin (5.8), puede calcularse con 3 [p]F

LM OP M4 P MN5PQ

5.2.2

Descripcin de la orientacin

La orientacin de un cuerpo rgido respecto al sistema fijo puede describirse de diferentes maneras. Por ejemplo, i) Representacin por coseno director; ii) Representacin por los ngulos de Euler; y otras. Cada una tiene sus propias limitaciones. De ser necesario, puede cambiarse de una representacin a otra durante el control de movimiento de un robot para evitar sus limitaciones. Aqu se representarn las dos maneras previamente sealadas, que son suficientes para entender los conceptos subyacentes y sus limitaciones. Quien se interese en otras representaciones, podr recurrir a los libros de Tsai (1999) o ngeles (2003).

i) Representacin del coseno director Para describir la orientacin o la


rotacin de un cuerpo rgido, considere el movimiento de un sistema mvil M respecto a uno fijo F con un punto fijo, por ejemplo, el origen sistema fijo O, como se muestra en la figura 5.12. Suponga que u, v y w denotan los tres vectores unitarios que apuntan a lo largo de los ejes de coordenadas U, V y W de la trama mvil M, respectivamente, los cuales son parecidos a los vectores unitarios x, y y z, a lo largo de X, Y y Z de la trama fija F. Puesto que cada uno de los vectores unitarios u, v o w denota la posicin de un punto a una distancia de unidad del origen en los ejes de la trama M, ellos se expresan usando sus proyecciones sobre los ejes X, Y, Z o sobre el sistema F como (5.11a) u = ux x + uy y + uz z (5.11b) v = vx x + v y y + vz z (5.11c) w = wx x + wy y + wz z donde ux, uy y uz son los componentes del vector unitario u, a lo largo de los ejes X, Y y Z, respectivamente. De manera similar, vx, vy y vz y wx, wy y wz se definen para los vectores unitarios v y w, respectivamente. Ahora el punto P del cuerpo rgido, como se muestra en la figura 5.12 y lo da la ecuacin (5.8), se expresa en el marco de referencia mvil M como p = puu + pv v + pw w (5.12)

86

CAPTULO

Transformaciones

donde pu, pv y pw son los componentes del vector p a lo largo de los ejes U, V y W del sistema de referencia mvil M. La sustitucin de las ecuaciones (5.11a-c) en la ecuacin (5.12) da como resultado p = (pu u x + pvv x + pww x) x + (puuy + pvvy + pwwy) y + (puuz + pvvz + pwwz) z (5.13) Si se compara el lado derecho de las ecuaciones (5.8) y (5.13), se obtienen las siguientes identidades: px = ux pu + vx pv + wx pw (5.14a) py = uypu + vy pv + wy pw (5.14b) pz = uz pu + vz pv + wz pw (5.14c) (5.15) donde [p]F y [p]M son las representaciones del vector tridimensional p en los sistemas F y M, respectivamente, y Q es la rotacin de 3 3 o matriz de orientacin que transforma la representacin del vector p del sistema M al F. stas se denotan como sigue: [p]F Las ecuaciones (5.14a-c) se escriben en forma de matriz como [p]F = Q [p]M

Observe las columnas de la matriz Q. Son nada ms los componentes de los vectores unitarios ortogonales (es decir, con 90 entre uno y otro) u, v y w en el sistema de referencia fijo F, que deben cumplir con las siguientes seis condiciones ortogonales: uTu = vTv = wTw = 1, y uTv ( vTu) = uTw ( wTu) = vTw ( wTv) = 0 Adems, para los tres vectores ortogonales u, v y w, lo siguiente es vlido: (5.17)

LM p OP LM p OP LMu M p P , [p] M p P , y Q Mu MN p PQ MN p PQ MNu LMu x v x w xOP = Mu y v y w y P MN u z v z w z PQ


x u v y z
M

x y z

vx vy vz

wx wy wz

OP PP Q

(5.16)

(5.18) u v = w, v w = u, y w u = v Por tanto, la matriz de rotacin de 3 3 Q, que denota la orientacin del sistema mvil M respecto al sistema fijo F, se llama ortogonal. Ella cumple con las siguientes propiedades debido a la ecuacin (5.17): (5.19) QTQ = QQT = 1; donde det (Q) = 1, y Q- 1 = QT donde 1 es la matriz de identidad de 3 3. Adems, si se quiere encontrar la descripcin de rotacin en el sistema F respecto al sistema M denotado por Q, puede derivarse de modo similar. Puede demostrarse que Q = QT. Observe tambin que, segn la ecuacin (5.16), el elemento (1, 1) de Q es el coseno del ngulo entre los vectores u y x, es decir, uTx. Lo mismo es vlido para los dems elementos de Q. Por lo tanto, esta matriz de rotacin se conoce como Representacin por coseno director de la matriz de rotacin. Esta representacin requiere nueve parmetros, a saber, los elementos de la matriz de 3 3 Q. Sin embargo, los nueve parmetros no son independientes, ya que tambin tienen que cumplir con las seis condiciones de la ecuacin (5.17). Por lo tanto, slo tres son independientes y deberan ser suficientes para definir el movimiento

5.2

Posicin de un cuerpo rgido

87

de rotacin tridimensional. Empero, es difcil elegir el conjunto de tres parmetros independientes. ste es el inconveniente de la representacin del coseno director.

Ejemplo 5.6

Rotaciones elementales

Suponga que un sistema de referencia M coincide con el sistema de referencia fijo F. Entonces se gira el sistema M con un ngulo a alrededor del eje Z, como se muestra en la figura 5.13a). Los vectores unitarios del nuevo sistema M pueden describirse en trminos de sus componentes en el sistema F como sigue: [u ] F

donde S sen; C cos. Por lo tanto, la matriz de rotacin denominada por QZ se calcula con Qz

LMCa OP M Sa P , [v] MN 0 PQ

LM- Sa OP M Ca P , y [ w] MN 0 PQ
- Sa Ca 0 0 0 1

LM0OP M0P MN1PQ

(5.20)

LMCa M Sa MN 0

OP PP Q

(5.21)

En forma parecida, puede demostrarse que la rotacin del ngulo b alrededor del eje Y y con un ngulo g alrededor del eje X, se dan, respectivamente, por
Z, W Sistema, M V V z, w x u X U a) Rotacin alrededor del eje Z Y py p py9 py9 p9 P p9 px9 Sistema rotado, F Sistema, F X Sistema, F pv v y Y Y Sistema, M py p P U pu Sistema, F

X px b) Transformacin de coordenadas

px p 9 x c) Rotacin vectorial

Figura 5.13

Interpretaciones alternativas de la matriz de rotacin

88

CAPTULO

Transformaciones

QY

LM Cb M 0 MN-Sb

0 Sb 1 0 1 0 , y QX 0 Cg 0 Cb 0 Sg

OP PP Q

LM MM N

0 - Sg Cg

OP PP Q

(5.22)

Las matrices mencionadas en las ecuaciones (5.21) y (5.22) se llaman rotaciones elementales y son tiles para describir cualquier rotacin arbitraria donde se conozcan los ngulos respecto a los ejes de coordenadas.

Ejemplo 5.7

Propiedades de matrices de rotacin elemental

De las ecuaciones (5.21) y (5.22), la multiplicacin de matrices de, por ejemplo, QT z y Qz, da como resultado lo siguiente: Q zT Qz

LM Ca = M- Sa MN 0

Sa Ca 0

0 0 1

OP LMCa PP MM Sa QN0

- Sa Ca 0

0 1 0 0 0 = 0 1 0 1 0 0 1

OP PP Q

LM MM N

OP PP Q

Usando la definicin de determinante de una matriz dada en el apndice A, puede fcilmente calcularse que det(Qz) = 1. Por ende, Qz cumple con las dos propiedades de una matriz de rotacin. Del mismo modo, puede demostrarse que las otras dos matrices tambin tienen las propiedades de una matriz de rotacin.

Ejemplo 5.8

Transformacin de coordenadas

Considere dos sistemas de coordenadas con un origen comn. Uno de ellos gira con un ngulo a alrededor del eje Z. Suponga que [p]F y [p]M son las representaciones vectoriales del punto P en los sistemas F y M, respectivamente, como se muestra en la figura 5.13b). Con base en geometra simple, la relacin entre las coordenadas del punto P en los dos sistemas de coordenadas se da por px = pu Ca - pv Sa (5.23) py = pu Sa + pv Ca (5.24) pz = p w (5.25) donde px, py y pz, as como pu, pv y pw, son las tres coordenadas del punto P a lo largo de los ejes de los sistemas F y M, respectivamente. Es fcil darse cuenta a partir de las ecuaciones (5.23) a (5.25) que el vector [p]F [px, py, pz]T no es otra cosa que (5.26) donde [p]M [pu, pv , pw] y QZ se calculan con la ecuacin (5.21). La matriz QZ no solamente representa la orientacin del sistema M respecto al sistema fijo F, como en la figura 5.13a), sino tambin transforma la representacin de un vector desde el sistema M, por ejemplo, [p]M, a otro sistema F, es decir, [p]F.
T

[p]F = QZ [p]M

5.2

Posicin de un cuerpo rgido

89

Ejemplo 5.9

Rotacin del vector

Considere el vector p que se obtiene mediante la rotacin de un vector p en el plano X-Y con un ngulo a alrededor del eje Z del sistema de referencia F de la figura 5.13c). Suponga que px , py y pz son las coordenadas del vector p en el sistema F, es decir, [p]F [px , py , pz ]T. Entonces, el vector p en el sistema F [p]F tiene los siguientes componentes: px = px Ca - py Sa py = px Sa + py Ca pz = pz (5.27) (5.28) (5.29)

que pueden obtenerse mediante la rotacin del sistema fijo F por lo cual el vector p se adjunta con un ngulo a en sentido opuesto al de las manecillas del reloj alrededor del eje Z, de tal manera que el vector p alcanza al vector p, como se indica en la figura 5.13c). Las ecuaciones de la (5.27) a la (5.29) pueden reescribirse en una forma ms compacta como [p]F = QZ [p]F donde QZ se calcula con la ecuacin (5.21). (5.30)

ii) Representacin de los ngulos de Euler Los ngulos de Euler constituyen una representacin mnima de la orientacin, obtenida al componer las tres rotaciones elementales respecto a los ejes de los sistemas de referencia actuales. Existe la posibilidad de 12 conjuntos distintos de ngulos de Euler respecto a la secuencia de posibles rotaciones elementales, a saber, XYZ, XZY, XZX, XYX, YXZ, YZX, YXY, YZY, ZXY, ZYZ, ZXZ y ZYX. De todos ellos, se utiliza ms comnmente el conjunto ZYZ en la representacin de ngulos de Euler. Esto implica que el sistema fijo F gira primero alrededor de su eje Z para alcanzar un sistema intermedio A, luego lo hace alrededor del eje Y del sistema rotado, es decir, Ydel sistema A, para llegar a otro sistema intermedio B y finalmente alrededor del eje Z del sistema que fue rotado dos veces, es decir, Z del sistema B, para llegar al sistema deseado M, como se muestra en la figura 5.14. Suponga que f, q y j son los ngulos alrededor de Z, Y y Z , respectivamente. La rotacin total descrita por estos ngulos se obtiene entonces como las composiciones de las rotaciones elementales, como se explica a continuacin, en la figura 5.14. Gire el sistema fijo F con el ngulo f alrededor del eje Z, como se indica en la figura 5.14a). Esta rotacin se describe con la matriz de rotacin QZ, como se deriva en la ecuacin (5.21), es decir,

Qz

LMCf Sf MM 0 N

- Sf Cf 0

OP P 1P Q
0 0

(5.31a)

90

CAPTULO

Transformaciones

Gire el sistema actual A con un ngulo q alrededor de su eje Y, figura 5.14b). Esta rotacin se denota por QY y se describe con la matriz de rotacin QY de la ecuacin (5.22), es decir, QY

LM Cq 0 MM-Sq N

0 1 0

OP P Cq P Q
Sq 0 0 0

(5.31b)

Gire el sistema B con un ngulo j alrededor de su eje Z, figura 5.14c). Esta rotacin se denota por Qz y se describe con la matriz de rotacin QZ de la ecuacin (5.21), es decir, Qz

LMCj Sj MM 0 N

- Sj Cj 0

OP P 1P Q

(5.31c)

La orientacin resultante del sistema M denotada por Q se obtiene a partir de la composicin de las tres rotaciones elementales QZ, QY y Qz respecto a sus referencias actuales. Lo anterior se obtiene por medio de posmultiplicacin de las sucesivas matrices de rotacin, es decir, Q = QZ QY QZ (5.31d)
Z, Z Z Sistema, A Y Y X Sistema, F Sistema, B Z, Z

Sistema, A Y, Y

X a) Rotacin alrededor del eje Z Z ,W

X X b) Rotacin alrededor del eje Y, es decir, eje Y

Sistema, M V Y

Sistema, B

U X c) Rotacin alrededor del eje Z, es decir, eje Z

Figura 5.14

Los ngulos de Euler ZYZ

5.2

Posicin de un cuerpo rgido

91

cuyos elementos se calculan a continuacin:

LMCf Cq Cj - Sf Sj Q Sf Cq Cj + Cf Sj MM N - Sq Cj

- Cf Cq Sj - Sf Cj Cf Sq - Sf Cq Sj + Cf Cj Sf Sq Sq Sf Cq

OP PP Q

(5.31e)

La desventaja de la representacin mnima de ngulos de Euler, ecuacin (5.31e), es que a veces fracasa en encontrar la solucin para un problema inverso, es decir, que una matriz de rotacin dada encuentre los ngulos de rotacin de Euler equivalentes. Por ejemplo, si Q se da de la siguiente manera:

LMq Q Mq MNq

11 21 31

q12 q 22 q 32

q13 q23 q33

OP PP Q

(5.32a)

entonces el ngulo f puede obtenerse a partir de la comparacin de (1, 3) y (2, 3) elementos de Q dados por las ecuaciones (5.31e) y (5.32a), es decir, f = atan 2

FG q , q IJ H Sq Sq K
23 13

(5.32b)

donde atan2(y, x) es la funcin de dos argumentos que proporciona una solucin nica para el ngulo. La solucin de la ecuacin (5.32b) existe, siempre y cuando Sq 0, es decir, cuando q 0, o np para n = 1, 2, . . . Un aspecto importante de la representacin de rotacin, ya sea un coseno director o un ngulo de Euler o cualquier otra, es que, a diferencia de los vectores es no conmutativa, es decir, el orden de rotaciones es importante para derivar la matriz de rotacin correcta. Como se ilustra en la figura 5.15a-c), la rotacin de un paraleleppedo alrededor del eje Z y del eje actual Y es distinta de la rotacin alrededor del eje Y del eje actual Z, como se muestra en la figura 5.16a-c). A fin de mostrar esto en forma matemtica, la matriz resultante para las rotaciones alrededor de los ejes Z y Y, denotada por QZY, puede darse de esta manera: QZY = QY QZ donde QY y QZ son como sigue: QY

LM0 = M1 MN0

0 1 0 0 1 0

OP PP Q

(5.33a)

QZ

LM C90 0 S 90 OP LM 0 0 MM 0 1 0 PP = MM 0 1 N- S 90 0 C90Q N-1 0 LMC90 - S 90 0OP LM0 -1 M S 90 C 90 0P = M1 0 MN 0 0 1PQ MN0 0

1 0 ; 0

OP PP Q 0O 0P P 1P Q

(5.33b)

Observe que el orden de multiplicacin en la ecuacin (5.33a) es contrario al de la ecuacin (5.31d). Esto se debe al hecho de que las rotaciones en la ecuacin (5.31d) se determi-

92

CAPTULO

Transformaciones
W B C V D U

Z W B C A D V Y

X a)

U V A Z D U X b)

B W

X c)

Figura 5.15

Rotacin sucesiva de un paraleleppedo alrededor de los ejes Z y Y

nan respecto a los sistemas en uso, mientras que en la ecuacin (5.33a) lo hacen respecto al sistema fijo. El resultado de la ecuacin (5.33a) puede verificarse a partir de la figura 5.15c) utilizando el concepto de representacin por coseno director de una matriz de rotacin, como se explic anteriormente. Del mismo modo, puede obtenerse la matriz de rotacin resultante para las rotaciones alrededor de los ejes Y y Z, que son denotadas por QYZ como

QYZ = QZ QY

LM 0 = M0 MN-1

-1 0 0 1 0 0

OP PP Q

(5.33c)

Cuando se comparan las ecuaciones (5.33a) y (5.33c), resulta obvio que las dos secuencias de rotaciones son diferentes. Sin embargo, lo mismo no es vlido para la representacin vectorial de un punto P respecto a O. Puede sumarse el vector b a a o el a a b, como en la figura 5.17. Ambas sumas resultarn en el mismo vector p.

5.3

Transformacin de coordenadas

Como se ilustra en la subseccin 5.2.1, la posicin de un cuerpo rgido en el espacio se expresa en trminos de la posicin de un punto apropiado sobre el cuerpo, por ejemplo, OM en la figura 5.18 respecto al origen O del sistema fijo F, mientras que su orientacin o rotacin se expresa en trminos de los componentes del vector unitario del sistema mvil M, adjun-

5.3
Z

Transformacin de coordenadas
Z

93

W B C A V Y D

A B C D U

V Y

a)

Z V A D U c) B C Y W

b)

Figura 5.16 Rotacin sucesiva de un paraleleppedo alrededor de los ejes Y y Z


P Z Z p b p p9 OM a O Y U F X X o Y W V P

Figura 5.17

Suma de dos vectores

Figura 5.18

Dos sistemas de coordenadas

tada al cuerpo, como se explic en la subseccin 5.2.2. En la figura 5.18, la relacin entre los dos sistemas de coordenadas, a saber, F y M, se deriva como sigue: considere un punto arbitrario P sobre el cuerpo rgido por el cual el sistema M se adjunta a OM. Suponga que p y p son los vectores que denotan el punto P desde el origen de los sistemas de referencia F y M, respectivamente. Adems, suponga que o es el vector posicional que denota la traslacin del origen del sistema M, OM desde el del sistema F, es decir, O. De este modo, p = o + p (5.34) Observe que si p se conoce en el sistema mvil M, entonces no es otra cosa que las coordenadas del punto P en el sistema M, es decir, [p]M. Adems, si Q es la orientacin del sistema M respecto al sistema F, entonces el vector p en el sistema F es [p]F = Q[p]M. Por lo tanto, el vector p en el sistema fijo F, es decir, [p]F, puede obtenerse como [p]F = [o]F + Q[ p ]M (5.35)

94

CAPTULO

Transformaciones

La ecuacin (5.35) representa la transformacin de coordenadas del punto P del cuerpo rgido desde el sistema mvil M al sistema de referncia fijo F, mientras que la traslacin y la rotacin se involucran.

5.3.1

Transformacin homognea

La transformacin de coordenadas dada por la ecuacin (5.35) puede reordenarse como

donde 0 [0, 0, 0]T es el vector tridimensional de ceros. La ecuacin (5.36) se escribe en forma compacta como (5.37) [p] F = T [p ] M donde [P]F y [P]M son los vectores en cuatro dimensiones que se obtienen cuando uno se coloca en el fondo de los vectores tridimensionales originales [p]F y [p]M, respectivamente, como el cuarto elemento, mientras que la matriz T de 4 4 se llama matriz de transformacin homognea. La ecuacin (5.36) o (5.37) es sencilla en el sentido de Por qu homogneo? que la transformacin de un vector, que incluye tanto La matriz T de la ecuacin (5.36) se la traslacin como la rotacin desde el sistema M al ocupa tanto de la traslacin como sistema F, se realiza por simple multiplicacin de una de la rotacin del sistema adjunto al matriz de 4 4 en lugar de una multiplicacin de macuerpo respecto al sistema de refetrices y suma de vectores, como en la ecuacin (5.35). rencia jo. Sin embargo, desde el punto de vista de la complejidad computacional, es decir, de los nmeros de multiplicaciones/divisiones y sumas/restas que se requieren en un programa de computacin, la ecuacin (5.35) es ms econmica en comparacin con las ecuaciones (5.36) y (5.37), puesto que se tendrn que ejecutar algunas multiplicaciones y sumas innecesarias con unos y ceros. Aqu cabe sealar que para la matriz T de transformacin homognea, no es vlida la propiedad de ortogonalidad, es decir, (5.38) T TT 1 o T-1 TT Sin embargo, el inverso de la matriz T de transformacin homognea puede obtenerse fcilmente a partir de la ecuacin (5.36) como T 1 =

LM[p] OP = LM Q N 1 Q N0
F

[ o] F 1

OP LM[p ] OP QN 1 Q
M

(5.36)

LMQ MN 0

- Q T [ o] F 1

OP PQ

(5.39)

Ejemplo 5.10

Traslacin pura

Recurriendo a la figura 5.19a), considere el sistema M que se obtiene a partir del sistema F mediante su traslacin por dos unidades a lo largo del eje Y y una unidad a lo largo del eje Z. Su relacin se representa por una matriz de transformacin homognea, es decir,

5.3

Transformacin de coordenadas

95

LM1 0 T M MM0 N0
Ejemplo 5.11

0 1 0 0

0 0 1 0

0 2 1 1

OP PP PQ

(5.40)

Rotacin pura

Considere la figura 5.19b), donde el sistema M se obtiene a partir del sistema de referencia F por medio de su rotacin alrededor de su eje Z con un ngulo de 30. La matriz de transformacin homognea para la rotacin pura se proporciona entonces por

LMC30 S30 TM MM 0 N0
Z

- S30 0 0 C30 0 0 = 0 1 0 0 0

OP PP P 1Q

LM 3 MM 12 MM 2 MN 0 0

1 2

0 0 0 1 0

3 2 0 0
Z, W

OP P 0P P 0P P 1Q
V

(5.41)

W M V 2 1 Y X a) Y V U M 30 2 1 X F c) 30 U F

30

U X F

b)

Figura 5.19

Diferentes movimientos

96

CAPTULO

Transformaciones

Ejemplo 5.12

Movimiento general

Como se muestra en la figura 5.19c), el sistema M se obtiene del sistema de referencia F mediante su traslacin a lo largo de los ejes X y Y por 2 y 1 unidades, respectivamente, seguida por una rotacin de 30 alrededor de W. La matriz de transformacin homognea correspondiente se obtiene de la multiplicacin de las matrices de transformacin homognea que representan la traslacin y la rotacin puras, respectivamente, respecto a los sistemas de referencia originales, es decir, (5.42) donde los subndices t y r significan traslacin y rotacin, respectivamente, y donde Tt y T se proporcionan con las ecuaciones (5.40) y (5.41), respectivamente. La matriz T resultante se proporciona con T Tt Tr

LMC30 S30 TM MM 0 N0
Ejemplo 5.13

- S30 0 2 C30 0 1 = 0 1 0 0 0

OP PP P 1Q

LM 3 MM 12 MM 2 MN 0 0

1 2

0 2 0 1 0

3 2 0 0

OP PP 1 P 0P P 1Q

(5.43)

Transferencia de un punto

Recurriendo a la figura 5.20, considere un punto P que se expresa en el sistema F y que se denota con el vector p1. Suponga que p2 denota la nueva ubicacin de este punto despus de rotar p1 con 30 alrededor del eje Z, y luego trasladando 2 unidades a lo largo del eje Y y 1 unidad a lo largo del eje Z. La relacin entre p1 y p2 puede describirse como

[p2]F

LMC30 S30 = T[p ] , donde T T T = M MM 0 N 0


1 F t r

- S30 C30 0 0

0 0 0 2 1 -1 0 1

OP PP PQ

(5.44a)

donde Tt y Tr corresponden a la traslacin pura y a la rotacin pura, es decir,

Observe que el orden de multiplicaciones en la ecuacin (5.44a), que se parece a la ecuacin (5.33a) o (5.33c), y los movimientos se especifican respecto al sistema fijo F en lugar de los sistemas de referencia originales.

LM1 0 T = M MM0 N0
t

0 0 1 0 0 1 0 0

OP Py -1P P 1Q
0 2

LMC30 S30 T =M MM 0 N0
r

- S30 0 0 C30 0 0 0 1 0

OP 0 P 0P P 1Q

(5.44b)

5.3

Transformacin de coordenadas

97

Z 2 30 p1 p2 Y P 1

Figura 5.20

Transferencia de un punto

Ejemplo 5.14

Producto de dos transformaciones homogneas

Suponga que TA y TB son proporcionados por

TA

LMC30 S30 =M MM 0 N0

- S30 C30 0 0 S 45 C 45 0 0

0 0 1 0 0 0 1 0

2 1 0 1 1 1 0 1

OP PP PQ
(5.45)

TB

LM C45 - S 45 =M MM 0 N 0

OP PP PQ

que se representan grficamente en la figura 5.21. Observe que cada una de las transformaciones TA o TB es un producto de las dos transformaciones elementales que representan la traslacin y rotacin respecto a los sistemas de referencia dados. Por ejemplo, la matriz TA puede escribirse como (5.46a) donde las matrices de transformacin homognea de 4 4, TAt y TAr, se asocian con la traslacin y rotacin desde el sistema fijo F al sistema A, respectivamente; es decir, TA = TAt TAr

TAt

LM1 0 = M MM0 N0

0 1 0 0

0 0 1 0

C30 - S30 2 S30 C30 1 , y TAr = 0 0 0 0 0 1

OP PP PQ

LM MM MN

0 0 1 0

0 0 0 1

OP PP PQ

(5.46b)

98

CAPTULO

Transformaciones

YB Y YA XA 1 1 F 2 1 45 30 XB

X a) Transformaciones respecto a los sistemas actuales

YA

XA 1 1 45 30 1

YB

XB X 2 b) Transformaciones respecto al sistema fijo F

Figura 5.21

Interpretaciones grcas de los productos de dos matrices de transformacin homognea

El total de transformaciones por alcanzar el sistema B desde el sistema F se obtiene ahora como T = TA TB (5.47a) La matriz T de 4 4 se expresa como

LM 3 + 1 MM 2 2 T = M- 3 - 1 MM 2 2 0 MN 0

3 -1 2 2 3 +1 2 2 0 0

0 0 1 0

OP P 3+ 3P P 2 P 0 P 1 P Q
3+ 3 2

(5.47b)

Observe que si se ejecutan las mismas transformaciones respecto al sistema fijo F, como se muestra en la figura 5.21b), el orden de multiplicaciones tiene que ser invertido, es decir, T = [TB]F [TA]F (5.48a) donde [TA]F y [TB]F tambin se obtienen de las multiplicaciones de orden inverso de las traslaciones y rotaciones, por ejemplo, [TA]F = [TAr]F [TAt]F

5.3

Transformacin de coordenadas

99

donde TAt y TAr son las matrices de 4 4 proporcionadas en la ecuacin (5.46b). Las matrices [TA]F, [TB]F y T se calculan como sigue:

LMC30 S30 0 M [T ] = M S30 C30 0 MM 0 0 1 MN 0 0 0 LM C45 S45 0 - S 45 C 45 0 [T ] = M MM 0 0 1 MN 0 0 0 LM 3 1 3 1 MM 2 2 2 2 3 1 3 1 T = M MM 2 2 2 2 0 MN 0 0 0


A F B F

1 2 3 1 2 0 1 3

OP 0 P 0 P P 1 P Q
2

OP PP PP PQ

(5.48b)

0 0 1 0

53 3 2 2 3 3 2 2 0 1

OP PP PP PP Q

(5.48c)

Cuando se comparan las ecuaciones (5.47b) y (5.47c), slo las coordenadas del origen del sistema B son diferentes, como queda claro a partir de las figuras 5.21a-b).

Ejemplo 5.15

Vericacin de la ecuacin (5.48c) por medio de MATLAB

Para verificar la ecuacin, deben usarse los siguientes comandos:


>tam=[cos(pi/6),-sin(pi/6),0,sqrt(3)-1/2;sin(pi/6),cos(pi/ 6),0,1+sqrt(3)/2;0,0,1,0;0,0,0,1]; >tbm=[cos(pi/4),sin(pi/4),0,sqrt(2);-sin(pi/ 4),cos(pi/4),0,0;0,0,1,0;0,0,0,1]; >tm=tbm*tam tm = 0.9659 0.2588 0 3.6049 -0.2588 0.9659 0 0.4483 0 0 1.0000 0 0 0 0 1.0000

donde tam y tbm representan las matrices [TA]F y [TB]F, respectivamente, mientras que la matriz resultante [TA]F se denota por tm. Puede verificarse fcilmente que la ecuacin (5.48c) es la expresin proporcionada pot tm.

100

CAPTULO

Transformaciones

5.4

Los parmetros de Denavit y Hartenberg (DH)

Un manipulador robtico consiste en varios eslabones, usualmente conectados por articulaciones de un solo grado de libertad, por ejemplo, una articulacin rotacionalo prismtica. Con el fin de controlar el efector final respecto a la base, es necesario encontrar la relacin entre los sistemas de coordenadas adjuntos al efector final y la base. Esto puede obtenerse a partir de la desLa primera aparicin cripcin de las transformaciones de coordenadas adde los parmetros DH juntadas a todos los eslabones que forman la descripLos parmetros DH aparecieron por cin general de manera recursiva. Para este propsito, vez primera en 1955 (Denavit y Harel material que se presenta en la seccin previa para tenberg, 1955) para representar una describir la posicin y orientacin del cuerpo rgido es lnea dirigida que no es otra cosa que el eje de una articulacin de par intil para obtener la composicin de transformaciones ferior. de coordenadas entre los sistemas consecutivos. Como primer paso, deber derivarse un mtodo sistemtico general para definir la posicin y orientacin relativa de los dos eslabones consecutivos. El problema es la definicin de los dos sistemas adjuntos a los dos eslabones sucesivos y el clculo de la transformacin de coordenadas entre ellos. En general, los sistemas de referencia se eligen de manera arbitraria mientras estn de manera adjunta al eslabn al que se refieran. No obstante, conviene establecer algunas reglas para la definicin de los sistemas de eslabones. La convencin que aqu se adopta para un robot de cadena serial como el que se muestra en la figura 5.22 es que tiene n + 1 eslabones, es decir, vnculo #0, ... #n, acoplados por n articulaciones, es decir, articulacin 1, ... n. Ahora, en la figura 5.23,
4 a) Supongamos que el eje i denota el #3 eje de la articulacin que conecta 3 i el eslabn i 1 al vnculo i. b) Un sistema de coordenadas Xi, Yi, Zi #i #2 se adjunta al extremo del eslabn i 1, no al eslabn i, para i = 1, ... 2 i+1 n + 1. c) Elija el eje Zi a lo largo del eje de la #1 n articulacin i, cuyo sentido positi#n vo puede tomarse hacia cualquier 1 direccin del eje. Base fija d) Ubique el origen Oi en la intersecEfector final cin del eje Zi con la perpendicular Figura 5.22 Manipulador serial comn a Zi1 y Zi. Tambin localice Oi sobre Zi en la interseccin de la perpendicular comn a Zi y Zi+1. e) Elija el eje Xi a lo largo de la perpendicular comn a los ejes Zi1 y Zi con la direccin del primero al ltimo. f ) Elija el eje Yi para que se complete con un sistema de referencia derecho.

5.4

Los parmetros de Denavit y Hartenberg (DH)


Zi, Z9i, Z 0i Articulacin i Zi, Zi + 1

101

Zi 1

Eslabn i 1 Articulacin i 1

Eslabn i Articulacin i + 1

i Oi ai 1 bi Oi ai i Oi + 1 X0i, X-i, Xi Xi
+1

Xi

a) La i-sima articulacin nmero es rotacional Articulacin i Eslabn i Articulacin i 1 Eslabn i 1 Articulacin i + 1

i i 1 O a i i ai 1 bi Oi Oi + 1 i

b) La i-sima articulacin es prismtica

Figura 5.23 Convencin de sistemas de referencia y parmetros de Denavit y Hartenberg (DH)

Observe que las convenciones arriba ilustradas no dan una definicin nica de los sistemas de eslabones en los siguientes casos:

102

CAPTULO

Transformaciones

Para el sistema 1 que se une a la base fija, es decir, el eslabn 0, slo se especifica el sentido de los ejes Z1. Entonces O1 y X1 pueden elegirse en forma arbitraria. Para el ltimo sistema n + 1 no aplica la convencin mencionada, ya que no existe ningn eslabn n + 1. Por ende, el sistema n + 1 puede elegirse en forma arbitraria. Cuando dos ejes consecutivos son paralelos, la perpendicular comn entre ellos no se define de manera nica. Cuando se cruzan dos ejes consecutivos, el sentido de Xi es arbitrario. Cuando la articulacin i es prismtica, slo se determina el sentido del eje Zi, mientras que la ubicacin de Oi es arbitraria. En todos estos casos, puede explotarse la indeterminacin para simplificar el proceso. Por ejemplo, los ejes del sistema n + 1 pueden hacerse paralelos a los del sistema n. Una vez que se hayan establecido los sistemas de los eslabones, la posicin y orientacin de el sistema i respecto a el sistema i 1 quedan completamente especificadas por los cuatro parmetros que se conocen como parmetros de Denavit y Hartenberg (DH). Por tanto, a estos sistemas tambin se les conoce como sistemas de referencia de DH. Los cuatro parmetros DH se definen como sigue:

a) bi (Desplazamiento de la articulacin) Longitud de las intersecciones de las perpendiculares comunes en el eje de articulacin Zi, es decir, Oi y O . sta es la i posicin relativa de los eslabones i 1 e i. Esto se mide como la distancia entre Xi y Xi+1 a lo largo de Zi. b) p i (ngulo de la articulacin) Es el ngulo entre las proyecciones ortogonales de las perpendiculares normales Xi y Xi+1 a un plano perpendicular del eje de la articulacin Zi. La rotacin es positiva cuando se realiza en el sentido contrario a las manecillas del reloj. Es el ngulo relativo entre los eslabones i 1 e i. Esto se mide como el ngulo entre Xi y Xi+1 alrededor de Zi. c) ai (Longitud del eslabn) La longitud entre O y Oi+1. Esto se mide como la i distancia entre las perpendiculares comunes a los ejes Zi y Zi+1 a lo largo de Xi+1.
El ngulo entre las proyecciones ortogonales de los ejes de articulacin Zi y Zi+1 sobre un plano perpendicular a la perpendicular comn. Esto se mide como el ngulo entre los ejes Zi y Zi+1 alrededor del eje Xi+1 para que se tome como positivo cuando la rotacin se realiza en el sentido contrario a las manecillas del reloj. Observe que los cuatro parmetros que se mencionan arriba se definen en forma secuencial cuando se mueve desde el eslabn i 1 al eslabn i + 1 a travs del eslabn i. Adems, los primeros dos parmetros, es decir, bi y qi, definen la posicin relativa de los eslabones i 1 e i, mientras que los ltimos dos, ai y ai, describen el tamao y la forma del eslabn i que siempre son constantes. Los parmetros bi y qi, sin embargo, son variables, dependiendo del tipo de articulaciones que se usen. En particular, i es variable si la articulacin i es rotacional; y bi es variable si la articulacin i es prismtica.

d) `i (ngulo de torsin)

As, para un tipo de articulacin dada, es decir, rotacional (revoluta) o prismtica, uno de los parmetros DH es variable, lo que se denomina variable de articulacin, mientras que los tres parmetros restantes son constantes y se llaman parmetros de eslabones.

5.4

Los parmetros de Denavit y Hartenberg (DH)

103

Ejemplo 5.16

Parmetros DH de un brazo planar de tres eslabones

X4 La figura 5.24 muestra un brazo planar de tres eslabones. Los sistemas de coordenadas para definir los parmetros DH se muestran en la figura. Los X3 Y4 a3 #3 parmetros DH se tabulan en la tabla 5.2, donde 3 Y3 a1 y qi, para i = 1, 2, 3, son las longitudes de los eslabones y los ngulos de articulaciones, respecY2 a2 #2 tivamente. El eje Zi es perpendicular al plano de la Y1 pgina y X1 se elige en forma arbitraria. Observe 2 X2 que el sistema 1, es decir, X1, Y1 y Z1, se adjunta al a1 eslabn denotado como #0. Puesto que no existe #1 1 un vnculo 4, el sistema 4 puede ser asignada arX1 #0 bitrariamente, de tal modo que su eje X se sita a lo largo del eslabn, tal como se hizo para los Figura 5.24 Un brazo planar de sistemas 2 y 3. tres eslabones

Tabla 5.2 Parmetros DH del brazo de tres eslabones

Eslabn
1 2 3

bi
0 0 0

qi
q1 (JV) q2(JV) q3(JV)

ai
a1 a2 a3

ai
0 0 0

JV: Variable de articulacin

Cabe sealar lo siguiente: para que un miembro de dos eslabones tenga las dos articulaciones rotacionales o revolutas, es decir, que la #3 se remueva de la figura 5.24, los parmetros DH de la tabla 5.2, sin la tercera hilera, siguen siendo vlidos.

Ejemplo 5.17

Parmetros DH de un brazo planar rotacional-prismtico

En un brazo planar rotacional-prismtico (RP), figura 5.25, donde las articulaciones rotacional y prismtica se indican como R y P, respectivamente, los parmetros DH se encuentran en la tabla 5.3.
Tabla 5.3 Parmetros DH del brazo RP

Eslabn
1 2

bi
0 b2(JV)

qi
q 1(JV) 0

ai
0 0

ai
p/2 0

104

CAPTULO

Transformaciones

Y1 X3 Z2, Z3 EE (x, y) X1

X2 1 R P

b2

Figura 5.25

Brazo planar rotacional-prismtico

Ejemplo 5.18

Parmetros DH de un brazo planar prismtico-rotacional

Si se intercambian las articulaciones rotacional y prismtica, el resultado es un brazo prismtico-rotacional (PR), como se muestra en la figura 5.26. Sus parmetros DH se muestran en la tabla 5.4.
Y1 Y3 (x, y) X3 a2 P R b1 X2 2 EE Y2 Z1

Figura 5.26

Brazo planar prismtico-rotacional

Tabla 5.4 Parmetros DH del brazo PR

Eslabn
1 2

bi
b1(JV) 0

qi
0

ai
0

ai
p /2 0

q2(JV)

ai

Ejemplo 5.19

Parmetros DH de un brazo esfrico

Respecto al brazo de robot del tipo esfrico que se muestra en la figura 5.27, observe que el primero y segundo eslabones, es decir, #1 y #2, se entrecruzan y la longitud del primero no afecta el movimiento del efector final debido a la rotacin de la primera articulacin. Por lo tanto, es til situar tanto el primer como el segundo sistema de

5.4

Los parmetros de Denavit y Hartenberg (DH)

105

Z3 , Z 4 Z 1, Y 2 Y1 O2, O 2 1 #1 2 O4 X4 b2 #2 O3 Z2 , Y 3 #3 b3 Y4

X1, X2

X3

#0

Figura 5.27

Un brazo de tipo esfrico

referencia en la interseccin de los primeros dos ejes rotacionales, es decir, en O1 u O2. Los parmetros DH se tabulan en la tabla 5.5, donde b2, b3 y qi, para i = 1, 2, 3, se indican en la figura 5.27.
Tabla 5.5 Parmetros DH del brazo esfrico

Eslabn
1 2 3

bi
0 b2 b3(JV)

qi
q1 (JV) q2 (JV) 0

ai
0 0 0

ai
p /2 p /2 0

5.4.1

Transformaciones entre sistemas DH

En este momento puede expresarse la transformacin de coordenadas entre los sistemas DH i e i + 1, que se adjuntan a los eslabones i 1 e i, respectivamente. En la figura 5.23, a) Traslade el sistema i mediante bi a lo largo de los ejes Zi. Esto lleva el origen Oi del sistema i en coincidencia con Oi . Suponga que Oies el origen de el sistema desplazado i. La matriz de transformacin correspondiente es

Tb

LM1 0 = M MM0 N0

0 1 0 0

0 0 0 0 1 bi 0 1

OP PP PQ

(5.49a)

donde bi indica la traslacin por la cantidad bi a lo largo del eje Zi.

106

CAPTULO

Transformaciones

b) El sistema desplazado, es decir, el sistema i, se gira con un ngulo qi alrededor del eje Zi, lo que lleva el eje Xi(paralelo a Xi) en alineacin con el eje Xi+1. El nuevo sistema se llama i. La matriz de transformacin correspondiente es

Tq

c) Deslice el sistema i mediante ai a lo largo del eje Xi ( Xi+1). Esto lleva al origen del sistema i, Oi ( Oi) en coincidencia con Oi+1. La matriz de transformacin correspondiente es

LMCq Sq = M MM 0 N0

i i

- Sq i Cq i 0 0

0 0 1 0

0 0 0 1

OP PP PQ

(5.49b)

Ta =

El nuevo sistema se llama i. d) Finalmente, gire el sistema i con un ngulo ai alrededor del eje X (Xi+1), que ahora i coincidir con el sistema i + 1. La matriz de transformacin correspondiente es

LM1 MM0 MN0 0

0 1 0 0

0 ai 0 0 1 0 0 1

OP PP PQ

(5.49c)

Ta

LM1 0 = M MM0 N0

0 Ca i Sa i 0

0 - Sa i Ca i 0

0 0 0 1

OP PP PQ

(5.49d)

La resultante transformacin de coordenadas entre los sistemas conectados con los cuerpos i 1 e i, es decir, Ti, se obtiene ahora mediante la posmultiplicacin de las cuatro transformaciones elementales de arriba, como se hace en la ecuacin (5.31d), es decir, (5.50a) La expresin Ti tambin puede leerse como matriz de transformacin del sistema adjuntado al cuerpo i, es decir, sistema i + 1, como se representa en el sistema incorporado al cuerpo i 1, es decir, sistema i. Por medio de sustitucin de las expresiones de matriz de las ecuaciones (5.49 a-d) a la ecuacin (5.50a), se obtiene la siguiente expresin: Ti = Tb Tq Ta Ta

LMCq Sq T = M MM 0 N0
i

i i

- Sq i Ca i Cq i Ca i Sa i 0

Sq i Sa i - Cq i Sa i Ca i 0

ai Cq i a i Sq i bi 1

OP PP PQ

(5.50b)

Observe que la matriz de transformacin del sistema i al sistema i + 1 es una funcin de nicamente la i-sima variable de articulacin de potencia, es decir, qi para una articulacin revoluta o rotacional, y bi para una articulacin prismtica, porque los otros tres parmetros DH son constantes.

5.4

Los parmetros de Denavit y Hartenberg (DH)

107

Ejemplo 5.20

Transformacin homognea del brazo planar de tres eslabones

Conforme a la figura 5.24 y a los parmetros DH indicados en la tabla 5.2, las matrices de transformacin homognea Ti pueden derivarse de la ecuacin (5.50b) como

LMCq Sq T = M MM 0 N0
i

i i

- Sq i Cq i 0 0

0 ai Cq i 0 a i Sq i , para i = 1, 2, 3 1 0 0 1

OP PP PQ

(5.51)

Ejemplo 5.21

Transformacin homognea del brazo planar RP

Conforme a la figura 5.25 y a los parmetros DH indicados en la tabla 5.3, las matrices de transformacin homognea Ti, para i 1, 2, pueden derivarse de la ecuacin (5.50b) como

T1

LMCq Sq = M MM 0 N0

1 1

0 Sq 1 0 - Cq 1 1 0 0 0

0 0 , y T2 = 0 1

OP PP PQ

LM1 MM0 MN0 0

0 1 0 0

0 0 0 0 1 b2 0 1

OP PP PQ

(5.52)

Ejemplo 5.22

Transformacin homognea del brazo planar PR

Conforme a la figura 5.26 y a los parmetros DH indicados en la tabla 5.4, las matrices de transformacin homognea Ti para i = 1, 2, pueden derivarse de la ecuacin (5.50b) como

T1

LM1 0 = M MM0 N0
2 2

0 0 0 -1 1 0 0 0

0 0 b1 1

OP PP PQ

T2

LMCq Sq = M MM 0 N0

- Sq 2 Cq 2 0 0

0 a2 Cq 2 0 a2 Sq 2 1 0 0 1

OP PP PQ

(5.53)

108

CAPTULO

Transformaciones

Ejemplo 5.23

Transformacin homognea del brazo esfrico

Conforme a la figura 5.27 y a los parmetros DH indicados en la tabla 5.5, las matrices de transformacin homognea Ti, para i = 1, 2, 3, pueden derivarse de la ecuacin (5.50b) como

T1

T3

LMCq Sq = M MM 0 N0 LM1 0 0 1 = M MM0 0 N0 0


1 1

0 Sq 1 0 - Cq 1 1 0 0 0 0 0 0 0 1 b3 0 1

Cq 2 0 Sq 2 0 , y T2 = 0 0 1 0

OP PP PQ

LM MM MN

0 Sq 2 0 - Cq 2 1 0 0 0

0 0 , b2 1

OP PP PQ

OP PP PQ

(5.54)

Ejemplo 5.24

Obtenga la ecuacin (5.50b) por medio de MATLAB

Para obtener la ecuacin (5.50b), las operaciones simblicas tienen que ejecutarse en MATLAB. Para este fin, se usan los siguientes comandos:
>syms bi thi ai ali; >tbm=[1,0,0,0;0,1,0,0;0,0,1,bi;0,0,0,1]; >tthm=[cos(thi),-sin(thi),0,0;sin(thi),cos(thi),0,0;0,0,1,0;0,0,0,1]; >tam=[1,0,0,ai;0,1,0,0;0,0,1,0;0,0,0,1]; >talm=[1,0,0,0;0,cos(ali),-sin(ali),0; 0,sin(ali),cos(ali),0; 0,0,0,1]; >tim=tbm*tthm*tam*talm tim = [ cos(thi), -sin(thi)*cos(ali), sin(thi)*sin(ali), cos(thi)*ai] [ sin(thi), cos(thi)*cos(ali), -cos(thi)*sin(ali), sin(thi)*ai] [ 0, sin(ali), cos(ali), bi] [ 0, 0, 0, 1]

donde el comando syms se usa para definir las variables simblicas bi, thi, ai y ali para los parmetros DH bi, qi, ai y ai, respectivamente. Adems, se usan las notaciones tbm, tthm, tam y talm para representar las matrices Tb, Tq, Ta y Ta, dadas por las ecuaciones (5.49a-d), respectivamente. Finalmente, la resultante matriz Ti denotada como tim en el ambiente de MATLAB, se evala arriba, lo que coincide con la ecuacin (5.50b).

Ejercicios

109

RESUMEN
En este captulo, primero se define la postura o configuracin del cuerpo rgido. Se presentan sus representaciones. Tambin se define la matriz de transformacin homognea que se ocupa tanto de la traslacin como de la rotacin de un sistema de coordenadas entre s. En la ltima parte, se introducen los parmetros de Denavit y Hartenberg (DH) y se deriva la matriz de transformacin homognea correspondiente.

EJERCICIOS
5.1 Compruebe lo siguiente: a) b) c) d) 5.2 5.3 det (Q) = 1 (5.55a) Q1 = QT (5.55b) Q = QT, donde Q se define segn la ecuacin (5.19). (5.55c) 1 Para la rotacin elemental con alrededor de cualquier eje, X, Y o Z, Qk = T Qk , donde k = X, Y o Z.

5.4

5.5

Cules son los significados equivalentes de una matriz de rotacin? Suponga que QA es la rotacin del sistema fijo a un nuevo sistema A respecto al sistema F, y que QB es la rotacin del sistema A a otro nuevo sistema B respecto al sistema A. Cul es la representacin de matriz resultante del sistema B respecto a su sistema de referencia original F, es decir, Q? Suponga que [QA] es la rotacin d del sistema fijo a un nuevo sistema A respecto del sistema F, y que [QB]F es la rotacin del sistema A a otro nuevo sistema B, tambin respecto al sistema F. Busque la representacin de matriz resultante del sistema B respecto al sistema de referencia original F, es decir, Q. Debera el resultado ser el mismo que se obtiene en la pregunta 5.3? Suponga que QA y QB, como se definen en la pregunta 5.3, son dadas por

QA

LMC30 = M S 30 MN 0

- S 30 0 C45 - S 45 0 C 30 0 , y QB = S 45 C 45 0 0 1 0 0 1

OP PP Q

LM MM N

OP PP Q

(5.55)

5.6

Ilustre las dos transformaciones de arriba en forma grfica y busque Q = QA QB. Si TA fuese la matriz homognea que representa una transformacin del sistema fijo a un nuevo sistema A respecto al sistema fijo F, y si TB fuese otra transformacin a un sistema B respecto al sistema A, busque la matriz de transformacin resultante T.

110 5.7

CAPTULO

Transformaciones

Si [TA]F fuese la matriz homognea que representa una transformacin del sistema fijo a un nuevo sistema de referencia A respecto al sistema F, y si [TB]F fuese otra transformacin a uno sistema B, tambin respecto al sistema F, busque la matriz de transformacin resultante. Comente los resultados obtenidos en sta y en la anterior pregunta. 5.8 Busque los parmetros DH del robot SCARA que aparece en la figura 5.28. 5.9 La figura 5.29 muestra un brazo articulado antropomorfo. Busque los parmetros DH. 5.10 Busque las matrices de transformacin homognea para la arquitectura de robot que se muestra en la figura 5.29. 5.11 Busque los parmetros DH del brazo esfrico que se muestra en la figura 5.30. 5.12 Cules son las matrices de transformacin homognea para la arquitectura de robot de la figura 5.30?

EJERCICIOS BASADOS EN MATLAB


5.13 Evale los valores numricos de QA y QB. 5.14 Compruebe las ecuaciones (5.55a-c). 5.15 Utilizando los valores numricos del ejercicio 5.5, demuestre la propiedad no conmutativa de las rotaciones, es decir, QAQB QBQA. 5.16 Usando las funciones atan y atan2, encuentre el ngulo formado por la lnea que une el origen (0, 0) y un punto (2, 1). 5.17 Repita el ejercicio 5.16 para los puntos (0, 0) y (2, 1). Comente los resultados obtenidos usando atan y atan2. Cul es el correcto?

Z1 1 b1 a1 2

Z2

Z 3, Z 4

b2 a2 4

b3

b4

Figura 5.28

Un robot SCARA

Ejercicios basados en MATLAB


Z2 Z3 X1, X2 a2 q3 X3 a3 q1

111

q2 Z1

Z4 X4

Figura 5.29

Un brazo articulado

Z1, X3, X4 2 X1, X2 O1, O2, O3

Z2

3 Z 3, Z 4

Figura 5.30

Un brazo esfrico

Captulo

6
Cinemtica

Para que un robot ejecute una tarea especfica, primero que nada deber establecerse la posicin y la orientacin del efector final, es decir, su posicin o configuracin en relacin con su base. Esto es esencial para resolver problemas de posicionamiento. Una vez que las relaciones mencionadas se diferencian una y dos veces, surgen entonces los problemas de anlisis de Cinemtica inversa vs. la velocidad y aceleracin necesarios para el control directa de movimientos uniformes del efector final, as como el anlisis dinmico del robot en cuestin. Puesto que Mientras que la cinemtica inversa de robots seriales permite encontrar la configuracin del efector final se determina por las mltiples soluciones, la cinemtica seis variables cartesianas que se controlan mediante directa slo tiene una solucin. los movimientos de las articulaciones del robot, es necesario encontrar las relaciones entre los dos conjuntos. En el anlisis de posicin, se encuentra una relacin entre las coordenadas cartesianas, es decir, la posicin de un punto en el efector final y su orientacin con los ngulos de las articulaciones. Aqu existen dos tipos de problemas: la cinemtica directa y la inversa, como se ilustra en la figura 6.1. En la cinemtica directa, las posiciones de las articulaciones ya estn determinadas y el problema radica en encontrar la configuracin del efector final. En la cinemtica inversa, se resuelve inverso, es decir, la posicin del efector final est determinada y el problema radica en encontrar los ngulos de las articulaciones.

6.1

Anlisis de la posicin directa

113

Movimiento del efector final Q, p

Movimiento de las articulaciones 3

3 Q y p 1 Cinemtica directa Cinemtica inversa

1, 2, y 3

Tiempo 2 Tiempo 1 Tiempo

Figura 6.1

Cinemtica directa e inversa

6.1

Anlisis de la posicin directa

En la cinemtica directa para posicin, las posiciones de las articulaciones, es decir, los ngulos de las articulaciones de revoluta y el desplazamiento de las articulaciones prismticas se conocen. La tarea es encontrar la configuracin del efector final, es decir, su posicin y orientacin. Esto puede obtenerse a partir de las ecuaciones de clausura, como se explicar en los siguientes pasos: a) De acuerdo con las reglas que se dieron en la seccin 5.4, adjunte un sistema de coordenadas a cada uno de los eslabones n + 1 del robot, donde el sistema 1 se adjunta al sistema de coordenadas fijo y el sistema n + 1, al efector final o cuerpo n-simo. b) Defina los parmetros Denavit-Hartenberg (DH) que se presentaron en la seccin 5.4. c) Escriba las matrices de transformacin homognea de la ecuacin (5.50) como T1, T2 Tn, donde Ti para i = 1, n, que representa la transformacin del cuerpo i o sistema i + 1 respecto a su cuerpo anterior i 1, o sistema adjunto a l, es decir, sistema i.
Efector final, P (px, py) Y1 a2 a1 1 X1 2

Figura 6.2

Cinemtica de un brazo planar de dos eslabones

114

CAPTULO

Cinemtica

d) Como se muestra en la subseccin 5.4.1, la matriz de transformacin homognea del sistema de coordenadas del efector final respecto al sistema 1, es decir, T, se obtiene entonces mediante la posmultiplicacin de las transformaciones homogneas individuales mostradas arriba, Ti, para i = 1, n, es decir, T = T1 T2 Tn (6.1) Observe que para cada transformacin del lado derecho de la ecuacin (6.1), Ti se expresa en el sistema de coordenadas adjunto al cuerpo i 1 o sistema i, mientras que el lado izquierdo de la matriz T se expresa respecto al sistema fijo, es decir, sistema 1. Por lo tanto, deber tenerse cuidado para transferir correctamente los vectores y matrices asociados a los sistemas sucesivos antes de multiplicarlos o sumarlos en los ltimos sistemas . La ecuacin (6.1) se conoce como la ecuacin de clausura del robot en cuestin. Si se sustituye la expresin para la matriz de transformacin homognea Ti de la ecuacin (5.50b) en la ecuacin (6.1), se obtienen dos relaciones distintas en trminos de la orientacin de los eslabones de las articulaciones y de las posiciones de los orgenes de los sistemas adjuntos a los eslabones. stas son Q = Q1 Q2 Qn p = a1 + Q1 a2 + + Q1 Qn1 an (6.2) (6.3)

donde la matriz Qi es la matriz de rotacin ortogonal que se introdujo en la subseccin 5.2.2, que representa la orientacin del sistema i + 1 respecto al sistema i. Adems, el vector ai es la posicin del origen del sistema i + 1 adjunto al cuerpo i del cuerpo del sistema i adjunto al cuerpo i 1. Aunado a esto, Q es la orientacin del efector final respecto al sistema fijo, es decir, sistema 1, y p es la posicin del origen del sistema adjunto al efector final, es decir, sistema n + 1, desde el origen del sistema 1. Al comparar ambos lados de la ecuacin (6.1) o las ecuaciones (6.2) y (6.3), se observa que la primera es fcil de entender, mientras que las ltimas ecuaciones son computacionalmente eficientes. Usando la ecuacin (6.1), se tienen que calcular 16 parmetros de las matrices 4 4, mientras que slo se utilizan 12 parmetros, nueve para las matrices de 3 3 y tres para los vectores de posicin. Observe que en el anlisis cinemtico de posicin directa, el lado derecho de la ecuacin (6.1) o los de las ecuaciones (6.2) y (6.3) estn determinados como entradas y los lados izquierdos se calculan como salidas.

Ejemplo 6.1

Cinemtica directa de un brazo planar de dos eslabones

Como se muestra en la figura 6.2, los parmetros DH de un brazo de dos eslabones pueden obtenerse de la tabla 5.2, como se seala despus de la tabla, es decir, en las primeras dos hileras de la tabla 5.2. Sus dos matrices de transformacin homognea Ti, i = 1, 2, se obtienen con la ecuacin (5.50b), es decir,

LMc s T M MM 0 N0
i
i

- si ci 0 0

0 ai ci 0 ai si 1 0 0 1

OP PP PQ

(6.4)

6.1

Anlisis de la posicin directa

115

donde si sen i y ci cos i. La solucin para el anlisis de posicin de cinemtica directa del manipulador se da entonces como T = T1T2 donde T representa la posicin o configuracin del efector final respecto a su base, es decir, el sistema 1. La matriz T de 4 4 se expresa como

LMc s TM MM 0 N0

12

12

- s12 c12 0 0

0 a1 c1 + a2 c12 0 a1 s1 + a2 s12 1 0 0 1

OP PP PQ

(6.5)

donde s12 sen 12; c12 cos 12; y 12 1 + 2 i, siendo el ngulo de la i-sima articulacin, como se indica en la figura 6.2. Adems, a1 c1 + a2 c12 px y a1 s1 + a2 s12 py donde px y py se muestran en la figura 6.2. Conociendo los valores numricos de los parmetros DH, a saber, a1 y a2 aqu, y los valores de entrada de 1 y 2, puede calcularse fcilmente la matriz T, que especificar la posicin del punto P en el efector final y la orientacin del efector final, es decir, .

Ejemplo 6.2

Cinemtica directa de un brazo planar rotacional-prismtico

En la figura 5.25, se muestra un brazo planar rotacional-prismtico (RP) cuyos parmetros DH se evalan en la tabla 5.3. Sus matrices de transformacin homognea T1 y T2 tambin se obtienen con la ecuacin (5.52). Por lo tanto, la relacin de cinemtica directa que proporciona la matriz de 4 4 T = T1T2 puede obtenerse como

LMc MMs0 MN 0

0 s1 0 - c1 1 0 0 0

b2 s1 - b2 c1 0 1

OP PP PQ

(6.6)

Ejemplo 6.3

Cinemtica directa de un brazo planar de tres eslabones

Los parmetros DH del brazo, como se muestra en la figura 6.3, se presentan en la tabla 5.2. Las tres matrices de transformacin homognea Ti, i = 1, 2, 3, se obtienen entonces con la ecuacin (5.50b). stas aparecen en la ecuacin (6.4). La solucin para el anlisis de posicin de cinemtica directa del manipulador se da entonces como

116

CAPTULO

Cinemtica

X4 Efector final, P (px, py) Y4 a3 Y1 Y2 Y3 3 X3 Mueca W (wx, wy) a2 2 X2 X1

a1 1

Figura 6.3

Cinemtica de un brazo planar de tres eslabones

T = T1 T2 T3 donde T representa la posicin o configuracin del efector final respecto a su base, es decir, el sistema 1. La matriz de 4 4 T se expresa como

LMc s TM MM 0 N0

123

123

- s123 c123 0 0

0 a1 c1 + a2 c12 + a3 c123 0 a1 s1 + a2 s12 + a3 s123 1 0 0 1

OP PP PQ

(6.7)

donde s12, c12 y 12 se definen segn la ecuacin (6.5). Adems, s123 sen 123; c123 cos 123 y 123 12 + 3 1 y que se muestran en la figura 6.3. Adems, a1c1 + a2c12 + a3c123 px, y a1s1 + a2s12 + a3s123 py, donde px y py se indican en la figura 6.3. Observe que el uso directo de las ecuaciones (6.2) y (6.3) para el caso planar tambin proporciona las expresiones = 123, y las relaciones arriba mencionadas de px y py, respectivamente, lo cual ser computacionalmente ms eficiente.

Ejemplo 6.4

Cinemtica directa de un robot SCARA

Un robot SCARA se muestra en la figura 5.28. Basndose en sus parmetros DH que se encuentran en el ejercicio 5.8, sus transformaciones homogneas se obtienen como

T1

LMc s M MM 0 N0

- s1 c1 0 0

0 a1 c1 0 a1 s1 , T2 1 b1 0 1

OP PP PQ

LMc MMs0 MN 0

- s2 c2 0 0

0 a2 c 2 0 a 2 s2 b2 1 0 1

OP PP PQ

(6.8a)

6.1

Anlisis de la posicin directa

117

T3

LM1 0 M MM0 N0

0 1 0 0

0 0 c4 0 0 s4 , T4 1 b3 0 0 1 0

OP PP PQ

LM MM MN

- s4 c4 0 0

0 0 0 0 1 b4 0 1

OP PP PQ

(6.8b)

La cinemtica directa resultante para la posicin puede entonces obtenerse como T = T1T2T3T4 que da

LMc s TM MM 0 N0

124

- s124 c124 0 0

0 0

a1 c1 + a2 c12

124

a1 s1 + a2 s12 1 b1 + b2 + b3 + b4 0 1

OP PP PQ

(6.9)

donde s124 sen 124; c124 cos 124, y 124 12 + 4.

Ejemplo 6.5

Cinemtica directa de un brazo esfrico

El diagrama cinemtico de un brazo esfrico que se introdujo en la figura 2.13 se muestra en la figura 5.27. Sus parmetros DH se dan en la tabla 5.5, mientras que las matrices de transformacin homognea se expresan en el ejemplo 5.23. Segn la ecuacin (5.54), la relacin de cinemtica directa se expresa como

LMc c s c T= M MM s N0
2

1 2

1 2

s1 c1 s2 - c1 s1 s2 - c2 0 0 0

b2 s1 + b3 c1 s2 - b2 c1 + b3 s1 c2 - b3 c2 1

OP PP PQ

(6.10)

Ejemplo 6.6

Cinemtica directa de un brazo articulado antropomrco

Los parmetros DH y las matrices de transformacin homognea del brazo articulado antropomrfico de la figura 5.29 se obtienen en los ejercicios 5.9 y 5.10, respectivamente. Puesto que tiene tres grados de libertad, la posmultiplicacin de las tres matrices de transformacin homognea, es decir, T1 T2 T3, proporciona

LMc c s c TM MM - s N 0

1 23

1 23 23

- c1 s23 - s1 s23 - c23 0

- s1 c1 0 0

c1 ( a2 c2 + a3 c23 ) s1 ( a2 c2 + a3 c23 ) - ( a2 s2 + a3 s23 ) 1

OP PP PQ

(6.11)

118

CAPTULO

Cinemtica

donde T representa la configuracin del efector final representado en el sistema fijo.

Ejemplo 6.7

Cinemtica directa de una mueca

Los parmetros DH y las matrices de transformacin homognea de la mueca que se ve en la figura 5.30 se evalan en los ejercicios 5.11 y 5.12. sta tiene tres grados de libertad. La multiplicacin de las tres matrices de transformacin homognea se obtiene con T = T1T2T3, es decir,

LMc c c - s s s c c +c s T= M MM s c N 0
1 2 3 1 2 3 2 3

1 3 1 3

- c1 c2 s3 - s1 c3 - s1 c2 s3 + c1 c3 - s2 s3 0

- c1 s2 - s1 s2 c2 0

0 0 0 1

OP PP PQ

(6.12)

Ejemplo 6.8

Cinemtica directa de un robot articulado antropomrco

En la figura 6.4 se muestra un robot articulado antropomrfico, cuyos parmetros DH se marcan en la tabla 6.1. Consiste bsicamente en el brazo de la figura 5.29 con la mueca de la figura 5.30 montada en l. Tiene seis grados de libertad (DOF). La configuracin del efector final se obtiene como T = T1 T6. La expresin final de la matriz de orientacin Q, y el vector de posicin del efector final p, que son componentes de bloque de la matriz T de 4 4, se obtienen con
Z1 O 1, O 2 X1, X2 2 Z2 X4 Z3 O 3, O 4 3 4 X3 6 O7 Z6 Z7 Efector terminal X7 Z5 Z4 5 X5 O 5 , O6 X6

a1e, a2e 1

Figura 6.4

Robot articulado antropomrco

6.1

Anlisis de la posicin directa

119

LMq Q Mq MNq
y

11 21

q12 q 22 q32

q13 q23 q33

31

OP PP Q
(6.13a)

LM p OP p Mp P MN p PQ
1 2 3

donde q11 q12 q13 q21 q22 q23 q31 q32 q33 y p1 = a2 c1c2 p2 = a2 s1c2 p3 = a2 s 2
Tabla 6.1 Los parmetros DH del brazo articulado de 6 DOF

c1[c23 (c4 c5 c6 s4 s6) s23 s5 c6] + s1 (s4 c5 c6 + c4 s6) c1[c23 ( c4 c5 s6 s4 c6) + s23 s5 s6] s1 (s4 c5 s6 c4 c6) c1( c23 c4 s5 s23 c5) s1 s4 s5 s1[c23 (c4 c5 c6 s4 s6) s23 s5 c6] + c1 ( s4 c5 c6 c4 s6) s1 [c23 ( c4 c5 s6 s4 c6) + s23 s5 s6] + c1 (s4 c5 s6 c4 c6) s1 ( c23 c4 s5 s23 c5) + c1 s4 s5 c23 s5 c6 + s23 (s4 s6 c4 c5 c6) c23 s5 s6 + s23 (s4 s6 + c4 c5 s6) c23 c5 + s23 c4 s5

(6.13b)

(6.13c)

i
1 2 3 4 5 6

bi
0 0 0 0 0 0

i
1 (JV) 2 (JV) 3 (JV) 4 (JV) 5 (JV) 6 (JV)

ai
0 a2 0 0 0 0

i
/2 0 /2 /2 /2 0

JV: Variable de articulacin

Ejemplo 6.9

Cinemtica directa de un robot PUMA

En la figura 6.5 se muestra la arquitectura de un robot PUMA, cuyos parmetros DH se presentan en la tabla 6.2. La cinemtica directa del robot PUMA para un conjunto determinado de sus ngulos de articulaciones i, para i = 1, 6, puede obtenerse de manera parecida al robot articulado del ejemplo 6.8. Puesto que las expresiones

120

CAPTULO

Cinemtica

Ze Xe b6 Z4, Z 6 b4 X5, X6

Efector terminal

Z5 X3 Z3

Z1

X4 b2

a3

a2 Z2

X1, X2

Figura 6.5

Un robot PUMA

resultantes son muy complejas, se proporciona el resultado para un conjunto de i que corresponde a la configuracin de la figura 6.2. Los valores de i para los cuales se da el resultado se muestran dentro de los corchetes [ y ] de la tabla 6.2. La matriz Q y el vector p se obtienen entonces con:

LM1 Q 0 MM0 N
y p

0 0 1 0

OP 0 P 1P Q
(6.14)

LM MM Na
i

a3 b2
2

+ b4

OP P +b P Q
6

Tabla 6.2

Parmetros DH del robot PUMA

i
1 2 3 4 5 6

bi
0 b2 0 b4 0 b6

ai
0 a2 a3 0 0 0

i
/2 0 /2 /2 /2 0

1 (JV) [0] 2 (JV) [/2] 3 (JV) [/2] 4 (JV) [0] 5 (JV) [0] 6 (JV) [0]

JV: Variable de articulacin; los valores dentro de [y] representan los ngulos para las JV correspondientes a la figura 6.2

6.2

Anlisis de la posicin con cinemtica inversa

121

Al comparar las expresiones de la ecuacin (6.14) con la orientacin y posicin del sistema del efector final Xe Ye Ze, puede verificarse fcilmente que los resultados son correctos.

Ejemplo 6.10

Cinemtica directa del brazo Stanford


Efector terminal

En la figura 6.6 se muestra la arquitectura del robot PUMA Stanford, cuyos parmetros DH se presentan en la tabla 6.3. Parecido al robot PUMA, la matriz Q y el vector p para el efector final se obtienen de la siguiente manera:

L- 1 QM MM 0 N0
y
2

0 -1 0

O 0P P 1P Q
X2

Ze Z 4, Z 6 b4 Z3 Z1

Xe X5, X6 Z5 X4 X3 b3 Z2

LM 0 OP p M b MNb + b + b PPQ
1 3 4

b2

b1

(6.15)

X1

Figura 6.6 El robot Stanford

donde los valores de variables de articulaciones se presentan en la tabla 6.3 para la configuracin que se muestra en la figura 6.6. La comparacin de la ecuacin (6.15) con la figura 6.6 tambin muestra que los resultados son correctos.
Tabla 6.3 Parmetros DH del brazo Stanford

i
1 2 3 4 5 6

bi
b1 b2 b3 (JV) b4 0 0

i
1 (JV) [0] 2 (JV) [] 0 4 (JV) [0] 5 (JV) [0] 6 (JV) [0]

ai
0 0 0 0 0 0

i
/2 /2 0 /2 /2 0

6.2

Anlisis de la posicin con cinemtica inversa

Las ecuaciones cinemticas directas, en la forma de la ecuacin (6.1) o de las ecuaciones (6.2) y (6.3), establecieron la relacin funcional entre las variables de articulaciones y la orientacin y posicin del efector final. El problema de la cinemtica inversa consiste en la determinacin de las variables de articulaciones correspondientes a una orientacin y

122

CAPTULO

Cinemtica

posicin especficas del efector final. La solucin de este problema es de fundamental importancia con el fin de transformar las especificaciones de movimiento asignadas al efector final en el espacio operacional en los correspondientes movimientos de espacio de las articulaciones. En la cinemtica directa (ecuacin 6.1), la matriz de posicin y rotacin del efector final se computa en forma nica una vez que se conocen las variables de las articulaciones. Por otro lado, el problema de la cinemtica inversa es mucho ms complejo debido a las siguientes razones: Por lo general, las ecuaciones por resolver son no lineales en las variables de articulaciones; de este modo, no siempre es posible encontrar una solucin explcita. Pueden existir mltiples soluciones. Tambin pueden existir soluciones infinitas, por ejemplo, en el caso de manipuladores robticos cinemticamente redundantes. Posiblemente no hay soluciones admisibles debido a la arquitectura del manipulador.

Un planteamiento posible frente al problema de la cinemtica inversa es buscar una solucin explcita usando lgebra o geometra. Otra posibilidad es encontrar una solucin numrica por medio de algn algoritmo de aproximacin sucesiva. Aunque el primer planteamiento es generalmente ms deseable para la aplicacin de la solucin al control de tiempo real de robots, no siempre es posible obtener las soluciones explcitas para manipuladores con arquitectura arbitraria. Ms bien, la clase de manipuladores para los cuales las soluciones explcitas quedan garantizadas es muy limitada. Observe, sin embargo, que la mayora de los manipuladores que se utilizan en la industria pertenecen a esta clase. El enfoque algebraico a la solucin explcita significa la bsqueda de los ngulos de las de articulaciones por medio de la transformacin algebraica de las ecuaciones (6.1)-(6.3). El enfoque geomtrico significa la bsqueda de los ngulos de las articulaciones usando la heurstica geomtrica para aprovecharse de la estructura especial de los manipuladores. A veces es til usar ambos enfoques juntos para resolver un problema. Puesto que es difcil encontrar una solucin general para un manipulador con arquitectura arbitraria, las soluciones de cinemtica inversa para la posicin se presentan respecto a arquitecturas de robots especficas, como se explicar a continuacin.

6.2.1

Brazo planar de tres eslabones

Considere el brazo de la figura 6.3, cuya cinemtica directa de posicin se resuelve en el ejemplo 6.3. Lo que se busca aqu es encontrar los ngulos de las articulaciones 1, 2 y 3 correspondientes a la posicin y orientacin determinadas para un efector final. Para un movimiento planar, la posicin y orientacin del efector final pueden especificarse por el origen del sistema coordenado 4, es decir, (px py), y por la orientacin del sistema adjunto al efector final respecto al eje X1, es decir, el ngulo , como se muestra en la figura 6.3. Por lo tanto, se especifican como la entrada. Las soluciones se obtienen entonces mediante dos planteamientos distintos, como se explicar a continuacin.

i) Solucin algebraica En primer lugar, se ilustra la tcnica de la solucin algebraica. Segn el anlisis de la cinemtica de posicin directa del brazo planar de tres eslabones, como se realiz en el ejemplo 6.3, j = q1 + q2 + q3 (6.15a)

6.2

Anlisis de la posicin con cinemtica inversa

123 (6.15b) (6.15c)

px = a1 c1 + a2 c12 + a3 c123 py = a1 s1 + a2 s12 + a3 s123

Observe que estas ecuaciones son no lineales en los ngulos de las articulaciones 1, 2 y 3. Adems, el problema de la cinemtica inversa se simplifica mediante la subdivisin de la tarea, es decir, el efector final se orienta ya que se haya posicionado su mueca W de la figura 6.3. Las coordenadas de W son wx y wy. Las relaciones de posicin de las ecuaciones (6.15a-c) se reescriben entonces como wx = px a3 cj = a1 c1 + a2 c12 (6.16a) wy = py a3 sj = a1 s1 + a2 s12 (6.16b) Elevando los dos lados de la ecuacin (6.12) al cuadrado, se encuentra w2x + w2y = a12 + a 22 + 2 a1a2 c2 que proporciona c2 =
2 2 2 w2 w2 z a1 a2 2 a1 a2

(6.17a)

(6.17b)

La existencia de una solucin para la ecuacin (6.17b) impone la condicin 1 c2 1. De lo contrario, el punto (px, py) estar fuera del espacio de trabajo alcanzable del brazo. Entonces,
2 s2 = 1 - c 2

(6.17c)

donde el signo positivo es relativo a la postura del codo hacia arriba y el signo negativo se refiere a la postura del codo hacia abajo. Por lo tanto, el ngulo 2 se computa como q2 = atan2 (s2, c2) (6.18) donde atan2, en contraste con atan, es una funcin en cualquier lenguaje de computacin, como MATLAB, C, FORTAN, etc., que computa el valor de tan-1( ) en el cuadrante apropiado. Si un punto se encuentra en el primer y tercer cuadrantes, la funcin atan da la respuesta en los dos casos que corresponden nicamente al primer cuadrante. Esto es as porque los argumentos y/x y y(x) dan como resultado el mismo valor numrico. Cuando se usa atan2, el argumento y/x proporcionar el resultado correspondiente al primer cuadrante, mientras que y/x dar resultados que se encuentran en el tercer cuadrante. Una vez que se determin 2, el ngulo 1 se encuentra mediante la expansin de c12 y s12 de la ecuacin (6.16) y su restructuracin como wx = (a1 + a2 c2 ) c1 a2 s1 s2 (6.19a) wy = (a1 + a2 c2 ) s1 + a2 c1 s2 (6.19b) Con el fin de evaluar 1, la ecuacin (6.19a) se multiplica por a2s2 y la ecuacin (6.19b) por (a1 + a2c2), seguido por la resta de la primera con respecto a la ltima. Esto da como resultado el valor de s1 como
(a1 + a2 c2 ) w y - a2 s2 w x D En forma parecida, c1 se obtiene como

s1 =

(6.20a)

c1 =

(a1 + a2 c2 ) w x + a2 s2 w y D

(6.20b)

124

CAPTULO

Cinemtica

2 2 2 2 donde a1 + a2 + 2a1a2c2 = wx + wy . Siguiendo la analoga a la ecuacin (6.18), la solucin para 1 se obtiene de la siguiente manera:

q1 = atan2 (s1, c1)

(6.20c)

Finalmente, se encuentra el ngulo 3, segn la expresin de la ecuacin (6.15a), como q3 = j q1 q2 (6.21) Aqu se presenta una tcnica de solucin geomtrica. Como el caso visto anteriormente, el ngulo de orientacin se da en la ecuacin (6.15a) y las coordenadas del origen del sistema coordenado 3 se computan segn la ecuacin (6.16). La aplicacin de la ley de los cosenos al ngulo formado por los eslabones a1, a2 y los puntos de conexin de segmentos O1 y W, figura 6.3, da como resultado

ii) Solucin geomtrica

Por qu geomtrico? La solucin geomtrica tiene una mejor comprensin grca. Por lo tanto, es til para el estudio.

w2x + w2y = a21 + a22 2 a1 a2 cos (p q2)

(6.22)

Las dos configuraciones admisibles del tringulo se muestran en la figura 6.3. Cuando se observa cos ( 2) = cos 2 c2, se obtiene inmediatamente la ecuacin (6.17a), mientras que la existencia del tringulo garantiza lo siguiente:
2 2 + wy a1 + a2 wx

Esta condicin no se cumple cuando el punto W se encuentra fuera del espacio de trabajo que es alcanzable por el brazo. Sin embargo, basado en la suposicin de soluciones admisibles, el ngulo 2 se obtiene como q2 = cos1 (c2) (6.23) donde la postura de codo hacia arriba se obtiene cuando 2 se encuentra entre y 0, y la posicin de codo hacia abajo se obtiene para 2 entre 0 y . Para encontrar 1, considere los ngulos y en la figura 6.3, que se computan segn a = atan2 (wy , wx) y
2 2 cos b = a1 + a2 c2 wx + wy

(6.24a)

donde la determinacin de los ngulos y depende del signo de wx y wy. Adems, la sustitucin de la expresin de c2 de la ecuacin (6.17b) en la ecuacin (6.24a) proporciona el ngulo , es decir, b = cos
1

2 2 2 2 + wy + a1 + a2 wx

2 a1

2 2 wx + wy

(6.24b)

En la ecuacin (6.24 b), debera estar dentro de 0 y con el fin de conservar la existencia del tringulo. Entonces, q1 = a b (6.25)

donde el signo positivo es vlido para 2 (, 0) y el signo negativo lo es para 2 (0, ). Finalmente, 3 se computa segn la ecuacin (6.21).

6.2

Anlisis de la posicin con cinemtica inversa

125

Ejemplo 6.11

Cinemtica inversa del brazo planar de tres eslabones

En la figura 6.3, la matriz homognea de entrada T de la ecuacin (6.7) se da como

donde = 60, y los parmetros DH constantes no cero, segn la tabla 5.2, son a1 = a2 = 2 unidades, y a3 = 1 unidad. Usando las ecuaciones (6.17b-c), c2 y s2 se calculan como c2 = 0.866 y s2 = 0.5, que da 2 = 30. Entonces se evalan s1 y c1 segn las ecuaciones (6.20a-b) como s1 = 0 y c1 = 1. El valor del ngulo de articulacin 1 se obtiene como 1 = 0. Finalmente, se obtiene 3 segn la ecuacin (6.21) como 3 = 30. Los resultados se resumen abajo: (6.26b) Observe que se usaron los valores positivos de s2 para evaluar 2 = 30. El uso del valor negativo dara como resultado el siguiente conjunto de resultados: q1 = 26.56o, q2 = 30o, y q3 = 63.43o (6.26c) q1 = 0o, q2 = 30o y q3 = 30o

LM 1 MM 23 T MM 2 0 MN 0

3 2 1 2 0 0

0 0 1 0

OP P 3 + 1P 2 P 0 P 1 P Q
3+ 5 2

(6.26a)

Ejemplo 6.12

Cinemtica inversa del brazo planar de tres eslabones usando MATLAB

Con el fin de resolver el ejemplo 6.11, puede escribirse un programa de MATLAB, como se muestra a continuacin, que puede guardarse en un archivo denominado, por ejemplo, ch6ikin3.m, que puede ejecutarse para arrojar los resultados arriba mencionados.
%Program for the inverse kinematics of 3-link arms %Non-zero constant DH parameters a1=2; a2=2;a3=1; %Input phi=pi/3; px=2.5+sqrt(3); py=1+sqrt(3)/2; %Intermediate calculations wx=px-a3*cos(phi); wy=py-a3*sin(phi); del=wx*wx+wy*wy; %Calculations for theta_2 c2=(del-a1*a1-a2*a2)/(2*a1*a2); s2=sqrt(1-c2*c2); th21=atan2(s2,c2); th22=atan2(-s2,c2); %Calculation for finding theta_1

126

CAPTULO

Cinemtica

s11=((a1+a2*cos(th21))*wy-a2*s2*wx)/del; a2*s2*wy)/del; s12=((a1+a2*cos(th22))*wy+a2*s2*wx)/del; a2*s2*wy)/del; th11=atan2(s11,c11); th12=atan2(s12,c12); %Calculation for theta_3 th31=phi-th11-th21; th32=phi-th12-th22; %Angles in degree r2d=180/pi; th11d=th11*r2d, th12d=th12*r2d, th31d=th31*r2d, th32d=th32*r2d

c11=((a1+a2*cos(th21))*wxc12=((a1+a2*cos(th22))*wx+

th21d=th21*r2d,

th22d=th22*r2d,

6.2.2

Un brazo articulado

Considere el brazo articulado que se presenta en la figura 6.7. Se buscan las variables de las articulacin 1, 2 y 3, correspondientes a una posicin conocida pw del efector final. Observe que la relacin cinemtica para pw se expresa en la cuarta columna de la matriz T en la ecuacin (6.11), segn la cual q1 = a tan 2 (py, px) px = c1 (a2 c2 + a3 c23) y py = s1 (a2 c2 + a3 c23) Observe que otra solucin admisible para 1 es q1 = p + a tan 2 (py, px) cuando 2 es igual a 2(1), donde 2(1) es una de las soluciones correspondientes a 1 que se obtiene con la ecuacin (6.27a), como se indica en la figura 6.7. Una vez que se conozca 1, la arquitectura restante es planar respecto a las variables 2 y 3. Por ende, explotando la solucin para la mueca del brazo planar de tres eslabones de la subseccin 6.2.1, se obtiene q3 = a tan 2 (s3, c3) en donde c3
2 2 2 2 2 + py + pz - a2 - a3 px 2 a 2 a3

(6.27a)

donde las entradas px y py son iguales a los elementos (4,1) y (4,2) de la matriz T, es decir,

(6.27b)

Z1 1 2(2)

X3 3(1) a2 2
(1)

a3

Efector terminal pW

(6.28)
Z2

X1, X2 3(2)

2 s 3 1 - c3

q2 = a tan 2 (s2, c2)

(6.29)

Figura 6.7 Dos soluciones admisibles

6.2

Anlisis de la posicin con cinemtica inversa

127

En la ecuacin (6.29), los argumentos s2 y c2 se evalan como s2 c2


(a 2 + a 3 c3) pz - a 3 s3 D
2 2 + py + a3 s3 pz (a2 + a3 c3 ) p x 2 2 + py px

El denominador es igual a px2 + py2 + pz2. El problema inverso de este brazo admite cuatro soluciones. Dos de ellas se presentan en la figura 6.7, mientras que una de las otras dos es la imagen de espejo de la figura alrededor del eje Z1, seguido por una rotacin alrededor de Z2 para alcanzar pw. La cuarta solucin es la imagen de espejo de los ltimos dos eslabones alrededor de X1 desde su ltima configuracin. Para un brazo de robot que es ms genrico por naturaleza donde se da el desplazamiento del eslabn b2 0, tambin puede verse que existen cuatro soluciones, como se presenta en la figura 6.8a). Segn los valores de 1, 2 y 3, se conocen como hombro al frente / codo arriba (SFEU) y hombro-frente / codo abajo (SFED), como lo muestran las lneas continuas; y hombro atrs / codo arriba (SBEU) y hombro atrs / codo abajo (SBED), como lo muestran las lneas punteadas.

Observe que para la configuracin de hombro al frente, las configuraciones de codo arriba y codo abajo se muestran en la figura 6.8b). Es obvio que la orientacin del antebrazo es distinta para los dos pares de soluciones. Observe tambin que slo es posible encontrar las soluciones si px 0 y py 0. En caso de que px = py = 0, la ecuacin (6.27a) no proporciona ningn 1. Adems, se obtiene una infinidad de soluciones y es posible determinar las variables de las articulaciones 2 y 3, independientemente del valor de 1. A continuacin se ver que el brazo en una de estas configuraciones es cinemticamente singular y, ms especficamente, tiene singularidad de hombro.
Hombro atrs Codo arriba, codo abajo

Codo arriba

Codo abajo Hombro al frente Codo arriba, codo abajo a) Cuatro configuraciones b) Vista frontal correspondiente a hombro al frente

Figura 6.8 Conguraciones de un brazo articulado con desplazamiento no cero

128

CAPTULO

Cinemtica

Ejemplo 6.13

Cinemtica inversa del brazo articulado

Con el fin de encontrar las cuatro soluciones admisibles del brazo que se presenta en la figura 6.7, deben considerarse los siguientes valores numricos: a2 = a3 = 1 unidad, y px = 1 unidad, py = pz = 0 unidades. Las soluciones se evalan entonces como 1) 2) 3) 4) q1(1) = 0o; q2(1) = 60o; q3(1) = 120o; Configuracin SFEU q1(1) = 0o; q2(2) = 60o; q3(2) = 120o; Configuracin SFED q1(2) = 180o; q2(1) = 240o; q3(1) = 120 o; Configuracin SBEU q1(2) = 180o; q2(2) = 120o; q3(2) = 120o; Configuracin SBED

Observe que los valores de px, py y pz se toman de tal modo que las cuatro soluciones de arriba pueden verificarse fcilmente usando la figura 6.7.

Ejemplo 6.14

Cinemtica inversa del brazo articulado usando MATLAB

Con el fin de resolver el ejemplo 6.13, puede escribirse un programa de MATLAB, como se muestra abajo, que puede guardarse en un archivo, por ejemplo, ch6ikin3aa.m, y ejecutarse para arrojar los resultados que se sealan arriba. Adems, si se cambian los valores de a2, a3 y px, py, pz, que corresponden a los parmetros DH de robots, y la posicin del efector final, pueden generarse muchas otras soluciones.
%Inverse Kinematics of Articulated Arm %Non-zero constant DH parameters a2=1; a3=1; %Input px=1; py=0; pz=0; %Intermediate calculation delxy = px*px+py*py; del=delxy+pz*pz; %Calculations for theta_1 th11=atan2(py,px); th12=pi+atan2(py,px); %Calculations for theta_3 c3=(del-a2*a2-a3*a3)/(2*a2*a3); s3=sqrt(1-c3*c3); th31=atan2(s3,c3); th32=atan2(-s3,c3); %Calculation for finding theta_2 s21=(-(a2+a3*cos(th31))*pz-a3*s3*delxy)/del; c21=((a2+a3*cos(th31)) *delxy+a3*s3*pz)/del; s22=(-(a2+a3*cos(th31))*pz+a3*s3*delxy)/del; c22=((a2+a3*cos(th31)) *delxya3*s3*pz)/del;

6.2

Anlisis de la posicin con cinemtica inversa

129

th21=atan2(s21,c21); th22=atan2(s22,c22); th23=pi-th21; th24=pi-th22; %Angles in degree r2d=180/pi; th11d=th11*r2d, th12d=th12*r2d, th21d=th21*r2d, th22d=th22*r2d, th23d = th23*r2d, th24d = th24*r2d, th31d=th31*r2d, th32d=th32*r2d

6.2.3

Una mueca

Considere la mueca de la figura 6.9, cuyas relaciones cinemticas pueden darse mediante la ecuacin (6.12). Se buscan las variables de las articulaciones 1, 2 y 3, correspondientes a una orientacin del efector final Q con la siguiente forma:

LMq Q Mq MNq

11 21

q12 q 22 q32

q13 q23 q33

31

OP PP Q

donde qij, para i, j = 1, 3, son los elementos de la matriz de bloque Q de la matriz de transformacin homognea T, ecuacin (6.12). Entonces es posible computar las soluciones de los ngulos de las articulaciones directamente como q1 = a tan 2 (q23, q13) q2 = a tan 2

q3 = a tan 2 ( q32, q31)

FH

2 q13

2 , q23

q33

IK

(6.30a) (6.30b) (6.30c)

para 2 entre 0 y . Observe que si se permite que cada articulacin gire 360, existen dos posibles soluciones para los ltimos tres desplazamientos de las articulaciones. En efecto, ya que las ecuaciones (6.30a-c) involucran la funcin de arcotangente, el ngulo 1 podr tener dos valores que se encuentran a 180. Las dos configuraciones que corresponden a las dos soluciones se ilustran en la figura 6.9.
Z1 X3, X4 #2 #2 Z2 X1, X2 #1 #1 #3 Z3, Z4 #3

Solucin i(1)

Solucin i(2)

Figura 6.9

Mltiples conguraciones de la mueca

130

CAPTULO

Cinemtica

Supongamos que i(1) y i(2) son la primera y la segunda solucin con i(1) i(2). Se relacionan por q1 (2) = q1 (1) + p; q2(2) = q2 (1); Por lo tanto, para 2 entre y 0, q1 = a tan 2 ( q23, q13)
2 2 , q33 q2 = a tan 2 - q13 + q23

y q3 (2) = q3(1) + p

q3 = a tan 2 (q32, q31)

FH

IK

(6.31a) (6.31b) (6.31c)

Aqu se observa que los ngulos de articulaciones siempre tendrn que obtenerse usando los valores tan en vez de los valores sen o cos, debido a la razn que se explic despus de la ecuacin (6.18). Adems, observe que un robot de mueca particionada de 6 DOF tiene un total de ocho soluciones de cinemtica inversa para el anlisis de posicin.

Ejemplo 6.15

Cinemtica inversa de la mueca

Con el fin de encontrar las dos soluciones de la mueca de la figura 6.9, se consideran los siguientes valores numricos para la matriz de orientacin Q:

LM0 Q M0 NM1

0 -1 0

OP 0 PP 0Q

lo que lleva a los siguientes dos conjuntos de resultados: 1) q1(1) = 0o; q2(1) = 90 o; q3(1) = 0 o; 2) q1(2) = 180 o; q2(2) = 90 o; q3(2) = 180 o. Los valores arriba mencionados pueden verificarse fcilmente a partir de los sistemas de coordenadas adjuntos que aparecen en la figura 6.9.

6.3

Anlisis de velocidad: la matriz jacobiana


En las secciones anteriores se presentaron ecuaciones cinemticas que establecen las relaciones entre las variables de las articulaciones y la posicin y orientacin del efector final. En esta seccin se presentar la relacin entre las velocidades de articulaciones y las velocidades lineales y angulares correspondientes del efector final. Esta representacin de la relacin se describe mediante una matriz que se llama jacobiana, que depende de la configuracin del manipulador. La

Jacobiano ste es un trmino tomado de las matemticas para describir una funcin vectorial, f(x), para la cual se dene la jacobiana J como J f/x, que es la matriz de m n para la funcin m-dimensional f y la variable dependiente x de la dimensin n.

6.3

Anlisis de velocidad: la matriz jacobiana

131

matriz jacobiana es una de las herramientas ms importantes para la caracterizacin de manipuladores. De hecho, es til para: i) ii) iii) iv) encontrar configuraciones singulares analizar redundancias determinar algoritmos de cinemtica inversa para el anlisis de velocidad describir la relacin entre las fuerzas aplicadas al efector final y los pares de torsin resultantes en las articulaciones v) derivar los algoritmos de dinmica

Observe que las ecuaciones de cinemtica de posicin que se obtienen con las ecuaciones (6.1)-(6.3) tienen tanto la matriz de rotacin Q como el vector de posicin p, que son funciones de las variables de articulaciones p [1, n]T. Tanto la posicin como la orientacin del efector final varan conforme vara p. Aqu el objetivo es expresar la velocidad angular del efector final ve, la velocidad lineal, o simplemente la velocidad ve ( p), igual que una funcin de las velocidades de las articulaciones , como (6.32a) w =J q
e w

(6.32b) ve = Jv q donde J y Jv son las matrices de 3 n que describen la contribucin de las velocidades de a la velocidad angular del efector final ve y la velocidad ve, respectivalas articulaciones p mente. Las matrices J y Jv tambin son las funciones de las variables de articulacin p. Las ecuaciones (6.32a-b) pueden escribirse en forma compacta como te = Jq donde J
T T T

(6.33)

y te [ve ve ] . El vector de seis dimensiones te se describe aqu como la rotacin del efector final (ngeles, 2003), donde la matriz jacobiana J de 6 n es una funcin de las variables de articulacin p, nicamente. En las ecuaciones (6.32a-b), la velocidad ve fue especificada como la derivada respecto al tiempo de la posicin p del efector final, es decir, ve p, mientras que nada se mencion acerca de la velocidad angular ve y de la matriz de representacin de orientacin Q. Esto se deriva de la siguiente manera: i) Considere una matriz de rotacin de tiempo variable Q. Puesto que la matriz Q es ortogonal, tiene la siguiente propiedad: (6.34a) QQT = QTQ = 1 donde 1 es la matriz identidad de 3 3. La diferenciacin de la ecuacin (6.34a) respecto al tiempo nos da (6.34b) Q QT + Q Q T = O ii) Ahora introduzca (6.35a) W = Q QT donde W es la matriz antisimtrica de 3 3 debido a la ecuacin (6.34b), es decir, W + WT = O

LMJ OP NJ Q
w v

132

CAPTULO

Cinemtica

iii) La posmultiplicacin de ambos lados de la ecuacin (6.35a) por Q proporciona (6.36) WQ = Q lo que nos permite expresar la derivada de tiempo de la matriz de rotacin Q, es decir, Q, como una funcin de Q. iv) Ahora considere un vector arbitrario x sujeto a un cuerpo mvil. Las representaciones del vector x en el sistema coordenado fijo F y el sistema mvil sujeto al cuerpo M son [x]F y [x]M, respectivamente. Si Q representa la orientacin del sistema M respecto al sistema F, entonces [x]F = Q [x]M, cuya derivada respecto al tiempo es [ x ]F = Q [x]M + Q[ x ]M (6.37a) Puesto que el vector [x]M es la representacin del vector x fijo en el sistema mvil M, su expresin en el sistema M no cambia cuando se mueve el cuerpo. Por lo tanto, [x ]M = 0. Como resultado, la ecuacin (6.37a) se vuelve [ x ]F = Q [x]M (6.37b) Usando la expresin de Q, es decir, la ecuacin (6.36), la ecuacin (6.37b) se reescribe como [ x ]F = W Q [x]M (6.37c) En forma alternativa, si v denota la velocidad angular del cuerpo rgido al que el sistema M se sujeta, entonces se sabe, segn los principios bsicos de la mecnica (Ghosh y Mallik, 1998), que (6.38) [ x ]F = [w x]F, o [ x ]F = [w ]F Q[x]M donde denota el producto cruz entre dos vectores cartesianos tridimensionales. Al comparar las ecuaciones (6.37c) y (6.38), es obvio que la matriz antisimtrica W denota el operador vectorial entre el vector v y el vector Q[x]M. La matriz W es tal que sus elementos simtricos respecto a los elementos de diagonal cero representan los componentes del vector v, es decir, v [wx, wy wz]T en la forma

LM 0 W Mw MN- w

-w z 0
y

wy -w x 0

wx

OP PP Q

(6.39)

lo que justifica que W es una funcin de v.

Ejemplo 6.16

Matriz de rotacin y velocidad angular

Considere la matriz de rotacin elemental alrededor del eje Z que se da en la ecuacin (5.21). Si el ngulo de rotacin es , que es una funcin del tiempo, entonces la matriz de rotacin Q es como sigue:

LMcos a Q M sen a NM 0

- sen a cosa 0

PPO 1P Q
0 0

(6.40)

6.4

Velocidades de eslabones

133

Su derivada respecto al tiempo Q se obtiene entonces por

LM- a sena Q = M a cos a MN 0


W QQ
T

- a cos a - a sen a 0

OP 0P 0P Q
0

(6.41a)

Por lo tanto, la matriz del producto cruz W, asociada con el vector de velocidad angular v, se calcula como

LM 0 = Ma MN 0

-a 0 0

OP P 0P Q
0 0

(6.41b)

Al comparar las ecuaciones (6.39) y (6.41b), el vector de velocidad angular v se obtiene por w [wx , wy, wz]T = [0 0 a ]T que es la velocidad angular del sistema coordenado alrededor del eje Z.

6.4

Velocidades de eslabones

Considere un eslabn genrico i de un manipulador. De acuerdo con la convencin de Denavit-Hartenberg (DH) presentada en la seccin 5.4, el eslabn i conecta las articulaciones i e i + 1, mientras que el eslabn i 1 conecta las articulaciones i 1 e i. Observe que el sistema i se sujeta al eslabn i 1 con su origen sobre el eje de la articulacin i, como se muestra en la figura 6.10. Suponga que oi y oi1 son los vectores de posicin de los orgenes de los eslabones i e i 1, es decir, Oi y Oi1, respectivamente. Suponga que ai1 denota la posicin del origen del eslabn i respecto al eslabn i 1. De acuerdo con las reglas de la suma de vectores, puede escribirse oi = oi 1 + ai 1
Articulacin i 1 Oi1 ai1 Sistema coordenado i Oi ei Articulacin i ai oi Eslabn i Oi+1 Articulacin i + 1 Sistema coordenado fijo X O Y

(6.42a)

Eslabn i 1 oi1 Z

Figura 6.10

Eslabones acoplados de un robot

134

CAPTULO

Cinemtica

Mediante la diferenciacin de la expresin anterior, la velocidad del origen del eslabn i, es decir, Oi, se obtiene como (6.42b) o i = o i 1 + a i 1 donde a i1 = i1 ai1, en el cual vi1 es la velocidad angular del eslabn i 1. Puesto que oi y oi1 son tambin los vectores de posicin de los puntos en los eslabones i e i 1, respectivamente, la ecuacin (6.43b) proporciona la expresin de la velocidad lineal del eslabn i como funcin de la velocidad y de la velocidad angular del eslabn i 1. Para la expresin de la velocidad angular del eslabn i, v1, puede obtenerse como w i = w i 1 + w i, i 1 (6.43) donde vi1 es la velocidad angular del eslabn i 1 y vi,i1 es la velocidad angular relativa del eslabn i respecto al eslabn i 1. Observe que las ecuaciones (6.42a-b) logran expresiones distintas, dependiendo del tipo de articulacin i, es decir, de revoluta o prismtica.

Articulacin de revoluta Puesto que la articulacin de revoluta proporciona un


movimiento angular para un eslabn respecto a su movimiento previo, el ngulo de articulacin i, como se defini en la seccin 5.4, es variable. Si ei denota el vector unitario paralelo al eje de la articulacin de revoluta, entonces i,i1 = i ei. Por lo tanto, i de la ecuacin (6.43) puede reescribirse como w i = w i 1 + q i ei (6.44a) (6.44b) La correspondiente expresin de velocidad, ecuacin (6.42b), se proporciona por

o i = o i 1 + w i 1 ai 1

Articulacin prismtica Una articulacin prismtica slo permite el movimiento de traslacin relativo. Es decir, la longitud de articulacin bi es variable y no hay movimiento angular relativo entre los eslabones i 1 e i. Por lo tanto,
w i = w i 1 y la expresin de velocidad, ecuacin (6.42b), es como sigue: (6.45a)

o i = o i 1 + w i 1 ai 1 + b i ei

(6.45b)

donde ei es el vector unitario paralelo a la direccin de traslacin del eslabn i respecto al eslabn i 1 y biei es la velocidad lineal relativa.

6.5

Computacin jacobiana

Aqu se derivar la expresin general para la matriz jacobiana J, ecuacin (6.33). Puesto que el efector final es el cuerpo n-simo de la cadena serial, la velocidad angular y la velocidad del efector final, ve y ve, respectivamente, se obtienen a partir de las velocidades del n-simo , como eslabn, es decir, vn y o n w e w n, y ve = o n + w n ane (6.46) donde ane es el vector de posicin tridimensional del efector final respecto al origen del n-simo eslabn On. Entonces se computan las velocidades de los eslabones empezando des-

6.5

Computacin jacobiana

135

de el cuerpo fijo, es decir, el eslabn 0, y siguiendo las relaciones recursivas que se obtienen con las ecuaciones (6.44a-b) o con las ecuaciones (6.45a-b), dependiendo del tipo de articulaciones que se usan. Por ejemplo, si todas las articulaciones son de rotacin, entonces w0 = 0 w 1 = q 1 e1 w n = q 1 e 1 + q 2 e 2 + + q n en y (6.47a) (6.47b) (6.47c) (6.48a) (6.48b)

o1 = 0 o 2 = o 1 + w 1 a1 = q 1 e1 a12

(6.48c) o n = q 1 e1 a1, n + q 2 e2 a2, n + + q n 1 en 1 a n 1, n donde ai,j ai + +aj1 es el vector que conecta el origen del eslabn i al origen del eslabn j, es decir, Oj. Segn las ecuaciones (6.46)-(6.48), la matriz jacobiana J de la ecuacin (6.33) puede escribirse como J =

donde ai,e ai,n + an es el vector presentado en la figura 6.4 para i = 1,2, y J es la matriz de 6 n. Segn la ecuacin (6.49), la i-sima columna de la matriz, J, denotada como ji, puede escribirse como

LM e Ne a
1 1
i

1e

e2 en e 2 a 2 e e n a ne

OP Q

(6.49)

LM e OP si la articulacin i es de rotacin, y Ne a Q L0O j M P si la articulacin i es prismtica Ne Q


ji
i i, e
i

(6.50a) (6.50b)

Ejemplo 6.17

Jacobiano del brazo de dos eslabones

Puesto que hay dos articulaciones rotacionales que slo pueden usarse para el posicionamiento del efector final, el rengln de bloques superior de la ecuacin (6.49) que corresponde a la orientacin del efector final no es relevante. Por lo tanto, el jacobiano del manipulador de dos eslabones puede expresarse como J = [e1 a1e e2 a 2e ] e1 e2 [0 0 1]T. Adems, a1e a1 + a2 [a1 c1 + a2 c12 a1 s1 + a2 s12 0]T a2e a2 [a2 c12 a2 s12 0]T s1 = sen q1; c1 cos q1; s12 sen ( q1 + q2); c12 cos (q1 + q2) donde donde (6.51a)

136

CAPTULO

Cinemtica

Observe que todos los vectores, segn la ecuacin (6.51), se expresan en un sistema fijo, es decir, el sistema 1. Adems, si se extraen los elementos no cero de la ecuacin (6.51a), la matriz jacobiana de 2 2 resultante se obtiene por J =

LM- a s - a s Na c +a c
1 1 1 1

2 12

- a2 s12 a2 c12

2 12

OP Q

(6.51b)

Ejemplo 6.18

Jacobiano del brazo de tres eslabones

Puesto que hay tres articulaciones rotacionales, la ecuacin (6.49) da e1 e2 e3 J = e1 a1e e 2 a 2 e e 3 a 3e donde e1 e2 e3 [0 a1e a1 + a2 + a3 a2e a3e [a1 c1 + a2 c12 + a3c123 a1 s1 + a2 s12 + a3s123 0]T a2 + a3 [a2 c12 + a3c123 a2 s12 + a3s123 0]T a3 [a3c123 a3s123 0]T 0 1]T. Adems,

(6.52)

donde s1, c1, s12 y c12 se definen segn la ecuacin (6.51a), mientras que s123 y c123 se definen como sigue: s123 y sen (R1 + R2 + R3); y c123 y (R1 + R2 + R3) Una vez que los elementos de los vectores ei y aie para i = 1, 2, 3, representados en el sistema fijo 1, se sustituyen en la ecuacin (6.52), habr tres renglones no cero correspondientes al movimiento planar de tres grados de libertad del manipulador, que son relevantes, es decir,
1 LM J = M- a s - a s MN a c + a c
1 1 1 1 2

1 - a3 s123 - a2 s12 - a3 s123 a2 c12 + a3 s123

1 - a3 s123 a3 c123

2 12

12 + a3 c123

OP PP Q

(6.53)

Los tres renglones de arriba se refieren a los componentes del valor escalar de la velocidad angular alrededor del eje Z1, y a los dos valores para la velocidad lineal a lo largo de los ejes X1, Y1, respectivamente.

Ejemplo 6.19

Brazo articulado antropomrco

La matriz jacobiana para la parte del brazo del robot articulado antropomrfico que se muestra en la figura 6.4 se obtiene segn la ecuacin (6.49). Los elementos de los vectores se obtienen mediante las matrices de transformacin que se dieron en el ejemplo 6.6, es decir,

6.5

Computacin jacobiana

137

[e1]1 y [a1e]1 [a2e]1

LM0OP 0 ; [e ] MM1PP NQ
2

1 [e3]1

LM- s OP c MM PP N0Q
1 1
3e]1 [a3]1

(6.54a)

LMc (a c + a c Ms (a c + a c MN - (a s + a s
1 2 2 1 2 2 2 2

3 23 )

3 23

3 23

OP ) P ; [a )P Q

LMa c c Ma s c MN - a s
- s1

3 1 23 3 1 23 3 23

OP PP Q

(6.54b)

Por lo tanto, la matriz jacobiana de 6 3 se obtiene por

0 LM 0 MM 1 J = M +a c ) s ( a c MM MM c (a c 0+ a c ) N
1 2 2 3 23 1 2 2 3 23

- s1

c1 c1 0 0 - c1 (a2 s2 + a3 s23) - a3 c1 s23 - s1 (a2 s2 + a3 s23) - a3 s1 s23 - (a2 c2 + a3 c23) - a3 c23

OP PP PP PP PQ

(6.54c)

Ejemplo 6.20

Jacobiano de un robot PUMA usando MATLAB

Puesto que la evaluacin de la expresin jacobiana para el robot PUMA es difcil, se escribe a continuacin un programa en MATLAB para las configuraciones que se presentan en la figura 6.5.
%Jacobian calculation for PUMA Robot syms a1 a2 a3 a4 a5 a6 b1 b2 b3 b4 b5 b6 al1 al2 al3 al4 al5 al6 th1 th2 th3 th4 th5 th6; %For PUMA Robot DH parameters al1=-pi/2;al2=0;al3=pi/2;al4=-pi/2;al5=pi/2;al6=0; sal1 = -1; cal1 = 0; sal2 = 0; cal2 = 1; sal3 = 1; cal3 = 0; sal4 = -1; cal4 = 0; sal5 = 1; cal5 = 0; sal6 = 0; cal6 = 1; th1=0;th2=-pi/2;th3=pi/2;th4=0;th5=0;th6=0; sth1 = 0; cth1 = 1; sth2 = -1; cth2 = 0; sth3 = 1; cth3 = 0; sth4 = 0; cth4 = 1; sth5 = 0; cth5 = 1; sth6 = 0; cth6 = 1; t1m = [cth1, -sth1*cal1, sth1*sal1, 0,sal1,cal1,b1; 0,0,0,1]; t2m = [cth2, -sth2*cal2, sth2*sal2, 0,sal2,cal2,b2; 0,0,0,1]; t3m = [cth3, -sth3*cal3, sth3*sal3, 0,sal3,cal3,b3; 0,0,0,1]; t4m = [cth4, -sth4*cal4, sth4*sal4, 0,sal4,cal4,b4; 0,0,0,1]; a1*cth1; sth1, cth1*cal1, -cth1*sal1, a1*sth1; a2*cth2; sth2, cth2*cal2, -cth2*sal2, a2*sth2; a3*cth3; sth3, cth3*cal3, -cth3*sal3, a3*sth3; a4*cth4; sth4, cth4*cal4, -cth4*sal4, a4*sth4;

138

CAPTULO

Cinemtica

t5m = [cth5, -sth5*cal5, sth5*sal5, a5*cth5; sth5, cth5*cal5, -cth5*sal5, a5*sth5; 0,sal5,cal5,b5; 0,0,0,1]; t6m = [cth6, -sth6*cal6, sth6*sal6, a6*cth6; sth6, cth6*cal6, -cth6*sal6, a6*sth6; 0,sal6,cal6,b6; 0,0,0,1]; %To extract a_ie vectors in their own frames t56m=t5m*t6m; t46m=t4m*t56m; t36m=t3m*t46m; t26m=t2m*t36m; t16m=t1m*t26m; a6v=t6m(1:3,4);a56v=t56m(1:3,4);a46v=t46m(1:3,4);a36v=t36m(1:3,4);a26v=t26 m(1:3,4);a16v=t16m(1:3,4); %To form rotation matrices for coordinate transformations q1m=t1m(1:3,1:3); q12m=q1m*t2m(1:3,1:3); q13m=q12m*t3m(1:3,1:3); q14m=q13m*t4m(1:3,1:3); q15m=q14m*t5m(1:3,1:3); %e_i and e_i x a_ie vectors in the 1st frame e6v_1=simple(q15m(1:3,3)), e6ca6v_1=simple(q15m*[-a6v(2);a6v(1);0]) e5v_1=simple(q14m(1:3,3)), e5ca56v_1=simple(q14m*[-a56v(2);a56v(1);0]) e4v_1=simple(q13m(1:3,3)), e4ca46v_1=simple(q13m*[-a46v(2);a46v(1);0]) e3v_1=simple(q12m(1:3,3)), e3ca36v_1=simple(q12m*[-a36v(2);a36v(1);0]) e2v_1=simple(q1m(1:3,3)), e2ca26v_1=simple(q1m*[-a26v(2);a26v(1);0]) e1v_1=[0;0;1], e1ca16v_1=[-a16v(2);a16v(1);0]

Ejemplo 6.21

Jacobiano para la conguracin del robot PUMA de la gura 6.5

La matriz jacobiana del robot PUMA para la configuracin presentada en la figura 6.5 se obtiene del programa MATLAB del ejemplo 6.20 como

donde a56 a5 + a6; a456 a4 + a56; y a3456 a3 + a456. Segn la ecuacin (6.55), puede verificarse que por lo menos los primeros tres renglones son verdaderos, ya que son los componentes de los vectores unitarios que representan los ejes de las articulaciones de revoluta del robot PUMA en el sistema fijo, es decir, el sistema 1.

LM 0 MM 0 1 J= M MM- b - b - b MMN a + 0a
2 3 1 3456

0 1 0 a2 + b4 + b6 0 - a3456

0 1 0 b4 + b6 0 - a3456

0 0 1 - b5 a456 0

0 1 0 b6 0 - a56

OP PP PP a P PQ 0P
0 0 1 0
6

(6.55)

6.6

Jacobiano usando el DeNOC*

En esta subseccin, primero se deriva el concepto de las matrices de complemento ortogonal natural desacoplado (DeNOC) (Saha, 1999), que se introdujo originalmente para el mode* Sugerido para el nivel PG.

6.6

Jacobiano usando el DeNOC

139

lado dinmico de robots seriales, y posteriormente se us para sistemas paralelos y otros de ciclo cerrado. Posteriormente, se muestra cmo el DeNOC puede usarse para derivar la matriz jacobiana.

El origen del DeNOC Apareci por primera vez en 1995, cuando fue presentado durante la Conferencia Internacional sobre Robtica y Automatizacin del IIEE celebrada en Nagoya, Japn.

6.6.1

Denicin del DeNOC

Primero se define la rotacin de un cuerpo rgido como ti

LMw OP No Q
i i

(6.56)

son los vectores tridimensionales de la velocidad angular y de la velocidad del donde vi y o i origen del cuerpo i-simo, es decir, Oi. Haciendo uso de la definicin de la rotacin que se da en la ecuacin (6.56), las ecuaciones (6.44a-b) se reescriben ahora como (Bhangale, 2004) (6.57a) ti = Ai, i 1 t i 1 + piq i donde i es el ndice de articulacin de la i-sima articulacin de rotacin de i, ei es el vector unitario a lo largo del eje de la articulacin de i y ai1 es el vector que denota el punto Oi respecto a Oi1, como se muestra en la figura 6.10 para ai. Adems, la matriz ti1 es el vector de rotacin en 6 dimensiones de cuerpo (i 1). Adicionalmente, la matriz Ai,i1 de 6 6 y el vector pi de seis dimensiones se definen por Ai, i 1 y pi

LM Na

O i, i -1 1 1

OP Q

LMe OP N0Q
i

(6.57b)

Observe aqu que el vector pi de arriba es distinto del vector tridimensional p de la ecuacin (6.3) que representa la posicin del efector final de un robot. Tambin en la ecuacin (6.57b), ai,i1 ai1,i = ai1 es el vector del origen del cuerpo i al origen del (i 1), 1 y O son las matrices de 3 3 de identidad y cero, respectivamente, 0 es el vector tridimensional de ceros y ai,i1 1 es el tensor del producto vectorial asociado con el vector ai,i1 que se define como (ai,i1 1)x = ai,i1 x, para cualquier vector cartesiano tridimensional x. La matriz Ai,i1 y el vector pi tienen las siguientes interpretaciones fsicas: i = 0, es decir, cuando los dos eslabones (i 1) e i se conectan rgidamente, Ai,i1 1) Si q ti,i1 propaga la rotacin ti1 a ti. Esto quiere decir que la velocidad angular del eslabn i permanece igual a la de (i 1), es decir, vi = vi1, y la velocidad lineal del punto Oi, o i se obtiene de la velocidad del punto Oi1, o i1 y de la velocidad angular del eslabn (i 1), vi1, es decir, o i=o i1 + vi1 ai1. La matriz de 6 6 Ai,i1 se llama aqu matriz de propagacin de rotacin (Saha, 1999) que tiene la siguiente propiedad: Ai 1,i Ai ,i+1 = Ai1, i +1 (6.58)

140

CAPTULO

Cinemtica

2) Cuando i 0, es decir, cuando el movimiento de la articulacin i-sima se permite, pii, se suma a los componentes de Ai,i1ti1, dando de esta manera pie a la rotacin real del cuerpo i-simo ti. Por lo tanto, al vector de seis dimensiones pi se le llama vector de propagacin de movimiento de articulacin de la i-sima articulacin. Observe aqu que si la i-sima articulacin es prismtica, la expresin de pi en la ecuacin (6.57a) cambia a pi

LM 0 OP Ne Q
i

(6.59)

y no habr ningn cambio en la expresin de la matriz Ai,i1. Ahora, para n cuerpos del manipulador serial, las ecuaciones (6.47-6.48) se obtienen por t1 = p1q 1 t2 = A21 t1 + p2q 2 tn = An,n 1 t n 1 + pnq n Las ecuaciones (6.60a-c) se escriben en forma compacta as: t = At + Nd q (6.61a) donde el vector de rotacin generalizada de seis dimensiones t, la matriz bidiagonal del bloque inferior de 6n 6n A, la matriz diagonal del bloque inferior de 6n 6n Td y el vector se obtienen por de ndice de articulacin de n dimensiones p (6.60a) (6.60b) (6.60c)

LM t OP LM O A t t M P ;A M MM PP MM Nt Q MN O
1 2 n

21

O A n , n -1

OP LMp OP 0 ;N M PP MM OP N0 Q
O
d

0 p2

OP LMq PP ; q MMq P MMNq p Q


0
n
T

1 2

OP PP PP Q

(6.61b) Cuando se reescribe la ecuacin (6.61a) como (1 A) t = Nd q (6.62) puede encontrarse fcilmente la rotacin generalizada t, definida como t [t1 tnT]T en , es decir, trminos del vector de ndice de articulacin p t = Nl Nd q donde N1 (1 A)1, cuya expresin puede obtenerse como (6.63)

Nl (1 A)1

LM 1 MM A A MM MNA

21 31

O 1 A 32

O 1 A n, n -1

O O

n,1

OP PP P OP 1P Q

(6.64)

6.6

Jacobiano usando el DeNOC

141

En la ecuacin (6.63) se seala el resultado de N1Nd como matriz de Complemento Ortogonal Natural (NOC), que fue originalmente propuesta por ngeles y Lee (1988), mientras que la forma desacoplada que se obtiene por la ecuacin (6.63), llamada matrices NOC Desacopladas (DeNOC), aparecieron por vez primera en Saha (1995). A continuacin se mostrar cmo pueden usarse las matrices DeNOC para derivar la matriz jacobiana de un manipulador.

6.6.2

Derivacin de la matriz jacobiana

La matriz jacobiana, ecuacin (6.33), se deriva aqu a partir de la definicin de las matrices DeNOC que aparecen en la ecuacin (6.63). Observe que el efector final de un manipulador robtico no es ms que una parte del n-simo cuerpo con su posicin distinta de su origen On. Se ubica en un punto denotado por ane desde On. Por lo tanto, se introduce una matriz de propagacin de rotacin, digamos Aen, como se define en la ecuacin (6.57b) para encontrar la rotacin del efector terminal te a partir de tn, es decir, te = Aen tn donde la matriz de 6 6 Aen est dada por Aen (6.65a)

El vector aen se define como el vector ai+1,i ai, i+1 Si se sustituye la expresin de tn de la expresin de rotacin generalizada t de la ecuacin (6.61b), la ecuacin (6.65a) puede reescribirse como te = Aen N1n Nd q donde la matriz de 6 6, N1n, es como sigue: N1n [An1 An2 An, n1 1] (6.67) se obtienen con la ecuacin (6.61b). Si se sustituye la expresin de N1n de la en lo que Nd y p ecuacin (6.67) y Nd de la ecuacin (6.61b) a la ecuacin (6.66), se obtiene te = Aen [An1 p1, An2 p2 ,, An, n1 pn, pn ] q (6.68a) (6.66)

LM 1 OOP = LM 1 OOP Na 1 1 Q N- a 1 1 Q
en n

(6.65b)

Usando la propiedad de la matriz de propagacin de rotacin, ecuacin (6.58), la ecuacin (6.68a) puede escribirse en la forma de la ecuacin (6.33), donde J = [Ae1 p1, Ae2 p2 ,, Aen pn, pn] (6.68b) En la ecuacin (6.68b), J es la matriz jacobiana de 6 n. Si se sustituyen las expresiones para la matriz Aei y el vector pi para i = 1 n, como se define en la ecuacin (6.75b), en la ecuacin (6.68b), dar como resultado la expresin familiar de J, como en la ecuacin (6.49), donde aei = aie aie es el vector que junta el origen del eslabn i-simo Oi con un punto en el efector final, como se presenta en la ecuacin (6.48c). Dependiendo del requerimiento, cualquiera de estas expresiones para la matriz jacobiana, es decir, la ecuacin (6.49) o la ecuacin (6.68b), podr usarse en beneficio del usuario, por ejemplo, para lograr eficiencia o para obtener mejores interpretaciones fsicas, etctera.

142

CAPTULO

Cinemtica

6.7

Singularidad

En la ciencia de la robtica surge frecuentemente la pregunta acerca de si la matriz J, como en la ecuaMatriz singular cin (6.33), es singular o no. Para un J no singular, se calculan los ndices de articulacin necesarios en Se trata de un trmino proveniente cada instante de tiempo a lo largo de la trayectoria de del lgebra lineal. Para un sistema de ecuaciones de lgebra lineal, Ax = b, movimiento del efector final. La verdadera pregunta A singular implica que no existe una es: el jacobiano es no singular o invertible para todos solucin para la incgnita x. Esto siglos valores de las posiciones de las articulaciones, es nica que el determinante de la madecir, p ? La mayora de los robots tienen valores de triz A desaparece. p donde el jacobiano se convierte en singular. Estas posiciones se llaman singularidades del robot. Todos los manipuladores robticos tienen singularidades en los lmites de su espacio de trabajo, y la mayora tiene posiciones geomtricas singulares dentro de sus espacios de trabajo. Un estudio a fondo de la clasificacin de singularidades supera el alcance de este libro. Sin embargo, las singularidades se clasifican normalmente como: 1. Singularidades de lmites del espacio de trabajo: Ocurren cuando el manipulador se extiende o se dobla completamente sobre s mismo, de tal modo que el efector final est cerca o en el lmite del espacio de trabajo. 2. Singularidades interiores del espacio de trabajo: ocurren fuera de los lmites del espacio de trabajo y por lo general se producen cuando se alinean dos o ms ejes de las articulaciones. Observe que cuando un manipulador se encuentra en una posicin singular, ha perdido uno o ms grados de libertad, visto desde el espacio cartesiano. Esto significa que hay alguna direccin en el espacio cartesiano a lo largo de la cual es imposible mover el efector final del robot, sin importar qu incrementos en la articulacin se seleccionen. Es obvio que estas situaciones ocurren en los lmites del espacio de trabajo. Alternativamente, los incrementos en las articulaciones se acercan a infinito conforme se llega a la posicin singular. En situaciones prcticas, el controlador exigir potencia de los actuadores para cumplir con el requerimiento infinito de incremento en la articulacin. Como resultado, el actuador ser desactivado para prevenir un dao de consideracin.

Ejemplo 6.22

Singularidad del brazo planar de dos eslabones

En la figura 6.2, las singularidades pueden obtenerse mediante la igualacin a cero del determinante jacobiano asociado , es decir, det(J) = 0. La matriz jacobiana de 2 2, J, se obtiene segn la ecuacin (6.51b) como J

LM- a s - a s Na c +a c
1 1 1 1

2 12

2 12

- a2 s12 a2 c12

OP Q

(6.69)

6.8

Anlisis de aceleracin

143

donde det(J) = a1a2s2, lo que implica que el brazo es singular cuando 2 = 0 o . Fsicamente, cuando 2 = 0, el brazo se extiende en forma recta. En esta configuracin, el movimiento del efector final slo es posible a lo largo de una direccin que es perpendicular al brazo. De igual manera, cuando 2 = , el brazo se dobla completamente sobre s mismo, y nuevamente el movimiento de la mano slo es posible en un sentido cartesiano en lugar de dos. stas se llaman singularidades de frontera.

Ejemplo 6.23

Singularidad del brazo antropomrco

En la figura 6.4 y en el ejemplo 6.19, las singularidades del brazo correspondientes a los movimientos lineales pueden obtenerse a partir del determinante del jacobiano asociado, es decir, usando los ltimos tres renglones de la ecuacin (6.54c). Esto se denota como Jv en la ecuacin (6.32b) de la siguiente manera:

Jv

LM- s (a c + a c ) = M c (a c + a c ) MN 0
1 2 2 3 23 1 2 2 3 23

- c1 (a2 s2 + a3 s23) - a3 c1 s23 - s1 (a2 s2 + a3 s23) - a3 s1 s23 - (a2 c2 + a3 c23) a3 c23

OP PP Q

(6.69a)

El determinante de Jv se obtiene como det(Jv) = a22 a3 sq3 cq2 +


1 a a 2 [s(q2 + 2q3) sq2] 2 2 3

(6.69b)

Segn la ecuacin (6.69b), queda claro que una de las configuraciones singulares sucede cuando 3 = 0 o , es decir, cuando los eslabones 2 y 3 estn en una lnea, esto es, extendidos o doblados, como en el caso del brazo planar.

6.8

Anlisis de aceleracin

Normalmente, se requieren los resultados del anlisis de aceleracin en los clculos dinmicos donde las fuerzas de inercia se equiparan con las fuerzas externas. Las expresiones de aceleracin pueden obtenerse mediante la diferenciacin de las expresiones de velocidad. Por ejemplo, las aceleraciones del efector final de un robot se obtienen al diferenciar la ecuacin (6.33) como
t e = Jq + J q (6.70a) T T donde te = [v e ve ] v e, y ve son las aceleraciones angular y lineal del efector final, res [ T pectivamente, y p 1 p n] , donde 1 representa la aceleracin de articulacin para la se obtiene por articulacin i. La columna i de J
ji

LM Ne a
i

ei i , e + e i a i, e

OP Q

(6.70b)

144

CAPTULO

Cinemtica

ya son la derivada de tiempo de los vectores e y a , que se obtienen de Los vectores e i,e i i,e las ecuaciones (6.50a) y (6.50b), respectivamente.

Ejemplo 6.24

Anlisis de aceleracin del brazo planar de dos eslabones

Usando la ecuacin (6.70a), la derivada respecto al tiempo de la matriz jacobiana J para el brazo de dos eslabones puede darse como
J

LM- a c q N- a s q

1 1 1 - a 2 c12 (q 1 + q 2 ) 1 1 1 - a 2 s12 (q 1 + q 2 )

- a2 c12 (q 1 + q 2 ) - a2 s12 (q 1
2

OP + q )Q

(6.71)

q [q 1, q 2]T.

Ejemplo 6.25

Anlisis de aceleracin del brazo antropomrco

De manera similar al caso planar del ejemplo 6.24, la derivada respecto al tiempo de la matriz jacobiana J para el brazo antropomrfico se obtiene por

LM MM J= M MM-c q (a MM- s q (a N
1 1 1 1

0 - c1q 1 - c1q 1 0 - s1q 1 - s1q 1 0 0 0 s1q 1 ( a2 s + a3s) - c1 (a2 cq 2 + a3cq 23) a3s s1q 1 - a3cc1q 23 2c + a3c) + s1( a2 sq 2 + a3sq 23) 2 c + a3c ) - c1 ( a2 sq 2 + a3sq 23) - c1q 1 ( a2 s + a3s) - s1 (a2 cq 2 + a3cq 23) - a3s c1q 1 - a3c s1q 23 a2 sq 2 + a3sq 23 a3sq 23 0

OP PP PP PP PQ

(6.72)

donde a2s a2 s2; a2c a2 c2; a3s a3 s23; a3c a3 c23 y q [q 1, q 2, q 3]T

RESUMEN
En este captulo se hace primero una introduccin a la cinemtica de cuerpos rgidos. Se presentan las representaciones de posicin y orientacin. Basado en los conceptos anteriores, se realizan anlisis de posicin, velocidad y aceleracin de un robot serial. Se hace hincapi en los anlisis de cinemtica directa e inversa y en la matriz jacobiana que aparece en el anlisis de velocidad. Tambin se introduce el concepto de las matrices DeNOC para la obtencin de la matriz jacobiana. Se dan varios ejemplos para entender los conceptos que se introducen en este captulo.

Ejercicios basados en la web

145

EJERCICIOS
Defina la cinemtica directa e inversa. Si los dos eslabones de un manipulador planar de dos eslabones tienen la misma longitud, encuentre la expresin para la matriz de transformacin homognea. 6.3 Determine la matriz de transformacin homognea general para el robot de brazo prismtico-rotacional que se presenta en la figura 5.26. 6.4 Encuentre las matrices de transformacin homognea, individuales y general para la mueca esfrica que se muestra en la figura 5.30. 6.5 Cul es la finalidad de una mueca? Cul es su grado de libertad (DOF)? 6.6 Puede usarse un brazo de posicin como mueca aunque tenga el mismo DOF? 6.7 Qu es el jacobiano de un sistema robtico? 6.8 Cmo ayuda el estudio de singularidad en el anlisis de un robot? 6.9 Puede haber singularidad dentro del espacio de trabajo de un robot? 6.10 Derive la matriz jacobiana para el ejercicio 6.2. 6.1 6.2

EJERCICIOS BASADOS EN LA WEB


6.11 Busque la matriz de transformacin general para el robot SCARA que se presenta en la figura 5.28. 6.12 Exprese la matriz jacobiana para el robot SCARA que se muestra en la figura 5.28. 6.13 Determine por lo menos una configuracin singular para un robot SCARA. 6.14 Repita los ejercicios 6.11 a 6.13 para la arquitectura del robot que se presenta en la figura 5.29. 6.15 Repita los ejercicios 6.11 a 6.13 para la arquitectura del robot que se presenta en la figura 5.30.

Captulo

7
Esttica

Cuando un manipulador robtico ejecuta una determinada tarea, por ejemplo, levantar una pieza de trabajo de una mquina, su efector final ejerce un momento y La esttica es la rama de la fsica apliuna fuerza sobre el ambiente externo en el punto de concada que se ocupa del anlisis de los momentos y las fuerzas que actan tacto. Esta fuerza y este momento se generan mediante sobre un sistema que est en equililos actuadores que se instalan en las diferentes articulabrio esttico. ciones. Para un manipulador serial, los momentos y las fuerzas de los actuadores se transmiten al punto de contacto por medio de una cadena de lazo abierto. En la esttica, se busca la relacin entre los pares de torsin/fuerzas, los momentos cartesianos y las fuerzas aplicadas en el efector final. Lo anterior tiene importancia prctica para determinar la calidad de la transmisin del momento y la fuerza a travs de las diferentes articulaciones de un manipulador robtico y sirve como base para clasificar el tamao de eslabones y cojinetes del manipulador, as como para la seleccin de los actuadores apropiados. Los resultados tambin pueden ser usados para satisfacer el sistema de control. La esttica del mecanismo espacial puede tratarse por medio de varios mtodos, por ejemplo, el mtodo de vectores, el principio de trabajo virtual y otros. En este captulo, se desarrollarn varios mtodos para representar las fuerzas estticas que actan sobre Equilibrio esttico un manipulador robtico y su transformacin entre diferentes sistemas de coordenadas. La transformacin En un equilibrio esttico, un sistema de momentos y fuerzas entre el espacio del actuador y est en reposo o movindose a veloel del efector final es el centro de este estudio. Con ello cidad constante a travs de su centro se muestra que los momentos y las fuerzas de entrada de masa. de actuadores se relacionan con las fuerzas de salida del efector final al trasponer la matriz Jacobiana del robot, como se observ en el captulo anterior. Adems, se introducen los diagramas de cuerpo libre para la derivacin de las reacciones generadas en diferentes articuQu es la esttica?

7.1

Balance de fuerzas y momentos

147

laciones. Desde la fase de diseo, es importante una comprensin profunda de las reacciones de las articulaciones para la clasificacin correcta del tamao de eslabones y actuadores. Primero se establecern las ecuaciones bsicas que rigen el balance esttico de un eslabn. Luego se aplicarn estas ecuaciones para el anlisis esttico de manipuladores seriales. Finalmente, se describir el concepto de pares de torsin y transformacin de articulaciones equivalentes entre las fuerzas del efector final y la torsin de articulaciones equivalentes.

7.1

Balance de fuerzas y momentos

En un manipulador robtico serial, cada eslabn se conecta a uno o dos eslabones por medio de varias articulaciones. La figura 7.1 representa las fuerzas y momentos que actan sobre un eslabn tpico i que se conecta con el eslabn i 1 mediante la articulacin i y con el eslabn i + 1 mediante la articulacin i + 1. Las fuerzas que actan sobre el eslabn i por el eslabn i 1 a travs de la articulacin i pueden ser reducidas a una fuerza resultante fi-1,i y a un momento resultante ni-1,i alrededor del origen Oi del i-simo sistema de coordenadas adjunta al eslabn (i 1). De manera parecida, las fuerzas que actan sobre el eslabn i + 1 por el eslabn i en la articulacin (i + 1) pueden reducirse a una fuerza resultante fi,i+1 y a un momento ni,i+1 alrededor del origen Oi+1 del i-simo sistema de coordenadas adjunto al i-simo eslabn. A continuacin se definen las siguientes notaciones: fi-1,i : Vector tridimensional de una fuerza resultante ejercida sobre el eslabn i por el eslabn i 1 en Oi. ni-1,i : Vector tridimensional de un momento resultante ejercido sobre el eslabn i por el eslabn i 1 en Oi. fi+1,i : Vector tridimensional de una fuerza resultante ejercida sobre el eslabn i por el eslabn i + 1 en Oi+1. Observe que fi+1,i = fi,i+1. ni+1,i : Vector tridimensional de un momento resultante ejercido sobre el eslabn i por el eslabn i + 1 en Oi+1, de tal modo que ni+1,i = ni,i+1. g : Vector tridimensional de aceleracin debido a la gravedad. di : Vector tridimensional que denota la posicin del centro de masa del i-simo eslabn Ci relativo al origen del i-simo sistema, es decir, Oi, como se indica en la figura 7.1. ri : Vector tridimensional que denota la posicin del origen del (i + 1)-simo sistema, es decir, Oi+1 relativo al centro de masa del eslabn i, Ci. ai : Vector de posicin tridimensional de Oi+1 respecto a Oi, de tal modo que ai = di + ri. Considere ahora el balance de fuerzas y momentos de la figura 7.1. Hay tres fuerzas que se ejercen sobre el eslabn i: fi1,i, fi+1,i(= fi+1,i) y mig. La ecuacin de balance de fuerzas se escribe entonces como fi 1,i - fi,i +1 + mi g = 0 (7.1) Ahora considere el balance de momentos alrededor de Oi en el eslabn i, es decir, el punto donde el eslabn i 1 se conecta al eslabn i. Hay dos momentos que actan sobre el eslabn i: ni1,i y ni+1,i(= ni,i+1). Adicionalmente, las fuerzas mig y fi,i+1 producen momentos alrededor de Oi. Al sumar estos momentos se obtiene ni 1,i ni, i +1 ai fi,i +1 + di m ig = 0 (7.2)

148

CAPTULO

7 Esttica
Zi+1 Articulacin, i Articulacin, i + 1 Ci

Zi

mig di Z1

ri ai ai Xi Oi

fi, i+1 ni, i+1

Oi+1

Y1 X1

ni1, i fi1, i

Figura 7.1

Fuerzas y momentos que actan sobre el eslabn i

donde fi1,i y ni1,i son las fuerzas y momentos de reaccin entre el eslabn i 1 y el eslabn i. Para i = 1, f01 y n01 representan la fuerza y el momento ejercidos sobre el primer eslabn mvil por el eslabn de la base fija. Para i = n + 1, fn,n+1 y nn,n+1 representan la fuerza y el momento ejercidos sobre el ambiente por el efector final. En este sentido, el ambiente se trata como un eslabn adicional, numerado n + 1. Las ecuaciones (7.1) y (7.2) se escriben para cada eslabn mvil i = 1, ..., n con el fin de proporcionar ecuaciones de 6n en 6(n + 1) nmero de fuerzas y momentos de reaccin. Por lo tanto, para dar una solucin nica, debern especificarse seis de las fuerzas y los momentos de reaccin. Cuando un manipulador realiza una tarea determinada, por ejemplo, una insercin o esmerilado, el efector final ejerce cierta fuerza o momento sobre su ambiente. Por otro lado, cuando el manipulador carga un objeto, el peso del objeto se convierte en una carga para el efector final. Por lo tanto, considerando la fuerza y el momento del efector final fm,n+1 y nm,n+1 como una cantidad conocida, pueden resolverse las ecuaciones (7.1) y (7.2) para las fuerzas y los momentos de reaccin restantes, es decir,

LM 1 MMO MMO MNO

O -1 - a 1 1 O -1 O 1 O O O O O O O 1 O

LM n OO M f OP PP MM n MM f P OP M 1P Q MMn Nf

01

01 12

12

n - 1, n

n - 1, n

OP LM PP MM PP = M PP MM PP MM- d Q MN

- d1 m1g - m1g - d 2 m2 g - m2 g
n

mn g + a n fn, n +1 + n n, n +1 - mn g + fn, n +1

OP PP PP PP PP Q

(7.3) Observe que la ecuacin (7.3) est dispuesta para escribir primero la ecuacin (7.2), seguida por la ecuacin (7.1). Esto se realiza para representar la ecuacin (7.3) en forma

7.2

Clculo recursivo

149

compacta, usando la definicin de una llave de torsin, que es un vector de seis dimensiones, es decir, n i - 1, i (7.4) w i 1, i f i - 1, i

LM N

OP Q

donde los vectores tridimensionales fi1,i y ni1,i son la fuerza de reaccin sobre el eslabn i por el eslabn i 1 en Oi y el momento sobre el eslabn i por el eslabn i 1 alrededor de Oi, respectivamente. Usando la ecuacin (7.4), la ecuacin (7.3) puede entonces reescribirse como

donde la matriz de 6 6, Ai,i+1, se define como A i, i +1

LM 1 MM MNO O

- A 12 O O 1

O O - A n - 1, n 1

OP LM w PP MMw PQ MMN w

01

n - 2, n -1 n - 1, n

OP PP PP Q

LM w = M MM w MNw + w
g 1 g n -1 g n

e n

OP PP PP Q

(7.5a)

en la cual ai,i+1 denota el vector tridimensional desde el punto Oi hasta Oi+1, es decir, ai,i+1 a1. La matriz Ai,i+1 se denomina matriz de propagacin de llave de torsin en Chaudhary y Saha (2005), que no es ms que la matriz traspuesta de la matriz de propagacin rotacional para los eslabones i e i + 1. La definicin de la matriz de propagacin rotacional se obtiene con la ecuacin (6.57b). Adems, wgi mi[(di g)T, gT]T y wen [(an fn.n+1 + nn.n+1)T f T n.n+1]T son los vectores de llave de torsin externos de seis dimensiones debido a la gravedad y a las entradas conocidas sobre el eslabn n, respectivamente. Asimismo, usando las notaciones
T T T w J [w T 01 w 12 w n 1,n] , y w

LM 1 NO

a i , i +1 1 1

OP Q

(7.5b)

de resolverse para wJ como donde Nu

LMw N

gT 1

g g T w2 (w n + we n)

OP , la ecuacin (7.5) pueQ


T

Observe que Nu en la ecuacin (7.6b) no es ms que la matriz traspuesta de la matriz Nd proporcionada por la ecuacin (6.64).

LM 1 O M MM NO

w J = Nu w

A 12 1 O O

A1 n A 2n 1

OP PP PQ

(7.6a)

(7.6b)

7.2

Clculo recursivo

En esta seccin, se desarrollar un mtodo recursivo para el anlisis esttico de un manipulador serial. El mtodo recursivo resuelve las fuerzas y los momentos que reaccionan en la articulacin de un eslabn, sin necesidad de resolver las ecuaciones 6n, (7.3) o (7.5), simultneamente. Para facilitar el anlisis basado en la definicin de llave de torsin proporcionada en la ecuacin (7.4), las ecuaciones (7.1) y (7.2) se escriben en forma recursiva como

150

CAPTULO

7 Esttica

f i 1, i = f i, i +1 mi g n i 1, i = n i, i +1 + a i f i, i +1 d i m i g

(7.7a) (7.7b)

Observe que los vectores en las ecuaciones (7.7 a-b) an no se expresan en algn sistema de coordenadas. Sin embargo, el vector de posicin ri a menudo se especifica en el sistema (i + 1)-simo, donde tiene representacin constante. Por otro lado, el vector ai puede expresarse de manera conveniente en el sistema i-simo en trminos de los parmetros DH como [a i ] i

Los vectores di pueden entonces obtenerse como


i

LMa cq OP Ma sq P MN b PQ
i i i i i i i

(7.8a)

[d i ] i

Donde

donde rix, riy y riz son los componentes del vector ri a lo largo de los ejes Xi+1-, Yi+1- y Zi+1- del sistema (i + 1)-simo y Qi es la matriz de rotacin que transforma la representacin del vector en el sistema (i + 1)-simo en el sistema i-simo. Usando las ecuaciones (7.7a-b), los momentos y fuerzas de reaccin de la articulacin pueden calcularse en forma recursiva. El proceso empieza con el ltimo eslabn donde el efector final se conecta. Contina con un eslabn a la vez y termina en el eslabn de la base. Para i = n, el momento y fuerza del efector final nn+1,n (=nn,n+1) y fn+1,n (=fn,n+1) se consideran como conocidos en el sistema adjunto a ellos, es decir, [ nn,n+1]n+1 y [ nn,n+1]n+1 son entradas. Por ende, las ecuaciones (7.7a-b) proporcionan el momento y fuerza de reaccin nn1,n y fn1,n en la n-sima articulacin: Los valores pueden evaluarse apropiadamente en el n-simo o en el (n 1)-simo sistema de coordenadas. El proceso se repite para i = n 1, ... 1 hasta que se hayan encontrado todos los momentos y fuerzas de reaccin. Ahora se muestra el clculo. Las ecuaciones (7.7a-b) para el i-simo eslabn se escriben primero en el (i + 1)-simo sistema que se adjunta a l, es decir, [f i 1, i] i +1 = [f i, i+1 mi g] i +1 [n i 1, i] i +1 = [ni , i +1 + a i f i, i +1 d i m i g] i +1 (7.9a) (7.9b)

LMa cq OP LMr OP [a ] [r ] = Ma sq P Q Mr P MN b PQ MNr PQ LMr OP [r ] Mr P NMr QP


i ix iy iz
i i i i

ix iy iz

i i +1

(7.8b)

Una vez que las fuerzas y momentos de reaccin se hayan calculado en el (i + 1)-simo sistema, se convierten en el i-simo sistema por medio de las siguientes transformaciones: [f i 1, i] i = Qi [f i 1, i] i +1 y [n i 1, i] i = Qi [n i 1, i] i +1 (7.10) Observe que el trmino g en las ecuaciones (7.9a-b) denota la aceleracin debida a la gravedad expresada en el (i + 1)-simo sistema. Puesto que g usualmente se especifica en el sistema fijo, es decir, el sistema 1, deber convertirse en el sistema adjunto al eslabn antes

7.3

Pares de torsin equivalentes

151

de ser sustituido en las ecuaciones (7.9a-b). Esto puede realizarse mediante la siguiente frmula recursiva: Para i = 1, ... n, (7.11) [g] i +1 = Q T i [g] i Adems, si el momento y fuerza del efector final se especifican en el sistema fijo, tambin debern transformarse dentro del sistema del efector final de la misma manera, es decir, [f n, n +1] n +1 = Q T[f n, n +1]1 y [ n n, n +1] n +1 = Q T [n n, n +1]1 (7.12) donde Q Q1 Qn Qi para i = 1, , n, siendo la matriz de rotacin entre los i-simo y (i + 1)-simo sistemas, es decir, la primera matriz de 3 3 de la matriz de transformacin homognea Ti derivada en la ecuacin (5.50b).

7.3

Pares de torsin equivalentes

Una vez que se conocen las fuerzas y momentos que reaccionan en las articulaciones, pueden determinarse las fuerzas o pares de torsin de los actuadores. Para un manipulador serial, cada articulacin se acciona mediante un actuador que ejerce una fuerza o un par torsin entre los dos eslabones adyacentes. Estas fuerzas o pares de torsin de actuacin pueden encontrarse mediante la proyeccin de las fuerzas que reaccionan sobre sus correspondientes ejes de articulaciones. Para una articulacin o rotacional, el actuador ejerce un par torsional alrededor del i-simo eje de articulacin. Suponiendo que el par torsional ficcional en la articulacin sea insignificante, la fuerza del actuador i se obtiene por (7.13) donde ei es el vector unitario que apunta a lo largo del i-simo eje de articulacin, es decir, Zi de la figura 7.1, alrededor del cual se est realizando el movimiento relativo entre los dos eslabones colindantes. El par torsional del actuador tiene aquel componente de ni1 que corresponde a la direccin del eje de la articulacin. Sus otros dos componentes son reacciones que debern ser soportadas por el cojinete de la articulacin. Al trmino i se le llama par torsional de la articulacin. Para una articulacin prismtica, la fuerza del actuador se obtiene de manera similar. Es la fuerza que se ejerce a lo largo del i-simo eje de la rotacional. Nuevamente, suponiendo que la fuerza de friccin en la articulacin sea insignificante, la fuerza del actuador, denotada con la misma letra i, se expresa como (7.14) t i = eiT f i 1, i donde ei es el vector unitario que apunta a lo largo del i-simo eje de articulacin positivo, a lo largo del cual se trasladan los dos eslabones adyacentes. La ecuacin (7.14) implica que la fuerza del actuador solamente lleva el componente de fi1,i a lo largo de la direccin del eje de la articulacin, mientras que sus otros componentes se apoyan en los cojinetes o rodamientos de la articulacin. Usando la notacin de llave de torsin de 6 dimensiones wi1,i, la fuerza de la articulacin o par torsional i puede escribirse como (7.15) t i = piT wi 1, i donde pi es el vector de propagacin de 6 dimensiones del movimiento de la articulacin para la articulacin rotacional o prismtica, segn fuere el caso, que se da en las ecuaciones (6.57b) o (6.59), respectivamente. ti = eiT n i 1, i

152

CAPTULO

7 Esttica

Ejemplo 7.1

Esttica de un brazo planar de dos eslabones

El brazo de manipulador planar de dos eslabones est aplicando una fuerza f sobre el ambiente, por ejemplo, una pared, con su efector final. Suponga que la fuerza f es conocida en el sistema del efector final, es decir, en el sistema 3. Por lo tanto, [f23]3 [fx, fy, 0]T. Los pares de torsin de la articulacin que se requieren se encuentran como funcin de las configuraciones del brazo y de los componentes de la fuerza aplicada. Observe que la gravedad no juega ningn papel cuando el manipulador se acuesta sobre el plano horizontal. En la figura 7.2 y en las ecuaciones (7.9-7.10),

[f23]3

LM f OP Mf P MN 0 PQ
x y x 2 2 x

y [f12]3 = [f23]3 para i = 2. Por lo tanto,

[f12]2 = Q2[f12]3

LM f cq = M f sq MN
2 2

- f y sq 2 + f y cq 2 0

OP PP Q

(7.16a)

donde la matriz de orientacin Q2 se obtiene por

Q2

LMcq M sq MN 0

- sq 2 cq 2 0

OP P 1P Q
0 0
X3 f

(7.16b)

Y3

Y1 Y2 a1 1 1 a2 2 2 X1 X2

Figura 7.2

Brazo planar de dos eslabones aplicando una fuerza

Entonces, puesto que no se ejerce ningn movimiento externo, es decir, n23 = 0, por parte del efector final, el momento [n12]2 se obtiene como
[n12]2 Q2 [a2 f23]3 = [a 2]2 [f 23]2 = [a2 f12]2

LM 0 = M 0 MNa f

2 y

OP PP Q

(7.16c)

7.3

Pares de torsin equivalentes

153

donde

[a2]2 a2 sq 2

La fuerza [f01]1 y el momento [n01]1 se evalan entonces como [f 01]1 = Q1 [f01]2 =

LMa cq MM N 0
2 x x

OP PP Q

(7.16d)

LM f cq MM f sq N

12 12

- f y sq 12 + f y cq 12 0

[n01]1 Q1[n12 + a1 f12]2 = Q1[n12]2 + [a1 f01]1

LM = M MNa

OP PP Q
0 0

(7.17a)

2 fy

+ a1 f x sq 2 + a1 f y cq 2

[a1]1

LMa cq OP Ma sq P MN 0 PQ
1 1 1 1

(7.17b)

OP PP Q

(7.17c)

donde Q1[n12]2 tendr la misma expresin que [n12]2 de la ecuacin (7.16c). Finalmente, los pares de torsin de la articulacin para generar la fuerza f en el efector final se obtienen por (7.18) t1 = a1 fx sq2 + (a2 + a1 cq 2) fy; y t2 = a2 fy

Ejemplo 7.2

Esttica de un brazo planar rotacionalprismtico

En la figura 7.3 se presenta un brazo planar rotacional-prismtico (RP) cuyo efector final est aplicando una fuerza f. Su problema de esttica se resuelve aqu, es decir, el par de torsin y la fuerza de la articulacin se evalan para ejercer la fuerza f por el efector final. Primero se evalan las fuerzas en la articulacin 2 a partir de la fuerza determinada del efector final, f [f23]3, es decir,
Y1 X3 X2 1 R P b2 Z2, Z3 f EE (x, y) X1

Figura 7.3 Brazo rotacional-prismtico de dos eslabones aplicando una fuerza

154

CAPTULO

7 Esttica

[f23]3 y [f12]3 = [f23]3 para i = 2. Por lo tanto,

LM f OP MM 0 PP Nf Q
x z

[f12]2 = Q2[f 12

LM f OP ] = M0P MN f PQ
x
3

(7.19a)

donde la matriz de orientacin Q2 es una matriz identidad, ya que los sistemas 2 y 3 son paralelos. Puesto que no se ejerce ningn momento externo, es decir, n23, por parte del efector final, el momento [n12]2 se obtiene por [n12]2 = Q2[a2 f23]3 = [a2]2 [f23]2 = [a2 f12]2 = b2 f x

LM MM N

0 0

OP PP Q

donde [a2]2

LM 0 OP M0P MNb PQ
2

(7.19b)

La fuerza [f01]1 y el momento [n01]1 se evalan entonces como

[f01]1 = Q1[f01]2

LM f cq = M f sq MN
x x

1 1

+ f z sq 1 - f z cq 1 0

OP PP Q

(7.20a)

[n01]1 Q1[n12 + a1 f12]2 = Q1[n12]2 + [a1 f01]1

LM 0 = M 0 MNb f
2

OP PP Q

(7.20b)

donde [a1]1 = 0 porque el parmetro DH a1 = 0 y la matriz Q1 se calculan usando los parmetros DH dados en la tabla 5.3 y la ecuacin (5.52); es decir,

Q1

LMcq M sq MN 0

1 1

0 sq 1 0 - cq 1 1 0

OP PP Q

(7.20c)

Finalmente, el par torsional de articulacin en la articulacin rotacional i y la fuerza en la articulacin prismtica 2 estn dados por t1 = b2 fx; y t2 = f z (7.21)

7.3

Pares de torsin equivalentes

155

Ejemplo 7.3

Esttica de un manipulador planar de 3 DOF


X4 f34 nz Y4 g Y1 Y2 a2 2 1 a1 1 2 X1 X2 Y3 a3 3 3 X3

La figura 7.4 muestra un manipulador planar de 3 eslabones con tres grados de libertad (DOF). Todas sus articulaciones son rotacionales o revolutas. Cuatro sistemas de referencia o de coordenadas con todos los ejes Z apuntando hacia fuera del papel se definen para cada eslabn de acuerdo con la convencin DH sealada en el captulo 5. Consideremos que fuerza y momento del efector final se obtienen por [f34]4 = [fx, fy, 0] y [n34]4 = [0, 0, nz] T
T

respectivamente. Tambin la aceleracin debi3 eslabones y 3 DOF da a la gravedad g apunta a lo largo de Y negativo y el centro de masa se sita en el punto central de cada eslabn. Luego se obtienen los momentos y fuerzas de reaccin (o simplemente las reacciones) de la articulacin. Observe que los parmetros DH del manipulador se dan en la tabla 5.2, donde las matrices de transformacin que se necesitan para el anlisis de cinemtica se derivan en el ejemplo 6.3. Adems, los vectores ai, ri y di se dan como

Figura 7.4 Manipulador planar de

[a i] i

LMa cq OP M a sq P , [r ] MN 0 PQ
i 1 i i

i i +1

LM 1 a OP 2 M 0 P MM PP N0Q
i i

[d i] i = [a i] i Q i [ri] i +1

LM 1 a cq OP 2 M P = M1 a sq P MM 2 PP N0 Q
1 i 1

(7.22)

donde ai para i = 1, 2, 3 es la longitud del i-simo eslabn. La ecuacin (7.22) se escribe en el sistema de referencia 1 usando las matrices de rotacin Qi para i = 1, 2, 3; es decir,

[a1]1

LMcq OP = a M sq P NM 0 PQ
1
1

a [d1]1 = 1 2

LMcq OP MMsq PP N0Q


1 1

(7.23a)

156

CAPTULO

7 Esttica

cq 12 a [a2]1 = Q1[a2]2 = a2 sq 12 , [d2]1 = Q1[d2]2 = 2 2 0


13

[a3]1 = Q12 [a3]3

LM MM N LMcq = a M sq MN 0
3

13

OP PP Q OP PP , [d ] = Q Q
3 1

12 [d3]3

LMcq OP MMsq PP N0Q Lcq OP a M sq = 2 M MN 0 PPQ


12 12 13

(7.23b)

13

(7.23c)

donde Q12 Q1Q2, q 12 q 1 + q 2 y q 13 q 12 + q 3. Las ecuaciones (7.7a-b) se aplican entonces para calcular las fuerzas de reaccin que se ejercen sobre el eslabn 3. Luego se procede a los eslabones 2 y 1 en secuencia. Para i = 3, la sustitucin de a3, d3, f34 y n34 en las ecuaciones (7.7a-b) proporciona m3Q T12 [g]1

[f23]3 = Q3 [f34]4

LM f cq = M f sq MN
x x

3 3

- f y sq 3 + m3 gs12 + f y cq 3 + m3 gc12 0

[n23]3 = Q3 [n34]4 + [a3]3 Q3 [f34]4 [d3]3

m 3Q T12 [g]1

LM 0 OP M 0 P (7.24b) MNn PQ
23z

OP PP Q

(7.24a)

donde [g]1 [0, g, 0]T; g es la aceleracin debida a la gravedad e igual a 9.81 m/s2. Adems,
1 n23z nz + a 3 f y - m3 gcq 13 2

FH

IK

(7.24c)

Para i = 2, f23 y n23 se utilizan entonces con el fin de obtener lo siguiente:

f x cq 23 - f y sq 23 + m23 gsq 1 [f12]2 = [f23 m2g]2 = Q2[f23]3 m2Q T1[g]1 = f x sq 23 + f y cq 23 + m23 gcq 1 0

LM MM N

OP PP Q

[n12]2 = Q2 [n23]3 + [a2]2 Q2 [f23]3 [d2]2 m2Q T1 [g]1 donde m12 m1 + m2, y el trmino n12z se obtiene por n12 z nz + a 3 f y - 1 m3 gcq 13 2

LM 0 OP MM 0 PP Nn Q
12 z

(7.25a) (7.25b)

FH

IK + a LM f sq N
2

+ f y cq 3 + m3 +

F H

1 m gcq 12 2 2

I K

(7.25c)

OP Q

7.4

El papel del jacobiano en la esttica

157

En forma parecida se obtiene para i = 1 lo siguiente:

[f01]1 = Q1[f12

LM f cq - f sq ] m [g] = M f sq + f cq + m MN 0
x 13 y 13
2 1 1

[n01]1 = Q1[n12]2 + [a1]1 Q1[f12]2

donde m13 m1 + m2 + m3, y el trmino n01z se obtiene por n 01z n z + a 3 f y - 1 m3 gcq 13 2 + a1 f x sq 23

OP gP PQ LM 0 OP [d ] m [g] M 0 P MNn PQ
13 y 13 13
1 1 1 1

(7.26a)

(7.26b)

01z

FH

LM N

IK + a LM f sq N + f cq + F m H
2

+ f y cq 3 + m3 + + 1 m1 gcq 1 2

23

23

IK

F H

OP Q

1 m gcq 12 2 2

I K

OP Q

(7.26c)

Finalmente se aplica la ecuacin (7.13) para calcular los pares torsionales de las articulaciones, los cuales se obtienen como t1 = [e1] T1 [n 01]1 = n 01z ; t 2 = [e2] T 2 [n12]2 = n12 z; y t 3 = [e3] T 3 [n23]3 = n 23 z (7.27) donde [ei]i [0, 0, 1]T para i = 1,2,3 y n23z, n12z, n01z se obtienen en las ecuaciones (7.24c)-(7.26c), respectivamente.

7.4

El papel del jacobiano en la esttica

Los pares torsionales y fuerzas de articulaciones obtenidos en la situacin esttica balancean las fuerzas y momentos que actan sobre el efector final. La relacin entre estos dos conjuntos de fuerzas generalizadas, es decir, momentos y fuerzas sobre el efector final en el espacio cartesiano, Trabajo virtual y los pares torsionales y fuerzas de las articulaciones en el espacio de la articulacin pueden derivarse utilizanEl trabajo virtual en un sistema es el do el principio del trabajo virtual. Consideremos que trabajo que resulta de las fuerzas reales que actan por medio de un des x y repreplazamiento virtual. Desplazamiento sentan desplazavirtual mientos infinitesimales del efector final que incluyen, respectivamente, componentes lineales y rotacionales, Un desplazamiento virtual es un supuesto cambio innitesimal de coory las articulaciones del manipulador. Estos desplazadenadas de un sistema que ocurre mientos se llaman virtuales si son consistentes con mientras el tiempo se mantiene cualquier restriccin que se imponga sobre el sistema. constante. Se llama virtual en lugar Por ejemplo, si el efector final est en contacto con una de real, puesto que ningn desplazamiento real puede ocurrir fuera del pared rgida, entonces los desplazamientos virtuales paso del tiempo. son tangentes a la pared.

158

CAPTULO

7 Esttica

Ahora bien, si we denota la torcedura del efector final, entonces el trabajo virtual efectuado por l se obtiene por wT ex. De manera parecida, si denota el vector de todos los pares torsionales y fuerzas de la articulacin que actan en las articulaciones para producir la llave de torsin we, entonces el trabajo virtual definido en el espacio de la articulacin se obtiene por Tp. Observe que cuando el manipulador robtico est en equilibrio, el principio del trabajo virtual seala que T (7.28) wT e d x = t dq donde el desplazamiento virtual x y p puede relacionarse a partir de la definicin del jacobiano que se introdujo en el captulo anterior, que es d x = Jd q (7.29) La sustitucin de la ecuacin (7.29) en la ecuacin (7.28) proporciona (7.30) w Te Jd q = t Td q La ecuacin arriba mencionada es vlida para todos los p, y, por ende, lo siguiente es vlido: T (7.31) wT eJ = t Si se transponen ambos lados de la ecuacin (7.31a), se obtiene la relacin entre la torcedura del efector final y los pares de torsin o torsionales y fuerzas de articulaciones, es decir, (7.32) t = J Twe Aqu cabe sealar que si la matriz Jacobiana J de la ecuacin (7.31) o de la (7.32) es singular, entonces el efector final no puede ejercer fuerzas estticas como se desea.

Ejemplo 7.4

El jacobiano en la esttica de un brazo planar de dos eslabones

Se derivan dos relaciones para los pares de torsin de articulacin del brazo de manipulador planar de dos eslabones en el ejemplo 7.1, es decir, en la ecuacin (7.18). Entonces se reordenan como t = J Tf (7.33a) donde t [t1, t 2] T, f [fx, f y, 0] T donde la matriz J de 3 3 se obtiene por

LM a sq J Ma cq + a MN 0
1 2 1 2

0 a2

OP P 0P Q

(7.33b)

Los renglones no cero de la matriz J de la ecuacin (7.33b), sin embargo, no son lo mismo que la matriz Jacobiana para el brazo planar de 2 eslabones que se deriv en la ecuacin (6.51b) o (6.69). Esto es as por las siguientes razones: la matriz J de la ecuacin (7.33b) se representa en el sistema de referencia 3 como los valores de la fuerza f del efector final, mientras que J de la ecuacin (6.69) se representa en el sistema fijo, es decir, en el sistema de referencia 1. De hecho, [J]1 = Q1Q2[J]3

7.4

El papel del jacobiano en la esttica

159

es decir, [J ]1

LMcq - sq 0OP LMcq - sq cq cq 0P M sq M sq MN 0 0 1PQ MN 0 0 LM- a sq - a sq - a sq OP a cq P = M a cq + a cq MN 0 0 P Q


1 1 2 1 1 2 2 1 1 2 12 2 12 1 1 2 12 2 12

0 0 1

OP LM a sq PP MMa cq + a QN 0
1 2 1 2

0 a2

OP P 0P Q
(7.34)

donde Q1 y Q2 son las matrices de rotacin de 3 3, mientras que [J]1 y [J]3 son las representaciones del mismo jacobiano en los sistemas 1 y 3. Ahora bien, los renglones diferentes a cero de la ecuacin (7.34) coinciden con la matriz que se da en la ecuacin (6.51b) o (6.69).

Ejemplo 7.5

El jacobiano en la esttica del manipulador planar de 3 DOF

Observe que las expresiones para los pares torsionales de articulacin, ecuacin (7.27), pueden disponerse como sigue: t = J Twe + Ag m g donde los vectores de 3, 6 y 3 dimensiones , we y mg se definen como t [t1, t2, t3] T; we [0, 0, nz, fx, fy, 0] T; m g [m1g, m2g, m3g] T mientras que la matriz J de 6 3 y la matriz Ag de 3 3 se obtienen por
0 LM 0 MM 1 J M MM a sq + a sq MMa + a cq0 + a cq N
2 3 1 23 3 2 3 1 1 1

(7.35a) (7.35b)

0 0 1 a2 sq 3
23

a 3 + a 2 cq 3

y Ag

LM 1 a cq 2 M M 0 MM 0 N

OP P 1P P 0P a P P 0P Q
0 0
3

(7.35c)

a1cq 1 +

1 a cq 2 2 12 1 a cq 2 2 12 0

a1cq 1 + a2 cq 12 +

1 a cq 2 3 13 1 a2 cq 12 + a3cq 13 2 1 a cq 2 3 13

OP PP (7.35d) PP Q

Es importante observar dos puntos en la ecuacin (7.35a). Primero, a diferencia de la ecuacin (7.31b) o (7.33a), la expresin para los pares de torsin de articulacin contiene un trmino adicional Agmg aunado a JT We. Segundo, los renglones que son diferentes de cero de la matriz Jacobiana de la ecuacin (7.35c) no son iguales a los que se

160

CAPTULO

7 Esttica

obtienen en la ecuacin (6.53). En realidad, la ecuacin (7.31b) se obtiene sin tomar en consideracin los pesos de los eslabones. Por lo tanto, no aparece ningn trmino asociado con dichos pesos. Sin embargo, stos podrn convertirse en fuerzas y momentos equivalentes del efector final, y podr reescribirse la ecuacin (7.31b), de donde se obtendra un trmino adicional como en la ecuacin (7.35a). En segundo lugar, como se seal en el ejemplo 7.4, la expresin para la matriz Jacobiana, ecuacin (7.35c), se representa en el sistema 4, puesto que la llave de torsin we se conoce en el sistema 4, mientras que la expresin J de la ecuacin (6.53) es la representacin en el sistema 1. En efecto,
[J ]1 =

donde Q1, Q2 y Q3 son las matrices de rotacin de 3 3, y O representa la matriz cero de 3 3. Adems, [J]1 y [J]4 son las representaciones del mismo jacobiano en los sistemas 1 y 4. Entonces puede demostrarse que los renglones diferentes de cero de [J]1 son exactamente las mismas que en la ecuacin (6.53).

LMQ NO

OP LMQ Q Q NO
O
1

OP LMQ Q Q NO
O
2

OP [J] Q Q
O
3

(7.36)

Ejemplo 7.6

Pares de torsin estticos en el brazo articulado antropomrco

En la parte del brazo de la figura 6.4, puede verse un brazo articulado antropomrfico para el cual se obtiene la matriz Jacobiana en la ecuacin (6.54c). Si el momento ne y la fuerza fe actan sobre el efector final que se conoce en el propio sistema del efector final, entonces los pares de torsin que se requieren en las tres articulaciones del brazo pueden calcularse usando la ecuacin (7.28), en donde no son considerados los pesos de eslabones, es decir, t = J T Q we t [t1, t2, t3] ; we [w 34]4 [n x, ny, nz, f x, fy, fz] T donde (7.37a) ) y la matriz de 6 6, Q diag[Q, Q], donde Q = Q1Q2Q3 transforma la representacin de un vector desde el sistema del efector final, es decir, el sistema 4, al sistema fijo, es decir, el sistema 1. Esto puede extraerse de la ecuacin (6.11) como
T

Adems, la matriz Jacobiana de 6 3 se da en la ecuacin (6.54c) que se representa en el sistema 1. El resultado de la ecuacin (7.33a) para los pares de torsin de articulaciones puede obtenerse mediante el uso de un programa MATLAB que se presenta a continuacin.
%Statics torques in the Articulated Arm syms a1 a2 a3 th1 th2 th3 nx ny nz fx fy fz;

LMc c Q Ms c MN- s

1 23

1 23 23

- c1s23 - s1s23 - c23

- s1 c1

OP P 0 P Q

(7.37b)

7.5

Elipsoide de fuerza

161

%For Articulated 3-DOF Arm, initital values are th1=0; th2=0; th3=0; sth1=0;cth1=1;sth2=0;cth2=1;sth3=0;cth3=1; sth23=0;cth23=1; qm = [cth1*cth23, -cth1*sth23, -sth1; sth1*cth23, -sth1*sth23, cth1; -sth23, -cth23, 0]; ne_1 = qm*[nx;ny;nz]; fe_1 = qm*[fx;fy;fz]; jacm = [0,-sth1,-sth1;0,cth1,cth1;1,0,0; -sth1*(a2*cth2+a3*cth23),-cth1*(a2*sth2+a3*sth23),-a3*cth1*sth23; cth1*(a2*cth2+a3*cth23), -sth1*(a2*sth2+a3*sth23),-a1*sth1*sth23; 0,-(a2*cth2+a3*cth23),-a3*cth23]; %Joint torques tau=jacm.*[ne_1;fe_1]

Para la configuracin inicial, es decir, 1 = 2 = 3 = 0, la salida del programa MATLAB puede checarse como sigue:

LM- n + (a + a ) f OP t M- n + (a + a ) f P MN n + a f PQ
y 2 3 z z 2 3 y z 3 y

(7.37c)

lo que fcilmente puede verificarse segn la figura 5.29.

7.5

Elipsoide de fuerza

Parecido a la transformacin de velocidades, la transformacin de fuerzas para robots con un slo tipo de articulacin y para un tipo de tarea puede ser caracterizada por una comparacin de la fuerza del efector final producida por un par unitario torsional de articulacin. La sustitucin de la ecuacin (7.32) en la expresin T = 1 proporciona
T wT e JJ w e = 1

(7.38)

En una configuracin de robot determinada, la ecuacin (7.38) representa el elipsoide de seis dimensiones para un robot de 6 DOF. Puesto que el producto JJT es una matriz simtrica semidefinida positiva, sus vectores propios son ortogonales. Los ejes principales del elipsoide coinciden con los vectores propios de JJT, y sus longitudes son iguales a las recprocas de las races cuadradas de los valores propios. Puesto que la matriz Jacobiana depende de la configuracin, el elipsoide de fuerza tambin depende de la configuracin. Conforme el efector final se mueve de una ubicacin a otra, la forma y orientacin del elipsoide de fuerza tambin cambiar por consecuencia. Entre ms se acerca el elipsoide a una esfera, mejor sern las caractersticas de transmisin. Se dice que esta transformacin es isotrpica cuando los ejes principaIsotrpico les son de iguales longitudes. En un punto isotrpico, una esfera unitaria de n dimensiones en el espacio de Se trata de una palabra que se usa un par de torsin de la articulacin se traza sobre una en lgebra lineal para identicar el esfera de 6 dimensiones en el espacio de fuerza del nmero uno como condicin en una efector final. Por otro lado, en un punto singular, una matriz.

162

CAPTULO

7 Esttica

esfera unitaria de n dimensiones en el espacio torsional de la articulacin se traza sobre un cilindro de 6 dimensiones en el espacio de fuerza del efector final. De este modo, la ventaja mecnica del manipulador se torna infinitamente grande en alguna direccin.

RESUMEN
En este captulo se derivan los pares de torsin que se requieren para ejercer una fuerza y un momento por el efector final mientras el robot est en equilibrio esttico. Se demuestra cmo el jacobiano de velocidad entra en consideracin en el anlisis esttico. Finalmente, se da una interpretacin fsica de la matriz Jacobiana en el dominio de la fuerza.

EJERCICIOS
7.1 7.2 7.3 7.4 Qu es un equilibrio esttico en la robtica? Cmo se relacionan las matrices de propagacin de torsin y de llave de torsin? Define el desplazamiento y el trabajo virtuales. Cmo entra en consideracin la matriz del jacobiano de velocidad en el anlisis esttico? 7.5 Qu le pasara a las fuerzas del efector final si se aplicaran pares de torsin de articulacin mientras el jacobiano asociado fuese singular? 7.6 Extraiga la matriz jacobiana para el brazo planar rotacional-prismtico (RP) del ejemplo 7.2. 7.7 Busque la expresin de la matriz Jacobiana arriba mencionada en el sistema fijo. 7.8 Por qu es importante el concepto de elipsoide de fuerza en el estudio de la esttica? 7.9 Qu pasa si uno de los ejes principales del elipsoide de fuerza desaparece? 7.10 Derive las expresiones del par de torsin y fuerza para el brazo planar prismticorotacional (PR) que se presenta en la figura 5.26 si se aplica la fuerza fe del efector final y no se consideran los pesos de eslabones.

EJERCICIOS BASADOS EN MATLAB


7.11 Verifique los resultados del ejercicio 7.7 usando un programa MATLAB. 7.12 Verifique los resultados del ejercicio 7.10. 7.13 Busque las expresiones de par torsional para el robot SCARA que se presenta en la figura 5.28. 7.14 Averige los pares torsionales para el brazo antropomrfico del ejemplo 7.6, mientras 1 = 2 = 0 y 3 = /2. 7.15 Cules son los valores del par torsional para la mueca esfrica que se muestra en la figura 5.30 si se aplica solamente un momento ne en su efector final?

Captulo

8
Dinmica

En este captulo se estudiarn las ecuaciones de movimiento para un robot, es decir, la manera en la que se produce el movimiento del robot debido a los pares de torsin y a las fuerzas que se aplican a las articulaciones mediante los actuadores. Se desarrollar un conjunto de ecuaciones que describen el comportamiento dinmico de un robot, lo que tambin se llama el modelo dinmico del robot. Este desarrollo es importante en varios aspectos: iii) Un modelo dinmico puede usarse para desarrollar las estrategias apropiadas de control. Un Dinmica controlador sofisticado requiere del uso de un modelo dinmico realstico para lograr el desempeo ptimo del robot en operaciones de La dinmica es el estudio de las fuerzas y momentos que causan el movialta velocidad. Algunos mtodos de control de- miento en un sistema. penden directamente de un modelo dinmico con el fin de calcular los pares de torsin y las fuerzas requeridas en los actuadores para seguir la trayectoria deseada. iii) El modelo dinmico puede usarse para la simulacin por computadora de un sistema robtico. Cuando se construye un sistema robtico, es posible pronosticar cmo se va a comportar, mediante el estudio del comportamiento del modelo en varias condiciones de operacin. iii) El anlisis dinmico de un robot proporciona todas las fuerzas y momentos de reaccin que se necesitan para el diseo y la determinacin de los tamaos de eslabones, cojinetes y actuadores. Conociendo los parmetros fsicos de cualquier robot, uno normalmente desea resolver problemas relacionados con su dinmica: la dinmica inversa y la dinmica directa. El problema de la dinmica inversa es encontrar los pares de torsin y/o las fuerzas de actuadores que son necesarios para generar la trayectoria deseada del robot. Esta formulacin de la di-

164

CAPTULO

Dinmica

nmica es til para el problema del control del robot. El segundo problema, el de la dinmica directa, es encontrar la respuesta de un brazo de robot respecto a algunos pares de torsin o fuerzas en las articulaciones. Es decir, dados los pares de torsin o fuerzas de las articulaciones, tiene que computarse el movimiento resultante del robot como funcin del tiempo. Esto no es tan crtico como el problema de la dinmica inversa, ya que se usa principalmente para la simulacin en computadora de un robot, lo que solamente muestra cmo funcionar ste cuando se est construyendo. Por otro lado, un modelo eficiente de dinmica inversa se vuelve sumamente importante para el control de robots en tiempo real. Las ecuaciones de dinmica del movimiento pueden formularse por medio de varios mtodos. Uno consiste en aplicar las ecuaciones de movimiento de Lagrange. La ventaja de usar este planteamiento es que elimina las fuerzas de restriccin de las ecuaciones de dinmica de movimiento si las coordenadas generalizadas se eligen en forma independiente. Esta eliminacin hace que sea adecuado para el control y para la siPlanteamiento mulacin de movimiento. Sin embargo, dichas fuerzas vectorial vs. de restriccin eliminadas pueden recuperarse usando planteamiento de multiplicadores de Lagrange si se han de usar para los energa propsitos de diseo. Otro planteamiento es la aplicaLas ecuaciones de Newton-Euler se cin de las leyes de Newton y Euler para movimientos conocen como planteamiento vectolineales y rotacionales, respectivamente. Escribir las rial, mientras que las de Euler-Lagrange se sustentan en un planteamiento ecuaciones de movimiento de Newton y Euler para basado en la energa. cada eslabn del robot da como resultado un sistema de ecuaciones que contiene las fuerzas aplicadas y las fuerzas de restricciones. Estas ecuaciones pueden entonces resolverse simultneamente para todas las fuerzas, incluidas las que son resultado de las restricciones que no contribuyen al movimiento de los eslabones, pero que se requieren para el diseo de los mismos. Si alguien slo se interesa en la simulacin del movimiento, las fuerzas de restriccin pueden eliminarse usando las relaciones geomtricas y cinemticas que describen la naturaleza de las restricciones. Tambin existen metodologas alternativas para resolver la dinmica de robots, por ejemplo, el principio de DAlembert, las ecuaciones de movimiento de Kane y las que se basan en los complementos ortogonales de las matrices de restriccin de velocidad. Uno de estos mtodos basados en los complementos ortogonales, las matrices de complemento ortogonal natural desacoplado (DeNOC) (Saha, 1999), se presentar en el captulo 9.

8.1

Propiedades de inercia

En el estudio de la dinmica, propiedades de inercia tales como centro de masas, momento de inercia, tensor de inercia, etc., asociados con la masa o la inercia de los eslabones individuales que aparecen en las ecuaciones dinmicas de movimiento de un robot, afectarn el comportamiento de este ltimo. Para estudiar la dinmica de un robot, es importante conocer estas diferentes propiedades de inercia.

8.1.1

Centro de masa

La masa es la cantidad de materia que posee un cuerpo de una forma y tamao determinados. En la figura 8.1, F es un sistema de coordenadas cartesianas, dV es un diferencial de volu-

8.1

Propiedades de inercia
Cuerpo, B

165

dV u Z d L p c Xc Y r Zc C Yc

Sistema coordenado, F

Figura 8.1

Momentos de masa

men del material B, es la densidad material y p es el vector de posicin del diferencial de masa dV desde el origen del sistema F, es decir, O. El centro de masa del cuerpo B se define entonces como el punto C, de tal modo que su vector de posicin denotado por c es c
1 m

Masa vs. momento de inercia El momento de inercia de un objeto es una propiedad de su masa y de su forma geomtrica. La masa inuye en forma directa en un movimiento lineal, mientras que afecta el movimiento rotacional indirectamente a travs del momento de inercia.

donde m

ms, si como se presenta en la figura 8.1, p = c + r se sustituye en la ecuacin (8.1a), se obtiene lo siguiente: c
1 m

pr dV

(8.1a)

r dV es la masa total del cuerpo B. Ade-

cr dV +

1 m

rr dV

(8.1b)

Puesto que el vector c es independiente del volumen V del cuerpo B, puede extraerse del signo integral. Adems,

r dV = m. Por lo tanto, puede reescribirse la ecuacin (8.1b) como c c+


1 m

r r dV

(8.1c)

lo que inmediatamente da:

r r dV = 0 (8.1d)

166

CAPTULO

Dinmica

Esta propiedad, asociada con el centro de masas de un cuerpo rgido, se utilizar ms adelante, en la subseccin 8.3.2, para la derivacin del momento angular.

8.1.2

Momento de inercia y tensor de inercia

En la figura 8.1, suponga que u es el vector unitario paralelo a la lnea L, pasando a travs de un punto de referencia, por ejemplo, el origen O del sistema F. Adems, si d es la distancia del diferencial de masa rdV del cuerpo B desde la lnea L, entonces el momento de inercia del cuerpo B respecto a la lnea L se determina por un escalar positivo, es decir, Iuu =

d 2r dV =

d Td r dV

(8.2)

donde el vector d es ortogonal al vector unitario u, como se indica en la figura 8.1, y d es su magnitud, que es igual a d = | p u| (8.2) La sustitucin de la ecuacin (8.3) en la ecuacin (8.2) proporciona Iuu = donde (p u)T ( p u) = (pTp)(uTu) (pTu)2 = uT[( pTp ) 1 ppT] u donde 1 es la matriz de identidad de 3 3. Por tanto, la matriz I de 3 3 de la ecuacin (8.4) se determina por I=

| p u |2r dV =

(p u ) T ( p u ) r dV = uTIu

(8.4)

[(pT p) 1 pp T ] r dV

(8.5)

El trmino I de la ecuacin se denomina tensor de inercia o matriz de inercia del cuerpo B alrededor del punto O. El tensor de inercia I es simtrico y un positivo-definitivo que tambin puede escribirse como

LM I I MI MN I

xx yx zx

I xy I yy I zy

I xz I yz I zz

OP PP Q

(8.6)

En la ecuacin (8.6), la expresin para los elementos de I se determinan por I xx

(y2 + z2)r dV, Iyy

Ixy = Iyx =

donde x, y y z representan las coordenadas del diferencial de masa dV respecto al origen del sistema F, es decir, O. Adems, los subndices xx, yy y zz denotan los ejes de coordenadas X, Y y Z del sistema F, cuyo origen se ubica en O respecto a lo cual se calculan los momentos de inercia Ixx, Iyy e Izz y el producto de las inercias Ixy, Iyz, Ixz. Los valores numricos de estos elementos dependen de la seleccin de un punto de referencia y del sistema de coorde-

(z2 + x2)r dV, Izz

xyr dV, Iyz = Izy

(x2 + y2)r dV

(8.7a) (8.7b)

yz r dV, Ixz = Izx

xz r dV

8.1

Propiedades de inercia

167

nadas en este punto respecto al cual estn calculadas. Mientras que los trminos de inercia para un cuerpo rgido de geometra sencilla se computan mediante la integracin volumtrica dada por las ecuaciones (8.7 a-b), los mismos tienen que determinarse en forma experimental para los objetos de formas irregulares. Finalmente, observe que en la ecuacin (8.2), la distancia d o el vector d es independiente del volumen V del cuerpo B, como se ha visto para el vector c segn la ecuacin (8.1b). Por lo tanto, el trmino d puede extraerse del signo integral. Como resultado, la ecuacin (8.2) se reescribe como Iuu = d 2

El tensor y sus rdenes En la fsica, los tensores caracterizan las propiedades de un sistema fsico. Por ejemplo, un tensor del orden cero es un escalar que representa la masa de un objeto. Un tensor del orden uno es un vector que podra representar la posicin de un punto, mientras que un tensor de segundo orden se representa por una matriz de 3 3 que denota, por ejemplo, la llamada matriz (o tensor) de inercia de un objeto.

r dV = md 2

(8.8)

donde el escalar d tiene una expresin, en trminos de los vectores p y u, como d |p u|, que es una cantidad real no negativa. Al escalar d se refiere como el radio de giro del cuerpo B respecto a la lnea L.

8.1.3

Teorema de los ejes paralelos

Suponga que C(xc , yc , zc) es el sistema de coordenadas cartesianas adjunto al centro de masa C de un cuerpo rgido B con sus ejes de coordenadas paralelos a los de F, como se muestra en la figura 8.1. Entonces puede demostrarse que
2 c 2 2 c 2 2 Ixx = I cxx + m( y 2 c + z c ), Iyy = I yy + m (z c + x c ), I zz = I zz + m(x c + y c), c c c Ixy = I xy mxc yc, Iyz = I yz myc zc, Izx = I xz mzc xc

(8.9a) (8.9b)

donde xc, yc y zc son las coordenadas del centro de masa en el sistema F, e Icxx,Icyy, Iczz e Icxy, Icyz, Icxz son los momentos de inercias y los productos de inercias respecto al centro de masa C, respectivamente. Las ecuaciones (8.9 a-b) se llaman teorema de los ejes paralelos.

8.1.4

Teorema de los ejes perpendiculares


Z Y

Para un objeto plano, por ejemplo, el disco delgado que se presenta en la figura 8.2, el momento de inercia alrededor de un eje perpendicular al plano Izz es la suma de los momentos de inercia de dos ejes perpendiculares a travs del mismo punto en el plano del objeto Ixx e Iyy, es decir, (8.10) La utilidad de este teorema va ms all del clculo de los momentos de objetos estrictamente planos. Se trata de una herramienta valiosa para la acumulacin de los momentos de inercia de objetos tridimensionales, tales Izz = Ixx + Iyy

Figura 8.2 Un disco delgado

168

CAPTULO

Dinmica

como cilindros, mediante su divisin en discos planos, y en la suma de los momentos de inercia de los discos compuestos, como se hace en el ejemplo 8.3.

8.1.5

Momentos principales de inercia

Se demuestra que la matriz de inercia depende de la seleccin de un punto de referencia y de la orientacin del sistema de referencia. Resulta que para una determinada orientacin de un sistema de referencia, los productos de inercia desaparecern. Estos ejes especiales de coordenadas se llaman ejes principales y los momentos de inercia correspondientes se llaman momentos principales de inercia. Vamos a suponer que I es la matriz de inercia de un cuerpo rgido B alrededor de un punto O, expresado en el sistema de referencia F. Tambin supongamos que L es el eje principal que pasa a travs del origen O y que apunta en la direccin de u. Por definicin, u es paralelo al vector del segundo momento de B alrededor de L. Esto quiere decir (8.11) Iu = l u La ecuacin (8.11) contiene tres ecuaciones homogneas lineales con tres incgnitas, es decir, ux, uy y uz. La condicin para la existencia de soluciones no triviales es
I xx - l I yx Izx I xy I yy - l I zy I xz I yz I zz - l

=0

(8.12)

Por lo tanto, los valores y vectores propios de la matriz de inercia I corresponden a los momentos principales de inercia y a las direcciones de los ejes principales, respectivamente. Por lo general, en correspondencia con cada punto de referencia, existe por lo menos un conjunto de tres ejes principales de inercia mutuamente perpendiculares. Algunos hechos adicionales sobre la matriz de inercia son los siguientes: iii) Si dos ejes del sistema de referencia forman un plano de simetra para la distribucin de la masa del cuerpo, los productos de inercia que tienen un ndice como la coordenada, que es normal al plano de simetra, sern cero. iii) Los momentos de inercia siempre tienen que ser positivos. Los productos de inercia pueden tener cualquier signo. iii) La suma de los tres momentos de inercia son invariantes bajo cambios de orientacin en el sistema de referencia. iv) La suma de cualquiera de dos momentos de inercia es mayor que el tercero, es decir, Ixx + Iyy > Izz.

Ejemplo 8.1

El tensor de inercia de una caja

El tensor de inercia para el cuerpo rectangular de densidad uniforme respecto al sistema de coordenadas rectangulares en una esquina, como se muestra en la figura 8.3, se obtiene como sigue. Primero debe computarse Ixx. Usando el elemento de volumen en (x, y, z), dV = dx dy dz

8.1

Propiedades de inercia

169

dy dz dx (x, y, z) w h Y

Figura 8.3

Un cuerpo de densidad uniforme

se obtiene Ixx =

z zz
h l

o o o

( y2 + z2)r dxdydz =
3

FG hl w + h lw IJ r = hlwr (l H 3 3K 3
3

zz
o
2

h l o

(y2 + z2) wr dydz =


m 2 (l + h 2) 3

z FGH
h o

l3 + z 2 l wr dz 3
(8.13)

IJ K

+ h 2) =

donde m hlw es la masa total del cuerpo. De manera similar, puede obtenerse Iyy e Izz por inspeccin, es decir, Iyy =
m 2 (w + h 2 ); 3

Izz =

m 2 (l + w2) 3

(8.14)

despus Ixy se computa como Ixy =

z zz
h l

o o o

xyr dxdydz =

zz
o

h l

w2 y r dydz = o 2

w2 l2 m r dz = wl 4 4

(8.15)

Permutando los trminos, se obtiene m m Ixz = hw ; y Iyz = hl 4 4 Por lo tanto, el tensor de inercia para este objeto es

(8.16)

LM m (l + h ) M3 m I = M - wl 4 MM - m N 4 hw
2 2

- m wl 4 m (w2 + h2) 3 m - hl 4

- m hw 4 - m hl 4 m 2 (l + w 2 ) 3

OP PP PP Q

(8.17)

Observe que el tensor 3 3, representado por la matriz I de la ecuacin (8.17), es simtrico.

170

CAPTULO

Dinmica

Ejemplo 8.2

El tensor de inercia de una caja alrededor de su centro de masa

El tensor de inercia para el mismo cuerpo slido que se describe en el ejemplo 8.1 se obtiene con un sistema de coordenadas cuyo origen est en el centro de masa C del cuerpo. Observe aqu que puede aplicarse el teorema de los ejes paralelos ecuacin (8.9), donde xc = w/2, yc = l/2 y zc = h/2. Entonces, m 2 2 (8.18a) I czz = (w + l ), y I cxy = 0 12 Los otros elementos se encuentran por simetra. El tensor de inercia resultante escrito en el sistema ubicado en el centro de masa C se determina por
m IC = 12

LMh MM N

+ l2 0 0

0 w +h 0
2 2

OP 0 P +w P Q
0
2

(8.18b)

Puesto que el resultado es una diagonal, el sistema en C debe representar los ejes principales de este cuerpo. Para una barra delgada, w y h son mucho ms pequeos que l. Por lo tanto, su tensor de inercia puede calcularse de manera aproximada por
1 0 0 ml 2 I = 0 0 0 12 0 0 1
C

LM MM N

OP PP Q

(8.19a)

Ejemplo 8.3

El tensor de inercia de un cilindro

Un cilindro de dimetro d y longitud l, como se presenta en la figura 8.4a), es una forma muy comn que se utiliza como eslabn de robots. De manera similar a la ecuacin (8.7a), el componente Ixx del cilindro se computa como Ixx =

r2r dV =

d /2 2 r r l 2 p rdr 0

d4 md 2 r lp = 32 8

(8.20)

donde r es la distancia radial desde el eje del cilindro, es decir, el eje X, donde se encuentra el volumen elemental del cilindro. Adems, m = ld2/4 es la masa total
Z Y d O l a) Cilindro X O x b) Disco delgado Z Y dx X

Figura 8.4

Un objeto cilndrico

8.1

Propiedades de inercia

171

del cilindro. La expresin para el momento de inercia de un cilindro alrededor de los ejes Y o Z, es decir, con un dimetro en su extremo, puede obtenerse cuando se usan tanto el teorema de los ejes paralelos como el de los ejes perpendiculares. Este planteamiento incluye encontrar una expresin para un disco delgado a una distancia x desde el eje Y o z, como se muestra en la figura 8.3b), y la suma de todos estos discos. Para un disco infinitsimamente delgado con un espesor dx, el momento de inercia alrededor del eje central, es decir, el eje X, se determina por medio de la ecuacin (8.20), como 1 (8.21a) dIxx = d2dm 8 adems segn el teorema de los ejes perpendiculares, (8.21b) dIxx = dIyy + dIzz Puesto que el momento de inercia alrededor de los ejes Y y Z debe ser igual por simetra, se concluye que 1 (8.21c) dIyy = dIxx = 1 d2dm 2 16 Obtener el momento de inercia del cilindro completo alrededor de un dimetro en su extremo involucra sumar a travs de un nmero infinito de discos delgados a diferentes distancias de este eje, es decir, Y o Z. Esto implica una integral de x = 0 a x = 1. Para cualquier disco dado a la distancia x, por ejemplo, desde el eje Y, cuando se usa el teorema de los ejes paralelos se obtiene el momento de inercia alrededor del eje Y, es decir, dIyy = 1 d2dm + x2dm (8.21d) 16 Ahora bien, expresando el elemento de masa dm en trminos de x, puede integrarse a lo largo de la longitud del cilindro, es decir, Iyy =

1 dIyy = 1 md2 + ml2 3 16

(8.21e)

La plausibilidad de lo arriba expuesto puede verse si se observa que la ecuacin (8.21e) es la suma de las expresiones para un disco delgado alrededor de un dimetro ms la expresin para una barra delgada alrededor de su extremo. En el caso restrictivo, cuando d = 0, se obtiene la expresin de la barra delgada, y cuando l = 0, se obtiene la expresin para el disco. Por lo tanto, el tensor de inercia I de 3 3 para el cilindro se obtiene mediante

LM md MM 8 I = MM 0 MN 0

0 md 2 + ml 2 16 3 0

0 0 md 2 + ml 2 16 3

OP PP PP PQ

(8.22)

donde puede comprobarse que el producto de los trminos de inercia Ixy, Ixz e Iyz es cero, ya que el cilindro se coloca en forma simtrica alrededor de los ejes Y y Z.

172

CAPTULO

Dinmica

8.2

Formulacin de Euler-Lagrange

El modelo dinmico de un robot puede derivarse de manera sistemtica por medio del concepto de coordenadas generalizadas y de una funcin escalar llamada lagrangiano, que se define como la diferencia entre la energa cintica y la energa potencial del sistema mecnico en cuestin, es decir, L =TU (8.23) donde L denota la funcin lagrangiana, y T y U son la energa total cintica y potencial del sistema. Observe que la energa cintica depende tanto de la configuracin, es decir, posicin y orientacin, como de la velocidad de los eslabones de un sistema robtico, mientras que la energa potencial depende nicamente de la configuracin de los eslabones. Las ecuaciones de movimiento de Euler-Lagrange se obtienen entonces por

d L dt qi

FG IJ L H K q

= fi, para i = 1, , n

(8.24)

donde n es el nmero de coordenadas generalizadas independientes que se usan para definir la configuracin del sistema, y los qi y los i son las coordenadas generalizadas y fuerzas generalizadas debidas a las fuerzas aplicadas correspondientes a las coordenadas generalizadas, respectivamente.

8.2.1 Coordenadas generalizadas


Las coordenadas que especifican por completo la configuracin es decir, la posicin y orientacin de todos los cuerpos de un sistema mecnico se llaman coordenadas generalizadas. Se dice que la configuracin de un sistema mecnico es completamente conocida si se conoce la posicin y orientacin de todos los cuerpos que hay en el sistema. Puesto que un cuerpo rgido tiene seis grados de libertad (DOF), un sistema mecnico con m cuerpos mviles requiere coordenadas 6m para especificar por completo su configuracin en el espacio cartesiano tridimensional. Estas coordenadas se llaman coordenadas generalizadas de un sistema mecnico como, por ejemplo, el brazo de un robot. Sin embargo, estos cuerpos no pueden moverse libremente por las restricciones que imponen las articulaciones, es decir, estn sujetos a restricciones impuestas por las articulaciones. Como resultado, las coordenadas 6m ya no son independientes. Si existen c restricciones, entonces n = 6m c coordenadas pueden especificarse de manera independiente. stas se llaman coordenadas generalizadas in(x2, y2) dependientes, y el sistema tiene un DOF de n. Por lo d2 2 Y tanto, el nmero de coordenadas generalizadas indea1 pendientes es igual al nmero de DOF del robot. d1 (x , y ) 1 1 1 Observe que las coordenadas generalizadas pueden X definirse de varias maneras. Por ejemplo, considere el robot planar de dos eslabones que se presenta en la fi- Figura 8.5 Brazo de robot de gura 8.5. Puesto que un cuerpo rgido en un plano tiene dos eslabones

8.2

Formulacin de Euler-Lagrange

173

3 DOF, dos cuerpos requieren seis coordenadas, es decir, (x1, y1, q1) y (x2, y2, q2), las cuales no son independientes, puesto que hay dos articulaciones de revoluta que restringen el movimiento de los dos cuerpos. Observe que las coordenadas (x1, y1,) y (x2, y2) definen las posiciones del centro de masa de los eslabones, mientras que q1 y q2 denotan la orientacin de los eslabones, es decir, los sistemas coordenados fijos del cuerpo. Adems, d1 y d2 son las ubicaciones del centro de masa desde el origen de los sistemas, y para el primer conjunto de seis coordenadas existen cuatro restricciones, es decir, x1 = d1 cos q1 ; y1 = d1 sen q1 (8.25a) x2 = a1 cos q1 + d2 cos q12 ; y2 = a1 sen q1+ d2 sen q12 (8.25b) donde q12 q1 + q2. Por ende, el sistema tiene 6 4 = 2 DOF. Entonces, el conjunto independiente de coordenadas generalizadas puede ser q1 y q2. Desde luego, uno puede seleccionar otras dos coordenadas generalizadas independientes. Sin embargo, para el ejemplo presentado, q1 y q2 son el conjunto ms conveniente desde el punto de vista de los anlisis de dinmica y cinemtica de robots.

8.2.2

Energa cintica

Considere un robot que consiste en n eslabones rgidos, como el que se presenta en la figura 8.6a). Entonces, la energa cintica de un eslabn normal i, figura 8.6b), denotada como Ti, se obtiene mediante 1 1 T Ti = mi c T w I w (8.26) i ci + 2 2 i i i donde ci : Vector de velocidad (lineal) tridimensional del centro de masas Ci del i-simo eslabn; vi : Vector de velocidad angular tridimensional del i-simo eslabn; mi : Masa del i-simo eslabn. Una cantidad escalar; Ii : El tensor de inercia o matriz de 3 3 del i-simo eslabn alrededor de Ci, como se define en la subseccin 8.1.2. En la ecuacin (8.22), el tensor de inercia Ii para el i-simo cuerpo es invariante de tiempo, es decir, constante. Sin embargo, depende de la configuracin del brazo del robot y se expresa en un sistema de referencia diferente, por ejemplo, el sistema fijo, como [Ii]F = Qi[Ii]i+1Q iT (8.27) donde [Ii]i+1 es la matriz de inercia del i-simo eslabn representada en el sistema del eslabn mvil i + 1 que se sujeta al i-simo cuerpo, y Qi es la matriz de rotacin de 3 3 del eslabn i o el sistema i + 1 respecto al sistema fijo 1 o F, como se deriv en el captulo 5. La energa cintica total T se da ahora por la suma de las contribuciones de cada eslabn rgido debido a los movimientos relativos de cada articulacin, es decir, T =

i =1

Ti =

i Ii w i i 2 dmi c iT c i + w T n

(8.28)

i =1

En este punto, es necesario expresar la energa cintica como una funcin de las coordenadas generalizadas del sistema. Para un robot, las variables de las articulaciones, es decir, los ngulos de las articulaciones de revoluta y el desplazamiento para las articulaciones prismticas, especifican por completo la configuracin del robot. Por ende, los ngulos y

174

CAPTULO

Dinmica
Oi i Z1 O3 #2 O2 #1 O1 1 Sistema coordenado, F X1 a) Cadena serial Cuerpo, #i Z di fi ci Ci Masa: mi, Inercia: Ii Articulacin, i i vi ai 2 Y1 Efector terminal 3 n Oi + 1 i+1 On #n

#i

2i

ri ni Y Articulacin , i + 1

Sistema coordenado, F X

b) El i-simo cuerpo

Figura 8.6

Un robot de cadena serial

desplazamientos de las articulaciones se consideran las coordenadas generalizadas. Para el i-simo eslabn, la velocidad angular y la velocidad lineal se calculan a partir del primer eslabn de la cadena serial, figura 8.6a), como w 1 = q 1e1
c1 = w 1 d1 = e1 d1q 1

(8.29a) (8.29b) (8.29c) (8.29d) (8.29e) (8.29f)

w 2 = w 1 + q 2 e2 = e1q 1 + e2q 2
c 2 = c1 + w 1 r1 + w 2 d2 = e1 (a1 + d2)q 1 + e2 d2q 2

w i = w i 1 + q i ei = e1q 1 + e2q 2 + + eiq i


c i = c i - 1 + w i 1 ri1 + w i di = e1 r 1i q 1 + + ei r ii q i

8.2

Formulacin de Euler-Lagrange

175

Observe que al escribir las ecuaciones (8.29a-f), se supone que todas las articulaciones son de revoluta. Por consiguiente, el vector ei es el vector unitario paralelo al eje de la articulacin revoluta, mientras que ai, di y ri se presentan en la figura 8.6b). Adems, qij es el vector que conecta el origen de la i-sima articulacin Oi con el j-simo centro de masa Cj. Para i = j, qii di. Utilizando las ecuaciones (8.29e-f), las velocidades del i-simo eslabn pueden entonces expresarse en trminos de todos los ndices de articulaciones n, es decir, w i = Jw , i q , donde Jw , i [ jw ,1 jw,2 jw, i 0 0] (8.30a)
c i = Jc, i q , donde Jc, i [ j c,1 jc,2 jc, i 0 0] (8.30b) T donde p [q 1, q 2, ..., q n] es el vector n-dimensional de ndice de articulaciones. En las ecuaciones (8.30a-b), J,i y Jc,i son las matrices de 3 n. Proporcionalmente, J,i y Jc,i son los vectores tridimensionales que, segn las ecuaciones (8.2e-f), pueden escribirse como

jw , i ei; y jc, i ei r ij jw, i 0; y jc , i ei

(8.31a)

Observe que para una articulacin prismtica la ecuacin (8.31a) se modifica como (8.31b)

donde 0 representa el vector tridimensional de ceros y el vector ei es el vector unitario a lo largo de la traslacin de la articulacin prismtica. Si se sustituyen las ecuaciones (8.30a-b) en la ecuacin (8.26) y luego se suma a travs de todos los eslabones, la expresin para la energa cintica del sistema se obtiene como T =

1 1 m c T c + w iT I i w i = q T I i q 2 i =1 i i i 2 1
T T J + Jw I i mi J c , i I i Jw , i i c, i

d
n

(8.32a)

donde la matriz Ii de n n se determina por (8.32b) Observe que en la ecuacin (8.32 b) las expresiones JTc,i Jc,i y JT,i Ii J,i tambin estn en las matrices de n n. Adems, si una matriz I de n n se define como sigue: I =

Ii
i =1

(8.33)

Entonces la energa cintica total puede rescribirse segn la ecuacin (8.32a) como T =
1 T q Iq 2

(8.34)

donde la matriz I se llama matriz de inercia generalizada (GIM) del robot en cuestin. Cabe sealar aqu que la GIM del robot I de la ecuacin (8.34) involucra las matrices Ii, que a su vez es una funcin de las matrices J,i y Jc,I, como es evidente de la ecuacin (8.32b). Por lo tanto, el manipulador GIM es dependiente de la configuracin, es decir, nicamente de la funcin de p. Tambin, de modo parecido a como se define en las ecuaciones (8.5) y (8.6) la inercia de un cuerpo rgido Ii, el manipulador GIM I es tambin simtrico y positivo-definido. Esto es obvio por la forma cuadrtica de la ecuacin (8.34) que indica que la energa cintica del sistema siempre es positiva, a menos que est en reposo.

176

CAPTULO

Dinmica

8.2.3

Energa potencial

Como en el caso de la energa cintica, la energa potencial total almacenada en el robot se obtiene por la suma de las contribuciones de cada eslabn. Sobre la base de eslabones rgidos, la energa potencial guardada en el eslabn i se define como la cantidad de trabajo que se necesita para levantar el centro de masas del eslabn i desde un plano de referencia horizontal hasta su posicin presente bajo la influencia de la gravedad. En el caso del sistema coordenado de inercia, el trabajo necesario para desplazar el eslabn i hasta la posicin Ci se determina por miciTg, donde g es el vector debido a la aceleracin de gravedad. Por ende, la energa potencial total almacenada en un brazo de robot se obtiene mediante U =

mi c iT g
i =1

(8.35)

En la ecuacin (8.35), el vector ci es una funcin de las variables de articulacin, es decir, las q del robot. Por lo tanto, la energa potencial total es una funcin nicamente de las variables de articulacin p, y no de las velocidades de articulacin p. Adems, ci es una funcin no lineal de p, y, por lo tanto, U no puede expresarse de manera adecuada en trminos de p.

8.2.4

Ecuaciones de movimiento

Tras haber computado las energas cintica y potencial totales del robot en estudio, es decir, las ecuaciones (8.32) y (8.35), respectivamente, el lagrangiano de la ecuacin (8.23) puede escribirse como L =TU=

Ahora la funcin de Lagrange debe diferenciarse respecto a qi, q i y t para formular las ecuaciones dinmicas de movimiento. Con el fin de facilitar la derivacin, se expande el trmino de energa cintica como suma de los escalares. Si suponemos que iij es el elemento (i, j) del GIM I del robot, entonces la ecuacin (8.36) puede escribirse como L =

L MN 2 q T Ii q + mi c iT gOPQ
n

(8.36)

i =1

Puesto que la energa potencial no depende de q i, si se toma la derivada parcial de L dada por la ecuacin (8.37) respecto a q i, se obtiene

LM 1 i q q + m c M 2 N
n n ij i j i i =1 j =1

T i

OP PQ

(8.37)

L = q i

iij q j
j =1 n

(8.38)

para i = 1, , n. Entonces la ecuacin (8.38) se diferencia respecto al tiempo t como

d L dt q i

F I GH JK

G J M P M Miij q j + H dt K q j PP = Miij q j + q k q j q k P
n ij n

j =1

L N

F di I O Q

j =1

L N

iij

k =1

O Q

(8.39)

8.2

Formulacin de Euler-Lagrange

177

Tomando la derivada parcial de la ecuacin (8.37) respecto a qi, se obtiene


1 L = q i 2 q i

F I GH i q q JK + m g
n n n ij j k
j

j = 1 k =1

j =1

c j q i

(8.40)

Puesto que la derivada parcial de ci respecto a qi, cjlqi en ecuacin (8.40), es igual al vector de la i-sima columna de la submatriz jacobiana Jcj denotada por j(i)c, j, la ecuacin (8.40) puede escribirse como

1 L = 2 q i

c, j q i q j q k + mj gT j (i)

i jk

(8.41)

j =1 k =1

j =1

Mediante la combinacin de las ecuaciones (8.38) y (8.41), se obtienen las ecuaciones dinmicas de movimiento como

iij q j
j =1

+ hi + g i = ti

(8.42)

para i = 1, , n, donde
n n

hi y

G H q k
ij j =1 k =1 n

F i

1 i jk q j qk 2 q i

IJ K

gi

c, j mj gT j (i)

(8.43)

j =1

La ecuacin (8.34) puede armarse para todas las coordenadas generalizadas n como Iq + h + g = t donde la matriz de inercia generalizada I de n n se define en la ecuacin (8.33) y los vectores n-dimensionales h, f y s se definen abajo: h [h1, , hn]T: el vector n-dimensional de las aceleraciones centrfugas y de Coriolis. El vector h tambin puede expresarse como h = Cp, donde los elementos de la matriz C de n n se obtienen mediante
Coriolis en la dinmica! Si uno camina a lo largo del radio de un carrusel dando vueltas, uno experimentar una fuerza lateral. Esto se debe a la fuerza que resulta de la aceleracin de Coriolis.

(8.44a)

cij Tambin

G H q k
n ij k =1

F i

1 i jk q 2 q i k

IJ K

(8.44b)

f [1, , n]T: el vector n-dimensional de aceleraciones gravitacionales; s [t1, , tn]T: el vector n-dimensional de fuerzas generalizadas.

178

CAPTULO

Dinmica

Ejemplo 8.4

Expresin alternativa para los elementos de la matriz C en la ecuacin (8.44b)

A partir de la expresin de hi dada antes de la ecuacin (8.34), puede demostrarse lo siguiente mediante el intercambio del orden en la suma y tomando ventaja de la simetra:

F i IJ q G H q K
n n ij j =1 k =1 k

j qk =

1 2

G H q k
ij j =1 k =1 n

F i
+

iik q j qk q j

I JK

(8.45)

Por lo tanto,
n n

hi

G H q k
ij j =1 k =1

F i

1 1 i jk q j qk = 2 2 q i

IJ K

G H q k
ij j =1 k =1

F i

i jk iik q j qk q j q i

I JK

(8.46)

Como resultado, el elemento cij se extrae de la ecuacin (8.46) como cij


n i jk iij i 1 + ik q 2 k =1 q k q j q i k

G H

I JK

(8.47)

Cabe sealar aqu que por medio del uso de las ecuaciones (8.44b) y (8.47) para los mismos valores de i y j, se encontraran expresiones diferentes. Sin embargo, la expresin de hi basada en cualquiera de las ecuaciones deber ser la misma.

Ejemplo 8.5

-2C Matriz antisimtrica I

En primer lugar, se obtiene la derivada respecto al tiempo en un elemento de la matriz de inercia I, es decir, diij /dt como
diij = dt
k =1

dq k q k
n

diij

(8.48)

Por lo tanto, el elemento (i, j) de la matriz I -2C puede obtenerse mediante las ecuaciones (8.47) y (8.48) como
diij 2 cij = dt

k =1 n

dq k q k G H q k
diij
ij ik G H q j

F i

F i

k =1

k =1

i jk q q i k

I JK

i jk iik q q j q i k
(8.49)

I JK

Puesto que la matriz de inercia I es simtrica, es decir, iij = iji, puede demostrarse por medio de intercambio de los ndices que

diij di ji 2 cji = - 2cij dt dt lo que implica que la matriz I-2C es antisimtrica.

F H

I K

(8.50)

8.2

Formulacin de Euler-Lagrange

179

Ejemplo 8.6

Dinmica de un brazo de un eslabn

La ecuacin dinmica de movimiento del brazo de un Y1 O eslabn y DOF = 1 que se presenta en la figura 8.7 se derit va mediante la formulacin de Euler-Lagrange (EL). Se a q g adjuntan dos sistemas de coordenadas siguiendo la conC vencin de los parmetros DH que se analiz en la seccin X1 Y2 5.4. Observe en la figura 8.7 que no se usa ningn subndice en los parmetros del eslabn porque solamente X2 existe uno. Segn la formulacin EL, la coordenada generalizada es q, mientras que a/2 es la distancia del cenFigura 8.7 Brazo de un tro de masa del eslabn desde su origen de articulacin eslabn O. Adems, supongamos que la masa del eslabn es m, y su tensor de inercia alrededor de los centros de masa, es denotado por I. Con el sistema de coordenadas seleccionado, es decir, el sistema fijo X1 Y1, los jacobianos Jw,i y Jc,i para i = 1, la ecuacin (8.30a-b) proporcionar
a a (8.51a) sq cq 0 2 2 donde sq y cq representan sen q y cos q, respectivamente. Segn la ecuacin (8.34), el trmino de inercia escalar I se da por m m (8.51b) I a2 + Izz = a2 4 3 Observe aqu que, a pesar de que la matriz de inercia I del eslabn tenga todos los elementos no cero debido a la estructura de Jw,1, slo el elemento (3, 3) de I, a saber Izz, contribuye al trmino de inercia generalizada. Usando la ecuacin (8.43), se obtienen los elementos de los vectores h y f, es decir, h y g, respectivamente, de la siguiente manera: a (8.52) h = 0; y g m gT j(1) c,1 = mg sq 2 donde g [g 0 0]T g es la aceleracin debida a la gravedad. Usando las ecuaciones (8.51a-b), la ecuacin de movimiento en la forma de la ecuacin (8.44a) es: 1 ma2 + 1 mgasq = t (8.53) q 2 3 Cabe sealar aqu que para un sistema sencillo como el brazo de un eslabn, es recomendable obtener la ecuacin de movimiento, es decir, la ecuacin (8.53), directamente de las ecuaciones (8.24) y (8.26). Esto se muestra a continuacin:

Jw ,1 [0 0 1]T ; Jc,1 -

LM N

OP Q

a 1 m q 2 2

FH IK

1 ma 2 2 ma 2 2 q = q 6 2 12 a - a cq U = mg 2 2

L =TU

ma 2 2 q mg a (1 cq) 2 6

FH

IK

(8.54a)

180

CAPTULO

Dinmica

Para la coordenada generalizada q, la ecuacin (8.24) proporciona entonces


d L 1 1 1 1 L = ma2q ; = mgasq ; y ma2q + mgasq = t (8.51b) 3 2 3 2 q dt q lo que muestra la misma expresin que la que se obtuvo en la ecuacin (8.53).

FG IJ H K

Ejemplo 8.7

Dinmica de un brazo de robot de dos eslabones

Se derivan las ecuaciones dinmicas de movimiento del robot de dos eslabones y DOF = 2, basadas en las ecuaciones de Euler-Lagrange. El vector de las coordenadas generalizadas es q [q1, q2]T mientras que a1/2 y a2/2 son las distancias del centro de las masa de los dos eslabones desde sus respectivos orgenes de articulacin, es decir, O1 y O2. Adems, supongamos que las masas de los dos eslabones son m1 y m2, y que sus tensores de inercia alrededor de los centros de masa son I1 e I2. Con el sistema de coordenadas seleccionado, es decir, el sistema fijo F, los jacobianos Jw,i y Jc,i para i = 1, 2, la ecuacin (8.30a-b) proporcionar Jw,1 y

LM0 M0 MN1

O 0P ; J P 0P Q
0

w ,2

LM0 M0 MN1

OP P 1P Q
0 0
12

(8.55a)

Jc,1

LM- a s M a 2c M MN 20
1 1 1

OP P 0P ; J 0P Q
0

c,2

LM- a s - a s 2 M a Mac + c MN 0 2
2 1 1 2 1 1 11 21

12

a2 s 2 12 a2 c 2 12 0

OP PP PQ

(8.55b)

Segn la ecuacin (8.33), la matriz de inercia generalizada I de 2 2 se determina por I cuyos elementos son los siguientes: i11 =

LMi Ni

i12 i22

OP Q

(8.56a)

m1 2 a2 2 a 1 + I1,zz + m2 a1 + 2 + a1 a2 c2 + I2, zz 4 4

i12 = i21 m2 i22 = m2

FG a H4

FG H

2 2

a1 a2 c2 2

IJ + I K

IJ K

(8.56b) (8.56c) (8.56d)

2, zz

2 a2 + I2, zz 4

8.3

La formulacin Newton-Euler

181

donde si sen qi y ci cos qi para i = 1, 2. Observe aqu que, a pesar de que las matrices de inercia I1 e I2 de los eslabones 1 y 2, respectivamente, tengan todos los elementos no cero debido a las estructuras de Jw,1 y Jw,2, slo el elemento (3, 3) de I1 e I2, a saber, I1,zz e I2,zz, contribuyen a las expresiones de la matriz de inercia generalizada, es decir, las ecuaciones (8.56a-d). Usando la ecuacin (8.43), se obtienen los elementos de los vectores h y f, es decir, hi y fi, respectivamente, para i = 1, 2 de la siguiente manera: h1
1 i11 2 i11 q + q q + 2 q 1 1 q 2 1 2

FG i H q

12 2

i - 1 22 q 2 2 q 1 2
(8.57a)

IJ K

= m2 a1 a2 s2q 1 q 2 m2 h2 = y

FG i H q

21 1

i 1 i11 2 i22 q + q q + 1 22 q 2 2 q 2 1 q 1 1 2 2 q 2 2

IJ K

a1 a2 s q2 2 2 2

m2 a a s q2 2 1 2 2 1

(8.57b)

a1 a c + m2g a1 c1 + 2 c12 2 1 2 a T (2) 2 g2 m1gT j (2) c c,1 m2 g j c,2 = m2g 2 12


T (1) g1 m1 gT j (1) c,1 m2 g j c,2 = m1g

F H

I K

(8.58a) (8.58b)

donde g [0 g 0]T g es la aceleracin debida a la gravedad.

8.3

La formulacin Newton-Euler

En esta seccin se define en primera instancia la cantidad de movimiento lineal y angular de un cuerpo rgido. Esto se usar para la derivacin de las ecuaciones de Newton-Euler (NE) del movimiento de un sistema robtico determinado. Basada en las ecuaciones NE, se presenta un mtodo recursivo para el anlisis dinmico, que es til para el control del robot.

8.3.1

Cantidad de movimiento lineal

La cantidad de movimiento lineal del elemento de masa dV respecto al punto O, como se presenta en la figura 8.1, se denota por dm observe que la m en negrillas es diferente de la m en cursivas que representa la masa y se define mediante dp (8.59) dm = r dV dt Por lo tanto, la cantidad de movimiento lineal total del cuerpo B alrededor de O se determina por m =

dp d r dV = dt dt

pr dV

(8.60)

182

CAPTULO

Dinmica

Usando la definicin del centro de masa de la ecuacin (8.1a), la ecuacin (8.60) puede reescribirse como d (8.61) m = (mc) = m c dt
Puede cambiar la masa de un objeto? Desde luego que s. Imagine un avin o un auto cuya masa total se reduce conforme se est consumiendo el combustible debido a su operacin.

Por la derivacin de la ecuacin (8.61), la derivada de tiempo de la masa m es cero, pues para un cuerpo rgido la masa no cambia con el paso del tiempo. Ade ms, c dc/dt denota la velocidad del centro de la masa respecto al sistema de referencia F. La ecuacin (8.61) implica que la cantidad de movimiento lineal total de un cuerpo rgido es igual a la cantidad de movimiento lineal de una masa puntual, con la masa m ubicada en el centro de masa C.

8.3.2

Cantidad de movimiento angular

de un elemento de masa dV alreEn la figura 8.1, la cantidad de movimiento angular dm dedor de un punto de referencia O se define como el momento de su cantidad de movimiento lineal, ecuacin (8.61), alrededor de O, es decir, ~ O = p d p r dV (8.62) dm dt Por lo tanto, la cantidad de movimiento angular total de B alrededor de O se determina por
~O = m

dp r dV dt

(8.63a)

Cuando se sustituye p = c + r, como se muestra en la figura 8.1, en la ecuacin (8.63a), se obtiene


~O = m

FH dc rdV IK + dt

F d r rdV I + H dt K
I FH K

FH dc rdV IK + dt

F d r rdV I H dt K

(8.63b)

Observando que

dr =vr (8.63c) dt donde v es la velocidad angular del cuerpo B, la ecuacin (8.63b) puede reordenarse como
~O =c c m

en la que r dV = m y, segn la ecuacin (8.1d), r r dV = 0. Por lo tanto, el segundo y V V tercer trminos de la ecuacin (8.63d) desaparecen, lo que proporciona la cantidad de mo O como vimiento angular total alrededor de O, es decir, m ~ O = c (m c ) + m ~ m (8.64) donde
~ m

r dV + c v rr dV +
V

F H

rrdV c +

IK

r (v r)r dV

(8.63d)

r (w r)r dV

(8.65)

8.3

La formulacin Newton-Euler

183

~ de la ecuacin (8.65) denota la cantidad de movimiento angular del cuerpo El trmino m rgido alrededor del centro de masa C. Adems, el vector c de la ecuacin (8.64) es la velocidad del centro de masa C respecto al sistema de referencia F. Adicionalmente, la ecuacin (8.64) es la cantidad de movimiento angular total de B alrededor del origen O, que es igual a la cantidad de movimiento angular de una masa puntual con la masa m concentrada en el centro de la masa, ms la cantidad de movimiento angular de rotacin alrededor de su centro de masa. Entonces, mediante la definicin del producto vectorial triple, es decir, a (b c) = (aTc)b (aTc)c, donde a, b, y c son los vectores cartesianos tridimensionales, la expresin r (v r) de la ecuacin (8.65) puede expresarse como r (v r) = (rT r)v (rT v) r = [(rT r)1 rrT ]v Cuando se comparan las ecuaciones (8.5) y (8.65), se observa que
~ Iv, donde I m

(8.66)

[(rT r)1 rrT ]r dV

(8.67)

donde I es el tensor de inercia del cuerpo B alrededor de su centro de masa C. Aqu cabe sealar que la cantidad de movimiento angular determinada en la ecuacin (8.67) puede expresarse en cualquier sistema de referencia. Si se expresa la ecuacin (8.67) en el sistema de referencia F, se obtiene ~ ] = [I] [w ] [m (8.68) F F F en la que [.]F denota la cantidad del vector o matriz expresada en el sistema F. Si se expresa la ecuacin (8.68) en un sistema de cuerpo fijo, centro de masa C ~ ] = [I] [w ] [m (8.69) C C C [v]C es la velocidad angular del cuerpo B en relacin con el sistema fijo F, pero expresado en el sistema del cuerpo C, es decir, [v]C = QT[v]F. La matriz Q de 3 3 es la matriz de rotacin que describe la orientacin del sistema coordenado C en relacin con el sistema F. Pues es un vector, su transformacin sigue a la de un vector, a saber, to que m ~ ] = Q[ m ~] (8.70) [m F C Cuando se sustituyen las ecuaciones (8.68) y (8.69) en la ecuacin (8.70), se obtiene (8.71) [I]F [w ]F = Q [I]C [w ]C El uso de [v]C = QT[v]F en la ecuacin (8.71) proporciona (8.72) [I]F = Q[I]C QT La ecuacin (8.72) transforma una matriz de inercia expresada en un sistema de referencia en otra. Ambas matrices de inercia se toman alrededor del centro de masa C. Los elementos de [I]C son constantes porque generalmente estn expresados en el sistema del cuerpo fijo C. Sin embargo, los elementos de [I]F no lo son, ya que estn expresados en el sistema fijo F, y la orientacin del sistema C en relacin con F es dependiente del tiempo. La dependencia de [I]F resulta de la matriz de rotacin Q.

8.3.3

Ecuaciones de movimiento

Se asume que existe un sistema fijo de inercia respecto a la cual se derivarn las ecuaciones de movimiento de Newton-Euler (NE). Como se muestra en la figura 8,8, suponga que F es el sistema fijo. Adems, el vector m es la cantidad de movimiento lineal del cuerpo rgido B

184

CAPTULO

Dinmica
f Cuerpo, B Z ZC C c Masa: m; Inercia: I O Y Sistema, F X XC Sistema, C YC n

Figura 8.8 Fuerza y momento resultantes actuando sobre un cuerpo rgido

expresado en el sistema F, y la cantidad de movimiento angular correspondiente se represen . Suponga tambin que los vectores f O y nO son las resultantes de fuerzas y ta por el vector m momentos ejercidos sobre el cuerpo rgido B en y alrededor del origen O, respectivamente. Entonces pueden definirse las ecuaciones lineales de Newton como la derivada respecto al tiempo de la cantidad de movimiento lineal m, es decir, dm fO = (8.73) dt mientras que las ecuaciones rotacionales de movimiento de Euler se dan como la razn de O, es decir, cambio de la cantidad de movimiento angular respecto al tiempo m ~O dm (8.74) nO = dt Si se toma un punto arbitrario como referencia, la aplicacin de las ecuaciones bsicas de movimiento (8.73)-(8.74) podr resultar inconveniente. A continuacin se mostrar que, cuando se usa el centro de masa C como punto de referencia, el movimiento del cuerpo rgido puede dividirse de forma natural en dos partes: el movimiento lineal del centro de masa C ms un movimiento rotacional del cuerpo rgido alrededor del centro de masa C. En la figura 8.8, el centro de masa de un cuerpo rgido B es C, denotado por el vector c. En primer lugar se aplican las leyes de Newton. La sustitucin de la ecuacin (8.61) en la ecuacin (8.73) da como resultado d ( mc ) fO = (8.75) dt Para un cuerpo de masa constante, la ecuacin (8.75) se reduce entonces a
dc = mc (8.76) dt La ecuacin (8.76) se llama ecuacin de movimiento de Newton para el centro de masa. Luego se considera el movimiento rotacional del cuerpo rgido B. La diferenciacin de la ecuacin (8.53) respecto al tiempo da como resultado ~ ~O dm dm dc (8.77) =cm + dt dt dt

fO = m

8.3

La formulacin Newton-Euler

185

Suponga que h y n son las resultantes de fuerzas y momentos ejercidos en el centro de masa C, tal como se muestra en la figura 8.8. Entonces lo siguiente es vlido: (8.78a) fO = f (8.78b) nO = n + c f Mediante la sustitucin de las ecuaciones (8.74) y (8.78b) en la ecuacin (8.77) se obtiene ~ dm dc (8.79) n+cf = +cm dt dt Mediante la sustitucin de las ecuaciones (8.76) y (8.78a) en la ecuacin (8.79), y comparando ambos lados, se obtiene lo siguiente: ~ dm n = (8.80) dt En otras palabras, la razn de cambio de la cantidad de movimiento angular de B alrededor del centro de masa C es igual al momento resultante ejercido en el mismo punto. La puede desarrollarse de forma ms conveniente en el sistema del centro de derivada de m masa de cuerpo fijo C, como se muestra en la figura 8.8, porque los elementos del tensor de inercia de B son constantes en el sistema C. La sustitucin de la ecuacin (8.67) en la ecuacin (8.80) y la expresin de la ecuacin resultante en el sistema C nos da d ([I]C [w ]C ) (8.81) [n]C = dt Observe que la diferenciacin de m en la ecuacin (8.80) u (8.81) se toma respecto al sistema coordenado de inercia F, a pesar de que las cantidades estn representadas en el sistema C. Si se aplica la regla de diferenciacin, la ecuacin (8.81) da como resultado lo siguiente: [n]c = [I]c [ w ]c + [w ]c ([I]c [w ]c ) (8.82) La ecuacin (8.82) se llama ecuacin de movimiento rotacional de Euler para el sistema de coordenadas del centro de masa. Las ecuaciones de movimiento de Euler tambin pueden escribirse en el sistema fijo F. Para hacer esto, ambos lados de la ecuacin (8.82) se multiplican por la matriz de rotacin Q y se hace uso de las relaciones [w ]C = QT [w ]F , y [ n]C = QT [n]F es decir, [n]F = Q[I]C QT [ w ]F + [w ]F (Q [I]C QT [w ]F ) o simplemente [n]F = [I]F [ w ]F + [w ]F ([I]F [w ]F) donde (8.83b) La ecuacin (8.83b) se llama ecuacin de movimiento rotacional de Euler para un sistema de cuerpo no-fijo por ejemplo, el sistema fijoF. Aunque las ecuaciones (8.82) y (8.83b) tienen forma similar, son fundamentalmente diferentes. Los elementos del tensor de inercia en la ecuacin (8.82) son constantes, mientras que los de la ecuacin (8.83b) estn subordinados al tiempo. Por lo tanto, se prefiere la ecuacin (8.82) sobre la ecuacin (8.83b). [I]F Q[ I ]C QT (8.83a)

186

CAPTULO

Dinmica

8.4

Algoritmo recursivo de Newton-Euler

Aqu se presenta un algoritmo recursivo de Newton-Euler (NE) para el anlisis dinmico de un robot serial que incorpora todos los momentos y fuerzas que actan sobre el eslabn individual del manipulador robtico. Por lo tanto, las ecuaciones que resultan incluirn todos los momentos y fuerzas de restriccin debidos a una articulacin entre los dos eslabones adyacentes. Estos momentos y fuerzas de restriccin son tiles para determinar los tamaos de eslabones y cojinetes durante la fase de diseo. El mtodo consiste en un clculo progresivo de las velocidades y aceleraciones de cada eslabn, seguido por el clculo regresivo de los momentos y fuerzas en cada articulacin. Los momentos y fuerzas que actan sobre un eslabn normal i de un manipulador serial se presentan en la figura 8.6. Con fines de anlisis, se emplean las siguientes notaciones: fi1,i : Vector tridimensional de la fuerza resultante ejercida sobre el eslabn i por el eslabn i 1 en Oi. ni-1,i : Vector tridimensional del momento resultante ejercido sobre el eslabn i por el eslabn i 1 en Oi. fi+1,i : Vector tridimensional de la fuerza resultante ejercida sobre el eslabn i por el eslabn i + 1 en Oi+1. Observe que fi+1,i = fi,i+1. ni+1,i : Vector tridimensional del momento resultante ejercido sobre el eslabn i por el eslabn i + 1 en Oi+1, de tal manera que ni +1, i = ni,i +1. g ni fi Ii oi ci ri ai
o , i i c ,c i i vi, v i ei

: El vector tridimensional de aceleracin debida a la gravedad. : El momento resultante ejercido alrededor del centro de masa del eslabn i. La fuerza resultante ejercida alrededor del centro de masa del eslabn i. : : La matriz de inercia del eslabn i alrededor de su centro de masa Ci. : Vector de posicin del origen del i-simo eslabn, como se muestra en la figura 8.9. : Vector de posicin del centro de masa del i-simo eslabn. : Vector de posicin del origen del eslabn i + 1 desde el centro de masa del eslabn i, Ci. : Vector de posicin del origen del eslabn i + 1 desde el centro de masa del eslabn i, Oi. : Velocidad y aceleracin lineales del origen Oi. : Velocidad y aceleracin lineales del centro de masa del eslabn i. : Velocidad y aceleracin angulares del eslabn i. : El vector unitario apuntando a lo largo del eje Zi.

A continuacin se presentarn los clculos progresivo y regresivo.

8.4.1 Clculo progresivo


En primer lugar, se evalan la velocidad y aceleracin angulares, as como la velocidad y aceleracin lineal de cada eslabn en trminos del eslabn que le antecedi. Estas veloci-

8.4
Zi, ei

Algoritmo recursivo de Newton-Euler

187

Zi+1, ei+1 Articulacin i Articulacin i + 1 Ci

mig di ai

ri fi, i+1 Oi+1 ni, i+1 Xi+1

Z1 oi+1 oi O Y1 ni1, i fi1, i bi Oi

ai Xi

X1

Figura 8.9

Momentos y fuerzas ejercidos sobre el eslabn i

dades pueden calcularse entonces de manera recursiva, empezando con el primer eslabn mvil y terminando con el eslabn del efector final. Las condiciones iniciales para el esla bn de base son c =c 0 = v0 = w = 0. 0 0

i) Propagacin de la velocidad angular

Debido a la construccin serial del manipulador robtico, la velocidad angular del eslabn i en relacin con el eslabn i 1 es igual a q iei para una articulacin de revoluta y 0 para una articulacin prismtica, donde ei denota el vector unitario apuntando a lo largo del i-simo eje de la articulacin. Por ende, la velocidad angular del eslabn i puede escribirse como wi =

Rw | S | Tw

i -1 i -1

+ q i ei

: para una articulacin de revoluta : para una articulacin prismtica

(8.84a)

Si se expresa la ecuacin (8.84a) en el i-simo sistema de eslabones, se obtiene [w i]i =

R Q | S | TQ

T i - 1 [w i - 1]i - 1 T i - 1 [w i - 1]i - 1

+ q i [e i ]i

: para una articulacin de revoluta (8.84b) : para una articulacin prismtica

donde la transposicin de la matriz de rotacin de 3 x 3 que representa la orientacin del sistema i + 1 adjunto al eslabn i respecto a la de i adjunto al eslabn i 1 se determina por QT i 1

LM cq M-ca sq MN sa cq
i -1 i -1 i -1

i -1

sq i - 1 ca i - 1 cq i - 1

0 sa i -1

i -1

- sa i - 1 cq i - 1 ca i - 1

OP PP Q

(8.85)

188

CAPTULO

Dinmica

donde qi, ai son los ngulos de articulacin y torsin de los parmetros DH que se definieron en el captulo 5, mientras que el vector unitario [ei]i [0, 0, 1]T apunta a lo largo del i-simo eje de articulacin y se expresa en su sistema de coordenadas.

ii) Propagacin de la aceleracin angular

La aceleracin angular del eslabn i se obtiene mediante la diferenciacin de la ecuacin (8.84a) respecto al tiempo, es decir,
wi =

R w | S | Tw

i -1 + q i ei i -1

+ q i w i ei

: para una articulacin de revoluta : para una articulacin prismtica

(8.86a)

Si se expresa la ecuacin (8.86a) en el i-simo sistema de eslabones, se obtiene [ w i ]i =

R Q | S | TQ

T i - 1[w i - 1]i - 1 + q i [ e i ]i T i - 1[w i - 1]i - 1

+ q i [w i ]i [e i ]i

: para una articulacin de revoluta : para una articulacin prismtica (8.86b)

La ecuacin (8.86b) proporciona una frmula recursiva para computar la aceleracin angular del eslabn i en trminos del eslabn i 1. En la figura 8.9, puede observarse lo siguiente: 1) si la i-sima articulacin es de revoluta, el eslabn i no se traslada a lo largo del i-simo eje de articulacin; y 2) si la i-sima articulacin es prismtica, hay una velocidad de traslacin de bi a lo largo del i-simo eje de articulacin. Por ende, puede escribirse la velocidad del centro de masa Ci en trminos de la velocidad de Ci-1
ci =

iii) Propagacin de la velocidad lineal

c R S Tc

i -1 +

w i -1 ri -1 + w i d i : para una articulacin de revoluta para una articulacin prismtica i - 1 + w i - 1 (ri -1 + d i ) + bi e i :

(8.87a)

La ecuacin (8.87a) tambin puede escribirse en el i-simo sistema coordenado como


[ c i ]i =

R Q | S | TQ

T i - 1 ([ c i - 1]i - 1 T i - 1 ([ c i - 1]i - 1

+ [w i -1]i -1 [ri -1]i -1) + [w i ]i [d i ]i : Revoluta + [w i -1]i -1 [ri -1]i -1) + [w i ]i [d i ]i + bi [e i ]i : Prismtica
[w i]i = Q Ti 1 [w i1]i1

(8.87b)

donde para la articulacin prismtica se obtiene en la ecuacin (8.87b). Adems, [di]i = [ai]i [ri]i en la que

LMa cq OP [a ] M a s q P ; y [ r ] MN b PQ
i i
i i

i i+1

LMr OP Mr P MNr PQ
ix iy iz

(8.88)

8.4

Algoritmo recursivo de Newton-Euler

189

y donde rix, riy y riz son los componentes constantes del vector ri en el sistema(i + 1) que se adjunta al eslabn i. La ecuacin (8.87b) es la frmula recursiva para calcular la velocidad lineal del eslabn i en trminos del eslabn (i 1).

iv) Propagacin de la aceleracin lineal

La aceleracin lineal del centro de masa del eslabn i puede obtenerse mediante la diferenciacin de la ecuacin (8.87a) respecto al tiempo como

Revoluta Prismtica (8.89a)

= para las articuladonde se usan para la derivacin de la ecuacin (8.89a) i = i-1 y i i-1 ciones prismticas, as como las ecuaciones (8.84a) y (8.86a), respectivamente. Al expresar la ecuacin (8.89a) en el i-simo sistema coordenado se obtiene entonces como

(8.89b) 2 donde todas las cantidades vectoriales dentro de [...] estn representadas en el sistema j para j = i 1 e i. La ecuacin (8.89b) es la frmula recursiva para calcularla aceleracin lineal del eslabn i en trminos de la del eslabn i 1.

v) Aceleracin de la gravedad

Finalmente, la aceleracin de la gravedad del (i 1)-simo sistema al i-simo sistema puede transformarse as: [g]i = QTi 1 [g]i 1 (8.90)

8.4.2 Clculo regresivo


Una vez que se hayan encontrado las velocidades y aceleraciones de los eslabones, pueden computarse los pares de torsin y fuerzas de articulaciones, eslabn por eslabn, empezando con el del efector final y terminando con el de la base. En primer lugar se aplican las ecuaciones (8.76) y (8.82) para computar la fuerza de inercia y el momento ejercidos en y alrededor del centro de masa del eslabn i. Ellas son [fi]i = mi [ c i ] i [ni]i = [Ii] i [ w i ] i + [w i ]i [Ii] i [w i ]i
El signicado de recursivo Las velocidades, fuerzas, etc., de eslabones se computan para un eslabn despus de que se conozcan las mismas para sus eslabones anteriores o posteriores.

(8.91a) (8.91b)

190

CAPTULO

Dinmica

Luego se escriben las ecuaciones de balance de fuerza y momento alrededor del centro de masa del eslabn i. Como se ve en la figura 8.9, [fi] i = [fi 1, i] i [fi,i +1,] i + mi [g] i [ni] i = [ni 1, i] i [ni, i +1] i [di]i [fi 1,i] i [ri]i [fi, i +1,] i Al reordenar las ecuaciones (8.92a-b) en forma recursiva, se obtiene [fi 1,i] i = [fi]i + [fi, i +1,] i mi[g] i [ni 1, i]i = [ni]i + [ni, i+1, ]i + [di] i [fi 1,i] i + [ri]i [fi, i +1] i (8.92c) (8.92d) (8.92a) (8.92b)

Las ecuaciones (8.92c-d) pueden usar para resolver [fi1,i]i y [ni1,i]i en forma recursiva, empezando con el eslabn del efector final. Para el efector final, el momento y la fuerza [nn, n+1]n+1 y [fn, n+1]n+1, respectivamente, representan el momento externo y la fuerza externa aplicadas por el efector final sobre el ambiente, como se explic en el captulo 7. Se asume que estos valores son conocidos.

8.4.3

Expresiones de pares de torsin o fuerza en articulaciones

Los pares de torsin y fuerzas i de actuadores se obtienen mediante la proyeccin de las fuerzas de restricciones a sus correspondientes ejes de articulaciones, es decir, ti =

La ecuacin (8.93) declara que i no es otra cosa que el ltimo elemento del vector [ni1,i]i o [fi1,i]i.

R[e ] [n | S | T[e ] [f
T i i T i i

i - 1, i ]i

: para una articulacin de revoluta : para una articulacin prismtica

i - 1, i ]i

(8.93)

Ejemplo 8.8

Ecuaciones NE para el brazo de un eslabn y DOF = 1


Y1 O X1 f
x 01

Considere el manipulador planar de DOF = 1 que se muestra en las figuras 8.7 y 8.10. La matriz de rotacin es cq - s q 0 (8.94) Q sq cq 0 0 0 1 El vector a1 en su propio sistema de coordenadas se representa as: [a]1 = [acq1 asq1 0]T (8.95) Adems, suponiendo que el eslabn es homogneo, los vectores [d]1 y [r]2 se dan como [d]1 1 acq 2

LM MM N

OP PP Q

y 01

g C

Figura 8.10

Diagrama de cuerpo libre de un eslabn

LM N

1 asq 2

OP Q

8.4

Algoritmo recursivo de Newton-Euler

191

y [r]2 =

LM a N2

0 0

OP Q

(8.96)

Suponga que el eslabn es una viga cuadrada con un rea de seccin transversal relativamente pequea. Entonces la matriz de inercia del eslabn alrededor de su centro de masa C representada en un sistema adjunto a s mismo, es decir, el sistema 2, se da por 0 0 0 ma 2 (8.97) 0 1 0 [ I ]2 = 12 0 0 1 Si se aplica el algoritmo recursivo de Newton-Euler para calcular las velocidades y aceleraciones del eslabn en forma recursiva, se obtiene lo siguiente:

LM MM N

OP PP Q

a) Clculo progresivo En primer trmino, se computan las velocidades y aceleraciones del eslabn, tomando en cuenta que se ha adjuntado a la base fija cuyas velocidades angulares y lineales son cero; es decir,
0 0 [w ]1 = 0 ; y [ w ]1 = 0 q q a [ c ]1 = q 2

LM OP MM PP NQ

LM-sq OP MM c0q PP ; y [ c ] N Q

LM OP MM PP NQ

(8.98a)

a 1=q 2

LM-sq OP MM c0q PP q N Q

cq a s q 2 0

LM MM N

OP PP Q

(8.98b)

Se supone que la aceleracin por gravedad apunta en la direccin X1 del primer sistema, es decir, [g]1 [ g 0 0]T

b) Clculo regresivo Para el clculo regresivo se obtienen primero que nada las fuerzas ejercidas sobre el eslabn. Suponiendo que no existan fuerzas aplicadas externamente, es decir, [f12]2 = [n12]2 = 0
los clculos progresivos en las ecuaciones siguiente: - sq a [f1]1 = m q cq - q 2 2 0 (8.91a-b) y (8.92c-d) para i = 2 dan lo

[f01]1

LM- m a (q sq + q cq ) - mgOP 2 a MM m P = (q c q - q s q ) P ; 2 MN PQ 0
2 2

F GG GH

LM MM N

OP PP Q

LMcq OPI MMsq PPJJJ N 0 QK

0 a2 ; [n]1 = m 0 12 q

LM OP MM PP NQ

(8.99)

192

CAPTULO

Dinmica

[n01]1

LM OP 0 = M MM ma q + ma 0q + 1 mgasq PPP N 12 4 2 Q
2 2

(8.100)

c) Clculo del par de torsin en articulaciones Finalmente, aplicando la ecuacin (8.93) para computar el par de torsin requerido, la nica ecuacin dinmica se obtiene como 1 1 (8.101) t = ma2q + mgasq 3 2 que nuevamente es la misma que en la ecuacin (8.53) u (8.54b). Ejemplo 8.9 Ecuaciones NE para un manipulador de dos eslabones

Considere el manipulador de DOF = 2 que se presenta en la figura 8.5. Las matrices de rotacin son cq 1 - sq 1 0 cq 2 - sq 2 0 Q1 sq 1 0 [a1]1 [a1cq1

Los vectores a1 y a2 en su propio sistema coordenado son como sigue: a1sq1 0]T ; y [ a2]2 [a2cq2 a2sq2 0]T (8.103) Adems, suponiendo que los eslabones son homogneos, los vectores [di]i y [ri]i+1 para i = 1, 2 se dan como [di]i

LM MM N

cq 1 0

0 ; y Q2 sq 2 1 0

OP PP Q

LM MM N

cq 2 0

0 1

OP PP Q

(8.102)

LM 1 a cq N2
i

1 a sq 2 i i

OP Q

; y [ ri]i+1 =

LM a N2

0 0

OP Q

(8.104)

Suponga que los dos eslabones son vigas cuadradas con un rea de seccin transversal relativamente pequea. Entonces la matriz de inercia del eslabn i alrededor de su centro de masa representada en un sistema coordenado adjunto se da por

0 0 0 mi ai2 0 1 0 ; para i = 1, 2 Ii+1 = 12 0 0 1

LM MM N

OP PP Q

(8.105)

Aplicando el algoritmo recursivo de Newton-Euler para calcular las velocidades y aceleraciones de eslabones, y luego las fuerzas y momentos, y tambin recursivamente se obtiene lo siguiente:

a) Clculo progresivo En primer trmino se computan las velocidades y aceleraciones del eslabn 1. Puesto que el eslabn 1 se adjunta a la base fija cuyas velocidades angulares y lineales son cero, sus velocidades se determinan por

8.4

Algoritmo recursivo de Newton-Euler

193

[w 1]1

[ c 1 ]1

Se supone que la aceleracin por gravedad apunta en la direccin Y1 del primer sistema, es decir, [g]1 [0 g 0]T Entonces se computan las velocidades y aceleraciones del eslabn 2. Si se sustituyen las velocidades y aceleraciones del eslabn 1 en las ecuaciones (8.84b), (8.86b), (8.87b) y (8.89b), se obtiene

LM 0 OP LM 0 OP = M 0 P ; y [w ] = M 0 P MNq PQ NMq PQ L-sq OP a M =q ;y[c ] cq P 2 M MN 0 PQ


1 1

(8.106a)

a1 1 = q1 2

LM-sq OP MM cq PP q N0Q
1 1

2 1

cq 1 a1 sq 1 2 0

LM MM N

OP PP Q

(8.106b)

LM 0 OP LM 0 OP w ; y [ ] = 0 MM PP MM 0 PP Nq + q Q Nq + q Q LM - a sq q OP 2 M P a [ c ] = Ma q + cq q P ; 2 MN PQ 0 LM-a q - a ( sq q + cq q )OP 2 M P a [c ] = M a q + ( cq q - s q q ) P 2 MN PQ 0
[w 2]2 =
2 2

(8.107a)

12

2 2

12

2 1

12

2 12

2 2

12

2 12

(8.107b)

+q . La aceleracin por gravedad expresada en el sedonde q 12 q 1 + q 2 q q 12 1 2 gundo sistema del eslabn es


T [g ]2 = Q 1 [g]1 = [ g1sq1 g1cq1

0]T

b) Clculo regresivo Para el clculo regresivo se obtienen primero que nada las fuerzas ejercidas sobre el eslabn 2 y luego las del eslabn 1, suponiendo que no existan fuerzas aplicadas externamente, es decir, [f32]2 = [n32]2 = 0
Luego, sustituyendo [f23]3 = [n23]3 = 0 junto con las velocidades y aceleraciones del eslabn 2 obtenidas a partir de los clculos progresivos, en las ecuaciones (8.91a-b) y (8.92c-d) para i = 2, se encuentra

194

CAPTULO

Dinmica

[f2]2

[f12]2

[n12]2

LM- a q - a (sq q + cq q )OP 2 L0O M P a M P a =m M a q + 0 (cq q - sq q ) P ; [n ] = m 12 M P 2 MN P MNq PQ 0 Q LM-a q - a ( sq q + cq q ) + gsq OP LM f OP 2 M P a =m Ma q + (cq q - sq q ) + gcq P M f P 2 MN PQ MN 0 PQ 0 LM OP L 0 O 0 PP MM 0 PP = M 0 MM a a a P - sq f + q P M cq f + m 2 12 N 2 Q Nn Q
1 2 1 2 2 12 2 2 12 2
2

12

2 12

2 2

2 2

(8.108)

12

2 1

12

2 12

12

2 12

x 12 y 12

(8.109a)

x 2 12

y 2 12

2 2

(8.109b)

12

z 12

Si se sustituyen las fuerzas antes mencionadas y los momentos obtenidos para el eslabn 2 junto con las velocidades y aceleraciones del eslabn 1 en las ecuaciones (8.91a-b) y (8.92c-d) para i = 1, se obtiene lo siguiente:

- sq 1 cq 1 a1 2 q 1 cq 1 - q 1 sq 1 [f1]1 = m1 2 0 0
x 1 12 y 1 12 1

[f01]1

[n01]1

LM 0 OP MM 0 PP Nq Q LM cq f - sq f - m a (sq q + cq q ) OP 2 M P a = Msq f + cq f + m (cq q - sq q ) + m g P 2 MN PQ 0 0 LM OP = M 0 MM m a q + n + a f + m g a cq PPP 2 N 3 Q

F GG GH

LM MM N

OP PP Q

LM MM N

OPI PPJJJ ; [n ] QK
1

2 a1 = m 1 1 12

(8.110)

1 1

2 1 1

x 1 12

y 1 12

2 1

(8.111a)

2 1 1

(8.111b)

z 12

y 1 12

c) Clculo del par de torsin de las articulaciones

Finalmente, aplicando la ecuacin (8.93) para computar el par de torsin requerido, se obtienen dos ecuaciones dinmicas como
2 m1a1 m a2 a 2 q 1 + 1 m2a1a2 sq2 q 1 + 2 2 q 12 + m2 g 2 cq 12 + a1 cq 1 2 3 3 2 a a aa 2 + m1 g 1 cq1 + m2 1 2 cq 2 q 1 + m2 a1 a1q 1 + 2 (cq 2 q 12 - sq 2 q 12 ) 2 2 2

t1 =

LM N

F H

I K OP Q

(8.112a)

t2 =

2 m aa m a m2 a 2 2 ] + 2 2 gc q12 q 12 + 2 1 2 [cq2 q 1 + sq2 q 1 2 2 3

(8.112b)

8.5

Algoritmos dinmicos

195

Como era de esperarse, la ecuacin dinmica para la segunda articulacin es ms sencilla que la obtenida para la primera. En este ejemplo se demuestran claramente los diferentes efectos dinmicos, incluido el efecto de Coriolis y el acoplamiento de velocidad centrfuga, as como los efectos gravitacionales. A partir de las ecuaciones (8.112a-b), puede verse que el modelo dinmico es bastante complejo, incluso para un manipulador simple de DOF = 2. Cuando se utiliza el mtodo recursivo de NewtonEuler, tambin se encuentran todas las fuerzas de reaccin de las articulaciones. Las ecuaciones (8.112a-b) pueden verificarse con las que se obtuvieron usando el mtodo de Lagrange en el ejemplo 8.7.

8.5

Algoritmos dinmicos

En la dinmica de robots se resuelven por lo general dos tipos de problemas. Uno se llama dinmica inversa, donde se dan los parmetros geomtricos inerciales del robot, as como los movimientos de las articulaciones, es decir, sus posiciones, velocidades y aceleraciones, y se calculan los correspondientes pares de torsin y las fuerzas de articulaciones. El segundo se llama dinmica progresiva o directa, donde se obtienen las aceleraciones de las articulaciones, dados los parmetros geomtricos e inerciales. Mientras que la dinmica inversa se usa para el control de robots, la dinmica directa es esencial para la simulacin. Al tomar en cuenta las ecuaciones de movimiento, ecuacin (8.44a), se observa que la dinmica inversa requiere la evaluacin de su lado izquierdo, mientras que la dinmica directa resuelve las aceleraciones de las articulaciones.

8.5.1 Dinmica inversa


Para el control de un manipulador robtico, particularmente de aquellos basados en la dinmica de robots, los pares de torsin y fuerzas de los actuadores se calculan mediante la dinmica inversa. Para tal fin, puede usarse la ecuacin (8.44a), donde las matrices y vectores asociados se evalan en la subseccin 8.2.4, o el algoritmo recursivo de Newton-Euler (RNE) que se presenta en la seccin 8.4. Para sistemas robticos complejos, por ejemplo, manipuladores industriales de DOF = 6, se prefiere por lo general el RNE, como se ilustra en el ejemplo 8.9.

Ejemplo 8.10 Ejemplo 8.10

Dinmica inversa para el brazo de un eslabn usando MATLAB

Para el manipulador de un eslabn que se presenta en la figura 8.7, considere a = 1, m = 1 y que se vare el ngulo de articulacin q como q = q (0) +
q (T ) - q ( 0) T 2p tt sen T T 2p

donde i(0) = 0; i(T) = y T = 10 seg. Usando la ecuacin (8.113a), las expresiones del ndice de articulacin y de las aceleraciones se determinan por

LM N

FH IK OP Q

(8.113a)

196

CAPTULO

Dinmica

q =

LM F I OP , N H KQ q (T ) - q ( 0) L 2p q = MN T sen FH2Tp tIK OPQ T


q (T ) - q ( 0 ) 2p t 1 - cos T T

(8.113b)

Observe que la trayectoria de la ecuacin (8.113a) se eligi de tal manera que las velocidades y aceleraciones de articulacin al principio y al final son ceros, es decir, (0) = q (T ) = 0. Mediante el programa de MATLAB que se preq (0) = q (T ) = 0 y q senta a continuacin, las grficas de articulacin y el correspondiente par de torsin se evalan segn la ecuacin (8.53) y se dan en las figuras 8.11 y 8.12. En la figura 8.11, th, thd y thdd representan las variables q, q y q , respectivamente.
% Inverse Dynamics for One-Link Arm % Input for trajectory and link parameters T = 10; thT = pi; th0 = 0; m = 1; a = 1; g = 9.81; con = 2*pi/T; delth = thT - th0; iner = m*a*a/3; grav = m*g*a/2; for i = 1:51, ti (i) = (i-1)*T/50; ang = con*ti(i); % Joint trajectory th (i) = th0 + (delth/T)*(ti (i) - sin(ang)/con); thd (i) = delth*(1 - cos(ang))/T; thdd (i) = delth*con*sin(ang)/T; % Joint torque tau (i)= iner*thdd (i) + grav*sin(th(i)); end plot (ti,th,-,ti,thd,:,ti,thdd,-.) figure plot (ti, tau)
3.5 3 th (rad) thd (rad/seg) thdd (rad/sec2)

Movimiento de la articulacin (Nm)

2.5 2 1.5 1 0.5 0 0.5

4 5 6 Tiempo (seg)

10

Figura 8.11

Trayectoria de la articulacin

8.5

Algoritmos dinmicos

197

Par de torsin de la articulacin

4 5 6 Tiempo (seg)

10

Figura 8.12

Par de torsin del brazo de un eslabn

Ejemplo 8.11

Dinmica inversa para un manipulador de dos eslabones usando MATLAB

Para el manipulador de dos eslabones que se presenta en la figura 8.5, considere a1 = a2 = 1 y suponga que las variaciones del ngulo de la articulacin para ambas q1 y q2 son las mismas que en la ecuacin (8.113), excepto porque sus posiciones finales son distintas, es decir, q1(T) = p y q2 = p/2. Usando el programa de MATLAB que se presenta a continuacin, el ngulo de la articulacin y las grficas de torsin se muestran en las figuras 8.13 y 8.14, respectivamente.
% Inverse Dynamics for Two-Link Manipulator % Input for trajectory and link parameters T = 10; th1T = pi; th10 = 0; th2T = pi/2; th20 = 0; m1 = 1; a1 = 1; m2 = 1; a1 = 1; a2 = 1; g = 9.81; con = 2*pi/T; delth1 = th1T - th10; delth2 = th2T - th20; iner21 = m2*a1*a2; for i = 1:51, ti (i) = (i-1)*T/50;

ang = con*ti(i);

% Joint trajectory th1 (i) = th10 + (delth1/T)*(ti (i) - sin(ang)/con); th1d (i) = delth1*(1 - cos(ang))/T; th1dd (i) = delth1*con*sin(ang)/T; th2 (i) = th20 + (delth2/T)*(ti (i) - sin(ang)/con); th2d (i) = delth2*(1 - cos(ang))/T; th2dd (i) = delth2*con*sin(ang)/T; thdd = [th1dd(i);th2dd(i)]; %Inertia matrix sth2 = sin(th2(i)); cth2 = cos(th2(i)); i22 = m2*a2*a2/3;i21 = i22 + iner21*cth2/2;i12 = i21; i11 = i22 + m1*a1*a1/3 + m2*a1*a1 + iner21*cth2;

198

CAPTULO

Dinmica

im = [i11, i12; i21, i22] %h-vector h1 = - (m2*a1*a2*th1d(i) + iner21/2*th2d(i))*th2d(i)*sth2; h2 = iner21/2*sth2*th1d(i)*th1d(i); hv=[h1;h2] %gamma-vector cth1 = cos(th1(i)); cth12 = cos(th1(i) + th2(i)); gam1 = m1*g*a1/2*cth1 + m2*g*(a1*cth1 + a2/2*cth12); gam2 = m1*g*a2/2*cth12; gv = [gam1;gam2] % Joint torque tau=im*thdd + hv + gv; tor1(i) = tau(1); tor2(i)=tau(2); end plot(ti,th1,-,ti,th2,:) figure plot (ti, tor1,-,ti,tor2,:)

8.5.2

Dinmica directa y simulacin

La simulacin de un robot es til para entender su comportamiento, aun cuando no exista en realidad. Esto involucra lo que se conoce como dinmica progresiva o directa, en contraste con la dinmica inversa que se explica en la subseccin 8.5.1, seguido por la solucin de las ecuaciones de movimiento. La dinmica directa se define como la que, dados los parmetros cinemticos e inerciales y los pares de torsin y fuerzas de las articulaciones en funcin del tiempo, se puede entonces encontrar la trayectoria del manipulador robtico. En otras pala-

3.5 3 th1 th2

ngulo de la articulacin (rad)

2.5 2 1.5 1 0.5 0

4 5 6 Tiempo (seg)

10

Figura 8.13

ngulos de articulacin del manipulador de dos eslabones

8.5
25

Algoritmos dinmicos

199

Par de torsin de la articulacin (Nm)

20 15 10 5 0 5 10 15 20 0 1 2 3 4 5 6 Tiempo (seg) 7 8

tau1 tau2

10

Figura 8.14 Pares de torsin de articulacin del manipulador de dos eslabones

bras, se sabe que el vector s, como en la ecuacin (8.44a), encontrar al vector p. El problema segn las de la dinmica directa requiere la solucin de las aceleraciones de articulacin p ecuaciones de movimiento, la cual es algebraica de naturaleza, es decir,
q = I 1 (t h g )

(8.114)

Puesto que la matriz de inercia I es un positivo-definitivo simtrico, siempre es invertible. Adems, la ecuacin (8.114) representa un conjunto de ecuaciones diferenciales que son altamente no lineales y no pueden ser resueltas (integradas) analticamente, excepto en los casos ms simples. Por ende, obtener p para s dado y las condiciones iniciales requiere la integracin numrica. El software MATLAB tiene una rutina integrada como ODE45 para ejecutar la integracin numrica de las ecuaciones diferenciales que estn arregladas en forma de espacio- estado. Por ejemplo, el espacio-estado de la ecuacin (8.44a) se obtiene mediante la definicin del siguiente vector 2n-dimensional del estado y(t) como y (t) [ y T1 (t), y T2 (t)]T donde y1 (t) = q ; y2 (t) = q (8.115a)

La forma espacio-estado para las ecuaciones de movimiento en la ecuacin (8.44a) se expresa entonces como
y (t)

LM y (t) OP = LM N y ( t )Q N I
1 2

-1

y 2 (t ) (t - h - g )

OP Q

(8.115b)

200

CAPTULO

Dinmica

Ejemplo 8.12

Simulacin de un brazo de un eslabn

segn la Para el brazo de un eslabn se expresa la aceleracin de la articulacin q ecuacin (8.53) o la (8.54b) como
3 t - 1 mgasq 2 ma 2 Por lo tanto, la forma espacio-estado se determina por y1 = y2
q =

FH

IK

(8.116)

3 t - 1 mgasq (8.117) 2 ma 2 donde el vector espacio-estado bidimensional se determina por y [y1 y2]T = [q q ]T. Entonces mediante ODE45 de MATLAB se realiza la integracin numrica para la entrada del par de torsin no articulado es decir, t = 0, y los valores iniciales del vector de estado, es decir, y(0) [t/2 0]T, junto con el valor de g = 9.81. El programa MATLAB para generar los resultados de simulacin se muestra a continuacin, mientras que los resultados se presentan en la figura 8.15. A partir de la figura 8.15, queda claro que el brazo se comporta como un pndulo slido, lo que realmente es el caso cuando no se aplica ningn par de torsin en la articulacin y el eslabn se mueve nicamente por gravedad. y2 =
% Program for state-space form % (Save in a file named ch8fdyn1 m) %For one-link arm function ydot =ch8fdyn1(t,y); m = 1; a = 1; g = 9.81; tau=0; iner = m*a*a/3; grav = m*g*a/2; ydot=[y(2);(tau-grav*sin(y(1)))/iner]; % Commands to integrate numerically % (From MATLAB Window) %For one link arm tspan=[0 10]; y0=[pi/2; 0]; [t,y]=ode45(ch8fdyn1,tspan,y0);
6 th (rad) thd (rad/sec)

FH

IK

ngulo y velocidad de la articulacin

Figura 8.15 Simulacin de un brazo de un eslabn, nicamente bajo gravedad

4 5 6 Tiempo (seg)

10

8.5

Algoritmos dinmicos

201

Ejemplo 8.13

Simulacin de un manipulador de dos eslabones

Para un manipulador de dos eslabones, el vector de aceleracin bidimensional de puede resolverse algebraicamente en la forma de la ecuacin (8.114), articulacin p donde la matriz de inercia y el vector asociados se dan en las ecuaciones (8.56)-(8.58). La forma espacio-estado se obtiene entonces como
y1 = y2 y 2 = I 1 (t h g )

(8.118)

donde el vector espacio-estado de cuatro dimensiones se determina por y [y1 y2]T, q ]T. Parecido en la que los vectores bidimensionales y1 y y2 son y1 [q1 q2]T y y2 [q 1 2 al brazo de un eslabn, las entradas para el manipulador de dos eslabones tambin se toman como ceros, es decir, 1 = 2 = 0, y los valores iniciales del vector de estado es y(0) = [0 0 0 0]T, junto con el valor de g como g = 9.81. La integracin numrica se realiza mediante ODE45 de MATLAB, lo que se muestra a continuacin. Los resultados de simulacin se presentan en la figura 8.20.
% Program for state-space form % (Save in a file named ch8fdyn2 m) %Simulation of two-link manipulator function ydot =ch8fdyn2(t,y); m1 = 1; m2 = 1; a1 = 2; a2 = 1; g = 9.81; iner21 = m2*a1*a2; tau1 = 0; tau2 = 0; th1=y(1); th2 =y(2); th1d=y(3); th2d=y(4); %Inertia matrix sth2 = sin(th2); cth2 = cos(th2); i22 = m2*a2*a2/3; i21 = i22 + iner21*cth2/2; i12 = i21; i11 = i22 + m1*a1*a1/3 + m2*a1*a1 + iner21*cth2; im = [i11, i12; i21, i22]; %h-vector h1 = - (m2*a1*a2*th1d + iner21/2*th2d)*th2d*sth2; h2 = iner21/2*sth2*th1d*th1d; hv=[h1;h2]; %gamma-vector cth1 = cos(th1); cth12 = cos(th1 + th2); gam1 = m1*g*a1/2*cth1 + m2*g*(a1*cth1 + a2/2*cth12); gam2 = m1*g*a2/2*cth12; gv = [gam1;gam2]; % RHS tau=[tau1;tau2]; phi=tau-hv-gv; thdd=im\phi; ydot=[y(3);y(4);thdd(1);thdd(2)]; % Commands to integrate numerically % (From MATLAB Window) %For two-link manipulator tspan=[0 10]; y0=[0;0;0;0]; [t,y]=ode45(ch8fdyn2,tspan,y0);

202

CAPTULO

Dinmica

ngulo (rad) y velocidad (rad/seg) de articulacin

10 8 6 4 2 0 2 4 6 8 0 1 2 3 4 5 6 Tiempo (seg) a) Articulacin 1 7 8 9 10 th 1 th 1d

ngulo (rad) y velocidad (rad/seg) de articulacin

20 15 10 5 0 5 10 15 20 25 0 1 2 3 4 5 6 Tiempo (seg) b) Articulacin 2 7 8 9 10 th 2 th 2d

Figura 8.16

Resultados de simulacin para el manipulador de dos eslabones, nicamente bajo gravedad

Ejercicios basados en la web

203

RESUMEN
En este captulo se presenta la dinmica de cuerpo rgido de un sistema robtico, usando tanto la formulacin de Euler-Lagrange como la de Newton-Euler. Se da un ejemplo del brazo de un eslabn y un grado de libertad (DOF), y otro del manipulador de dos eslabones y DOF = 2, para ilustrar ambas formulaciones. Tambin se presentan los resultados de dinmica inversa y directa que se usan en el control y la simulacin de un robot.

EJERCICIOS
8.1 8.2 8.3 8.4 8.5 8.6 8.7 De qu manera los teoremas de ejes paralelos y perpendiculares son tiles para la determinacin del momento de inercia de masa de formas complejas? Derive las ecuaciones de Euler-Lagrange (EL) de movimiento para el manipulador de articulaciones revoluto-prismticas (RP) que se muestra en la figura 5.25. Repita el ejercicio 8.2, usando el algoritmo recursivo de Newton-Euler (NE). Repita los ejercicios 8.2 y 8.3 para el manipulador prismtico-revoluto (PR) que se presenta en la figura 5.26. Cules son las aparentes ventajas y desventajas de las formulaciones de EulerLagrange y Newton-Euler? Utilizando el algoritmo recursivo NE, busque los pares de torsin de las articulaciones del manipulador planar de tres eslabones que se muestra en la figura 5.24. Para el brazo de un eslabn que se presenta en la figura 8.7, suponga que el eslabn no tiene masa y que el efector final tiene una masa m. Derive su ecuacin de movimiento. Cmo se compara con la que se da en la ecuacin (8.53)? Defina la dinmica inversa y directa de un manipulador robtico. Qu es una forma espacio-estado? Cul es su origen?

8.8 8.9

EJERCICIOS BASADOS EN LA WEB


Basndose en bsquedas en la web, busque las respuestas a las siguientes preguntas: 8.10 Mencione tres ejemplos de software comerciales que sean capaces de ejecutar la dinmica de un manipulador robtico. 8.11 Qu otras formulaciones dinmicas posibles hay para la dinmica de robots? 8.12 Hay software disponibles para una arquitectura especfica de un robot?

204

CAPTULO

Dinmica

EJERCICIOS BASADOS EN MATLAB


8.13 Escriba un programa para generar el par de torsin y la fuerza del manipulador RP, basndose en la ecuacin de movimiento derivada en el ejercicio 8.2, mientras que se definen las trayectorias mediante la ecuacin (8.113a). Tome q(0) = 0, q(T) = p/2, b(0) = 0; b(0) = 0, b(T) = 0.1 m q y b son las variables de articulacin para la articulacin revoluta y prismtica, respectivamente. Considere T = 10 seg. 8.14 Repita el ejercicio 8.13 para el robot PR que se menciona en el ejercicio 8.4. 8.15 Busque los pares de torsin de las articulaciones para el manipulador del ejercicio 8.6. 8.16 Busque los resultados de simulacin para el manipulador de tres eslabones mientras que no se le aplique ningn par de torsin y nada ms la gravedad est actuando en l; las condiciones iniciales para las coordenadas generalizadas son: q1(0) = q2(0) = q3(0) = 0 rad; q 1(0) = q 2 (0) = q 3 (0) = 0 rad/seg Tome los parmetros geomtricos e inerciales como: a1 = a2 = 1 m; a3 = 0.5 m; m1 = m2 = 1 kg; m3 = 0.5 kg

Esttica

205

Captulo

9
Dinmica recursiva de robots*

Este captulo introduce una de las metodologas basadas en los complementos ortogonales para la genePor qu recursivo? racin automtica de algoritmos dinmicos, a saber, Se sabe que los algoritmos recursivos las dinmicas inversa y directa. Como se mencion en proporcionan algoritmos de compuel captulo 8, la dinmica inversa es esencial para el tacin ecientes y numricamente control de manipuladores robticos, mientras que la estables. dinmica directa es necesaria para la simulacin por computadora y el control de retroalimentacin en tiempo real. Adems, para resolver los problemas de dinmica inversa o directa de un sistema robtico complejo, se necesita un conjunto de ecuaciones dinmicas de movimiento del robot en estudio, las cuales se definen en el captulo 8 usando las formulaciones de Euler-Lagrange (EL) y Newton-Euler (NE). Las ecuaciones de movimiento resultantes pueden ser ecuaciones diferenciales ordinarias (ODE) o ecuaciones algebraicas diferenciales (DAE) (Shabana, 1994). El mismo conjunto puede obtenerse mediante planteamientos alternativos, por ejemplo, complementos ortogonales de las restricciones de velocidad (Huston y Passerello, 1974), las ecuaciones de Kane (Kane y Levinson, 1983) y otros. De entre ellos, muchos investigadores adoptaron el planteamiento de complementos ortogonales para la generacin automtica de las ecuaciones de movimiento para sistemas mecnicos complejos, tales como los robots que se estudian en este libro. Uno de estos complementos es el complemento ortogonal natural (NOC) que originalmente propusieron ngeles y Lee (1988) para robots seriales, pero que generalizaron
* Este captulo requiere la comprensin exhaustiva de los captulos 7 y 8. Por lo tanto, slo debe impartirse a estudiantes de posgrado, es decir, alumnos del nivel M. Tech./M.S./Ph.D.

206

CAPTULO

9 Dinmica recursiva de robots

Saha y ngeles (1991) para tomar en cuenta tambin las restricciones no holonmicas de robots mviles sobre ruedas. Posteriormente, Saha (1997, 1999, 2003) desacopl el NOC, lo que se denomin NOC Desacoplado (DeNOC) y mostr tener las siguientes ventajas: Permite obtener algoritmos de dinmica inversa y directa del orden recursivo (n), siendo n el nmero de eslabones del robot. El algoritmo de la dinmica directa recursiva no fue posible obtenerlo con la forma original del NOC. Cada elemento escalar de las matrices y vectores que se asocian con las ecuaciones de movimiento del manipulador robtico puede escribirse en forma analtica, lo que permite proporcionar la interpretacin fsica, por ejemplo, la inercia del cuerpo articulado, etc., y le ayuda al programador en la depuracin de los algoritmos de computacin. Puesto que la metodologa se construye sobre la mecnica bsica y las teoras del lgebra lineal, este concepto pueden entenderlo incluso estudiantes de licenciatura.

El modelado que se basa en DeNOC se aplic exitosamente a: 1) manipuladores seriales con base fija, como se usa en robots industriales (Saha, 1997; 1999; 2003); 2) robots seriales con base libre, una configuracin para robots de espacio de flotacin libre (Saha, 1996); 3) robots de tipo Plataforma Stewart paralelos de lazo cerrado (Saha y Schiehlen, 2001; Khan et al., 2005) y mquinas herramientas hexpodas (Koteswara Rao et al., 2006); 4) sistemas mecnicos generales de lazos cerrados mltiples (Chaudhary y Saha, 2006) y 5) sistemas seriales de eslabones flexibles (Mohan y Saha, 2007a). Como se enfatiza en los ensayos que se mencionan arriba y se demuestra en Mohan y Saha, (2007b), la formulacin que se basa en DeNOC proporciona algoritmos eficientes y numricamente estables.

9.1

Modelado dinmico

En esta seccin se derivan ecuaciones dinmicas de movimiento de un robot serial de n eslabones y n grados de libertad, como se muestra en la figura 9.1a), usando las matrices del Complemento Ortogonal Natural Desacoplado (DeNOC). Primero que nada, se escriben en forma compacta las ecuaciones de movimiento desacopladas de Newton-Euler (NE) para los n eslabones, que se introdujeron en la seccin 8.3. Luego se Modelado expresan en forma matemtica las restricciones entre los eslabones de las articulaciones, por ejemplo, reEn el contexto de este libro, modelado signica una manera de entender voluta o rotacional, prismtica, etc., lo que trae a coel comportamiento de un robot, inlacin a la matriz DeNOC. El DeNOC relaciona las cluso sin tenerlo a la mano. velocidades cartesianas de todos los eslabones con la rapidez o velocidad de las articulaciones. Finalmente, la premultiplicacin de la matriz DeNOC por las ecuaciones NE desacopladas proporciona un conjunto de ecuaciones independientes de movimiento, que no son otra cosa que las ecuaciones de movimiento de Euler-Lagrange (EL) que se presentaron en la seccin 8.2. Por ende, las ecuaciones EL se derivan por medio de matrices DeNOC sin tener que recurrir a las derivadas parciales complejas que proporcion la ecuacin (8.24).

9.1

Modelado dinmico

207

Oi i Z O3 #2 O2 #1 O1 1 Sistema de referencia F X a) Cadena serial vi (velocidad) Ci ci O 2 Y 3 #i

Oi+1 i+1 n On #n

Efector terminal Cuerpo compuesto i

i (velocidad angular) mi: masa Ii: tensor de inercia

ni fi

b) El i-simo cuerpo libre

Figura 9.1

Un manipulador serial

9.1.1

Ecuaciones Newton-Euler sin acomplamiento

Para el manipulador serial de lazo abierto de n eslabones y n grados de libertad (DOF) de la figura 9.1 a), si mi es la masa del i-simo eslabn e Ii denota el tensor de inercia de 3 3 del i-simo eslabn alrededor de su centro de masa Ci como se indica en la figura 9.1b), entonces las ecuaciones de movimiento de Newton-Euler para el i-simo eslabn pueden ser derivadas a partir de su diagrama de cuerpo libre, y pueden escribirse en orden inverso como Ecuacin de Euler : Ii w i + w i Iiw i = ni (9.1a)

(9.1b) Ecuacin de Newton : mi c i = fi . donde vi y v i son los vectores tridimensionales de velocidad y aceleracin angulares del i es el vector tridimensional del centro de i-simo eslabn, respectivamente, mientras que c masa alrededor de Ci. Adems, ni y fi son los vectores tridimensionales del momento resultante alrededor de Ci y la fuerza resultante en Ci, respectivamente. Cabe sealar en este punto que no se hace referencia alguna al sistema de coordenadas para expresar los vectores y matrices, ya que pueden representarse en cualquier sistema definido por el analista. Normalmente se expresan en el sistema adjunto al i-simo eslabn, es decir, el sistema (i + 1). Sin embargo, se evitarn durante las derivaciones de las ecuaciones de movimiento de las secciones y subsecciones siguientes. Cuando se combinan las ecuaciones (9.1 a-b), las seis ecuaciones de movimiento de NE escalares y sin acoplamiento se escriben en forma compacta como Mi t i + Wi Mi Ei ti = wi (9.2a)

208

CAPTULO

9 Dinmica recursiva de robots

donde la matriz de masa Mi de 6 6 y la matriz de velocidad angular Wi de 6 6 para el i-simo eslabn se determinan por Mi

en la que i 1 es el tensor de producto vectorial de 3 3 que se asocia con el vector de velocidad angular i, que se define como (i 1)x i x para cualquier vector cartesiano x. Adems, 1 y 0 son las matrices de identidad y cero de 3 3, respectivamente. Es ms, los vectores de 6 dimensiones, torsin ti y llave de torsin wi son como sigue: ti

LMI NO
i

O wi 1 O ; y Wi mi 1 O O

OP Q

LM N

OP Q

(9.2b)

donde, en contraste con la definicin de torsin que se seal en la seccin 6.6, se toma en consideracin la velocidad lineal del centro de masa del i-simo eslabn Ci. En la ecuacin (9.2a), el vector ti es la derivada respecto al tiempo del vector de torsin ti, tal como se define en la ecuacin (9.2c). La ecuacin (9.2a) se escribe ahora para todos los n eslabones, es decir, i = 1, n, como (9.3a) M t + WMt = w donde M y W son la matriz de masa generalizada 6n 6n y la matriz generalizada de las velocidades angulares, respectivamente, las cuales se determinan por M diag. [M1, , Mn], y W diag. [W1, , Wn ] (9.3b) Asimismo, los vectores de 6n dimensiones de torsin y de llave de torsin generalizados se determinan por (9.3c) t [t1T, , t nT]T; y w [w1T, , wnT] T Las ecuaciones (9.3a-c) representan las ecuaciones de movimiento NE escalares y sin acoplamiento de 6n para los n eslabones en el manipulador robtico que aqu se estudia.

LMw OP y w LMn OP Nc Q Nf Q
i i
i

(9.2c)

9.1.2

Restricciones cinemticas

Los eslabones del manipulador robtico de la figura 9.1a) se acoplan por pares o articulaciones cinemticos que son rotacionales o prismticos. A partir del movimiento de cuerpo rgido de los dos cuerpos, a saber, #i y #j, como se ve en la figura 9.2, pueden derivarse las velocidades angulares y lineales del i-simo eslabn, es decir, la torsin del i-simo cuerpo que se define en la ecuacin (9.2c) segn las velocidades del j-simo eslabn, y el movimiento de articulacin de la i-sima articulacin. stos se derivan de la siguiente manera: w i = w j + eiq i
c i = c j + w j rj + w i di

(9.4a) (9.4b)

Las seis ecuaciones de restriccin de velocidad escalar tambin pueden escribirse en forma compacta como (9.4c) ti = Bij tj + piq i donde qi es el desplazamiento de articulacin, angular para una articulacin rotacional y lineal para una articulacin prismtica. Adems, la matriz Bij de 6 6 y el vector pi de 6

9.1
ei #i #j Cj cjk rj cij cik cj Ck #k O ci di Ci

Modelado dinmico

209

pi ej

Sistema de referencia inercial

Figura 9.2

Tres cuerpos acoplados

dimensiones son funciones de las posiciones de los centros de masas de los dos cuerpos sucesivos Ci y Cj de la figura 9.2 y el eje de la articulacin que los une, a saber, ei. Lo anterior se define como 1 O ei (9.4d) Bij y pi c ij 1 1 ei di donde cij 1 es el tensor de producto vectorial que se asocia con el vector cij como se muestra en la figura 9.2, que es definido de manera similar a vi 1 de la ecuacin (9.2b), es decir, (cij 1)x = cij x para cualquier vector cartesiano tridimensional arbitrario x. El vector cij se determina por cij = di rj. Es interesante observar en este punto que la matriz Bij y el vector pi tienen las siguientes interpretaciones: Para dos cuerpos mviles rgidamente conectados #i y #j, Bij propaga la torsin de #j a #i. Por ende, la matriz Bij se denomina aqu matriz de propagacin de torsin, la cual tiene las siguientes propiedades: BijBjk = Bik ; Bii = 1; y Bij1 = Bji (9.5a) El vector pi, por otro lado, toma en cuenta el movimiento de la i-sima articulacin. Por lo tanto, pi se denomina vector de propagacin de velocidad de articulacin, el cual depende del tipo de articulacin. Por ejemplo, la expresin de pi en la ecuacin (9.4d) es para una articulacin rotacional como la que se presenta en la figura 9.2, mientras que para una articulacin prismtica, el vector pi se determina por pi

LM N

OP Q

LM N

OP Q

donde ei es el vector unitario paralelo al eje del movimiento lineal. En forma correspondien te, qi de la ecuacin (9.4c) significar la rapidez de articulacin lineal. No se tratarn otras articulaciones aqu porque cualquier otro tipo, por ejemplo, una esfrica o una roscada, puede emplearse como combinacin de tres pares rotacionales o de pares de rotacionales y prismticos, respectivamente. Para i = 1, , n, la ecuacin (9.4c) se escribe en forma compacta para todas las n articulaciones como t = N q , donde N Nl Nd (9.6a)

LM 0 OP : Para juntas prismticas Ne Q


i

(9.5b)

210

CAPTULO

9 Dinmica recursiva de robots

donde t, que contiene las torsiones de todos los eslabones, es la torsin generalizada de 6n dimensiones que se define en la ecuacin (9.3c). En la ecuacin (9.6a) se expresa como una transformacin lineal del vector n-dimensional de velocidad de articulacin . La matriz Ni de 6n 6n, la matriz Nd de 6n n y el vector n-dimensional , se definen como sigue:

LM 1 B N M MM NB
l

21

O 1 Bn2

O O

n1

OP LMp PP ; N MM 0 P MN 0 1Q
d

0 p2 0

LMq PO OP PP ; y q MMq PP MMq PP P p Q N Q


0 0
1 2 n n

(9.6b)

La matriz N de 6n n de la ecuacin (9.6a) no es ms que la matriz de Complemento Ortogonal Natural (NOC) de las restricciones de velocidad (ngeles y Lee, 1988), y sus formas desacopladas Nl y Nd se denominan matrices de NOC desacopladas (DeNOC) (Saha, 1997; 1999). Las expresiones de las matrices DeNOC permiten desarrollar los algoritmos dinmicos recursivos, inversos y directos que se necesitan en el control y la simulacin de manipuladores robticos.

9.1.3

Ecuaciones acopladas de movimiento

Las ecuaciones NE desacopladas de movimiento obtenidas por la ecuacin (9.3a) se reescriben como (9.7) M t + WMt = w E + wC donde w de la ecuacin (9.3a) se sustituye por w wE + wC, donde wE y wC son las llaves de torsin externas y de restriccin, respectivamente. La llave de torsin externa wE la aportan los momentos y fuerzas que resultan de los actuadores de articulaciones, efectos ambientales, etc., mientras que la llave de torsin de restriccin wC se debe a la presencia de las articulaciones que contienen los momentos y fuerzas de reaccin en las interfaces de articulaciones. Puesto que la llave de torsin de restriccin wC no hace ningn trabajo til para el movimiento de los eslabones del robot, la energa consumida que se debe a wC, es decir, PC tTwC, desaparece. El nico propsito de wC es mantener la configuracin relativa de los eslabones sin separarse. Si se usa la expresin para la torsin generalizada t de la ecuacin (9.6a), la energa disipada debido a wC, PC se determina por
T C P C tT wC q T NT wC q T NT dNlw =0

(9.8a)

Para el robot serial de n eslabones y n grados de libertad, el vector de velocidad de articu lacin n-dimensional es independiente. Por lo tanto, para cumplir con la ecuacin (9.8a), debe ser vlida la siguiente condicin:
T C NT wC NT dNlw =0
T

(9.8b)

Ahora, cuando se multiplica la transpuesta del NOC N a las ecuaciones de movimiento NE desacopladas, es decir, la ecuacin (9.7), se obtiene el siguiente conjunto de ecuaciones dinmicas independientes: I q + h = t , donde h C q (9.9a) donde se usa el resultado de la ecuacin (9.8b) y la derivada de tiempo de la torsin genera +N lizada t segn la ecuacin (9.6a), denominada, t = Np p. Observe que la ecuacin (9.9a),

9.2

Expresiones analticas

211

en comparacin con las ecuaciones de movimiento deducidas en el captulo 8, es decir, la ecuacin (8.44a), no contiene el trmino g debido a la gravedad. De hecho, t de la ecuacin (9.9a) contiene el efecto de g. De alguna manera, t de la ecuacin (9.9a) = t de la ecuacin (8.44a). Ms an, ~ I NTMN NT d M Nd la matriz de inercia generalizada (GIM) de n n es simtrica y positiva-definitiva;
~ ~ ~ C NT (M N + WMN) NT d ( M l + M w + M e )Nd

la matriz n n de trminos de inercia convectiva; ~ : el vector n-dimensional de trminos de inercia convectiva; h C q = NT w


d

~E t N w NT d w : el vector n-dimensional de fuerzas generalizadas debido a los pares de torsin/fuerzas, y los que resulten de la gravedad, el ambiente y la disipacin. ~ ~ ~ ~ ~ y Asimismo, las matrices de 6n 6n M, Mi, Mw, Me, y los vectores 6n-dimensionales w ~ E w se determinan por ~ ~ ~ ~ T W MN 1 M NlT MNl ; M l NlT M N l , M w M W , M e N1 ~ T E ~ w N (Mt + WMt) ; t ( N + N W) N q ; y w N T wE (9.9b)
T E l

donde se usa Nd = Nd diag. [1,..., n]; i diag. [wi 1, wi 1], y las matrices N1, M, W y el vector wE estn previamente definidos. Observe en lo anterior que t no es ms = 0. Cabe sealar en este punto que la que el vector de rapidez de torsin, mientras que p ecuacin (9.9a) tambin se deduce en el captulo 8, es decir, en la ecuacin (8.44a), usando las ecuaciones de movimiento de Euler-Lagrange. En ese ltimo caso, se requieren complejas diferenciaciones parciales, mientras que el primero proviene de las ecuaciones de movimiento de Newton-Euler que pueden visualizarse ms fcilmente en el espacio cartesiano tridimensional y mediante conceptos sencillos de lgebra lineal.

9.2

Expresiones analticas

Puede demostrarse que por medio del concepto de las matrices DeNOC, cada elemento de las GIM y MCI, as como del VIC y de las fuerzas generalizadas, puede expresarse en forma analtica, lo que permite extraer muchas interpretaciones fsicas y sugiere maneras de simplificar las expresiones y la complejidad computacional. A continuacin se obtienen las expresiones analticas.

9.2.1

Matriz de inercia generalizada (GIM)

Las expresiones para la GIM I de n n se obtienen segn la ecuacin (9.9a) como T ~ I NTMN Nd M Nd (9.10a) ~ donde M NlT MNl es la matriz de masa compuesta simtrica de 6n 6n, que se obtiene como

212

CAPTULO

9 Dinmica recursiva de robots

~ ~ M n B n3 M n ~ ~ donde sym denota los elementos simtricos de la matriz M. La matriz Mi de 6 6, que se evala de i = n a i = 1 como
n n1

~ LM M ~ B MM ~ ~ M MM B MM ~ MNM B
2 3

1 21 31

sym ~ M2 ~ M 3B 32 ~ M n B n2 ~ M3

OP PP PP PQ

(9.10b)

~ M i Mi +

k = i +1

BTki M k Bki

(9.10c)

que requiere clculos del orden n2, ya que hay una suma a travs de k = i + 1, ..., n. Sin embargo, una mirada profunda a la ecuacin, junto con las primeras dos propiedades de la misma (9.5a), revela que la expresin de suma puede evaluarse en forma recursiva para i = n, ..., 1 como ~ ~ ~ (9.10d) M i Mi + BTi+1, i Mi +1 Bi +1 ,i donde M n M n La ecuacin (9.10d) tiene las siguientes interpretaciones fsicas: 1) Es la matriz de masa de un cuerpo compuesto por los eslabones #n, ..., #i, que se conectan en forma rgida. Esto se denomina el cuerpo compuesto i, como se indica en ~ la figura 9.1a), cuyo nombre puede justificarse a partir de las matrices de bloque Mi. En la ecuacin (9.10d), si i = n, entonces

In ~ M n = Mn O
y para i = n 1,

LM N

O mn 1

OP Q OP PQ

(9.11a)

~ ~ M n -1 = M n 1 + BTn,n1 M n Bn,n1
lo que puede reescribirse como

(9.11b)

~ ~ In -1 - d n -1 1 ~ M n -1 ~ (9.11c) ~ 1 d n -1 1 m n -1 ~ ~ ~ , el vector tridimensional c donde el escalar m n1 n1 y la matriz I n1 se determinan por


~ ~ ~ (9.12a) m n - 1 m n 1 + mn , donde mn = mn ~ ~ ~ (9.12b) d n - 1 mn cn, n 1 + d n , donde d n = 0 ~ ~ ~ ~ (9.12c) In -1 I n 1 + In d n - 1 (cn,n 1 1), donde In = I n ~ La matriz I n1 es el tensor de inercia del cuerpo compuesto por los eslabones rgidamente conectados #(n 1) y #n respecto al centro de masa del (i 1)-simo eslabn, es decir, Ci-1, en el cual el tercer trmino no es ms que el que se asocia con la transfe-

LM MN

9.2

Expresiones analticas

213

rencia de la definicin de In de Cn a Cn1, es decir, parecido al teorema de ejes paralelos que se proporciona en la subseccin 8.1.3. Si se contina con i = n 2, ..., 1, el escalar ~ ~ ~ , el vector tridimensional c m i i y la matriz I i de 3 3 se calculan como sigue:
~ ~ =m + m (9.13a) m i +1 i i ~ ~ (9.13b) d i mi +1 ci +1,i + d i +1 ~ ~ ~ ~ (9.13c) Ii = Ii + Ii +1 d i +1 (c i+1,i 1) ci +1, i ( d i 1) ~ 2) El efecto de inercia del cuerpo compuesto (i + 1), I i+1 se toma en cuenta respecto a Ci y se suma con el tensor de inercia del eslabn ~ i respecto a Ci,Ii para dar la inercia del cuerpo compuesto i respecto a Ci, es decir, I i. Otros trminos, a saber, los bloques 21 y 22 de la ecuacin (9.11c), se incluyen de forma parecida para ~ definir la matriz de masa del cuerpo compuesto i, o la matriz de masa compuesto Mi. Entonces, usando ~ la expresin I ; NdT M Nd, la GIM simtrica I se escribe como

~ LM p M p ~ B p Mp M ~ I Mp M B p MM ~ MNp M B p
T 1 1 1 T 2 T 3 T n 2 3 n

21 1

31 1

T ~ p2 M 2 p2 T ~ p 3 M 3 B32 p 2 T ~ pn M n Bn2 p2

T ~ p 3 M 3p3

n1 1

~ pT n M n B n3p 3

OP PP PP ~ p M p P Q
sym
T n n n

(9.14a)

donde sym denota los elementos simtricos y los elementos (i, j) de la GIM, que se denotan por iij, lo que se proporciona en forma analtica como ~ iij pTi M i Bij pj , para i = n, , 1; j = i, , 1 (9.14b) Observe que los elementos simtricos que aparecen encima de los elementos diagonales de la GIM en la ecuacin (9.14a) pueden expresarse como ~ iji pTj B Tij M i pi, para i = n ,, 1; j = i 1 ,, 1 (9.14c) En la ecuacin (9.14a), iij = iji. Por ende, slo se necesita calcular (9.14b) o (9.14c) en el algoritmo dinmico. En los ejemplos de este captulo se calcularn los elementos del tringulo inferior de la GIM por medio de (9.14b).

9.2.2

Matriz de trminos de inercia convectiva (MCI)

Las expresiones analticas de la matriz de trminos de inercia convectiva (MCI) se determinan segn la definicin de MCI que se seal en seguida de la ecuacin (9.9), es decir,
~ ~ ~ C NT (M N + WMN) NT (9.15a) d ( M l + M w + M e )Nd ~ ~ ~ donde las matrices Ml, Mw y Me de 6n 6n se reproducen segn la ecuacin (9.9b) como ~ ~ ~ ~ M l NTl M N l ; M w MW NTl MNl W ; y M e NTl WMNl

(9.15b)

214

CAPTULO

9 Dinmica recursiva de robots

~ La matriz Ml se obtiene entonces como

~ Ml

LM 1 O M MM MNO

BT 21 1 O

BT n1

BT n , n -1 1

OP LM PP MM O PP MMN O Q

O M2 O

OP LM O MMB P O P P MNB M QM
O
n

21

O O

n1

B n , n -1

OP P OP PQ OP
(9.15c)

donde la matriz Bi+1,i de 6 6 se determina por

O (9.15d) 1 O ) i i +1 ~ en la que ri = i ri y di+1 = i+1 di+1. La expresin de Mi se reescribe entonces como

B i +1, i

LM O N - (r + d

OP Q

~ Ml

~ ~ ~ ~ T ~ En la ecuacin (9.15e), Hij = Mi Bij + B i+1,i Hi+1,i y para i = n, Hn+1,n = O. Luego, la matriz Mw de 6n 6n, como se define en la ecuacin (9.15b), se forma como
~ LM M ~ M B M MM ~ B MNM
1 2 n

~ LMB H ~ MH ~ M H MM ~ MN H
T 21

21

21 31

T ~ B 31 H 32 T ~ B 32 H 32 ~ H 32

~ BT n1H n , n - 1

n1

~ H n2

~ BT n , n - 1H n , n - 1 ~ H n, n -1

OP PP PP OP Q

(9.15e)

~ Mw

21

~ M2

sym W1 O O W2

n1

~ ~ M n Bn2 M n

OP L PP MM PP MMN O Q

OP PP P W Q
O
n

lo que proporciona

~ Mw

Finalmente, la matriz Me se obtiene como

~ LM M W ~ M B W M MM ~ B W MNM ~
1 1 2 n

21 1

T ~ B 21 M 2 W2 ~ M1W2

~ BT n1M n Wn ~ BT n 2 M n Wn ~ M n Wn

n1 1

~ M n B n 2 W2

OP PP PP Q
O 1

(9.15f)

~ Me

LM 1 O M MM MNO

T B 21 1

BT n1 BT n , n -1 1

OP LW M PP MM O PP MMN O Q
1

O W2 M 2 O

OP LM 1 B P M O PM PM W M Q NB
O
n n

21

n1

Bn2

OP PP P 1Q

9.2

Expresiones analticas

215

lo que puede escribirse en forma compacta como


~ Me

~ ~ donde Mi para i = n, ..., 1 se calcula en forma parecida a la matriz Mi de la ecuacin (9.10d) como ~ ~ (9.15h) M i = M i + BTi +1, i M i + 1 Bi +1,i en la que Mi = WiMi para i = n, ..., 1. Los elementos escalares de la MCI, C es decir, cij para i, j = n, ..., 1 se obtienen entonces explcitamente segn la ecuacin (9.15) como
T T T ci j p T i [B j +1,i H j +1,i + B ji ( M j W j + M j )]p j ~ ~ ~ ci j pTi ( M j Bij Wj + Hij + M i ) pj

~ LM ~ M M B M MM ~ B MNM
1 2 n

21

~ M2

sym

n1

~ ~ Mn B n 2 Mn

OP PP PP Q

(9.15g)

si i j

(9.15i)

de otra manera.

Al comparar las ecuaciones (9.14b) y (9.15i), se observa que los elementos de la GIM y de la MCI se expresan de manera uniforme, es decir, pTi (.)pj, donde (.) denota el argumento de la matriz. En la ecuacin (9.15i), la expresin analtica explcita para cada elemento de la MCI est disponible, cuyo uso no es recomendable para el clculo del vector h(; Cp) en la ecuacin (9.9a), pero es conveniente para las interpretaciones fsicas y la depuracin. El vector h se llama aqu vector de los trminos de inercia convectiva (VCI). Mientras que la evaluacin explcita de la MCI, C requiere clculos del orden (n2) donde n es el grado de libertad del robot, el VCI h puede calcularse en forma recursiva y slo requiere operaciones del orden n. El algoritmo del orden n para el VCI se proporciona a continuacin. Ahora, por lo que respecta a la interpretacin fsica de la MCI, observe que, para un robot planar con articulaciones exclusivamente rotacionales, todos los ejes son paralelos y no cambian de sentido mientras el robot est en movimiento. De all su derivada de tiempo Nd = WNd = O. ~ Como resultado, el trmino Mw desaparece para proporcionar expresiones ms sencillas.

9.2.3

Vector de trminos de inercia convectiva (VCI)

El vector de trminos de inercia convectiva (VCI) h se proporciona, segn la ecuacin (9.9a), como ~ ~ T (9.16) h C q = NT d w, donde w = N l (Mt + WMt) y t = ( N l + NlW )Nd q Observe que t es el vector generalizado de velocidad de torsin, mientras que p = 0, es decir, contiene los trminos centrfugos y de aceleracin de Coriolis. Si se introducen las siguientes notaciones M = WM y w = Mt + M t y se sustituye la expresin para Ni de la ecuacin (9.6b) en la ecuacin (9.16), se obtiene ~ T w w 1 BT 1 B 21 1 n1 ~ 2 w 2 w O 1 ~ (9.17a) = w = BT n, n -1 ~ w w n O O 1 n

LM MM MM N

OP L PP MM PP MM QN

OP PP PQ

LM MM MN

OP PP PQ

216

CAPTULO

9 Dinmica recursiva de robots

donde wi = Miti + Miti, para i = n, , 1. El vector de 6n dimensiones w puede interpretarse como la llave de torsin generalizada debida a los trminos de inercia convectiva. Adems, ~ de la ecuacin (9.17a) pueden obtenerse en forma recursiva los elementos del vector w i como ~ ~ = w + BT ~ w (9.17b) i i +1, i w i + 1 , donde w n = w n i Asimismo, si se usa la expresin para Nd, el VCI de la ecuacin (9.16) h se determina por T ~ p1 w 1 T ~ p w (9.18a) h 2 2

LM MM MMp N

T n

OP PP ~ P w PQ
n

en la que cada elemento hi se escribe como


~ , para i = n, hi = pTi w ,1 i

(9.18b)

Juntas, las expresiones de las ecuaciones (9.17b) y (9.18b) proporcionan un algoritmo de orden n para el VCI.

9.2.4

Fuerza generalizada

Las expresiones para los elementos de las fuerzas generalizadas t que se proporcionan segn la ecuacin (9.9a) son las siguientes: ~ E , donde w ~ E = NT w E (9.19a) t =N w
d l

Cuando se sustituye la expresin para Nl de la ecuacin (9.6b) y se observa que wE ~ E se escribe como [(w1E)T (wnE)T]T, el vector de 6n dimensiones w

~E w

~ E w E + BT w ~E y w ~ E w E. La fuerza generalizada t se encuentra entonces donde w i i i+1 i i+1,i n como T ~E p1 w1 T ~E p w (9.20a) t 2 2

LM 1 O M MM MNO

BT 21 1

BT n,1

BT n, n -1 O 1

OP LMw PP MMw PP MMw QN

E 1 E 2 E n

~ OP LMw ~ PP = MMw PP MMw Q N~

E 1 E 2 E n

OP PP PP Q

(9.19b)

Segn la ecuacin (9.19a), cada elemento del vector t n-dimensional, es decir, ti, se obtiene entonces a partir de
~ E , para i = n, , 1 ti = p iT w i

LM MM MMp N

T n

~E w n

PPO PP PQ

(9.20b)

9.2

Expresiones analticas

217

Las ecuaciones (9.9a), (9.14b), (9.15i) o (9.18b) y (9.20b) juntas proporcionan las expresiones explcitas para las ecuaciones dinmicas de movimiento para un robot serial de n eslabones y n grados de libertad.

Ejemplo 9.1

Brazo planar de un eslabn


O q X1 Y1 C

Para el brazo de un eslabn que se presenta en la figura 9.3, se utiliza la ecuacin de movimiento mediante el concepto de las matrices DeNOC. Si se utilizan las ecuaciones (9.6a-b), las matrices DeNOC para el brazo de un eslabn se obtienen mediante N = Nl Nd = p, donde Nl = 1, y Nd = p (9.21) Observe en lo anterior que no se puso el subndice 1 al vector p de 6 dimensiones de propagacin de la velocidad de articulaciones, ya que slo hay una articulacin. El trmino de inercia, que es escalar para el brazo de un eslabn, se obtiene entonces segn la ecuacin (9.14b) como

t a

Y2 mg X2

Figura 9.3 Brazo de un eslabn

I( i11) = pT M p = eT Ie + m (e d)T (e d) ; donde p

LI ~ LM e OP ; M M=M NO Ne d Q
LM 1 acq N2

O m1

OP Q

(9.22a)

En la ecuacin (9.22a), el subndice 1 tampoco se usa en las notaciones de vector y matriz, ya que slo existe un eslabn y una articulacin. Entonces, los vectores tridimensionales e y d en el sistema fijo, es decir, el sistema 1, se obtienen como [e]1 [0 0 1]T; [d]1
1 asq 2 0

OP Q

(9.22b)

Adems, la matriz de inercia I de 3 3 para el brazo de un solo eslabn alrededor de su centro de masa C en la trama que fija el eslabn, es decir, el sistema 1, se escribe como 0 0 0 ma 2 0 1 0 (9.22c) [I ]2 = 12 0 0 1

LM MM N

OP PP Q

Usando la ecuacin (8.72) puede escribirse


T

c 2q ma 2 [I]1 = Q[I]2 Q = s q cq 12 0

LM MM N

s q cq s 2q 0

0 0

OP P 1P Q

(9.22d)

218

CAPTULO

9 Dinmica recursiva de robots

donde Q es la matriz de rotacin de 3 3 proporcionada por


cq Q = sq 0

La sustitucin de las ecuaciones (9.22b-d) en la ecuacin (9.22a) proporciona entonces 1 (9.22f) I = ma2 3 Luego se obtiene el VCI mediante la ecuacin (9.15i), donde para el caso de un ~ ~ eslabn B11 = 1, BT 21 H 21 = O, ya que no se presenta, y M M = WM. Por lo tanto, C( c11) = pT (MW + WM) p = q eT [(Ie e) + (e Ie)md d] = 0
O W = qe 1 y W = qe 1 O O qe 1 O O

LM MN

- sq cq 0

0 0 1

OP PQ

(9.22e)

(9.23a)

donde la expresin de la matriz W de 6 6 que se usa arriba se determina por

Adems, el vector p de 6 dimensiones y la matriz M de 6 6 se obtienen con la ecuacin (9.22a). Es ms, las propiedades de los productos vectoriales se utilizan para obtener el resultado de la ecuacin (9.23a), es decir, d d = 0 y eT (Ie Ie) = 0 o eT (e Ie) = 0. Este ltimo resultado se debe al hecho de que el vector e es ortogonal al que se obtiene de su producto vectorial, a saber, e Ie. Finalmente, se obtiene la fuerza generalizada segn n 1 (9.23c) t1 = NTwE = e T (e d) T = t mgasq 2 f donde el momento externo debido al actuador, as como la fuerza externa debida a la gravedad representadas en el sistema 1, se dan como (9.23d) [n]1 [0 0 t]T, [f]1 [mg 0 0 ]T El subndice 1 se agrega a la fuerza generalizada en el lado izquierdo de la ecuacin (9.23c), es decir, t1. Esto sirve para distinguir la fuerza generalizada t1 del par de torsin del actuador t en la ecuacin (9.23d). En este punto cabe sealar que para sistemas sencillos como el de este ejemplo, podr ser ms fcil obtener la ecuacin dinmica de movimiento, ecuacin (9.23c), a partir de la aplicacin directa de las expresiones en trminos de la matriz NOC que aparecen despus de la ecuacin (9.9a).

LM N

OP Q

LM N

OP Q

(9.23b)

LM OP NQ

Ejemplo 9.2

Manipulador planar de dos eslabones

En la figura 9.4 se presenta un manipulador planar de dos eslabones con dos articulaciones rotacionales. Este manipulador tiene dos grados de libertad y sus coordenadas independientes son q1 y q2. En forma correspondiente, las velocidades de las articula ciones son q1 y q2. El vector bidimensional de velocidad de articulaciones p se define entonces como (9.24) q [q 1 , q 2 ] T

9.2

Expresiones analticas

219

Y1 (x, y) EE Y2 C2 p2 d2 d1 C1 a1 e1 p1 R e2 R X1 a2 X2

Figura 9.4

Manipulador planar de dos eslabones

Las longitudes de los eslabones son a1 y a2, y las masas son m1 y m2. Los elementos de la matriz de inercia generalizada (GIM) se calculan entonces como sigue: para i, j = 2, el clculo de i22 se muestra abajo, segn la ecuacin (9.14b), como ~ i22 p T (9.25a) 2 M 2 B22 p2 donde p2

LM e OP ; B LM 1 OOP ; NO 1 Q Ne d Q LI O OP ~ M =M M N O m 1Q
2
22

(9.25b)

donde el vector [e2]2 [e2]1 [0. 0, 1]T es el vector unitario a lo largo del eje de la segunda articulacin rotacional, como se indica en la figura 9.4. El vector d2 se muestra en la figura 9.4, mientras que I2 es el tensor de inercia alrededor de C2. Usando la ecuacin (9.25b) y suponiendo que el centro de masa se encuentra en el centro de la longitud del eslabn, es decir, d2 = a2/2, el elemento (2, 2) de la GIM, es decir, i22, se obtiene entonces en forma explcita, similarmente a I ( i11) del ejemplo 9.1 como
T i22 = [e2]T2 [I2]2 [e2]2 + m2[e2 d2]2 [e2 d2]2 1 1 1 = m a2 + m a2 = m a2 12 2 2 4 2 2 3 2 2 Para i = 2, j = 1, el elemento i21 se proporciona entonces como

(9.25c)

~ T i21 = p T2 M 2 B21 p1, donde p1 e1 , (e1 d1) T

(9.26a)

y la matriz B21 se determina por B21 =

OO LM 1 N- (r + d ) 1 1 PQ
1 2

9.26b)

220

CAPTULO

9 Dinmica recursiva de robots

donde el vector r1 = a1 d1. Por lo tanto, el elemento (2, 1) de la GIM, i21, se calcula, parecido a i22, como
T i21 = eT 2 I2 e1 + m2 (e2 d2) [e1 (a1 + d2)] = e T2 I2 e2 + m2 d T2 a1 + m2 d T2 d2 1 1 1 = m a 2 + m a a cq + m a 2 12 2 2 2 2 1 2 2 4 2 2 1 1 (9.26c) = m2 a 2 m a a cq 2+ 3 2 2 1 2 2 En la ecuacin (9.26c) se aplica la regla del producto vectorial, a saber (a b)T (c d) = (aTc)(bTc) (aTd)(bTc). Adems, e1 = e2, e2Te2 = 1 porque e2 es un vector unitario, e2Td1 = 0 porque e2 es ortogonal a d1. Adems, di = ai/2, ri + di = ai para i = 1, 2, ~ 1 r1 + d1 = a1, y dT2a1 = 2 a2a1 cq1. Entonces, la matriz M1 se calcula como ~ - d1 1 I1 ~ T ~ (9.27a) M1 = M1 + B 21 M 2 B21 = ~1 d1 1 m 1 ~ ~ ~ donde I , c y m se dan a continuacin;

LM N

OP Q

~ ~ ~ ~ =m +m I1 = I1 + I2 m2 c21 ( d1 1); d1 = m2c21; y m (9.27b) 1 2 1 ~ ~ ~ en la que se usan I I , = 0, y m = m . Ahora, para i, j = 1, el elemento (1, 1) de
2 2 2 2 2

la GIM, i11, se encuentra como ~ ~ d T d = 1 (m a 2 + m a 2 ) + m a 2 + m a a cq (9.28a) i11 = e T1 I1 e1 + m 2 2 2 1 2 1 2 2 1 1 1 3 1 1 Para i, j = 2, 1, los elementos de la MCI se obtienen, segn la ecuacin (9.15i), como ~ ~ ~ T T (9.29a) c22 = p 2 (B T 32 H32 + B 22 (M 2 W2 + M2 ) p2 = 0 ~ ~ 1 T ~ (9.29b) c21 = p 2 [ H 21 + M 2 B 21 W1 + M2 B 21 ] p1 = m2 a1 a2 sq2 q 1 2 ~ ~ T T ~ [ BT c12 = p 1 31 H 32 + B 21 (M 2 W2 + M2 ) ]p 2
1 m a a s q (q + q 2 ) 2 2 1 2 2 1 ~ ~ ~ T T [ BT = p1 21 H 21 + B 11 (M 1 W1 + M2 ) ]p 1

= c11

(9.29c)

1 (9.29d) m a a sq q 2 2 1 2 2 2 ~ ~ En las ecuaciones (9.29a-c), se utilizaron H32 O y M 2 p2 = 0. Adems, para robots ~ T planares puede demostrarse que el trmino PT i B ji Mj j Pj para i, j = 1, 2 desaparece. Finalmente, puede demostrarse que los elementos del vector h tienen las siguientes expresiones: 1 ~ h2 = p T m a a sq q 2 (9.30a) 2 w 2 = 2 2 1 2 2 1 ~ = m a a sq 1 q + q q h1 = p T (9.30b) 2 1 w 2 1 2 2 1 1 2 2

FH

IK

9.3

La dinmica inversa recursiva usando RIDIM

221

que no son otra cosa que el resultado de la multiplicacin de los elementos de la MCI, , ecuacin las ecuaciones (9.29a-d), con las del vector de velocidad de articulaciones (9.24).

9.3

La dinmica inversa recursiva usando RIDIM*

La dinmica inversa tiene la siguiente definicin: Si se proporcionan los parmetros geomtricos e inerciales Por qu inversa? de un robot, junto con sus movimientos de articulaciones, encuentre los pares de torsin y las fuerzas de las En comparacin con la dinmica diarticulaciones. En esta seccin se hace hincapi en recta, los clculos reversivos o inque, para el propsito del anlisis de la dinmica inver- versos son generados por ecuaciosa, no es necesario evaluar en forma explcita las matri- nes dinmicas de movimiento. De all viene este trmino. ces y los vectores que aparecen en la ecuacin (9.9a), ya que el requerido lado derecho puede evaluarse mediante un algoritmo de orden recursivo (n) (Saha, 1999), donde n es el nmero de eslabones en el manipulador robtico. El algoritmo recursivo se utiliz en el pasado para desarrollar un programa de C++ de uso universal que recibi el nombre de RIDIM (Recursive Inverse Dynamics for Industrial Manipulators; dinmica inversa recursiva para manipuladores industriales) (Marothiya y Saha, 2003).

9.3.1

El algoritmo de dinmica inversa recursiva

Aqu se presenta el algoritmo recursivo (Saha, 1999) que se implementa en RIDIM; este algoritmo tiene dos recursiones, a saber, hacia delante y hacia atrs, que se muestran a continuacin: Recursin hacia delante b 1 = p1q 1 + W 1 p1q 1 a 1 = p1q 1; a 2 = p2q 2 + a 1; a n = p nq n + a n1; b 2 = p2q 2 + W 2 p2q 2 + B21b 1 + B 21 a 1 b n = pnq n + W n pn q n + Bn,n1 b n1 + Bn, n -1 a n1

donde la matriz i de 6 6 se define como Wi

Recursin hacia atrs g n = Mn b n + Wn Mna n; g n1 = M n1b n1 + Wn1 M n1a n1 + BTn, n1g n; g 1 = M1b 1 + W1M1a 1 + BT 21 g 2;

LMw 1 N O
i

O wi 1

OP Q

(9.31) tn = pT ng n tn1 = pT n1g n1 t1 = p T 1g 1

* RIDIM (Recursive Inverse Dynamics for Industrial Manipulators; dinmica inversa recursiva para manipuladores industriales) es un programa de C++ de desarrollo propio con una interfaz de MS-Windows.

222

CAPTULO

9 Dinmica recursiva de robots

donde `i, ai y fi son los vectores de seis dimensiones con las dimensiones de torsin, la rapidez de torsin y la llave de torsin. Observe que, a partir de las ya dichas expresiones del ~ E, mientras que w ~E = 0. Esto implica par de torsin/fuerza y de la ecuacin (9.20b), fi w i n+1 que los pares de torsin y fuerzas se deben nicamente al movimiento del sistema sin ningn momento y fuerza externos sobre el efector final. Adems, si hay presencia de gravedad, se est tomando en cuenta por proveer una aceleracin negativa que se denota por g al primer cuerpo #1 (Kane y Levinson, 1983), es decir, se agrega un trmino adicional a ai como b 1 = p1q 1 + W 1 p1q 1 + r , donde r [0, gT ] T (9.32)

Ahora bien, para un manipulador serial de articulaciones puramente rotacionales, la complejidad computacional del algoritmo citado lneas arriba se presenta en la tabla 9.1, lo que se compara con algunos de los otros algoritmos dinmicos inversos que existen. A pesar de que el algoritmo de arriba no es el mejor, es muy sencillo, como es evidente en el algoritmo de dos pasos, donde se tratan seis vectores dimensionales en forma parecida a aqullos de tres vectores dimensionales. Es decir, si se conoce `1, encontrar a `2 es muy similar a la evaluacin de la velocidad lineal del cuerpo 2 a partir de la velocidad conocida del cuerpo 1.
Tabla 9.1 Complejidades computacionales para la dinmica inversa

Algoritmo
Hollerbach (1980) Luh et al. (1980) Walker y Orin (1982) RIDIM (Saha, 1999) Khalil et al. (1986) ngeles et al. (1989) Balafoutis et al. (1988)

Multiplicaciones/ divisiones (M)


412n277 150n48 137n22 120n44 105n92 105n109 93n69

Suma/ sustraccin (A)


320n201 131n+48 101n11 97n55 94n86 90n105 81n65

n=6 2195M 17119A 852M 834A


800M 676M 538M 521M 489M 595A

527A
478A 435A 421M

9.3.2

El programa RIDIM

El programa RIDIM se desarroll en C++ para la dinmica inversa de un manipulador general de n eslabones. Con el fin de hacer el programa amigable para el usuario, tambin se desarroll una interfaz de usuario en MS-Windows, como se muestra en la figura 9.5. El programa tambin tiene mdulos de anlisis de cinemtica inversa y directa y verificacin de resultados, respectivamente. Las entradas requeridas para el anlisis de dinmica inversa con el uso de RIDIM son como sigue: Para i = 1, ..., n, Por qu industrial
en RIDIM? El programa tambin puede usarse para robots de aplicaciones no industriales. Sin embargo, la mayora de los robots industriales son de tipo serial. Por esto se usa la palabra industrial.

1. Los parmetros constantes de Denavit-Hartenberg (DH) (Denavit y Hartenberg, 1955) del robot bajo estudio, que estn definidos en la seccin 5.4. Ellos son bi, ai, ai para una articulacin rotacional y qi, ai, ai para una articulacin prismtica. Los parmetros bi, qi, ai y ai se llaman desplazamiento o separa-

9.3

La dinmica inversa recursiva usando RIDIM

223

DINMICA INVERSA RECURSIVA DE MANIPULADORES INDUSTRIALES

DR. S.K. SAHA DEPARTAMENTO DE INGENIERA MECNICA INSTITUTO DE TECNOLOGA DE LA INDIA, DELHI

CANCELAR

SIGUIENTE

Figura 9.5

Interfaz de MS-Windows de RIDIM

2.

3. 4. 5.

cin articular, ngulo articular, longitud de eslabn y ngulo de torsin, respectivamente. Historial de tiempo del parmetro DH variable, es decir, qi para un par rotacional y bi para una articulacin prismtica, as como su primera y segunda derivada en el , b , respectivamente. tiempo, es decir, qi, bi, y q i i Masa de cada cuerpo mi. Vector que denota la distancia de la (i + 1)-sima articulacin del i-simo centro de masa Ci en el (i + 1)-simo sistema de referencia, es decir [ri]i+1. Tensor de inercia del i-simo eslabn alrededor de su centro de masa Ci en el (i + 1)simo sistema [Ii]i+1.

Observe que RIDIM tiene las siguientes caractersticas: Puede manejar manipuladores con pares o articulaciones tanto rotacionales o revolutas como prismticas: Toma en cuenta la gravedad, pues considera la aceleracin negativa debido a la gravedad denotada por g al primer cuerpo #1, como se muestra en la ecuacin (9.32).

Ejemplo 9.3

Dinmica inversa de un manipulador planar de tres DOF

En la figura 9.6 se presenta el manipulador de tres eslabones en estudio, cuyos parmetros DH e inerciales se muestran en la tabla 9.2. Se supone que el manipulador se mueve en el plano X-Y, donde la gravedad est trabajando en la direccin negativa Y. Suponga que i y j son los dos vectores unitarios paralelos a los ejes X y Y, respectivamente,

224

CAPTULO

9 Dinmica recursiva de robots

a2 2 d2 p2 a1

a2 2 r2 C2 Y p1

p3

C3

q13

Efector final

Figura 9.6

Manipulador de tres eslabones

y que k = i j. Los tres pares de torsin o torsionales de las articulaciones, es decir, t1, t2 y t3, se evaluaron por medio del programa RIDIM, para lo cual se tomaron como entrada ngulos articulares suaves, como los de la subseccin 8.5.1, y las correspondientes velocidades y aceleraciones.
Tabla 9.2 Los parmetros DH e inerciales del robot PUMA a) Parmetros DH

Eslabn

Articulacin

ai (m)

bi (m)

ai (rad)

qi (rad)
JV [0] JV [0] JV [0] rotacional o

1 r 0.3 0 0 2 r 0.25 0 0 3 r 022 0 0 JV: Variable articular con valores iniciales entre corchetes [ y ]; r: Articulacin revoluta b) Parmetros de masa e inercia

mi Eslabn (kg)
1 2 3 0.5 0.4 0.3

ri,x
0.15 0.125 0.11

ri,y (m)
0 0 0

ri,z
0 0 0

Ii,xx
0 0 0

Ii,xy
0 0 0

Ii,xz
0 0 0

Ii,yy (kg-m2)
0.00375 0.00208 0.00121

Ii,yz
0 0 0

Ii,zz
0.00375 0.00208 0.00121

El ngulo de articulacin se determina por qi = qi (0) +


qi qi
i

LM F H N q (T ) - q ( 0 ) L = MN1 - cos FH 2Tp tIK OPQ ; T q (T ) - q ( 0 ) L 2 p = MN T sen FH 2Tp tIK OPQ T


i

q i (T ) - q i ( 0) 2p T sen t t2p T T

I OP KQ

(9.33a)

(9.33b)

9.3

La dinmica inversa recursiva usando RIDIM

225

200

ngulo articular (grados)

150

100

50

4 t (seg)

10

Figura 9.7

Trayectoria articular

i(0) = 0 donde se tomaron T = 10 seg, valores iniciales de la articulacin qi(0) = qi(0) = q y cuyos valores finales son qi(T) = p, qi(0) = qi(0) = 0 para i = 1, 2, 3. La trayectoria de la articulacin se muestra en la figura 9.7, donde los pares de torsin de la articulacin obtenidos por RIDIM se grafican en la figura 9.8. Los trminos tau_1, tau_2 y tau_3 de la figura 9.8 denotan los pares de torsin de la articulacin t1, t2 y t3, respectivamente. Las grficas tambin se verificaron con las que se obtuvieron de las expresiones explcitas disponibles en muchos libros sobre robtica, por ejemplo, ngeles (2003).
5 tau_1 4

Pares de torsin (Nm)

3 2 1 tau_3 0 1 2 tau_2

4 6 Tiempo (seg)

10

Figura 9.8

Pares de torsin de las articulaciones del manipulador de tres eslabones

226

CAPTULO

9 Dinmica recursiva de robots

Ejemplo 9.4

El robot PUMA

Para el robot PUMA que se presenta en la figura 9.9, los resultados de dinmica inversa se obtuvieron para sus parmetros DH e inerciales que se muestran en la tabla 9.3.
Ze Xe 0.056 Z 4, Z 6 X5, X6 0.042 Z5 X3 Z3 Z1 X4 0.149 Efector terminal

02 0.

0.432 Z2

X1, X2

Figura 9.9

Un robot PUMA

Se supone que la trayectoria para cada articulacin ser la misma que para el manipulador de tres eslabones, como se defini en las ecuaciones (9.33a-b) para el mismo T, y los valores de articulaciones iniciales y finales. Las grficas de pares de torsin correspondientes se dan en las figuras 9.10a-f).
Tabla 9.3 Los parmetros DH e inerciales del robot PUMA a) Parmetros DH

Eslabn
1 2 3 4 5 6

Articulacin
r r r r r r

ai (m)
0 0.432 0.02 0 0 0

bi (m)
0 0.149 0 0.432 0 0.05

ai (rad)
p/2 0 p/2 p/2 p/2 0

qi (rad)
JV [0] JV [0] JV [0] JV [0] JV [0] JV [0]

JV: Variable articular con valores iniciales entre corchetes [ y ]; r: Articulacin rotacional o revoluta

9.3

La dinmica inversa recursiva usando RIDIM

227

b) Parmetros de masa e inercia

Eslabn
1 2 3 4 5 6

mi (kg)
10.521 15.761 8.767 1.052 1.052 0.351
6

ri,x

ri,y (m)

ri,z

Ii,xx
1.612 0.4898 3.3768 0.181 0.0735 0.0071
100

Ii,xy Ii,xz
0 0 0 0 0 0 0 0 0 0 0 0

Ii,yy Ii,yz (kg-m2)


1.612 8.0783 3.3768 0.1273 0.1273 0.0071 0 0 0 0 0 0

Ii,zz
0.5091 8.2672 0.3009 0.181 0.0735 0.0141

0.054 0 0 0 0.292 0 0.197 0 0.02 0.057 0 0 0.007 0 0 0.019 0 0

Par de torsin (Nm)

Par de torsin (Nm)

4 2 0 2 4 6 0 2 4 6 8 Tiempo (seg) a) Articulacin 1 10

50 0 50 100

4 6 8 Tiempo (seg) b) Articulacin 2

10

30

0.15

Par de torsin (Nm)

20 10 0 10 20 30 0 2 4 6 8 Tiempo (seg) c) Articulacin 3 10

Par de torsin (Nm)

0.1 0.05 0 0.05 0.1 0 2 4 6 8 Tiempo (seg) d ) Articulacin 4 10

0.15

0.02

Par de torsin (Nm)

0.1 0.05 0 0.05 0.1 0 2 4 6 8 Tiempo (seg) e) Articulacin 5 10

Par de torsin (Nm)

0.1 0 0.01 0.02 0.03 0 2 4 6 8 Tiempo (seg) f ) Articulacin 6 10

Figura 9.10

Pares de torsin de articulaciones del robot PUMA

228

CAPTULO

9 Dinmica recursiva de robots

Ejemplo 9.5

El brazo STANFORD

Para el brazo Stanford que se presenta en la figura 9.11, los parmetros DH y otros se muestran en la tabla 9.4. Observe que se distingue del robot PUMA en que tiene una articulacin prismtica en la ubicacin 3 de la articulacin. Las funciones para las articulaciones rotacionales o revolutas se tomaron exactamente de las mismas que en el robot PUMA del ejemplo 9.4, con los siguientes datos: T = 10 seg, qi(0) = 0 para i 2,3, q2(0) = p/2; y q1(T) = p/3 para i 3. Puesto que la tercera articulacin es prismtica, el desplazamiento de la articulacin, que se denota por b3, es una variable. Su variacin se toma igual que en la ecuacin (9.33a), a saber, bi = bi (0) +
bi (T ) - bi ( 0) 2p T tt sen T 2p T
Efector terminal

LM N

F H

I OP KQ

(9.34)

donde b3(0) = 0, y b3(T ) = 0.1 m.

Ze Z4, Z6 0.6

Xe X5, X6 Z5 X4 X3 b3 Z3 Z2

Z1 X2

0.1

0.1

X1

Figura 9.11 Tabla 9.4

El brazo Stanford

Los parmetros DH e inerciales de un brazo Stanford a) Parmetros DH

Eslabn
1 2 3 4 5 6

Articulacin
r r p r r r

ai (m)
0 0 0 0 0 0

bi (m)
0.1 0.1 JV [0] 0.6 0 0.0

ai (rad)
p/2 p/2 0 p/2 p/2 0

qi (rad)
JV [0] JV [0] 0 JV [0] JV [0] JV [0]

JV: Variable articular con valores iniciales entre corchetes [ y ]; r: Articulacin rotacional ; p: Articulacin prismtica

9.4

La dinmica directa recursiva y la simulacin

229

b) Parmetros de masa e inercia

mi ri,x Eslabn (kg)


1 2 3 4 5 6 9 6 4 1 0.6 0.5 0 0 0 0 0 0

ri,y (m)
0.1 0 0 0.1 0 0

ri,z
0 0 0 0 0.06 0.2

Ii,xx
0.01 0.05 0.4 0.001 0.0005 0.003

Ii,xy
0 0 0 0 0 0

Ii,yz (kg-m2)
0 0 0 0 0 0

Ii,yy
0.02 0.06 0.4 0.001 0.0005 0.001

Ii,yz
0 0 0 0 0 0

Ii,x
0.01 0.01 0.01 0.0005 0.0002 0.002

Los pares de torsin y fuerza que se obtienen mediante RIDIM se grafican luego en las figuras 9.12a-f) y coinciden exactamente con los que se reportan en Cyril (1988) para el mismo brazo.

9.4

La dinmica directa recursiva y la simulacin

La definicin de la dinmica directa es: si se proporcionan los pares de torsin y fuerzas, junto con los parmetros fsicos del robot, se buscan las aceleraciones de las articulaciones, segn las ecuaciones es decir, se resuelven para las aceleraciones de las articulaciones p dinmicas de movimiento, ecuacin (9.9a). La simulacin, por otro lado, involucra la dinmica directa, seguida por la solucin de las ecuaciones diferenciales Por qu directo? en las aceleraciones articulares, para obtener veloci dades y posiciones de las articulaciones, es decir, p y Este paso para la simulacin lleva al p, respectivamente, para un conjunto determinado de comportamiento de un robot como posiciones iniciales de articulaciones y velocidades si ste existiese y se le estuviese mo del manipulador en estudio, es decir, p (0) y p (0), res- viendo. Por eso se usa la palabra directo. pectivamente.

9.4.1

Algoritmo de dinmica directa recursiva

Convencionalmente, se resuelven las aceleraciones articulares segn la ecuacin (9.9a), usando la descomposicin de Cholesky de la GIM I, como lo hacen Walker y Orin (1982), ngeles (2003) y otros, o mediante el comando de MATLAB de e\I (Matlab, 2002), donde e representa el vector de las fuerzas generalizadas debido a los momentos y fuerzas externos, la gravedad y los trminos de Coriolis, etc. El planteamiento que se menciona arriba requiere clculos del orden (n3), donde n es el nmero de eslabones que hay en el robot y produce aceleraciones articulares no suaves (Ascher et al., 1997). Por el contrario, la formulacin dinmica basada en las matrices de complemento ortogonal natural desacoplado (DeNOC) de la ecuacin (9.9a) en forma recurque se presentan en este captulo permite resolver p siva con la complejidad computacional de orden (n) (Saha, 1999; 2003). Se sabe que estos

230

CAPTULO

9 Dinmica recursiva de robots


18

0.15

Par de torsin (Nm)

Par de torsin (Nm)


0 2 4 6 8 Tiempo (seg) a) Articulacin 1 10

0.1 0.05 0 0.05 0.1 0.15

17.5 17 16.5 16 15.5 15 14.5

4 6 8 Tiempo (seg) b) Articulacin 2

10

20 25 30

Par de torsin (Nm)

Fuerza (N)

0 5 10 15

4 6 8 Tiempo (seg) c) Articulacin 3

10

0.1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9

4 6 8 Tiempo (seg) d) Articulacin 4

10

1.35 1.3 1.25 1.2 1.15 1.1 1.05 1 0.95 0.9 0.85

0.0003

Par de torsin (Nm)

Par de torsin (Nm)

0.0002 0.0001 0

0.0001 0.0002 0.0003 0 2 4 6 8 Tiempo (seg) f ) Articulacin 6 10

4 6 8 Tiempo (seg) e) Articulacin 5

10

Figura 9.12

Pares de torsin y fuerza para el brazo Stanford

, como se informa en Ascher et al. algoritmos recursivos proporcionan perfiles suaves para p (1997), Mohan y Saha (2007) y otros. En esta subseccin se presenta un algoritmo de dinmica directa recursiva del orden (n) que requiere las siguientes entradas: Para i = 1, ..., n, 1. tems de dinmica recursiva 1, as como 3-5, como se menciona en la subseccin 9.3.2. 2. Valores iniciales para los parmetros variables DH, es decir, qi para una articulacin rotacional y bc para una articulacin prismtica, y su derivada respecto al tiempo, es decir, q i y bi. 3. Historial de tiempo de las fuerzas/pares de torsin de la articulacin, es decir, ti.

9.4

La dinmica directa recursiva y la simulacin

231

4. Cada componente del vector i s Cp, obtenido mediante la ecuacin (9.9a), es decir, ei, que ha de calcularse en forma recursiva mediante un algoritmo de dinmica = 0. inversa, por ejemplo, el que se da en la subseccin 9.3.1, mientras que p El algoritmo que se basa en la descomposicin UDUT de la matriz generalizada de inercia I de la ecuacin (9.9a), es decir, I = UDUT, donde U y D son las matrices superior y diagonal, respectivamente. Adems, mediante la sustitucin para I y j t Cp en la ecuacin (9.9a), se obtiene UDUT q j (9.35)

Luego se utiliza un mtodo recursivo de tres pasos para calcular las aceleraciones de las articulaciones a partir de las ecuaciones arriba mencionadas, por ejemplo, : La solucin i = U1 i se evala en funcin de los trminos escalares 1. Solucin para i como
f i = fi pT i h i , i +1, para i = n, , 1

(9.36a)

n fn, y el vector de 6 dimensiones i,i+1 se obtiene como Observe que f h i ,i+1 BTi +1,i h i+1 y h i+1 y i +1 f i +1 + h i+1,i +2 (9.36b)

en la que n,n+1 = 0. La nueva variable i+1 es la matriz de 6 6 que se evala mediante yi =


yi , donde y i M i pi y mi pT i yi mi

(9.36c)

i, que se llama inercia de cuerpo articuEn la ecuacin (9.36c), la matriz de 6 6 M ~ lado (Saha, 1997; 1999), puede obtenerse en forma recursiva, parecido a Mi, en la ecuacin (9.10d), como
M i Mi + BTi +1,i Mi +1 B i+1,i , donde M i +1 = M i +1 y i +1 y Ti+1

(9.36d)

n = Mn. para i = n 1, ..., 1, y M ~: La solucin Di ~=i involucra la inversa de la matriz diagonal D de la 2. Solucin para ecuacin (9.35), que es simple, a saber, D1 slo tiene elementos diagonales no ceros que son los recprocos de los correspondientes elementos diagonales de D. El vector ~ se obtiene como sigue: Para i = 1, ..., n, i
~ f i = j i / mi

(9.37)

i se define en la ecuacin (9.36c). El escalar m ~ se calcula para i = 2, ..., n como : En este paso, = UTi 3. Solucin para p
~ ~ q i = f i y iT m i ,i - 1

(9.38a)

232

CAPTULO

9 Dinmica recursiva de robots

~ ~ =f donde q 1, y el vector de seis dimensiones i,i-1 se obtiene como


~ ~ ~ ~ m i, i - 1 Bi , i 1 m i -1 y m i -1 p i 1q i -1 + m i - 1, i - 2

(9.38b)

en la que ~ l10 0. La complejidad del algoritmo de dinmica directa propuesto se compara en la tabla 9.5 con algunos otros algoritmos. La comparacin muestra claramente que el algoritmo que se presenta arriba es el mejor. Adems, mediante el uso de cualquier otro algoritmo recursivo, la complejidad computacional para la dinmica directa tiene ventajas sobre el algoritmo de orden convencional (n3) cuando n 12, mientras que el algoritmo que se menciona arriba tiene ventajas incluso para n 10.
Tabla 9.5 Complejidades computacionales para la dinmica directa

Algoritmo
Saha (2003) Featherstone (1983) Valasek [14] Brandl et al. [14] Walker y Orion (1982)

Multiplicaciones/ divisiones(M)
191n-284 199n-198 226n-343 250n-222 n3/6+23

Suma/ resta (A)


187n-325 174n-173 206n-345 220n-198 n3/6+7n2+233n/3-46 n2/2+115n/3-47

n=6
862M 797A 996M 871A 1013M 891A 1278M 1122A 633M 480A

n = 10
1626M 1545A 1792M 1527A 1917M 1715A 2278M 2002A 1653M 1209A

9.4.2

Simulacin

, La simulacin consiste en la dinmica directa para encontrar la aceleracin articular p seguida por su integracin, es decir, para obtener p y , para un determinado conjunto de (0) y (0). Como se seal en el captulo 8, subseccin 8.5.2, condiciones iniciales, es decir, p excepto en casos sumamente simples, la integracin debe hacerse en forma numrica, usando mtodos establecidos, como Runge-Kutta-Fehlberg, Adams-Bashforth-Moulton y otros (Shampine, 1994) o el comando ode45 de MATLAB (Matlab, 2002). En esta subseccin se generaron resultados de simulacin utilizando un programa de computacin escrito en C++ para la implementacin del algoritmo de dinmica directa que se dio en la subseccin 9.4.1 y el mtodo de integracin numrica mediante la frmula de Runge-Kutta-Fehlberg. Aqu se elabora un aspecto importante de perfiles de aceleracin de articulaciones suaves que estn disponibles a partir de un algoritmo recursivo de dinmica directa como se no menciona en la subseccin 9.4.1. Cuando el perfil de aceleracin de articulacin para p es suave, la convergencia de su integracin numrica para obtener la velocidad y posicin y , es lenta. Alternativamente, con un perfil p suave obtenido de la articulacin, es decir, p segn un algoritmo recursivo de dinmica directa, la convergencia de los resultados de integracin numrica es ms rpida. Por lo tanto, el tiempo total del CPU que se requiere para la dinmica directa y la integracin numrica juntas mediante el uso del algoritmo recursivo podr ser ms corto incluso para n = 6 en comparacin con su algoritmo de orden (n3). Este aspecto se comprueba en Mohan y Saha (2007) mediante la simulacin.

9.4

La dinmica directa recursiva y la simulacin

233

Ejemplo 9.6

Simulacin del manipulador de tres DOF

Aqu se considera el manipulador de tres DOF que se presenta en la figura 9.6, para dejarlo caer bajo gravedad desde la configuracin horizontal inicial, es decir, qi(0) = qi(0) = 0, para i = 1, 2, 3. El incremento en el tiempo, T, para la integracin numrica se toma como T = 0.01 seg. Los resultados para las posiciones de la articulacin, a saber, las variaciones de q1, q2 y q3 con el tiempo se muestran en la figura 9.13, donde th_1, th_2 y th_3 representan q1, q2 y q3, respectivamente. Observe en la figura 9.6 que, debido a la gravedad del primer ngulo de la articulacin, q1 se incrementar inicialmente en sentido negativo. Esto es evidente segn la figura 9.13. Adems, el sistema bajo gravedad se comporta como un pndulo de tres eslabones, lo que queda claro conforme todas las variaciones de ngulo de la articulacin de la figura 9.13.
3

ngulo (rad)

th_2 th_3

th_1

0.5

1.5 2 Tiempo (seg)

2.5

3.5

Figura 9.13

ngulos de las articulaciones para el manipulador de tres DOF

Ejemplo 9.7

Simulacin del robot PUMA

Para el robot PUMA, cuya arquitectura se muestra en la figura 9.10, la simulacin de cada libre, es decir, que el robot se deje caer libremente bajo gravedad, se realiza con las condiciones iniciales qi(0) = q i (0) = 0 para i = 1, ..., 6. El intervalo T, que se adopta para la integracin numrica, se toma como T = 0.01 seg. Las variaciones para las

234

CAPTULO

9 Dinmica recursiva de robots

Qu es libre? Las articulaciones estn libres de cualquier par de torsin aplicado.

posiciones de las articulaciones contra el tiempo se muestran en las figuras 9.14 a-f). Segn la figura 9.10, queda claro que, debido a la longitud, a3 = 0.02, la articulacin 2 girar en sentido positivo, lo que es evidente segn la figura 9.14b).
3 2.5

0.2 0 0.2 0.4 0.6 0.8 1 1.2 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 Tiempo (seg) a) Articulacin 1 5 4 3 2 1 0 1 2 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 Tiempo (seg) c) Articulacin 3 1.2 1 0.8 0.6 0.4 0.2 0 0.2 0.4 0.6 0.8 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 Tiempo (seg) e) Articulacin 5

ngulo (rad)

ngulo (rad)

2 1.5 1 0.5 0 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 Tiempo (seg) b) Articulacin 2 3 2.5 2 1.5 1 0.5 0 0.5 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 Tiempo (seg) d) Articulacin 4 0.6 0.4 0.2 0 0.2 0.4 0.6 0.8 1 1.2 1.4 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 Tiempo (seg) f) Articulacin 6

ngulo (rad)

Figura 9.14

ngulos articulares del robot PUMA

Ejemplo 9.8

Simulacin del brazo Stanford

Aqu se realiza la simulacin de cada libre del brazo Stanford con los siguientes valo res: qi(0) = 0 para i 2, 3, q2(0) = p, b3(0) = 0; qi(0) = 0 para i 3 y b3(0) = 0. El intervalo T para la integracin numrica se toma igual que antes, es decir, T = 0.01 seg.

ngulo (rad)

ngulo (rad)

ngulo (rad)

0 2 70 60 50 40 30 20 10 0 0 0.5 1.5 1 0.5 0 3 3.5 0 0.5 1 1.5 2 2.5 Tiempo (seg) 3 3.5 b) Articulacin 2 0 0.5 1 1.5 2 2.5 3 3.5 0 0.5 1 3 1.5 2 2.5 Tiempo (seg) e) Articulacin 5 3 3.5 10 8 6 4 2 0 2 0 0.5 1 1.5 2 2.5 Tiempo (seg) f ) Articulacin 6 3 3.5
ngulo (rad)

0.1

0.2
ngulo (rad)

0.3

ngulo (rad)

0.4

0.6 0.5 1

0.7

9.4

0 0.5

Desplazamiento (m)

0.5

1 1.5 2 2.5 Tiempo (seg)

1.5 2 2.5 Tiempo (seg) c) Articulacin 3

3 3.5

a) Articulacin 1

ngulo (rad)

5 0 5 10 15 20 25 30 35 40
ngulo (rad)

0 0.5

1 1.5 2 2.5 Tiempo (seg)

La dinmica directa recursiva y la simulacin

d) Articulacin 4

235

Figura 9.15 ngulos articulares del brazo Stanford

236

CAPTULO

9 Dinmica recursiva de robots

Los resultados de posiciones de articulaciones se presentan luego en las figuras 9.15af). Debido a la configuracin inicial del brazo Stanford que se da en la tabla 9.4a), el movimiento de la articulacin 3 deber incrementarse en forma pronunciada una vez que la articulacin 2 gire ms que p/2. Esto es cierto, como es evidente segn las figuras 9.15c) y b), respectivamente. En la figura 9.15b), la articulacin 2 gira por p/2 de su valor de p/2 o 1.5708 radianes para volverse cero. Esto sucede poco despus de 0.5 seg., cuando el desplazamiento de la articulacin 3 empieza a aumentar, como queda claro en la figura 9.15c).

RESUMEN
En este captulo es presentado el modelado dinmico de robots seriales mediante el uso de complementos ortogonales naturales desacoplados(DeNOC). Se presentan algoritmos de dinmica recursiva inversos y directos para el control y la simulacin de robots, respectivamente. Se reportan las complejidades computacionales de ambos algoritmos con resultados ilustrativos para sistemas robticos planares y espaciales.

EJERCICIOS
9.1 9.2 9.3 9.4 9.5 Qu es la dinmica inversa? Por qu se prefiere el concepto de las matrices DeNOC sobre otros planeamientos de modelado dinmico? Cul es el significado de ortogonal en DeNOC? Busque la expresin de la energa cintica del brazo de un eslabn, ecuacin (8.54a), aplicando las matrices DeNOC. Derive la ecuacin de movimiento del brazo de un eslabn, figura 9.3, usando las expresiones de matrices y vectores mediante la matriz NOC N que aparece despus de la ecuacin (9.9a). Escriba la expresin de la energa cintica total para un manipulador de n eslabones, usando la definicin de torsin generalizada t que se presenta en la ecuacin (9.3c). Repita elejercicio 9.6, usando la definicin de la velocidad de articulacin generalizada p de la ecuacin (9.6b). Cules son las caractersticas de RIDIM?

9.6

9.7 9.8

EJERCICIOS BASADOS EN RIDIM


9.9 Usando el programa RIDIM, busque los pares de torsin de articulaciones para el manipulador planar de dos DOF que se muestra en la figura 9.4.

Ejercicios basados en MATLAB

237

9.10 Genere pares torsionales o de torsin de articulaciones para el manipulador de tres DOF de la figura 9.6 para la trayectoria de articulacin proporcionada por las ecuaciones (9.33a-b) con las siguientes entradas: qi(0) = q i (0) = q i (0) = 0; qi(T ) = p /2, q i (0) = q i (0) = 0, para i = 1, 2, 3 (9.39)

EJERCICIOS BASADOS EN MATLAB


9.11 Genere las grficas de pares torsionales o de torsin de articulaciones para el ejemplo 9.10, usando las siguientes expresiones explcitas: I q + C q = t g + t , donde q [q1 q2 q3]T (9.40a)

donde las matrices GIM y MCI de 3 3, I y C, respectivamente, as como el vector tridimensional s g, debido a la gravedad, se determinan por i11 =
1 2 2 2 (m a 2 + m2 a 22 + m3 a 2 3 ) + m2 a 1 + m3 (a 1 + a 2 ) 3 1 1 + (m2 + 2 m3) a1 a2 cq2 + m3 a3 (a2 cq 3 + a1 cq23)

i12 = i21 =

1 1 2 (m a 2 + m3 a 2 m a + m3 a2 a1cq2 3 ) + m3 a 2 + 3 2 2 2 2 2

FH

IK

i13 i22 i23 c11

1 m a (2 a cq + a1cq23) 2 3 3 2 3 1 1 = i31 = m3 a 23 + m3 a3 (a2 cq3 + a1cq23) 3 2 1 2 2 = (m2 a 2 + m3 a 3 ) + m3 (a 22 + a2 a3 cq3) 3 1 1 1 = i32 = m3 a 2 m a a cq ; i = m a 2 3+ 3 2 3 2 3 3 33 3 3 3 1 = [{m2 a1 a2 sq2 + m3 (2a1 a2 sq2 + a1 a3 sq23)}q 2 2

(9.40b)

+ m3 (a1 a3 sq23 + a2 a3 sq3)q 3 ] c12 =


1 [{m2 a1 a2 sq2 + m3 (2a1 a2 sq2 + a1 a3 sq23)}q 12 2

+ m3 (a1 a3 sq23 + a2 a3 sq3)q 3 ] c13 = c21 = c22


1 m (a a sq + a2 a3sq3)q 123 2 3 1 3 23

(9.40c)

1 [{m2 a1 a2 sq2 + m3 (2 a1a2 sq2 + a1 a3 sq23)}q 1 m3 a2 a3 sq3q 3 ] 2 1 1 = m3 a2 a3 sq3q 3 ; c23 = m3 a2 a3 sq3q 123 2 2

238

CAPTULO

9 Dinmica recursiva de robots

c31 = c33 y t g1 =

1 1 m [(a a sq + a2 a3 sq3)q 1 + a2 a3 sq3q 2]; c32 = m3 a2 a3 sq3q 12 2 3 1 3 23 2 =0

t g2 t g3

1 g [ m1 a1 cq1 2 m2 (a1 cq1 + a2 cq12) 2 m3 (a1 cq1 2 1 + a2 cq12)... + a3 cq123)] 2 1 1 = g [ m2 a2 cq12 2 m3 (a2 cq12... + a3 cq123); 2 2 1 = g [ m3 a3 cq123] 2

) (9.40d)

donde q12 q1 + q2; q123 q12 + q3; q 12 q 1 + q 2 ; q 123 q 12 + q 3. Busque los pares de torsin de los actuadores de articulaciones, vector , para graficar. 9.12 Verifique los resultados de simulacin del ejemplo 9.11 usando las expresiones de la ecuacin (9.40) y ode45.

Cinemtica

239

Captulo

10
Control

El control de cualquier sistema significa aplicar/ejercer fuerza(s) para que el sistema se mueva/trabaje de acuerdo con las instrucciones ordenadas. En un sistema robtico, se requiere de un manipulador para Una computadora personal o un sisteejecutar una tarea especfica mediante el movimiento ma dedicado de circuitos electrnicos conectado al manipulador. de su efector final en forma precisa y repetida. En el captulo 6 se calcularon ecuaciones para obtener los historiales de tiempo de todos los movimientos de las articulaciones para lograr el movimiento deseado del efector final. En este captulo se desarrollarn las leyes de control, donde los historiales de las articulaciones pueden convertirse en entradas con el fin de hacer que el robot siga la trayectoria ordenada. Se asume que el lector tiene los conocimientos bsicos de sistemas de control (Ogata, 1987; Kuo, 1991; Gopal, 1997). El control de un robot requiere el conocimiento del modelo matemtico del mismo, as como de un sistema inteligente que acte sobre l. Mientras que el modelo matemtico necesario se obtiene de las leyes fsicas que rigen el movimiento del manipulador, el sistema inteligente requiere de dispositivos sensoriales y medios para accionar y reaccionar ante las variables detectadas. En el control de un robot, las articulaciones individuales se accionan mediante actuadores, ya sean neumticos, hidrulicos o elctricos, como se explic en el captulo 3. Los actuadores aplican una fuerza o un par de torsin sobre los eslabones para que se muevan. Sus comandos provienen del sistema de control del manipulador que lo mueven para ejecutar el movimiento especfico ordenado para el efector final. Estos comandos se basan en los valores nominales de control generados a partir del conjunto de pares de torsin de las articulaciones en funcin de los historiales de tiempo. Observe que el generador de trayectoria o planeador prepara los historiales de articulaciones, como se indica en la figura 10.1. Esencialmente, se trata de un algoritmo que se basa en cualquiera de los
Quin controla un robot?

240

CAPTULO

10

Control
d . d .. d

Generador de trayectorias

Sistema de Control

Manipulador del robot Lazo cerrado .

Figura 10.1

Diagrama de bloques de un sistema de control de robots

mtodos desarrollados en el captulo 11. Sin embargo, debido a las dificultades que hay en las computaciones precisas de los parmetros de manipuladores en el modelo matemtico, por ejemplo, las longitudes de eslabones, masas e inercias, cambios en la carga de trabajo, consideraciones de friccin, holguras, etc., el efector final del robot no seguir en forma exacta la trayectoria ordenada. Por lo tanto, las posiciones reales de las articulaciones y/o del efector final, as como sus derivadas pueden retroalimentar al sistema de control para obtener un movimiento preciso. En la figura 10.1 se presenta un diagrama esquemtico del control de un manipulador. Las lneas punteadas para la retroalimentacin indican que el sistema de control podr o no emplear la retroalimentacin de los movimientos actuales reales de d y d son las posiciones, velocidades y aceleraciones las articulaciones. Los parmetros pd, son deseadas predefinidas de todas las articulaciones, respectivamente, mientras que p y las posiciones y velocidades reales de las articulaciones, respectivamente. El control de un robot puede clasificarse como lineal y no lineal. El uso de tcnicas de control lineal sirve cuando el robot se mueve lentamente, de manera que puede ser matemticamente modelado por medio de ecuaciones diferenciales lineales con coeficientes constantes. Para el caso de un control de robot real, estos mtodos lineales se consideran esencialmente como mtodos aproximativos, ya que las ecuaciones dinmicas de movimiento de un manipulador robtico son en realidad ecuaciones diferenciales no lineales. Sin embargo, la teora de control lineal sirve de base para sistemas de control no lineales ms complejos. Para muchas aplicaciones prcticas, el uso de sistemas de control lineales es a menudo razonable, puesto que los manipuladores robticos que se usan en la mayora de las industrias se mueven relativamente lento. Pero si las articulaciones se mueven rpidamente, entonces todas ellas tienen que moverse de manera simultnea. En esta situacin, las fuerzas dinmicas acopladas son significativas, y la dinmica del robot es no lineal y compleja. Las articulaciones no pueden moverse de manera independiente, y se requiere de algoritmos de control complejos.

10.1

Tcnicas de control

Pueden emplearse varias tcnicas para resolver un problema de control de un manipulador robtico. Tanto la tcnica que se emplea como la manera de su implementacin podrn tener una influencia significativa sobre el desempeo del robot. Por ejemplo, la necesidad de un movimiento continuo se contrapone de aquella que permitiese un control de punto a punto, donde nicamente importa alcanzar la posicin final. Por otro lado, el diseo mecnico del robot tiene una influencia sobre el tipo de mtodo de control que va a utilizarse. Por ejemplo, el problema de control de un robot cartesiano es significativamente diferente al problema de control de un robot articulado antropomrfico, pues en este ltimo los movimientos del

10.1

Tcnicas de control

241

efector final tienen que convertirse a los movimientos de las articulaciones. El sistema para accionar las articulaciones tambin tiene un efecto sobre el tipo de estrategia de control que se utilizar. Si un manipulador se acciona mediante motores elctricos con engranes reductores de alta razn de transferencia, la presencia de los engranes tiende a linealizar la dinmica del sistema. Los trminos efectivos de masa e inercia de los eslabones son por lo regular enormemente reducidos por el cuadrado de la relacin del engranaje. Por lo tanto, la dinmica de las articulaciones se desacopla, y cada articulacin puede ser controlada en forma independiente. Sin embargo, la presencia de engranajes introduce friccin, deformacin y holgura en el tren de engranajes. Como resultado, el diseador del control tiene que poner ms atencin a estos efectos que a la inercia no lineal, a las fuerzas de Coriolis, etc., con el fin de lograr alto rendimiento. Por el contrario, los accionamientos directos, como se da en el caso de robots de accionamiento directo, eliminan los problemas del tren de engranajes, aunque introducen trminos no lineales debido al acoplamiento entre articulaciones y los eslabones. Como resultado, debe pensarse en diferentes estrategias de control para obtener un alto rendimiento. Por otro lado, el problema de control del manipulador es de mltiples entradas y mltiples salidas (MIMO por sus siglas en ingls), como se indica en la figura 10.1 mediante los vectores n-dimensionales a lo largo de cada lnea de seal. Para simplificar el problema, se considera cada articulacin como independiente y controlada por separado. Esta Por qu SISO? consideracin se justifica para robots con mltiples enEn robots con mltiples engranajes, la granajes, como ya se mencion anteriormente. Ahora consideracin de un control indepenbien, para el modelo de una sola articulacin, existe una diente y separado para cada articulasola entrada y una sola salida (SISO). El control que se cin es equivalente a un problema de disea para este tipo de modelo se llama comnmente control SISO. control de variable de articulacin independiente. Por lo tanto, para un manipulador de n articulaciones, tienen que disearse n sistemas de control SISO independientes. Puesto que cada sistema SISO puede modelarse como una ecuacin diferencial lineal de segundo orden, sus caractersticas se estudiarn en la siguiente seccin, mientras que a continuacin se mencionan las diferentes maneras de controlarla: i) Control de encendido/apagado o control de dos pasos. ii) Control proporcional (P): produce una seal de control proporcional al error entre el movimiento deseado y el real. iii) Control derivativo (D): se genera una seal de control que es proporcional a la razn de cambio del error. El control derivativo se conoce como un control anticipado que mide la razn de cambio del error existente, anticipa el error ms grande entrante y aplica la correccin antes de que el error mayor pueda llegar. El control derivativo nunca se usa solo. iv) Control integral (I): produce una seal de control proporcional a la integral del error respecto al tiempo. Este tipo de controlador puede considerarse como el retroactivo que suma todos los errores y luego responde. v) Modos de combinacin: en estos modos se combinan las estrategias arriba mencionadas, como los controles proporcionales (P) y derivativos (D), y por ello se llama control PD. De manera similar, tambin se usan controles proporcionales e integrales (PI), as como proporcionales, integrales y derivativos (PID), para lograr el desempeo deseado.

242

CAPTULO

10

Control

Observe que un controlador basado en las estrategias mencionadas reacciona a la seal de error y suministra a los actuadores la entrada de control necesaria. Para el control de robots existen tambin sistemas de control ms avanzados, tales como el adaptivo, el de par de torsin computado, el difuso, entre otros. stos no se analizarn en este libro.

10.2

Sistemas lineales de segundo orden


x k m b

Considere el sistema mecnico que se presenta en la figura 10.2. Un bloque de la masa m se une a un resorte con rigidez k y sujeto a una friccin de coeficiente b. La posicin cero del bloque y el sentido positivo de x se indican en la figura 10.2. Si se supone que hay una fuerza de friccin proporcional a la velocidad del bloque, el diagrama de cuerpo libre de las fuerzas que est actuando sobre el bloque lleva directamente a la siguiente ecuacin de movimiento:

Figura 10.2 Sistema de masaresorte con friccin

(10.1) m x + b x + kx = 0 que es una ecuacin diferencial de coeficiente constante lineal de segundo orden. La solucin para la ecuacin diferencial (10.1) es una funcin del tiempo x(t) que describe el movimiento del bloque. Esta solucin depender de las condiciones iniciales del bloque, es decir, de su posicin y velocidad inicial. Segn el estudio de las ecuaciones diferenciales, si se supone que la solucin de x es x = est, entonces la solucin para la ecuacin (10.1) depende de las races de su ecuacin caracterstica, a saber, ms2 + bs + k = 0 que tiene las siguientes races: s1 =
- b + b 2 - 4mk - b - b 2 - 4mk ; y s2 = 2m 2m

(10.2)

(10.3)

Si s1 y s2 son reales, el comportamiento del sistema es lento y no oscilatorio. Si s1 y s2 son complejos, es decir, si tienen componentes imaginarios, el comportamiento del sistema es oscilatorio. El rango entre estos dos comportamientos da el tercer tipo de respuesta, es decir, la respuesta no oscilatoria ms rpida. Estos casos se presentarn a continuacin.

Caso I:

Races reales y desiguales

Este caso se presenta cuando b2 > 4 mk, es decir, cuando la friccin domina y el resultado es el comportamiento lento. Esta respuesta se llama sobreamortiguada. La solucin x(t), que da el movimiento del bloque en el caso de races reales y desiguales, tiene la siguiente forma: x (t) = c1es1t + c2es2t (10.4)

donde s1 y s2 se obtienen por la ecuacin (10.3), que tambin se llaman polos del sistema. Los coeficientes c1 y c2 son constantes que pueden ser determinadas para cualquier conjunto de condiciones iniciales, es decir, la posicin y velocidad inicial del bloque. La figura 10.3

10.2
Im{s}

Sistemas lineales de segundo orden


x (t)

243

Re{s}

Figura 10.3 Ubicacin de races (polos) y respuesta del sistema de un sistema sobreamortiguado.

muestra un ejemplo de ubicaciones de polos o races y la correspondiente respuesta de tiempo a una condicin inicial de no cero. Cuando los polos de un sistema de segundo orden son reales y desiguales, el sistema demuestra movimientos lentos o sobreamortiguados. En casos donde uno de los polos tiene una magnitud mucho mayor que el otro, el polo de mayor magnitud puede omitirse, puesto que el trmino que le corresponde decaer rpidamente a cero en comparacin con el otro polo ms dominante. Esta misma nocin de dominio se extiende a los sistemas de mayor orden; por ejemplo, frecuentemente puede estudiarse un sistema de tercer orden como sistema de segundo orden si se consideran solamente dos polos dominantes.

Ejemplo 10.1

Movimiento de un bloque con races (polos) reales y desiguales

Para el sistema de la figura 10.2, si los parmetros del sistema son m = 1, b = 5 y k = 6, la ecuacin caracterstica se obtiene por (10.5) s2 + 5s + 6 = 0 que tiene races (polos) en s1 = 2 y s2 = 3. Por lo tanto, la respuesta tiene la siguiente forma: (10.6) Si el bloque est inicialmente en reposo y se libera de la posicin x = 1, es decir, x(0) = 1 y x (0) = 0, los coeficientes c1 y c2 pueden entonces calcularse fcilmente a partir de las ecuaciones que satisfagan las condiciones iniciales en t = 0, es decir, (10.7) La ecuacin (10.7) proporciona c1 = 3 y c2 = 2. De este modo, el movimiento del sistema para 0 se obtiene por x (t) = 3 e2 t + 2 e3t (10.8) c1 + c2 = 1; y 2 c1 3 c2 = 0 x (t) = c1e2t + c2e3 t

Caso II:

Races complejas

Este caso se presenta cuando b2 < 4 mk, es decir, cuando domina la rigidez, y se da como resultado el comportamiento oscilatorio. Esta respuesta se llama subamortiguada. Para este caso, la ecuacin caracterstica tiene races complejas de la forma s1 = l + m i ; y s2 = l m i (10.9)

244

CAPTULO

10

Control
Im{s} x (t)

Re{s}

Figura 10.4 Ubicacin de races (polos) y respuesta del sistema de un sistema subamortiguado.

que proporciona la solucin en la forma x (t) = c1 e1s1 t + c2 es2 t (10.10) Sin embargo, la ecuacin (10.10) es difcil de usar en forma directa, puesto que involucra nmeros imaginarios de manera explcita. Si se usa la frmula de Euler, puede demostrarse que (10.11) e ix = cos x + i sen x entonces, la solucin, ecuacin (10.10), puede manipularse en la forma x (t) = a 1el t cos (m t) + a 2 e l t sen ( m t), donde a 1 c1 + c2 y a 2 i (c1 c2) (10.12) Como sucedi anteriormente, los coeficientes 1 y 2 son constantes que pueden ser determinadas para cualquier juego determinado de condiciones iniciales, es decir, la posicin y velocidad inicial del bloque. Suponga que las constantes 1 y 2 se escriben como a 1 = r cos d, y a 2 = r sen d Entonces, la ecuacin (10.12) puede escribirse en la siguiente forma: x (t) = re l t cos (m t d ) donde r=
2 a1 + a2 2 , y d = A tan 2 (a 2, a 1)

(10.13) (10.14) (10.15)

Ahora queda claro, por la ecuacin (10.14), que el movimiento resultante es una oscilacin cuya amplitud disminuye exponencialmente hacia cero. La figura 10.4 muestra las ubicaciones de los polos y la correspondiente respuesta de tiempo a una condicin inicial de no cero. Cuando los polos de un sistema de segundo orden son complejos, el sistema muestra un movimiento oscilatorio o subamortiguado.

Ejemplo 10.2

Movimiento de un bloque con races complejas

Si los parmetros del sistema que se presenta en la figura 10.2 son m = 1, b = 1 y k = 1, la ecuacin caracterstica se vuelve s2 + s + 1 = 0 (10.16)

10.2

Sistemas lineales de segundo orden

245

cuyas races son s1 , 2 = 1 3 i. Por lo tanto, la respuesta x(t) tiene la siguiente 2 2 forma: x (t) = e
1 - t 2

FGa H

1 cos

3 3 t + a 2 sen t 2 2

IJ K

(10.17)

Observe que para el bloque que estuvo inicialmente en reposo y que se liber de (0) = 0. Para determinar la posicin x = 1, las condiciones iniciales son x(0) = 1 y x las constantes c1 y c2, se tiene que a 1 = 1, y
1 3 a + a =0 2 1 2 2

(10.18)

lo que da a 2 = 1 . Por lo tanto, el movimiento del sistema para t 0 se obtiene 3 por x (t) = e
1 - t 2

FG - cos H
1

3 1 3 tsen t 2 2 3

IJ K

(10.19)

lo que tambin puede ponerse en la forma de la ecuacin (10.14) como x (t) =


2 -2t cos e 3

FG 3 t + 150IJ H2 K

(10.20)

Caso III: Races reales e iguales


Este caso especial se presenta cuando b2 = 4 mk, es decir, cuando la friccin y la rigidez estn balanceadas, lo que produce la respuesta no oscilatoria ms rpida posible. Esta respuesta se llama crticamente amortiguada. Mediante la ecuacin (10.3), puede demostrarse que tiene races iguales y reales s, es decir, races repetidas. La solucin tiene la forma x (t) = (c1 + c2 t) est donde s1 = s2 = s = b . Por lo tanto, la ecuacin (10.21) puede escribirse como 2m x (t) = (c1 + c2 t) e
b t 2m

(10.21)

(10.22)

La figura 10.5 muestra las ubicaciones de polos y la respuesta de tiempo correspondiente a una condicin inicial no cero. Cuando los polos de un sistema de segundo orden son reales e iguales, el sistema muestra un movimiento crticamente amortiguado: la respuesta no oscilatoria ms rpida posible. Este tercer caso de amortiguamiento crtico es generalmente una situacin deseable, ya que el sistema nulifica las condiciones iniciales de no cero y regresa a su posicin nominal lo ms rpidamente posible sin comportamiento oscilatorio.

246

CAPTULO

10

Control
Im{s} x (t)

Re{s}

Figura 10.5 Ubicacin de races (polos) y respuesta del sistema de un sistema crticamente amortiguado

Ejemplo 10.3

Movimiento de un bloque con races iguales y reales

Para el sistema de la figura 10.2, los parmetros son m = 1, b = 4 y k = 4. La ecuacin caracterstica es (10.23) s2 + 4s + 4 = 0 cuyas races son s1 = s2 = s = 2. Por lo tanto, la respuesta tiene la siguiente forma: x (t) = (c1 + c2 t) e2 t (10.24) Para el bloque que estuvo inicialmente en reposo cuando se liber de la posicin x = 1, las condiciones iniciales son x(0) = 1 y x (0) = 0, lo cual se utilizar para determinar c1 y c2. Para cumplir con estas condiciones en t = 0, se tiene que c1 = 1, y 2 c1 + c2 = 0 (10.25) La ecuacin (10.25) se cumple mediante c1 = 1 y c2 = 2. De este modo, el movimiento del sistema para t 0 se obtiene por (10.26) x (t) = (1 2 t) e2t En los ejemplos 10.2 y 10.3, todos los sistemas estuvieron estables. Para cualquier sistema fsico pasivo como el de la figura 10.2, ste ser el caso. Estos sistemas mecnicos siempre tienen las propiedades m > 0; b > 0 y k > 0 (10.27)

En el caso de que un sistema no sea estable, no siempre ser posible cambiar los parmetros del sistema fsico. Por lo tanto, tiene que usarse el concepto de un control retroalimentado, donde deber ser posible cambiar de manera efectiva los valores de uno o ms de los coeficientes de la ecuacin caracterstica, de tal modo que el sistema resultante sea estable. Esto se analizar en la siguiente seccin.

10.3

Control retroalimentado

En el caso de un control de lazo abierto de un robot, es decir, sin retroalimentacin, el par de torsin o las fuerzas en un actuador pueden computarse en forma directa a partir del modelo dinmico del manipulador que se calcul en los captulos 8 y 9, en las ecuaciones (8.44a) o

10.3

Control retroalimentado

247

(9.9a). Utilizando, por ejemplo, la ecuacin (8.44a) el comportamiento dinmico de un d y p d, las ecuaciones de manipulador para una trayectoria determinada, es decir, para pd, p movimiento se expresan como (10.28) donde pd, pd y pd denotan los vectores n-dimensionales siendo n el nmero de articulaciones del manipulador de las posiciones, velocidades y aceleraciones de articulaciones deseadas, respectivamente. Estos valores se conocen a partir del generador de trayectorias, como se indica en la figura 10.1. Adems, I: la matriz de inercia generalizada de n n (GIM), que es una funcin de los ngulos de articulacin pd. hd: el vector n-dimensional de los trminos de inercia convectiva (VCI), que es una fun d. cin de ngulos y velocidades de articulaciones, es decir, pd, p fd: el vector n-dimensional de aceleraciones gravitacionales, que es una funcin nicamente de los ngulos de articulacin, es decir, pd. sd: el vector n-dimensional de las fuerzas generalizadas, que pueden ser pares de torsin o fuerzas en las articulaciones, dependiendo del tipo de articulaciones utilizadas, es decir, revolutas o prismticas, respectivamente. Los pares de torsin o fuerzas de articulaciones surgen debido a la presencia de los actuadores necesarios para impulsar el robot a lo largo d y p d. de la trayectoria de las articulaciones deseada, es decir, pd, p Observe que cuando se usa la ecuacin (10.28), el robot no seguir la trayectoria deseada, debido a incertidumbres acerca de la longitud de eslabones, masa e inercia, as como por la no consideracin de friccin, holguras, etc. Por lo tanto, el control por retroalimentacin es esencial, donde se retroalimentan al sistema de control las posiciones reales de las articulaciones o el efector final y a veces sus derivadas, como se indica en la figura 10.1 mediante las lneas punteadas. Qu es lo que se Con el fin de hacer esto, los robots estn equipados con retroalimenta? sensores en cada articulacin para medir los ngulos de Se retroalimenta el estado actual del las articulaciones y a veces tambin se instalan sensores robot, es decir, la posicin y frecuende velocidad, por ejemplo, tacmetros. Los principios temente la velocidad de cada articude algunos de estos sensores se explicaron en el cap- lacin. tulo 4. Para el control retroalimentado, el robot acepta un vector de pares de torsin y fuerzas de las articulaciones, denotados por s, del sistema de control. La ecuacin (10.28) computa estos pares de torsin y fuerzas de articulaciones para el sistema de control, mientras que los sensores del manipulador leen el vector de posiciones de para el controlador. Observe que las articulaciones p y las velocidades de las articulaciones p los pares de torsin y fuerzas de las articulaciones td son necesarios para producir la trayectoria deseada pd. Si el modelo dinmico fue completo y exacto, y si no hubo presencia de ruidos u otras perturbaciones, el uso continuo de la ecuacin (10.28) a lo largo de la trayectoria deseada lo producira, y no habr error entre las posiciones y velocidades de articulaciones deseadas y reales. Puesto que esto no sucede en la realidad, debido a la imperfeccin del modelo dinmico y la inevitable presencia de perturbaciones, la retroalimentacin se utiliza para computar el error, que tambin se conoce como servo-error, encontrando la diferencia entre las posiciones deseadas y reales, y, del mismo modo, entre las velocidades deseadas y reales, es decir, e = qd q; y e = qd q (10.29) I q d + hd + g d = td

248

CAPTULO

10

Control

El sistema de control computar entonces el par de torsin como alguna funcin del servo-error para ser transmitido a los actuadores, de manera que el servo-error sea mnimo o cero. Un sistema de control que hace uso de la retroalimentacin se llama sistema de lazo cerrado. El lazo cerrado de uno de estos sistemas de control alrededor del robot es aparente, segn la figura 10.1, mientras que la figura 10.6 muestra una implementacin por hardware del sistema de control de lazo cerrado. En la figura 10.6, el comparador es un circuito electrnico que mide el error entre la salida deseada (tambin conocido como referencia) y la salida real o medida, y produce seales para el controlador. El controlador puede ser una computadora o microcomputadora o incluso un microprocesador que implemente una estrategia de control basada en la seal de error arriba mencionada. La seal del controlador se convierte entonces en una seal anloga mediante un convertidor de digital a anlogo (DAC), otro circuito electrnico, antes de ser ampliada por el amplificador de potencia con el fin de acrecentar la pequea seal, de tal modo que pueda mover el actuador de la articulacin. Luego se usa un sensor para detectar la posicin y, de ser posible, la velocidad de la articulacin, lo que retroalimenta al comparador despus de que se convierte la seal anloga por medio de un convertidor de anlogo a digital (ADC), que es otro circuito electrnico. En el control retroalimentado, la seal de control sd no es la nica entrada que acta sobre el sistema. Como se muestra en la figura 10.6, las perturbaciones tambin son entradas, que no se controlan pero que influyen en el comportamiento de la salida. Por lo tanto, el controlador debe disearse, adems para la minimizacin del servo-error, para reducir los efectos de las perturbaciones. Como resultado, el robot deber comportarse de manera estable. Si se logra esto, puede decirse que el controlador rechaza las perturbaciones. El doble objetivo de seguir la trayectoria o rastreo y rechazar las perturbaciones es central para cualquier metodologa de control. Deber observarse que un sistema de control incorrectamente diseado a veces puede dar como resultado el desempeo inestable, en el cual los servo-errores se aumentan en vez de reducirse. Por lo tanto, la primera tarea de un ingeniero de control es comprobar que su diseo produce un sistema estable; en segundo lugar, debe comprobar que el desempeo de lazo cerrado del sistema es satisfactorio, es decir, que el error se encuentra dentro de los lmites aceptados. En la prctica, estas comprobaciones podrn abarcar desde comprobaciones matemticas basadas en ciertas suposiciones y modelos hasta resultados ms empricos, como los que se obtienen a travs de la simulacin numrica o la experimentacin.

Comparador

Controlador

Amplificador de potencia

Actuador

Manipulador Perturbaciones Elementos de retroalimentacin Sensores

Figura 10.6 Implementacin por hardware de un controlador de lazo cerrado

10.3

Control retroalimentado

249

10.3.1

Control retroalimentado de un bloque

En esta subseccin se presenta una ilustracin del control por retroalimentacin, utilizando el sistema de masa-resorte-amortiguador que se present en la seccin 10.2. Suponga que la respuesta natural del bloque no es como se desea. Quiz sea subamortiguada y oscilatoria y se quiera que sea crticamente amortiguada. O tal vez el resorte falte por completo (k = 0) y de esta forma el sistema nunca regrese a x = 0 si ste se perturba. Mediante el uso de sensores, de un actuador y de un sistema de control, puede modificarse el comportamiento del sistema. La figura 10.7a) presenta un sistema de masa-resorte-amortiguador con la adicin de un actuador, por lo que es posible aplicar una fuerza al bloque. El diagrama de cuerpo libre que se presenta en la figura 10.7b) lleva a la siguiente ecuacin de movimiento: m x + b x + kx = f que tiene una representacin alternativa, a saber, (10.30a)

x + 2V w n x + w 2 nx = f
donde wn
f b k ;V ; y f m m 2 km

(10.30b)

(10.30c)

Los trminos wn y z se llaman frecuencia natural y razn de amortiguamiento, respectivamente, mientras que es la funcin de forzamiento modificada que acta sobre el sistema. Ahora supngase que hay sensores capaces de detectar la posicin y velocidad del bloque. Se propone una ley de control que computa la fuerza y que deber ser aplicada por los actuadores como funcin de la retroalimentacin detectada, es decir, f = kp (xd x) + kv ( xd - x ) (10.31)

donde xd y x d son la posicin y velocidad deseada del bloque. Si el bloque tiene que mantenerse en reposo en el origen, entonces xd = 0 y x d = 0. Este control se ilustra en la figura 10.8, donde x d representa la aceleracin deseada que tambin se deriva para ser cero, es decir, x d = 0. Observe que la parte izquierda de la lnea punteada en la figura 10.8 es el sistema de control (usualmente implementado en una computadora), mientras que la parte de la derecha de la lnea punteada es el sistema fsico. Implcitas en la figura estn las interfaces entre la computadora de control y los comandos del actuador de salida, junto con la informacin del sensor de entrada. El sistema de control propuesto es un sistema de regulacin de posiciones, que simplemente trata de mantener la posicin del bloque en un lugar fijo, independientemente de las fuerzas de perturbacin aplicadas al bloque. Al igualar la dinmica de lazo
x f k m b a) Sistema fsico f m kx . bx

b) Diagrama de cuerpo libre

Figura 10.7

Un sistema de masa-resorte-amortiguador con un actuador

250

CAPTULO

10

Control
Entrada de control f + kv Retroalimenmentaciones + +

Deseado (referencia) .. xd

+ + kp

x Sistema . x

Salida

. xd xd

El controlador lee la entrada del sensor y escribe los comandos de salida del actuador

Figura 10.8 Un sistema de control retroalimentado

abierto del bloque, ecuacin (10.30a), con la ley de control de la ecuacin (10.31), se calcula la dinmica de lazo cerrado como m x + b x + kx = k px k v x o m x + (b + kv) x + (k + kp) x = 0 lo que da m x + b x + k x = 0 (10.32c) (10.32b) (10.32a)

donde b b + kv y k k + kp. Segn las ecuaciones (10.32b-c), queda claro que, mediante la eleccin de las ganancias de control kv y kp, puede lograrse que el sistema de lazo cerrado se comporte como cualquiera de los sistemas de segundo orden que se explicaron en la seccin 10.2. Las ganancias se seleccionan para obtener la amortiguacin crtica, es decir, b = 2 mk. Observe que kv y kp podrn ser negativos o positivos, dependiendo de los parmetros del sistema original. Sin embargo, si b o k son negativos el resultado podra derivar en un sistema inestable. Esta inestabilidad sera obvia si se escribiera la solucin de la ecuacin diferencial de segundo orden del lazo cerrado, ecuacin (10.32b), en la forma de las ecuaciones (10.4), (10.12) y (10.21). Tambin tiene sentido intuitivo que si b o k son negativos, los servo-errores tienden a magnificarse en vez de reducirse.

10.3.2

Representacin de la funcin de transferencia

La ley de control arriba mencionada tambin puede explicarse mediante el concepto de la funcin de transferencia (TF) que se usa extensamente en la teora de control. La definicin de una TF se da en el apndice A. Ahora bien, para el sistema de masa-resorte amortiguado que se muestra en la figura 10.7, la TF de lazo El papel de T abierto, conforme a la ecuacin (A.26 a), se obtiene Cambia las ecuaciones diferenciales a por
algebraicas para simplicar las estrategias de solucin.

G (s ) =

x ( s) 1 = 2 f ( s) ms + bs + k

(10.33)

10.3

Control retroalimentado

251

Deseado xd (s)

e(s)

Controlador kp + kvs

f (s)

Sistema G(s)

Salida x(s)

Figura 10.9 Representacin de la funcin de transferencia del control retroalimentada

donde x(s) y f(s) son las transformadas de Laplace de los parmetros de variacin en el tiempo, es decir, el desplazamiento x y la fuerza f, respectivamente. Para el control retroalimentado, se selecciona la funcin de forzamiento f de acuerdo con la ecuacin (10.31), de tal modo que el bloque siga o rastree una trayectoria deseada denotada por xd, que por lo general es tambin una funcin del tiempo. Por ende, el sistema de lazo cerrado para el control retroalimentado como se muestra en la figura 10.8 tambin tiene la representacin que se muestra en la figura 10.9, donde la salida x(s), usando las reglas de las manipulaciones del diagrama de bloques, puede escribirse como x (s) = G (s) (kp + kv s) [xd (s) x (s)] (10.34a) En la figura 10.9, la seal de entrada al controlador es el error e(s), definido como la diferencia entre la salida real y la deseada que genera la fuerza necesaria f(s), es decir, f(s) = (kp + kvs)e(s). Mediante el reordenamiento de la ecuacin (10.34a), puede obtenerse fcilmente la TF de lazo cerrado, relacionando la salida x(s) y la salida deseada xd(s) como G ( s) ( k p + k v s) x ( s) = (10.34b) xd ( s) 1 + G ( s) ( k p + k v s) Segn la ecuacin (10.34b), queda claro que para un comportamiento deseado del sistema de lazo cerrado, los polos de la ecuacin caracterstica debern seleccionarse de manera apropiada. Segn la ecuacin (10.34b), la ecuacin caracterstica se obtiene por 1 + G (s)(kp + kv s) = 0 (10.35) Si se sustituye la expresin para la TF, G(s) que se obtiene por la ecuacin (10.33), puede reescribirse la ecuacin (10.35), que proporciona la expresin equivalente a la ecuacin (10.32c). Entonces, segn la ecuacin (10.35), el sistema de lazo cerrado se amortigua crticamente cuando sus polos son iguales, es decir, s1 = s2. Para esta situacin, b = 2 mk, que tambin se obtiene segn el anlisis de dominio de tiempo que se presenta en la subseccin 10.3.1.

Ejemplo 10.4

Diseo sencillo de controladores

Si los parmetros del sistema de la figura 10.7 son m = 1, b = 1 y k = 1, las ganancias kp y kv para una ley de control de regulacin de posiciones debern encontrarse para un sistema crticamente amortiguado con la rigidez de lazo cerrado de 16.0, es decir, k = 16.0. Para la amortiguacin crtica se requiere b = 2 mk = 8.0, es decir, b b + kv = 8 (10.36) Por lo tanto, kv = 7 porque b = 1. Adems, kp = 15, ya que k k + kp = 16 y k = 1.

252

CAPTULO

10

Control

Ejemplo 10.5

Grcas de MATLAB para el comportamiento del bloque de la gura 10.7

Para los parmetros sealados en el ejemplo 10.4, la TF del bloque se obtiene segn la ecuacin (10.33) como
x ( s) 1 = 2 (10.37a) f ( s) s + s+1 El comportamiento del bloque x(s) para una perturbacin inicial, por ejemplo, la entrada de pulsos, es decir, f(s) = 1, se obtiene mediante el comando que se proporciona a continuacin:

G (s ) =

>> num = 1; >> den = [1 1 1]; >> impulse(num,den);

La respuesta se muestra en la figura 10.10a), donde la amplitud a lo largo del eje Y representa el valor de x(t). Observe la sobreoscilacin y la naturaleza vibratoria de la respuesta al principio y antes de estabilizarse. sta es la caracterstica de un sistema subamortiguado. Ahora bien, la respuesta del sistema se grafica para el bloque controlado por retroalimentacin mediante la funcin de transferencia de lazo cerrado que se obtiene segn la ecuacin (10.36), es decir,
G ( s) ( k p + k v s) x ( s) 7 s + 15 (10.37b) = = 2 xd ( s) 1 + G ( s) ( k p + k v s) s + 8s + 16 donde se emplea el G(s) de la ecuacin (10.37a). La respuesta x(s) para el pulso de entrada xd(s) = 1 puede entonces obtenerse usando los siguientes comandos:
>> numc = [7 15]; >> denc = [1 8 16]; >> impulse(numc,denc);

La respuesta se muestra en la figura 10.10b), donde la estabilidad asinttica se asegura, puesto que los dos polos de la ecuacin caracterstica son 4.

10.4

El desempeo de sistemas de control retroalimentados

La habilidad para ajustar el desempeo de un sistema es la ventaja distintiva de cualquier control retroalimentado. Con el fin de analizar y disear sistemas de control, tiene que definirse y medirse su desempeo. Luego, basado en el desempeo deseado, podrn ajustarse los parmetros del sistema para dar la respuesta deseada. Puesto que los sistemas de control son inherentemente dinmicos, su desempeo usualmente se especifica en trminos de su respuesta en tiempo para una seal de entrada especfica, as como el error de estado estable resultante. Es necesario determinar inicialmente si el sistema es estable o no, es decir, si la respuesta a una seal de entrada especfica proporciona las medidas deseadas de desempeo. Sin embargo, observe que usualmente se desconoce la seal de entrada real a un sistema. Por

10.4
0.6 0.5 0.4

El desempeo de sistemas de control retroalimentados

253

Amplitud

0.3 0.2 0.1 0

0.1

6 Tiempo (seg) a) Sin control

10

12

7 6 5 4

Amplitud

3 2 1 0

0.5

1.5 Tiempo (seg) b) Con control PD

2.5

Figura 10.10

Comportamiento del bloque sin y con control

ende, se selecciona normalmente una seal de entrada estndar de prueba. Una de ellas es la entrada escalonada. Las entradas escalonadas son, de hecho, tambin entradas comunes a muchos procesos fsicos. En aplicaciones de control, una prctica comn es la de evaluar el comportamiento de un sistema con base en su respuesta escalonada. Este planteamiento

254

CAPTULO

10

Control

es bastante til porque hay una correlacin razonable entre la respuesta de un sistema a una entrada de prueba estndar y la capacidad del sistema para funcionar en condiciones de operacin normales. Adems, el uso de una entrada estndar le permite al diseador la comparacin de varios diseos disponibles. Con el fin de evaluar el desempeo de un sistema de control, considere el sistema que se presenta en la figura 10.7, cuyo comportamiento se evaluar contra una entrada escalonada unitaria. Para este tipo de estudio, es ms conveniente usar la forma de la ecuacin dinmica de movimiento que se da en la ecuacin (10.30b), donde la correspondiente funcin de transferencia (TF) se obtiene en la ecuacin (A.26b). Para una entrada escalonada unitaria, es decir, (s) = 1/s, la salida x(s) se obtiene por x (s) = G (s) f (s) = que puede ser reordenada como x (s) = G (s) f (s) =
1 s ( s + s1) ( s + s2 )

1 s ( s + 2V w n s + w 2 n)
2

(10.38a)

(10.38b)

donde s1 y s2 son las races de la ecuacin caracterstica de los polos del sistema que se proporciona en la ecuacin (A.27). Mediante las frmulas inversas de la transformada de Laplace, la salida x, como funcin de tiempo, t, se obtiene como 1 (10.39) x =1 e Vw nt sen (w n 1 - V 2 t + f), donde f = cos1 V 2 1- V y el trmino wn 1 2, se conoce como frecuencia natural amortiguada. Dependiendo del valor de la razn de amortiguamiento , estos polos pueden ser reales y desiguales ( > 1) o reales e iguales ( = 1) o complejos conjugados ( < 1). Por lo tanto, se refiere al sistema como sobreamortiguado, crticamente amortiguado y sub-amortiguado, respectivamente. Para varios valores de la razn de amortiguamiento , se muestran las respuestas en la figura 10.10. Conforme se reduzca , se acercan los polos del sistema al eje imaginario y la respuesta se vuelve cada vez ms oscilatoria. Ahora, los desempeos medidos respecto a la respuesta transitoria de la entrada escalonada a un sistema se muestran en la figura 10.11. La prontitud de la respuesta se mide por el tiempo de subida Tr y el tiempo pico Tp, como se indica en la figura. Para sistemas sub-amortiguados con < 1 y una sobreoscilacin, el tiempo de subida Tr es un ndice til, mientras que para los sistemas sobreamortiguados > 1 y sin sobreoscilacin, no se define ningn tiempo pico. Por lo tanto, se usa normalmente un tiempo de subida de 10-90% Tr1, como se indica en la figura 10.11. La similitud con la que la respuesta real coincide con la entrada escalonada se mide por el porcentaje de sobreoscilacin y el tiempo de estabilizacin Ts. El porcentaje de sobreoscilacin (PO) se define como M pt - f v (10.40) PO = 100% fv donde Mpt es el valor pico de la respuesta de tiempo y v es el valor final de la respuesta. Normalmente, v es la magnitud de la entrada, pero muchos sistemas tienen un valor final diferente de la magnitud de entrada deseada. Para el sistema con un paso unitario que se representa en la ecuacin (10.38a), el valor de v es uno. Entonces, el tiempo de estabilizacin

10.5

Una articulacin robtica

255

1.8 1.6 1.4

= 0.1 0.2

0.4 1.2 0.7

Salida, x

1.0 0.8 0.6 2.0 0.4 0.2 0.0 1.0

6 Tiempo, t

10

12

Figura 10.11

Respuesta de un sistema de segundo orden

Ts se define como el tiempo necesario del sistema para estabilizarse dentro de un determinado porcentaje d de la amplitud de entrada. La banda de d se muestra en la figura 10.11. Para el sistema de segundo orden en estudio, la respuesta permanece dentro de 2% despus de cuatro constantes de tiempo, es decir, 4 Ts = 4 t = (10.41) Vw n Finalmente, el error de estado estable se mide en la respuesta escalonada del sistema, como se muestra en la figura 10.12. Por otro lado, los requerimientos de la respuesta transitoria son la prontitud de respuesta Tr y Tp y la cercana de la respuesta a lo deseado Mpt y Ts, que son contradictorias. Por lo tanto, tiene que encontrarse una solucin intermedia. Para un sistema robtico, no puede permitirse una respuesta oscilatoria, particularmente en una operacin de levantar y colocar, donde un efector final podr chocar contra el objeto antes de recogerlo para su manipulacin. Por lo tanto, la ms alta velocidad, pero sin una respuesta oscilatoria, dicta que los parmetros de diseo del controlador debern seleccionarse de tal manera que tengan una razn de amortiguamiento igual a uno o cerca de uno, pero menos que uno.

10.5

Una articulacin robtica

En esta seccin se desarrollar el modelo para una articulacin robtica. Para ello, primero que nada se desarrollar el modelo del par de torsin de un motor de corriente directa (CD) que se muestra en la figura 3.8 y que comnmente se usa en robots industriales, seguido

256

CAPTULO

10

Control

M pt 1.0 + Sobreoscilacin est

Respuesta

1.0 0.9

1.0

0.1 0

T r1 Tr Tiempo de subida

Tp Tiempo pico

Ts Tiempo de estabilizacin

Tiempo, t

Figura 10.12

Respuesta escalonada de un sistema de segundo orden

por el modelo general de articulaciones. Puesto que un actuador tambin se equipa con un conjunto de engranajes o arreglos de poleas de banda o cadena articulada para aplicar el par de torsin o la fuerza al eslabn colindante (el prximo ms alto), stos tambin se tomarn en cuenta en el modelo.

10.5.1

Modelo de un motor CD

Un motor de CD, como el que se muestra en la figura 3.7, trabaja con el principio de que un conductor de corriente en un campo magntico experimenta una fuerza. Si el estator del motor produce un flujo de induccin magntica y la corriente en el rotor (que tambin se llama inducido o armadura) es ia, entonces habr un par de torsin sobre el rotor que lo hace girar. La magnitud de este par de torsin es tm = km ia (10.42) donde tm y km son el par del motor y la constante del motor, respectivamente. La constante del par de torsin del motor puede determinarse mediante un conjunto de curvas de par/velocidad que se presentan en la figura 3.8 para diferentes valores de los voltajes aplicados. La ecuacin (10.42) implica que el par de torsin sobre el rotor se controla con el control de la corriente del inducido. Observe que cuando un motor gira, tambin acta como un generador y se desarrolla un voltaje a travs de su inducido. Este voltaje es proporcional a la velocidad del conductor en el campo y se llama fuerza contraelectromotriz (EMF). Esta fuerza contraelectromotriz, denotada como vb, se opone al flujo de corriente en el conductor, lo que puede expresarse como vb = ke q m (10.43)

m denota la velocidad angular del donde ke es la constante de fuerza contraelectromotriz, y q rotor del motor. Adems, tomando en cuenta el diagrama de circuitos para un motor CD

10.5

Una articulacin robtica

257

controlado por el inducido que se representa en la figura 10.13, la ecuacin diferencial para el circuito se obtiene como di (10.44) la a + ra ia = va ke q m dt donde va, la y vb son la fuente de voltaje, la inductancia del devanado del inducido y la fuerza contraelectromotriz generada, respectivamente. En un control de robot, es deseable controlar el par de torsin generado por el motor en lugar de la velocidad, por medio de los circuitos electrnicos controladores del motor. Estos circuitos de accionamiento detectan la corriente la ra a travs del inducido y continuamente ajustan la fuente de voltaje va, para que una corriente deseada + . ia fluya a travs del inducido. Este tipo de circuito + v keqm se llama control del motor por amplificacin de la a ia corriente. En estos sistemas de accionamiento por corriente, la velocidad con la que puede controlarse el cambio de corriente del inducido se limita Figura 10.13 El circuito del inducido por la inductancia del motor Ia y un lmite superior de un motor de CD sobre la capacidad de la fuente de voltaje va.

10.5.2

Modelo de articulaciones independiente

En esta seccin se calcularn los modelos de ecuacin diferencial y la funcin de transferencia que tratan cada Por qu engranajes en robots? eslabn del manipulador robtico como un sistema independiente de una sola entrada/una sola salida (SISO). Se necesitan engranajes para la reducLa figura 10.14 muestra un eslabn con la inercia cin de velocidad de un motor de CD li, conectado al motor de CD a travs de un par de en- que se utiliza en robots, el cual slo granajes. La razn de radios es h: 1, es decir, se trata es eciente con altas velocidades, de 2 000 RPM o ms. de un tren de engranajes reductores. La razn de radios normal h en aplicaciones robticas est en el rango de 20 a 200 o ms. Luego se combinan las inercias del actuador (Ia) y de los engranajes (Ig) como Im = Ia + Ig. El trmino Im se llama aqu inercia del rotor. En trminos del ngulo de rotacin del motor qm, se da la ecuacin de movimiento del sistema de eslabones del actuador, por t t (10.45) Im q m + bm q m = t m l = k m ia l h h donde el par generado aplicado al rotor es tm y el par La velocidad comn de de carga es tl. La expresin para tm aportada por la una articulacin de robot ecuacin (10.42) es una funcin de la corriente ia que Alrededor de 60 rpm. fluye en el circuito del inducido y que se usa en la ecuacin (10.45). Adems, bm es el coeficiente de friccin viscosa que incluye fricciones en las escobillas y engranajes. Aadido a esto, la relacin de radios (h) causa un aumento del par de torsin que se ve en la carga y una reduccin de la velocidad de la carga, lo que proporciona t l = ht m, y q l =

qm h

(10.46)

258

CAPTULO

10

Control

ql bl

Ig

h Il tl . qm

bm Ia tm

Figura 10.14

Un eslabn conectado a un motor CD a travs del tren de engranes

donde h >> 1. Si se expresa el par de torsin de carga tl conforme a los parmetros de carga, l + blq, donde bl es la friccin viscosa en los cojinetes de car-ga, a saber, ql y bl, es decir, tl = Ilq entonces la ecuacin (10.45) se reescribe como 1 (10.47) I m q m + b m q m + ( I l q l + b l q l ) = t m = km i a h Si se usa la relacin del movimiento de motor y eslabn que se obtiene en la ecuacin (10.46), la ecuacin (10.47) puede escribirse en trminos de las variables del motor qm y tm como

FI GH

Il h2

I q + Fb JK GH
m

bl h2

Iq JK

= tm

(10.48a)

mientras que, en trminos de las variables de carga, es decir, ql y tl, lo mismo puede expresarse como (10.48b) (Il + h 2I m) q l + (bl + h 2 bm) q l = t l 2 El trmino ll + h lm se llama inercia efectiva, que se ve en el lado del eslabn de salida del engranaje. Asimismo, el trmino bl + h2bm se conoce como amortiguacin efectiva. Observe que en articulaciones de muchos engranajes, es decir, h >> 1, la inercia del rotor del motor puede ser una parte significativa de la inercia efectiva combinada. Este efecto permite la suposicin de que la inercia efectiva es una constante. Se sabe, con base en la dinmica, que la inercia del eslabn o de la carga Il de una articulacin del mecanismo en realidad vara segn la configuracin y la carga. Sin embargo, en robots de mltiples engranajes, las

10.5

Una articulacin robtica

259

variaciones representan un menor porcentaje de lo que representaran en un manipulador de accionamiento directo, es decir, h = 1. Con el fin de encontrar la representacin de la funcin de transferencia (TF) de la articulacin con el motor de CD, los engranajes y el eslabn, se escriben las ecuaciones (10.44) y (10.45) en el dominio de Laplace como (la s + ra) ia (s) = va (s) ke sqm (s) t l ( s) (Im s 2 + b ms) qm(s) = k m ia (s) h (10.49) (10.50)

donde las variables con (s) representan las transformadas de Laplace de la correspondiente funcin en el dominio del tiempo. El diagrama de bloques del sistema de actuador/articulacin se presenta en la figura 10.15. La TF de va(s) a qm(s) se obtiene con tl(s) = 0 como q m ( s) km (10.51) = s [(la s + ra ) ( I m s + bm ) + k e k m ] v a ( s) mientras que la TF del par de carga tl(s) a qm(s) se obtiene con va(s) = 0 como

q m ( s) - (la s + ra )/ h = (10.52) t l ( s) s [(la s + ra ) ( I m s + bm) + k e k m] Observe que la magnitud de esta ltima funcin de transferencia, es decir, el efecto del par de torsin de la carga sobre el ngulo del motor, se reduce por la relacin de reduccin (h). Esto tambin se seal despus de la ecuacin (10.48b). Para muchos sistemas electromecnicos, por ejemplo, los robots en estudio, se supone por lo general que la constante de tiempo elctrica dada por la /ra es mucho ms pequea que la constante de tiempo mecnica Im /bm. Por lo tanto, el orden del modelo dinmico del actuador puede reducirse en el orden por uno. Esto se realiza de la siguiente manera. Se divide el numerador y denominador de las ecuaciones (10.51) y (10.52) entre ra y se desprecia la constante de tiempo elctrica asignndola en cero. Las TF de arriba se reescriben entonces como q m ( s) q ( s) - 1/h k m / ra = ;y m = t l ( s) s ( Is + b) s ( Is + b) v a ( s)
donde I = I m ; b bm + (10.53a)

ke km ra

(10.53b)

Puesto que se supusieron tl(s) = 0 y va = 0 mientras se obtuvieron las TF de lazo abierto de las ecuaciones (10.51) y (10.52), la respuesta total del sistema de orden reducido en el dominio de tiempo se obtiene mediante la superposicin de las dos TF obtenidas por la ecuatl /h va(s) + 1 las + ra ia(s) km + 1 Ims + bm 1 s qm(s)

ke

Figura 10.15

Diagrama de bloques de un motor de CD

260

CAPTULO

10

Control

cin (10.53a). Luego se realiza la transformacin de Laplace inversa, lo que proporcionar la siguiente expresin: I q m + b q m = ua t d donde
t km v ; y td l (10.54b) h ra a En las ecuaciones (10.54a-b), b repretd senta la amortiguacin efectiva ua de la qm(s) ua 1 1 entrada de control y td, la entrada de pers Is + b + turbacin. El diagrama de bloques correspondiente se muestra en la figura 10.16. Figura 10.16 Diagrama de bloques simpli-

(10.54a)

ua

cado del motor de CD

Ejemplo 10.6

Inercia efectiva

Si la inercia del eslabn vara de 2 a 6 kg/m2, la inercia del rotor es 0.02 kg/m2 y la relacin de reduccin es de 30, entonces las inercias efectivas mnima y mxima se calculan como I mn = Il (mn) + h2 I m = 2 + (900)(0.01) = 11, donde h = 30 I mx = Il (mx) + h2 I m = 6 + (900)(0.01) = 15 Observe que la variacin de porcentaje de la inercia efectiva es slo aproximadamente 27% en comparacin con la variacin original de 67%. Esto se debe a la presencia de la relacin de radios.

10.6

Controlador de articulaciones

En esta seccin se analizarn varios controladores de retroalimentacin, a saber, proporcionales (P), proporcionales y derivativos (PD), as como proporcionales, integrales y derivativos (PID), basndose en el modelo de articulaciones desarrollado en la seccin 10.5. Inicialmente, no se supone ninguna perturbacin, es decir, td = 0, para la discusin sobre controladores P y PD, mientras que el controlador PID se introduce para rechazar la perturbacin.

10.6.1

Controlador proporcional (P)

La figura 10.17 presenta el diagrama de bloques de una articulacin robtica, ecuacin (10.54a), sin perturbacin alguna, donde qd(s) y q(s) son el ngulo de articulacin deseado y real del motor, mientras que kp es la ganancia del controlador retroalimentado . El subndice m para el ngulo del motor se abandonar de ahora en adelante. Segn la figura 10.17, la funcin de transferencia de lazo cerrado (TF) se obtiene por (10.55)

10.6

Controlador de articulaciones

261

donde wn
kp b ;y V I 2 kpI

(10.56)

Los trminos n y se conocen como frecuencia natural y amortiguacin del sistema de lazo cerrado de segundo orden que se muestra en la figura 10.17, respectivamente. El comportamiento del sistema se determina por los valores de , es decir, < 1 o subamortiguado, = 1 o crticamente amortiguado y > 1 o sobreamortiguado, como se ve en la seccin 10.2 para el sistema de masa-resorte con friccin. Observe que, segn la ecuacin (10.56), dados los parmetros de sistema I y b, pueden determinarse una frecuencia natural adecuada y la relacin de amortiguamiento mediante la seleccin de la ganancia del controlador kp. Por lo tanto, mediante el cambio de kp, puede alterarse el comportamiento del sistema dado y hacerlo subamortiguado, crticamente amortiguado o sobreamortiguado. Puesto que kp aparece tanto en la expresin de n como en la de , no pueden obtenerse los dos de manera simultnea y arbitraria. Por ende, se introduce entonces otro mtodo de control, es decir, el controlador proporcional y derivativo, donde n y pueden seleccionarse en forma arbitraria.

10.6.2

Controlador Proporcional-Derivativo (PD)

En este controlador, la ganancia se elige como kp + kvs en lugar de kp en la figura 10.17, donde kv se llama ganancia derivativa o ganancia de velocidad. Para este controlador, la TF de lazo cerrado se da como 2 kv s + kp k s /I + w n q ( s) (10.57a) = 2 = 2 v 2 q d ( s) s + 2 Vw n s + w n Is + (b + k v ) s + k p donde la frecuencia natural wn se define igual que en la ecuacin (10.56), mientras que la relacin de amortiguamiento se define como b + kv (10.57b) V kp I En este punto, tanto la frecuencia natural n como la relacin de amortiguamiento se determinan entonces por kp y kv. Puede demostrarse que si kp se aumenta, el tiempo de estabilizacin se reduce (el sistema se vuelve ms rpido), mientras que al aumentar kv, se reduce la sobreoscilacin, pero el sistema se vuelve ms lento. Por ende, mediante la eleccin correcta de los valores kp y kv, puede elegirse wn y para cumplir con los requerimientos del tiempo de estabilizacin y la sobreoscilacin. Para la amortiguacin crtica se obtiene kv = 2 kpI b. El controlador que se describi anteriormente se llama proporcional-derivaqd (s) + q (s)

kp Controlador

1 s (Is + b) Motor

Figura 10.17

Controlador proporcional de una articulacin motorizada

262

CAPTULO

10

Control
td (s)

qd (s) +

kp + kvs Controlador

1 s (Is + b) Motor

q (s)

Figura 10.18

Controlador proporcional-derivativo con perturbacin

tivo o controlador PD. Es muy verstil y se usa extensamente para el control de robots. Sin embargo, no es capaz de compensar el error de estado estable debido a las holguras o a la friccin no modelada en el sistema mecnico, entre otros factores, lo que puede modelarse como la entrada de perturbacin, es decir, td 0. Esto puede verificarse mediante la figura 10.18, donde el ngulo q se obtiene primero como kv s + kp t ( s) (10.58) q (s ) = qd (s) d P ( s) P( s) donde el polinomio caracterstico P(s) se obtiene por P(s) Is2 + (b + kv)s + kp. El error e puede entonces obtenerse como
t ( s) Is 2 + bs q (s ) + d P ( s) d P( s) Para una entrada escalonada y una perturbacin constante, es decir, cuando

e (s) = qd (s) q (s) =

(10.59a)

qd t (10.59b) ; y t d (s ) = d s s el error de estado estable ess se obtiene mediante el teorema de valor final (Ogata, 1987). Esto se obtiene por t (10.60) ess = lm e(s) = d s 0 kp Puesto que td es proporcional a la reduccin de engranaje 1/h, el error de estado estable es menor para reducciones de engranaje altas. Adems, ess puede hacerse an ms pequeo si la ganancia proporcional kp se hace grande. Sin embargo, el valor de kp no puede aumentarse a cualquier valor, ya que podr excitar la oscilacin estructural. Por lo tanto, se propone un controlador alterno con un trmino de integracin adicional.
q d (s ) =

10.6.3

Controlador Proporcional-Integral-Derivativo (PID)

Mediante el uso de un trmino de integracin con la ley de control de PD, se obtiene lo siguiente:

ki (10.61) s donde ki es la ganancia integrativa y la ecuacin (10.61) es la bien conocida ley de control PID, como se muestra en la figura 10.19. Este controlador PID puede lograr que el error de estado estable sea cero. Sin embargo,
f (s) = kp + kv s +

10.6
td (s) qd (s) + ki kp + kvs + s Controlador +

Controlador de articulaciones

263

1 s (Is + b) Motor

q (s)

Figura 10.19

Controlador proporcional-integral-derivativo

el trmino de integracin tiene que elegirse con cuidado, puesto que un ki grande puede causar la inestabilidad del sistema. Observe que con el trmino de integracin td(s) = 0, la TF del sistema de lazo cerrado se obtiene con

k v s 2 + k p s + ki q ( s) = , donde P (s) = Is 3 + (b + kv) s 2 + kp s + k i q d ( s) P ( s)

(10.62)

que es un sistema de tercer orden porque el orden ms alto del polinomio caracterstico es tres. Si se aplica un criterio de estabilidad, por ejemplo, el de Routh-Hurwitz (Ogata, 1987) al polinomio arriba mencionado, resultar que el sistema de lazo cerrado es estable si todas las ganancias kp, kv y ki son positivas; adems, (10.63) I Asimismo, el error de estado estable puede calcularse de manera parecida a las ecuaciones (10.58)-(10.60) como q (s ) = ki <
(b + k v ) k p

ki + k p s + k v s 2 st d ( s) qd (s) P ( s) P ( s) st d ( s) Is 3 + bs 2 qd (s) + P ( s) P ( s) q t st d = 0, donde qd (s) = d ; y t d (s) = d s s P ( s)

(10.64a) (10.64b) (10.64c)

e (s) = qd (s) q (s) =

ess = s lm 0 se (s) = s lm 0

Por lo tanto, el controlador PID causa que el robot alcance el objetivo deseado, incluso en presencia de una perturbacin constante.

10.6.4

Seleccin de ganancias del controlador


Frecuencia de resonancia En esta frecuencia un puente se derrumbar si se permite que haya vibracin durante algn tiempo.

Uno de los problemas principales que ocurre con mayor frecuencia en la implementacin de uno de los controladores arriba mencionados principalmente en el PID, es la eleccin de las ganancias del controlador, lo que tambin se llama sintona. Como puede verse segn la desigualdad de ecuacin (10.63), la magnitud de ki se limita por la restriccin de estabilidad. Por lo

264

CAPTULO

10

Control Efecto de las ganancias en los controladores

Tabla 10.1

Respuesta del lazo cerrado


kp kv ki

Tiempo de subida
Disminucin Cambio pequeo Disminucin

Sobreoscilacin
Aumento Disminucin Aumento

Tiempo de estabilizacin
Cambio pequeo Disminucin Aumento

Error de estado estable


Disminucin Cambio pequeo Eliminacin

tanto, una regla general de diseo comn es la de establecer primero ki = 0 y disear la ganancia proporcional y derivativa, kp y kv, respectivamente, para obtener el comportamiento transitorio deseado, es decir, tiempo de subida, tiempo de estabilizacin, etc. Tambin puede tomarse en consideracin el efecto de flexibilidad de la articulacin mientras se eligen las ganancias. Por ejemplo, suponga que kj es la rigidez efectiva de la articulacin, por lo tanto, la frecuencia de resonancia de la articulacin es wj = kj /I. Es prctica de ingeniera comn limitar wn de la ecuacin (10.56b) a no ms que la mitad de j para evitar la excitacin de la resonancia de la articulacin. Para la seleccin de kp y kv, debe recordarse que un controlador proporcional con una ganancia kp reducir el tiempo de subida y el error de estado estable, pero jams lo eliminar, mientras que un control derivativo con una ganancia kv tendr el efecto de aumentar la estabilidad del sistema, es decir, reducir la sobreoscilacin y mejorar la respuesta transitoria. Finalmente, un control integral con la ganancia ki eliminar el error de estado estable, pero podr hacer que la respuesta transitoria empeore. Estos puntos se resumirn en la tabla 10.1. Aqu se hace notar que las correlaciones sealadas en la tabla 10.1 posiblemente no sean exactas porque kp, kv y ki son interdependientes. De hecho, el cambio de una de estas variables puede cambiar el efecto de las otras dos. Por esta razn, esta tabla slo deber usarse como referencia cuando se determinan los valores de ganancia. Una vez que se hayan elegido kp y kv, se obtiene la ganancia ki mediante la ecuacin (10.63). Finalmente, puede tenerse en cuenta que no se necesita implementar los tres controladores (proporcional, derivativo e integral) en un solo sistema si no es necesario. Por ejemplo, si un controlador PI da una respuesta suficientemente buena, no es necesario implementar un controlador derivativo en el sistema. El controlador deber mantenerse lo ms sencillo posible.

Ejemplo 10.7

Respuesta de un controlador de articulacin mediante MATLAB

Para un brazo de un eslabn, se supone que I = b = 1 y la ganancia del control proporcional kp = 1. Por medio de MATLAB se obtiene la respuesta del brazo para la entrada escalonada del ngulo de articulacin deseado qd. La funcin de transferencia (TF) se evala mediante la ecuacin (10.56a), es decir,

q ( s) 1 1 = 2 , donde qd = q d ( s) s s + s+1

(10.65a)

10.6

Controlador de articulaciones

265

1.4 1.2 1

Amplitud

0.8 0.6 0.4 0.2 0 0 2 4 6 8 10 12 Tiempo(seg)

a) Controlador P 1 0.9 0.8 0.7

Amplitud

0.6 0.5 0.4 0.3 0.2 0.1 0 0 1 2 3 4 5 6 7 b) Controlador PD Tiempo(seg)

1.5

Amplitud
0.5 0

10

15

35 40 45 Tiempo(seg) c) PID controlador

20

25

30

Figura 10.20

Controladores de articulaciones para un brazo de un eslabn

266

CAPTULO

10

Control

Los comandos que se usan para obtener la respuesta son parecidos a los del ejemplo 10.5, mientras que la respuesta se muestra en la figura 10.20a). Observe el valor unitario de estado estable para la amplitud que indica el ngulo de articulacin deseado qd. Entonces, con el fin de reducir la sobreoscilacin, se introduce un control derivativo con la ganancia derivativa kv = 1. La TF correspondiente se obtiene segn la ecuacin (10.56b) como q ( s) s+1 (10.65b) = 2 q d ( s) s + 2s + 1 Para la entrada escalonada del ngulo de articulacin deseado, la respuesta se presenta en la figura 10.20b), que muestra el comportamiento asinttico para alcanzar el valor de estado estable . Adems, las otras caractersticas de la tabla 10.1, por ejemplo, la disminucin del tiempo de estabilizacin, son bastante obvias segn la figura 10.20b). Finalmente, la respuesta para el controlador PID se obtiene mediante la TF determinada, basado en el polinomio caracterstico de la ecuacin (10.62), es decir, q ( s) s2 + s + 1 (10.65c) = 3 q d ( s) s + 2s 2 + s + 1 Para ki = 1 y la entrada escalonada de qd = 1/s, la respuesta se muestra en la figura 10.20c). Observe que algunas caractersticas, por ejemplo, el aumento de sobreoscilacin, que se dan en la tabla 10.1 tambin son obvias.

10.7

Control de trayectoria no lineal

El anlisis de las secciones anteriores fue hecho con la suposicin de que la seal de referencia y la perturbacin son constantes que no se aplican para el rastreo de trayectorias de variacin de tiempo ms generales, como, por ejemplo, una trayectoria polinomial cbica que se presentar en el captulo 11. Adems, el sistema de la seccin 10.6 fue lineal, mientras que un sistema de mltiples grados de libertad es no lineal. Por lo tanto, en esta seccin se presentar un planteamiento basado en la particin de la ley de control o en un control por par de torsin computado.

10.7.1

Particin de la ley de control

En la preparacin para el diseo de leyes de control para robots de mltiples grados de libertad ms complejos, considere una estructura del controlador ligeramente diferente para el problema que se muestra en la figura 10.17. En este mtodo se realiza la particin del controlador en una parte basada en el modelo y otra parte en el servo. El resultado es que los parmetros del sistema (es decir, m, b y k en este caso) aparecen slo en la parte basada en el modelo y la parte de servo es independiente de estos parmetros. Este planteamiento se conoce como particin de la ley de control. Observe que la ecuacin de movimiento de lazo abierto para el sistema determinado, es (10.66) m x + b x + kx = f donde la parte de la ley de control basada en el modelo har uso de valores conocidos para m, b y k. Esta parte de la ley de control se organiza de tal modo que se reduce el sistema de

10.7

Control de trayectoria no lineal

267

tal forma que parece tener una masa unitaria. La segunda parte de la ley de control hace uso de la retroalimentacin para modificar el comportamiento del sistema. Puesto que la parte del modelo basada en la ley de control tiene el efecto de hacer que el sistema aparezca como una masa unitaria, el diseo de la parte de servo es muy simple. Las ganancias se eligen para controlar un sistema compuesto nicamente por una sola masa unitaria, es decir, sin friccin y sin rigidez. La parte del control basada en el modelo aparece en la ley de control como (10.67) f = af + b donde a y b son funciones o constantes y se eligen de tal modo que se considera la nueva entrada del sistema y el sistema parece ser una masa unitaria. Con esta estructura de la ley de control, la ecuacin del sistema mediante las ecuaciones (10.66)-(10.67) es como sigue: (10.68a) m x + b x + kx = a f + b Queda claro que con el fin de hacer que el sistema aparezca como una masa unitaria con como entrada, a y b se tienen que elegir como (10.68b) a = m, y b = b x + kx Mediante estas asignaciones e incorporndolas en la ecuacin (10.68a), se obtiene la siguiente ecuacin de sistema: (10.69) x = f que es la ecuacin de movimiento para una masa unitaria. Entonces se propone una ley de control para computar como f = kv x k px (10.70) (10.71) Mediante esta metodologa, el ajuste de las ganancias de control es fcil y queda independiente de los parmetros del sistema, es decir, (10.72) kv = 2 k p que debe ser vlido para la amortiguacin crtica. La figura 10.21 muestra el diagrama de bloques para el controlador particionado que se utiliza para controlar el sistema de la figura 10.7.
f m + + . bx + kx Sistema

Si se combina esta ley de control con la ecuacin (10.69), se obtiene x + k v x + kpx = 0

? kp

f9 kv

x . x

Figura 10.21

Un sistema de control de lazo cerrado con control particionado

268

CAPTULO

10

Control

Ejemplo 10.8

Control particionado para un bloque

Si los parmetros del sistema de la figura 10.7 son m = 1, b = 1 y k = 1, se determinan a, b y las ganancias kp y kv para una ley de control de regulacin de posicin que resulta en el amortiguamiento crtico del sistema con una rigidez de lazo cerrado de 16.0, es decir, kp = 16. Suponga que elegimos (10.73) a = 1, y b = x + x de tal modo que el sistema aparezca como una masa unitaria segn la entrada . Luego establecemos la ganancia kv = 2 kp para el amortiguamiento crtico, lo que resulta en kp = 16.0 y kv = 8.0.

10.7.2

Control de trayectoria del bloque

Considerando la figura 10.7, en lugar de simplemente mantener este bloque en una ubicacin deseada, vamos a mejorar el controlador de tal modo que pueda lograrse que el bloque siga una trayectoria. La trayectoria se define como una funcin de tiempo, por ejemplo, xd(t) que especifica la ubicacin deseada del bloque. Suponga que la trayectoria es continua (es decir, que existen las primeras dos derivadas) y que el generador de trayectorias proporciona xd, x d y x d para cualquier tiempo t. El servo-error entre la trayectoria deseada y la real se define por e = xd x. Una ley de control de servo que entonces genera la trayectoria que se va a seguir se obtiene por (10.74) f = x d + kv e + kpe Al combinar las ecuaciones (10.69) y (10.74) se obtiene

x = x d + kv e + k p e
o

(10.75)

(10.76) e + kv e + kp e = 0 sta es una ecuacin diferencial de segundo orden para la que pueden elegirse los coeficientes con el fin de obtener cualquier respuesta (frecuentemente la opcin que se elige es el amortiguamiento crtico). Una ecuacin de este tipo se escribe en el espacio del error, ya que describe la evolucin de los errores en relacin con la trayectoria deseada. La figura 10.22 muestra un diagrama de bloques de un controlador que sigue una trayectoria.
.. xd f9 + kv . e + xd + e f + . bx + kx

+ + kp

Sistema

. xd

Figura 10.22

Un controlador de trayectoria para el sistema que se presenta en la gura 10.7.

10.7

Control de trayectoria no lineal

269

Si el modelo es perfecto (es decir, m, b y k no estn completamente definidos) y si no hay ruido ni error inicial, el bloque seguir precisamente la trayectoria deseada. Si existe un error inicial, se suprimir de acuerdo con la ecuacin (10.76), y posteriormente el sistema seguir con precisin la trayectoria deseada.

10.7.3

Control no lineal de un robot

En esta subseccin se extender el control de trayectoria del bloque a un robot de mltiples grados de libertad (DOF). Cabe sealar que el manipulador robtico de mltiples DOF, a diferencia de una articulacin de un solo DOF como la de la seccin 10.6, es un sistema no lineal. Sin embargo, visto que la mayora de los robots industriales tienen una relacin de radios alta, Qu es no lineal? se supone que su dinmica de articulaciones es lineal e independiente. Por lo tanto, el mtodo de control lineal Los coecientes de las ecuaciones didesarrollado para la articulacin sencilla se aplica en ferenciales que representan la dinforma independiente a todas las articulaciones de un mica del robot son funciones de las variables de control y sus derivadas. robot. Este mtodo de control podr funcionar razoEn el caso de sistemas lineales, estos nablemente bien en muchas aplicaciones industriales, coecientes son constantes. pero no funciona bien si se le compara con un mtodo de control no lineal. En particular, no puede garantizarse el amortiguamiento crtico o el mismo tiempo de estabilizacin de manera uniforme en cada punto del espacio de trabajo para todas las articulaciones. Tampoco es posible analizar y pronosticar el desempeo exacto de un mtodo de PD o PID para el robot no lineal. En este control se supone que el sistema es lineal y la inercia de los eslabones es constante. Sin embargo, en el captulo 8 se observ que la matriz de inercia depende de la configuracin del robot. Adems, existen trminos de Coriolis y centrfugos no lineales. Un mtodo de control lineal, cuando se utiliza en un robot no lineal, no se desempea de manera uniforme en cada punto del espacio de trabajo de un robot. Por ende, se presentar a continuacin un mtodo de control avanzado que se basa en la particin de la ley de control que ofrecer un desempeo mucho mejor en comparacin con el mtodo de control lineal. Sin embargo, muchos otros controles existen en la literatura, por ejemplo, en Canadus de Wit et al. (1996), que el lector podr consultar. Aqu, el controlador no lineal cancela las no linealidades en el modelo dinmico del robot que se va a controlar, como se hizo en la subseccin 10.7 para el bloque. Como resultado, se obtiene un conjunto de ecuaciones lineales desacopladas. Uno de estos controladores basados en el modelo se llama control de par de torsin computado. Observe que el modelo dinmico de un robot de n DOF puede expresarse segn la ecuacin (8.44) como Iq + h + g = t (10.77)

donde la matriz de inercia generalizada I de n n se define en la ecuacin (8.33) y los vec es el tores n-dimensionales h, f y s se definen segn la ecuacin (8.44a), mientras que vector n-dimensional de las aceleraciones de las articulaciones. El paso clave en el control no lineal de un sistema robtico complejo es el uso del concepto de la particin de la ley de control, como se mencion anteriormente. Supngase que la salida del controlador puede escribirse como (10.78a) t = At + b

270

CAPTULO

10

Control

(10.78b) La sustitucin de las ecuaciones (10.78a-b) en la ecuacin (10.77) proporciona lo siguiente: (10.79) t = q Esta ecuacin puede verse como un sistema de inercia unitaria con una nueva entrada t. De alguna manera se cancelan las no linealidades en el modelo de dinmica no lineal original del sistema. Cuando se elige la matriz A y el vector a de manera adecuada, se transforma el sistema no lineal en un sistema lineal. Entonces puede aplicarse un controlador PD, similar al bloque de la ecuacin (10.74), al sistema de inercia unitaria como t = q d + K v e + Kp e (10.80a) donde e = pd p, y Kp y Kv son las matrices diagonales de n n. Mediante la sustitucin de la ecuacin (10.80a) en la ecuacin (10.79), se obtiene e + K v e + K pe = 0 (10.80b) La ecuacin vectorial arriba sealada es la ecuacin desacoplada de error n escalar que corresponde a las n articulaciones del robot. Si se establecen los elementos de las matrices Kp y Kv, puede entonces lograrse el desempeo crtico o sobreamortiguado en cada punto del espacio de trabajo del robot. El mtodo de control propuesto que se describe arriba utiliza una linealizacin por retroalimentacin en contraste con la linealizacin de un sistema no lineal donde se elige un punto de operacin alrededor del cual se realiza la linealizacin. Por lo tanto, este ltimo se linealiza en un punto del espacio de trabajo y no en el control no lineal basado en la ley de control particionada. Un diagrama de bloques de este control se presenta en la figura 10.23. Puede verse que el controlador tiene dos partes, a saber: 1) una parte accionada por el error que computa t basado en la ley de control PD o PID que se presenta en las subsecciones 10.6.2 y 10.6.3, respectivamente; y 2) una parte basada en el modelo donde se computan A y a.

donde la matriz A de n n y el vector n-dimensional se eligen como A = I, y b = h + g

10.8

Representacin de estado-espacio y control

Sistemas complejos tienen mltiples entradas y mltiples salidas, o sistemas MIMO. Estos sistemas pueden ser lineales o no lineales y con o sin variacin en el tiempo, como se indic an.. d s9 + Kv . e + d + e s + h+f

+ + Kp

Robot

. d

Figura 10.23

Controlador de seguimiento de trayectorias para el robot

10.8

Representacin de estado-espacio y control

271

teriormente. ste es un planteamiento muy potente para tratar estos sistemas es el de estado-espacio. Este enfoEstado-espacio que se basa en el concepto del estado. Se define como el conjunto de variables ms pequeo (las llamadas va- Un estado-espacio de un sistema diriables de estado), de tal modo que el conocimiento de nmico se forma como una grca de sus variables de control y sus deriestas variables en t = t0, junto con el conocimiento de la entrada para t t0, determina por completo el compor- vadas, gracadas contra los ejes que representan las variables y derivadas tamiento del sistema en cualquier t t0. ya mencionadas. En una representacin de estado-espacio de un sistema dinmico, se ocupan de tres tipos de variables, a saber, variables de entrada, de salida y de estado. Observe que la representacin de estado-espacio de un sistema de control no es nica, excepto cuando el nmero de variables es el mismo para cualquiera de las diferentes representaciones de estado-espacio del mismo sistema. Normalmente, la representacin del estado-espacio de un sistema de variacin de tiempo no lineal puede darse como (10.81) x = f (x, u, t); y y = g (x, u, t) donde el vector x de 2n dimensiones se llama vector de estado para un sistema regido por n ecuaciones diferenciales de segundo orden, mientras que u es el vector de entrada r-dimensional y t es el tiempo. Adems, y es el vector de salida de m dimensiones, y f y g son las funciones de vectores de 2n y m dimensiones respectivamente Si el sistema es lineal, puede modificarse la ecuacin (10.81) como (10.82) x = Ax + Bu; y y = Cx + Du donde la matriz A de 2n 2n es la matriz de estado, la matriz B de 2n r es la matriz de entrada y la matriz C de m 2n es la matriz de salida. Para un sistema no lineal, puede linealizarse la ecuacin (10.81) alrededor de un estado operativo, para obtener as la ecuacin resultante en la forma de la ecuacin (10.82). Observe que para el sistema de entrada sencilla y salida sencilla (SISO), puede calcularse la funcin de transferencia (TF) segn la representacin del estado-espacio, por ejemplo, la ecuacin (10.82) nuevamente, donde los vectores y y u son escalares, denotados por y y u, respectivamente. Para ello, las transformadas de Laplace de la ecuacin (10.82) con condiciones iniciales iguales a cero se expresan como sx (s) = Ax (s) + Bu (s) (10.83a) (10.83b) y (s) = Cx (s) + D u (s) Si se resuelve para x(s) segn la ecuacin (10.83a) y se sustituye en la ecuacin (10.83b), se obtiene la relacin entre la salida y(s) con la entrada u(s), es decir, y (s) = [C (s I A) 1 B + D] u (s) Por lo tanto, la TF definida por G(s) se extrae de la ecuacin (10.84a) como G (s) = (10.84a)

y ( s) (10.84b) = C (s I A) 1 B + D u ( s) Observe que el lado derecho de la ecuacin (10.84b) involucra a (s1 A)1. Por ende, G(s) puede escribirse como q ( s) (10.84c) G (s) = | sI - A |

272

CAPTULO

10

Control

donde q(s) es un polinomio en s, y s1 A representa el determinante de la matriz (s1 A), que es igual al polinomio caracterstico de G(s). En otras palabras, los valores propios de A son idnticos a los polos de G(s). Por otra parte, dada una funcin de transferencia, tambin puede obtenerse la representacin de estado-espacio tomando una transformacin de Laplace inversa de la expresin para la salida, y relacionando la TF y la entrada, como se ilustra en el ejemplo 10.9.

Ejemplo 10.9

Representacin estado-espacio de un bloque

Considere el movimiento del bloque en la figura 10.6, cuya nica ecuacin dinmica de movimiento se obtiene por la ecuacin (10.30a). Se define lo siguiente: (10.85a) x1 = x; y x2 = x Luego, la ecuacin (10.30a) puede expresarse como k b 1 (10.85b) x 1 = x 2; y x 2 = m x 1 m x 2 + m f donde la salida y puede darse por y = x1 (10.85c) Las ecuaciones arriba sealadas (10.85b-c) se ponen entonces en forma de matriz/vector como (10.86a) x = Ax + Bu; y y = Cx + Du donde 0 0 1 x1 x ;A k b ; B 1 ; u f; C [1 0]; D = 0 (10.86b) x2 m m m En las ecuaciones (10.86a-b), el vector bidimensional x es el vector de estado, la matriz A de 2 2 es la matriz de estado, mientras que las matrices B y C de 2 1 y 1 2, respectivamente, son las matrices de entrada y salida del bloque en estudio. Adems, el vector de salida y y la matriz de transmisin directa D son escalares.

LM OP N Q

LM MN

OP PQ

LM OP MN PQ

Ejemplo 10.10
Y t q X a g

Estado-espacio de un robot de DOF = 1


Considere el brazo robtico con DOF = 1 cuya masa, sin prdida de ninguna generalidad, se supone que se concentra al final del eslabn sin masa de longitud l, como se muestra en la figura 10.24. El par de torsin t y la gravedad g que est actuando hacia abajo tambin se muestran en la figura. Observe que sin ningn par de torsin externo t, es decir, t = 0, el sistema es un simple pndulo. Se da entonces la ecuacin de movimiento para el brazo con DOF = 1 por

Figura 10.24 Brazo de un robot de DOF = 1

10.8

Representacin de estado-espacio y control

273

g t (10.87) sen q = a ma 2 La ecuacin (10.87) es una ecuacin diferencial no lineal debido a la aparicin de la funcin sen. Puesto que esto es un sistema de segundo orden, se necesitan dos variables de estado, a saber,

ma2 q = t mga sen q, o q +

x1 = q, y x2 = q Luego se obtiene lo siguiente:

(10.88)

g t (10.89) sen x1 2 a ma Puesto que no hay entrada u, y se obtiene por y = q = x1 (10.90) Aunque es difcil que una ecuacin general no lineal exprese la forma de estadoespacio de la ecuacin (10.82), es posible para este pndulo, donde los vectores y matrices asignados son los siguientes:

x 1 = x 2; y x 2 =

En la ecuacin (10.91a), si el ngulo q se limita a ser pequeo, entonces el sistema puede linealizarse. Para un ngulo pequeo q, se sabe que sen q = sen x1 x1. Por lo tanto, la representacin de estado-espacio del modelo linealizado, donde slo la matriz A ha cambiado, A

0 LM x OP ; A LM g sen x Nx Q MN- a x
1 2 1

OP 1 0P ; B = ma Q
1

; u t; C [1 0]; D = 0

(10.91a)

LM 0g MN- a

1 0

OP PQ

(10.91b)

Ejemplo 10.11

Funcin de transferencia a partir de la representacin de estado-espacio

Considere el movimiento del bloque de la figura 10.6, para el cual se da la representacin de estado-espacio en las ecuaciones (10.86a-b). Para encontrar la TF segn la ecuacin (10.86b), la matriz s1 A se evala primero como
-1 (10.92a) b s+ m Entonces es fcil encontrar la matriz inversa de 2 2 en la ecuacin (10.92a) como

s1 A =

LMs 0OP LM 0k N0 sQ MN- m


1

1 b m

OP = LM ks PQ MN m

OP PQ

(s1 A)

1 = b k s2 + s + m m

LMs + b MM - km N m

OP P sP Q

(10.92b)

274

CAPTULO

10

Control

Finalmente, la ecuacin (10.84b) proporciona lo siguiente: b s+ 1 0 1 1 m G (s) = [1 0] 1 +0= 2 b k k s ms + bs + k s2 + s + m m m m

MM MN

PP LM PQ MN

OP PQ

(10.92c)

Ejemplo 10.12

Representacin de estado-espacio a partir de una funcin de transferencia determinada

Dada la funcin de transferencia del brazo robtico con DOF = 1, su representacin de estado-espacio puede escribirse segn la primera TF de la ecuacin (10.53a), es decir, q ( s) K (10.93a) G (s ) = m = va ( s) s (Ts + 1) donde K km /rab y T I/b es la constante de tiempo del sistema. Segn la ecuacin (10.93a) puede escribirse lo siguiente: (10.93b) Tomando la transformada de Laplace inversa de la ecuacin (10.93b), se obtiene la ecuacin en el dominio de tiempo como (10.93c) Puesto que la ecuacin (10.93c) es una ecuacin diferencial de segundo orden, se requieren las dos variables de estado, a saber, x1 y x2, que se definen como (10.94a) Esto proporciona la representacin estado-espacio de la dinmica de una sola articulacin como (10.94b) x = Ax + b u, y y = c T x donde u, los vectores bidimensionales x, b, c y la matriz A de 2 2 se presentan como sigue: 0 0 1 x1 1 1 ; b K ; u = va; y c x ;A (10.94c) 0 x2 0 T T x1 = qm, y x2 = q m T q m + q m = Kva s2Tqm (s) + sq m (s) = Kva (s)

LM OP N Q

LM MN

OP PQ

LM OP MN PQ

LM OP NQ

10.8.1

Control retroalimentado basado en estado-espacio

Para un robot de mltiples DOF cuya dinmica se rige por la ecuacin (10.77), la representacin estado-espacio en forma de la ecuacin (10.81) puede darse de la siguiente manera: x

LMx OP ; f LM Nx Q N I
1 2

-1

x2 , y g x1 (t - h - g )

OP Q

(10.95)

10.8

Representacin de estado-espacio y control

275

donde x1 = p, parecido al pndulo, pero es un vector n-dimensional para el robot de n DOF, mientras que x es el vector de estado de 2n dimensiones. Si la ecuacin de movimiento se obtiene por la ecuacin (10.77) y linealizada alrededor de cualquier punto operativo, entonces la ecuacin (10.95) puede tener la representacin estado-espacio que se muestra en la ecuacin (10.82). Si se considera cada articulacin del robot como independientemente controlada, como se mencion en la subseccin 10.5.2, entonces la representacin estado-espacio de cada articulacin se obtiene por las ecuaciones (10.82) y (10.94b), para la que puede darse un control retroalimentado lineal mediante u (t) = kTx + qd (10.96) donde cada elemento de k son ganancias constantes por determinarse, y qd es una entrada de referencia o deseada. Al sustituir la ecuacin (10.96) en la ecuacin (10.94b), se obtiene (10.97) x = (A bk T) x + bqd lo que demuestra que el control lineal retroalimentado tiene como efecto cambiar los polos del sistema que se determinaron por A a los que se determinan por (A bkT). En la ecuacin (10.96), el control se determina como una combinacin lineal de los estados del sistema que, en este caso, son la posicin del motor y la velocidad. Si se compara esto con el control PD o PID, como se presenta en la subseccin 10.6.2 y en la 10.6.3, respectivamente, lo que tambin es una funcin de la posicin del motor y la velok cidad, no se obtiene ninguna ventaja. Sin embarIm Il ql u, qm go, para un sistema de mayores dimensiones, por bm bl ejemplo, una articulacin cuya flexibilidad se est tomando en cuenta, como se muestra en la figura Figura 10.25 Articulacin sencilla 10.25, puede comprobarse que la retroalimentacon exibilidad cin estado-espacio ser una ventaja. Observe que la flexibilidad de la articulacin puede ocurrir por muchas razones. Por ejemplo, la flexibilidad torsional de los engranajes, el balanceo de la flecha, la deformacin del cojinete, etc., pueden contribuir considerablemente a la flexibilidad en las articulaciones. Si se escribe su modelo dinmico, resultarn dos ecuaciones diferenciales de segundo orden, correspondientes a sus dos DOF, es decir, qm y ql, que corresponden a las rotaciones del motor y del eslabn o de la carga, respectivamente. En este tipo de sistema, si los coeficientes de amortiguacin bm y bl son pequeos, lo que frecuentemente es el caso en muchos robots industriales, es difcil controlar el sistema, ya que dos de los cuatro polos estn situados en el origen, mientras que los otros dos se encuentran en el eje imaginario. Suponga que el control PD tradicional de la subseccin 10.6.2 est implementado para controlar la articulacin flexible; entonces el cmputo de sus dos ganancias dependera de que se hayan colocado los sensores de posicin y velocidad en el eje motriz o en el eje del eslabn, es decir, el controlador PD es una funcin de las variables del motor o de las variables de la carga. En este tipo de control puede demostrarse (Spong et al., 2006) que el sistema es inestable para una ganancia proporcional grande. Alternativamente, si se aplica el control retroalimentado de estado de la forma dada por la ecuacin (10.96), es posible lograr un rango mucho ms grande de polos de lazo cerrado, lo que logra la estabilidad del sistema. Esto es posible porque hay cuatro parmetros de ganancia en la ecuacin (10.96) que corresponden al vector de estado x de 4 dimensiones, es decir, ngulo del motor, velocidad del motor, ngulo de la carga y velocidad

276

CAPTULO

10

Control

de la carga, que pueden ser medidos si se colocan sensores apropiados en los ejes del motor y de la carga. La ganancia k, a diferencia del control tradicional PD, donde las dos ganancias son funciones de la posicin y velocidad del motor o de la posicin y velocidad de la carga, es una funcin de esas cuatro dimensiones. Por lo tanto, mediante la retroalimentacin de estado hay ms parmetros libres para obtener la estabilidad. Sin embargo, problemas como la posibilidad de control y observacin son tambin importantes, ya que determinan el xito de la ley de control retroalimentado del estado.

10.9

Estabilidad

Al principio de este captulo se determin de forma analtica la estabilidad de un sistema de control lineal Estabilidad en trminos del amortiguamiento, como se muestra en los ejemplos 10.1-10.3. El desempeo de estos sistemas Estabilidad signica que un sistema durante el comportamiento transitorio tambin se pre- no divergir de su posicin deseada. Por ejemplo, un baln que se mantiesent en la seccin 10.4. Los mismos anlisis son vlidos ne dentro de un cuenco es estable, para un sistema no lineal que se desacopla y linealiza pero ser inestable cuando se invierta por medio de un controlador basado en modelos, como el cuenco. se present en la seccin 10.7, porque el sistema general nuevamente es lineal. Sin embargo, cuando no se realiza el desacoplamiento y la linealizacin, o si quedan incompletos o inexactos, el sistema general de lazo cerrado permanece no lineal. Para sistemas no lineales, puede realizarse el anlisis de estabilidad y desempeo mediante el anlisis de estabilidad de Lyapunov o segundo mtodo de Lyapunov.

10.9.1

El mtodo de Lyapunov

Una caracterstica interesante de este mtodo de estabilidad es que puede concluirse sin resolver la ecuacin diferencial que rige el sistema. Sin embargo, el mtodo no proporciona ninguna informacin sobre la respuesta transitoria o sobre el desempeo del sistema, por ejemplo, si se sobreamortigua o subamortigua o cunto tiempo se tardar en suprimir una perturbacin. No obstante, es importante diferenciar la estabilidad del desempeo porque un sistema estable podr tener un desempeo de control poco satisfactorio. Para explicar el mtodo de Lyapunov, considere el sistema no lineal que se describe mediante un conjunto de ecuaciones diferenciales dado por (10.98) x = f (x ) donde x es un vector de estado n-dimensional como se introdujo en la seccin 10.8 y f(x) es la funcin vectorial n-dimensional. Observe que cualquier ecuacin diferencial de orden mayor siempre puede escribirse como un conjunto de ecuaciones de primer orden en la forma de la ecuacin (10.98). Vea los ejemplos 10.9 y 10.10 para los sistemas de segundo orden. Para demostrar que un sistema es estable mediante el mtodo de Lyapunov, se necesita lo siguiente: 1. Proponga una funcin de energa generalizada v(x) que se llama funcin de Lyapunov, cuyas primeras derivadas parciales sean continuas y v(x) > 0 para todos los x, excepto v(0) = 0. 2. Evale la primera derivada respecto al tiempo de v(x).

10.9

Estabilidad

277

3. Verifique si v (x) 0. Aqu, v (x) implica el cambio de v(x) respecto al tiempo a lo largo de todas las trayectorias del sistema. La idea es que una funcin tipo energa positiva definitiva del estado demuestre que siempre disminuye o permanece constante. Por lo tanto, el sistema es estable en el sentido que el tamao del vector de estado se limite. Cuando v (x) es estrictamente menos que cero, el estado converge en forma asinttica hacia el vector cero. Sin embargo, para v (x) 0, es decir, cuando v (x) desaparece en algunos lugares de la trayectoria, LaSalle y Lefschetz (1961) demostraron que el sistema an puede ser asintomticamente estable en ciertas situaciones. Observe que el mtodo de Lyapunov puede aplicarse igualmente a sistemas lineales. La principal dificultad de ese mtodo, sin embargo, es la eleccin de la funcin de Lyapunov, v(x). En muchas aplicaciones es fcil adivinar, pero obtener v(x) para un sistema complejo es difcil, ya que no hay ningn mtodo estndar para conformarlo.

Ejemplo 10.13

Estabilidad del bloque

Considere el bloque de la figura 10.2, cuya ecuacin rectora es la ecuacin (10.1), es decir, (10.99) m x + b x + kx = 0 La energa total del sistema, incluida la energa cintica debida a la velocidad del bloque x , ms la energa potencial debida a la deflexin del resorte x, es decir, 1 1 (10.100) v = m x 2 + kx 2 2 2 donde el primer trmino en la ecuacin (10.100) representa a la energa cintica y el segundo a la potencial. Observe que el valor de v es siempre no negativo, como lo requiere el paso 1 del mtodo de estabilidad de Lyapunov que se explic arriba. La razn de cambio de v se obtiene entonces mediante la diferenciacin de la ecuacin (10.100), es decir, (10.101a) v = m x x + kx x Si se sustituye la ecuacin (10.99) para mx en la ecuacin (10.101a), se obtiene (10.101b) v = b x2 que siempre es no positivo, ya que b > 0. De este modo, la energa siempre est saliendo del sistema, a menos que x = 0. Esto implica que un bloque inicialmente desplazado perder energa hasta que se detenga. Un anlisis de estado estable del sistema en la posicin de reposo revela que kx = 0, garantizando que x = 0. Por lo tanto, el bloque inicialmente en reposo llegar eventualmente a descansar.

Ejemplo 10.14

Estabilidad de un robot con DOF = 1

Para verificar la estabilidad de un brazo robtico con DOF = 1 como el que se presenta en la figura 10.23, con q = 0 cuando no hay ningn par de torsin externo actuando, es decir, t = 0, considere la siguiente funcin de Lyapunov: v=
1 ma2 x 2 2 + mga (1 cos x1) 2

(10.102)

278

CAPTULO

10

Control

en la que x1 y x2 son las variables de estado definidas en el ejemplo 10.10. Adems, la ecuacin (10.102) representa la energa total del sistema, que siempre es ms grande que cero, y que es cero cuando desaparece la variable de estado, es decir, x1 = x2 = 0. Observe que el segundo trmino, es decir, la energa potencial, se calcula sobre la base de una energa potencial cero en x = a. Luego se obtiene la derivada respecto al tiempo de la ecuacin (10.102) como

v = ma2 x 2 x2 + mga sen x1 x2 (10.103) La ecuacin (10.103) es cero para la condicin de equilibrio del eslabn, es decir, = 0 o, en trminos de las variables estado-espacio, x1 = x2 = 0. Puesto que v no q=q es menos que cero, la estabilidad asinttica no puede garantizarse.

Ejemplo 10.15

Estabilidad de un robot con DOF = 1 con control PD

Suponga que el robot con DOF = 1 del ejemplo 10.14 est bajo el control PD, es decir, la salida del actuador se obtiene por t = kpx1 kvx2. Los trminos kp y kv son las ganancias proporcionales y derivativas, respectivamente, que siempre son positivas. Ahora vamos a definir la funcin de Lyapunov como 1 1 (10.104) v = ma2 x 2 k x2 2 + mga (1 cos x1) + 2 2 p 1 Mediante la diferenciacin de la ecuacin (10.104) respecto al tiempo, se obtiene (10.105a) v = ma2 x2 x 2 + mga sen x1 x 2 + kp x1 x2 Si se sustituye para x 2 de la ecuacin (10.89) en la ecuacin (10.105a), se obtiene la expresin para v como (10.105b) v = kv x 2 2 lo que garantiza la estabilidad asinttica, ya que kv > 0.

10.9.2

Estabilidad del robot con mltiples DOF

Para un robot de mltiples DOF que sigue una trayectoria, la estabilidad puede comprobarse mediante el mtodo de Lyapunov para un controlador PD mientras que la matriz de ganancia derivativa Kv sea una definitiva positiva. Para demostrarlo, considere las ecuaciones dinmicas de movimiento para el robot de mltiples DOF dadas en la ecuacin (10.77). El correspondiente control PD puede darse mediante t = K pe K v q + g (10.106) donde e = pd p, y Kp y Kv son las matrices de ganancia diagonales que son definitivas positivas. Mediante esta ley de control, se obtiene el sistema de lazo cerrado segn la ecuacin (10.77) como I q + h + Kv q = K pe (10.107) Considere la funcin de Lyapunov como 1 1 (10.108) v = q T I q + e T Kpe 2 2

10.10

Controles cartesianos y de fuerza

279

La funcin v en la ecuacin (10.108) siempre es positiva o cero porque la matriz de inercia del robot I y la matriz de ganancia de posicin Kp son matrices positivas definitivas. Si se diferencia la ecuacin (10.108) respecto al tiempo, se obtiene 1 (10.109a) v = q T I q + q T I q eT K p q 2 Usando la ecuacin (10.107), la ecuacin (10.109 a) se reescribe como 1 v = q T K v q + q T ( I 2C) q (10.109b) 2 donde h Cp se sustituye, como se seala despus de la ecuacin (8.44a), I es la derivada de tiempo de I y C es la matriz de trminos de inercia convectiva. Observe que, como se 2C es antisimtrica y, por lo tanto, causa que el muestra en el ejemplo 8.5, la matriz I T trmino p (I 2C) p desaparezca. Por ende, la ecuacin (10.109b) lleva a

v = q TKv q (10.109c) que es no positiva mientras que Kv sea positivo definitivo. Sin embargo, esto no garantiza de forma automtica la estabilidad asinttica, an as, LaSalle y Lefschetz (1961) demostraron que el sistema logra la estabilidad global asinttica.

10.10

Controles cartesianos y de fuerza

En los mtodos de control que se presentaron anteriormente, se supuso que la trayectoria deseada eran historiales de tiempo de posiciones de articulaciones, velocidades y aceleraciones, y el esfuerzo correspondiente eran pares de torsin de las articulaciones. En un robot, sin embargo, es el efector final el que realmente realiza el trabajo o interacta con su ambiente. Por ende, es ms natural especificar el movimiento del robot en trminos de la posicin y orientacin del efector final y sus velocidades y aceleraciones, o las correspondientes fuerzas y momentos que actan en consecuencia. Observe aqu que el movimiento del efector final de un robot se logra mediante el control de un conjunto de movimientos de las articulaciones, como tambin se sealaba en el captulo 5, porque los robots estn diseados de esta manera. Por lo tanto, las especificaciones de los movimientos de las articulaciones se usan para controlar el robot. En caso de que se desee especificar los movimientos cartesianos junto con las fuerzas y momentos que estn actuando sobre el efector final, el controlador deber tener la capacidad de hacer la transformacin necesaria desde el espacio cartesiano del efector final al espacio de las articulaciones, de tal modo que se comuniquen las seales apropiadas a los actuadores de las articulaciones. En este contexto, se resumir a continuacin los mtodos que se presentan en la literatura. Puesto que estos algoritmos no se usan extensamente o a veces se usan de manera muy simplificada en robots industriales, se evitarn sus detalles. Para la lectura adicional sobre estos temas se recomienda que los lectores consulten a Craig (1989), Mittal y Nagrath (2003), Ghosal (2006), Spong et al. (2006) y otros.

10.10.1

El control cartesiano

En este control, dada la posicin y orientacin cartesiana as como las primeras dos derivadas, un planteamiento es usar la cinemtica inversa para posicin, velocidad y aceleracin con el fin de obtener la posicin, velocidad y aceleracin de la articulacin, y usar uno de

280

CAPTULO

10

Control
Posicin, velocidad y aceleracin deseadas de la articulacin

Posicin, velocidad y aceleracin deseadas del efector final

Cinemtica inversa para posicin, velocidad y aceleracin

Control del robot basado en el movimiento de la articulacin

Figura 10.26

Un control cartesiano que usa la cinemtica inversa y un controlador de movimiento de la articulacin

los planteamientos de control de articulaciones que se presentan en las secciones 10.3, 10.6 y 10.8, respectivamente. Esto se presenta en la figura 10.26. La conversin de trayectoria es bastante compleja y consume mucho tiempo. Por lo tanto, en muchas ocasiones slo se ejecuta la cinemtica inversa para la posicin para obtener los movimientos de articulacin deseados, los que luego son numricamente diferenciados para obtener las velocidades y aceleraciones de articulaciones. Esta diferenciacin numrica tiende a amplificar el ruido, lo que conduce a otras dificultades del control. Una manera alternativa de evitar las dificultades que se mencionan arriba, es decir, el ruido numrico, etc., es el uso de un algoritmo de cinemtica directa, como el que se presenta en el captulo 6, para convertir las trayectorias reales de articulaciones disponibles de los sensores de articulaciones en las trayectorias del efector final, y aplicar una ley de control para obtener las fuerzas y momentos que van a ser aplicadas al efector final. Estas fuerzas y momentos de control se transforman luego en los pares de torsin de los actuadores de articulaciones necesarios mediante la premultiplicacin de las cantidades anteriores por la transposicin de la matriz jacobiana calculada en el captulo 6. La correlacin entre las fuerzas y momentos del efector final se obtienen en el captulo 7. Este mtodo se presenta en la figura 10.27.

10.10.2

Control por fuerza

En aplicaciones donde el efector final tiene que aplicar una fuerza controlada, por ejemplo, en un vidrio que es limpiado por un robot, los mtodos de posicin y control que se presentaron en las secciones anteriores no sern apropiados, a menos que la herramienta en el efector final, por ejemplo, una esponja, sea suficientemente suave. Si el efector final es rgido, por ejemplo, una herramienta de rasgado, entonces cualquier incertidumbre en la posicin de la superficie de vidrio o el error posicional en el efector final causar que se rompa el vidrio o que el rascador ni siquiera toque el vidrio. En tales situaciones deber especificarse la fuerza, y no la posicin, para obtener un desempeo satisfactorio del robot. De hecho, es ms realista usar un controPosicin, velocidad y aceleracin deseadas del efector final + Ley de control de la trayectoria cartesiana Fuerzas y momentos de control Par de torsin de control de la articulacin Posicin, velocidad y aceleracin real de la articulacin

Errores

JT

Robot

Posicin, velocidad y aceleracin real del efector final

Cinemtica directa

Figura 10.27

Un control cartesiano que usa la cinemtica directa

Resumen

281

Trayectoria cartesiana real Trayectoria deseada del efector final Ley de control de trayectoria cartesiana S

Cinemtica directa

Trayectoria real de la articulacin

Fuerzas y momentos + de control +

Fuerzas y momentos deseados del efector final

Ley de control de fuerzas

S9

Pares de torsin de Robot JT control de las articulaciones Fuerzas y momentos de articulacin real

Figura 10.28

Controlador hbrido de posicin/fuerza

lador hbrido de posicin/fuerza donde ambos controladores de posicin y fuerza se utilicen basados en los requerimientos de la tarea. Por ejemplo, un robot que depende del ancho de la esponja podr limpiar cierta anchura del vidrio para luego tomar una posicin en el vidrio con el fin de limpiar la siguiente anchura del vidrio. Mientras toma la siguiente posicin, el robot se est moviendo en un espacio libre sin ninguna necesidad de aplicar fuerza. Por lo tanto, un controlador de posicin ser suficiente. En efecto, la tarea del robot se subdivide en varias subtareas. Una tpica ilustracin de un controlador hbrido de posicin/fuerza se presenta en la figura 10.28, donde S y S son matrices diagonales que actan como modo de cambio de estado para decidir si el controlador de posicin o el de fuerza est en accin. Observe que cuando el efector final del robot est en contacto con la superficie, surgen ciertas restricciones naturales. Se trata de las siguientes: 1. Cuando un robot est en contacto con una superficie, no la puede atravesar. Por ende, existe una restriccin de posicin natural. 2. Si la superficie que se va a contactar es sin friccin, el robot tampoco puede aplicar ninguna tangente de fuerza a la superficie. Por ende, existe una restriccin de fuerza natural. Cuando dos superficies estn en contacto, las restricciones naturales arriba mencionadas pueden especificarse como la restriccin de posicin a lo largo de la normal a la superficie, mientras que la restriccin de fuerza puede disearse a lo largo de la tangente a la superficie. Estos dos tipos de restricciones, fuerza y posicin, segmentan los grados de libertad de posibles movimientos del efector final en dos conjuntos ortogonales que deben ser controlados segn diferentes criterios. Adems, cualesquiera otras variables de fuerza y posicin que puedan ser controladas durante el movimiento se llaman restricciones artificiales.

RESUMEN
En este captulo se presentan los algoritmos para el control de movimiento de robots. Se analizan controles tanto lineales como no lineales. Tambin se presenta el aspecto de estabilidad de un algoritmo de control. Finalmente, para completar el tema, se introduce el control por trayectoria cartesiana y fuerza. Se ofrecen varios ejemplos para ilustrar diferentes conceptos en este captulo.

282

CAPTULO

10

Control

EJERCICIOS
10.1 Para el movimiento del bloque que se presenta en la figura 10.2, si m = 2, b = 6, k = 4 y si est inicialmente en reposo, describa su movimiento cuando se libere de la posicin x = 1. 10.2 Cules son los polos de un sistema de control? 10.3 Para un sistema de segundo orden, defina la sobreoscilacin y la constante de tiempo. 10.4 Qu es el control PID? Por qu es importante el trmino de la integral? 10.5 Considere un sistema de accionamiento de eslabn que consiste en un servomotor CD con una inercia total de 0.02 kg/m2, una friccin de cojinete de 0.5 N/s y una caja de engranajes con una relacin de radios de 32. La inercia del eslabn es 5 kg/m2 y la friccin del cojinete del eslabn es 2 N/s. Determine la inercia efectiva y el amortiguamiento efectivo para la articulacin. Suponga que todas las flechas son rgidas y sin masa. 0.2 10.6 La funcin de transferencia (TF) de un sistema es G ( s) = 01 . s 2 + 0.6s + 1 Busque su frecuencia natural y la relacin de amortiguamiento. 10.7 Escriba la representacin estado-espacio del problema en el ejercicio 10.1. 10.8 Busque la TF a partir de la representacin estado-espacio del ejercicio 10.6. 10.9 Considere el sistema no lineal x + 7 x 2 + x x + x3 = u donde u es la entrada de control. Disee un sistema de control conveniente basado en la ley de control particionada, de tal modo que la respuesta del error sea crticamente amortiguada. Dibuje el diagrama de bloques. 10.10 Por qu son necesarios el control cartesiano y el control por fuerza en una aplicacin de robot? 10.11 Explique el criterio de estabilidad de Lyapunov para sistemas no lineales.

EJERCICIOS BASADOS EN MATLAB


10.12 Para la TF que se define en el ejercicio 10.6, obtenga la respuesta de tiempo del sistema para una entrada de paso unitaria. 10.13 Obtenga la respuesta de tiempo y(t) para una entrada de paso unitaria si la funcin de transferencia de dominio de Laplace de un sistema lineal de segundo orden G(s) 16 se obtiene por G (s) = 2 s + 14 s + 49 Cul es el tipo de amortiguamiento? 10.14 Busque los errores de estado estable para todos los controladores del ejemplo 10.7.

Captulo

11
Planeacin de movimientos
El objetivo de la planeacin de movimientos de un robot es generar una funcin con la cual se mover un robot. Esa generacin de funcin depende de las tareas del robot, por ejemplo, recoger un objeto de un punto para depositarlo en otro o soldar dos piezas metlicas a lo largo de una curva. En el primer caso, se asigna el punto inicial y el punto final, es decir, el movimiento de punto a punto, mientras que en el segundo, tiene que especificarse una secuencia finita de puntos, es decir, un movimiento de ruta continua. Un usuario de robots normalmente especifica un nmero de parmetros para describir una tarea de punto a punto o de ruta continua. Luego, un algoritmo de planeacin de la trayectoria calcula las entradas al controlador de movimiento del robot. La planeacin de las trayectorias puede efectuarse Por qu planeacin ya sea en el espacio de las articulaciones o articular, es de movimientos? decir, en trminos de las posiciones articulares, velocidades y aceleraciones, o espacio cartesiano (tambin Igual que una persona decide sobre la llamado espacio operacional). Esto es, en trminos de ruta que seguir de un lugar a otro, la ruta de un robot tiene que decidirse las posiciones, del efector final, orientaciones y sus por medio de la planeacin de moviderivadas respecto al tiempo. Por lo regular se prefiere mientos. lo ltimo, ya que permite una descripcin natural de la tarea que el robot tiene que realizar. Sin embargo, la accin de control para el robot se lleva a cabo en el espacio de la articulacin. Por esta razn, debe usarse un algoritmo inverso, apropiado para reconstruir la secuencia de tiempo de variables articulares correspondientes a la secuencia arriba mencionada en el espacio cartesiano. La planeacin de la trayectoria en el espacio cartesiano naturalmente permite dar cuenta de la presencia de cualquier restriccin a lo largo de la ruta del efector final. stas tienen que ver con las regiones del espacio de trabajo en las que el robot tiene prohibido actuar, por ejemplo, por la presencia de obstculos. Estas restricciones se describen mejor en el espacio cartesiano porque sus puntos correspondientes en el espacio articular son difciles de

284

CAPTULO

11 Planeacin de movimientos

calcular. Pero en la vecindad de configuraciones singulares, es decir, cuando no pueden calcularse variables articulares para variables del efector final determinadas por la inexistencia del inverso de la matriz de movimiento de transferencia asociada, la planeacin de las trayectorias en el espacio cartesiano no es posible. En estos casos, es recomendable especificar el movimiento del efector final en trminos de las variables de las articulaciones, es decir, la planeacin del espacio articular. Por lo tanto, tiene que generarse una secuencia de tiempo de las variables de las articulaciones. Para redondear el tema, se presentarn ambos tipos de planeacin de las trayectorias en las siguientes secciones.

11.1

Planeacin de espacios articulares

En esta seccin, se considerarn mtodos para determinar una trayectoria deseada con variables articulares a travs del tiempo. En el mtodo del espacio articular, se supone que se conocen las posiciones iniciales y finales de la articulacin correspondientes a las configuraciones iniciales y finales del efector final mediante la solucin del problema de cinemtica inversa de posicin que se explic en el captulo 6. Entonces, el problema bsico es cmo seleccionar una trayectoria entre una posicin inicial y una final de articulacin con el intervalo que se permite para el movimiento entre las dos. En la literatura, se han propuesto varios mtodos para resolver el problema. Uno simple que se basa en las funciones polinomiales de tiempo. Suponga que para alguna articulacin, el ngulo inicial es q0 en un tiempo t = 0 y el ngulo final es q en un tiempo t = t, es decir, q (0) = q0; y q (tf) = q f (11.1) Adems, para iniciar y detener el efector final de acuerdo con cierta velocidad y aceleracin deseada, tiene que cumplirse con las siguientes condiciones:

q (0) = q 0; q (tf) = q f q (0) = q 0; q (tf) = q f

(11.2) (11.3)

Aunque muchas funciones cmodas puedan satisfacer las restricciones determinadas por las ecuaciones (11.1)-(11.3), se eligen aqu polinomios del tiempo t por su facilidad en el clculo y simplicidad de expresin. El orden ms bajo que puede cumplir totalmente con las seis condiciones, las ecuaciones (11.1)-(11.3), es cinco, es decir, q (t) = a0 + a1t + a2 t 2 + a3 t 3 + a4 t 4 + a5 t 5 Realizando la derivada de la ecuacin (11.4) respecto al tiempo, se obtiene (11.4) (11.5)

q (t) = a1 + 2 a2 t + 3 a3 t 2 + 4 a4t 3 + 5a5 t4


2 3

q (t) = 2a2 + 6a3t + 12 a4t + 20 a5t (11.6) Si se sustituyen las condiciones de las ecuaciones (11.1)-(11.3) en las ecuaciones (11.4)(11.6), se obtienen seis ecuaciones con coeficientes como incgnitas, denominadas, a0. . ., a5, es decir, q (0) = q 0 = a0 (11.7a) 2 3 4 5 (11.7b) q (tf) = qf = a0 + a1 tf + a2 t f + a3 t f + a4 t f + a5 t f q (0) = a1
(11.7c)

11.1

Planeacin de espacios articulares

285 (11.7d) (11.7e) (11.7f )

4 q (tf) = a1 + 2a2 tf + 3a3 t 2f + 4 a4 t 3 f + 5a5 t f

q (0) = 2 a2 q (tf) = 2 a2 + 6a3 t f +


12 a4t 2f + 20 a5 t 3f

Si se resuelven las ecuaciones (11.7a-f ), se determinan los coeficientes (incgnitas) a0, . . ., a5, que cumplen con las ecuaciones (11.1)-(11.3), como 1 (11.8a) a0 = q 0; a1 = q 0; a 2 = q 0 2 a3 = a4 = a5 =
1 [20(q f q 0) 8( q f + 12 q 0) tf (3 q 0 q f ) t 2f] 2t 3 f 1 [30(q 0 q f) + (14 q f + 16 q 0) tf + (3 q 0 2 q f) t 2 f] 2t 4 f

(11.8b) (11.8c)

1 [12 (q f q 0) 6( q f + q 0) tf + ( q f q o) t 2f ] (11.8d) 2t 5 f =q = 0, y Observe que si las aceleraciones en el punto final desaparecen, es decir, si q 0 la relacin que se muestra en la figura 11.1 se satisface por q0, q, q 0 y q , es decir, si

qf q0 =

tf 2

( q 0 + q f)

(11.9)

entonces a5 = 0, lo que implica que slo se requiere un polinomio del cuarto orden para q (t). Usando combinaciones de los polinomios del cuarto orden y lneas rectas, pueden determinarse con mucha facilidad las trayectorias para varios casos. Vamos a considerar dos de estos casos, como se explicar en las siguientes subsecciones.

11.1.1

Cuando se cuentan con los puntos iniciales y nales, p0 y p

Como en la figura 11.2, se desarrolla la trayectoria que inicia desde el reposo en q0, pasa a travs de las fases de aceleracin, velocidad constante y desaceleracin, y finalmente llega a un alto total en q. Para este propsito, primero se elige el valor del parmetro que denota
q . q0 q0 qf tf 2 . (q0 + qf)

. qf

tf /2

tf

Figura 11.1

=q y ecuacin (11.9) Condiciones de frontera q 0

286

CAPTULO

11 Planeacin de movimientos
q qf 2 qf 3

qf 1

q0

q01

q02

O D D D D

Figura 11.2 Trayectoria con aceleracin, velocidad constante y desaceleracin

la mitad del periodo de aceleracin y desaceleracin. En segundo lugar, se determinan los puntos auxiliares q02 y q1 mediante el siguiente procedimiento: se toman dos puntos q01 y q2 en el tiempo t = y t = t , como q01 = q0 y q2 = q. Entonces se conectan q01 y q2 con una lnea recta y se determinan q02 y q1 como los puntos en la lnea recta en los tiempos t = 2 y t = t 2. Luego se determinan los segmentos de la trayectoria entre q0 y q02 y entre q1 y q mediante los polinomios de cuarto orden, de tal modo que sus velocidades coincidan con la composicin de las lneas rectas que conectan a q0 q01 q2 q en los puntos de frontera q0, q02, q1 y q y sus aceleraciones son cero en estos puntos frontera. El segmento de la trayectoria entre q02 y q1 se especifica por la lnea recta. De este modo, se determina la trayectoria completa mediante la lnea slida en negritas de la figura 11.2.

Ejemplo 11.1

Planeacin de una trayectoria para un manipulador planar de dos eslabones

Si se aplica el mtodo arriba mencionado al manipulador planar de dos eslabones que se muestra en la figura 11.3a), se genera una trayectoria que inicia desde el reposo en la posicin final, figura 11.3b) en 2 segundos. Suponga que elegimos = 0.25 seg. Entonces el primer ngulo de la articulacin, q1, se obtiene como sigue: primero elegimos q01 = 90 en tiempo, t = 0.25 seg y q2 = 60 en t = 1.75 seg. Luego se obtiene la ecuacin de la lnea recta como q = 20 t + 95 Por lo tanto, q02 en t = 0.5 seg y q1 en t = 1.5 seg se encuentran como q 02 = 85; y q f 1 = 65 (11.10b) Entonces se obtienen los coeficientes del polinomio de cuarto orden entre q0 y q02 como a0 = 90; a1 = a2 = 0; a3 = 80; y a4 = 80 (11.10c) (11.10a)

11.1

Planeacin de espacios articulares

287

60 a2 = 1

120

a1 = 1 90 O X a) Posicin inicial b) Posicin final O 60 X

Figura 11.3

Manipulador de dos eslabones

=q =q = 0, y q q = t /2(q +q ) para Observe que se utilizan condiciones de q 0 0 0 0 encontrar los valores de coeficientes. Para el intervalo 0 < t 0.5, la trayectoria de la articulacin es como sigue: q1 = 90 80 t 3 + 80 t 4 (11.10d) Para la lnea recta entre q02 y q1, es decir, 0.5 < t 1.5, puede obtenerse fcilmente como q1 = 85 20(t 0.5) (11.10e) Finalmente, el polinomio de cuarto orden entre q2 y q, es decir, 1.5 < t 2.0 puede escribirse como q1(t) = a0 + a1 (t 1.5) + a2 (t 1.5)2 + a 3 (t 1.5) 3 + a4 (t 1.5) 4 (11.10f) cuyos coeficientes se calculan como a0 = 65; a1 = 20; a3 = 80; y a4 = 80 Por lo tanto, la trayectoria final para q1 se escribe como (11.10g)

R |90 - 80t + 80t , q (t) = S85 - 20 (t - 0. 5), | T65 - 20 (t - 1.5) + 80 (t - 1.5)


3 4
1

0 t 0. 5 0.5 < t 1. 5
3

(11.10h)

- 80 ( t - 1.5) , 15 . < t 2.0

De manera similar, se da el segundo ngulo de articulacin q2 por

R - 60 - 160t + 160t , | q (t) = S- 70 - 40 (t - 0.5), | T-110 - 40 (t - 1.5) + 160 (t - 1.5)


3 4
2

0 t 0.5 0.5 < t 1.5


3

(11.11)

- 160 ( t - 1. 5) 4 , 1.5 < t 2.0

La figura 11.4 muestra la trayectoria resultante del punto final.

288

CAPTULO

11 Planeacin de movimientos

t=0

t = 0.5

10 10

t = 1.0

t = 1.5 O X

Figura 11.4

Trayectoria de punto nal

11.1.2

Cuando se cuenta con el punto inicial, varios puntos intermedios y el punto nal

Aqu se determina una trayectoria que empieza desde el reposo en la posicin inicial q0, pasa a travs de las posiciones intermedias q1 y q2 y se detiene en la posicin final q. Primero considere el caso donde no es necesario pasar exactamente a travs de q1 y q2. En ste, sean los puntos auxiliares especificados q02, q11, q12, . . ., q1, como en la figura 11.5. Observe que los valores en el punto q01 y q0 son los mismos, que los valores en q2 yq son los mismos y que q02 y q11 estn en la lnea recta entre q01 y q1. Los puntos q12, . . ., q1 se determinan de la misma manera. Entonces se determinan los segmentos de la trayectoria para (q0, q02),
q qf 1 q1 q11 q01 q02 q12 q21 q2 q22

qf 2 qf

q0

D D

Figura 11.5

Trayectoria que pasa cerca de los puntos intermedios

11.1

Planeacin de espacios articulares

289

(q11, q12), . . ., (q1, q) mediante polinomios de cuarto orden, as como para (q02, q11), (q12, q21), y (q22, q1), usando lneas rectas. La trayectoria resultante se ilustra mediante una lnea en negritas en la figura 11.5. Luego considere el caso donde se requiere que la trayectoria pase exactamente a travs de q1 y q2. Este caso puede resolverse mediante el incremento del nmero de puntos auxiliares. Un mtodo se presenta en la figura 11.6a). Los puntos auxiliares se determinan de la siguiente manera: Como lo muestra la figura 11.6b), qi2(i = 1, 2) es el punto medio entre A la interseccin de la lnea de t = ti con la lnea recta entre qi1 (q01 cuando i = 1) y qi y B la interseccin de la lnea de t = ti con la lnea recta entre qi y qi+1 (q2 cuando i = 1). El punto qi3 se determina de manera parecida. Luego se determinan los segmentos de la trayectoria para (q0, q02), (q11, q1), (q1, q14), . . ., (q1, q) mediante polinomios del cuarto orden y para (q02, q11), (q14, q21) y (q24, q1), usando lneas rectas, como en el caso anterior. En el problema bsico de conectar q0 y q mediante un polinomio, que se mencion al principio de esta seccin, si la condicin de frontera para la posicin, ecuacin (11.1) y la condicin de la velocidad, ecuacin (11.2), pero no la de la continuidad de aceleracin, ecuacin (11.3), se consideraron como polinomios que pueden simplificarse. De manera ms especfica, puede usarse un polinomio de tercer orden q (t) = a0 + a1t + a2 t 2 + a3 t 3, (11.12a)

q12 q q13 1 q11 q01 q02 q14 q21 q22 q2 q23 q24

qf 1 qf 2 qf

q0 O

t t1 t2 a) Puntos intermedios qi3 B qi2 qi1 qi 1 A D qi qi4 qi + 1 tf

ti

b) Determinacin de los puntos qi 2 y qi 3

Figura 11.6

Trayectoria que pasa a travs de los puntos intermedios

290

CAPTULO

11 Planeacin de movimientos

en lugar de un polinomio de quinto orden. Las constantes en la ecuacin (11.7) son a0 = q0, a1 = q 0, a2 = a3 =
1 [3(qf q 0) (2 q 0 + q f) tf ], t2 f

1 [2(q f q 0) + ( q f + q 0) tf]. t3 f

(11.12b)

yq cumplen con la ecuacin (11.9), entonces a = 0, y as q(t) En particular, si q0, q, q 0 3 se vuelve un polinomio de segundo orden. Por lo tanto, en los casos 1 y 2 que se trataron arriba tambin pueden usarse polinomios de segundo orden.

11.2

Planeacin del espacio cartesiano

Cuando se genera una trayectoria entre dos configuraciones del robot por medio de un mtodo de variaEspacio articular vs. espacio cartesiano bles articulares, como se describi en la subseccin anterior, a veces es difcil pronosticar el movimiento En el espacio articular se utilizan ndel efector final en el espacio cartesiano. Tambin hay gulos articulares y desplazamientos casos donde se requiere alguna trayectoria especfica para denir la conguracin de un del efector final. Por ejemplo, en la soldadura por arco, robot, mientras que las coordenadas cartesianas se utilizan para el mismo el electrodo deber seguir con precisin a una costura. propsito en el espacio cartesiano.. En estos casos, deseamos generar una trayectoria en trminos de las variables de posicin y orientacin, es decir, la configuracin del efector final. Hay varios modos de describir la posicin y orientacin, es decir, la configuracin del efector final. Puesto que el efector final de un cuerpo rgido en el espacio cartesiano tridimensional tiene seis grados de libertad, se requieren seis variables para determinar la configuracin del efector final. Una vez que se elija la manera, puede determinarse la trayectoria en trminos de una variable de seleccin arbitraria, que es una secuencia de polinomios de la forma de la ecuacin (11.4) o de la ecuacin (11.10). La trayectoria de un efector final que se obtiene de esta manera es muy simple y fcil de visualizar. Por ejemplo, en caso que el efector final se mueva sobre la lnea recta que conecta las configuraciones iniciales y finales en el espacio cartesiano tridimensional, pueden usarse las coordenadas X, Y y Z del origen del sistema de referencia del efector final respecto al sistema de referencia como las tres variables para describir la traslacin.

Ejemplo 11.2

Trayectoria de un robot de dos eslabones en el espacio cartesiano

Vamos a obtener una trayectoria para el problema del ejemplo 11.1, no en trminos de variables articulares, sino en trminos de las variables de posicin del efector final, es decir, r [x, y]T. Puesto que para la longitud del eslabn a1 = a2 = 1 la posicin inicial r0 es [ 3/2, 3/2]T y la posicin final r es [1, 0]T, la trayectoria r(t) = [x(t), y(t)]T se

11.2

Planeacin del espacio cartesiano

291

obtiene, de manera similar al mtodo de variables articulares, como en la seccin 11.1.1, como

R 3/2 + 4 (2 - 3 ) (t - t )/3 0 t 0.5 | |(5 3 + 2)/12 + (2 - 3) (t - 0.5)/ 3 0.5 < t 1.5 x (t) = S (10 + 3 )/12 + (2 - 3 ) (t - 1.5) / 3 | | . <t 2 T- 4 (2 - 3)[(t - 1.5) - (t - 1.5) ]/ 3 15 R 0 t 0.5 |3/2 - 4t + 4t y (t) = S5/ 4 - (t - 0. 5) 0.5 < t 1.5 | . ) 1.5 < t 2.0 T1/ 4 - (t - 1.5) + 4 (t - 1.5) - 4 (t - 15
3 4 3 4 3 4 3 4

(11.13a)

(11.13b)

La figura 11.7 muestra la trayectoria de punto final resultante. En cuanto a la orientacin del efector final, si toma- Y t=0 mos los ngulos de Euler o los ngulos de roll, pitch t = 0.5 y yaw (balanceo, cabeceo, rotacin), el efector final se mueve en una lnea recta respecto a estas variables. Sin embargo, el movimiento correspondiente al t = 1.0 sistema de referencia es difcil de entender en forma intuitiva porque se da como una combinacin de est = 1.5 tas tres rotaciones alrededor de tres diferentes ejes de variacin de tiempo. Los siguientes dos mtodos O X t = 2.0 son efectivos para evitar esta dificultad. El primero se Figura 11.7 Trayectoria de punto basa en la representacin de la orientacin alrededor nal de un eje fijo y el segundo es la representacin por rotaciones alrededor de dos ejes.

11.2.1

Mtodo de rotacin de un solo eje

Una representacin de la relacin entre dos sistemas FA y FB que tienen el mismo origen se determina por Representacin alterna de rotacin el par [e, a], donde e [ex, ey, ez]T es el eje de rotacin equivalente y a es el ngulo de rotacin equivalente. Se usa la direccin de los cosenos y nEste par se utiliza para obtener FB de FA mediante una gulos de Euler (vea el captulo 5). sola rotacin alrededor del vector unitario fijo e por un ngulo a. Observe que el par [e, a] tambin puede representarse mediante un vector tridimensional proporcional a e que tenga la direccin e y la magnitud a. Observe tambin que la matriz de rotacin Q(e, a) se determina por

LMe Ca + Ca Q (e, a) = Me e C a + e Sa MNe e Ca - e Sa


2 x x y z x z y

ex e y C a - ez Sa e2 y C a + Ca e y ez C a + e x Sa

OP e e C a - e Sa P PQ e C a + Ca
e x ez C a + e y Sa
y z 2 z x

(11.14)

292

CAPTULO

11 Planeacin de movimientos

donde Sa sen a, Ca cos a, y Ca 1 Ca. La comprobacin de la ecuacin (11.14) es como sigue. Primero observamos que Q (e, a) = [i j k] donde i, j y k son los vectores unitarios en las direcciones X, Y y Z de FB expresadas en FA. Sean r1 el vector arbitrario en FA y r2 el vector obtenido por girar r1 alrededor de e por a, puede obtenerse la igualdad segn los principios bsicos de la cinemtica rotacional (ngeles, 2003) como r2 = (eT r1) e + Ca [r1 (eT r1) e] + Sa (e r1)
T

(11.15a)

Puesto que para r1 [1, 0, 0] implica r2 i, y puede demostrarse segn la ecuacin (11.15 a) que
T r2 [e 2 x C a + Ca, ex ey C a + ez Sa, ex ez C a ey Sa]

(11.15b)

que no es otra cosa que la primera columna de Q(e, a), como se muestra en la ecuacin (11.14). La segunda y tercera columnas son obtenidas de manera similar. Entonces, el mtodo de rotacin de un solo eje se determina. Suponga que la orientacin rf Respecto al sistema de referencia del efector final r0 es [e, af] cuando se expresa mediante la representacin arriba mencionada [e, a]. Entonces puede darse una trayectoria desde r0 hasta r como una para la cual a cambia de 0 a a alrededor del eje fijo e. El cambio de a puede especificarse, por ejemplo, mediante la solucin similar a q(t) de la ecuacin (11.4), es decir, con las siguientes condiciones de frontera: a (0) = 0, a (tf) = a f, a (0) = 0, a 0 ,(tf) = a f, a (0) = 0, a 0, (tf ) = a f, La trayectoria para la orientacin se determina por [e, a(t)], donde 0 t t. Puesto que la trayectoria se determina por una rotacin alrededor de un eje e que se fija al sistema de referencia, es fcil de entender de manera intuitiva.

11.2.2

Mtodo de rotacin de eje doble

Suponga que la orientacin final respecto a la inicial es determinada por (f, q, y) cuando se expresa usando los ngulos de Euler. Si se usa la ecuacin (11.14) y la representacin de matriz en trminos de f, q y y, como se hizo en el captulo 5, puede verse fcilmente que la orientacin tambin se determina por la matriz de rotacin Q(e, q)Q(k, y + f), donde e [sen f, cos f, 0]T y donde k es el eje Z despus de la transferencia por Q(e, q). De este modo, puede realizarse una trayectoria de inicial a final usando Q(e, q), Q(k, y + f), donde q y y + f son funciones polinomiales de tiempo especificadas por la ecuacin (11.4) con condiciones de frontera apropiadas y k es el vector unitario paralelo al eje Z del tiempo t despus de la transferencia por Q(e, q). Expresado de manera simple, esta trayectoria es una combinacin de dos rotaciones simultneas; una alrededor del eje perpendicular a los vectores de aproximacin de las configuraciones inicial y final, es decir, r0 y r (el cual tiene una direccin constante en el sistema de referencia del efector final de r0) a travs de un ngulo q, y la otra rotacin a travs de un ngulo (y + f) alrededor del vector de aproximacin en cada instante. Ambos ejes de estas dos rotaciones son fciles de entender. En particular, cuando la ltima articulacin de un manipulador es rotacional o de revoluta con su eje rotacional coincidente con el vector de aproximacin del efector final, esta articulacin puede ejecutar la segunda rotacin alrededor de k por s misma. Aunque el mtodo de rotacin del

11.2

Planeacin del espacio cartesiano

293

Ejemplo 11.3

Trayectoria para la orientacin del efector nal

Suponga que quisiramos encontrar una trayectoria que transfiere la orientacin del efector final desde el reposo en la orientacin inicial que se presenta en la figura 11.8a) a la orientacin final que se muestra en la figura 11.8b), llegando al reposo en el tiempo t = 1. Resuelva el problema por medio de los mtodos de rotacin de un solo eje y del eje doble. Puede verse fcilmente, en la figura 11.8, que la matriz de rotacin Q que representa la orientacin final respecto a la inicial es 0 0 1 Q 1 0 0

Si se compara esta matriz con la ecuacin (11.14), se obtiene lo siguiente: i) Si se suman los elementos diagonales,
2 (e 2x + e 2 y + e z) C a + 3Ca = 0 Puesto que e es el vector unitario, e2x + e 2y + e2z = 1, y 1 + 2C = 0, es decir C = 1/2. Por lo tanto, a = 120. ii) Si se restan los elementos no diagonales de la siguiente manera, proporcionar los componentes del vector unitario e, es decir, q32 - q23 ex 1 q - q31 = e y 2 sa 13 q21 - q12 ez

LM MM N0

OP P 0P Q

La expresin arriba mencionada inmediatamente da como resultado e [1/ 3, 1/ 3, 1/ 3] T. Si se usa un polinomio de quinto orden para la interpolacin en la forma de la ecuacin (11.4), la trayectoria de esta orientacin se determina por [e, ], 0 t 1 donde a = 1.200 t 3 1.800 t 4 + 720 t 5
Z0 Yf

LM MM N

OP PP Q

LM MM N

OP PP Q

Y0 X0 Zf a) Orientacin inicial b) Orientacin final

Xf

Figura 11.8

Orientacin inicial y nal del efector nal

294

CAPTULO

11 Planeacin de movimientos

Un ejemplo de la matriz de rotacin que representa la orientacin intermedia en t = 0.5 de esta trayectoria es como sigue:

Esta orientacin se muestra en la figura 11.9a). Entonces el problema queda resuelto por medio del mtodo de rotacin de eje doble. Los ngulos de Euler para la orientacin inicial y final son [f0, q0, y0] T = [0, 0,0]T, y [ff, qf, yf]T = [0, 90, 90]T. Por lo tanto, la trayectoria se determina por Q (e, q) Q (k, y + f), 0 t 1 donde q = y + f = 900 t 3 1.350 t 4 + 540 t 5 La matriz de rotacin Q para la orientacin intermedia en el tiempo t = 0.5 para este caso se calcula segn e [0, 1, 0]T y q = y + f = 45 a t = 0.5 como

LM 2 /3 Q M 2/3 MN-1/ 3

-1/ 3 2 /3 2 / 3 1/ 3 2/ 3 2/3

OP PP Q

LM 1/ 2 Q = M 0 MN- 1/ 2

0 1/ 2 1 0

OP LM1/ 2 0 P M1/ 2 1/ 2 P M 0 QN

- 1/ 2 1/ 2 0

OP LM 1/ 2 0P = M1/ 2 1P M - 1/ 2 Q N
0

- 1/ 2 1/ 2 1/ 2 1/ 2

OP 0 P 1/ 2 P Q

Esta orientacin queda representada en la figura 11.9b). Si se compara esto con la figura 11.9a), vemos que el vector de aproximacin siempre es perpendicular al eje Y0, lo que da como resultado una ruta ms corta. Por otro lado, si el movimiento del efector final tiene que seguir una trayectoria prescrita de movimiento, esto tiene que ser analticamente geomtrico. Entonces ser necesario referirse a los movimientos primitivos definiendo las caractersticas geomtricas de las rutas y tiempos primitivos definiendo la ley de tiempo sobre la ruta misma, como se presenta a continuacin.
Zo q Z e k Y Z y+j e Yo Yo Zo

Xo X a) Rotacin de eje sencillo

Xo

b) Rotacin de eje doble

Figura 11.9

Mtodos de orientacin intermedia

11.3

Trayectorias de posicin y orientacin

295

eje doble es un poco ms complejo que el mtodo de rotacin de un solo eje, es ms fcil de entender el cambio del vector de aproximacin.

11.3

Trayectorias de posicin y orientacin

Si se considera que x es el vector de las variables de espacio operacional que expresa la posicin y orientacin del efector final del manipulador, generar una trayectoria en el espacio operacional representa determinar una funcin x(t), tomando el sistema del efector final desde la ubicacin inicial hasta la final en un tiempo t a lo largo de una ruta determinada con una ley especfica de tiempo de movimiento. Para ello, primero que nada considere la posicin del sistema del efector final. Por consecuencia, la orientacin se dar.

11.3.1

Rutas primitivas

Para la definicin de rutas primitivas, es conveniente referirse a la descripcin paramtrica rutas en el espacio. Supngase que p es el vector tridimensional y f(s) es una funcin vectorial continua definida en el intervalo [si, s]. Considere la ecuacin (11.16) p = f (s ) con referencia a su descripcin geomtrica, la secuencia de valores de p con s variando en [si, s] se llama ruta en el espacio. La ecuacin (11.16) define la representacin paramtrica de la ruta y el escalar s se conoce como parmetro. Conforme incremente s, el punto p se mover sobre la ruta a una direccin dada. Se dice que esta direccin est inducida en por la representacin paramtrica (11.16). Una ruta es cerrada cuando p(sf) = p(si); de otra forma, es abierta. Si pi es un punto en lruta abierta en el cual se haya fijado una direccin, la coordenada de la rutas del punto genrico p es la longitud del arco de con los extremos p y pi si p le sigue a pi, lo contrario de esta longitud si p precede a pi. Se dice que el punto pi es el origen de la coordenada de la ruta (s = 0). De la presentacin sealada anteriormente se establece que para cada valor de s le corresponde un punto perfectamente determinado y entonces la coordenada de la ruta puede usarse como un parmetro en una representacin paramtrica diferente de la ruta , es decir, (11.17) p = f (s ) El rango de variacin del parmetro s ser la secuencia de las coordenadas de la ruta asociada con los puntos de . Considere una ruta representada por la ecuacin (11.17). Suponga que p es un punto correspondiente en la coordenada de la ruta s. Excepto en casos especiales, p permite la definicin de tres vectores unitarios que caracterizan la ruta. La orientacin de estos vectores depende exclusivamente de la geometra de la ruta, mientras que su direccin depende tambin de la direccin incluida por la ruta. El primero de estos vectores unitarios es el vector unitario de tangente denotado por t. Este vector se orienta a lo largo de la direccin incluida en la ruta por s. El segundo vector unitario es el vector unitario normal denotado por n. Este vector se orienta a lo largo de la lnea que cruza a p con un ngulo recto con t y que se encuentra en el llamado plano F (figura 11.10). Este plano es la posicin lmite del plano que contiene el vector unitario t y un punto p cuando p tiende a p a lo largo de la ruta. La direccin de n es tal que la ruta , en la vecindad de p respecto al plano que contiene t y la normal a n,

296

CAPTULO

11 Planeacin de movimientos
pf n b

Z pi

Figura 11.10

Representacin paramtrica de una ruta en el espacio

se encuentra en el mismo lado de n. El tercer vector unitario es el vector unitario binormal denotado por b. Este vector es de esta forma para que el sistema de referencia (t, n, b) es derecho (acorde a la regla de la mano derecha) (figura 11.10). Observe que no siempre ser posible definir uno de estos sistemas en forma nica. Puede demostrarse que los tres vectores unitarios sealados anteriormente estn vinculados por relaciones simples con la representacin de la ruta como funcin de la coordenada de la ruta. En particular, ellos son dp d 2p 1 (11.18) t= ;n= ;y b=tn 2 ds d 2p ds
ds2

A continuacin se presentarn tpicas representaciones paramtricas de la rutas que son tiles para la generacin de rutas en el espacio operacional.

Ejemplo 11.4

Segmento lineal en el espacio

Considere el segmento lineal en el espacio que conecta el punto pi con el punto pf . La representacin paramtrica de esta ruta es s dp p (s) = pi + (11.19) dp donde cp pf pi. Observe que p(0) = pi y p( cp) = pf . Por ende, la direccin inducida en por la representacin paramtrica de la ecuacin (11.19) va de pi a pf . Al derivar la ecuacin (11.19) respecto a s se obtiene dp dp d 2p (11.20) = ;y =0 ds ds 2 dp En este caso no es posible definir el sistema (t, n, b) de forma nica.

Ejemplo 11.5

Crculo en el espacio

Considere un crculo en el espacio. Antes de obtener su representacin paramtrica es necesario introducir sus parmetros significativos. Suponga que el crculo se especifica asignando (ecuacin 11.11):

11.3

Trayectorias de posicin y orientacin

297

el vector unitario del eje del crculo r el vector posicional d de un punto a lo largo del eje el vector posicional pi de un punto sobre el crculo
Z Z9 r X9 pi c O O9

Y9 Y

Figura 11.11

Representacin paramtrica de un crculo en el espacio

Mediante estos parmetros puede encontrarse el vector posicional c del centro del crculo. Si c = pi d, para que pi no sea el eje, es decir, para que el crculo no degenere en un punto, debe ser | cTr | ||c||. En este caso es c = d + (d Tr) r (11.21)

Luego se desea encontrar una representacin paramtrica del crculo como funcin de la coordenada de la ruta. Observe que esta representacin es muy simple para una opcin conveniente del sistema de referencia. Para ver esto, considere el sistema de referencia O-XYZ, donde O coincide con el centro del crculo, el eje X se orienta a lo largo de la direccin del vector pi c; el eje Z se orienta a lo largo de r y el eje Y se orienta de tal modo que completa un sistema derecho. Cuando se expresa en este sistema de referencia, la representacin paramtrica del crculo es

LMr cos FG s IJ OP MM H r K PP F sI p(s) = M r sen G r J P MM H K PP MN 0 PQ


p (s) = c + Qp (s)

(11.22)

donde r = pi c es el radio del crculo y el punto pi ha sido asumido como el origen de la coordenada de la ruta. Para un sistema de referencia diferente, la representacin de la ruta se vuelve (11.23a)

298

CAPTULO

11 Planeacin de movimientos

donde c se expresa en el sistema de referencia O-XYZ y Q es la matriz de rotacin del sistema de referencia O-XYZ respecto al sistema de referencia OXYZ, que puede escribirse como (11.23b) Q [x y z ] en la que x, y, z indican los vectores unitarios del sistema de referencia expresado en el sistema de referencia O-XYZ. La diferenciacin de la ecuacin (11.23a) respecto a s da como resultado

LM- sen FG s IJ OP H rKP M dp M F s I PP ; y d p =Q M ds MM cos GH r JK PP ds MN 0 PQ


2 2

LM- 1 cos FG s IJ OP H rKP MM r 1 F IP =QM - r sen G s J P H rK P MM MN 0 PPQ

(11.24)

11.3.2

Posicin

Si p = f(s) es el vector tridimensional de la representacin paramtrica de la ruta como una funcin de la coordenada de la ruta s, el origen del sistema de referencia del efector final se mueve de pi a pf en un tiempo t. Por motivos de simplicidad, suponga que el origen de la coordenada de la ruta est en pi, y que la direccin inducida en se va de pi a pf . La coordenada de la ruta se va entonces del valor s = 0 en t = 0 al valor s = s (longitud de la ruta) en t = t. La ley de tiempo a lo largo de la ruta se describe mediante la funcin s(t). Para encontrar una expresin analtica para s(t), puede emplearse cualquiera de los mtodos para la generacin de las trayectorias articulares que se describen arriba. En particular, puede elegirse un polinomio cbico o una secuencia de segmentos lineales con mezclas parablicas para s(t). Vale la pena hacer algunos comentarios sobre la evolucin de tiempo de p en para una ley de tiempo determinada s(t). La velocidad del punto p se define por la derivada del tiempo de p dp (11.25) p = s = st ds repredonde t es el vector tangente a la ruta en el punto p en la ecuacin (11.17). Entonces, s senta la magnitud del vector de velocidad relativa al punto p, tomado con el signo positivo o a lo largo de t. La magnitud de p inicia desde cero negativo, dependiendo de la direccin de p en t = 0, luego vara con un perfil parablico o trapezoidal segn cualquiera de las opciones antes mencionadas para s(t) y finalmente regresa a cero en t = t.

Ejemplo 11.6

Velocidad y aceleracin para un segmento lineal

Considere el segmento del ejemplo 11.4 que conecta el punto pi con el punto p. La representacin paramtrica de esta ruta se determina por la ecuacin (11.19). La

11.3

Trayectorias de posicin y orientacin

299

velocidad y aceleracin de p puede calcularse fcilmente recordando la regla de diferenciacin de funciones compuestas, es decir, s s (11.26) d p = s t; y p = dp = s t p = dp dp donde el vector cp se define segn la ecuacin (11.19).

Ejemplo 11.7

Velocidad y aceleracin para un crculo

Aqu, considere un crculo en el espacio. Segn la representacin paramtrica que se deriv en la ecuacin (11.24), la velocidad y la aceleracin del punto p en el crculo son:

LM- s senFG s IJ OP MM H r K PP F sI ; y p =QM MM s cos GH r JK PPP MN 0 PQ

LM- 1 s MM r p =QM 1 MM- r s MN

FG IJ F I OP H KP H K F sI F s IP sen G r J + s cos G J P H K H rKP PP 0 Q


s s cos r - s sen r

(11.27)

Observe que el vector de velocidad se alinea con t y el vector de aceleracin se determina por dos contribuciones: la primera se alinea con n y representa la aceleracin centrpeta, mientras que la segunda se alinea con t y representa la aceleracin tangencial.

11.3.3

Orientacin

Considere ahora la orientacin del efector final. Normalmente esto se especifica en trminos de la matriz de rotacin del sistema de referencia del efector final (con variacin del tiempo) respecto al sistema de referencia de base. Como bien se sabe, las tres columnas de la matriz de rotacin representan los tres vectores unitarios del sistema de referencia del efector final (n, s, a) expresados en el sistema de referencia de base. Para generar una trayectoria, sin embargo, no es conveniente referirse a la matriz de rotacin para caracterizar la orientacin. Por ejemplo, una interpolacin lineal sobre los vectores unitarios n, s, a que describen la orientacin inicial y final no garantiza la ortonormalidad de los vectores mencionados en cada instante de tiempo. En vista de la dificultad mencionada, la orientacin se describe para propsitos de generacin de las trayectorias en trminos del ngulo triple e [f, q, y]T; es decir, los ngulos de Euler ZYZ, para los cuales puede especificarse una ley de tiempo. Usualmente, f se mueve a lo largo del segmento que conecta su valor inicial ei a su valor final e. En este caso, tambin es conveniente elegir un polinomio cbico o un segmento lineal con la ley de tiempo de combinaciones parablicas. Para ei y e determinados, los perfiles de posicin, velocidad y aceleracin son: s s s (11.28) j = ji + df ; j = df y j = df df df df

300

CAPTULO

11 Planeacin de movimientos

donde ce i ii, y la ley de tiempo para s tiene que especificarse. Los tres vectores unitarios del sistema de referencia del efector final pueden calcularse con referencia a los ngulos de Euler ZYZ como en la ecuacin (5.31e), la velocidad angular del sistema de referencia del efector final como en la ecuacin (6.39) y la aceleracin angular mediante la diferenciacin de la propia ecuacin (6.39). Una forma alternativa para generar una trayectoria para la orientacin de una interpretacin ms clara en el espacio cartesiano puede derivarse cuando se recurre al mtodo del eje equivalente de rotacin que se present en la seccin 11.2. Determinados dos sistemas de coordenadas en el espacio cartesiano con el mismo origen y diferente orientacin, siempre es posible determinar un vector unitario e, de tal modo que el segundo sistema puede obtenerse a partir del primer sistema mediante la rotacin de la magnitud a alrededor del eje de este vector unitario. Si Qi y Q denotan, respectivamente, las matrices de rotacin del sistema de referencia inicial Oi-XiYiZi y el sistema final Of-XfYfZf, ambos respecto al sistema de referencia base, la matriz de rotacin entre las dos sistemas puede calcularse si se recuerda que Q = Qi Q, la ecuacin (5.19), permite escribir Q= QT i

~ ~ se define para describir la transicin de Q a Q , debe ser Q Si la matriz Q (0) = 1 y Q (tf) = i Q. Por lo tanto, la matriz Q puede expresarse como la matriz de rotacin alrededor de un eje fijo en el espacio; el vector unitario e del eje y el ngulo de rotacin a pueden calcularse usando el ejemplo 11.3, es decir, a = cos1

LMq Q = Mq MNq
f

11 21 31

q12 q22 q32

q13 q23 q33

OP PP Q

FG q H

11

+ q 22 + q 33 - 1 1 ,y e= 2 sen a 2

IJ K

LMq MMq Nq

32 13 21

- q23 - q31 - q12

OP PP Q

(11.29)

~ para sen a 0. La matriz Q puede interpretarse como una matriz Q(a) y puede calcularse mediante la ecuacin (11.14). Luego es suficiente asignar una ley de tiempo a a, del tipo de las que se presentan para la articulacin sencilla con a(0) = 0 y a(t) = a, y el clculo de los componentes ex, ey, ez del vector unitario del eje fijo segn la ecuacin (11.29). Por ende, ~ Q = Qi Q ( a ) representa la matriz de rotacin que describe la orientacin del efector final como una funcin de tiempo respecto al sistema de referencia base. Una vez que se hayan especificado ~ una ruta y una trayectoria en el espacio operacional en trminos de p y e o Q , pueden usarse tcnicas de cinemtica inversa para encontrar las trayectorias correspondientes en el espacio articular p.

11.4

Planeacin de punto a punto

En el movimiento de punto a punto, el manipulador tiene que moverse desde la configuracin articular inicial hasta la final dentro de un tiempo determinado t. En este caso, la

11.4

Planeacin de punto a punto

301

ruta real del efector final no es importante. El algoritmo deber generar una trayectoria que, respecto a los Aplicacin de movimiento PTP requerimientos generales mencionados, tambin ser capaz de optimizar algn ndice de desempeo cuando Aquella donde se requieren operaciose mueve la articulacin de una posicin a otra. Una nes de recoger y colocar, por ejemplo, sugerencia para la seleccin de la primitiva de movi- tomar una pieza de trabajo de una miento podr derivarse del anlisis de un problema de banda transportadora y colocarla sobre una mesa de maquinado para su movimiento incremental. Si I es el momento de inercia procesamiento. para un cuerpo rgido alrededor de su eje de rotacin, se requiere tomar el ngulo desde un valor inicial qi hasta un valor final q en el tiempo t. Es obvio que existen soluciones infinitas para este problema. Suponiendo que la rotacin se ejecute mediante un par de torsin proporcionado por un motor, puede encontrarse una solucin que minimiza la energa disipada por el motor. Este problema de optimizacin puede = w determina la solucin para la ecuacin diferencial formalizarse como sigue: colocar q Iw = t sujeta a la condicin
tf

(11.30a)

z
0

w (t)dt = q f q i

(11.30b)

de tal modo que se minimice el ndice de desempeo


tf

z
0

t 2(t) dt

(11.30c)

Puede demostrarse que la solucin resultante es del tipo w (t) = at 2 + bt + c ( 11.30d)

Aunque la dinmica de articulaciones o articular no puede describirse de la manera simple mencionada, la eleccin de una funcin polinomial de tercer orden para generar una trayectoria de articulacin representa una solucin vlida para el problema en estudio. Por lo tanto, a fin de determinar un movimiento de articulacin, puede elegirse el polinomio cbico q (t) = a 3 t 3 + a2 t 2 + a1t + a0 ( 11.31a) que da como resultado perfiles de velocidad parablica y aceleracin lineal, a saber,

q (t) = 3 a3 t 2 + 2 a2 t + a1; y q (t) = 6a 3 t + 2 a2

( 11.31b)

Puesto que cuatro coeficientes estn disponibles, es posible imponer, aparte de los valores de posicin de articulacin inicial y final qi y q, tambin los valores de velocidad de arti culacin inicial y final qi y q que usualmente se ponen en cero. La determinacin de una trayectoria especfica se determina por la solucin del siguiente sistema de ecuaciones:
2 2 a0 = qi; a1 = q i; a3 t 3 f + a2 t f + a1 tf + a0 = q f; y 3 a3t f + 2a2 tf + a1 = q f

( 11.31c)

que permite calcular el resultado de los coeficientes del polinomio en una ecuacin (11.31a). La figura 11.12 ilustra la ley de tiempo obtenida por medio de los siguientes datos: qi = 0,

302

CAPTULO

11 Planeacin de movimientos

3 2

Rad
1 0

0.2

0.4

0.6 seg a) Posicin

0.8

5 4 3

Rad/s

2 1 0 0 0.2 0.4 0.6 0.8 seg b) Velocidad 1

20 10

Rad/s

0 10 20

0.2

0.4

0.6 0.8 seg c) Aceleracin

Figura 11.12

Historiales de tiempo con un polinomio cbico

11.4

Planeacin de punto a punto

303

=q = 0. Como se esperaba, la velocidad tiene un perfil parablico, mientras q = , tf = 1 y q i que la aceleracin tiene un perfil lineal con discontinuidad inicial y final. Si se desea asignar tambin los valores iniciales y finales de aceleracin, tienen que cumplirse seis restricciones y luego se necesita un polinomio de por lo menos quinto orden, como se obtiene en la seccin 11.1. Un planteamiento alternativo con leyes de tiempo del tipo polinomial mixto se adopta frecuentemente en la prctica industrial, lo que permite la verificacin directa si las velocidades y aceleraciones resultantes pueden soportarse por el manipulador mecnico polinomial. En este caso, se asigna un perfil de velocidad trapezoidal que impone una aceleracin constante en la fase de arranque, una velocidad y una desaceleracin constantes en la fase de llegada. La trayectoria resultante se forma por un segmento lineal conectado por dos segmentos parablicos en su posicin inicial y final. Como puede verse en los perfiles de velocidad de la figura 11.13, se supone que tanto la velocidad inicial como la final son nulas y los segmentos con aceleraciones constantes tienen la misma duracin de tiempo; esto en los dos segmentos. Observe tambin que la eleccin de implica una magnitud igual q c arriba conduce a una trayectoria simtrica con respecto al punto promedio qm = (qf + qi)/2 en tm = tf /2. La trayectoria deber cumplir con algunas restricciones con el fin de asegurar
q qf qm qc qi O . . c tc tm tf tc tf t a) Posicin

O .. .. c

tc

tf tc b) Velocidad

tf

tf tc O .. c c) Aceleracin tc

tf t

Figura 11.13

Ley de tiempo con un perl de velocidad trapezoidal

304

CAPTULO

11 Planeacin de movimientos

la transicin de qi a qf en el tiempo tf. La velocidad al final del segmento parablico debe ser igual a la velocidad (constante) del segmento lineal, es decir,

q c tc =

qm - qc t m - tc

(11.32a)

donde qc es el valor alcanzado por la variable articular al final del segmento parablico al (observe que q (0) = 0). Es entonces tiempo tc con la aceleracin constante q c qc = q i +
1 q t2 2 c c

(11.32b)

La combinacin de las ecuaciones (11.32 a y b) proporciona

q c t2 c q c tf tc + qf q i = 0

(11.32c)

se especifica y entonces, para t , q y q determinado, la solucin para t se Usualmente, q c f i f c calcula , segn la ecuacin (11.32c), como (tc tf /2) tc =
tf 2

1 2

t2 f q c - 4(q f - q i ) qc

(11.33)

La aceleracin se sujeta entonces a la constante |qc |


4 |q f - q i | t2 f

(11.34)

se elige de tal modo que cumple con la ecuacin (11.34) con el Cuando la aceleracin q c signo de igualdad, la trayectoria resultante ya no ostenta el segmento de velocidad constante y solamente tiene los segmentos de aceleracin y desaceleracin (perfil triangular). Determinados qi, qf y tf, y por ende tambin una velocidad de transicin promedio, la ecuacin (11.34) permite la imposicin de un valor de aceleracin consistente con la trayectoria. Luego tc se calcula segn la ecuacin (11.33) y se genera la siguiente secuencia de polinomios:

R q | | q (t) = Sq | | Tq

1 q t2 0 t tc 2 c i + q c t c ( t - t c / 2) t c t t f - t c 1 2 t f - tc t t f f + q c (t f - t ) 2
i

(11.35)

La figura 11.14 muestra una representacin de la ley de tiempo de movimiento obtenida | = 6. La especificacin de la aceleracin por imponer los datos q i = 0, q f = p, tf = 1, y |q c en el segmento parablico no es la nica manera de determinar trayectorias con un perfil de velocidad trapezoidal. Aparte de qi, qf y tc, tambin puede especificarse la velocidad de crucero qc, que se sujeta a la restriccin
|q f - q i | 2|q f - q i | < | q c| tf tf

(11.36)

11.4

Planeacin de punto a punto

305

3 2 1 0

Rad

0.2

0.4

0.6 Seg a) Posicin

0.8

5 4 3

Rad/s

2 1 0 0 0.2 0.4 0.6 0.8 Seg b) Velocidad 1

20
2

10 0

Rad/s

10 20 0 0.2 0.4 0.6 Seg 0.8 1

c) Aceleracin

Figura 11.14

Historiales de tiempo con el perl de ley de tiempo de velocidad trapezoidal

306

CAPTULO

11 Planeacin de movimientos

=q t , la ecuacin (11.32) permite que se calcule t como Si se reconoce que q c c c c tc =


qi - q f + q c tf qc

(11.37)

y por ende la aceleracin resultante es

qc =

q2 c q i - q f + q c tf

(11.38)

como en las ecuaciones (11.37) y (11.38) permiten la Los valores calculados de tc y q c generacin de la secuencia de polinomios como queda expresado en la ecuacin (11.35). La adopcin de un perfil de velocidad trapezoidal da como resultado un peor ndice de desempeo en comparacin con el polinomio cbico. La disminucin, sin embargo, se limita; el tf trmino t 2 dt se incrementa en 12.5% respecto al caso ptimo.

11.5

Generacin de ruta continua


Aplicacin del movimiento de ruta continua

En varias aplicaciones, la ruta se describe en trminos de un nmero de puntos mayores a dos. Por ejemplo, incluso para el simple movimiento de punto a punto de una tarea de recoger y colocar, podr valer la pena Donde es necesario el movimiento asignar dos puntos intermedios entre el punto inicial continuo del efector nal a lo largo de una ruta, por ejemplo, al soldar y el punto final. Pueden configurarse posiciones condos tubos. venientes para levantar y bajar el objeto, por lo que se obtienen velocidades reducidas respecto a la transferencia directa del objeto. Para aplicaciones ms complejas, puede ser conveniente asignar una secuencia de puntos con el fin de garantizar un mejor monitoreo de las trayectorias ejecutadas; los puntos deben especificarse con mayor densidad en aquellos segmentos de la ruta donde tienen que evitarse obstculos o donde se espera una curvatura de ruta alta. No debe olvidarse que las variables articulares correspondientes se calcularon con configuraciones del espacio cartesiano. Por lo tanto, el problema es generar una trayectoria donde N puntos, llamados puntos de ruta, se especifican y el manipulador tiene que alcanzarlos en ciertos instantes de tiempo. Para cada variable articular No es posible asignar las velocidades iniciales y finales. Conforme aumenta el orden de un polinomio, se incrementa su comportamiento oscilatorio, y esto podr llevar a trayectorias que no son naturales para el manipulador. La precisin numrica para la computacin de coeficientes polinmicos disminuye conforme se incrementa el orden. El sistema resultante de ecuaciones de restriccin es difcil de resolver. Los coeficientes polinomiales dependen de todos los puntos asignados; entonces, si se desea cambiar un punto, tienen que volverse a calcular todos.

11.5

Generacin de ruta continua

307

Estos inconvenientes pueden superarse si se considera un nmero adecuado de polinomios de interpolacin de bajo orden, continuos en los puntos de ruta, en lugar de un solo polinomio de orden alto. De acuerdo con la seccin anterior, el polinomio de interpolacin del orden ms bajo es el polinomio cbico, puesto que permite imponer la continuidad de velocidades en los puntos de ruta. En la variable de una articulacin sencilla, se busca una funcin q(t), formada por una secuencia de N 1 polinomios cbicos qk(t), para k = 1, . . ., N 1, continuo con las primeras derivadas. La funcin q(t) alcanza los valores qk para t = tk(k = 1, . . ., N), y q1 = q0 en t1 = 0; y qN = qf en tN = tf; los qk representan los puntos de ruta que describen la trayectoria deseada en t = tk, como se muestra en la figura 11.15. Pueden considerarse las siguientes situaciones: Valores arbitrarios de q (t) se imponen en los puntos de ruta. Los valores de q (t) en los puntos de ruta se asignan de acuerdo con ciertos criterios. (t) ser continua en los puntos de ruta. La aceleracin q Para simplificar el problema, tambin es posible encontrar polinomios de interpolacin de un orden menor de tres que determinan trayectorias que pasan junto a los puntos de ruta en los instantes determinados de tiempo.

11.5.1

Polinomios de interpolacin con restricciones de velocidad en puntos de ruta

Esta solucin requiere que el usuario sea capaz de especificar la velocidad deseada en cada punto de la ruta; la solucin no tiene ninguna novedad respecto a los conceptos que se mencionan arriba. El sistema de ecuaciones que permite el clculo del coeficiente de los N 1 polinomios cbicos que interpola los N puntos se obtiene mediante la imposicin de las siguientes condiciones sobre el polinomio genrico rk(t), interpolando qk y qk+1 para k = 1, , N 1: r k (tk) = q k; r k (tk +1) = q k +1; rk (tk) = q k ; rk (tk +1) = q k +1 (11.39)

El resultado es N 1 sistemas de cuatro ecuaciones en los cuatro coeficientes desconocidos del polinomio genrico; stos pueden resolverse uno independiente del otro. Las
q

q2 r2 r1 q3 r 3 rN1 qN = qf

q1 = qi t1 = 0 t2 t3 tN = tf t

Figura 11.15

Una trayectoria sobre una ruta dada, obtenida por medio de polinomios de interpolacin

308

CAPTULO

11 Planeacin de movimientos

=q = 0) velocidades iniciales y finales de la trayectoria se ponen normalmente en cero (q 1 N y la continuidad de velocidad en los puntos ruta se asegura al poner
r k (tk +1) = r k +1 (tk +1), para k = 1,, N - 2

(11.40)

La figura 11.6 presenta el historial de tiempo de posicin, velocidad y aceleracin obtenidas mediante los datos: q1 = 0, q2 = 2p, q3 = p /2, q4 = p , t1 = 0, t2 = 2, t3 = 3, t4 = 5, = 0, q = , q = , y q = 0. Observe la discontinuidad resultante en la aceleracin, puesto q 1 2 3 4 que slo se garantiza la continuidad de la velocidad.

11.5.2

Polinomios de interpolacin con velocidades calculadas en puntos de ruta

En este caso, tiene que computarse la velocidad de la articulacin en una ruta, de acuerdo con ciertos criterios. Mediante la interpolacin de los puntos de la ruta con segmentos lineales, pueden calcularse las velocidades relativas conforme a las siguientes reglas:

q1 = 0 qk =

0 R | 1 S (v |2 T

sgn (v k ) sgn (v k + 1)
k

+ v k + 1) sgn (v k ) sgn (v k + 1)

(11.41)

qN = 0
donde vk = (qk qk 1)/(tk tk 1) proporciona la pendiente del segmento en el intervalo [tk1, tk]. Con la configuracin de arriba, la determinacin de los polinomios de interpolacin se reduce al caso anterior. La figura 11.17 presenta el historial de tiempo de posicin, velocidad y aceleracin que se obtienen mediante los siguientes datos: q1 = 0, q2 = 2p, q3 = p/2, = 0, y q = 0. Es fcil darse cuenta que la secuencia impuesta q4 = p, t1 = 0, t2 = 2, t3 = 3, t4 = 5, q 1 4 por puntos ruta conduce a tener cero velocidad en los puntos intermedios.

11.5.3

Polinomios de interpolacin con aceleracin continua en puntos de ruta (splines)


Spline

El trmino spline (funcin de empalme suave) proviene de los bosquejos generados en dibujo, donde los splines eran tiras exibles guiadas por puntos en un papel y que se usaban para dibujar curvas.

Ninguna de las dos soluciones mencionadas asegura la continuidad de aceleracin en los puntos de la ruta. Dada una secuencia de N puntos de ruta, tambin la aceleracin es continua en cada tk si se imponen cuatro restricciones; a decir: dos restricciones de posicin para cada uno de los cbicos adyacentes, y dos restricciones que garantizan la continuidad de velocidad y aceleracin. Entonces tiene que cumplirse con las siguientes ecuaciones: 11.42)

r k 1 (tk) = q k; r k 1 (tk) = r k (tk); r k 1 (tk); = r k (tk); y r k 1(tk) = r k (tk)

El sistema resultante para los N puntos de la ruta, incluidos los puntos iniciales y finales, no puede resolverse. De hecho, se forma por 4(N 2) ecuaciones para los puntos intermedios

11.5

Generacin de ruta continua

309

6 4 2 0

Rad

2 Seg a) Posicin

Rad/s

2 Seg b) Velocidad

20

Rad/s2

0 20 40 0 2 Seg c) Aceleracin 4 6

Figura 11.16

Polinomios de interpolacin con restricciones de velocidad en puntos de ruta

310

CAPTULO

11 Planeacin de movimientos

Rad

4 2 0 0 2 Seg a) Posicin 4 6

Rad/s

2 Seg b) Velocidad

30 20 10

Rad/s2

0 10 20 30 0 2 Seg c) Aceleracin 4 6

Figura 11.17

Polinomios de interpolacin con velocidades calculadas en puntos de ruta

11.5

Generacin de ruta continua

311

y seis ecuaciones para los puntos externos; las restricciones de posicin para los polinomios r 0(t1) = qi y rN (tf) = qf no deben contarse como polinomios, ya que simplemente son los valores impuestos de las velocidades y aceleraciones iniciales y finales. En suma, se tienen 4N 2 ecuaciones en 4(N 1) incgnitas. Slo puede resolverse el sistema si se eliminan las dos ecuaciones que permiten la asignacin arbitraria de los valores de aceleracin inicial y final. Debern usarse polinomios del cuarto orden para incluir esta posibilidad para el primero y ltimo segmentos. Por otro lado, si solamente se han de usar polinomios del tercer orden, puede realizarse el siguiente engao. Se introducen dos puntos virtuales para los cuales pueden imponerse restricciones de continuidad sobre posicin, velocidad y aceleracin, aunque sin especificar las posiciones reales. Cabe sealar que la ubicacin efectiva de estos puntos es relevante, pues sus restricciones de posicin se refieren nicamente a la continuidad. Por lo tanto, la introduccin de dos puntos virtuales implica la determinacin de N + 1 polinomios cbicos. Considere N + 2 instantes de tiempo tk, donde t2 y tN+1 convencionalmente se refieren a los puntos virtuales. El sistema de ecuaciones para determinar los N + 1 polinomios cbicos puede encontrarse si se toman las 4(N 2) ecuaciones: rk 1 (tk) = qk; r k 1(tk) = q k (tk); r k 1(tk) = q k (tk); y r k 1 (tk) = q k (tk ) para k = 3, , N, escrito para los N 2 puntos de ruta intermedios, las 6 ecuaciones r1(t1) = q i; r 1(t1) = q i; y r 1 (t1) = q i r N +1 (tN +2) = qf ; r N +1(tN +2) = q f ; y r N +1 (tN +2) = q f escritas para los puntos iniciales y finales y las 6 ecuaciones: r k 1 (tk) = r k (tk); r k 1 (tk) = r k (tk); y r k 1 (tk) = r k (tk) (11.45) (11.44a) (11.44b) (11.43)

para k = 2, N + 1, escritas para los dos puntos virtuales. El sistema resultante tiene 4(N + 1) ecuaciones en 4(N + 1) desconocidas, que son los coeficientes de los N + 1 polinomios cbicos. La solucin para el sistema es computacionalmente demandante, incluso para valores bajos de N. No obstante, el problema puede proyectarse en forma conveniente con el fin de resolver el sistema de ecuaciones resultante mediante un algoritmo computacionalmente eficiente. Puesto que el polinomio genrico rk(t) es cbico, su segunda derivada debe ser una funcin lineal de tiempo que luego puede escribirse como
r k (t) = r k (t k + 1) r k (t k ) (tk +1 t) + (t tk) k = 1,, N + 1 Dt k Dt k

(11.46)

donde tk = tk+1 tk indica el intervalo por alcanzar qk+1 a partir de qk. Mediante la doble integracin de la ecuacin (11.46) a travs del tiempo, puede escribirse el polinomio genrico como r k (t) =
r k (t k + 1) r k (t k ) (tk +1 t) 3 + (t tk) 3 + 6Dt k 6Dt k

FG r (t ) - Dt r (t ) IJ (t 6 H Dt K
k k k k k k

F r (t GH Dt
k

k + 1) k

Dt k r k (t k +1) 6

I (t t ) JK
k

k +1

t)

(11.47)

312

CAPTULO

11 Planeacin de movimientos

k (tk) y r k (tk+1). Obpara k = 1, , N + 1 que depende de las 4 incgnitas r k (tk), r k (tk+1), r serve que las N variables qk para k 2, N + 1 se determinan mediante la ecuacin (11.39), mientras se impone continuidad para q2 y qN+1 por medio de la ecuacin (11.42). Usando las ecuaciones (11.42) y (11.44), se reducen las incgnitas en N + 1 ecuacin (11.47) a 2(N + 2). Por medio de la observacin de que la ecuacin (11.44) depende de q2 y qN+1 y que yq se determinan, q y q pueden computarse como una funcin de r 1(t1) y r N+1(tN+2), q i f 2 N+1 respectivamente. Por lo tanto, queda un nmero de 2(N + 1) incgnitas. Tomando en cuenta yq se las ecuaciones (11.42) y (11.45) y sin tomar en cuenta que en la ecuacin (11.44) q i f determinan, las incgnitasse reducen a N. En este punto pueden utilizarse las ecuaciones (11.42) y (11.45) para escribir el sistema de N ecuaciones en N incgnitas:
r 1 (t2) = r 2 (t2);; r N (tN +1) = r N +1 (tN +1)

(11.48)

k(tk+1) como r k+1(tk+1) para La diferenciacin del tiempo de la ecuacin (11.47) da tanto r k = 1, , N y, por lo tanto, es posible escribir un sistema de ecuaciones lineales del tipo A [ r 2 (t2) r N +1(tN +1)] T = b (11.49)

que presenta un vector b de trminos conocidos y una matriz de coeficiente no singular A; la solucin para este sistema siempre existe y es nica. Puede demostrarse que la matriz A tiene una estructura de banda tridiagonal del tipo

LMa MMa A= MM 0 MN 0

11 21

a12 a23 0 0

0 0

0 0

a N -1, N -1 a N -1, N a N , N -1 a NN

OP PP PP PQ

(11.50)

que simplifica la solucin para el sistema. Esta matriz es la misma para todas las articulaciones, ya que depende solamente de los intervalos tk especificados. Existe un eficiente algoritmo de solucin para el mencionado sistema, que se determina por un clculo directo seguido 2(t2) puede calcularse como funcin de por un clculo inverso. Segn la primera ecuacin, r 3(t3) y luego se sustituye en la segunda ecuacin que entonces se vuelve una ecuacin de r 4(t4). Esto se realiza en forma directa mediante la transformacin de 3(t3) y r las incgnitas r N+1(tN+1) todas las ecuaciones a ecuaciones con dos incgnitas, excepto la ltima que tendr a r como nica incgnita. En este punto pueden determinarse todas las incgnitas paso a paso por medio de un clculo inverso. La secuencia arriba mencionada de polinomios cbicos se llama spline para indicar las funciones continuas que interpolan una secuencia de puntos determinados, asegurando la continuidad de la funcin y sus derivadas. La figura 11.18 ilustra el historial de tiempo de posicin, velocidad y aceleracin obteni yq = 0. do mediante los datos q1 = 0, q3 = 2p, q4 = p/2, q6 = p, t1 = 0, t3 = 2, t4 = 3, t6 = 5, q 1 6 Dos diferentes pares de puntos virtuales fueron considerados en los instantes de tiempo: t2 = 0.5, t5 = 4.5 (la lnea continua en la figura) y t2 = 1.5, t5 = 3.5 (la lnea punteada en la figura), respectivamente. Observe el perfil de velocidad parablica y el perfil de aceleracin lineal. Adems, para el segundo par, se obtienen valores de aceleracin ms grandes, ya que los instantes de tiempo relativos son ms cercanos a los dos puntos intermedios.

11.5

Generacin de ruta continua

313

Rad

4 2 0

2 Seg

a) Posicin

Rad/s

2 Seg

b) Velocidad 30 20 10

Rad/s2

0 10 20 30 0 1 2 Seg c) Aceleracin 3 4 5

Figura 11.18

Splines cbicos para dos diferentes pares de puntos virtuales

314

CAPTULO

11 Planeacin de movimientos

RESUMEN
En este captulo se presentan varias tcnicas de planeacin de movimientos. Tambin se analizan trayectorias del espacio articulares y del espacio cartesiano que pueden seguirse por los actuadores articulares y por el efector final, respectivamente. Aparte de las operaciones de levantar y colocar, tambin se presenta la planeacin de movimiento continuo en aplicaciones como la soldadura o el evitar obstculos.

EJERCICIOS
11.1 Se desea que se mueva la primera articulacin de un robot de seis ejes desde la posicin inicial q0 = 15 hasta la posicin final qf = 75 en 3 segundos usando un polinomio cbico. a) b) c) d) Determine la trayectoria. Calcule el ngulo articular a 2 segundos. Comente acerca de sus velocidades y aceleraciones del punto final. Compare el resultado presente con los que se obtuvieron en el ejemplo 11.1.

11.2 Repita el problema del ejercicio 11.1, pero esta vez con la aceleracin inicial y la desaceleracin final especificados como 5/s2. 11.3 Un robot planar de dos grados de libertad debe seguir una lnea recta entre los puntos de inicio (3.10) cm y final (8.15) cm del segmento de movimiento. Busque la variable de articulacin para el robot si la ruta se divide en 5 segmentos. Suponga que cada eslabn tiene una longitud de 10 cm. 11.4 Busque los coeficientes de dos polinomios cbicos que estn conectados en un spline de dos segmentos con aceleracin continua en los puntos de va intermedios. 11.5 Una sola trayectoria cbica se determina por q (t) = 10 + 90 t 2 60 t 3 que se utiliza entre t = 0 y 1 seg. Cules son las posiciones, velocidades y aceleraciones iniciales y finales? 11.6 Busque los coeficientes de un polinomio cbico q (t) = a0 + a1t + a2 t 2 + a3 t3 (0), q (0), y q (t ) se especifican. cuando q (0), q f 11.7 Una articulacin giratoria se mueve desde 150 hasta +450 en 4 segundos. Determine una trayectoria polinmica continua si las velocidades y aceleraciones iniciales y finales son cero. Cul es el orden del polinomio? 11.8 Para un manipulador de 3 grados de libertad, disee una combinacin con una trayectoria lineal y con una trayectoria parablica. La orientacin inicial y final

Ejercicios basados en MATLAB

315

del efector final, denotada por Qi y Qf , respectivamente, se especifica mediante las siguientes matrices:

LM0 Q M1 MN0
i

1 0 0 0 0 0 0 y Qf 1 -1 0 0 -1 0 0 1

OP PP Q

LM MM N

OP PP Q

11.9 El perfil de velocidad de una trayectoria es trapezoidal con un segmento de aceleracin constante para 0.5 segundos y una velocidad constante de 10/seg. Determine los parmetros de la trayectoria continua para interpolar la secuencia de tiempo de la posicin con este tipo de trayectoria.

EJERCICIOS BASADOS EN MATLAB


11.10 Grafique posiciones, velocidades y aceleraciones para la trayectoria determinada en el ejercicio 11.5. Utilice 100 pasos entre t = 0 y 1 seg. 11.11 Para el ejercicio 11.6, busque los valores numricos de los coeficientes mediante la formulacin del problema como una ecuacin algebraica lineal en la forma de (0) = 0, q (0) = 0, q (t ) = Ax = b, donde x [a0 a1 a2 a3] T. Grafique q (0) = 0, q f o 30 y tf = 5 seg. Grafique q (t), q (t ) y q (t). 11.12 Determine los coeficientes de un polinomio de quinto grado, formulando el problema como una ecuacin algebraica lineal en la forma de Ax = b, donde x (0) = q (0) = q (t ) = q (t ) = 0, [a0 a1 a2 a3 a4 a5] T, y q (0) = 0, q (tf) = 30, q f f tf = 5 seg. Grafique (t), q (t) y q (t). 11.13 Grafique los diagramas de posicin, velocidad y aceleracin del ejercicio 11.9.

Captulo

12
Computadoras para robots

En este captulo se analizar la interfaz entre el usuario (humano) y el robot. Normalmente, es por medio de la interfaz de la computadora como el usuario aprovecha todos los algoritmos de mecnica y control. En los captulos anteriores se present un nmero de algoritmos asociados con cinemtica, dinmica y control del sistema robtico. Muchos de estos clculos tienen restricciones de tiempo real porque deben completarse dentro de un corto periodo (por decir, 15 milisegundos). Adicionalmente, estos clculos son a menudo complejos e involucran la evaluacin de funciones trigonomtricas, la multiplicacin o inversin de matrices o el procesamiento de grandes cantidades de datos, como los de una fotografa.

12.1

Velocidad de computacin

Existe un nmero de algoritmos para controlar los diferentes aspectos de los movimientos de un robot, para los cuales se demostrar cmo pueden ejecutarse los clculos complejos en estos algoritmos dentro de un tiempo corto. Tambin se presentarn maneras de organizar el software y el hardware para cumplir con los objetivos.

12.1.1

Agilizacin de software

En esta subseccin se abordarn tcnicas para aumentar la velocidad de clculo en una computadora convencional. Estas tcnicas aprovechan las propiedades nicas de muchos clculos que son necesarios para el control de robots.

12.1

Velocidad de computacin

317

i) El uso de la aritmtica de nmeros enteros Aqu los nmeros sern


representados como enteros y se evitar el uso de representacin de puntos flotantes (reales). Esto puede lograrse mediante una tcnica que se El requerimiento conoce como escalamiento, donde un nmero fracciode velocidad de nal, por ejemplo 22.75, se representa por un nmero computacin entero 2 275, multiplicado o escalado por una constan- La velocidad de computacin deber te 1/100. Se descubre que si el escalamiento es cons- ser menor que la capacidad de velocitante, puede obtenerse una ventaja considerable de dad de un robot. velocidad sobre el punto flotante. Aun con la introduccin de procesadores flotantes de alta velocidad, la aritmtica de nmeros enteros es normalmente 5 a 10 veces ms rpida que la del punto flotante. Adems, usando pura aritmtica de nmeros enteros, todava pueden manejarse valores fraccionarios. Antes de usar esta tcnica, tiene que asegurarse de que la prdida de precisin inherente al escalamiento no impactar seriamente el desempeo del robot.

ii) La computacin de funciones trigonomtricas

En los sistemas de computacin comercial, las funciones trigonomtricas se evalan por medio de varias tcnicas, incluidas funciones racionales o polinomios de Chebychev. La aritmtica involucrada se hace usualmente con punto flotante, lo que resulta en alta precisin y baja velocidad. En aplicaciones robticas, sin embargo, el mecanismo ms apropiado para computar funciones trigonomtricas es mediante la consulta de tablas. Por ejemplo, los valores de sen q se guardan simplemente en una tabla para q = 0 89 grados. Esta tabla de 90 palabras proporciona al instante el valor del seno de un ngulo con una precisin de 1. De hecho, las 90 palabras requieren de menos memoria que la que necesita un programa para computar la funcin en forma explcita. Si se requiere una precisin ms alta que el grado ms cercano, existen dos opciones. La primera es la interpolacin lineal entre las entradas de la tabla. Puesto que las funciones de seno y coseno son bastante lineales entre intervalos de 1, la interpolacin rinde excelentes resultados. Otra tcnica de interpolacin hace uso de la identidad trigonomtrica para el seno de dos ngulos sumados, es decir, (12.1) sen (a + b) = sen a cos b + cos a sen b El ngulo se segmenta en dos partes, un nmero entero a y una fraccin b. Luego se aplica la ecuacin (12.1). La evaluacin exacta de la ecuacin (12.1) requiere despus cuatro consultas de tabla para los valores de sen , cos b, cos y sen b, dos multiplicaciones y una suma. Una evaluacin aproximada puede obtenerse an ms rpido. Para ello, el ngulo se escala de tal manera que la parte fraccionaria es muy pequea. Supongamos que b es la parte fraccionaria, entonces (12.2) cos b = 1, y sen b = b Esto queda numricamente ilustrado en el siguiente ejemplo.

Ejemplo 12.1

El valor de sen (0.8034)

Suponga que los valores de la funcin de seno son tabulados en incrementos de 0.01 rad, es decir, que los valores de sen (0.80) y sen (0.81), etc., son conocidos, entonces puede escribirse (12.3a) 0.8034 rad = 0.8 rad + 0.0034 rad

318

CAPTULO

12

Computadoras para robots

Luego, usando la ecuacin (12.3a), puede escribirse la ecuacin (12.1) como sen (0.8034) = sen (0.80) cos (0.0034) + cos (0.80) sen (0.0034) (12.3b) Para el ngulo muy pequeo de 0.0034 rad, cos (0.0034) = 1 y sen (0.0034) = 0.0034. Por ende, (12.3c) sen (0.8034) = sen (0.80) + 0.0034 cos (0.80) donde sen (0.80) y cos (0.80) estn disponibles en los resultados tabulados. Esta tcnica de interpolacin requiere solamente dos consultas de tabla, una multiplicacin y una suma. Observe que en la implementacin real para un sistema robtico, el clculo de funciones trigonomtricas es de los ms rpidos.

iii) Operaciones de matriz En el control de robots, por lo general no se requiere la inversin de una matriz en forma explcita, sino, ms bien, se resuelve un conjunto de ecuaciones algebraicas lineales, lo que se realiza en forma numrica. En caso de que tenga que computarse una inversin explcita, esto se hace en forma numrica mediante la resolucin de una serie de ecuaciones algebraicas lineales cuyos lados derechos son las columnas de una matriz identidad mientras que las incgnitas correspondientes son la columna de la inversa deseada. Por ejemplo, si una matriz X de n n es la inversa de la matriz J de n n, es decir, X = J1, entonces slo tienen que resolverse n ecuaciones algebraicas lineales n veces basados en el hecho de que JX = 1 1 es la matriz de identidad de n n. Las ecuaciones algebraicas para i = 1, , n son Jx i = ei, donde X [x1,, x n] y 1 [e1,, en] (12.4) Adems, los vectores xj [xlj,, xnj]T y ej [eij]T para i = 1,..., n contienen n elementos escalares. Adicionalmente, eij = 1 cuando i = j, de otra manera eij = 0 cuando i j. En la literatura del anlisis numrico, alta precisin y estabilidad o solidez son importantes, mientras que en la robtica, la velocidad es esencial, mientras que la precisin, aunque sea importante, no es tan difcil de mantener. De este modo, en muchas instancias los mtodos simples y rpidos se prefieren ante la complejidad y la alta precisin.

12.1.2

Consideraciones de hardware

La computacin distribuida, es decir, el uso de varias computadoras que interactan en tiempo real para proporcionar la velocidad y potencia computacional requerida, tiene una aplicacin inmediata en la robtica. La literatura sobre la computacin distribuida es diversa y abundante. Hasta aqu, se ha supuesto que cualquier computacin se est realizando mediante una sola computadora de propsito general. Aqu se mostrar cmo utilizar la computacin distribuida para realizar dos funciones simples, tales como, la lectura de encders para obtener informacin sobre las posiciones as como el cmputo de las seales de servo-error en las articulaciones.

i) Lectura de encders La velocidad con la que los datos vienen de un encder depende de la velocidad rotacional de la articulacin, de la resolucin del encder y del algoritmo que se usa para el anlisis de las seales. Si se supone una codificacin de cuadratura (un nuevo conteo para cada uno de los cuatro estados de un encder incremental), un encder de 2 500 conteos/revolucin y una velocidad mxima de la articulacin de una

12.1

Velocidad de computacin

319

rev/seg, se encuentra un nuevo pulso de datos en cada 100 s. Usando interrupciones, el conjunto mnimo absoluto de instrucciones en cualquier software asociado con la interfaz de la computadora con los encders sera
REGISTER SAVE BIT TEST JUMP INCREMENT (OR DECREMENT) REGISTER RESTORE RETURN

Este proceso normalmente requerira aproximadamente 5 a 10 s en cualquier computadora. Si la velocidad del procesador se toma como 5 s y tienen que controlarse seis articulaciones con mxima velocidad, entonces tan slo para mantenerse al tanto de las posiciones se requerira 5 6 = 30 s, es decir, 30% de los recursos de la computadora.

ii) La computacin de seales de servo-error


lador PD (proporcional-derivativo) tiene que computarse t = K p (q d q ) K v q

Por medio de un contro-

(12.5)

donde s es el vector de los pares de torsin deseados, y pd y p son los ngulos deseado y real es la velocidad real de la articulacin. de la articulacin, respectivamente, mientras que Adems, los trminos Kp y Kv son las matrices de las ganancias proporcional y derivativa, respectivamente. El programa para implementar este tipo de clculo es
LOAD qd LOAD q SUBTRACT MULTIPLY (pd p) BY Kp LOAD p BY Kv MULTIPLY p SUBTRACT OUTPUT RETURN

De manera optimista, este programa tardara 15 s. Por razones de estabilidad, el servo de la articulacin tiene que calcularse aproximadamente cada 2 ms. Este nmero vara considerablemente segn las resonancias estructurales del manipulador. Por lo tanto, el clculo del servo de articulacin para las seis articulaciones andar por el orden de
6 15 10 - 6 2 10 - 3

= 45 10 3

es decir, 4.5% de los recursos de la computadora. Estas estimaciones varan tremendamente segn los detalles de implementacin. La cuestin es, sin embargo, que una cantidad significativa de la computacin involucrada en la robtica es sencilla, localizada y fcilmente distribuible entre los elementos de procesamiento.

320

CAPTULO

12

Computadoras para robots

LSI-11

mp

mp

mp

mp

mp

mp

Articulacin 1 Articulacin 2

Articulacin 3 Articulacin 4 Articulacin 5 Articulacin 6

Figura 12.1

Arquitectura PUMA

12.2

Requerimientos de hardware

La arquitectura Unimate PUMA ejemplifica el concepto de distribucin por articulacin. Esta arquitectura se presenta en la figura 12.1. Se adjunta un procesador separado a los transductores de entrada y salida de cada articulacin. Este procesador mantiene la posicin angular y la velocidad actual de esta articulacin, y la lleva mediante servo hacia el punto de referencia proporcionado por el procesador central. ste lee la posicin angular de los procesadores de las articulaciones, computa las transformaciones cinemticas y proporciona puntos de referencia a los procesadores de articulaciones. Debido a que se realiza toda la cinemtica en el mismo procesador, la arquitectura proporciona simplicidad de diseo y programacin, mientras que descarga el control simultneo de las articulaciones a procesadores paralelos. El sistema que se muestra en la figura 12.2 presenta una filosofa arquitectnica alternativa de distribucin de compuQu es hardware? tacin por funcin. Tal como el PUMA, este sistema El hardware son las cosas fsicas, como asocia un procesador a cada articulacin. Sin embargo, los circuitos integrados en la forma de el clculo de la cinemtica tambin se distribuye. Cada chips electrnicos, circuitos elctricos procesador mantiene la posicin y velocidad de su aren tarjetas impresas, etc., que se sienticulacin, as como tambin las diferentes funciones ten duras cuando se tocan. trigonomtricas de estos parmetros. Estas cantidades se guardan en una memoria multipuertos y por ende estn inmediatamente disponibles para los dems procesadores. El clculo de los dems trminos cinemticos se distribuye uniformemente entre los procesadores. Este mtodo distribuye la carga computacional de manera ms uniforme a costa de una pieza compleja de hardware (la memoria multipuertos 9511) y de software ms complejo. Una extensin inmediata y una mejora de esta arquitectura seran como se muestra en la figura 12.3, desasociando el servo-clculo de la cinemtica. La figura 12.3 es, de hecho, la arquitectura PUMA con el nico procesador central sustituido por un arreglo de procesadores y memorias comunes. El rpido desarrollo de dispositivos con Integraciones de Gran Escala (LSI) e Integraciones de Muy Gran Escala (VLSI) puede ofrecer aumentos tremendos de rendimiento cuando se combina convenientemente con la computacin general. Por ejemplo, el chip AMD 9511 ofrece una capacidad de punto flotan-

12.2

Requerimientos de hardware

321

9511

9511

Articulacin

9900 MEMORIA GLOBAL

9900

Articulacin

9511

9511

Articulacin

Articulacin

9900 9511 9900 9900

9900 9511

Articulacin USUARIO

Articulacin

Figura 12.2

Un control de robot distribuido por funcin y por articulacin

te completa de 32 bits y se disea para una fcil interfaz con el microprocesador de 8 bits. El Intel 8087 ofrece una aritmtica de alta velocidad y acoplamiento directo al bus 8086. Empresas como TRW y AMD anuncian chips multiplicadores que realizan multiplicaciones de nmeros enteros de 16 bits en tan slo unos nanosegundos. La tecnologa de punta cambia tan rpidamente que es una posibilidad real pensar en chips para transformacin de coordenadas y un chip que compute el jacobiano e incluso el jacobiano inverso en tiempo real. Estos chips tienen las siguientes caractersticas: i) Clculos rpidos y repetitivos (normalmente aquellos que no requieren ramas condicionales).

9511 Articulacin Servoprocesador 9900 9511 Articulacin Servoprocesador 9900 9511 Servoprocesador Articulacin Usuario 9900 9900 Servoprocesador Articulacin Memoria global

9511 9900 9900 9511 9511 Servoprocesador Articulacin Servoprocesador Articulacin

Figura 12.3

Una arquitectura propuesta para desacoplar los servo-clculos

322

CAPTULO

12

Computadoras para robots

ii) Fcil interfaz con un sistema de bus de un procesador universal. iii) Control directo por uno de estos procesadores.

12.3

Consideraciones de control

El sistema de control para supervisar las actividades de un sistema robtico deber ser dotado de un nmero de herramientas que ofrecen las siguientes funciones: La capacidad de mover objetos fsicos en el mbito de trabajo, es decir, la habilidad de manipulacin. La capacidad de obtener informacin sobre el estado del sistema y el mbito de trabajo, es decir, la habilidad sensorial. La capacidad de explotar la informacin para modificar el comportamiento del sistema de manera programada, es decir, la habilidad de comportamiento inteligente. La capacidad de almacenar, elaborar y proporcionar datos sobre la actividad del sistema, es decir, la habilidad del procesamiento de datos.

Una implementacin efectiva de estas funciones puede obtenerse por medio de una arquitectura funcional, considerando sta como la supervisin de varios niveles de actividad dispuestos en una estructura jerrquica. Quiz la mejor manera de entender el trmino jerrquico es mediante la estructura de mando militar, en la que los generales pasan rdenes a los oficiales, los cuales pasan rdenes a los sargentos quienes pasan rdenes a las tropas. En este tipo de jerarqua, se supone que el control fluye desde arriba hacia abajo, y los reportes supuestamente fluyen desde abajo hacia arriba. Los niveles bajos de la estructura estn orientados para la ejecucin de movimientos fsicos, mientras que los niveles ms altos estn orientados hacia la planeacin lgica de acciones. Los niveles estn conectados por el flujo de datos; aqullos dirigidos hacia los niveles ms altos se refieren a mediciones o resultados de acciones, mientras que los que estn dirigidos hacia los niveles ms bajos se enfocan en la transmisin de directrices. En cuanto a las funciones del sistema de control que implementan el manejo de las actividades de sistema que se enumeraron arriba, en general, conviene asignar tres modelos funcionales a cada nivel. El primer mdulo se dedica a la gestin de datos sensoriales (mdulo sensorial). El segundo se dedica a proporcionar informacin relevante del entorno (mdulo de modelado). El tercer mdulo se dedica a decidir la poltica de la accin (mdulo de decisin). De manera ms especfica, los mdulos sensoriales adquieren, elaboran, correlacionan e integran datos sensoriales en tiempo y espacio, con el fin de reconocer y medir los datos del sistema y las caractersticas del ambiente. Queda claro que las funciones de cada mdulo estn orientadas al manejo de los datos sensoriales relevantes de su nivel. Por otro lado, los mdulos de modelado contienen modelos derivados con base en conocimientos a priori del sistema y el ambiente. Estos modelos se actualizan mediante la informacin que proviene de los mdulos sensoriales, mientras que la activacin de las funciones requeridas se encarga a los mdulos de decisin. Finalmente, los mdulos de decisin realizan la descomposicin de tareas de alto nivel en acciones de nivel bajo. Esta descomposicin de tareas tiene que ver tanto con la descomposicin en tiempo de acciones secuenciales como con la descomposicin en el espacio de acciones simultneas. Cada mdulo de decisin queda encargado de las funciones referentes a la gestin de asignaciones de accin elemental, a la

12.3

Consideraciones de control

323

planeacin y a la ejecucin de tareas. Las funciones de un mdulo de decisin caracterizan el nivel de la jerarqua y determinan las funciones necesarias para los mdulos de modelado y sensoriales que operan en el mismo nivel. Esto implica que los contenidos de estos dos mdulos no permiten la determinacin privilegiada del nivel jerrquico, ya que la misma funcin podr estar presente en varios niveles, dependiendo de las necesidades de los mdulos de decisin en los niveles de alivio. La arquitectura funcional necesita una interfaz de operario en cada nivel de la jerarqua, de tal modo que se permita que un operario realice funciones de supervisin e intervencin en el sistema robtico. Una descomposicin jerrquica de una tarea de control, particularmente en la robtica, tiene el mismo sentido. Un ejemplo de este tipo de jerarqua en el control del robot PUMA se vio anteriormente. En este sistema, un procesador central computaba la cinemtica y proporcionaba puntos de referencia para los servos de las articulaciones. Algunos diseadores de sistemas robticos han planteado sus tareas de manera parecida. Aunque la mayora de los investigadores estara de acuerdo con la filosofa bsica del control jerrquico, existe una diferencia considerable en los mtodos que se usan para implementar la jerarqua. Por ejemplo, el control de un sistema multivariante podr considerarse en una forma rigurosamente matemtica y podrn tratarse de encontrar tcnicas ptimas o subptimas para controlar el sistema entero. Si estas tcnicas estn correctamente estructuradas, podrn implementarse en un una disposicin jerrquicamente estructurada de procesadores. Estas descomposiciones matemticas son el tema de gran parte de la investigacin actual en la teora de control y optimizacin. Un sistema robtico avanzado podr segmentarse en tres mdulos distintos, como se muestra en la figura 12.4. El mdulo de programa acepta entradas del usuario, de manera interactiva o en la forma de un programa del robot. Esta descripcin de tarea se traduce en un conjunto de comandos de nivel inferior, tal vez incluidas ramas condicionales, parecido a la tarea de un compilador que convierte de FORTRAN a un lenguaje mquina. El mdulo de ubicacin sirve para relacionar nombres y ubicaciones simblicas, por ejemplo, mordaza, a descripciones cartesianas de puntos en el espacio de trabajo. El mdulo de sistema de control es responsable de controlar los movimientos del robot para que pueda lograr las tareas descritas por el mdulo de programa en las ubicaciones descritas por el mdulo de ubicacin. El mdulo del sistema de control tiene un requerimiento de tiempo real y tiene que descomponerse ms. La figura 12.5 representa una descomposicin jerrquica de las funciones de control en tiempo real. El nmero exacto de niveles en esta descomposicin, como tambin las responsabilidades exactas de cada nivel, son detalles que se ubican en la preocupacin del diseador del sistema y no son importantes en este momento. Sin embargo, existen observaciones muy importantes que tienen que hacerse respecto a la estructura general de la figura 12.5. Primero que nada, en los niveles ms altos, las funciones de control son independientes de la geometra del brazo. Esto quiere decir que la determinacin de la trayectoria se realiza en coordenadas cartesianas relativas a las restricciones, por lo tanto podr ser necesario especificar ubicaciones en un sistema coordenado mvil, por ejemplo, en un transportador (lo que significa que el mdulo de ubicacin debe ser capaz de actualizaciones en tiempo real). Puesto que la descripcin de la tarea no requiere el conocimiento de la geometra del robot en esta fase, podrn usarse los mismos algoritmos y software para muchos robots diferentes, tal como FORTRAN puede usarse en cualquier tipo de computadora. En los niveles inferiores de la jerarqua de control, los detalles de los algoritmos se vuelven estrechamente relacionados con la geometra del brazo. Una vez que se hayan realizado las transformaciones cinemticas,

324

CAPTULO

12

Computadoras para robots


Mdulo de ubicacin Prepara la tabla de ubicacin Interfaz de comandos de descripcin de tareas al sistema de control

Mdulo de programa Prepara la tabla de descripcin de tareas

Mdulo de control

Valores de ubicacin de otras bases de datos Interfaz de datos de ubicacin al sistema de control

Figura 12.4
Procesamiento sensorial de alto nivel

Mdulos de control jerrquico

Subtarea

Procesamiento sensorial de nivel mediano

Movimiento elemental

Procesamiento sensorial de bajo nivel

Primitiva

Retroalimentacin de descripcin cartesiana Retroalimentacin de posicin de articulacin

Transformacin

Servo

Figura 12.5

Descomposicin jerrquica

12.4
Datos sensoriales, de error y estatus a niveles ms altos

Programacin de robots

325

Comando de entrada

Conjunto de algoritmos para procesar datos de retroalimentacin sensorial

Datos de retroalimentacin procesados xito relativo en obtener los datos de procesamiento deseados Condiciones de error de niveles ms bajos

Conjunto de algoritmos para generar salidas del sistema de control

Datos sensoriales, de error y de estatus de niveles inferiores

Tipos de datos sensoriales de procesamiento que van a ser retornados Predicciones de datos esperados Estatus respecto al xito en lograr el comando

Comando de salida

Figura 12.6

Detalles de un solo nivel

el algoritmo de control podr variar de un robot a otro. Esto se observa en los dos niveles inferiores de la figura 12.5. El nivel ms bajo compara puntos de referencia (proporcionados por el nivel siguiente) con posiciones de la articulacin (proporcionadas por sensores) y mueve la articulacin para reducir el error. El siguiente nivel computa las transformaciones cinemticas y proporciona estos puntos de referencia al nivel ms bajo. En la figura 12.5 puede observarse que en realidad hay dos jerarquas involucradas: una de control desde arriba hacia abajo y otra de estatus desde abajo hacia arriba. La figura 12.6 muestra esto en forma ms clara porque detalla un solo nivel en la estructura. Puesto que cada nivel en la jerarqua se define bien, funcionalmente, la tarea de control del robot puede dividirse en mdulos de procesamiento en los que cada mdulo tiene entradas y salidas bien definidas y, por ende, puede asociarse con un elemento de procesamiento independiente.

12.4

Programacin de robots

La ventaja ms grande en la aplicacin de robots industriales es su flexibilidad, su habilidad de reprogramacin para nuevas producciones y su gran rango de movimientos. Sin embargo, un obstculo mayor en el uso de manipuladores como mquinas de ensamble universales es la falta de una comunicacin adecuada y eficiente entre el usuario y el sistema robtico, de tal modo que Software el usuario pueda dirigir el manipulador para realizar una determinada tarea. La utilizacin de la flexibilidad El signicado de software es un condel robot presupone la programacin efectiva. El sistejunto de programas que hacen que el hardware funcione adecuadamenma de cmputo que controla al manipulador tiene que estar programado para ensear al robot la secuencia te.

326

CAPTULO

12

Computadoras para robots

particular de movimientos y otras acciones que tengan que ejecutarse con el fin de lograr su tarea. Hay varias maneras de programacin de robots industriales, a saber, online y offline.

12.4.1

Programacin online

La programacin online se lleva a cabo en el propio lugar de produccin e involucra la celda de trabajo. El robot se programa mediante una caja de prcticas. La programacin online tiene las siguientes ventajas y desventajas en comparacin con la programacin offline:

Ventajas
Fcil acceso En concordancia con la posicin real de equipo y piezas Sencillez de programacin, as que incluso un operario prcticamente sin capacitacin puede realizarla

Desventajas
Movimiento lento del robot durante la programacin La lgica de programa y clculos son difciles de programar Dificultad para incorporar datos de sensores Suspensin de la produccin durante la programacin El costo es equivalente al valor de produccin Mala documentacin

En la programacin online, los usuarios mueven al propio robot a cada punto de avance por medio de algn tipo de dispositivo en el espacio de trabajo real. En la prctica, la programacin online es la que se utiliza, por mucho, con ms frecuencia. En la programacin online se coloca una pieza real en el espacio de trabajo, exactamente como en la produccin, y la programacin se Online basa en ensear al robot las trayectorias que tenga que seguir. Esta enseanza se lleva a cabo guiando el braOnline signica que los robots estn zo del robot a travs de una serie de movimientos y en lnea con otras mquinas cuando grabando estos movimientos, para que posteriormente se escriben los programas en sus conpuedan repetirse en forma automtica. Durante este troladores. proceso, el brazo puede propulsarse en forma manual (es decir, el operario usa sus msculos para cambiar el brazo de una posicin a otra) o por sus accionamientos (es decir, el operario utiliza las palancas de mando, el teclado de un dispositivo porttil de enseanza o una rplica de tamao reducido del manipulador para ordenar los accionamientos a las posiciones apropiadas). Independientemente de la manera de propulsar el brazo durante el proceso , hay dos maneras de grabar la trayectoria de un movimiento del brazo. En el mtodo PTP (Point to point, de punto a punto), el brazo se transfiere a cada punto caracterstico de la trayectoria, se detiene all y, mediante un botn especial que hay en el panel de control, se memoriza esta posicin en el sistema de control. Durante la reproduccin, el brazo del robot pasa a travs de estos puntos usando una forma de interpolacin entre ellos. En el mtodo de CP (Continuous path, recorrido continuo), conforme se transfiere el brazo, las posiciones se registran en forma automtica en intervalos constantes. Puesto que los puntos estn muy cercanos entre s, no se necesitan rutinas especiales de interpolacin.

12.4

Programacin de robots

327

Adems, los movimientos pueden reproducirse con diferentes velocidades, cambiando la base de tiempo (el intervalo permitido para alcanzar al siguiente punto). A pesar de que los sistemas online generan cdigo de programacin de procedimiento, los usuarios pueden crear puntos de avance sin editar este cdigo y, como resultado, esto se considera como menos intimidante y ms intuitivo que la programacin offline. Observe, sin embargo, que si no puede completarse la reprogramacin durante el tiempo muerto normal, como en fines de semana, entonces la empresa incurrir en gastos en la forma de produccin perdida. Por ende, el conjunto de tareas viables para la programacin en lnea se restringe por el tiempo de programacin. Aunque los usuarios usualmente ven la programacin online como menos intimidante, s pasan demasiado tiempo simplemente moviendo el robot entre puntos de avance en vez de transferir conocimientos reales. Adems, debido al difcil proceso de posicionamiento del robot, los usuarios tienden a descartar su trabajo anterior y a crear puntos de referencia desde el principio cada vez. Esto representa un derroche muy grande, ya que los programas de robots suelen contener subtareas repetidas, y los diseos de productos contienen muchas similitudes con diseos previos.

La programacin dirigida Un mtodo de programacin online se conoce como programacin dirigida. Esto tambin se conoce como ensear y reproducir, o de gua, y es el mtodo ms comnmente usado en los robots industriales hoy en da. Este mtodo involucra la enseanza del robot para llevarlo a travs de los movimientos que el usuario desea. La enseanza y reproduccin se logra normalmente mediante los siguientes pasos:
i) Llevar al robot en movimiento lento, usando el control manual, a travs de toda la tarea de ensamble, y registrar los ngulos de las articulaciones del robot en las ubicaciones apropiadas con el fin de reproducir el movimiento; ii) Editar y reproducir el movimiento enseado; iii) Si el movimiento es correcto, entonces el robot se opera con la velocidad correcta en modo repetitivo. Guiar el robot en movimiento lento normalmente puede lograrse en diferentes formas, usando una palanca de control, un juego de botones (uno para cada articulacin) o un sistema de manipulador amo/esclavo. En la actualidad, el sistema de uso ms comn es una caja manual con botones. Mediante este mtodo, el usuario mueve el robot manualmente a travs del espacio y presiona un botn para registrar cualquier posicin angular del manipulador. El conjunto de posiciones angulares se registra a partir de los puntos de referencia de la trayectoria que el manipulador haya atravesado. Estos puntos de referencia de posicin se interpolan luego por mtodos numricos, y el robot se desplaza a lo largo de la trayectoria suavizada . En el modo edicin-reproduccin, el usuario puede cambiar las posiciones angulares registradas y asegurar que el robot no colisionar con ningn obstculo mientras realiza la tarea deseada. En el modo de ejecucin el robot se mover repetitivamente conforme a la trayectoria suavizada que se edit. Si la tarea cambia, entonces se repiten los tres pasos que arriba se mencionaron. Las ventajas de este mtodo son que slo requiere un espacio relativamente pequeo de memoria para registrar posiciones angulares y que es sencillo de aprender. La principal desventaja es la dificultad para utilizar este mtodo con el fin de integrar informacin de retroalimentacin sensorial al sistema de control. Aplicaciones basadas en posicin y trayectorias de recorrido, tales como la soldadura de arco y la carga de mquinas, normalmente emplean la enseanza de pasos o enseanza dirigida. En la enseanza dirigida,

328

CAPTULO

12

Computadoras para robots

el usuario ejecuta los movimientos requeridos en forma manual, sosteniendo a la vez algn dispositivo (el manipulador mismo o una rplica a escala) para registrar el recorrido.

La programacin paso a paso En contraste con la programacin dirigida, el


usuario especifica los puntos intermedios mediante un dispositivo porttil de enseanza que se conecta al controlador del robot para dirigirlo y programarlo. El dispositivo porttil de enseanza tiene un diseo, peso, botones y secuencias de comandos completamente diferentes dependiendo del fabricante. La interaccin es normalmente difcil incluso para los profesionales. Conocimientos acerca de soldadura, pintura y manipulacin en robots industriales tambin son muy importantes para automatizar una tarea. Ms all de los conocimientos comunes de robots, el programador necesita conocer el proceso automatizado para generar verdaderos beneficios en la calidad de productos, la durabilidad del equipo y la reduccin del tiempo de fabricacin.

12.4.2

La programacin ofine
Ofine

Ofine signica que los programas no necesitan estar escritos en los controladores del robot cuando estn en lnea con otras mquinas.

La programacin offline se lleva a cabo en una computadora y en modelos de la celda de trabajo con el robot, en piezas de trabajo y en el ambiente. Los programas del robot pueden crearse en la mayora de los casos por la reutilizacin de datos CAD existentes, de tal modo que la programacin ser rpida y efectiva. Las ventajas y desventajas de la programacin offline son las siguientes:

Ventajas
No ocupa equipos de produccin; de esta manera, la produccin puede continuar durante el proceso de programacin. Programacin efectiva de lgica y clculos con instalaciones de depuracin de vanguardia. Las ubicaciones se construyen de acuerdo con modelos y esto puede significar que los programadores tendrn que poner a punto programas en lnea o utilizar sensores. Programacin efectiva de ubicaciones. Verificaciones del programa mediante simulacin y visualizacin. Buena documentacin por medio del modelo de simulacin con programas adecuados. Reutilizacin de datos CAD existentes. Es independiente del costo de la produccin. La produccin puede continuar durante la programacin. Herramientas de soporte de proceso para la seleccin de parmetros de soldadura.

Desventajas
Se necesitan usuarios expertos. Demanda una inversin en un sistema de programacin offline.

La programacin offline requiere lenguajes de programacin de alto nivel que ofrecen un planteamiento general para resolver el problema de comunicacin humano/robot. En la dcada pasada, se usaron robots en forma exitosa en reas como la soldadura por arco y

12.4

Programacin de robots

329

la pintura por espray usando guas o patrones . La programacin de robots es significativamente distinta de la programacin tradicional de computadoras. Programar un sistema robtico requiere la definicin de un ambiente de programacin sustentado en lenguajes apropiados, lo que le permite al operario asignar las direcciones de tareas que el robot debe ejecutar. El ambiente de programacin se encarga no slo de revisar la ejecucin de la traduccin de instrucciones mediante un lenguaje adecuado, sino tambin de revisar la ejecucin correcta de una tarea ejecutada por el robot. Por lo tanto, los ambientes de programacin de robots, aparte de tener ms caractersticas en comn con los ambientes de la programacin de computadoras, presentan un nmero importante de asuntos relacionados con la observacin que la ejecucin de programas produce sobre el entorno fsico. En otras palabras, aun si existe una descripcin muy exacta de la realidad fsica en el ambiente de programacin, ocurrir de manera inevitable un nmero de situaciones que no han sido ni pueden ser previstas. En consecuencia, un ambiente de programacin de robots debe dotarse con las siguientes caractersticas: un sistema de operacin en tiempo real modelado del entorno control de movimiento entrada/salida lectura de datos proveniente de los sensores interaccin con el sistema fsico capacidad de deteccin de errores recuperacin de las funciones operativas correctas una estructura especfica de lenguaje

Pueden identificarse varias consideraciones que deben manejarse por cualquier mtodo de programacin de robots. Para ilustrarlas, considere los comandos de control de movimiento que se usan para dirigir el robot con el fin de que mueva su manipulador hacia una posicin definida en el espacio. Por ejemplo, la instruccin mover P1 podra usarse para dirigir el robot a un punto en el espacio llamado P1. Se emplean comandos de entrada/salida para controlar la recepcin de seales de sensores y otros dispositivos en la celda de trabajo y para iniciar seales de control a otras piezas de equipo en la celda. Por ejemplo, la instruccin seal 3 encendida podra usarse para encender un motor en la celda, donde el motor se conecta con la lnea de salida 3 en el controlador del robot. Los objetos que van a manipularse por un robot son tridimensionales y tienen una variedad de propiedades fsicas. Los robots operan en un ambiente espacial complejo. La descripcin y representacin de objetos tridimensionales en una computadora son imprecisas y la informacin sensorial tiene que monitorearse, manipularse y utilizarse correctamente. La programacin offline se basa en medios externos para expresar la tarea que el sistema robtico tendr que realizar. La tarea se expresa en un lenguaje de programacin de robots (Robot Programming Language RPL). Esto puede ser un lenguaje especficamente definido para robots o un lenguaje de programacin de computadoras universal (CPL). Le ventaja de usar RPL se asocia con hacer que el robot sea ms productivo, con la facilidad de utilizacin de datos de sensores y con la creacin de la documentacin del programa. Para lograr que un robot sea ms productivo, la fase en la que se requiere la programacin debe ser lo ms corta posible. En otras palabras, la programacin de robots tiene que hacerse independiente del robot. El programa se desarrolla offline, y solamente ms tarde se carga al sistema de control

330

CAPTULO

12

Computadoras para robots

para su ejecucin. El problema de este planteamiento es que, a pesar de que los robots que se fabrican actualmente tienen una alta repetitividad, demuestran baja precisin. Esto requiere la calibracin del programa que se crea offline. Los planteamientos actuales para la programacin offline pueden clasificarse en dos categoras principales: la programacin orientada al robot y la programacin orientada al objeto o programacin basada en las tareas. En la programacin orientada al robot, se describe explcitamente una tarea de ensamble como una secuencia de movimientos del robot. El robot se gua y controla por el programa a travs de toda la tarea, donde cada instruccin del programa corresponde aproximadamente a una accin del robot. Por el otro lado, la programacin basada en las tareas describe la tarea de ensamble como una secuencia de metas posicionales de los objetos ms que los movimientos del robot que se necesitan para alcanzar estas metas y, por lo tanto, no se especifica ningn movimiento explcito del robot. Estos planteamientos se analizarn a continuacin.

La programacin orientada al robot Los lenguajes orientados al robot son


lenguajes de programacin estructurada que incorporan instrucciones de alto nivel y tienen la caracterstica de un lenguaje interpretado con el fin de obtener un ambiente interactivo que permite que el programador revise la ejecucin de cada instruccin del programa fuente antes de proceder a la siguiente. Las propiedades comunes de estos lenguajes son las siguientes: editor de texto estructuras complejas de representacin de datos uso extenso de variables de estado predefinidas ejecucin de operaciones de matriz algebraica uso extensivo de representaciones simblicas para los sistemas de coordenadas posibilidad de especificar el movimiento coordinado de ms sistemas coordenados rgidamente unidos a objetos por medio de un solo sistema de coordenadas inclusin de subrutinas con intercambio de datos y parmetros uso de acondicionamiento lgico y puesta en secuencia por medio de banderas capacidad de computacin paralela funciones de un controlador lgico programable (PLC)

El planteamiento ms comn para el diseo de un lenguaje en el nivel de un robot es el de extender un lenguaje de alto nivel existente para que cumpla con los requerimientos de la programacin de robots. Hasta cierto grado, este planteamiento es ad hoc y no hay lineamientos de cmo implementar la extensin. Pueden reconocerse fcilmente varias caractersticas clave que son comunes de todos los lenguajes orientados a robots si se examinan los pasos involucrados en el desarrollo de un programa de robot. Considere la tarea de insertar un perno en un orificio, como se muestra en la figura 12.7. Esto requiere mover el robot al alimentador, recoger el perno, moverlo al soporte e insertar el perno en uno de los orificios. Normalmente, los pasos para desarrollar el programa son los siguientes: a) Se establece el espacio de trabajo y se fijan las partes mediante el uso de sujetadores y alimentadores. b) La configuracin (orientacin y posicin) de las partes (alimentador, soportes, etc.) y sus caractersticas (barreno del soporte, agarre del perno, etc.) se definen usando las estructuras de datos proporcionados por el lenguaje.

12.4
Z Z A

Programacin de robots

331

Y X

Z X

Figura 12.7

Una tarea simple de insercin

c) La tarea de ensamble se segmenta en una secuencia de acciones, tales como mover el robot, recoger objetos y ejecutar una insercin. d) Se agregan comandos sensoriales para detectar situaciones anormales (como la incapacidad de localizar el perno al agarrar) y monitorear el progreso de la tarea de ensamble. e) El programa se depura y refina mediante la repeticin de los pasos del b) al d ). Las caractersticas importantes son la especificacin de posicin, paso b), la especificacin de movimiento, paso c), y la deteccin, paso d ), lo que puede programarse usando los lenguajes de robots AL, AML y otros. Observe que AL fue desarrollado por la universidad de Stanford, mientras que AML fue desarrollado por IBM.

Ejemplo 12.2

Deniciones de AL y AML para sistemas coordenados de base

AL:
base FRAME (nilrot, VECTOR (20, 0, 15)*inches); beam FRAME (ROT(A, 90*deg), VECTOR (20, 15, 0)*inches); feeder FRAME (nilrot, VECTOR (25, 20, 0)*inches);

Observe: nilrot es un sistema predefinido que tiene el valor ROT(Z, 0*deg). El smbolo es el operador de asignacin en AL. Un punto y coma termina una instruccin. El smbolo * es un operador de multiplicacin dependiente del tipo. Aqu se utiliza para adjuntar unidades a los elementos del vector. ALM:
base = < < 20, 0, 15 >, EULERROT (< 0, 0, 0 >) >; beam = < < 20, 15, 0 >, EULERROT (< 0, 0, 90 >) >; feeder = < < 25, 20, 0 >, EULERROT (< 0, 0, 0 >) >;

Nota: EULERROT es una subrutina que forma la matriz de rotacin dados los ngulos.

332

CAPTULO

12

Computadoras para robots

Ejemplo 12.3
AL:

Instrucciones de movimiento de AL y AML

{Move are from rest to frame A and then to bold-grasp} MOVE barm TO A; MOVE barm TO bolt-grasp; {Another way of specifying the above statement} MOVE barm TO bolt-grasp VIA A; {Move along the current Z axis by 1 inch, i.e., move relative} MOVE barm TO - 1*Z*inches;

Notas: Refirase a la figura 12.7 para el punto A, eje Z, etc. Adems, barm es el nombre del brazo del robot. El smbolo indica la ubicacin actual del brazo que es equivalente a base * T6 * E. Instrucciones entre claves {} son comentarios. AML:
Move joint 1 and 4 to 10 inches and 20 degrees, respectively (absolute move) MOVE (< 1, 4 >, <10, 20 >); Move joints 1, 3 and 6 by 1 inch 2 inches, and 5 degrees, respectively (relative move) DMOVE (<1, 3, 6 >, <1, 2, 5 >);

Nota: Instrucciones precedidas por son comentarios.

Programacin basada en las tareas

Un planteamiento completamente diferente en la programacin de robots se hace mediante la programacin basada en las tareas. La manera natural de describir una tarea de ensamble es en trminos de los objetos que van a manipularse en lugar de mediante los movimientos del robot. El lenguaje basado en las tareas se aprovecha de este hecho y simplifica la tarea de programacin. Un sistema de programacin basado en las tareas permite que el usuario describa la tarea en un lenguaje de alto nivel (especificacin de tarea). Un planeador de tareas consultar entonces una base de datos (modelos del entorno) y transformar la especificacin de la tarea en un programa de nivel del robot que ejecutar la tarea (sntesis del programa del robot). Basndose en esta descripcin, puede conceptualmente dividirse la planeacin de tareas en tres fases: modelado del entorno, especificacin de tareas y sntesis del programa. Cabe mencionar que estas tres fases no son completamente independientes; de hecho, se relacionan computacionalmente. La figura 12.8 presenta una arquitectura posible para el planeador de tareas. La especificacin de la tarea se descompone en una secuencia de subtareas por el fragmentador de tareas y se extrae informacin tal como el estado inicial, estado final, posicin de agarre, operando, especificaciones y relaciones de sujecin. Luego se pasan las subtareas a travs del planeador de subtareas, que genera el programa de robot requerido. El concepto de planeacin de tareas es bastante parecido a la idea de la generacin automtica de programas en la inteligencia artificial. El usuario provee los requerimientos de entrada/salida de un programa deseado, y el generador de programas generar un programa que producir el comportamiento deseado de entrada/salida.

12.4
Tareas

Programacin de robots

333

Fragmentador de tareas

Conocimiento

Planeador de subtareas

Modelo

Robot

Figura 12.8

Planeador de tareas

Algunas de las dificultades y las soluciones correspondientes en la programacin en el nivel de tareas son las siguientes:

a) Modelos geomtricos y fsicos Para que el planeador de tareas pueda generar un programa de robot que ejecute una determinada tarea, deber tener informacin sobre los objetos y sobre el propio robot. stas incluyen las propiedades geomtricas y fsicas de los objetos que pueden representarse por modelos. Un modelo geomtrico proporciona la informacin espacial (dimensin, volumen, forma) de los objetos en el espacio de trabajo. Existen numerosas tcnicas para modelar los objetos tridimensionales. El planteamiento ms comn es la geometra slida constructiva (Constructive Solid Geometry CSG), donde los objetos se definen como construcciones o combinaciones, usando operaciones de conjuntos regularizadas (tales como unin, interseccin) de objetos primitivos (tales como cubos o cilindros). El primitivo puede representarse de varias maneras: i) Un conjunto de bordes y puntos ii) Un conjunto de superficies iii) Cilindros generalizados iv) Descomposicin de celdas
Las propiedades fsicas, como inercia, masa y coeficiente de friccin, podrn limitar el tipo de movimiento que el robot pueda ejecutar. En lugar de guardar cada una de las propiedades en forma explcita, pueden derivarse del modelo de objeto. Sin embargo, ningn modelo puede ser 100 por ciento preciso, y piezas idnticas podrn tener ligeras diferencias en sus propiedades fsicas. Para tratar con stas deben introducirse tolerancias en el modelo.

b) Representacin de estados del entorno El planeador de tareas debe ser capaz de estimular los pasos de ensamble con el fin de generar el programa del robot. Cada paso de ensamble puede representarse de forma sucinta por el estado actual del entorno. Una manera de representar estos estados es el uso de configuraciones de todos los objetos en el espacio de trabajo. AL ofrece una relacin de sujecin llamada AFFIX que permite que se unan los sistemas coordenados unos con otros. Esto es equivalente a unir fsicamente una parte a otra parte, y si una de las partes se mueve, todos los dems tambin se movern. AL automticamente actualiza las ubicaciones de los sistemas coordenados mediante la multiplicacin de las transformaciones apropiadas. Por ejemplo,
AFFIX beam_bore TO beam RIGIDLY; beam_bore = FRAME(nilrot, VECTOR (1, 0, 0)*inches);

334

CAPTULO

12

Computadoras para robots

12.4.3

Programacin por simulacin

Entre las tecnologas ms recientes disponibles para la programacin se encuentran aquellas que usan la simulacin virtual. Las simulaciones mediante el uso de modelos virtuales del ambiente de trabajo y de los propios robots pueden ofrecer ventajas tanto para la empresa como para el programador. Por medio de una simulacin, pueden programarse robots offline, lo que no causa ningn tiempo muerto para una lnea de ensamble que podr depender considerablemente de estos robots. Las acciones del robot y las piezas de ensamble pueden visualizarse en un ambiente tridimensional virtual meses antes de que se produzcan incluso los prototipos. La figura 12.9 ilustra uno de estos ambientes. Tampoco se requiere que los programadores tengan mucha destreza tcnica en la escritura de cdigo. Mientras que el paso hacia la simulacin virtual para la programacin de robots es un paso hacia adelante en el diseo de interfaces de usuarios, muchos de los diseos todava tienen un camino largo por delante.

12.5

La arquitectura de hardware

La estructura jerrquica de la arquitectura funcional que se adopta como modelo de referencia para el sistema de control de un robot industrial, junto con su articulacin en diferentes mdulos, sugiere una implementacin de hardware que explote recursos computacionales distribuidos interconectados por medio de canales de comunicacin adecuados. Para este fin, vale la pena recordar que las funciones implementadas en los sistemas de control actuales toman en cuenta los tres niveles desde el servo hasta la accin, que normalmente limitan el desarrollo de las funciones implementadas en el nivel de accin. En los niveles de servo y

Figura 12.9 Ambiente de simulacin Cortesa de: http://www.public.iastate.edu/rterlemei/FinalPaper.pdf

12.5

La arquitectura de hardware

335

primitivo, las capacidades computacionales se requieren con restricciones de tiempo real demandantes. Un modelo generalizado de la arquitectura de hardware para el sistema de control de un robot industrial se presenta en la figura 12.10. Las tarjetas estn conectadas con un bus, por ejemplo, un bus VME que permite el flujo de datos de soporte de comunicacin; el ancho de banda del bus debe ser suficientemente ancho para cumplir con los requerimientos por restricciones de tiempo real. La tarjeta del sistema es normalmente un CPU equipado con un microprocesador con coprocesador matemtico una memoria EPROM de secuencia de arranque una memoria RAM local una memoria RAM compartida con las otras tarjetas mediante el bus un nmero de puertos seriales y paralelos con interfaz al bus y al entorno externo contadores, registros y temporizadores un sistema de interrupcin Interfaz del operario por medio de dispositivo porttil de enseanza, teclado, video e impresora Interfaz con una memoria externa (disco duro) que se usa para almacenar datos y programas de aplicacin Interfaz con estaciones de trabajo y otros sistemas de control por medio de una red local de comunicacin, por ejemplo, Ethernet
Memoria externa Estacin de trabajo SISTEMA E/S Cinemtica Dinmica

Las siguientes funciones debern implementarse en la tarjeta del sistema:

Impresora

Dispositivo porttil de enseanza

Video

Teclado

Bus

Servo

Fuerza

Visin

Amplificadores de potencia Transductores de posicin y velocidad Servomotores Cmara Sensor de fuerza Monitor

Figura 12.10 Modelo general de la arquitectura de hardware para robots industriales

336

CAPTULO

12

Computadoras para robots

Interfaz de E/S con dispositivos perifricos en el rea de trabajo, por ejemplo, alimentadores, transportadores y sensores de ENC./APAG. Secuencia de arranque del sistema Intrprete del lenguaje de programacin rbitro del bus

Las otras tarjetas que hay frente al bus podrn equiparse, aparte de los componentes bsicos de la tarjeta del sistema, con un procesador complementario o alternativo (DSP, transputadora) para la implementacin de funciones computacionalmente demandantes o dedicadas. En la arquitectura de la figura 12.10, se implementan las siguientes funciones en la tarjeta de cinemtica: Computacin de movimiento de los primitivos Computacin de cinemtica directa, cinemtica inversa y el jacobiano Prueba de viabilidad de trayectoria manejo de redundancia cinemtica La computacin de la dinmica inversa

La tarjeta de dinmica se dedica a La tarjeta de servo tiene las funciones de Microinterpolacin de referencias Computacin del algoritmo de control Conversin de digital a anlogo e interfaz con los amplificadores de potencia Gestin de datos de transductores de posicin y velocidad Interrupcin de movimiento en caso de fallas Las restantes tarjetas de la figura se consideraron para ilustrar cmo el uso de sensores podr precisar capacidades de procesamiento local para recuperar informaciones significativas de los datos que puedan usarse efectivamente en el sistema sensorial. La tarjeta de fuerza realiza las siguientes operaciones: Acondicionamiento de datos proporcionados por el sensor de fuerza Representacin de fuerzas en un determinado sistema de coordenadas La tarjeta de visin est a cargo de Procesamiento de datos proporcionados por la cmara Extraccin de caractersticas geomtricas de la escena Localizacin de objetos en un determinado sistema de coordenadas Aunque las tarjetas se conectan al mismo bus, la frecuencia con la que se intercambien datos no tiene que ser la misma para cada tarjeta. Aquellas que estn conectadas a los sensores ciertamente tienen la necesidad de intercambiar datos con el robot en la mxima frecuencia posible (de 100 a 1 000 Hz) con el fin de asegurar un desempeo dinmico alto para el control de movimientos como tambin para relevar el contacto del efector final en un tiempo muy breve. Por otro lado, las tarjetas de cinemtica y dinmica implementan funciones de modelado y, como tales, no requieren la actualizacin de datos con una velocidad tan alta como la de la tarjeta de servo. De hecho, la configuracin del manipulador no vara de forma apreciable en un tiempo muy corto, por lo menos respecto a las velocidades o aceleraciones operacionales normales de los robots industriales de la actualidad. Las frecuencias de

Ejercicios basados en la web

337

muestreo comunes estn en el rango de 10-100 Hz. La tarjeta de visin tampoco requiere una velocidad alta de actualizacin porque la escena es por lo general casi esttica y porque las funciones interpretativas son normalmente complejas. Por lo regular, las frecuencias estn en el rango de 1-10 Hz. En suma, el acceso de tarjetas al bus de comunicacin de la arquitectura de control del hardware podr realizarse de acuerdo con una lgica de velocidades mltiples, lo que permite resolver problemas de saturacin de datos en el bus.

RESUMEN
En este captulo se explican los requerimientos de software y hardware para el control de robots. Tambin se presentan las metodologas de programacin online y offline. Se mencionan las ventajas y desventajas de ambos tipos de programacin.

EJERCICIOS
12.1 Cules son los requerimientos de hardware y software para un controlador de robot? 12.2 Describe la programacin online. 12.3 Cules son las ventajas y desventajas de la programacin online? 12.4 Cules son los tipos de programacin online? 12.5 Cul es la diferencia entre la programacin dirigida y la paso a paso? 12.6 Cules son los tipos de programacin offline? 12.7 Cules son las caractersticas que deben tener los ambientes de la programacin offline? 12.8 Cundo deber preferirse la programacin online frente a la programacin offline? 12.9 Qu es programacin por simulacin? 12.10 Por qu es difcil la programacin basada en las tareas? 12.11 Explique programa por simulacin. 12.12 Cules seran las limitaciones de programa por simulacin?

EJERCICIOS BASADOS EN LA WEB


12.13 Cules son los tipos de programacin de robots que utilizan los fabricantes en el ejercicio 1.11? 12.14 Mencione algunos softwares de simulacin de robots. 12.15 Mencione algunos mtodos de programacin de robots que ofrecen los fabricantes de robots. 12.16 Averige por lo menos dos nombres de empresas que ofrezcan la caracterstica de programa por simulacin en sus robots.

Apndice

A
Principios bsicos matemticos

En este libro se supone que el lector se halla familiarizado con las definiciones matemticas de las reas de lgebra lineal, trigonometra y otros campos relacionados. Algunas de ellas se introducirn en este apndice para lograr que el lector entienda rpidamente las derivaciones y notaciones que se usan en diferentes captulos de este libro.

A.1

La funcin Atan2

La funcin usual arco tangente inversa denotada por Atan(z), donde z = y/x, devuelve un ngulo en el rango de (p/2, p/2). Con el fin de expresar el rango completo de ngulos, es til definir la llamada funcin de arco-tangente de dos argumentos denotada por Atan2(y, x) que devuelve el ngulo en el rango completo, es decir, (p, p). Esta funcin se define para todos los (x, y) 0 y es igual al ngulo nico q, de tal manera que cos q =

x x +y
2 2

, y sen q =

y x + y2
2

(A.1)

La funcin usa los signos de x y y para seleccionar el cuadrante adecuado para el ngulo q, como se explica en la tabla A.1. En la tabla A.1, z = y/x y Sgn(.) denotan el usual signo de la funcin de signo, es decir, su valor es 1, 0 o 1, dependiendo de los valores positivo, cero y negativo de y, respectivamente. Sin embargo, si tanto x como y son ceros, Atan2 queda indefinido. Entonces, mediante

A.2 Tabla A.1 Evaluacin de la funcin Atan2

Vectores

339

x
+ve 0 ve

Atan2(y, x)
Atan(z) Sgn(y) p/2 Atan(z) + Sgn(y)

la tabla Atan2(1, 1) = p/4 y Atan2(1, 1) = 3p/4, mientras que Atan(1) devuelve p/4 en ambos casos.

A.2

Vectores

Mientras no se seale algo diferente, los vectores sern definidos como vectores de columna y denotados con letras minsculas en negrillas. Por ende, un vector a n-dimensional se define como

donde a1, , an son los elementos del vector a. El vector a tambin puede representarse como (A.3) a [a1, , an]T donde el superndice T denota transposicin. La magnitud, longitud o norma del vector a, denotada con letras itlicas, se determina por a =
aTa =
2 2 + + an a1

LM a OP a M P NMa PQ
1 n

(A.2)

(A.4)

A.2.1 Vectores unitarios


Un vector unitario se define como un vector con magnitud igual a 1. Por tanto, el vector unitario a lo largo del vector a, denotado con a, puede definirse como a (A.5) a = a donde a se determina por la ecuacin (A.4). Por ende, la magnitud del vector unitario a es a = 1. Ahora, si i, j y k denotan los vectores unitarios a lo largo de los ejes X, Y y Z, respectivamente, del sistema de coordenadas como se presenta en la figura A.1, cualquier vector cartesiano tridimensional que se muestra en la figura A.1, por decir, a [a1, a2, a3]T, puede expresarse como a = a1 i + a2 j + a3 k (A.6) en la que los vectores unitarios i, j y k tienen las siguientes representaciones:

LM1OP LM0OP LM0OP i 0 ,j 1 ,y k 0 MM0PP MM0PP MM1PP NQ NQ NQ

(A.7)

340

APNDICE

Principios bsicos matemticos


a3 Z

A
a k

a2

Y Sistema de coordenadas

a1 X

Figura A.1

Sistema de coordenadas y vectores unitarios

Observe que en la ecuacin (A.6), las magnitudes de los vectores unitarios que usan las ecuaciones (A.4) y (A.7) son uno.

A.2.2

Productos escalares y productos punto

El producto escalar de dos vectores n-dimensionales a y b, aqu denotados como aT b, es un nmero escalar definido por aT b = a1 b1 + + an bn (A.8) El producto escalar es conmutativo, es decir, (A.9) aT b = bT a Ahora bien, para vectores cartesianos bidimensionales y tridimensionales que representan cantidades fsicas, como posicin de un punto o fuerza en un punto, etc., el producto escalar tambin se llama producto punto, lo que se determina por (A.10) aT b = ab cos q donde q es el ngulo entre los vectores a y b, como B b se muestra en la figura A.2. La interpretacin fsica del producto punto es que el vector b se proyecta al vector a, como lo indica OA en la figura A.1, y se q multiplica por la magnitud de a. Alternativamente, a A puede interpretarse como la proyeccin de a al vecO tor b cuyo resultado se multiplica por la magnitud Figura A.2 Producto punto de dos del ltimo. Entonces, si estos dos vectores son orvectores cartesianos togonales entre s, es decir, si = 90, el producto T punto desaparecer, a saber, a b = 0.

A.2.3

Producto vectorial o producto cruz

Un producto vectorial o cruz entre dos vectores cartesianos, por decir, a y b, denotado por c, se define como

A.2

vectores

341

i j c = a b = a1 a2 b1 b2

k a3 = (a2 b3 a3 b2) i + (a3 b1 a1 b3) j + (a1b2 a2b1) k b3

(A.11a)

donde denota el smbolo para el producto cruz. El resultado del producto cruz es tambin un vector, es decir, c, que es ortogonal a los dos vectores originales a y b. La magnitud del vector c se denota como c y se determina por c = ab sen q (A.11b)
c b

donde el ngulo q es el ngulo entre los vectores a y b, como se muestra en la figura A.3. Con el fin de obtener la direccin del vector resultante c, se aplica la regla de la mano derecha, es decir, si la palma de una mano derecha se coloca a lo largo del vector a y luego se gira hacia el vector b, el pulgar seala la direccin del vector c. El producto cruz tiene las siguientes propiedades:

q a

Figura A.3 Producto cruz de dos vectores cartesianos

a b = b a; a (b c) = (aT c) b (aT b) c; y aT (b c) = | a

b c|

(A.12)

A.2.4 Matriz de producto cruz


Una matriz de producto cruz siempre se asocia con un vector cartesiano tridimensional, por decir, a, el cual, cuando se pre-multiplica por otro vector cartesiano tridimensional, por ejemplo, b, da como resultado el producto cruz entre los dos vectores, como se muestra en la subseccin A.2.3. Si a 1 denota la matriz de producto cruz asociada con el vector a, entonces (a 1) b = a b (A.13a) La matriz de 3 3 (a 1) es antisimtrica y singular. Su representacin en trminos de los componentes del vector, a [a1, a2, a3]T, se determina por

LM 0 a1 M a MN- a

- a3 0 a1
2

OP -a P 0 P Q
a2
1

(A.13b)

Entonces es una cuestin sencilla verificar la ecuacin (A.13b) segn el resultado de la ecuacin (A.11a).

A.2.5 Diferenciacin de vectores


Si el vector a [a1 an]T es la funcin vectorial n-dimensional de tiempo, entonces su derivada de tiempo, denotada por a , se define como

a [ a1

a n ]T

(A.14)

342

APNDICE

Principios bsicos matemticos

Los productos escalares y vectoriales cumplen con las siguientes reglas de productos para la diferenciacin, parecidas a la regla de productos para la diferenciacin de funciones escalares ordinarias: d T d (A.15) (a b) = a T b + aT b ; y (a b) = a b + a b dt dt Instrucciones similares tambin se aplican para la integracin de vectores.

A.2.6

Independencia lineal

Para un conjunto de vectores a1, , an, se dice que es linealmente independiente si y slo si

ai ai = 0 implica que ai = 0 para toda i


i =1

(A.16)

A.3

Matrices

Una matriz se define como un arreglo ordenado de nmeros reales. Una matriz de m n, por ejemplo, A, con m hileras y n columnas tiene mn elementos denotados como aij para i = 1, , m y para j = 1,, n. Si cada columna de la matriz A se representa por el vector m-dimensional aj [a1,j am,j]T para j = 1,, n, entonces la matriz A tiene la siguiente representacin: A [a 1 an] (A.17a) De manera similar, puede definirse cada hilera como el vector n-dimensional ai ai,1 ai,n]T para i = 1, , m, y puede representarse la matriz A como

donde aTi [ai,1, , ai,n]. Observe que ambas ecuaciones (A.17a-b) representan la misma matriz. En funcin de los requerimientos, una podr elegirse sobre la otra.

LM a AM MNa

T 1 T m

OP PP Q

(A.17b)

A.3.1

El determinante de una matriz


a1n a2 n

El determinante de una matriz slo se define para matrices cuadradas. Para una matriz A de n n, el determinante es el escalar denotado por det(A) o |A| y se determina por

det(A) = | A | =

a11 a21 an1

a12 a22

(1)i + j aij det(Aij )

(A.18)

an 2 ann

donde det(Aij) es el determinante de la matriz (n 1) (n 1) Aij, obtenido por borrar la i-sima hilera y la j-sima columna de la matriz A. Como ejemplo, el determinante de la matriz A de 3 3 se calcula a continuacin:

A.3

Matrices

343

a11 det(A) = a21 a31

a12 a22 a32

a13 a23 = a11 a33

a22 a32

a23 a21 a12 a33 a31

a23 a21 + a13 a33 a31

a22 a32

(A.19)

= a11(a22 a33 a23 a32) a12 (a21 a33 a23 a31) + a13 (a21 a32 a22 a31) Con respecto al determinante de una matriz A, las siguientes propiedades son tiles: Si todos los elementos de una hilera o columna de la matriz son cero, entonces det(A) = 0. Los determinantes de A y su transpuesta AT son iguales, es decir, det(A) = det(AT). Para dos matrices A y B, det(AB) = det(A)det(B). Si A es una matriz de identidad, es decir, A = 1, entonces su determinante es la unidad, es decir, det(A) = 1. Si dos hileras o columnas son dependientes, entonces det(A) = 0. Estas matrices se llaman singulares. Si todas las hileras o columnas son independientes, entonces det(A) 0. Estas matrices se llaman no singulares.

A.3.2 La inversa de una matriz


Nuevamente, la inversa de una matriz slo se define para matrices cuadradas. Para una matriz A de n n, se define como 1 (A.20a) A1 = Adj (A) det(A) donde Adj(A) se define como sigue: (A.20b) Adj (A) = [(1)i + j det(A ij)]T Observe aqu que para resolver un conjunto de ecuaciones algebraicas lineales Ax = b se requiere de la inversa de la matriz A, a saber, x = A1b. Pueden usarse las ecuaciones (A.20a-b) para obtener x. Sin embargo, con el fin de lograr eficiencia computacional, se sugiere usar la descomposicin de la matriz, as como sustituciones directas e indirectas (Strang, 1980). Algunas propiedades de la matriz inversa son las siguientes: AA1 = A1 A = 1, donde 1 es una matriz de identidad. (A1) 1 = A y (AT ) 1 = (A1)T. (AB)1 = B1 A1.

A.3.3 Valores propios y vectores propios


Los valores propios de una matriz A son las soluciones en s de la siguiente ecuacin: det(s1 A) = 0 (A.21a) donde 1 es la matriz de identidad de dimensin igual que la matriz A. La funcin det(s1 A) es un polinomio en s y se llama polinomio caracterstico de A. Si se es un valor propio de A, un vector propio de A correspondiente a se es un vector xe de no cero que cumple con el sistema de ecuaciones lineales que se determina por (se1 A)xe = 0 (A.21b)

344

APNDICE

Principios bsicos matemticos

Entrada x(s)

Funcin de transferencia G (s )

Salida y(s)

Figura A.4

Descripcin de entrada/salida de un sistema

A.4

Funcin de transferencia

Una funcin de transferencia (Mohan, 1997; Onwubolu, 2005; Dorf, 1992) relaciona en forma algebraica la salida de un sistema con su entrada. Esta funcin permite la separacin de la entrada, el sistema y la salida en tres partes separadas y distintas, como se muestra en la figura A.4. La relacin de la transformada de Laplace1 de la salida y(s), dividida entre la transformada de Laplace de la entrada x(s), da la funcin de transferencia G(s), es decir, y ( s) (A.22) G (s ) = x (s) donde x(s) y y(s) son por lo general polinomios en la variable compleja s. En la ecuacin (A.22) el denominador polinmico x(s) se llama polinomio caracterstico, cuyas races se llaman polos, mientras que las races del polinomio del numerador y(s) se llaman ceros. Como ejemplo, considere el sistema amortiguado de masa-resorte que se presenta en la figura 10.6. Sus ecuaciones de movimiento dadas en la ecuacin (10.30 a) se reproducen aqu como (A.23) m x + b x + kx = f Tomando la transformada de Laplace de todos los trminos de la ecuacin (A.23), en la suposicin de condiciones iniciales cero, se obtiene ms2x(s) + bsx (s) + kx (s) = f (s) (A.24) La resolucin para x(s) segn la ecuacin antecedente proporciona f (s) x (s) = (A.25) ms 2 + bs + k Por lo tanto, la funcin de transferencia G(s) del sistema amortiguado de masa-resorte se determina por x (s) 1 G (s ) = = (A.26a) f ( s ) ms 2 + bs + k En forma alternativa, si se usa la ecuacin diferencial de la forma dada por la ecuacin (10.30b), entonces la ecuacin (A.26a) puede expresarse tambin como sigue:
1/ m x (s) (A.26b) = 2 f (s) s + 2V w n s + w 2 n donde wn y son la relacin de frecuencia natural y amortiguamiento del sistema, respectivamente, y estn definidas en la ecuacin (10.30c). Segn la ecuacin (A.26a-b), los dos polos del sistema amortiguado masa-resorte se determinan entonces por

G (s ) =

La transformada de Laplace convierte la representacin de un sistema fsico por medio de un conjunto de ecuaciones diferenciales en un conjunto de ecuaciones algebraicas.

Resumen

345

s1,2 =

-b

b 2 - 4 mk = V wn wn V 2 - 1 2m

(A.27)

lo que determina la forma de la respuesta natural del sistema en cuestin, mientras que los polos y ceros juntos afectan los picos y amplitudes tanto de la respuesta forzada como de la natural.

RESUMEN
En este apndice se presentan algunos aspectos bsicos del lgebra lineal y de las teoras de control, lo que ayudar al lector a entender los conceptos que se aplican en este libro, principalmente en los captulos 5-10.

Apndice

B
El uso de MATLAB y RIDIM

En este apndice, se explican los pasos que hay que seguir para usar el software comercial MATLAB y el programa RIDIM, desarrollado por el autor y su grupo de estudiantes.

B.1

El uso de MATLAB

MATLAB es un software comercial de MathWorks Inc, USA. Tiene un gran nmero de operadores y comandos que pueden ejecutar una amplia gama de anlisis, por ejemplo, operaciones de matriz, soluciones de ecuaciones algebraicas y diferenciales, optimizaciones, experimentos de control, etctera.

B.1.1

Inicializar MATLAB

MATLAB debe instalarse en la computadora donde el usuario realizar computaciones. Si un cono est disponible en el escritorio, el usuario tiene que dar un doble clic en l mediante el botn izquierdo del mouse. Alternativamente, puede dar un clic izquierdo, en secuencia, sobre los botones/mens que se despliegan: Start -> All Programs -> Matlab -> MATLAB.

B.1.2

Cmo usar MATLAB?

Cuando arranca el software MATLAB, aparece la pantalla de MATLAB con el mensaje >>. Esta ventana se llama ventana de comando MATLAB. Aqu se muestran algunas

B.1

El uso de MATLAB

347

operaciones bsicas. Para una descripcin detallada, pueden consultarse los libros disponibles sobre MATLAB, por ejemplo, Pratap (2002), y usar los demos y el men de ayuda del software.

B.1.2.1

Vectores en MATLAB

Para cualquier vector columna, o para lo que en este libro simplemente se llama vector, por ejemplo, a [a1 a2 a3]T, se utilizan los siguientes comandos:
>> syms a1 a2 a3 >> av = [a1; a2; a3] av = [a1] [a2] [a3]

donde syms es un comando de MATLAB para definir la variable como simblica en lugar de numrica. Adems, av es un nombre de variable definido por el usuario para el vector a. En contraste, un vector rengln, por ejemplo, a [a1 a2 a3], puede generarse como
>> syms a1 a2 a3 >> av = [a1 a2 a3] av = [a1, a2, a3]

Si los elementos del vector rengln son nmeros, por ejemplo, a [2 1 5], entonces
>> av = [2 1 5] av = 2 1 5

La suma de dos vectores, por ejemplo, a [2 1 5]T y b [1 4 2]T, se obtienen como


>> >> >> cv 3 5 5 av = [2; 1; 3]; bv = [1; 4; 2]; cv = av + bv =

El producto escalar de los dos vectores arriba mencionados como a y b se obtiene como
>> av = [2; 1; 3]; >> bv = [1; 4; 2]; >> av*bv ans = 12

Observe arriba que si ninguna variable se asigna a la izquierda de la operacin, se considera como ans.

B.1.2.2

Matrices en MATLAB

Suponga que dos matrices, A y B, se determinan por

348

APNDICE

El uso de MATLAB y RIDIM

2 3 1 1 2 3 A 3 5 2 ;y B 2 3 5 5 1 6 8 2 9

LM MM N

OP PP Q

LM MM N

OP PP Q

(B.1)

La representacin de estas matrices en MATLAB es como sigue:


>> am 2 3 5 >> bm 1 2 8 am = [2 3 1; 3 5 2; 5 1 6] = 3 1 5 2 1 6 bm = [1 2 3;2 3 5;8 2 9] = 2 3 3 5 2 9

La suma de las dos matrices A y B se determina por


>> am+bm ans = 3 5 5 8 13 3

4 7 15

mientras que la multiplicacin de A y B, AB, se determina por


>> am*bm ans = 16 15 29 25 55 25

30 52 74

Aparte de operaciones algebraicas, pueden encontrarse tambin las propiedades de las matrices, como el determinante, valores propios, etc. Por ejemplo, el determinante de A se calcula como
>> det(am) ans = 10

mientras que los valores propios de A son


>> eig(am) ans = 9.2085 0.3121 3.4794

Adicionalmente la matriz inversa de A puede obtenerse mediante


>> inv(am) ans = 2.8000 1.7000 0.8000 0.7000 2.2000 1.3000

0.1000 0.1000 0.1000

B.2

El uso de RIDIM

349

Finalmente, la solucin de un sistema de ecuaciones algebraicas escrito en la forma de Ax = b, se determina por x = A1b. En MATLAB, el vector x se obtiene como
>> xv = am\bv xv = 3.8000 1.8000 3.2000

donde el vector b es el que se usaba en la subseccin B.1.2.1. Ahora puede verificarse la multiplicacin de la matriz A y del vector x como
>> am*xv ans = 1.0000 4.0000 2.0000

que se verifica como vector b. Cabe sealar aqu que, sea lo que fuere lo que se hizo arriba en la ventana de comandos de MATLAB, tambin puede teclearse en un archivo .m, por ejemplo, soln.m, lo que luego puede ejecutarse desde la ventana de MATLAB o haciendo clic sobre Debug->Run en el editor de archivos. En este caso, posiblemente el software pida la configuracin de ruta de MATLAB. El usuario deber especificar la ruta donde se guard soln.m. En todo caso, los resultados aparecern en la ventana de comandos de MATLAB.

B.2

El uso de RIDIM

RIDIM es el acrnimo de Recursive Inverse Dynamics for Industrial Manipulators (Dinmica Inversa Recursiva para Manipuladores Industriales). Su programa de interfaz VC++ fue desarrollado para los usuarios de MS-Windows con el fin de combinar dos programas de C++, uno para resolver el problema de cinemtica inversa formulado en Marothiya y Saha (2003); el otro es el algoritmo de dinmica inversa recursiva propuesto en Saha (1999). Tanto los aspectos de la cinemtica inversa como los de la dinmica inversa se analizan tambin en los captulos 6 y 9 de este libro. El programa requiere de las siguientes entradas: Los parmetros de Denavit y Hartenberg (DH) del manipulador robtico definidos en el captulo 5. Estos parmetros DH se guardan en un archivo. La configuracin inicial y final del robot. Esto puede aportarse en coordenadas de nivel de la articulacin o en coordenadas cartesianas. El tiempo que se desea utilizar para moverse desde la posicin inicial hasta la final. El nmero de pasos.

Basndose en las entradas que se mencionan, el programa calcula la trayectoria por seguir y la guarda en otro archivo. Luego existe la opcin de realizar la dinmica inversa, usando RIDIM para la trayectoria calculada, cuya salida (fuerzas/pares de torsin de la articulacin) tambin se guarda en un archivo. Los resultados guardados en los archivos estn disponibles para graficar u otros anlisis.

350

APNDICE

El uso de MATLAB y RIDIM

B.2.1

Instalacin de RIDIM

Para instalar RIDIM, baje ridim.zip de http://web.iitd.ac.in/saha o del sitio web del libro. Observe que el sistema de cmputo del usuario debe tener los siguientes dos archivos en C:\windows\system:
MFC42D.DLL MSVRTD.DLL

Si no existen los dos archivos mencionados, hay que tomarlos del


RIDIM\SYSTEM-FILES

directorio de flders descomprimidos. Luego, instale RIDIM siguiendo los pasos que se indican a continuacin: 1. Descomprmalo en el directorio C:\. Es decir, durante la descompresin, seleccione flder diferente y give/choose C:\. 2. Vyase al flder C:\. Haga un clic derecho en el flder RIDIM; luego haga clic en propiedades y despus en slo lectura (esto quitar la palomita si es que existe). Aplique y cierre la ventana. 3. Haga doble clic en RIDIM para entrar en el flder. Luego, en seleccionar todo. Lleve la flecha del cursor sobre cualquier cono de archivo. Haga clic derecho, luego en propiedades, despus en slo lectura (esto quitar la palomita si es que existe). Aplique y cierre la ventana. 4. Haga doble clic en el flder depurar. Jale el archivo proj (el archivo de aplicacin donde el cono de RIDIM aparece) al escritorio. 5. Haga doble clic sobre el cono RIDIM. 6. Ingrese a la entrada que desea. 7. Grafique usando MS-EXCEL o MATLAB. Si las instrucciones mencionadas no funcionan, lo ms probable es que usted no tenga acceso de escritura en el drive C. Pida permiso al administrador del sistema o enve un correo electrnico al administrador del sitio web del libro.

B.2.2

Cmo usar RIDIM?

1. Haga doble clic en el cono de RIDIM (nombre del archivo: proj1) que est en el escritorio. Aparecer una ventana con instrucciones acerca del software. Haga clic en Next para proceder o en Cancel para cerrar el programa. Aparecer una ventana que pedir el nmero de grados de libertad. Ingrese el nmero de grados de libertad, por ejemplo DOF 6 donde el usuario deber especificar cantidades subrayadas y significa Press Next o Press Return Button. 2. Despus, dependiendo de la eleccin del usuario, el programa pedir los parmetros DH y las propiedades del eslabn. Por ejemplo, los parmetros DH y los parmetros del eslabn se dan en la tabla B.1. Consulte los captulos 5-9 para revisar el significado de los trminos. Todos los valores mencionados arriba debern ingresarse para un eslabn tras otro, empezando con el eslabn 1. Despus de haber ingresado todos los datos, aparecer una ventana que indica el almacenamiento de los parmetros en un archivo dhpara. r. Haga clic en Next.

B.2

El uso de RIDIM

351

Tabla B.1 Datos de muestra que usa RIDIM (guardados en dhpara.r)

Nm. Jt.
1 2 3 4 5 6 R R R R R R

ai
1 2 3 0 0 1

bi
0 5 3 7 0 2

a
90 180 90 90 90 90

qI
0 0 0 0 0 0

mi
1 1 1 1 1 1

xcm
1 1 1 1 1 1

ycm
1 1 1 1 1 1

zcm
1 1 1 1 1 1

Ixx
1 1 1 1 1 1

Ixy
1 1 1 1 1 1

Ixz
1 1 1 1 1 1

Iyy
1 1 1 1 1 1

Iyz
1 1 1 1 1 1

Izz
1 1 1 1 1 1

3. Para la planeacin de trayectorias, se piden 2 parmetros: a) Tiempo total: por ejemplo, Total time: 15 b) Nm. de pasos: Esto sirve para decidir sobre la precisin de los clculos. Entre mayor sea el nmero de pasos, ms grande ser la precisin de la planeacin de trayectorias. Estos datos son importantes para calcular los resultados en varias posiciones. Por ejemplo: Nm. de pasos: 30 4. Aparecer una ventana en la que se tendr que hacer clic sobre la opcin Run Ikin. cpp para la cinemtica inversa y la planeacin de trayectorias. Primero que nada, el programa preguntar si el usuario desea ingresar los datos en coordenadas del nivel de articulacin o en coordenadas de nivel cartesiano: Deber especificarse cmo se desea ingresar las posiciones: En coordenadas del nivel de articulacin (presione 1) o en coordenadas de nivel cartesiano (presione 2)? 1 i) Si se ingresa 1, se piden los ngulos de articulacin de la siguiente manera, tanto para la posicin inicial como para la final: Entrar trayectoria: Nivel de articulacin (1) o nivel cartesiano (2) Entre las coordenadas iniciales y finales de articulacin [ngulo para el par revoluto y longitud para el par prismtico] Valor inicial (grados o metros) para la articulacin 1: 10 Valor inicial (grados o metros) para la articulacin 2: 60 Valor inicial (grados o metros) para la articulacin 3: 45 Valor inicial (grados o metros) para la articulacin 4: 30 Valor inicial (grados o metros) para la articulacin 5: 90 Valor inicial (grados o metros) para la articulacin 6: 100 y de manera similar para la configuracin final. ii) Si se presiona 2, aparecer una ventana donde debern proporcionarse los siguientes datos: Se pide la configuracin inicial, por ejemplo: 1. Entre la posicin del efector final Entre (P1 P2 P3) 6 1 5 2. Entre la matriz de rotacin del efector final: (Q) Entre Q11 12 13: 0 1 0

352

APNDICE

El uso de MATLAB y RIDIM

5.

6.

7.

8. 9.

10.

11.

Entre Q21 22 23: -1 0 0 Entre Q31 32 33: 0 1 0 Las posibles soluciones de cinemtica inversa se generan y muestran, y se pide que el usuario d un nmero particular de solucin que deba usarse para los clculos. Si el usuario no est seguro de cul deba seleccionar, puede presionar cualquier tecla. En este caso, se seleccionar el nmero de solucin por default (que actualmente es 1). Por ejemplo, Ingrese el nm. de solucin que se va a revisar: (Presione cualquier tecla para default, por ejemplo, 1): 3 Se sigue un procedimiento similar para obtener la configuracin final. (Observe que, para el caso planar de DOF = 2, antes de pedir la posicin inicial y final, se le pregunta al usuario si necesita la solucin del brazo inferior o del superior. La ventana que aparecer tendr el siguiente aspecto: Desea usted la solucin del brazo inferior (1) o superior (2)? 1 Despus de ingresar todos los datos, las soluciones de cinemtica inversa se guardan en un archivo. Luego, TECLEAR ok Y LUEGO ENTER PARA CONTINUAR ok Aparecer una ventana indicando que las computaciones de trayectoria se efectuaron y que los datos generados se guardaron en un archivo ikin.r. Se pide RUN Idyn. cpp. Presione ok. Nuevamente aparecer una ventana con las opciones Ikin.cpp e Idyn.cpp. Haga clic en la segunda opcin. Aparecer una ventana para Idyn.cpp que pregunta por el vector de gravedad. Por ejemplo, Vector de gravedad en el 1er sistema coordenado (g_x g_y g_z)? 0 0 1 Los resultados de dinmica inversa se guardan en un archivo y el programa sale automticamente. Aparecer una ventana ms que indica que el par de torsin de la articulacin o los valores de fuerza estn guardados en el archivo Idyn.xls en el flder de RIDIM en el directorio C: que puede graficarse. Para cerrar el programa, haga clic en el cono X en el lado derecho de la pantalla.

Con el fin de usar el mdulo de cinemtica directa de RIDIM para verificar los resultados de cinemtica inversa arriba mencionados, pueden seguirse los siguientes pasos: 1. Haga un doble clic en forwardkin.exe en el flder C:\debug o en una ventana por medio del cono de RIDIM. 2. Aparecer una ventana donde se pregunta si el usuario desea usar los parmetros DH guardados en el archivo dhpara.r o si desea ingresar nuevos valores, por ejemplo, Valores de parmetros DH Desea leer el archivo dhpara.r? (Presione 1) O desea crear uno? (presione 2) 2 3. Si se ingresa 1, se tomarn los valores ingresados por medio del software de RIDIM. Si se presiona 2, se solicitarn primero los grados de libertad y despus los parmetros de la articulacin, por ejemplo: Ingrese el nm. de grados de libertad: 3 Ingrese los parmetros DH

B.2

El uso de RIDIM

353

Longitud del eslabn (a[i]) Longitud del offset (b[1]) ngulo de giro en grados (alfa[i]): eslabn 1 1 2 90 eslabn 2 3 4 45 eslabn 3 1 1 0 4. Despus de ingresar los datos, se pide que el usuario elija si desea revisar las soluciones guardadas en ikinsoln.r o si quiere ingresar nuevos valores de articulacin (q). Desea revisar los valores de articulaciones guardados en ikindsoln.r (presione 1) O desea ingresar sus propios valores (presione 2) 2 5. Si se ingresa 1, se realiza la cinemtica directa de la solucin guardada. Esto sigue exactamente el procedimiento que se explica en el inciso 3. En contraste, si se ingresa 2, entonces se piden los valores individuales theta; por ejemplo Entre th[1] (grados): 45 Entre th[2] (grados): 60 Entre th[3] (grados): 30 6. Basados en la entrada, los resultados de cinemtica directa, a saber, la matriz de orientacin del efector final y la posicin, se visualizan, es decir, La matriz de rotacin es: 0.33968 0.118764 0.933013 0.16032 0.984789 0.0669873 0.926777 0.126826 0.353553 La posicin EE es: 5.86889 1.28797 5.1713 Presione ok e ingrese ok

B.2.3

Una ilustracin con PUMA 560

El robot PUMA 560 se presenta en la figura B.1 y sus parmetros DH se muestran a su lado. Para usar el programa de cinemtica inversa, se usan las siguientes entradas: Posicin del efector final: p = [0.67837 0.24867 0.07662]T Orientacin del efector final Q = [0.84086 0.25393 0.47799; 0.54115 0.37712 0.75163; 0.01060 0.89067 0.4545] Los valores de p y Q se toman de la salida de una solucin de cinemtica directa cuando los ngulos de articulaciones se toman como q = [5 30 10 45 90 60 ]T grados Esto significa que una de las soluciones del programa de cinemtica inversa deber coincidir con los valores arriba mencionados, lo que tiene es correcto segn la siguiente salida del mdulo de cinemtica inversa de RIDIM:

354

APNDICE

Cadera(articulacin 1) Hombro (Articulacin 2)

Brazo superior

Hombro Codo (Articulacin 3) 2 3 4 5 6 0 0 0 0.02 0 0.432 0 0.056 0.432 0.149 0 90 90 90 0 Eslabn k 1 a (m) 0 b (m) 0 a (deg) 90

q (deg) q1 (JV) q2 (JV) q3 (JV) q4 (JV) q5 (JV) q6 (JV)

El uso de MATLAB y RIDIM

Tronco Brida (Articulacin 6)

Antebrazo

Rotacin de la mueca (Articulacin 4) Doblado de la mueca (Articulacin 5)

Mueca

Figura B.1 El robot PUMA 560 y sus parmetros DH

B.2

El uso de RIDIM

355

Las soluciones son: Sol nm.: 1 5 30 10 45 90.0002 60.0001 Sol nm.: 2 149.82 132.601 10 83.9618 24.3137 19.1774 Sol nm.: 3 5 47.3984 164.698 77.6014 46.3851 12.3228 Sol nm.: 4 149.82 150 164.698 155.036 75.9605 70.9998 Sol nm.: 5 5 30 10 135 90.0002 120 Sol nm.: 6 149.82 132.601 10 96.038 24.3137 160.822 Sol nm.: 7 5 47.3984 164.698 102.399 46.3851 167.677 Sol nm.: 8 149.82 150 164.698 24.9645 75.9605 109 Ingrese el nmero de solucin para revisar (presione cualquier tecla para el default, p.ej. 1): Ahora se pide que el usuario seleccione una determinada solucin, o bien se selecciona una por default. Observe que el nm. de solucin 1 (indicado arriba como Sol nm. 1) es el que corresponde a los valores de entrada. Entonces, para demostrar el mdulo de cinemtica inversa de RIDIM, se generan las trayectorias de posicin, velocidad y aceleracin basadas en las soluciones de cinemtica inversa. Por ejemplo, vamos a usar los siguientes valores: Condiciones iniciales: qi(0) = 0; condiciones finales: qi(T) = 180 para i = 1, ..., 6; duracin de tiempo T = 10 seg.
3.5 0.7

Valor de la articulacin

3 2.5 2 1.5 1 0.5 0 0 1 2 3 4 5 6 7 Tiempo (seg) a) Posicin 0.25 0.2 0.15 0.1 0.05 0 0 0.05 0.1 0.15 0.2 0.25 8 9 10

Velocidad de la articulacin Aceleracin de la articulacin


1 2 3 4 5

0.6 0.5 0.4 0.3 0.2 0.1 0 0 1 2 3 4 5 6 7 8 9 10 Tiempo (seg) b) Velocidad

9 10

Tiempo (seg) c) Aceleracin

Figura B.2

Trayectoria de la articulacin: a) posicin, b) velocidad y c) aceleracin

356

APNDICE

El uso de MATLAB y RIDIM

8 6 4 2 0 0 1 2 3 4 5 6 7 8 9 10 2 4 6 8 Tiempo (seg) a) Articulacin 1 30

100 80 60 40 20 0 20 0 1 2 3 4 5 6 7 8 9 10 40 60 80 100 Tiempo (seg) b) Articulacin 2 0.5 0.4 0.3 0.2 0.1 0 0 1 2 3 4 5 6 7 8 9 10 0.1 0.2 0.3 Tiempo (seg) d) Articulacin 4

Par de torsin (Nm)

Par de torsin (Nm)

10 0 10 20 30 Tiempo (seg) c) Articulacin 3 0 1 2 3 4 5 6 7 8 9 10

Par de torsin (Nm)

0.1 0.05 0 5 0 1 2 3 4 5 6 7 8 9 10

0.1 0.15

Tiempo (seg) e) Articulacin 5

Figura B.3

Valores de par de torsin en a) articulacin 1, b) articulacin 2, c) articulacin 3, d) articulacin 4, e) articulacin 5, f ) articulacin 6

Las trayectorias generadas para cada articulacin se muestran en la figura B.2(a-c). Luego se obtienen los resultados de la dinmica inversa para el PUMA 560, que se encuentran graficados en la figura B.3(a-f ). Las grficas se generaron mediante el programa MS-Excel.

RESUMEN
En este apndice se explica el uso de MATLAB y RIDIM. Esto le ayudar al lector a resolver algunos de los ejemplos y ejercicios que se presentan en los captulos sobre cinemtica y dinmica.

Par de torsin (Nm)

0.2 0.15

Par de torsin (Nm)

20

Par de torsin (Nm)

0.015 0.01 0.005 0 0 1 2 3 4 5 6 7 8 9 10 0.005 0.01 0.015 0.02 0.025 Tiempo (seg) f) Articulacin 6

Cinemtica

357

Apndice

C
Proyectos de estudiantes: Estudios de caso
En este apndice se presentan varios estudios de caso con los proyectos de estudiantes, donde estn involucrados sntesis, diseo, fabricacin y control de brazos y mordazas robticos, tanto aquellos que se construyeron para participar en concursos de robots, como los que fueron realizados como parte de proyectos de licenciatura y posgrado. Se enfatiza fuertemente el primer conjunto, ya que involucra a todas las fases del ciclo de vida de un producto y, por ende, se presenta en primer lugar.

C.1

Robots para ROBOCON

ROBOCON, la abreviacin de ROBOtic CONtests, es una competencia robtica de estudiantes, organizada cada ao por la Asian Broadcasting Union (ABU). A pesar de que era una competencia robtica popular en Japn entre estudiantes de licenciatura, se abri para otros pases asiticos en 2002. Desde entonces, Doordashan (compaa de televisin de la India) organiza una competencia en la India para seleccionar un equipo representativo de ese pas. Normalmente, el campen de la India representa a su pas en las competencias ABURobocon que se llevan a cabo en diferentes pases de Asia. Hasta la fecha, Japn (2002), Tailandia (2003), Corea del Sur (2004), China (2005), Malasia (2006) y Vietnam (2007) han albergado el evento. La India present la Robocon de 2008 en Pune. Bajo la direccin del autor, equipos del IIT Delhi han participado en el ROBOCON de la India desde 2003. En la siguiente subseccin se presentan experiencias de proyectos

358

APNDICE

Proyectos de estudiantes: Estudios de caso

de ROBOCON. De manera ilustrativa, se menciona que en la competencia de 2007, la ITT Delhi se qued con el ttulo de campeona de la India.

C.1.1

La experiencia de 2007

En esta competencia se permitieron dos tipos de robots. Uno es el automtico, cuya tarea es transferir bloques desde los bordes exteriores del polgono de 10 lados en el campo de juego, como se muestra en la figura C.1, hasta los vrtices del tringulo en el centro. Se trata de robots preprogramados. Por ende, se usa el trmino automtico. El otro tipo se llama manual, que puede controlarse por medio de una palanca de mando o de un conmutador por parte de un operario. La tarea de este robot es transferir bloques desde las esquinas del campo cuadrado a los bordes del polgono de 10 lados. Cada transferencia exitosa acumula puntos y el juego prosigue. Ms que en las reglas exactas, en este libro se hace hincapi en el diseo, la fabricacin y los aspectos de programacin. Tanto los robots automticos como los manuales tienen una mordaza para sostener los bloques de aproximadamente 300 mm de dimetro. Es importante sintetizar un mecanismo adecuado que debe sostener los bloques que estn hechos de un material suave, sin aplastarlos y sin que se resbalen. El segundo aspecto es la elevacin y colocacin. Mientras que se usa un arreglo de poleas para el robot automtico que se presenta en la figura C.2, se prefiere un

Figura C.1

El campo de juego de 2007

C.1

Robots para Robocon

359

Figura C.2

Robot automtico de 2007

Figura C.3 Robot manual de 2007

mecanismo de un paralelogramo de cuatro barras para el robot manual de la figura C.3. Este ltimo puede extenderse casi medio metro enfrente del robot para poder colocar el bloque dentro de la lnea de lmite del polgono de 10 lados. Una vez terminado el diseo, el siguiente nivel de desafo es su fabricacin, ensamble, programacin y funcionamiento exitoso. Segn la experiencia del autor, normalmente debern revisarse los siguientes aspectos para completar este tipo de proyecto con xito: 1. Una planeacin correcta, tomando en cuenta las 5 P (Proper Planning Prevents Poor Performance, la planeacin correcta impide el desempeo defectuoso). 2. Cada estudiante debe llevar una bitcora de proyecto para registrar actividades diarias, esbozos, informaciones, etctera. 3. Seguimiento estricto de un diagrama de Gantt bien planeado. Un tpico diagrama Gantt se presenta en la figura C.4. En caso de que no pueda cumplirse con las fechas lmite, debern averiguarse las causas y deben tomarse medidas sin redefinicin del diagrama de Gantt. De hecho, el calendario actual podr colocarse debajo del calendario planeado. 4. Es de extrema importancia que los estudiantes aprendan cmo trabajar en grupo. En particular, los coordinadores de diferentes tareas, por ejemplo, mecnico, elctrico, fabricacin, etc., debern saber cmo distribuir el trabajo entre otros miembros de sus grupos. De lo contrario, ellos terminarn haciendo la mayor parte de los trabajos mientras que otros no tendrn trabajo. Este ltimo grupo podr frustrarse e incluso abandonar el proyecto.

360

2 0 0 6 2
December 1 2 3 4 1 4 4 January 2 3 February 1 2 3 September 1 2 3 4 October 1 2 3 4 November 1 2 3 4

0 0 7

TASK

August 1 2 3 4

APNDICE

C Proyectos de estudiantes: Estudios de caso

Minor I, IISemester1 Major Minor ISemester2 Formalisation andPlanning Introduction to First year student s Study on Rules Team Making Market Survey Designing Dr. Sahas Comments Final Design Mechanical Fabrication andRepair Electrical Fabrication andRepair Electrical Installation Game Field Inspection andTesting Packaging and Transport

Figura C.4

Diagrama de Gantt de los participantes en Robocon 2007 (IIT Delhi)

C.2

Brazo robtico planar suspendido (HaPRA)

361

5. Por encima de todo, son obligatorios valores como dedicacin, sinceridad, honestidad y pensamiento positivo entre los miembros para una participacin exitosa donde los robots realmente se muevan y cumplan con sus tareas, ms que simplemente ganar el juego.

C.2

Brazo robtico planar suspendido (HaPRA)

Como parte de dos proyectos de B. Tech, principalmente, se desarroll el HaPRA de tres grados de libertad. En el primer proyecto (Venugopal y Shabeer, 1996), se consideraba la tarea industrial de levantar objetos cilndricos, por ejemplo, cabezas de pistn, de un transportador a una mquina y viceversa, como se ilustra en la figura C.5. La configuracin del brazo del robot, junto con sus dimensiones, etc., fue evaluada en este primer proyecto, que fue presentado en un congreso (Venugopal et al., 1997). En el segundo proyecto de B. Tech (Sharma y Ashutosh, 1997), se realiz la fabricacin de este brazo. Entonces se hizo hincapi en el aspecto de bajo costo. Puesto que la carga

Vista frontal (rendija)

a) Objeto cilndrico (cabeza de pistn)

2 3

Sli

ttin

gM

r do rta a o sp trad an Tr e en d

Tr

an de spor sa tad lid or a

b) Tarea de transferencia

Figura C.5

Una tarea industrial de un brazo de robot

362

APNDICE

Proyectos de estudiantes: Estudios de caso

Figura C.6

Fotografa del HaPRA y su controlador

efectiva slo era de aproximadamente 500 g, se eligieron accionamientos por cadena de fcil disponibilidad, a saber, cadenas de bicicleta. El control completo se logr mediante el uso de motores de pasos y una PC. El brazo se presenta en la figura C.6. El diseo detallado y el trabajo de desarrollo se presentaron en otro congreso (Baghla et al., 1999).

C.3

Mordaza para objetos cilndricos

La mordaza fue diseada en otro proyecto de B. Tech, teniendo en cuenta que lo mismo puede usarse para el HaPRA que se explic en la seccin C.2 (Agarwal y Singh, 2004). Para una gama de formas cilndricas, la mordaza se sintetiza como un mecanismo de seis barras, como se presenta en la figura C.7a). Su anlisis cinemtico completo se realiz utilizando la opcin de movimiento del software Pro-E. La mordaza fue fabricada y puesta en interfaz con un motor de pasos para demostrar sus capacidades de movimiento, como se muestra en la figura C.7b). El proyecto recibi en el ITT Delhi el premio como mejor proyecto de hardware de B. Tech Padamshri Manmohan Suri para el ao de 2004.

C.4

Robot de accionamiento directo

Este robot de accionamiento directo, como se presenta en la figura C.8, fue desarrollado en dos proyectos M. Tech. En el primero de ellos se realizaron los anlisis cinemticos y

C.4

Robot de accionamiento directo

363

a) Dibujo de Pro-E)

b) Interfaz de control

Figura C.7

Mordaza para objetos cilndricos

dinmicos, y se fabric el brazo que contiene dos grados de libertad (Barma, 2001). Posteriormente, se agreg un tercer brazo en el marco de otro proyecto M. Tech (Ramvath, 2004), que deber ser til para la aplicacin real del robot en operaciones para recoger y colocar. La metodologa detallada de diseo fue presentada en un congreso nacional (Ramvath et al., 2005).

364

APNDICE

Proyectos de estudiantes: Estudios de caso

a) Robot de accionamiento directo

b) Tercer eje (dibujo de Pro-E)

Figura C.8

Brazo de robot de accionamiento directo

RESUMEN
En este apndice se presentan varios sistemas robticos desarrollados en el marco de proyectos de estudiantes. Esto har que el lector entienda los requerimientos de hardware y software para construir su propio sistema robtico.

Referencias

365

Referencias

Agarwal, A. y Singh, S., Design and Manufacturing of Robotic Gripper. B. Tech Project Report, ME Dept, IIT Delhi, mayo de 2004. Angels, J. Fundamentals of Robotic Mechanical Systems, Springer-Verlag, Nueva York, 2003. ngeles, J. y Lee, S., The formulation of dynamical equations of holonomic mechanical systems using a natural orthogonal complement, ASME J. Appl. Mech., V. 55, marzo de 1988, pp. 243-244. Ascher, U.M., Pai, D.K. y Cloutier, B.P., Forwad dynamics, elimination methods, and formulation stiffness in robot simulation, Int. J. Rob. Res., V.16, N. 6, 1997, pp. 749-758. Baghla, D., Anurag, A., Saha, S.K., Sharma, Prasenjit, S. y Mehta, G.R., Development of a hanging planar robotic arm (HaPRA), Proc. Of the 11a. ISME Conf., IIT Delhi, 3-5 de febrero de 1999, pp. 93-98. Barma, D., Design and Fabrication of a Planar Robot, diciembre de 2001. Bishop, P.H., The mechatronics Handbook, CRC Press, Nueva York, 2002. Bhangale, P.P., Dynamics Based Modelling, Computational Complexity, and Architecture Selection of Robot Manipulators, Ph. D thesis, IIT Delhi, 2005. Canudas de Wit, C. Siciliano, B., Bastin, G. (Eds.), Theory of Robot Control, Springer-Verlag, Nueva York, 1996. Chaudhary, H. y Saha, S.K., Constrait wrench formulation for closed-loop systems using two-level recursions, ASME J. of Mechanical Design, 2006. Chaundhary, H. y Saha, S.K., Matrix formulation of constraint wrenches for serial manipulators, CD-Proc. IEEE Int. Conf. on R&A, Barcelona, Espaa, 18-22 de abril de 2005, pp. 4647-4652.

366

Referencias

Corke, P.I., Visual Control of Robots: High-performance Visual Servoing, Research Studies, Press Ltd., Somerset, Inglaterra, 1996. Craig, J.J., Introduction to Robotics: Mechanics and Control, Addison-Wesley, Singapore, 1986. Critchlow, R.H., Introduction to Robotics, McMillan Publishing Company, Nueva York, 1985. Cugy, A. y Page, K., Industrial Robot Specifications, Kogan Page, Londres, 1984. Cyril, X., Dynamics of Flexible-Link Manipulators, Ph. D thesis, McGill University, Canad 1988. Denavit, J. y Hartenberg, R.S., A kinematic notation for lower-pair mechanisms based on matrices, ASME J. Appl. Mech., V. 23, 1955, pp. 215-221. Dorf, R.C., International Encyclopedia of Robotics, John Wiley & Sons, Nueva York, 1988. Dorf, R.C., Modern Control Systems, Addison-Wesley, Nueva York, 1992. Fu, K.S., Gonzlez, R.C. y Lee, C.S.G., Robotics: Control, Sensing, Vision and Intelligence, McGraw-Hill, 1987. Fuller, J.L., Robotics: Introduction, Programming, and Proyect, Prentice Hall, Nueva Jersey. Howards, B. y Erlemeier, T., Interface design for offline robot programming with the use of virtual simulation, www.public.iastate.edu/~terlemei/FinalPaper.pdf, 30 de abril de 2007. Gopal, M., Control Systems-Principles and Design, Tata McGraw-Hill, Nueva Delhi, 1997. Ghosal, A., 2006, Robotics: Fundamental Concepts and Analysis, Oxford University Press, Nueva Delhi, 2006. Histand, M.B. y Alciatare, D.G., Introduction to Mechatronics and Measurement Systems, McGraw-Hill, Nueva Delhi, 1999. Huston, H. y Passarello, C.E., On constraint equation-A new approach, ASME J. Appl. Mech., V. 41, 1974, pp.1130-1131. Kane, T.R. y Levinson, D.A., The use of Kanes dynamical equations for robotics, Int. J. Rob. Res., V. 2, N. 3, 1983, pp. 3-21. Khan, W.A., Krovi, V.N., Saha, S.K. y ngeles, J., Recursive kinematics and inverse dynamics for a planar 3R parallel manipulator, ASME J. of Dynamic Systems, Measurement and Control, V. 127, Issue 4, septiembre de 2005, pp. 529-536. Kuo, B.C., Automatic Control Systems, 6a. Ed. Prentice-Hall, Englewood Cliffs, Nueva Jersey, 1991. Klafter, R.D., Chmielewski, T.A. y Negin, M., Robotic Engineering-An Integrated Approach, Prentice-Hall India, Nueva Delhi, 1994. Koivo, A.J., Fundamental for Control of Robotic Manipulators, John Wiley & Sons, Nueva York, 1989. Koren, Y., Robotics for Engineers, McGraw-Hill, Nueva Delhi, 1987. Koteswara Rao, A.B., Saha, S.K. y Rao, P.V.M., Dynamics modeling of hexaslides using the decoupled natural orthogonal complement matrices, Int. J. of Multibody System Dynamics, V.15, 2006, pp.159-180. LaSalle, J. y Lefschetz, S., Stability by Liapunovs Direct Mothod with applications, Academic Press, Nueva York, 1961.

Referencias

367

Mair, G.M., Industrial Robotics, Prentice Hall, Nueva York, 1988. Marothiya, P. y Saha, S.K., Robot inverse kinematics and dynamics algorithms for windows, Recent Trends in Manufacturing, Proc. Of the Conference on Advances and Recent Trends in Manufacturing, Kalyani Govt. Eng. College, WB, India, Elite Publishing House, Nueva Delhi, 2003, pp. 229-237. Matlab, MATLAB- The Language of Technical Computing, Versin 6.5, lanzamiento 13, 2002. Mittal, R.K. y Nagrath, I.J., Robotics and Control, Tata McGraw-Hill, Nueva Delhi, 2003. Mohan, A. y Saha, S.K., A computationally efficient and numerically stable simulation algorithm serial robots with flexible links, CD-Proc. Of the ECCOMAS Thematic Conf. (Multibody Dynamics 2007), Miln, Italia, 25-38, junio de 2007, pp. 1-20. Mohan, A. y Saha, S.K., A recursive numerically stable, and efficient simulation algorithm for serial robots, Int. J. of Multibdy System Dynamics, V. 17, N. 4, Mayo de 2007, pp. 291-319. Molone, R., Literature, Robot In, International Encyclopedia of Robotics (Editor a cargo: R.C. Dorf), John Wiley & Sons, Nueva York, 1988, pp. 779-791. Ogata, K., Modern Control Engineering, Prentice-Hall of India, Nueva Delhi, 1987. Onwubolu, G.C., Mechatronics-Principles and Applications, Elsevier, Nueva York, 2005. Pratap, R., MATLAB 6: A Quick Introduction for Scientists and Engineers, Oxford University Press, Nueva York, 2002. Ramavath, P., Design and Analysis of a Parallel Drive Robot, M. Tech Projects Report, ME Dept., IIT Delhi, mayo de 2004. Ramavath, P., Barma, D., Saha, S. K., Seth, B. y Jaitly, D., Development of a direct-drive based tree-DOF robot, Nat. Conf. on Industrial Problems on Mechines and Mechanisms, IIT Kharagpur, 24-25, febrero de 2005, pp. 67-74. Saha, S.K., Dynamic simulation of serial manipulators using the UDUT decomposition of the inertia matrix, Int. J. of Multibody System Dynamics, V. 9, N.1, febrero de 2003, pp. 63-85. Saha, S.K., Dynamic modelling of serial multi-body systems using the decoupled natural orthogonal complement matrices, ASME J. of Applied Mechanics, V. 66, diciembre de 1999, pp. 986-996. Saha, S.K., A decomposition of the manipulator inertia matrix, IEEE On Robotics and Automation, V. 13, N. 2, abril 1997, pp. 301-304. Saha, S.K., Inverse dynamics algorithm for space robots, The ASME J. of Dynamic Systems, Measurment and Control, V. 118, septiembre 1996, pp. 625-629. Saha, S.K. y Schiehlen, W.O., Recursive kinematics and dynamics for closed loop multibody systems, Int. J. of Mechanics of Structures and Machines, V. 29, N. 2, agosto de 2001, pp. 143-175. Saha, S.K. y ngeles, J., Dynamics of nonholonomic mechanical systems using a natural orthogonal complement, ASME J. Appl. Mech., V. 58, marzo de 1991, pp. 238-243. Sciavicco, L. y Siciliano, B., Modelling and Control of Robot Manipulator, Springer-Verlag, Londres, 2000. Shabana, A.A., Computational Dynamics, John Wiley & Sons, Inc., Nueva York, 1994. Shampine, L.F., Numerical Solution of Ordinary Differential Equations, Chapman and Hill, Nueva York, 1994.

368

Referencias

Sharma, P. y Ashutosh Kumar, Design of an Industrial Robot, B. Tech Project Report, ME Dept., IIT Delhi, mayo de 1997. Smith, S.D., Art Robotic, International Encyclopedia of Robotics, John Wiley & Sons, Nueva York, 1988, pp. 81-87. Spong, M. W., Hutchison, S. y Vidyasagar, M., 2006, Robot Modeling and Control, Wiley India, Nueva Delhi, 2006. Stewart, G.E., Introduction to Matrix Computations, Academic Press, Inc., Nueva York, 1973. Strang, G., Linear Algebra and Its Applications, Harcourt Brace Jovanovich, Publishers, Orlando, Florida, 1995. Stadler, W., Analytical Robotics and Mechatronics, McGraw-Hill, Nueva Delhi, 1995. Todd, T.J., Walking Machines, Kogan Page, Londres, 1985. Tsai, L., Robot Analysis: The Mechanics of Serial and Parallel Manipulators, John Wiley & Sons, Nueva York, 1999. Spong, M.W., Hutchison, S. y Vidyasagar, M., 2006, Robot Modeling and Control, Wiley India, Nueva Delhi, 2006. Venugopal, S. y Shabeer, S., Simulation and Animation for Robot Design, ME Dept., IIT Madras, mayo 1996. Venugopal, S. y Saha, S.K., Interactive design for industrial robots, Proc. Of the AIMTDR Conf., Warangal, 9-11 de enero de 1997, pp. 201-205. Walker, M.W. y Orin, D.E., Efficient dynamic computer simulation of robotic mechanisms, ESME J. Dyn. Sys., Meas. And Cont., V. 104, septiembre de 1982, pp. 205-211. Yoshikawa, T., Foundation of Robotics, The MIT Press, Massachusetts, 1990.

ndice analtico

369

ndice analtico

Smbolos
(ADC), 21 (DAC), 22 (DH) parmetros, 100 (DOF), 76 (ISO), 5

A
Aceleracin angular, 188 Aceleracin lineal, 189 Actuador, 18 Adquisicin de imgenes, 68 AGV, 6 Algoritmo recursivo de Newton-Euler, 186 Algoritmos de dinmica, 195 Amplificador, 23 Anlisis de aceleracin, 143 de posicin inversa, 121 de velocidad, 130 ngulos de Euler, 89 Arquitectura, 76 Articulacin cilndrica, 78 de par superior, 77 de par inferior, 77

esfrica, 78 helicoidal, 77 planar, 79 prismtica, 77, 134 revoluta, 77, 134 universal, 79 Articulaciones, 76 Articulado, 26 atan2, 123, 338

B
Brazo articulado, 126, 136 Brazo planar de tres eslabones, 122

C
Cadena cinemtica, 79 Clculo recursivo, 149 Capacitivo, 63 Cartesiano, 24 Centro de masa, 164 Cilndrico, 25 Cinemtica, 112 directa, 112 inversa, 112, 122

370

ndice analtico

Clasificacin, 24 de sensores, 52 Computacin directa, 186 Computacin regresiva, 189 Control, 29 Coordenadas generalizadas, 172 Coseno de direccin, 85

I
Imn permanente, 40, 44 Independencia lineal, 342 Induccin, 47 Inductivo, 63 Inferior, 77 Interruptor de lmite, 62 Inverso, 343

D
DeNOC, 138 Deslizamiento, 48 Desplazamiento virtual, 157 Detector de deformacin, 61 Dinmica, 163, 205 directa, 198 directa recursiva, 229 inversa, 195 inversa recursiva, 221

J
Jacobiano, 130, 134, 157

L
Leyes de robtica, 2 LVDT, 56

M
Manipulador, 17 MATLAB, 346 Matriz de inercia convectiva (MCI), 213 de inercia generalizada (GIM), 211 de producto cruz, 341 de propagacin de torsin, 209 jacobiana, 141 Mecanismos, 21 Modelado dinmico, 206 Momento, 147 angular, 182 de inercia, 166 lineal, 181 Momentos principales de inercia, 168 Monofase, 47 Motores CA, 46 CD, 42 de paso, 39 sncronos, 48 Mueca, 129

E
Economa, 10 Ecuaciones de movimiento, 176, 183, 210 Efector final, 18 Elctrico, 33, 38 Elipsoide de fuerza, 161 Encder, 53 Energa cintica, 173 Energa potencial, 176 Engranajes, 20 Escalar, 340 Escribir las ecuaciones de Newton y Euler, 164 Esfrico, 26 Eslabones, 76 Esttica, 146 Euler-Lagrange (EL), 172, 206

F
Formulacin Newton-Euler, 181 Fuerza generalizada, 216 Funcin de transferencia, 344

G
Gantry, 27 Grado de libertad, 80

N
Neumtico, 32, 33 Newton-Euler (NE), 206

H
HaPRA, 361 Hbrido, 41 Hidrulico, 32, 36

O
Offline, 30 Online, 30 Orientacin, 85

ndice analtico

371

P
Par de torsin o fuerza de articulacin, 190 Pares cinemticos, 77 Poblacin, 10 Polar, 26 Polifase, 47 Postura, 83 Potencimetro, 56 Producto cruz, 340 Propagacin de velocidad de articulacin, 209 Proximidad, 53 PUMA, 138

Sin escobillas, 45 Sincros, 58 Singularidad, 141 Sistema de visin, 66 Sistemas de DH, 105 Sistemas de resolucin, 58 Solucin algebraica, 122 Solucin geomtrica, 124 Subsistema(s), 14 de control, 17 de movimiento, 16 de reconocimiento, 16

R
Reluctancia variable, 40 Repercusin negativa, 37 Restricciones cinemticas, 208 RIDIM, 222, 349 Robocon, 357 Robot PUMA, 137 Robots caminantes, 7 Robots paralelos, 7

T
Tacmetro, 59 Tacto, 52 Tensor de inercia, 166 Teorema de ejes paralelos, 167 Teorema de ejes perpendiculares, 167 Trminos de vectores de inercia convectiva (VCI), 215 Trabajo virtual, 157 Transformacin homognea, 94 Transformaciones, 76 Transmisin, 20 Trifsico, 48

S
SCARA, 28 Seguridad, 11 Seleccin de motores, 49 Seleccin de sensores, 72 Sensor de desplazamiento de semiconductor, 65 de efecto Hall, 59 de proximidad, 63 piezoelctrico, 62 Sensores, 21, 52 de aceleracin, 60 de fuerza, 61 de posicin, 53 de velocidad, 59 Simulacin, 198, 229, 232

U
UNIMATION, 2 Uso de robots, 8

V
Valores propios, 343 Vectores, 339, 340 propios, 343 unitarios, 339 Velocidad angular, 187 Velocidad lineal, 188 Visin, 53

Director Higher Education: Miguel ngel Toledo Castellanos Editor sponsor: Pablo Roig Vzquez Coordinadora editorial: Marcela Rocha Martnez Editora de desarrollo: Karen Estrada Arriaga Supervisor de produccin: Zeferino Garca Garca Diseo de portada: Mara Josefa Vaca Garca Traduccin: Dr. Thomas W. Bartenbach INTRODUCCIN A LA ROBTICA Prohibida la reproduccin total o parcial de esta obra, por cualquier medio, sin la autorizacin escrita del editor.

DERECHOS RESERVADOS 2010, respecto a la primera edicin en espaol por McGRAW-HILL/INTERAMERICANA EDITORES, S.A. DE C.V. A Subsidiary of The McGraw-Hill Companies, Inc. Prolongacin Paseo de la Reforma 1015, Torre A Pisos 16 y 17, Colonia Desarrollo Santa Fe, Delegacin lvaro Obregn C.P. 01376, Mxico, D.F. Miembro de la Cmara Nacional de la Industria Editorial Mexicana, Reg. Nm. 736 ISBN 13: 978-607-15-0313-8 Copyright 2008 de la primera edicin en ingls de Introduction to robotics, by Subir Kumar Saha, published by Tata McGraw-Hill Education Private Limited, NOIDA, India. ISBN: 978-0-07-066900-0 All rights reserved 1234567890 Impreso en Mxico 109876543210 Printed in Mexico

You might also like