Escolar Documentos
Profissional Documentos
Cultura Documentos
REGIÓN CARBONÍFERA.
“DR. ROGELIO MONTEMAYOR SEGUY”.
ALUMNO:
NÚMERO DE CONTROL:
071M0272.
ASESOR DE LA INVESTIGACIÓN:
1
I. Índice.
1. Planteamiento del problema………………………………………………………….4
2. Objetivos.……………………………………………………………………………….5
2.1 Objetivos generales…………………………………………………………..5
2.2 Objetivos específicos…………………………………………………………5
3. Marco teórico.
3.1 Cinemática de un robot……………………………………………………….6
3.1.1 Matrices de transformación homogénea……………………........7
3.1.2 Algoritmo de Denavit – Hartenberg……………………………….8
3.2 Brazo robot CRS A465……………………………………………………...11
3.3 Controlador C500C…………………………………………..……………...12
3.4 Software Robbcom3…………………………………………………………14
3.5 MATLAB……………………………………………………………………...15
4. Justificación de la investigación………………………………..……………………17
5. Diseño de la investigación.
5.1 Obtención del modelo cinemático mediante el algoritmo de D-H..........18
5.2 Programa de MATLAB del modelo cinemático…………………………..20
5.3 Comparación de resultados……………………………………………......24
6. Obstáculos y alternativas de solución………………………………………….…..27
7. Conclusiones………………………………………………………………………..…28
8. Bibliografía………………………………………………………………………..……29
2
II. Índice de tablas y figuras.
Figura 5.2. Valores articulares y coordenadas de posición del robot CRS A465…24
3
1. Planteamiento del problema.
4
2. Objetivos.
1. Obtener el modelo cinemático directo del brazo robot CRS A465, empleado
en el laboratorio de CIM del ITESRC, mediante el método conocido como
algoritmo de Denavit – Hartenberg.
Demostrar la validez del modelo cinemático del brazo robot CRS A465 mediante la
comparación de los resultados arrojados por el programa en MATLAB con los
proporcionados por el software del robot. Dichos resultados serán calculados
ingresando movimientos reales del robot.
5
3. Marco teórico.
El autor Antonio Barrientos define la cinemática del robot como: “El estudio del
movimiento del mismo con respecto a un sistema de referencia sin considerar las
fuerzas que intervienen”. Así puede decirse que la cinemática del robot se
interesa en estudiar analíticamente el movimiento espacial del robot y
particularmente por describir las relaciones existentes entre la posición y
orientación del extremo del robot con los valores de cada una de sus
articulaciones.
La figura 3.1 muestra la relación existente entre la cinemática directa e inversa del
robot.
[ ] [ ]
Se puede considerar que una matriz homogénea se halla compuesta por cuatro
submatrices de distinto tamaño: una submatriz de rotación, una de traslación, una
que representa una transformación de perspectiva y finalmente una que
representa un escalado global. En robótica generalmente sólo interesa conocer los
valores de las matrices de rotación y traslación, aunque no por esto dejan de ser
útiles en otros campos.
[ ]
7
3.1.2 Algoritmo de Denavit – Hartenberg.
Aunque para describir la relación 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 robótica es la representación de Denavit-
Hartenberg, la cual es un método matricial que establece la localización que debe
tomar cada sistema de coordenadas * + ligado a cada eslabón i de una cadena
articulada, para poder sistematizar la obtención de las ecuaciones cinemáticas de
la cadena completa.
( ) ( ) ( ) ( )
[ ][ ][ ][ ]
8
[ ]
Donde , , , son los parámetros D-H del eslabón i. De este modo basta con
identificar dichos parámetros para obtener las matrices de transformación que
relacionan así todos y cada uno de los eslabones del robot.
DH 5. Situar el origen del sistema de la base S0 en cualquier punto del eje z0. Los
ejes x0 y y0 se situarán de modo que formen un sistema dextrógiro con z0.
DH 10. Obtener como el ángulo que hay que girar en torno a zi-1 para que xi-1 y
xi queden paralelos.
9
DH 11. Obtener di como la distancia, medida a lo largo de zi-1, que habría que
desplazar Si-1 para que xi y xi-1 quedasen alineados.
DH 12. Obtener a1 como la distancia medida a lo largo del eje xi que habría que
desplazar el nuevo Si-1 para que su origen coincidiese con Si.
DH 13. Obtener como al ángulo que habría que girar en torno a xi para que el
nuevo Si-1 coincidiese totalmente con Si.
DH 16. La matriz T define la orientación y posición del extremo del robot referido a
la base, en función de las n coordenadas articulares.
10
3.2 Brazo robot CRS A465.
El Robot CRS Robotics A465 (Figura 3.1), es un brazo mecánico con seis grados
de libertad. Las dimensiones del robot se asemejan a las del brazo humano en lo
referente a proporción. El robot A465 se puede manejar utilizando el lenguaje
RAPL-III.
Figura 3.2. Configuración articular del Robot CRS A465. (Extraída de “Visión
artificial estéreo con aplicación al control de un brazo robot” por M.C. Marco
Antonio Moreno, p. 9)
El robot A465 puede ser operado por una consola de operación vía comunicación
serial o por medio de un sistema de cómputo a través de alguna de las dos
configuraciones de transmisión serial que el controlador tiene ya definidas.
11
Figura 3.3. Componentes del sistema robótico A465. (A465 robot system user
guide, CRS Robotics, p. 1).
12
El sistema embebido multi-tarea CRS Robot Operating System (CROS)
proporciona un programa de procesos e interfaces de bajo nivel del sistema de
funciones del robot. Además provee de herramientas de aplicaciones básicas,
incluido el Aplication Shell (ash) un ambiente integrado de desarrollo, compilación
y corrida de aplicaciones del robot en el controlador.
Figura 3.4. Vista frontal del controlador C500C. (A465 robot system user guide,
CRS Robotics, p. 15).
13
3.4 Software Robbcom3.
Robcomm3 es un software de aplicación basado en Windows diseñado para su
uso con RAPL-3 un lenguaje de programación de robots. El ambiente de
desarrollo integrado en el Robcomm3 permite:
A continuación se muestra una pequeña tabla (en idioma inglés) extraída del
manual técnico del software que describe las funciones básicas del Robbcom3.
14
Figura 3.6. Ventana principal de Robcomm3.
3.5 MATLAB.
15
de interfaces de usuario y la comunicación con programas en otros lenguajes y
con otros dispositivos hardware.
El paquete MATLAB dispone de dos herramientas adicionales que expanden sus
prestaciones, a saber, Simulink (plataforma de simulación multidominio) y GUIDE
(editor de interfaces de usuario - GUI). Además, se pueden ampliar las
capacidades de MATLAB con las cajas de herramientas (Toolboxes); y las de
Simulink con los paquetes de bloques (blocksets).
16
4. Justificación de la investigación.
17
5. Diseño de la investigación.
18
DH 10 – DH 13 Obtener parámetros de Denavit Hartenberg del Robot CRS A465.
Articulación
1 13 0 90º
2 0 12 0º
3 0 0 90º
4 13 0 -90º
5 0 0 90º
6 3 0 0º
[ ]
( ) ( ) ( )
( ) ( ) ( )
[ ]
[ ]
[ ]
19
[ ]
[ ]
Una vez que se han obtenido los parámetros de Denavit Hartenberg se procederá
a realizar un programa en MATLAB el cual simule la cinemática del robot.
20
Para la rotación alrededor del eje X, se declara la siguiente función:
function rotx=t(alfa)
rotx=[1 0 0 0;0 cos(alfa) -sin(alfa) 0;0 sin(alfa) cos(alfa) 0;0 0 0 1];
function rotz=t(theta)
rotz=[cos(theta) -sin(theta) 0 0;sin(theta) cos(theta) 0 0;0 0 1 0;0 0 0
1];
function trasxyz=t(x,y,z)
trasxyz=[1 0 0 x;0 1 0 y;0 0 1 z;0 0 0 1];
%%Algoritmo de Denavit-Hartenberg
function denhat=t(thetai,di,ai,alfai)
denhat=rotz(thetai)*trasxyz(0,0,di)*trasxyz(ai,0,0)*rotx(alfai);
( ) ( ) ( ) ( )
21
%% Programa de simulación de la cinemática directa de un
%% brazo robot A465 de 6GDL...
clc
%% Desplazamiento en eje Z
d1=13;
d2=0;
d3=0;
d4=13;
d5=0;
d6=3;
%%Desplazamiento en eje X
a1=0;
a2=12;
a3=0;
a4=0;
a5=0;
a6=0;
22
%%Rotación en eje X.
alfa1=pi/2;
alfa2=0;
alfa3=pi/2;
alfa4=-pi/2;
alfa5=pi/2;
alfa6=0;
A01=denhat(theta1,d1,a1,alfa1);
A12=denhat(theta2,d2,a2,alfa2);
A23=denhat(theta3,d3,a3,alfa3);
A34=denhat(theta4,d4,a4,alfa4);
A45=denhat(theta5,d5,a5,alfa5);
A56=denhat(theta6,d6,a6,alfa6);
T06=A01*A12*A23*A34*A45*A56;
%%-----------------------------------------------------------------------
%%
Px=T06(1,4)
Py=T06(2,4)
Pz=T06(3,4)
23
5.3 Comparación de resultados.
Una vez finalizado el programa se procedió a realizar distintos giros en los ejes de
rotación del robot CRS A465 y comprobar mediante el software del robot la
posición en la cual se encuentra el extremo del robot después de efectuarse los
giros. Posterior a esto serán ingresados los datos de los giros de cada articulación
en el programa realizado en MATLAB, con el objetivo de comparar la posición real
del extremo robot, otorgada por el software del mismo con la posición calculada
por MATLAB.
Figura 5.2. Valores articulares y coordenadas de posición del robot CRS A465.
24
Los valores de las coordenadas cartesianas de posición del extremo del robot se
muestran debajo de los encabezados X/TrackX, Y/TrackY y Z.
Una vez entregados los valores por MATLAB, se comparó las Px, Py y Pz tanto de
MATLAB como de Robcomm3.
25
La tabla 5.2 muestra los resultados obtenidos por la simulación en MATLAB y por
el software del robot.
26
6. Obstáculos y alternativas de solución.
27
7. Conclusiones.
Cabe mencionar que para el autor resultó ser una importante herramienta de
aprendizaje que ayudó a la correcta comprensión de dicho tema, esperándose
que sea así también para quienes cursen la materia de robótica en futuros
cursos, o para quien, interesado en el tema, tome como referencia este texto y
busque su ampliación.
28
8. Bibliografía.
[2] John J. Craig, Robótica 3ra. ed., Pearson Educación, México, 2007.
[3] A465 Robot System User Guide, CRS Robotics Corporation Products, Estados
Unidos, diciembre de 2001.
[5] Brian Hahn & Daniel T. Valentine, Essential MATLAB for Engineers and
Scientists Third Edition, Butterworth-Heinemann, 2007.
29