Residencia Torres Cervantes Miguel

download Residencia Torres Cervantes Miguel

of 83

description

mi informe final de residencia, en cuanto a control de un brazo robotico mediante algortitmos de vision.

Transcript of Residencia Torres Cervantes Miguel

SEP

SEIT

INSTITUTO TECNOLOGICO DE TIJUANA INGENIERA ELECTRONICA

IMPLEMENTACION DE ALGORITMOS DE VISION EN SISTEMA POWERPC DE NI Residencia profesional Presentado por:

Torres Cervantes Miguel No.control:05211259

Asesor Interno: Prof. M.C. Gilberto E. Vzquez Alcaraz

Asesor Externo: Prof. M.C. Sergio Puga Guzmn

Tijuana, Baja California, Agosto del 2011.

Instituto Tecnolgico de Tijuana

ndice

ndicendice De Figuras .................................................................................................. iv ndice De Tablas .................................................................................................. vii Introduccin. ...................................................................................................... viii Planteamiento Del Problema .................................................................................. x Objetivo General. .................................................................................................. xi Objetivos Especficos. ........................................................................................... xi Justificacin. ....................................................................................................... xii Delimitacin. ...................................................................................................... xiii CAPITULO I. MARCO TEORICO. ..................................................................... 14 1.1. Imgenes. ........................................................................................... 14 1.1.1. Muestreo Y Cuantificacin. ........................................................... 15 1.2. Procesamiento y Anlisis De Imgenes................................................. 19 1.2.1. Conversin De Los Niveles De Grises. ........................................... 20 1.2.2. Transformaciones Geomtricas. ..................................................... 20 1.2.3. Transformacin Del Histograma. ..................................................... 20 1.3. Transformaciones Bsicas..................................................................... 21 1.3.1. Traslacin. ....................................................................................... 21 1.3.2. Cambio De Escala........................................................................... 22 1.3.3. Rotacin. ......................................................................................... 22 1.4. Filtrado De Imgenes. ........................................................................ 23 1.4.1. Filtros Suavizantes. ......................................................................... 25 1.4.2. Filtros de Realce de Imagen. .......................................................... 26 1.5. Segmentacin de Imagen. ..................................................................... 26 1.5.1. Deteccin De Discontinuidades. ..................................................... 28 ii

Instituto Tecnolgico de Tijuana

ndice

1.5.2. Deteccin De Puntos....................................................................... 28 1.5.3. Deteccin De Lneas. ...................................................................... 29 1.5.4. Deteccin De Bordes. ..................................................................... 30 1.6. Cinemtica Del Robot. ........................................................................... 32 1.6.1. Cinemtica Directa De Los Manipuladores. .................................... 33 1.6.2. Cinemtica Directa Mediante Matrices De Transformacin

Homognea............................................................................................... 35 1.6.3. Algoritmo De Denavit Hartenberg. .............................................. 37 1.7. Cinemtica Inversa De Los Manipuladores. .......................................... 41 1.7.1. Cinemtica Inversa Por Mtodos Geomtricos. .............................. 42 1.7.2. Cinemtica Inversa A Partir De La Matriz De Transformacin Homognea............................................................................................... 44 1.7.3. Desacoplo Cinemtico. ................................................................... 49 CAPITULO II.METODOS Y DESARROLLO DEL PROYECTO. .......................... 53 2.1. Brazo Robtico Lynx6. ........................................................................... 53 2.1.1. Funcionamiento Del Brazo Robtico. .............................................. 58 2.2. Diseo Conceptual................................................................................. 59 2.3. Adquisicin De Imgenes. ..................................................................... 60 2.4. Cinemtica Del Brazo. ........................................................................... 68 2.5. Desarrollo Del Programa Para El Control Del Brazo Robtico. ............. 71 CAPITULO III. RESULTADOS Y CONCLUSIONES. .......................................... 80 3.1. Resultados. ............................................................................................ 80 3.2. Conclusin. ............................................................................................ 82 3.3. Recomendaciones. ................................................................................ 82 Bibliografa. ....................................................................................................... 83

iii

Instituto Tecnolgico de Tijuana

ndice De Figuras

ndice De FigurasFigura 1. 1. Reduccin de la resolucin espacial ............................................. 18 Figura 1. 2. Reduccin de niveles de grises. .................................................... 19 Figura 1. 3. Etapa de anlisis automtico de una escena ................................ 19 Figura 1. 4. Imagen digital y su histograma correspondiente. .......................... 21 Figura 1. 5. Rotacin de un punto sobre cada uno de los ejes coordenados. .. 23 Figura 1. 6. Respuestas en el dominio de las frecuencias (parte superior) y en dominio espacial (parte inferior). ...................................................................... 24 Figura 1. 7. Una mscara de 3x3 con coeficientes arbitrarios. ......................... 25 Figura 1. 8. Esquema simblico del proceso de segmentacin........................ 27 Figura 1. 9. Mascara general de 3x3. ............................................................... 28 Figura 1. 10. Mascara para detectar diferentes puntos aislados en un fondo constante. ......................................................................................................... 29 Figura 1. 11. Mascaras de lnea. ...................................................................... 30 Figura 1. 12. Deteccin de bordes por operadores de derivacin: (a) Banda clara sobre fondo oscuro y (b) Banda oscura sobre fondo claro. ..................... 32 Figura 1. 13. Trama de la herramienta relativa a la base. ................................ 34 Figura 1. 14. Parmetros D-H para un eslabn giratorio. ................................. 38 Figura 1.15. Robot cilndrico............................................................................ 40 Figura 1. 16. Cinemtica inversa. ..................................................................... 43 Figura 1. 17. Consideraciones de codo arriba y codo abajo. ........................... 44 Figura 1. 18. Robot polar de 3 grados de libertad. ........................................... 45 Figura 1. 19. Asignacin de sistemas de referencia del robot polar de la figura 1.18 .................................................................................................................. 46 Figura 1. 20. Cinemtica del robot IRB400 cuya inversa se puede desacoplar. ......................................................................................................................... 50

iv

Instituto Tecnolgico de Tijuana

ndice De Figuras

Figura 2. 1. Brazo robtico Lynx6. .................................................................... 53 Figura 2. 2. Servomotor HITEC HS-475HB. ..................................................... 54 Figura 2. 3. Servomotor HITEC HS-85BB. ....................................................... 55 Figura 2. 4. Movimiento de la base. ................................................................. 56 Figura 2. 5. Base del brazo robtico ................................................................. 56 Figura 2. 6. Brazo del robot. ............................................................................. 57 Figura 2. 7. Antebrazo. ..................................................................................... 57 Figura 2. 8. Pinza. ............................................................................................ 57 Figura 2. 9. Diagrama conceptual del diagrama de flujo del programa ............ 59 Figura 2. 10. NI smart camera .......................................................................... 60 Figura 2. 11. rea de trabajo. a) Vista general, b) rea de escena.................. 61 Figura 2. 12. Diagrama de flujo programa de reconocimiento de imgenes. ... 62 Figura 2. 13. Seleccin de tipo de comunicacin de la Smart Camera con la PC. ......................................................................................................................... 63 Figura 2. 14. Seleccin de la Smart Camera. ................................................... 63 Figura 2. 15. Funciones de procesamiento. ..................................................... 64 Figura 2. 16. Creacin de la muestra. .............................................................. 65 Figura 2. 17. Muestras de las figura utilizadas. a) Cuadrado, b) Triangulo, c) Circulo. ............................................................................................................. 65 Figura 2. 18. Opcin Search for Rotated Patterns ............................................ 66 Figura 2. 19. Opcin para encontrar el centro de masa del objeto. .................. 67 Figura 2. 20. Instrumento Virtual para el reconocimiento de figuras. ............... 68 Figura 2. 21. Brazo Lynx6 ................................................................................ 68 Figura 2. 22. Determinacin del ngulo de la base. ......................................... 69 Figura 2. 23. Implementacin de la cinemtica inversa en LabVIEW. .............. 70 v

Instituto Tecnolgico de Tijuana

ndice De Figuras

Figura 2. 24. VI el clculo de la cinemtica inversa.......................................... 71 Figura 2. 25. Configuracin puerto serial ......................................................... 72 Figura 2. 26. Diagrama a bloques del programa de envi por el puerto serial. 72 Figura 2. 27. Desagregar el cluster por nombre............................................. 73 Figura 2. 28. Funcin in range and coerce. ...................................................... 74 Figura 2. 29. Formato de la cadena de entrada. .............................................. 74 Figura 2. 30. VI para la comunicacin serial..................................................... 75 Figura 2. 31. Diagrama de flujo del programa para el control del brazo robtico. ......................................................................................................................... 76 Figura 2. 32. Diagrama a bloques del programa de control del brazo (primer paso). ............................................................................................................... 76 Figura 2. 33. Programa para el control automtico del brazo (clculo de la cinemtica). ...................................................................................................... 77 Figura 2. 34. Programa para el control automtico del brazo (envi de datos por el puerto serie). ................................................................................................ 78 Figura 2. 35. Programa para el control automtico del brazo (espera). ........... 78 Figura 2. 36. Programa para el control automtico del brazo (cierre pinza). .... 79 Figura 2. 37. Programa para el control automtico del brazo (coordenadas finales). ............................................................................................................. 79 Figura 3. 1. Panel frontal del vi de reconocimiento visual. ............................... 80 Figura 3. 2. Panel frontal del vi de control del brazo. ....................................... 81

vi

Instituto Tecnolgico de Tijuana

ndice De Tablas

ndice De TablasTabla 1. Parmetros D-H para el robot. ........................................................... 39 Tabla 2. parmetros D-H del robot de la figura 1.19 ........................................ 46 Tabla 3. Parmetros D-H de la figura 1.20 ....................................................... 50

vii

Instituto Tecnolgico de Tijuana

Introduccin

Introduccin.En este captulo, se presenta una breve introduccin sobre la visin artificial por computadora y la robtica. Para as poder proveer un panorama general para la comprensin del proyecto.

Visin Por Computadora.La visin artificial o visin por computadora (del ingls "machine visin") es una ciencia compuesta por dos disciplinas. Por una parte, la disciplina cientfica se interesa en los fundamentos tericos detrs de los sistemas de visin artificial que extraen informacin de las imgenes. Esta informacin puede tomar varias formas, como son secuencias de video, datos multidimensionales provenientes de aparatos mdicos, o vistas de arreglos de cmaras mltiples. Por otra parte, la disciplina tecnolgica se interesa en formas de aplicar las teoras y modelos para la construccin de sistemas de visin artificial, y utilizarlos en aplicaciones como control de procesos (robots industriales o vehculos autnomos), deteccin de eventos (seguridad y vigilancia), organizacin de informacin (imgenes en bases de datos), modelado de objetos o ambientes (inspeccin industrial, modelado topogrfico, anlisis de imgenes medicas), e interaccin (dispositivo de entrada en un sistema de interaccin computadora-humano). La visin artificial se relaciona con muchas otras ramas de la ciencia debido a la gran cantidad de elementos que componen los sistemas. Se utilizan las matemticas (estadstica y geometra), fsica (ptica), electrnica (cmaras, sensores, dispositivos de estado slido), ciencias computacionales

