brazo_robotico_reporte_final.pdf
TRANSCRIPT
Robótica Otoño 2014
Benemérita Universidad Autónoma de Puebla
Benemérita Universidad Autónoma de Puebla Facultad de Ciencias de la Electrónica
Asignatura Robótica
Proyecto
Espacio de Trabajo de Brazo Robótico
Estudiantes Héctor Jonathan Flores Freeman Jorge Eduardo Gutiérrez Gómez
Víctor Antonio Parra Toriz
Matrícula 201033121 201019816 200929487
Profesor
Dr. José Luis Hernández Rebollar
Fecha 2 de Diciembre de 2014
Robótica Otoño 2014
Benemérita Universidad Autónoma de Puebla
Introducción Este reporte tiene como fin documentar el desarrollo y realización del cálculo de un sistema físico de 4 eslabones denominado para este fin como robot, para determinar la posición de su último eslabón respecto a un sistema de referencia fijo. Estado de Arte Un robot es una entidad virtual o mecánica artificial. En la práctica, esto es por lo general un sistema electromecánico que, por su apariencia o sus movimientos, ofrece la sensación de tener un propósito propio. La independencia creada en sus movimientos hace que sus acciones sean la razón de un estudio razonable y profundo en el área de la ciencia y tecnología. La palabra robot puede referirse tanto a mecanismos físicos como a sistemas virtuales de software, aunque suele aludirse a los segundos con el término de bots. Desarrollo Para este propósito primeramente se ha creado un sistema físico, el sistema consta de una base, 4 abatelenguas y 4 potenciómetros, estos dos últimos elementos unidos uno con otro para crear movilidad, otra forma de ser descrito es, una cadena de potenciómetro-‐abatelengua consecuente que consta de 8 elementos. Se adjunta una foto, ver a continuación.
Figura 1 Estructura física del brazo
Figura 2 Modelo esquemático del brazo
Para poder hacer un análisis correcto de este robot se reconocerán y nombraran cada uno de los elementos. Se determinaran sistemas de referencia para cada elemento, sobre el modelo físico y se describirá gráficamente en una imagen que se muestra a continuación. Tabla DH. Ahora que hemos determinado el sistema de referencia del robot, hemos de completar la siguiente tabla:
𝑏! 𝜃! 𝛼! ∝! 15 𝑝! 0 90 5 𝑝! 0 90 9 𝑝! 0 90 5 𝑝! 1 0
Tabla 1 DH
Robótica Otoño 2014
Benemérita Universidad Autónoma de Puebla
Donde 𝑏! es la longitud del eslabón reconocidos de forma ascendente, nos dice si x1 y x2 están en el mismo plano, 𝜃! el es alguno que forma entre xi y xi+1, 𝛼! es la distancia entre los centros, ∝! es el Angulo de chuecura, y nos dice si z1 y z2 están en la misma orientación. Ya con todos los datos necesarios desplegados en la tabla, se pueden sustituir en las matrices Ti, que en realidad son una multiplicación de matrices de traslación y rotación, como se nombra a continuación, matriz de traslación sobre z con argumento bi por matriz de rotación sobre z con argumento teta i por matriz de traslación sobre x con argumento alfa i por matriz de rotación sobre x con argumento propio i. Escrita de este modo como:
𝑇! = 𝑇!"(𝑏!) ∗ 𝑇!"(𝜃!) ∗ 𝑇!"(𝛼!) ∗ 𝑇!"(∝!)
Haciendo las sustituciones correspondientes nos queda del siguiente modo:
Realizando las operaciones correspondientes, y sustituyendo los valores podemos obtener cada una de las matrices Ti. Matrices Ti:
T1 =
cos 𝑝! −sin 𝑝! cos 90 sin 𝑝! sin 90 0sin 𝑝! cos 𝑝! cos 90 −cos 𝑝! sin 90 00 sin 90 cos 90 150 0 0 1
T2 =
cos 𝑝! −sin 𝑝! cos 90 sin 𝑝! sin 90 0sin 𝑝! cos 𝑝! cos 90 −cos 𝑝! sin 90 00 sin 90 cos 90 50 0 0 1
T3 =
cos 𝑝! −sin 𝑝! cos 90 sin 𝑝! sin 90 0sin 𝑝! cos 𝑝! cos 90 −cos 𝑝! sin 90 00 sin 90 cos 90 90 0 0 1
Robótica Otoño 2014
Benemérita Universidad Autónoma de Puebla
T4 =
−cos 𝑝! sin 𝑝! 0 −5 cos 𝑝!−sin 𝑝! −cos 𝑝! 0 −5 sin 𝑝!
0 0 1 10 0 0 1
Y por último la matriz total T puede descrita como la multiplicación de las matrices Ti hasta T4 por el vector de posición final del actuador. Para su realización se ha introducido la información en un software para que realice las operaciones:
𝑇 = 𝑇1 ∗ 𝑇2 ∗ 𝑇3 ∗ 𝑇4 ∗ 𝑃 Matriz T:
Todas las operaciones de adjuntan en un archivo que se abre con el software portátil que también se adjunta ver anexo1 en este documento. Realización electrónica-‐digital. El robot consta de potenciómetros como ya se ha explicado, usando el principio de divisor de voltaje es posible saber en que posición se encuentra cada potenciómetro en todo momento, leyendo los valores de sus terminales, para este propósito se utilizaron puertos analógicos de un arduino mega para poder leer los valores y mandarlos a la computadora por medio de USB. Se muestra a continuación la forma de conectar el potenciómetro al arduino.
Figura 3 Conexión de potenciómetro a Arduino
Robótica Otoño 2014
Benemérita Universidad Autónoma de Puebla
Caracterización de la posición. Debido a que el potenciómetro no es lineal se tuvo que caracterizar y eso se hizo de la siguiente manera. Se movió de grado en grado y apunto el dato para guardarlo y entender su comportamiento. Se vaciaron los datos en Excel y se graficó, se adjunta el archivo Excel, ver Anexo2.
Figura 4 Graficas características de potenciómetros
Figura 5 Sistema conectado
Código. Para que la computadora pudiera determinar la posición del actuador final, se realizó un código en Matlab que interpretara los valores de los potenciómetros y haciendo uso de la matriz T procesara los datos hasta obtener en tiempo real la posición. Se adjunta el código ver Anexo3. Se ha hecho una interfaz gráfica, donde se muestran los resultados de la posición. En el panel se muestra el botón On, que ejecuta el código, el botón Exit cierra la ventana y termina el código. Los datos que se muestran en Pot1, 2, 3,4. Es la posición en grados de cada uno de los potenciómetros, la gráfica central muestra en 3D la posición del actuador final, y las gráficas de la derecha, muestran la posición en X,Y,Z del actuador final. Se procede a calcular el espacio de trabajo, para este fin se crea un código que calcule todos estos puntos, comienza evaluando los puntos uno por uno de grado en grado, haciendo combinaciones y evaluándolas dentro la matriz de T, posteriormente comienza a graficar estos datos para generar el espacio de trabajo, así mismo al final muestra todos los puntos posibles alcanzables, se adjunta el código, ver Anexo4.
Robótica Otoño 2014
Benemérita Universidad Autónoma de Puebla
Resultados Matriz T
Vector Pf evaluado en (teta)i = 0 (cuando todas las x están traslapadas) Para comprobar que las cosas se han hecho bien, traslapamos las X y volvemos todas las tetas i en cero.
Y esto nos da como resultado
Ejecutando el programa con todo conectado nos da como resultado la posición en tiempo real.
Figura 6 Posición A
Figura 7 Gráfica de posición A
Robótica Otoño 2014
Benemérita Universidad Autónoma de Puebla
Figura 8 Posición B
Figura 9 Gráfica de posición B
Figura 10 Posición C
Figura 11 Gráfica de posición C
Robótica Otoño 2014
Benemérita Universidad Autónoma de Puebla
El espacio de trabajo graficado es el siguiente:
Figura 12 Gráfica de espacio de trabajo A
Figura 13 Gráfica de espacio de trabajo B
Conclusiones El sistema de eslabones denominado robot para este fin, aun en su complejidad fue posible determinar su posición en tiempo real haciendo uso de herramientas electrónicas y computacionales. De igual forma hemos concluido que conocer dichas herramientas es de suma importancia debido a que nos ayudan a definir con mucha precisión la posición de nuestro efector final en el espacio, por tanto, es crucial llevar a cabo los cálculos pertinentes con bastante delicadeza y cuidado, ya que de lo contrario nuestro sistema estará mal definido. Bibliografía
• Joel M. Esposito. (2009). Tutorial: Serial Communication in Matlab. 20 de noviembre de 2014, de Systems Engineering Department United States Naval Academy
• Introducción a la robótica, Subir Kumar Saha, Indian Institute of Technology, McGraw-‐Hill 2010
Anexos Todos los siguientes anexos numerados como Anexo1 hasta Anexo4 son carpetas que se entregan con el reporte en formato digital:
• Anexo1: Cálculos y Portable Matemáticas de Microsoft 2007. • Anexo2: CARAC_POTS_BRAZO • Anexo3: BRAZO_ROBOT_VER1 y BRAZO_ROBOT_VER1 • Anexo4: WORKSPACE_DATA y WORKSPACE_GRAPH