UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA “UNAD”
ROBÓTICA
Actividad Unidad 2- fase 3- Realizar el modelamiento cinemático de un sistema robótico
PRESENTADO POR:
WILSON ALEXANDER BALLESTEROS Cód 10138851
PRESENTADO A: Director de Curso : SANDRA ISABEL VARGAS Grupo – 299011_11 299011_11
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA ESCUELA DE CIENCIAS BASICAS, TECNOLOGIA E INGENIERIA BOGOTA D.C, OCTUBRE 31 DE 2018
INTRODUCCIÓN ....................................................................................................................................... 2 OBJETIVOS ............................................................................................................................................... 3 Objetivo General ................................................................................................................................. 3 Objetivos Específicos ........................................................................................................................... 3 PRACTICA 1 .............................................................................................................................................. 4 Punto 1: Instalación Software ............................................................................................................. 4 Punto 2: Función Comandos ............................................................................................................... 6 Punto 3: Robots en Toolbox ................................................................................................................ 8 Punto 4: Crear un archivo.m ............................................................................................................... 9 Punto 5: Grabar Video ....................................................................................................................... 11 CONCLUSIONES ..................................................................................................................................... 12 BIBLIOGRAFIA ........................................................................................................................................ 13
INTRODUCCIÓN
En la actualidad la robótica está en un gran avance toda vez que permite mejorar la forma de trabajo, dar más producción y agilizar en cierta forma los procesos y la producción en todos los mapos, pero en especial en el industrial. Con los robots básicamente se manipulan piezas o elementos determinados, para lo cual el robot debe tener ciertos dispositivos y una programación específica, esto según la necesidad del usuario. Mediante la utilización del Matlab y el programa Toolbox, estaremos simulando el funcionamiento de un robot que nos permitirá clasificar y tomar los elementos específicos mediante una programación y estructuración en dichos programas, aplicando igualmente el soporte matemático
OBJETIVOS
Objetivo General Aplicación de matrices, cinemática directa e inversa en un modelo robótico
Objetivos Específicos
Instalación y aplicación del programa Matlab Aplicación del programa Toolbox Identificación y función de comandos en el programa Matlab Detallar aspectos de la cinemática Demostrar un modelo cinemático en un robot Elaborar simulaciones en Matlab
PRACTICA 1 Punto 1: Instalación Software Instalar el software Matlab y el Toolbox de robótica, puede descargar una versión trial de MATLAB
Punto 2: Función Comandos Investigar la función de tres (3) de los siguientes comandos, y su sintaxis en el software Matlab versión 2017. COMAND O
FUNCIÓN
SINTAXIS
Fkine
Descripción fkine calcula la cinemática hacia adelante para la coordenada de la junta q da una transformada homogénea para la ubicación del efector final. Robot es un objeto de robot que contiene un modelo cinemático en notación Denavit-Hartenberg estándar o modificada. Tenga en cuenta que el objeto robot puede especificar una Transformada arbitraria homogénea para la base del robot. Si q es un vector, se interpreta como las coordenadas de la articulación generalizadas, y fkine devuelve una forma homogénea. Transformación para el enlace final del manipulador. Si q es una matriz, cada fila se interpreta como una unión. vector de estado, y T es una matriz de 4 x4 m donde m es el número de filas en q. Tener en cuenta que las unidades dimensionales de la última columna de la matriz T serán las mismas que las unidades dimensionales utilizadas en el objeto robot. Las unidades pueden ser lo que se elija (metros, pulgadas) pero la elección afectará el valor numérico de los elementos en la última columna de T. Las definiciones de la caja de herramientas puma560 y stanford utilizan unidades SI con dimensiones en metros
fkine Propósito del robot de avance cinemático para manipulador de enlace serie Sinopsis T = fkine (robot, q)
Ikine
Descripción ikine devuelve las coordenadas conjuntas para el manipulador descrito por el robot objeto cuyo efector final T. proporciona una transformación homogénea. Tener en cuenta que la base del robot se puede especificar arbitrariamente dentro del objeto del robot. Si T es una transformada homogénea, se devuelve un vector de fila de coord enadas conjuntas. Si T es un homogéneo transformar la trayectoria de ta maño 4 x4 m, entonces q será una matriz de n m donde cada fila es un vector de coordenadas conjuntas correspondientes al último subíndice de T.
ikine
Propósito manipulador inverso cinemática Sinopsis q = ikine (robot, T) q = ikine (robot, T, q0) q = ikine (robot, T, q0, M)
La estimación inicial de q para cada paso de tiempo se toma como la solución del paso de tiempo anterior. La estimación para el primer paso en q0 si se da en otro caso 0. Tenga en cuenta que la solución cinemática inversa es Generalmente no es único, y depende del valor inicial q0 (que por defecto es 0). Para el caso de un manipulador con menos de 6 DOF, no es posible que el efector final satisfaga la postura del efector final especificada por una transformada homogénea arbitraria. Esto típicamente lleva a no convergencia en ikine. Una solución es especificar un vector de ponderación de 6 elementos, M, cuyos elementos son 0 para aquellos DOF cartesianos sin restricciones y 1 de lo contrario. Los elementos corresponden a la traslación a lo largo de los ejes X, Y y Z y la rotación alrededor de los ejes X, Y y Z. Por ejemplo, unos 5 ejes. el manipulador puede ser incapaz de controlar de forma independiente la rotación alrededor del eje Z del efector final. En este caso, M = [1 1 1 1 1 0] permitiría una solución en la cual el efector final adoptó la posa T excepto para la rotación del efector final. El número de elementos que no sean cero debe ser igual al número de robot DOF.
Drivebot
Descripción : Muestra una ventana con un control deslizante para cada junta. El funcionamiento de los controles deslizantes conducirá el Robot grafico en la pantalla. Muy útil para comprender los límites comunes y el espacio de trabajo del robot. El estado de la coordenada conjunta se mantiene con el robot gráfico y se puede obtener utilizando la función de la trama. El valor inicial de las coordenadas conjuntas se toma del robot gráfico.
Fuente: Programa Matlab
drivebot Purpose Drive a graphical robot Synopsis drivebot(robot)
Punto 3: Robots en Toolbox Investigar los modelos de robots que se encuentran en el Toolbox de robótica
Fuente: programa Toolbox
Punto 4: Crear un archivo.m Crear un archivo.m que simule el movimiento de un robot de los modelos averiguados anteriormente.
A serial link manipulator comprises a series of links. Each link is described by four Denavit-Hartenberg parameters. Let's define a simple 2 link manipulator. The first link is >> L1 = Link('d', 0, 'a', 1, 'alpha', pi/2) L1 = Revolute(std): theta=q, d=0, a=1, alpha=1.5708, offset=0 The Link object we created has a number of properties >> L1.a ans = 1 >> L1.d ans =
0
and we determine that it is a revolute joint >> L1.isrevolute ans = logical 1
For a given joint angle, say q=0.2 rad, we can determine the link transform matrix >> L1.A(0.2)
ans = 0.9801 0 0.1987 0.9801 0.1987 0 -0.9801 0.1987 0 1 0 0 0 0 0 1
The second link is >> L2 = Link('d', 0, 'a', 1, 'alpha', 0)
L2 = Revolute(std): theta=q, d=0, a=1, alpha=0, offset=0 Now we need to join these into a serial-link robot manipulator >> bot = SerialLink([L1 L2], 'name', 'my robot') bot = my robot:: 2 axis, RR, stdDH, slowRNE +---+-----------+-----------+-----------+-----------+-----------+ | j | theta | d| a | alpha | offset | +---+-----------+-----------+-----------+-----------+-----------+ | 1| q1| 0| 1| 1.5708| 0| | 2| q2| 0| 1| 0| 0| +---+-----------+-----------+-----------+-----------+-----------+
The displayed robot object shows a lot of details. It also has a number of properties such as the number of joints >> bot.n ans =
2
Given the joint angles q1 = 0.1 and q2 = 0.2 we can determine the pose of the robot's end-effector >> bot.fkine([0.1 0.2]) ans = 0.9752 0.0978 0.1987 0
-0.1977 0.0998 1.97 -0.0198 -0.9950 0.1977 0.9801 0 0.1987 0 0 1
which is referred to as the forward kinematics of the robot. This, and the inverse kinematics are covered in separate demos.
Finally we can draw a stick figure of our robot >> bot.plot([0.1 0.2])
Punto 5: Grabar Video Grabar un video donde se evidencie que posee el software Matlab instalado y el Toolbox de robótica, la sintaxis de los tres comandos investigados, y el archivo que simula el movimiento de un robot. La url del video debe anexarla en el producto final Fase 3. Realizar el modelamiento cinemático de un sistema robótico, la valoración de este video correspondiente a la practica 1, se realiza dentro de la valoración de la Fase 3.
Link
https://youtu.be/Yw_46zHfrU4
cinematico (1).asv
cinematico.m
CONCLUSIONES
Con el modelamiento en Matlab nos permite elaborar el robot con sus diferentes funciones, aplicando los diferentes procesos matemáticos para la respectiva programación
BIBLIOGRAFIA Creación de funciones en Matlab. (mayo de 2010). Recuperado el octubre de 2018, de Matpic:
https://www.youtube.com/watch?v=ylry403w8Uk&ab_channel=www.matpic.com Fernández, M. C. (2018). Manual Básico Matlab. Recuperado el octubre de 2018, de https://alojamientos.uva.es/guia_docente/uploads/2013/439/41644/1/Documento.pdf otro, A. h. (2018). Curso de Programacion en Matlab y Simulink . Recuperado el octubre de 2018, de https://alojamientos.uva.es/guia_docente/uploads/2013/439/41644/1/Documento.pdf Ramírez, A. f. (2014). Tutorial Matlab. Recuperado el octubre de 2018, de https://www.youtube.com/watch?v=Wgk_FdfpJqg&ab_channel=TutorialesdeMATLABenEsp a%C3%B1ol