(procesamiento digital de seales, algoritmos y inteligencia artificial) y control (robtica).

Robtica.De acuerdo con el Instituto de robtica de Amrica un robot es: un manipulador programable herramientas, multifuncional o dispositivos diseado para mover a travs material, de piezas,

especializados

trayectorias viii

Instituto Tecnolgico de Tijuana

Introduccin

predefinidas para la ejecucin de diversas de tareas. Desde sus inicios, a fines del siglo XIX, hasta nuestros das el inters por la robtica ha ido en aumento, esto se debe a la idea de poder desarrollar una mquina que reproduzca las habilidades del ser humano.

Robot.El trmino procede de la palabra checa robota, que significa 'trabajo obligatorio'; fue empleado por primera vez en la obra teatral R.U.R. (Robots Universales de Rossum), estrenada en Enero de 1921 en Praga por el novelista y dramaturgo checo teatros por toda Europa y Estados Unidos. En ella, el gerente de una fbrica construa unos seres al absoluto servicio del hombre, que realizaban todas las tareas mientras los humanos se dedicaban al ocio permanente. Cuando el gerente de la fbrica decide construir robots ms perfectos que experimentaran felicidad y dolor, todo cambia. Los robots se sublevan contra los hombres y destruyen al gnero humano.

ix

Instituto Tecnolgico de Tijuana

Planteamiento Del Problema

Planteamiento Del ProblemaActualmente, se tiene un sistema mediante el cual un brazo robtico se puede posicionar sobre un objeto, mediante el reconocimiento de patrones, este sistema consta de una cmara NI 1742, una computadora y un brazo robtico Lynx6, pero este sistema es muy grande y solamente su puede usar en lugares fijos, la finalidad de este proyecto consiste en implementar el sistema actual en una cmara embebida (embeded), para reducir el tamao y poderse montar en un vehculo autnomo.

x

Instituto Tecnolgico de Tijuana

Objetivo General

Objetivo General.Controlar un brazo robot de seis grados de libertad mediante el Desarrollo e Implementacin de algoritmos de visin para reconocimiento de objetos slidos en el sistema SmartCamera de National Instruments, y el desarrollo algoritmos de la cinemtica inversa para control de un brazo robtico Lynx6.

Objetivos Especficos. Implementar algoritmos de visin en el sistema Smart Camera de National Instruments. Desarrollar algoritmos de reconocimiento de patrones en el software LabView de National Instruments. Implementar las ecuaciones de cinemtica inversa, en el sistema Smart Camera, para controlar el brazo robtico. Acoplar el sistema de visin al control del brazo robtico. Probar el funcionamiento correcto del sistema de visin y el control del brazo robtico.

xi

Instituto Tecnolgico de Tijuana

Justificacin

Justificacin.Con el desarrollo de este proyecto se contar con un programa de control para un brazo robot a travs de algoritmos de visin desarrollados en LabVIEW, e implementados en el sistema Smart Camera, el cual nos dar soporte para desarrollar investigacin en el rea de procesamiento digital de datos y en el rea de robtica de la carrera de Ingeniera en Electrnica de la Institucin. En la actualidad algunas tareas que realizan los humanos son cada vez ms complejas y peligrosas, y el utilizar brazos robot facilita el trabajo, ya que puede tener una mayor precisin y ms velocidad que el humano. Al trmino de este proyecto los estudiantes de la carrera de ingeniera electrnica del Instituto Tecnolgico de Tijuana, contaran con una base sobre la cual proponer y desarrollar futuras aplicaciones, del brazo robot Linx6. Con estos sistemas robticos, se mejoran las habilidades de los alumnos en muchas reas como: la programacin, la electrnica, la mecnica, el control y la mecatrnica. Este brazo robot controlado por visin tiene una infinidad de aplicaciones dentro de las reas industriales, cientficas y con esto se brinda mayor preparacin a los estudiantes del Instituto, y la aportacin que brinda el alumno a la sociedad tendrn mayor impacto beneficiando en la industria y la educacin.

xii

Instituto Tecnolgico de Tijuana

Delimitacin

Delimitacin.A continuacin se establecen los puntos que deber cumplir el proyecto, y de igual manera se mencionan las limitaciones del mismo.

Alcances. Detectar y ubicar un objeto ubicado en un plano XY Posicionar un brazo robtico en el centro de rea del objeto . Clasificar el objeto.

Limitaciones. Solamente se utilizaran figuras geomtricas solidas en un plano bidimensional, para el desarrollo de algoritmos de visin y cinemtica inversa.

xiii

Instituto Tecnolgico de Tijuana

Marco Terico

CAPITULO I. MARCO TEORICO.En esta seccin se definen los conceptos necesarios para comprender elfuncionamiento de un manipulador robtico y sobre el procesamiento de imgenes.

1.1.

Imgenes.

Imagen se refiere a una funcin bidimensional de luz e intensidad, que se puede indicar por f(x,y), donde el valor de f en las coordenadas espaciales (x,y) da la intensidad (iluminacin) de la imagen en este punto. Dado que la luz es una forma de energa, f(x,y) debe ser mayor que cero y finita: (1.1) Las imgenes que se perciben cotidianamente provienen de la luz reflejada por los objetos. La naturaleza de la funcin f(x,y) puede estar caracterizada por dos componentes: 1) la cantidad de luz incidente procedente de la fuente sobre la escena contemplada y 2) la cantidad de luz reflejada por los objetos en la escena. Esos dos componentes reciben el nombre de componentes de iluminacin y reflectancia y se indican por i(x,y) y r(x,y) respectivamente. i(x,y) y r(x,y) se combinan para dar como producto f(x,y):

(1.2) Donde (1.3)y

(1.4)

La ecuacin (1.4) indica que la reflectancia est acotada entre 0, que representa absorcin total, y 1, reflexin total. La naturaleza de i(x,y) est determinada par la fuente de luz y r(x,y) est determinada por las caractersticas de los objetos de la escena. 14

Instituto Tecnolgico de Tijuana

Marco Terico

A la intensidad de una imagen monocromtica f en las coordenadas (x,y) se le denomina nivel de gris (l) de la imagen. Las ecuaciones (1.2) y (1.4) muestran que la l esta en el rango. (1.5) El nico requisito sobre Lmines que sea positiva, y sobre Lmax que sea finita. En la prctica, Lmin = imin*rmin y Lmax = imax*rmax. Utilizando como gua los valores precedentes de iluminacin y reflectancia, se pueden esperar unos valores Lmin 0.005 y 100 para aplicaciones de procesamiento de imgenes de interior. Al intervalo [Lmin, Lmax] se le denomina escala de grises. Una prctica habitual consiste en desplazar numricamente este intervalo hasta el intervalo [0,L], donde en la escala l = 0 se considera como negro y l = L se considera como blanco. Los valores intermedios son tonos de gris que varan de forma continua entre negro y blanco.

1.1.1. Muestreo Y Cuantificacin. Para que una imagen pueda ser procesada por medio de computadora, su funcin f(x,y) se debe digitalizar espacialmente y en amplitud. El proceso de digitalizacin de las coordenadas espaciales (x,y), se denomina muestreo de la imagen, y la digitalizacin de la amplitud se denomina cuantificacin del nivel de gris. Se supone que una imagen continua f(x,y) se describe de forma aproximada por una serie de muestras igualmente espaciadas, organizadas en forma de una matriz N x M, como indica la ecuacin (1.6), donde cada elemento de la matriz es una cantidad discreta:

(1.6)

15

Instituto Tecnolgico de Tijuana

Marco Terico

La matriz N x M representa una imagen digital, y cada elemento de la matriz se denomina elemento de la imagen, o pixel (del ingls picture element). Para representar el muestreo de manera ms formal, se representan los conjuntos de nmeros enteros y reales con Z y R respetivamente. El proceso de muestreo puede interpretarse como una particin en una cuadricula en el plano xy, siendo las coordenadas del centro de cada elemento de la cuadricula un par de elementos del producto cartesiano Z x Z, o Z2, que representa el conjunto de todos los pares ordenados de elementos (a,b), siendo a y b nmeros enteros pertenecientes a Z. Por lo tanto f(x,y) representa una imagen digital si (x,y) son enteros de Z x Z y f es una funcin que asigna un nivel de gris (un numero real del conjunto de nmeros reales R) a cada par de coordenadas (x,y) distinto. Esta asignacin es el proceso de cuantificacin mencionado anteriormente. Si los niveles de gris son tambin nmeros enteros (como es el caso aqu), Z reemplaza a R y una imagen digital se convierte en una funcin bidimensional (2D) cuyas coordenadas y valores de amplitud son nmeros enteros. El proceso de digitalizacin necesita decisiones sobre los valores para N, M y el nmero de niveles de gris permitidos para cada pixel. En el procesamiento digital de imgenes, estas cantidades son potencias enteras de 2: (1.7) y (1.8) Donde G indica el nmero de niveles de gris. Utilizando las ecuaciones (1.7) y (1.8) se obtiene el nmero de bits necesarios para almacenar una imagen digitalizada (b): (1.9) Por ejemplo, una imagen de 256 x 256 puntos con 64 niveles die gris necesita 393,216 bits de memoria, ya que se requieren 6 bits para representar los 64 niveles de gris: 16

Instituto Tecnolgico de Tijuana

Marco Terico

Teniendo en mente este procedimiento, se tiene que tomar una decisin en cuanto al muestreo y numero de niveles de gris necesarios para una buena aproximacin de la imagen original. Estos dos parmetros dan la resolucin de una imagen, es decir, el grado de detalle discernible. Al incrementar el muestreo y el nmero de niveles de gris, se aproxima ms a la imagen original, pero como indica la ecuacin (1.9), las necesidades de almacenamiento y procesamiento aumentan en funcin de N, M y m. Considerando el efecto que tienen sobre la calidad de una imagen la variacin de los parmetros N, M y m, es difcil definir que es una buena imagen, ya que la calidad de la misma no es solo subjetiva, sino que tambin depende de las necesidades de una aplicacin determinada. Para demostrar de manera general como se degrada una imagen digital conforme se disminuye la resolucin espacial y la cuantificacin de los niveles de grises, se muestra en la Figura 1.1, una seccin cuadrada de la imagen de un vehculo areo no tripulado, en escala de grises de 256 niveles y en resoluciones de N = 500, 256, 128 y 64. En las imgenes de menor resolucin se han replicado los pixeles para mantener el tamao equivalente a la imagen original de N = 500, esto produce un resultado similar a un tablero de ajedrez. Si se comparan las imgenes de 500 pixeles y 256 pixeles, se nota que es difcil diferenciarlas, solo con observacin cuidadosa se logra apreciar una disminucin de nitidez en la imagen de 256 pixeles. Pero al ampliar las imgenes de 128 y 64 pixeles para mantenerlas de igual tamao que la original, fcilmente se aprecia el patrn de tablero de ajedrez en ambas, obviamente el efecto es ms pronunciado en la imagen de 64 pixeles.

17

Instituto Tecnolgico de Tijuana

Marco Terico

Figura 1. 1. Reduccin de la resolucin espacial

La Figura 1.2, presenta la misma imagen original de 500 pixeles, pero ahora mostrando el efecto de reducir el nmero de bits empleados para representar el numero niveles de gris (m), mostrando 256 niveles, 32 niveles, 4 niveles y 2 niveles. Las imgenes de 256 y 32 niveles aparentan ser iguales debido a la baja complejidad de la imagen. Las imgenes de 4 y 2 niveles de gris muestran un efecto conocido como falso contorno, producido al representar reas de la imagen donde existan niveles de gris suaves con un nmero insuficiente de niveles de gris. En imgenes ms complejas, este efecto se manifiesta desde los 16 niveles de gris. Una imagen con dos niveles de gris se puede considerar como binaria siempre y cuando los dos niveles sean blanco y negro.

18

Instituto Tecnolgico de Tijuana

Marco Terico

Figura 1. 2. Reduccin de niveles de grises.

1.2. Procesamiento y Anlisis De Imgenes. Previo al anlisis automtico de una imagen digital en un sistema de visin artificial, es conveniente aplicar varias operaciones orientadas a mejorar su calidad, en una secuencia como la que se muestra en la Figura 1.3.

Figura 1. 3. Etapa de anlisis automtico de una escena

19

Instituto Tecnolgico de Tijuana

Marco Terico

Entre las operaciones que se pueden realizar en la fase de preprocesamiento destacan las cuatro siguientes: conversin de los niveles de gris,

transformaciones geomtricas, transformacin del histograma y los filtrados espacial y frecuencial.

1.2.1. Conversin De Los Niveles De Grises. Una transformacin adecuada de los niveles de gris puede mejorar la calidad de una imagen cuando esta es observada por un sujeto humano. Esas tcnicas se desarrollan empleando teoras de psicologa visual humana y modelos de los dispositivos fsicos de adquisicin y presentacin de imgenes. Su aplicacin se ha dirigido hasta ahora hacia el rea del procesamiento con observador humano y aunque es evidente que tiene influencia en las fases de interpretacin automtica, se ha estudiado poco esta problemtica.

1.2.2. Transformaciones Geomtricas. Tienen dos objetivos bsicos: correccin de la perspectiva y reconstruccin tridimensional de los objetos de una escena.

1.2.3. Transformacin Del Histograma. En la Figura 1.4, se muestra una imagen y su correspondiente histograma. En el eje de las abscisas se representan los niveles de gris y en el de ordenadas, el nmero de pixeles de cada nivel. En ciertas escenas, como las que comnmente aparecen en entornos industriales, el histograma puede ser suficiente para separar los objetos dentro de una imagen, con lo que se facilita considerablemente la etapa de interpretacin. Sin embargo, no siempre es factible depender tanto del histograma. En muchas aplicaciones, su manipulacin solo permite aumentar o disminuir el contraste

20

Instituto Tecnolgico de Tijuana

Marco Terico

de la imagen y el margen dinmico de los niveles de gris. Sus efectos son evidentes para un observador humano.

Figura 1. 4. Imagen digital y su histograma correspondiente.

1.3. Transformaciones Bsicas. Las siguientes transformaciones estn expresadas en un sistema de coordenadas cartesiano tridimensional, en el que las coordenadas de un punto se representan por (X,Y,Z).

1.3.1. Traslacin. Para trasladar un punto de coordenadas (X,Y,Z) a un nuevo emplazamiento, se emplean desplazamientos (X0,Y0,Z0). La traslacin se realiza empleando las ecuaciones: (1.10) Donde (X*,Y*,Z*) son las coordenadas del nuevo punto. La ecuacin (1.10) puede expresarse en forma matricial como: [ ] [ ]* +

(1.11)

Frecuentemente resulta provechoso concatenar varias transformaciones para producir un resultado compuesto, como una traslacin seguida de un cambio 21

Instituto Tecnolgico de Tijuana

Marco Terico

de escala y finalmente una rotacin. El empleo de matrices cuadradas simplifica considerablemente la notacin necesaria para representar este proceso. Considerando esto, la ecuacin (1.11) se puede escribir como:

*

+

[

]* +

(1.12)

En trminos de los valores de X*, Y*, Z, las ecuaciones (1.11) y (1.12) son equivalentes.

1.3.2. Cambio De Escala. El cambio de escala empleando los factores Sx, Syy Sz a lo largo de los ejes X, Y y Z, viene dado por la matriz de transformacin:

[

]

(1.13)

1.3.3. Rotacin. La forma ms simple de esta transformacin es la rotacin de un punto sobre un eje de coordenadas. Para girar un punto alrededor de otro punto arbitrario des espacio se requieren tres transformaciones: la primera traslada ese punto arbitrario hasta el origen, la segunda realiza la rotacin y la tercera traslada este punto de nuevo a su posicin original. Con respecto a la Figura 1.7, la rotacin d un punto un ngulo alrededor del eje de coordenadas Z se logra empleando la transformacin:

*

+

(1.14)

El ngulo de rotacin se mide en el sentido de las manecillas del reloj cuando se mira al origen desde un punto sobre el eje +Z. Esta transformacin afecta nicamente a los valores de las coordenadas X e Y.

22

Instituto Tecnolgico de Tijuana

Marco Terico

La rotacin de un punto sobre el eje X con un ngulo se realiza empleando la transformacin:

*

+

(1.15)

Finalmente, la rotacin de un punto, un ngulo , alrededor del eje Y se consigue mediante la transformacin:

[

]

(1.16)

Figura 1. 5. Rotacin de un punto sobre cada uno de los ejes coordenados.

1.4. Filtrado De Imgenes. El empleo de mascaras espaciales para el procesamiento de las imgenes se denomina frecuentemente filtrado espacial, y las propias mascaras se denominan filtros espaciales. Existen filtros espaciales lineales y no lineales para la mejora de imgenes. Los filtros lineales se basan en los conceptos de mejoras por procesamiento de punto, que afirman que la funcin de de transferencia y el impulso o funcin de distribucin puntual de un sistema lineal son transformadas de Fourier inversas una de otra. Los filtros denominados de paso bajo atenan o eliminan las componentes de alta frecuencia en el dominio de Fourier a la vez que dejan inalteradas las bajas frecuencias. Las componentes de alta frecuencia 23

Instituto Tecnolgico de Tijuana

Marco Terico

caracterizan los bordes y los restantes detalles muy marcados en la imagen, y por ello el efecto de introducir un filtrado de paso bajo es el de hacer mas borrosa la imagen. De forma similar, los filtros de paso alto atenan o eliminan las componentes de baja frecuencia. Como estas componentes son responsables de las caractersticas lentamente variables de la imagen, como el contraste global y la intensidad media, el resultado neto de un filtrado de paso alto es la reduccin de estas caractersticas y, en correspondencia, una aparente agudizacin de los bordes y de los restantes detalles finos. Un tercer tipo de filtrado, denominado filtro de paso banda, elimina unas regiones elegidas de frecuencias intermedias.

Figura 1. 6. Respuestas en el dominio de las frecuencias (parte superior) y en dominio espacial (parte inferior).

La Figura 1.6, muestra las respuestas de los filtros paso bajo, paso alto y paso banda con simetra circular, en el dominio de frecuencias y sus

correspondientes filtros espaciales. Los perfiles de la fila inferior pueden ser empleados como indicacin para especificar los filtros espaciales lineales. Sin embargo, con independencia del tipo de filtro lineal empleado, la aproximacin bsica consiste en sumar productos entre los coeficientes de la mscara y las intensidades de los pixeles bajo la mscara en un punto determinado de la imagen. La Figura 1.7, muestra una mscara 3 x 3 general. Denominando a los niveles de gris de los pixeles bajo la mscara en un punto determinado por z1,

z2, , z9, la respuesta de una mscara lineal es:24

Instituto Tecnolgico de Tijuana

Marco Terico

(1.17)

w1 w4 w7

w2 w5 w8

w3 w6 w9

Figura 1. 7. Una mscara de 3x3 con coeficientes arbitrarios.

Si el centro de la mscara se encuentra en un punto (x,y) de la imagen, el nivel de gris del pixel situado en (x,y) se reemplaza por R. Luego se mueve la mscara hasta el emplazamiento del siguiente pixel de la imagen y se repite el proceso. Se contina as hasta que se han cubierto todos los pixeles de la imagen. El valor de R se calcula empleando entornos parciales para los pixeles que estn colocados en los bordes de la imagen. Los filtros espaciales no lineales operan tambin en entornos. Sin embargo, en general su operacin se basa directamente en los valores de los pixeles en el entorno en consideracin y no emplean explcitamente los coeficientes de la forma descrita en la ecuacin (1.17). La reduccin del ruido se puede realizar eficazmente con un filtro no lineal cuya funcin bsica sea la de calcular el valor medio del nivel de gris en el entorno en el que se coloca el filtro. Otros ejemplos incluyen el filtro de mximo, que se emplea para buscar los puntos ms brillantes de una imagen, y el filtro de mnimo, que se emplea con el objetivo contrario.

1.4.1. Filtros Suavizantes. Los filtros suavizantes se emplean para hacer que la imagen aparezca algo borrosa y tambin para reducir el ruido. Es til que la imagen aparezca algo borrosa en algunas etapas del preprocesado, como la eliminacin de los pequeos detalles de una imagen antes de la extraccin de un objeto, y el relleno de pequeos espacios entre lneas o curvas. 25

Instituto Tecnolgico de Tijuana

Marco Terico

La forma de la respuesta de un impulso necesaria para implementar un filtro espacial de paso bajo o suavizante indica que el filtro ha de tener todos sus coeficientes positivos, como se muestra en la Figura 1.7(a). Aunque la forma del filtro espacial de la Figura 1.7(a), pueda ser descrita por una funcin gaussiana predeterminada, el requisito clave es que todos los coeficientes sean positivos. Para un filtro espacial 3 x 3, la construccin ms simple consistira en una mscara en la que todos los coeficientes fuesen iguales a 1.

1.4.2. Filtros de Realce de Imagen. El objetivo del realce es destacar los detalles finos de una imagen o intensificar detalles que han sido difuminados, ya sea por error o por defecto natural del mtodo de adquisicin de la imagen. Las utilidades del realce de las imgenes son variadas e incluyen aplicaciones que van desde la impresin electrnica y las imgenes medicas hasta las inspecciones industriales e incluso la deteccin autnoma de objetivos en las armas inteligentes. El perfil de la respuesta a un impulso necesaria para implementar un filtro espacial de paso alto o realce indica que el filtro debe tener coeficientes positivos cerca de su centro y coeficientes negativos en la periferia. Para una mscara 3 x 3 esta condicin se cumple escogiendo un valor positivo en el centro y tomando coeficientes negativos en el resto.

1.5. Segmentacin de Imagen. La segmentacin es la etapa crucial en cualquier sistema de visin artificial, por las dificultades que conlleva y por la importancia de sus resultados. Segmentar una imagen digital significa dividirla en zonas disjuntas e individualizadas. En cierta manera, equivale a su reconocimiento, dado que como consecuencia de la segmentacin los diferentes objetos se encuentran perfectamente ubicados dentro de la imagen digital. De manera grafica, en la Figura 1.8, se ha representado el proceso de la segmentacin en una imagen simple. Se aprecia en la figura que en virtud de la 26

Instituto Tecnolgico de Tijuana

Marco Terico

segmentacin se ha pasado de una imagen digital bruta, con toda su informacin realizada en forma de los niveles de intensidad luminosa de sus N x N pixeles, a una nueva imagen mucho mas simplificada, donde estn claramente distinguidos entre si los diferentes objetos existentes. En el sentido general y abstracto, la segmentacin podra verse como una operacin de mapeo entre la imagen I(x,y); x,y = 0, 1, N 1 bajo estudio y una nueva imagen abstracta formada por los objetos presentes, etiquetados

individualmente y con sus coordenadas perfectamente delimitadas.

Figura 1. 8. Esquema simblico del proceso de segmentacin.

Una vez segmentada la imagen se puede formar una lista de objetos (especficamente, regiones o zonas individualizadas) sin ms que agrupar todos los pixeles que posean la misma etiqueta y, al mismo tiempo, que estn conectados espacialmente. A partir de esta lista de objetos o regiones etiquetados, el siguiente paso es su clasificacin o reconocimiento automtico, para lo cual se extraern rasgos o caractersticas discriminantes. La segmentacin de imgenes digitales es crucial y extremadamente delicada, dada la enorme dificultad en conseguir mediante tcnicas automticas el aislamiento de los diferentes objetos que puedan hallarse presentes en una imagen. Las tcnicas de segmentacin descritas en las siguientes secciones son prcticamente las nicas disponibles en la actualidad que funcionan aceptablemente, y no pueden aplicarse con xito ms que a escenas no complejas. Por escenas no complejas se entienden aquellas que a) no posean objetos solapados y, b) que sus objetos tengan niveles de intensidad uniformes o cuasi uniformes. La condicin de que no exista solape de objetos se adopta 27

Instituto Tecnolgico de Tijuana

Marco Terico

para poder aplicar las tcnicas de reconocimiento automtico de formas, que obligan a disponer del contorno de un objeto, la otra restriccin se justifica para evitar el tratamiento de las texturas.

1.5.1. Deteccin De Discontinuidades. Existen varias tcnicas para la deteccin de los tres tipos bsicos de discontinuidades de una imagen digital: puntos, lneas, y bordes. En la prctica, la forma ms comn de ver las discontinuidades es pasar una mscara a travs de la imagen. Para una mscara de 3 x 3 como la que se muestra en la Figura 1.9, este procedimiento implica calcular la suma de los productos de los coeficientes por los niveles de gris contenidos en la regin encerrada por la mscara.w1 w4 w7 w2 w5 w8 w3 w6 w9

Figura 1. 9. Mascara general de 3x3.

Esto es, la respuesta de la mscara en un punto cualquiera de la imagen es: (1.18)

Donde zi es el nivel de gris asociado con el coeficiente de la mascara wi. Como habitualmente, la respuesta de la mscara est definida con respecto a la posicin de su centro. Cuando la mscara est centrada en un pixel del lmite, la respuesta se calcula utilizando el entorno parcial apropiado.

1.5.2. Deteccin De Puntos. La deteccin de puntos aislados de una imagen es directa. Utilizando la mscara que se muestra en la Figura 1.9, se sabe que se ha detectado un punto en la posicin en la que est centrada la mscara si (1.19) 28

Instituto Tecnolgico de Tijuana

Marco Terico

Donde T en un umbral no negativo, y z esta dado por la ecuacin (1.18). Bsicamente, todo lo que hace esta formulacin es medir las diferencias ponderadas entre el punto central y sus vecinos. La mscara de la Figura 1.10, es la misma que la utilizada para el filtrado de la alta frecuencia espacial. Sin embargo, aqu se hace hincapi estrictamente en la deteccin de puntos. Esto es, solamente son de inters las diferencias lo suficientemente grandes (como las determinadas por T) para que se consideren puntos aislados de una imagen.

-1 -1 -1

-1 8 -1

-1 -1 -1

Figura 1. 10. Mascara para detectar diferentes puntos aislados en un fondo constante.

1.5.3. Deteccin De Lneas. El siguiente nivel de complejidad implica la deteccin de lneas en una imagen. Considrese las mscaras que se muestran en la Figura 1.11. Si la primera mascara se trasladara por toda una imagen, podra responder con ms fuerza a lneas (un pixel continuo) orientadas horizontalmente. Con un fondo constante, la respuesta mxima resultara cuando la lnea pase por la fila central de la mscara. Esto se comprueba fcilmente esbozando una matriz de 1, con una lnea de nivel de gris diferente (por ejemplo, 5) recorriendo horizontalmente la matriz. Un experimento similar podra revelar que la segunda mascara de la Figura 1.11, responde mejor a lneas orientadas a 45; la tercera a las lneas verticales y la cuarta a las lneas en direccin de -45. Estas direcciones pueden tambin establecerse al observar que la direccin preferida de cada mascara esta ponderada con un coeficiente mayor (en este caso, 2) que las otras direcciones posibles.

29

Instituto Tecnolgico de Tijuana

Marco Terico

Sean R1, R2, R3y R4 las respuestas de las mascaras de la Figura 1.13, de izquierda a derecha, donde los R estn dados por la ecuacin (1.18). Supngase que todas las mascaras pasan sobre una imagen. Si en un cierto punto de la imagen |Ri| > |Rj|, para todo j i, este punto ser el que tenga la mayor probabilidad de estar asociado con una lnea en la direccin de la mscara i. Por ejemplo, si en un punto de la imagen, |Ri| > |Rj|, para j = 2, 3, 4, este punto en particular ser el que tenga la mayor probabilidad de estar asociado con una lnea horizontal.

-1 2 -1

-1 2 -1

-1 2 -1

-1 -1 2

-1 2 -1

2 -1 -1

-1 -1 -1

2 2 2

-1 -1 -1

2 -1 -1

-1 2 -1

-1 -1 2

Figura 1. 11. Mascaras de lnea.

1.5.4. Deteccin De Bordes. La deteccin de bordes es el mtodo ms comn para detectar

discontinuidades significativas en el nivel de gris. La razn es que los puntos aislados y las lneas delgadas no son de frecuente aparicin en la mayor parte de las aplicaciones prcticas. Un borde es la frontera entre dos regiones con propiedades de nivel de gris relativamente distintas, En la siguiente presentacin se supone que las regiones en cuestin son lo suficientemente homogneas para que la transicin entre dos de ellas se pueda determinar sobre la base de las discontinuidades de nivel de gris solamente. Cuando esta suposicin no es vlida, las tcnicas de niveles de umbral son normalmente de mayor aplicacin que la de deteccin de bordes. Bsicamente la idea que subyace en la mayor parte de las tcnicas de deteccin de bordes es el clculo de un operador local de derivacin. La

Figura 1.12, ilustra este concepto. La Figura 1.12(a), muestra una imagen de 30

Instituto Tecnolgico de Tijuana

Marco Terico

una banda clara sobre un fondo oscuro, el perfil del nivel de gris a lo largo de una lnea de exploracin horizontal de la imagen, y en la primera y segunda derivadas del perfil. Se observa en el perfil que un borde (la transicin del oscuro al claro) esta modelado como un cambio suave, no brusco, del nivel de gris. Este modelo refleja el hecho de que los bordes de las imgenes digitales estn, en general, ligeramente emborronados a causa del muestreado. La Figura 1.12(a), muestra que la primera derivada del perfil de nivel de gris es positiva en el borde de entrada de la transicin, negativa en el borde de salida y, como esperado, ceno en las zonas de nivel de gris constante. La derivada segunda es positiva en la parte de la transicin asociada con el lado oscuro del borde, negativa en la parte de la transicin asociada con el lado claro y cero en las zonas de nivel de gris constante. Por lo tanto, el modulo de la derivada primera se puede utilizar para detectar la presencia de un borde en una imagen, y el signo de la derivada segunda se puede utilizar para determinar su in pixel borde est situado en el lado oscuro o claro del mismo. Se observa que la derivada segunda tiene un paso por cero en el punto medio de una transicin de nivel de gris. Los pasos por cero proporcionan un potente mtodo para localizar bordes en una imagen. Tambin se puede aplicar un argumento similar al anterior a un borde de cualquier orientacin de una imagen. Simplemente se define perfil

perpendicular a la direccin del borde de cualquier punto que se desee y se interpretan los resultados como en la explicacin anterior. La derivada primera en un punto de una imagen se obtiene utilizando el modulo de gradiente en ese punto, La derivada segunda se obtiene de forma similar utilizando el Laplaciano.

31

Instituto Tecnolgico de Tijuana

Marco Terico

Figura 1. 12. Deteccin de bordes por operadores de derivacin: (a) Banda clara sobre fondo oscuro y (b) Banda oscura sobre fondo claro.

1.6. Cinemtica Del Robot. La cinemtica del robot estudia el movimiento del mismo con respecto a un sistema de referencia. As, la cinemtica se interesa por la descripcin analtica del movimiento espacial del robot como una funcin del tiempo, y en particular por las relaciones entre la posicin y la orientacin del extremo final del robot con los valores que toman sus coordenadas articulares. Existen dos problemas fundamentales para resolver la cinemtica del robot, el primero de ellos se conoce como el problema cinemtico directo, y consiste en determinar cul es la posicin y orientacin del extremo final del robot, con respecto a un sistema de coordenadas que se toma como referencia, conocidos los valores de las articulaciones y los parmetros geomtricos de los elementos del robot, el segundo denominado problema cinemtico inverso resuelve la configuracin que debe adoptar el robot para una posicin y orientacin del extremo conocidas. 32

Instituto Tecnolgico de Tijuana

Marco Terico

Denavit y Hartenberg propusieron un mtodo sistemtico para descubrir y representar la geometra espacial de los elementos de una cadena cinemtica, y en particular de un robot, con respecto a un sistema de referencia fijo. Este mtodo utiliza una matriz de transformacin homognea para descubrir la relacin espacial entre dos elementos rgidos adyacentes, reducindose el problema cinemtico directo a encontrar una matriz de transformacin homognea 4 X 4 que relacione la localizacin espacial del robot con respecto al sistema de coordenadas de su base. El movimiento relativo en las articulaciones resulta en el movimiento de los elementos que posicionan la mano en una orientacin deseada. En la mayora de las aplicaciones de robtica, se est interesado en la descripcin espacial del efector final del manipulador con respecto a un sistema de coordenadas de referencia fija. La cinemtica del brazo del robot trata con el estudio analtico de la geometra del movimiento de un robot con respecto a un sistema de coordenadas de referencia fijo como una funcin del tiempo sin considerar las fuerzasmomentos que originan dicho movimiento.

1.6.1. Cinemtica Directa De Los Manipuladores. Se utiliza fundamentalmente el lgebra vectorial y matricial para representar y describir la localizacin de un objeto en el espacio tridimensional con respecto aun sistema de referencia fijo. Dado que un robot se puede considerar como una cadena cinemtica formada por objetos rgidos o eslabones unidos entre s mediante articulaciones, se puede establecer un sistema de referencia fijo situado en la base del robot y describir la localizacin de cada uno de los eslabones con respecto a dicho sistema de referencia. De esta forma, el problema cinemtico directo se reduce a encontrar una matriz homognea de transformacin T que relacione la posicin y orientacin del extremo del robot respecto del sistema de referencia fijo situado en la base del mismo. Esta matriz T ser funcin de las coordenadas articulares.

33

Instituto Tecnolgico de Tijuana

Marco Terico

Los manipuladores consisten de vnculos rgidos, los cuales estn conectados por articulaciones que permiten el movimiento de los vnculos adyacentes. Las articulaciones por lo general se dotan de sensores que permiten medir la posicin relativa de los vnculos adyacentes. Existen articulaciones angulares y prismticas y sus desplazamientos se denominan ngulos articulados y desplazamiento de articulacin respectivamente. El nmero de grados de libertad que posee un manipulador es el nmero de variables de posicin independientes que tendrn que especificarse para poder localizar todas las piezas del mecanismo. En el extremo libre de la cadena de vnculos que conforma el manipulador se encuentra el efector final. ste puede ser una pinza, un soplete de soldadura, un taladro o cualquier otro dispositivo. Por lo general se presenta la posicin del manipulador proporcionando una descripcin de la trama de la herramienta, la cual est unida al efector final, en relacin a la trama base que est unida a la base fija del manipulador, como se observa en la Figura 1.13. Un problema bsico en el estudio de la manipulacin mecnica se conoce como cinemtica directa, que es el problema geomtrico esttico de calcular la posicin y orientacin del efector final del manipulador. Dado un conjunto de ngulos articulares.

Figura 1. 13. Trama de la herramienta relativa a la base.

34

Instituto Tecnolgico de Tijuana

Marco Terico

1.6.2. Cinemtica Directa Mediante Matrices De Transformacin Homognea. La resolucin del problema cinemtica directo consiste en encontrar las relaciones que permiten conocer la localizacin espacial del extremo del robot a partir de los valores de sus coordenadas articulares. As, se han escogido coordenadas cartesianas y ngulos de Euler para representar la posicin y orientacin del extremo de un robot de seis grados de libertad, la solucin al problema cinemtica directo vendr dada por relaciones:

(1.20)

En general un robot de n grados de libertad est formado por n eslabones unidos por n articulaciones, de forma que cada par de articulacin- eslabn constituye un grado de libertad. A cada eslabn se le puede asociar un sistema de referencia solidario a l y, utilizado las transformaciones homogneas, es posible presentar las rotaciones y traslaciones relativas entre los distintos eslabones que componen el robot. Normalmente, la matriz de transformacin homognea que representa la posicin y orientacin relativa entre los sistemas asociados a dos eslabones consecutivos del robot se suele denominar matriz1 0 i-

Ai. As pues, A1describe la posicin y orientacin del sistema de referencia

solidario a la base, 1A2describe la posicin y orientacin del segundo eslabn 35

Instituto Tecnolgico de Tijuana

Marco Terico

respecto al primero, etc. Del mismo modo, denominado 0Aka las matrices resultantes de producto de las matricesi-1Aicon

i desde 1hasta k, se puede

representar de forma total o parcial la cadena cinemtica que forma el robot. As, por ejemplo, la posicin y orientacin del sistema solidario con el segundo eslabn del robot con respecto al sistema de coordenadas de la base se puede expresar mediante la matriz 0A2:0

A2=0A11A20

(1.21)

Cuando se consideran todos los grados de libertad, a la matriz An se le suele denominar T. as, dado un robot de 6 grados de libertad, se tiene que la posicin y orientacin del eslabn final vendr dada por la matriz T: T=0A6=0A11A22A33A44A55A6 (1.22)

Para describir la relacin que existe entre dos elementos contiguos se puede hacer uso de cualquier sistema de referencia ligado a cada elemento, la forma habitual que se suele utilizar en robtica es la representacin de DenavitHartenberg (D-H.). Denavit y Hartenberg propusieron en 1955 un mtodo matricial que permite establecer de manera sistemtica de coordenadas {Si} ligado a cada eslabn i de una cadena articulada, pudindose determinar las ecuaciones cinemticas de la cadena completa. Segn la representacin de D-H, escogiendo adecuadamente los sistemas de coordenadas asociados a cada eslabn ser posible pasar de uno al siguiente mediante 4 transformaciones bsicas que dependen exclusivamente de las caractersticas geomtricas del eslabn. Estas transformaciones bsicas consisten en una sucesin de rotaciones y traslaciones que permiten relacionar el sistema de referencia del elemento i con el sistema del elemento i-1. Las transformaciones en cuestin son las siguientes: 1. Rotacin alrededor del eje Zi-1 un ngulo i. 2. Traslacin a lo largo de Zi-1 una distancia di; Vector di (0, 0, di). 3. Traslacin a lo largo de xi una distancia ai; Vector ai (0, 0, ai). 4. Rotacin alrededor del eje xi un ngulo i. 36

Instituto Tecnolgico de Tijuana

Marco Terico

Dado que el producto de matrices no es conmutativo, las transformaciones se han de realizar en el orden indicado. De este modo se tiene que: Y realizando el producto entre matrices que la expresin general:

(1.24)

Donde i, ai, di, i son los parmetros D-H del eslabn i. De este modo, basta con identificar los parmetros i, ai, di, i para obtener las matrices A y relacionar as todos y cada uno de los eslabones del robot.

1.6.3. Algoritmo De Denavit Hartenberg. A continuacin se describen los pasos de la cinemtica directa segn el mtodo de Denavit Hartenberg. 1. Numerar los eslabones comenzando con 1 (primer eslabn mvil de la cadena) y acabando con n (ltimo eslabn mvil). Se numerara como eslabn 0 a la base fija del robot. 2. Numerar cada articulacin comenzando por 1(la correspondiente al primer grado de libertad) y acabando en n. 3. Localizar el eje de cada articulacin. Si esta es rotativa, el eje ser su propio eje de giro. Si es prismtica, ser el eje a lo largo del cual se produce el desplazamiento. 4. Para ide de 1 a n-1situar el eje zisobre el eje de la articulacin i=1. 5. Situar el origen del sistema de la base {S0}en cualquier punto del eje z0. Los ejes x0e y0se situaran de modo que formen un sistema dextrgiro con z0. 6. Para i de 1 a n-1, situar el sistema {Si} (solidario al eslabn i) en la interseccin del eje zi con la lnea normal comn a zi-1y zi. si ambos ejes se 37

Instituto Tecnolgico de Tijuana

Marco Terico

cortasen se situara {Si} en el punto de corte. Si fuesen paralelos {Si} se situara en la articulacin i+1. 7. Situar xi en la lnea normal comn a zi-1y zi. 8. Situar yi de modo que forme un sistema dextrgiro con xi y zi. 9. Situar el sistema {Sn} en el extremo del robot de modo que zn coincida con la direccin de zn-1y xn sea normal a zn-1y zn. 10. Obtener i como el ngulo que hay que girar en torno a zi-1para que xi-1y xi queden paralelos. 11. Obtener di como la distancia, medida a lo largo de zi-1, que habra que desplazar {Si-1} para que xi y xi-1queden alineados. 12. Obtener ai como la distancia medida a lo largo de xi(que ahora coincidira con xi-1) que habra que desplazar el nuevo {Si-1} coincide totalmente con {Si}. 13. Obtener i como el ngulo que habra de girar en torno a xi (que ahora coincidir con xi-1) para que el nuevo {Si-1}coincida totalmente con {Si}. 14. Obtener las matrices de transformacin A definidas en ecuacin 15. Obtener la matriz de transformacin que relaciona al sistema de la base con el extremo del robot T=0A1, 1A2 n-1An. 16. La matriz T define la orientacin (sub-matriz de rotacin) y posicin (submatriz de traslacin) del extremo referido a la base en funcin de las n coordenadas articulares.

Figura 1. 14. Parmetros D-H para un eslabn giratorio.

38

Instituto Tecnolgico de Tijuana

Marco Terico

Los cuatro parmetros de D-H (i, ai, di, i) dependen nicamente de las caractersticas geomtricas de cada eslabn y de las articulaciones que le unen con el anterior y siguiente. Como se representan en la figura 1.14; i, Es el ngulo que forman los ejes xi-1y xi medido en un plano perpendicular al eje zi-1, utilizando la regla de la mano derecha. Se trata de un parmetro variable en articulaciones giratorias. di, Es la distancia a lo largo del eje zi-1desde el origen del sistema de coordenadas (i-1)-simo hasta la interseccin del eje zi-1con el eje xi. Se trata de un parmetro variable en articulaciones prismticas. ai, Es la distancia a lo largo del eje xque va desde la interseccin del eje zcon el eje xhasta el origen del sistema i-simo, en el caso de las articulaciones giratorias. En el caso de las articulaciones prismticas, se calcula como la distancia ms corta entre los ejes Zi-1y Zi. i, Es el ngulo de separacin del eje Zi-1y el eje Zi, medido en un plano perpendicular al eje Xi, utilizando la regla de la mano derecha. Una vez obtenidos los parmetros DH como se ilustra en la tabla 1.1, el clculo de las relaciones entre los eslabones consecutivos del robot es inmediato, ya que vienen dadas por las matrices A, que se calcula segn la expresin general, ecuacin 1.15Articulacin 1 2 3 4 q1 d I1 a 0 0

90o d2 0 90o 0 q4 d3 0 I4 0 0 0

Tabla 1. Parmetros D-H para el robot.

Las relaciones entre eslabones no consecutivos vienen dadas por las matrices

T que se obtienen como producto de un conjunto de matrices A.39

Instituto Tecnolgico de Tijuana

Marco Terico

Obtenida la matriz T, esta expresara la orientacin (sub-matriz (3x3) de rotacin) y posicin (sub-matriz (3x1) de traslacin) del extremo del robot en funcin de sus coordenadas articulares, con lo que quedara resuelto el problema cinemtico directo. En la Figura 1.15, se ilustra un robot cilndrico utilizado como ejemplo para la solucin completa del modelo cinemtico directo.

Figura 1.15. Robot cilndrico.

Una vez obtenidos los parmetros D-H de cada articulacin, se calculan las matrices A.

(1.25)

As pues, se puede calcular la matriz T que indica la localizacin de la trama final con respecto al sistema de referencia en la base del robot.

(1.26)

40

Instituto Tecnolgico de Tijuana

Marco Terico

1.7. Cinemtica Inversa De Los Manipuladores. El objetivo del problema cinemtico inverso consiste en encontrar los valores que deben adoptar las coordenadas articulares del robot q=(q1, q2,..., qn)T para que su extremo se posicione y oriente segn una determinada localizacin espacial. As cmo es posible abordar el problema cinemtico directo de una manera sistemtica a partir de la utilizacin de matrices de transformacin homogneas, e independientemente de la configuracin del robot, no ocurre lo mismo con el problema cinemtico inverso, siendo el procedimiento de obtencin de las ecuaciones fuertemente dependiente de la configuracin del robot. Se han desarrollado algunos procedimientos genricos susceptibles de ser programados, de modo que un computador pueda, a partir del conocimiento de la cinemtica del robot (con sus parmetros de DH, por ejemplo) obtener la nupla de valores articulares que posicionan y orientan su extremo. El inconveniente de estos procedimientos es que se trata de mtodos numricos iterativos, cuya velocidad de convergencia e incluso su convergencia en si no est siempre garantizada. A la hora de resolver el problema cinemtico inverso es mucho ms adecuado encontrar una solucin cerrada. Esto es, encontrar una relacin matemtica explicita de la forma: (1.27) Donde: (grados de libertad)

Este tipo de solucin presenta las siguientes ventajas: 1. En muchas aplicaciones, el problema cinemtico inverso ha de resolverse en tiempo real. Una solucin de tipo iterativo no garantiza tener la solucin en el momento adecuado. 41

Instituto Tecnolgico de Tijuana

Marco Terico

2. Al contrario de lo que ocurra en el problema cinemtico directo, con cierta frecuencia la solucin del problema cinemtico inverso no es nica; existiendo diferentes n-uplas(q1,...,qn)T que posicionan y orientan el extremo del robot de mismo modo. En estos casos una solucin cerrada permite incluir determinadas reglas o restricciones que aseguren que la solucin obtenida sea la ms adecuada posible. No obstante, a pesar de las dificultades comentadas, la mayor parte de los robots poseen cinemticas relativamente simples que facilitan en cierta medida la resolucin de su problema cinemtico inverso. Ya que si se consideran solo los tres primeros grados de libertad de muchos robots, estos tienen una estructura planar, esto es, los tres primeros elementos quedan contenidos en un plano. Esta circunstancia facilita la resolucin del problema. Asimismo, en muchos robots se da la circunstancia de que los tres grados de libertad ltimos, dedicados fundamentalmente a orientar el extremo del robot, correspondan a giros sobre los ejes que se cortan en un punto.

1.7.1. Cinemtica Inversa Por Mtodos Geomtricos. Este procedimiento es adecuado para robots de pocos grados de libertad o para el caso de que se consideren solo los primeros grados de libertad, dedicados a posicionar el extremo. El procedimiento en si se basa en encontrar suficiente nmero de relaciones geomtricas en las que intervendrn las coordenadas del extremo del robot, sus coordenadas articulares y las dimensiones fsicas de sus elementos. Para mostrar el procedimiento a seguir se va a aplicar el mtodo a la resolucin del problema cinemtico inverso de un robot con 3 grados de libertad de rotacin (estructura tpica articular). La Figura 1.16, muestra la configuracin del robot. El dato de partida son las coordenadas (Px, Py, Pz) referidas a (S0) en las que se requiere posicionar su extremo.

42

Instituto Tecnolgico de Tijuana

Marco Terico

Figura 1. 16. Cinemtica inversa.

Como se ve este robot posee una estructura planar, quedando este plano definido por el ngulo de la primera variable articular q1. El valor de q1se obtiene inmediatamente como: (1.28) Considerando ahora nicamente los dos elementos 2 y 3 que estn situados en un plano y utilizando el teorema del coseno, se tendr:

(1.29) Como se vio, existen dos posibles soluciones para q3segn se tome el signo positivo o negativo de la raz. Estas corresponden a las configuraciones de codo abajo y codo arriba del robot, como se ve en la Figura 1.17, la de codo abajo est del lado izquierdo y la de codo arriba del lado derecho.

43

Instituto Tecnolgico de Tijuana

Marco Terico

Figura 1. 17. Consideraciones de codo arriba y codo abajo.

El clculo de q2 se hace a partir de la diferencia entre y : (1.30) Donde: ( ) ( ) (1.31) (1.32) Por lo tanto: ( ) ( ) (1.33)

(

)

(

)

De nuevo los dos posibles valores segn la eleccin del signo dan lugar a dos valores diferentes de q2 correspondientes a las configuraciones codo arriba y abajo.

1.7.2. Cinemtica Inversa A Partir De La Matriz De Transformacin Homognea. En principio es posible tratar de obtener el modelo cinemtico inverso de un robot a partir del conocimiento de su modelo directo. Es decir, suponiendo conocidas las relaciones que expresan el valor de la posicin y orientacin del extremo del robot en funcin de sus coordenadas articulares, obtener por manipulacin de aquellas las relaciones inversas. 44

Instituto Tecnolgico de Tijuana

Marco Terico

Sin embargo, en la prctica esta tarea no es trivial siendo en muchas ocasiones tan compleja que obliga a desecharla. Adems, puesto que el problema cinemtico directo, resuelto a travs de Tij contiene en el caso de un robot de 6 grados de libertad 12 ecuaciones, y se busca solo 6 relaciones (una por cada grado de libertad), existir, necesariamente ciertas dependencias entre las 12 expresiones de partida con lo cual la eleccin de las ecuaciones debe hacerse con sumo cuidado. Se va a aplicar este procedimiento al robot de 3 grados de libertad de configuracin esfrica (2 giros y un desplazamiento) mostrado en la Figura 1.18. El robot queda siempre contenido en un plano determinado por el ngulo

q1.

Figura 1. 18. Robot polar de 3 grados de libertad.

El primer paso a dar para resolver el problema cinemtico inverso es obtener

Tij correspondiente a este robot. Es decir, obtener la matriz T que relaciona elsistema de referencia (S0) asociado a la base con el sistema de referencia (S3) asociado a su extremo. La Figura 1.19, muestra la asignacin de sistemas de referencia segn los criterios de DH con el robot situado en su posicin de partida (q1 = q2 = 0), y la Tabla 2, muestra los valores de los parmetros de DH.

45

Instituto Tecnolgico de Tijuana

Marco Terico

Articulacin 1 2 3

d

a

q1 I1 0 90o q2 0 0 0 -90o 0

q3 0

Tabla 2. Parmetros D-H del robot de la figura 1.19

A partir de estos es inmediato obtener las matrices A y la matriz T. Obtenida la expresin de T en funcin de las coordenadas articulares (q1, q2, q3), y supuesta una localizacin de destino para el extremo del robot definida por los vectores n, o, a y p se podra intentar manipular directamente las 12 ecuaciones resultantes de T a fin de despejar q1, q2, y q3 en funcin de n, o, ay p.

Figura 1. 19. Asignacin de sistemas de referencia del robot polar de la figura 1.18

Sin embargo, este procedimiento directo es complicado, apareciendo ecuaciones trascendentes. En lugar de ello, suele ser ms adecuado aplicar el siguiente procedimiento: Puesto que (1.34) Se tendr que 46

Instituto Tecnolgico de Tijuana

Marco Terico

(

) (1.35)

( )( ) Puesto que:

(1.36) Es conocida, los miembros a la izquierda en las expresiones anteriores, son funcin de las variables articulares (qk+1,...,qn). De modo, que la primera de las expresiones se tendr q1aislado del resto de las variables articulares y tal vez ser posible obtener su valor sin la complejidad que se tendra abordando directamente la manipulacin de la expresin T. A su vez, una vez obtenida q1, la segunda expresin anterior

(2A3), permitir tener el valor de q2 aislado respecto de q3. Por ltimo,conocidos q1y q2se podr obtener q3 de la expresin T sin excesiva dificultad. Para poder aplicar este procedimiento, es necesario en primer lugar obtener las inversas de las matrices, i-1Ai. Esto es sencillo si se considera que la inversa de una matriz viene dada por:

(1.37)

Luego se tiene que:

47

Instituto Tecnolgico de Tijuana

Marco Terico

(1.38) Por lo tanto, utilizando la primera de las ecuaciones definidas al principio del tema, se tiene que:

(1.39) De las relaciones establecidas en la ecuacin anterior, interesan aquellas que expresan q1 en funcin de constantes. As por ejemplo se tiene: ( )

(1.40) Se tiene finalmente que: (

)

(1.41)

(

)

(1.42)

48

Instituto Tecnolgico de Tijuana

Marco Terico

1.7.3. Desacoplo Cinemtico. Las expresiones anteriores corresponden a la solucin del problema cinemtico inverso del robot considerado. A los mismos resultados se podra haber llegado mediante consideraciones geomtricas. Los procedimientos vistos en los apartados anteriores permiten obtener los valores de las 3 primeras variables articulares del robot, aquellas que posicionan su extremo en las coordenadas (Px, Py, Pz) determinadas, aunque pueden ser igualmente utilizadas para la obtencin de las 6 a costa de una mayor complejidad. Ahora bien, como es sabido, en general no basta con posicionar el extremo del robot en un punto del espacio, sino que casi siempre es preciso tambin conseguir que la herramienta que aquel porta se oriente de una manera determinada. Para ello, los robots cuentan con otros tres grados de libertad adicionales, situados al final de la cadena cinemtica y cuyos ejes, generalmente, se cortan en un punto, que informalmente se denomina mueca del robot. Si bien la variacin de estos tres ltimos grados de libertad origina un cambio en la posicin final del extremo real del robot, su verdadero objetivo es poder orientar la herramienta del robot libremente en el espacio. El mtodo de desacoplo cinemtico saca partido de este hecho, separando ambos problemas: Posicin y orientacin. Para ello, dada una posicin y orientacin final deseadas, establece las coordenadas del punto de corte de los 3 ltimos ejes (mueca del robot) calculndose los valores de las tres primeras variables articulares (q1, q2, q3) que consiguen posicionar este punto. A continuacin, a partir de los datos de orientacin y de los ya calculados (q1, q2,

q3) obtiene los valores del resto de las variables articulares.

49

Instituto Tecnolgico de Tijuana

Marco Terico

Articulacin 1 2 3 4 5 6

d

a 0 I2 0 0 0 0

-90o 0 90o -90o 90o 0

1 I1 2 3 0 0

4 I3 5 0

6 I4

Tabla 3. Parmetros D-H de la figura 1.20

En la Figura 1.20, se representa un robot que rene las citadas caractersticas, con indicacin de los sistemas de coordenadas asociados segn el procedimiento de Denavit-Hartemberg, cuyos parmetros se pueden observar en la Tabla 3.

Figura 1. 20. Cinemtica del robot IRB400 cuya inversa se puede desacoplar.

El punto central de la mueca del robot corresponde al origen del sistema (S5):

O5. Por su parte, el punto final del robot ser el origen del sistema (S6): O6.Enseguida se utilizaran los vectores: (1.43) 50

Instituto Tecnolgico de Tijuana

Marco Terico

Que van desde el origen del sistema asociado a la base del robot (S0) hasta los puntos centro de la mueca y fin del robot, respectivamente. Puesto que la direccin del eje Z6 debe coincidir con la de Z5y la distancia entre

O5y O6 medida a lo largo de Z5 es precisamente d4 = I4, se tendr que:(1.44) El vector Z6es el vector a correspondiente a la orientacin deseada Z6 = ( ax,

ay, az)T y I4es un parmetro asociado con el robot.Por lo tanto, las coordenadas del punto central de la mueca ( Pmx, Pmy, Pmz) son fcilmente obtenibles. Es posible, mediante un mtodo geomtrico, por ejemplo, calcular los valores de (q1, q2, q3) que consiguen posicionar el robot en el Pm deseado. Quedan ahora obtener los valores de q4, q5, y q6 que consiguen la orientacin deseada. Para ello denominando 0R6 a la sub-matriz de rotacin de 0T6 se tendr: [0

]

(1.45)0

Donde R6 es conocida por la orientacin deseada del extremo del robot, y R3 definida por: (1.46) Tambin lo ser a partir de los valores ya obtenidos de q1, q2y q3. Por lo tanto: ( ) [ ] (1.47)

Tendr sus componentes numricas conocidas. Por otra parte, R6 corresponde a una sub-matriz (3X3) de rotacin de la matriz de transformacin homognea T6 que relaciona el sistema (S3) con el (S6), por lo tanto: (1.48)3 3

51

Instituto Tecnolgico de Tijuana

Marco Terico

Donde i-1 Ri es la sub-matriz de rotacin de la matriz de Denavit-Hartemberg

i-1Ai, cuyos valores son:

(1.49) Luego se tiene que:

(1.50) Donde rij son valores numricos conocidos

(1.51) De estas relaciones expresadas se puede tomar las correspondientes a r13,

r23, r33, r31, r32:(1.52) Del conjunto de ecuaciones es inmediato obtener los parmetros articulares: (1.53) (1.54) (1.55) Estas expresiones y teniendo en cuenta que las posiciones de cero son distintas, constituyen la solucin completa del problema cinemtico inverso del robot articular.

52

Instituto Tecnolgico de Tijuana

Mtodos Y Desarrollo Del Proyecto

CAPITULO II.METODOS Y DESARROLLO DEL PROYECTO.La solucin de la cinemtica de cualquier robot consiste en dos problemas, la cinemtica directa e inversa. La cinemtica directa consiste en encontrar la posicin del efector final de un robot sabiendo la posicin de cada articulacin, mientras que la cinemtica inversa calcula la posicin de cada articulacin sabiendo la posicin del efector final. En este trabajo, utiliza el mtodo de Denavit-Hartenberg para encontrar el modelo matemtico del brazo robtico Lynx6 como se muestra en la Figura 2. 1. Este brazo robtico fue utilizado debido a que tiene un bajo costo, presenta flexibilidad de movimiento y es similar a los brazos robticos utilizados en la industria.

Figura 2. 1. Brazo robtico Lynx6.

2.1. Brazo Robtico Lynx6. De acuerdo a la cantidad de movimiento que puede realizar un brazo robtico se pueden clasificar como: Dos grados de libertad Tres grados de libertad Cuatro grados de libertad Cinco grados de libertad Seis grados de libertad

53

Instituto Tecnolgico de Tijuana

Mtodos Y Desarrollo Del Proyecto

En base a la clasificacin anterior el brazo robtico utilizado se puede clasificar como un brazo de seis grados de libertad los cuales son: rotacin de la base, movimiento de hombro, codo, mueca, rotacin de mueca y apertura o cierre de la pinza. Para el control de los movimientos articulares del brazo robtico se utilizan servomotores, para el control de la rotacin de la base y el movimiento del hombro, codo y mueca se utiliza un servomotor HITEC HS-475HB, como se muestra en la Figura 2. 2.

Figura 2. 2. Servomotor HITEC HS-475HB.

Sus caractersticas principales son las siguientes: Rango de rotacin 180 grados. Sistema de control mediante modulacin de ancho de pulso: 1.5ms al centro. Voltaje de funcionamiento: 4.8V a 6V Velocidad angular a 6V: 0.18 Seg/60 grados sin carga. Torque a 6V: 5.5 Kgcm. Corriente en reposo: 7.7 mA. Corriente en funcionamiento: 180 mA sin carga. Corriente mxima: 1100 mA. Zona neutra: 5 useg. Rango de trabajo: 1100 a 1900 useg. Dimensiones: 38.8 x 19.8 x 36 mm. Peso: 1.52 oz, 40g.

54

Instituto Tecnolgico de Tijuana

Mtodos Y Desarrollo Del Proyecto

Para el control de la rotacin de la mueca y la apertura o cierre de la pinza se utiliza un servomotor HITEC HS-85BB como se muestra en la Figura 2. 3.

Figura 2. 3. Servomotor HITEC HS-85BB.

Sus caractersticas principales son las siguientes: Rango de rotacin 180 grados. Sistema de control mediante modulacin de ancho de pulso: 1.5ms al centro. Voltaje de funcionamiento: 4.8V a 6V Velocidad angular a 6V: 0.14 Seg/60 grados sin carga. Torque a 6V: 3.5 Kgcm. Corriente en reposo: 8.6 mA. Corriente en funcionamiento: 260 mA sin carga. Corriente mxima: 1100 mA. Zona neutra: 8 useg. Rango de trabajo: 1100 a 1900 useg. Dimensiones: 29 x 13 x 30 mm. Peso: 0.77 oz, 21.9g.

La base tiene movimientos en sentido contrario a las manecillas del reloj con un rango de 180 a 0 y en sentido a las manecillas del reloj con un rango de 0 a 180 como se muestra en la Figura 2. 4.

55

Instituto Tecnolgico de Tijuana

Mtodos Y Desarrollo Del Proyecto

Figura 2. 4. Movimiento de la base.

El hombro, codo y mueca tiene un rango de movimiento de 0 s 180 o, el brazo est formado por tres partes principales las cuales son: la base, el brazo y la pinza. Para poderse moverse el brazo se requiere la utilizacin de cinco servomotores HITEC HS-475HB, uno para mover la base, dos para mover el hombro, uno para mover el codo y uno ms para mover la mueca. Adems de dos servomotores HITEC HS-85BB, uno para la rotacin de la mueca y otro para la apertura o cierre de la mueca. La base del brazo robtico se muestra en la Figura 2. 5, las dimensiones de las base son 4.5cm de radio y 4.5cm de altura.

Figura 2. 5. Base del brazo robtico

El brazo es la parte comprendida entre el hombro y el codo. Esta parte al igual que el antebrazo, est construida mediante la unin de servos. Para tener la suficiente fuerza para levantar por completo el brazo y el antebrazo, es necesario utilizar dos servos en el hombro del robot, los cuales van fijados en el disco giratorio. Estos servos se unen a un servo del antebrazo mediante dos placas paralelas que permiten el movimiento del servo para formar el codo como se muestra en la Figura 2. 6; La longitud del brazo entre el centro de una articulacin y otra es de 12cm.

56

Instituto Tecnolgico de Tijuana

Mtodos Y Desarrollo Del Proyecto

Figura 2. 6. Brazo del robot.

El antebrazo es la parte que se encuentra comprendida entre el codo y la mueca, y est construido con la unin de dos servos por medio de dos placas paralelas sin movimiento como se muestra en la Figura 2. 7; sus dimensiones son de una longitud de 12cm respecto al centro de cada articulacin.

Figura 2. 7. Antebrazo.

La pinza es la ltima parte de nuestro robot es la pinza. La cual va fija al otro servo de nuestro antebrazo, para permitir el movimiento del mismo y dar lugar a la mueca. Para poder darle movimiento a la pinza, es decir, rotacin y que abra y cirrela pinza son necesarios dos servos como se ilustra en la Figura 2. 8; su longitud entre la punta de la pinza y el centro de la articulacin del antebrazo es 14.5cm.

Figura 2. 8. Pinza.

57

Instituto Tecnolgico de Tijuana

Mtodos Y Desarrollo Del Proyecto

2.1.1. Funcionamiento Del Brazo Robtico. Este brazo se mueve por medio de servos motores. Cada servo se controla independientemente, ya que cada uno de estos puede tener posiciones diferentes. Un servo es bsicamente un motor elctrico que solo se puede mover en un ngulo de aproximadamente 180 grados. Consta de tres cables, el rojo es de alimentacin de voltaje (+5v), el negro es de tierra (GND), y el cable amarillo es el cable por el cual se le pide al servo en qu posicin (de 0 a 180), es decir el cable de control. La posicin deseada se le da al servo por medio de pulsos (PWM). Todo el tiempo debe de haber una seal de pulsos presente en ese cable de control para que el servo mantenga su posicin. Estas ordenes consisten en una serie de pulsos. La duracin del pulso indica el ngulo de giro del motor. Cada servo tiene sus mrgenes de operacin, que se corresponden con el ancho del pulso mximo y mnimo que el servo entiende.los valores ms generales corresponden con valores entre 1 ms y 2 ms, que dejaran el motor en ambos extremos. El valor 1.5 ms indicara la posicin central, mientras otros valores del pulso lo dejan en posiciones intermedias.

58

Instituto Tecnolgico de Tijuana

Mtodos Y Desarrollo Del Proyecto

2.2. Diseo Conceptual. En la Figura 2. 9, se muestra el diagrama conceptual que representa el diagrama de flujo de programa realizado.Inicio

Sistema de visin escanea el rea en busca de objetos

No Objetos? Fin

Si Determina que figuras son y su posicin

Enva las coordenadas de la figura hacia la pc.

La pc tomas las coordenadas y realiza el clculo de la cinemtica inversa.

La pc enva las seales de control a la tarjeta controladora del brazo robtico

El Brazo toma la figura y la lleva a las coordenadas finales.

FinFigura 2. 9. Diagrama conceptual del diagrama de flujo del programa

59

Instituto Tecnolgico de Tijuana

Mtodos Y Desarrollo Del Proyecto

2.3. Adquisicin De Imgenes. Para lograr la adquisicin de las imgenes se utilizara una cmara embebida NI 1742 Smart Camera como la que se muestra en la Figura 2. 10, cuyas caractersticas generales son las siguientes: Sensor de imagen CCD monocromtico con resolucin 640x480. Procesador PowerPC de 533MHz. Controlador interno de luz. Soporte a codificador de cuadratura, salidas digitales optoaisladas, y Ethernet dual. Soporte a protocolo de comunicacin serial RS232. Programable con LabVIEW Real-Time module o Vision Builder AI.

Figura 2. 10. NI smart camera

Para la adquisicin de imgenes se utilizara el mdulo de labVIEW Vision acquisition, mientras que para la tcnicas de reconocimiento visual se utilizara el modulo de LabVIEW Vision deveplopment, en donde se trabajaran las imgenes de forma estticas, es decir sin ningn movimiento alguno (fotografas), y para ejecutar las tcnicas de reconocimiento visual en la Smart Camera se utilizara el modulo de LabVIEW Real Time. Para de ah enviar las coordenadas y la imagen del objeto localizado hacia la computadora personal en la cual se encuentra un programa desarrollado en LabVIEW, en el cual se realizara el clculo de la cinemtica inversa y se le enviaran los comandos para el control de posicin de los servomotores, mediante el puerto de comunicacin

60

Instituto Tecnolgico de Tijuana

Mtodos Y Desarrollo Del Proyecto

serial de la computadora hacia la tarjeta controladora del brazo robtico del brazo robtico Lynx6. Para poder lograr la comunicacin de la Smart Camera con la computadora es necesario tener instalado el modulo Real Time de National Instruments, ya que con dicho software se puede establecer el control de la Smart Camera. Adems de tener instalado el software es necesaria la utilizacin de un servidor DHCP para poder lograr la comunicacin de la Smart Camera y la computadora mediante el protocolo de comunicacin TCP/IP, en este caso se uso un router como servidor. Una vez instalada la cmara, el router y la computadora junto con el software necesario se procedi a tomar las primeras imgenes de los objetos a detectar. En la Figura 2. 11, se muestra el rea de trabajo, en la cual se puede observar la Smart Camera, el brazo robtico Lynx6, as como el router utilizado. El rea de escena que se ilustra en la Figura 2. 11, es de 33cm en el eje x y 24.5cm en eje y.

Figura 2. 11. rea de trabajo. a) Vista general, b) rea de escena.

Despus de haber instalado todo el equipo necesario para la realizacin del proyecto se procedi a realizar el procedimiento necesario para la adquisicin y reconocimiento de imgenes dentro de la plataforma LabVIEW. En la Figura 2. 12, se muestra un diagrama de flujo en el cual se describe de forma general el algoritmo de reconocimiento de imgenes que se desarrollo en el proyecto.

61

Instituto Tecnolgico de Tijuana

Mtodos Y Desarrollo Del Proyecto

Figura 2. 12. Diagrama de flujo programa de reconocimiento de imgenes.

Para ello es necesario primero crear un nuevo proyecto para plataformas en tiempo real, una vez creado el proyecto es necesaria la configuracin de LabVIEW con la Smart Camera, primero se selecciona el tipo de comunicacin que debe tener la Smart Camera con la computadora, como se muestra en la Figura 2. 13, en nuestro caso se selecciona la opcin de comunicacin continua con la Smart Camera.

62

Instituto Tecnolgico de Tijuana

Mtodos Y Desarrollo Del Proyecto

Figura 2. 13. Seleccin de tipo de comunicacin de la Smart Camera con la PC.

Despus es necesario especificar qu tipo de dispositivo de tiempo real se quiere utilizar en este proyecto es necesario buscar en el folder de Smart Camera la cmara que se utilizara en la cual en nuestro caso se llama electrnica. Como se muestra en la Figura 2. 14.

Figura 2. 14. Seleccin de la Smart Camera.

Una vez teniendo configurado nuestro proyecto con el dispositivo de tiempo real. Se procedi a realizar el instrumento visual para la adquisicin de imgenes y reconocimiento visual. Primero es necesaria la adquisicin de una imagen para ello se selecciona en paleta de funciones el bloque visin acquisition, una vez colocado esta funcin en el diagrama de bloques del VI se procede a tomar la adquisicin de imgenes de las figuras geomtricas utilizadas. Para ello primero es necesario

63

Instituto Tecnolgico de Tijuana

Mtodos Y Desarrollo Del Proyecto

Una vez obtenida nuestra imagen de la escena se procedi a utilizar los algoritmos de reconocimiento de patrones del software Vision Assistant. Para ello es necesaria la utilizacin del bloque Vision Assistant encontrado en la paleta de funciones. Dentro del bloque Vision Assistant primero es necesario establecer el patrn de la figura a encontrar. Por lo tanto se utilizara la funcin Pattern Matching que se encuentra en la pestaa de funciones de procesamiento, como se puede apreciar en la Figura 2. 15.

Figura 2. 15. Funciones de procesamiento.

El primer paso dentro de esta parte del algoritmo crear un muestra (template) de nuestro objeto a reconocer, para ello es necesario dar seleccionar en el botn New Template, como se ilustra en la Figura 2. 16.

64

Instituto Tecnolgico de Tijuana

Mtodos Y Desarrollo Del Proyecto

Figura 2. 16. Creacin de la muestra.

Una vez realizado lo anterior se necesita definir la regin donde se encuentra nuestro patrn de imagen a buscar para la creacin de nuestra muestra, en la Figura 2. 17, se muestran las muestras de las figuras geomtricas utilizadas.

(a)

(b)

(c)

Figura 2. 17. Muestras de las figura utilizadas. a) Cuadrado, b) Triangulo, c) Circulo.

Ya definidas las muestras se selecciona la pestaa settings dentro de Pattern Matching y se selecciona la casilla Search for Rotated Patterns y se introduce la cantidad de 180 en la casilla Angle Range (Figura 2. 18), con ello se le indica que debe buscar el patrn indicado en cualquier Angulo que se encuentre.

65

Instituto Tecnolgico de Tijuana

Mtodos Y Desarrollo Del Proyecto

Figura 2. 18. Opcin Search for Rotated Patterns

Tambin es necesario indicarle el nmero de instancias en el cual puede ser encontrado el patrn, se debe seleccionar 1. El parmetro matching score, indica la calidad del proceso de comparacin de patrones, este valor se deja en el valor predefinido el cual es 800, ya que es un valor lo suficientemente chico para encontrar el patrn deseado, pero lo suficientemente grande para evitar detectar patrones que no sean los deseados. Para poder encontrar el centro de masa de las figuras es necesario utilizar dos funciones de comparacin de patrones. Para ello es necesaria la seleccin del geometric matching dentro de la pestaa funciones de procesamiento, como se puede apreciar en la Figura 2. 15. Al igual en esta funcin es necesaria la creacin de muestras como en la funcin Pattern Matching, por lo tanto se sigue el mismo procedimiento. Una vez creado la nueva muestra se prosigue a encontrar el centro de masa de la figura, Para ello se selecciona la funcin caliper, dentro de esta funcin se selecciona el uso de las dos comparaciones de patrones para poder localizar el centro de masa de la figura. En la Figura 2. 19, se puede observar la funcin caliper encontrando el centro de masa de un cuadrado.

66

Instituto Tecnolgico de Tijuana

Mtodos Y Desarrollo Del Proyecto

Figura 2. 19. Opcin para encontrar el centro de masa del objeto.

Una vez realizado el procedimiento anterior ya se tiene el algoritmo de reconocimiento visual de una de las figuras geomtricas, para poder detectar las figuras restantes es necesaria la configuracin de otros dos bloques de Visin Assistant. Una vez realizado los algoritmos de reconocimiento visual, mediante la configuracin de los bloques Vision Assistant. Se procedi a realizar pruebas de funcionamiento. Ya comprobado el funcionamiento se procedi a extraer la localizacin fsica del objeto, para extraer las coordenadas se utilizo la funcin index array, para de ah utilizar dos funciones unbundle, debido a que el algoritmo de reconocimiento visual de Vision Assistant da las coordenadas del centro de masa de la figura en pixeles, se deben de convertir estos pixeles a centmetros, para ello se uso la relacin entre la cantidad de pixeles obtenidas en cada eje y la magnitud de la longitud de cada eje respectivamente. Una vez extrada las coordenadas de la figura geomtrica es necesaria guardarla en variables de red para su posterior lectura del software de control del brazo robtico. El vi creado se puede observar en la Figura 2. 20. 67

Instituto Tecnolgico de Tijuana

Mtodos Y Desarrollo Del Proyecto

Figura 2. 20. Instrumento Virtual para el reconocimiento de figuras.

Una vez concluido esta parte del programa se comenz a resolver la cinemtica del brazo robtico, la cual se explica en el siguiente punto. 2.4. Cinemtica Del Brazo. Para desarrollar la cinemtica inversa del brazo robtico se obtuvieron los datos necesarios los cuales se ilustran en la Figura 2. 21.

Figura 2. 21. Brazo Lynx6

Donde los datos constantes son los siguientes: L1=longitud del hombro=12cm L2=longitud del codo=12cm L3=longitud de la mano=14.5cm HB=altura de la base=6.5cm Z=altura de la pieza a tomar respecto al eje 68

Instituto Tecnolgico de Tijuana

Mtodos Y Desarrollo Del Proyecto

z=2.5cm =ngulo de la mano constante sobre la normal= - 45

Donde los ngulos a solucionar son los siguientes 1=ngulo de la base 2=ngulo del hombro 3=ngulo del codo

4=ngulo de la manoPara el control de la base la ecuacin a implementar es la siguiente determinada del plano x, y como se muestra en la Figura 2. 22.

Figura 2. 22. Determinacin del ngulo de la base.

Donde la solucin del ngulo de la base son los valores de la posicin del objeto sobre las coordenadas X y Ya si como tambin sumarle 5cm al eje X, que es la separacin del centro de la base con respecto a la posicin (0,0) de las coordenadas del rea visualizada