Documentos de Académico
Documentos de Profesional
Documentos de Cultura
3-4 Salom PDF
3-4 Salom PDF
cenidet
“CARACTERIZACIÓN DE UN ROBOT
MANIPULADOR ARTICULADO”
T E S I S
QUE PARA OBTENER EL GRADO DE :
MAESTRO EN CIENCIAS
EN INGENIERIA MECATRÓNICA
P R E S E N T A N :
ING. SALOMÓN ABDALÁ CASTILLO
ING. RAÚL ÑECO CABERTA
DIRECTORES:
M.C. JOSÉ LUIS GONZÁLEZ RUBIO SANDOVAL
DR. JOSÉ RUIZ ASCENCIO
DR. LUIS GERARDO VELA VALDÉS
Salomón A. C.
Agradecimientos
A Laura por todos los desvelos que compartimos juntos y por fin
llegamos a este anhelado sueño.
A mis papas por apoyarme siempre y en todo momento.
A mi apreciable amigo y compañero de tesis Raúl Ñeco por su gran
paciencia conmigo, por todos los conocimientos que me compartió y por que
siempre confió en que este trabajo lo terminaríamos exitosamente.
A mis amigos de la maestría: Manuel N., Sergio R., Yahir M. y en
especial a Alejandro H. y a Raúl Ñ. por brindarme su amistad y por todo el
apoyo que recibí de ustedes durante toda esta época de peripecias,
sufrimientos pero también de muchas glorias.
A mis muy buenos amigos los “mecánicos”: Alfredo R., Sósimo D. y
Jaime V. por todos esos ratos alegres que pudimos compartir y por su
amistad.
A mis compañeros de Cenidet: Marving J. (y Erika), Gabriel y Laura.
Al M.C. Jesús Aguayo por su apoyo para la realización de
adquisición de datos con el robot pues fue una parte importante de este
trabajo.
A mis asesores el Dr. Luis G. Vela, Dr. José Ruiz Ascencio y al M.C.
José L. Glez. Rubio, por su tiempo, paciencia y conocimientos que aportaron
para cristalizar este trabajo.
A mis revisores el Dr. Gerardo V. Guerrero (además gracias por la
asesorías), Dr. Raúl Garduño y Dr. Marco A. Oliver por las observaciones y
sugerencias que proporcionaron para hacer de este trabajo, un excelente
trabajo.
Al Cenidet por abrirme las puertas a sus aulas donde adquirí y
enriquecí mis conocimientos y por colaborar a mi formación académica y
personal.
A la SEP y COSNET por el tiempo que me apoyaron
económicamente en una parte de mis estudios.
A todos ustedes
¡¡¡ GRACIAS !!!
Salomón A. C.
Dedicatorias:
Raúl Ñ. C.
Agradecimientos
Raúl Ñ. C.
TABLA DE CONTENIDO
Pág.
CAPÍTULO 1
INTRODUCCIÓN 1
1.1 Generalidades 2
1.1.1 Robot 2
1.1.2 La robótica 2
1.1.2.1 ¿Qué es la robótica? 3
1.1.3 Manipulador articulado 3
1.2 Antecedentes en el Cenidet 4
1.3 Descripción del problema 5
1.4 Objetivos de la tesis 6
1.5 Alcances de la tesis 7
1.6 Estado del arte 8
1.6.1 Clasificación de los robots basados en las generaciones de sistemas de
control 8
1.6.1.1 La primera generación 8
1.6.1.2 La segunda generación 8
1.6.1.3 La tercera generación 8
1.6.1.4 La cuarta generación 8
1.6.1.5 La quinta generación 9
1.6.2 El robot industrial 9
1.6.2.1 Configuraciones básicas 10
1.6.2.1.1 Configuración polar 10
1.6.2.1.2 Configuración cilíndrica 10
1.6.2.1.3 Configuración de coordenadas cartesianas 11
1.6.2.1.4 Configuración de brazo articulado 11
1.6.3 Construcción 12
1.6.4 Arquitecturas de los robots 12
1.6.4.1 Poliarticulados 13
1.6.4.2 Móviles 13
1.6.4.3 Androides 13
1.6.4.4 Zoomórficos 14
i
1.6.4.5 Híbridos 14
1.6.5 Campos de aplicación 14
1.6.6 Ventajas y desventajas del uso de los robots 15
1.7 El robot “Scorbor ER V plus” 15
CAPÍTULO 2
MODELADO MATEMÁTICO 18
2.1 Cinemática 19
2.1.1 Cinemática directa 20
2.1.2 Cinemática inversa 24
2.2 Dinámica 28
2.2.1 Consideraciones dinámicas 28
2.2.2 Dinámica inversa 28
2.2.2.1 Análisis de la articulación en la base 30
2.2.2.2 Análisis de la articulación en el primer eslabón 30
2.2.2.3 Análisis de la articulación en el segundo eslabón 31
2.2.2.4 Análisis de la articulación en el segundo eslabón
respecto a la carga 33
2.2.2.5 Ecuación de Lagrange 34
2.2.2.6 Fricción 37
2.2.2.7 Par de la articulación 1 (cintura) 38
2.2.2.8 Par de la articulación 2 (hombro) 39
2.2.2.9 Par de la articulación 3 (codo) 40
2.2.2.10 Modelo dinámico inverso par un robot manipulador
articulado 41
2.2.3 Dinámica directa 42
2.2.3.1 Modelo dinámico directo par un robot manipulador
articulado 44
CAPÍTULO 3
SIMULACIÓN EN PC 45
3.1 Cinemática 46
3.1.1 Cinemática directa 46
3.1.2 Cinemática inversa 53
3.2 Dinámica 65
3.2.1 Dinámica inversa 65
3.2.2 Péndulos 66
3.2.2.1 Péndulo simple 66
3.2.2.2 Péndulo horizontal 67
3.2.3 Robot planar 68
3.2.4 Dinámica directa 71
ii
CAPÍTULO 4
VALIDACIÓN 75
CAPÍTULO 5
CONCLUSIONES 103
iii
5.2 Aportaciones 107
5.3 Trabajos futuros 108
APÉNDICE A
EL ROBOT SCORBOT - ER V plus 115
APÉNDICE B
CINEMÁTICA 125
APÉNDICE C
DINÁMICA 130
APÉNDICE D
PÉNDULOS 134
iv
D.1.3 Energía potencial 136
D.2 Rotación de un sólido rígido alrededor de un eje fijo 137
D.3 Modelo del péndulo horizontal 138
D.3.1 Energía cinética 139
D.3.1 Energía potencial 140
D.4 Robot planar 141
D.4.1 Análisis de la articulación en el primer eslabón 141
D.4.2 Análisis de la articulación en el segundo eslabón 142
D.4.3 Análisis de la articulación en el primer eslabón respecto a la carga 143
D.5 Ecuación de Lagrange 144
D.6 Par de la articulación 2 147
D.7 Par de la articulación 3 147
APÉNDICE E
IDENTIDADES 148
APÉNDICE F
PROGRAMAS 150
APÉNDICE G
SUBSISTEMAS EN MATLAB/SIMULINK 159
v
G.1.1.8 Bloque J (ecuación 2-86) 164
G.1.1.9 Bloque K (ecuación 2-93) 165
G.1.1.10 Bloque P (ecuación 2-100) 166
G.1.1.11 Bloque N (ecuación 2-94) 167
G.1.1.12 Bloque O (ecuación 2-101) 167
G.1.2 Dinámica directa 168
G.2 Péndulos 168
G.2.1 Péndulo simple 168
G.2.1.1 Inercias 168
G.2.1.2 Gravitacionales 169
G.2.2 Péndulo horizontal 169
G.2.2.1 Inercias 169
G.3 Robot planar 170
G.3.1 Bloque A_2 170
G.3.2 Bloque B_2 170
G.3.3 Bloque E_2 171
G.3.4 Bloque G_2 171
G.3.5 Bloque C_2 172
G.3.6 Bloque D_2 172
G.3.7 Bloque F_2 173
G.3.8 Bloque H_2 173
APÉNDICE H
ENGRANES 174
APÉNDICE I
PRÁCTICAS 181
vi
I.11 Respuesta de la Práctica 4 196
I.12 Respuesta de la Práctica 5 196
vii
LISTA DE FIGURAS
Pág.
viii
planar 69
Figura 3-16 Gráfica del par requerido por robot planar (2 GDL) 70
Figura 3-17 Gráfica del par requerido por el robot para el hombro (3 GDL) 70
Figura 3-18 Gráfica del par requerido por el robot planar (2 GDL) 70
Figura 3-19 Gráfica del par requerido por el robot para el codo (3 GDL) 70
Figura 3-20 Bloque de la dinámica directa 71
Figura 3-21 Bloque de la dinámica directa e inversa 71
Figura 3-22 Diagrama de bloques principal de la dinámica directa 72
Figura 3-23 Par de entrada a la dinámica directa 73
Figura 3-24 Posición dinámica inversa 73
Figura 3-25 Posición dinámica directa 73
Figura 3-26 Velocidad dinámica inversa 74
Figura 3-27 Velocidad dinámica directa 74
Figura 3-28 Aceleración dinámica inversa 74
Figura 3-29 Aceleración dinámica directa 74
ix
Figura 5-1 Par generado por el motor1 para mover la cintura 106
Figura 5-2 Par en simulación para el movimiento de cintura sin fricción 106
Figura 5-3 Par en simulación para el movimiento de cintura con fricción 106
x
LISTA DE TABLAS
Pág.
xi
SIMBOLOGÍA
xii
ABREVIATURAS Y ACRÓNIMOS
PC Personal Computer
Computadora Personal
D-H Denavit-Hartenberg
3D Tercera Dimensión
xiii
RESUMEN
El uso y desarrollo de los robots son cada vez mayores y esto se debe a las
ventajas que ofrecen. Para que un robot realice las actividades que deseamos, es
necesario conocer su funcionamiento que está regido por sus características
físicas (arquitectura, configuración, grados de libertad, tipo de control, etc.). Las
características básicas están descritas en sus manuales y para conocer otras de
sus características, en este trabajo se obtuvieron los modelos cinemático y
dinámico del robot SCORBOT-ER V plus, denominado robot de almacenes,
que forma parte de la celda de manufactura que existe en Cenidet.
xiv
PREFACIO
En el mundo actual, la robótica es cada vez más común en nuestra vida cotidiana,
incluso en ocasiones ni siquiera nos damos cuenta de su presencia, sin embargo ahí está y el
desarrollo con él crece a pasos agigantados. El Cenidet, no ha sido la excepción por
interesarse por este tema, ya que desde hace varios años en forma aislada ha tratado temas
respecto a la robótica.
La estructura que rige este trabajo es la siguiente y esperamos que sea un inicio de
toda una serie de investigaciones en el tema.
xv
Después del Capítulo 5, se encuentran la Bibliografía General y enseguida las
Páginas Web (al hacer referencia a páginas web se antepone @) que se citan a lo largo del
trabajo de tesis, ordenadas alfabéticamente.
xvi
Capítulo 1 Introducción
Capítulo
1
INTRODUCCIÓN
T odos hemos tenido contacto con un robot o por lo menos tenemos alguna
noción de lo que es un robot. Si nos damos el tiempo para echar un vistazo a
lo que nos rodea, nos daremos cuenta que los robots han estado, están y
seguirán estando presentes cada vez más en nuestra existencia realizando diferentes tareas
dedicadas a hacer más práctica la vida del hombre.
1
“Caracterización de un robot manipulador articulado”
1.1 Generalidades
1.1.1 Robot
Un robot, se puede definir como: Una máquina controlada por una computadora y
programada para moverse, manipular objetos y realizar trabajos a la vez que interacciona
con su entorno [Spong 89]. Los robots son capaces de realizar tareas repetitivas y/o
peligrosas de forma más segura, rápida, barata y precisa que los seres humanos; es por eso
que, su aplicación en la actualidad, es cada vez más variada [@1 Rodríguez 99].
La palabra robot fue usada por primera vez en el año 1921, cuando el escritor checo
Karel Capek (1890-1938) estrena en el teatro nacional de Praga su obra Rossum’s
Universal Robot (R.U.R.). Su origen es la palabra eslava robota, que se refiere al trabajo
realizado de manera forzada [Spong 89]. Actualmente el término robot encierra una gran
cantidad de mecanismos y máquinas en todas las áreas de nuestra vida. Su principal uso se
encuentra en la industria en aplicaciones tales como el ensamblado, la soldadura o la
pintura. En el espacio se han utilizado desde brazos teleoperados para construcción o
mantenimiento hasta los famosos exploradores marcianos Pathfinder. Los robots para
aplicaciones submarinas y subterráneas se incluyen en exploraciones, instalación y
mantenimiento de estructuras. Los robots militares o policías pueden hasta desactivar
bombas y patrullar áreas enemigas. Lo más novedoso en Robótica son los robots aplicados
en la medicina como prótesis y en la agricultura como recolectores. No está excluida por
supuesto el área del entretenimiento, los parques temáticos, las películas y hasta los
juguetes nos sorprenden cada nueva temporada [@ Rodríguez 99].
1.1.2 La robótica
La robótica es una tecnología, que surgió como tal, aproximadamente hacia el año
1960, desde entonces han transcurrido pocos años y el interés que ha despertado es superior
a cualquier previsión que en su nacimiento se pudiera formular, siguiendo un proceso
paralelo a la introducción de las computadoras en las actividades cotidianas de la vida del
hombre, aunque si bien todavía los robots no han encontrado la vía de penetración en los
hogares, pero sí son un elemento ya imprescindible en la mayoría de las industrias [@
Pérez 01].
1
La @ se utiliza cuando la fuente proviene de alguna página en Internet y se puede consultar en “Páginas
Web”
2
Capítulo 1 Introducción
“La base del manipulador es rígida y está sujeta a una plataforma que la sostiene,
generalmente, pero no siempre, del suelo. Cuando se puede mover, comúnmente lo hace a
lo largo de un eje y es para sincronizar el movimiento del robot con el de otros equipos. De
esta manera el movimiento de la base sumado al movimiento tridimensional del
manipulador proporcionan cuatro grados de libertad” [Barrientos 97] [@ Manufactura].
3
“Caracterización de un robot manipulador articulado”
Todos estos trabajos reflejan el gran interés en Cenidet por temas relacionados con
la robótica, pero en ninguno de estos Departamentos se han creado bases para el nacimiento
de una línea de investigación dedicada a la robótica.
4
Capítulo 1 Introducción
1. Laboratorio de diseño
2. Laboratorio de PLC´s
3. Laboratorio de microcontroladores
4. Laboratorio de robótica con visión
5. Laboratorio de máquinas de control numérico
Los dos últimos puntos, se pudieron cubrir con la donación de una celda de
manufactura (figura 1-1) que contiene un par de robots, una cámara, un torno de control
numérico, una banda transportadora y cinco PC´s. Cabe mencionar que esta celda de
manufactura era de uso y después de una visita del Dr. José Ruiz Ascencio (Coordinador
del Posgrado de Ingeniería Mecatrónica) al Tecnológico de Orizaba (lugar donde se
encontraba la celda de manufactura), se determina que la celda esta en buenas condiciones
de la parte mecánica, pero el software para que pudiera trabajar tenia algunas carencias.
Finalmente Dirección General autorizó el traslado de la celda al Cenidet, junto con los
recursos necesarios para su actualización.
5
“Caracterización de un robot manipulador articulado”
manufactura para que en un momento dado esta infraestructura sea accesible para docentes-
investigadores y alumnos.
6
Capítulo 1 Introducción
• Elaborar una serie de prácticas para la utilización del robot como parte de la
infraestructura para el apoyo de la docencia e investigación en el Cenidet.
• Modelos:
o Una vez finalizada la búsqueda de los modelos matemáticos cinemáticos y
dinámicos, se adecuarón al Scorbot-ER V plus.
• Parámetros:
o Se obtuvieron los parámetros del robot sin necesidad de desmontar las
piezas que lo conforman.
• Simulación:
o Se programaron los modelos del robot para simulación, empleando software
ya existente en el Cenidet.
• Validación:
o La validación del modelo se hizo con el robot real, comparando las
mediciones con los resultados de las simulaciones. Se usó la instrumentación
con la que cuenta el Cenidet.
• Prácticas:
o Éstas son para que cualquier profesor-investigador y/o alumno las realice de
forma sencilla y entendible sin necesidad de tener un amplio conocimiento
en la robótica.
7
“Caracterización de un robot manipulador articulado”
8
Capítulo 1 Introducción
“El robot industrial es pues un dispositivo multifuncional, es decir, apto para muy
diversas aplicaciones, al contrario de la máquina automática clásica, fabricada para realizar
de forma repetitiva un tipo determinado de operaciones” [@ Mecanismos].
“El robot industrial se diseña en función de diversos movimientos que debe poder
ejecutar; es decir, lo que importa son sus grados de libertad, su campo de trabajo, su
comportamiento estático y dinámico” [@ Mecanismos].
9
“Caracterización de un robot manipulador articulado”
Los robots industriales están disponibles en una amplia gama de tamaños, formas y
configuraciones físicas. La gran mayoría de los robots comercialmente disponibles en la
actualidad tienen una de estas cuatro configuraciones básicas; estas estructuras tienen
diferentes propiedades en cuanto a espacio de trabajo y accesibilidad a posiciones
determinadas [Ollero 01] [@ Mecanismos]:
10
Capítulo 1 Introducción
11
“Caracterización de un robot manipulador articulado”
Planta
Lateral
1.6.3 Construcción
La construcción de un robot, ya sea una máquina que camine de forma parecida a
como lo hace el ser humano, o un manipulador sin rostro para una línea de producción, es
fundamentalmente un problema de control. Existen dos aspectos principales: mantener un
movimiento preciso en condiciones que varían y conseguir que el robot ejecute una
secuencia de operaciones previamente determinadas. Los avances en estos dos campos (el
primero es esencialmente un problema matemático, y el segundo de tecnología) suministran
la más grande contribución al desarrollo del robot moderno [@ Pérez 01].
12
Capítulo 1 Introducción
por el propio robot. El metamorfismo admite diversos niveles, desde los más elementales
(cambio de herramienta o de efector terminal), hasta los más complejos como el cambio o
alteración de algunos de sus elementos o subsistemas estructurales [@ Pérez 01].
1.6.4.1 Poliarticulados
Bajo este grupo están los robots de muy diversa forma y configuración cuya
característica común es la de ser básicamente sedentarios (aunque excepcionalmente
pueden ser guiados para efectuar desplazamientos limitados) y están estructurados para
mover sus elementos terminales en un determinado espacio de trabajo según uno o más
sistemas de coordenadas y con un número limitado de grados de libertad. En este grupo se
encuentran los manipuladores, los robots cartesianos y algunos robots industriales y se
emplean cuando es preciso abarcar una zona de trabajo relativamente amplia o alargada,
actuar sobre objetos con un plano de simetría vertical o reducir el espacio ocupado en el
suelo [Ollero 01] [Barrientos 97] [@ Pérez 01].
1.6.4.2 Móviles
1.6.4.3 Androides
13
“Caracterización de un robot manipulador articulado”
1.6.4.4 Zoomórficos
1.6.4.5 Híbridos
14
Capítulo 1 Introducción
La fabricación en series pequeñas había quedado hasta ahora fuera del alcance de la
automatización, debido a que requiere una modificación rápida de los equipos de
producción. El robot, como manipulador reprogramable y multifuncional, puede trabajar de
forma continua y con flexibilidad [@ Mecanismos].
Media países
45
40
35
30
% 25
20
15
10
5
0
Soldadura Aplic. Mater. Mecanizado Montaje Paletizado Manipulación Otras
Fuentes: AER, IFR
Figura 1-7 Gráfica de porcentajes de aplicación de los robots en las industrias.
15
“Caracterización de un robot manipulador articulado”
Robot de
almacenes Robot de
supervisión
Banda
transportadora
De acuerdo a lo visto en las secciones 1.6.2.1 y 1.6.4; se puede decir que el Scorbot
ER V plus tiene una configuración de tipo manipulador articulado y cuenta con una
arquitectura poliarticulada.
16
Capítulo 1 Introducción
Cada par generado por los servomotores es transmitido por sistemas de engranaje y
bandas dentadas, su capacidad máxima de carga es de un kilogramo, los elementos que lo
integran están construidos de acero, plástico y aluminio siendo este último el que constituye
la mayor parte de su estructura, su sistema de control está regido por un controlador del tipo
PID. Posee tres grupos denominados de control que en los que se puede trabajar, cada uno
de estos grupos permite reestructurar los parámetros predeterminados teniendo así en cada
uno de ellos condiciones de trabajo distintas.
17
“Caracterización de un robot manipulador articulado”
Capítulo
2
MODELADO MATEMÁTICO
A
ntes que nada, se debe establecer que el modelado de sistemas es tanto un
arte, como una búsqueda científica. Esto significa que sólo pueden
mostrarse ciertos aspectos del tema. Cuando se aplica el término modelado,
no siempre se tiene una idea clara, generando cierta confusión. Por ejemplo, el análisis de
un sistema de control podría interpretarse por el modelado de un sistema como una
abstracción matemática en términos de un conjunto de ecuaciones diferenciales. Las
variaciones en la interpretación puede ser clarificada por medio de una clasificación de
modelos a lo largo de las líneas mostradas en la tabla 2-1 por tanto el nivel más heurístico
es el modelo intuitivo; este modelo frecuentemente sólo existe en la mente de los ingenieros
como una concepción personal del sistema. Tales modelos necesitan tener existencia física
o aspectos matemáticos. En un nivel más tangible se puede hacer una distinción entre los
modelos hechos para el análisis y diseño de controladores y aquellos usados en
investigación detallada de propiedades fundamentales del sistema. [Wellstead 79]
18
Capítulo 2 Modelado matemático
MODELOS
MODELOS
PARA
DINÁMICOS
SIMULACIÓN
Modelos para
Modelos para el,
investigación
análisis de control
empírica de
y diseño
propiedades
Modelos de Modelos de
MODELOS SISTEMA
Simulación por Análisis
INTUITIVOS ACTUAL
Computadora Dinámico
Guía de los tipos
Guías de la
de modelos para Obtenidos por
forma del
simulación y análisis físico
modelo Intuitivo
dinámico
Modelos de Modelos de
Simulación a Identificación
Escala Dinámica
Obtenido por
observación,
replicación e
inferencia
2.1 Cinemática
Se puede hablar dentro del análisis de la cinemática de los robots manipuladores que
existen dos formas de determinar su posición y orientación, la cual depende de que tipo de
variable se esté manejando; estas dos formas son conocidas como la cinemática directa y la
cinemática inversa. Se puede apreciar su relación en la figura 2-1 [Barrientos 97].
Información adicional acerca de la cinemática, así como los movimientos de las
articulaciones se encuentran en el apéndice B.
19
“Caracterización de un robot manipulador articulado”
+ Elevación
z0
z1 z2
+ Giro
Hombro Codo
Punto de origen θ2 θ3
l1 l2
para el análisis
Brazo Antebrazo
θ1 d1
Base
Punto de origen
(a) Marco de referencias para el análisis. (b) Diagrama a bloques del marco de referencias.
Figura. 2-2 Marco de referencias para el Scorbot-ER V plus.
20
Capítulo 2 Modelado matemático
1 θ1 d1 0 0
2 θ2 d2 0 -90
3 θ3 0 l1 0
4 θ4 0 l2 0
5 θ5 0 l3 90
⎡Cθ1 − Sθ1 0 0⎤
⎢ Sθ Cθ 1 0 0 ⎥⎥
0
A = ⎢ 1 2-1
1
⎢ 0 0 1 d1 ⎥
⎢ ⎥
⎣ 0 0 0 1⎦
⎡ Cθ 2 − Sθ 2 0 0⎤
⎢ 0 0 1 0 ⎥⎥
2A=
1 ⎢ 2-2
⎢− Sθ 2 − Cθ 2 0 d2 ⎥
⎢ ⎥
⎣ 0 0 0 1⎦
⎡Cθ3 − Sθ3 0 l1 ⎤
⎢ Sθ Cθ 3 0 0 ⎥⎥
3A =
2 ⎢ 3 2-3
⎢ 0 0 1 0⎥
⎢ ⎥
⎣ 0 0 0 1⎦
21
“Caracterización de un robot manipulador articulado”
⎡Cθ 4 − Sθ 4 0 l2 ⎤
⎢ Sθ Cθ 4 0 0 ⎥⎥
3
A = ⎢ 4 2-4
4
⎢ 0 0 1 0⎥
⎢ ⎥
⎣ 0 0 0 1⎦
⎡Cθ 5 − Sθ 5 0 l3 ⎤
⎢ 0 0 −1 0 ⎥⎥
5A=
4 ⎢ 2-5
⎢ Sθ 5 Cθ 5 0 0⎥
⎢ ⎥
⎣ 0 0 0 1⎦
C = coseno
S = seno
T = 0A5= 0A11A22A33A44A5
La ecuación 2-6 está desplegada en matriz de cofactores que nos proporciona las
posiciones del efector final dados por Px, Py, Pz, situado en un espacio cartesiano.
22
Capítulo 2 Modelado matemático
Por lo que las coordenadas de la posición del efector final en el punto TCP (Tool
Center Point) de la figura 2-2a y tomando como punto de origen el inicio del primer
eslabón también mostrado en la misma figura, se tiene:
⎡ nx sx ax ⎤
0
5 R = ⎢⎢n y sy a y ⎥⎥ 2-9
⎢⎣ n z sz a z ⎥⎦
Los tres vectores n,s,a y TCP son definidos como se ilustra en la figura 2-3. El
vector de aproximación del efector final es “a”; el vector de orientación “s” es la dirección
que especifica la orientación de la mano entre los dedos; el vector normal “n” es
seleccionado para completar la definición del sistema coordinado usando la regla de la
mano derecha. [Fu 88]
23
“Caracterización de un robot manipulador articulado”
TCP
a
Base del
robot
24
Capítulo 2 Modelado matemático
Eje Z
l2 θ3
l1
θ2 Eje X
θ1
rxy y3
x3
Eje Y
⎛y ⎞
θ1 = tan −1 ⎜⎜ 3 ⎟⎟ 2-10
⎝ x3 ⎠
x3
rxy = 2-11
cosθ1
⎛z ⎞
β = tan −1 ⎜ 3 ⎟ 2-13
⎜r ⎟
⎝ xy ⎠
25
“Caracterización de un robot manipulador articulado”
α = cos −1 ⎢ 1
(
⎡ l 2 + rxyz
2 2
l2 )⎤
⎥ 2-14
⎢⎣ 2l1rxyz ⎥⎦
θ2 = β - α 2-15
z2 = l1y 2-17
l2z = z3 - z2 2-21
⎛ l 2 xy ⎞
tan ω = ⎜⎜ ⎟⎟ 2-22
⎝ l2 z ⎠
⎛ l 2 xy ⎞
ω = tan −1 ⎜⎜ ⎟⎟ 2-23
⎝ l2 z ⎠
θ3 = ω - θ2 2-24
Eje Z
l2z
r xyz l2 θ3
ω θ2
Z3
l1
l1z α
β θ2 Eje XY
l1xy
r xy l2xy
26
Capítulo 2 Modelado matemático
Como este ángulo es el mismo para la configuración codo abajo y codo arriba, se
toma la ecuación 2-10 para su determinación.
θ2 = β + α 2-25
θ3 = θ2 - ω 2-26
Eje Z
l2z l2
θ3
ω
r xyz
Z3 l1
l1z
α θ2
β Eje XY
l1xy
r xy l2xy
Figura. 2-6 Proyección en un plano para la configuración codo arriba.
27
“Caracterización de un robot manipulador articulado”
2.2 Dinámica
Un robot manipulador es básicamente un dispositivo posicionador. Para controlar la
posición se deben conocer las propiedades dinámicas del manipulador en orden para
conocer las fuerzas ejercidas sobre él, que son las causantes de su movimiento.
Para el desarrollo del modelo se omitieron los dos últimos grados de libertad, ya que
pertenecen a la orientación del efector final y sus efectos no son significativos para el
comportamiento dinámico del robot. En general se consideró al manipulador como un
sistema rígido, concentrando las masas en el centro de cada eslabón tal y como lo muestra
la figura 2-8; fueron considerados los efectos de fricción provocados por las transmisiones
mecánicas que en este caso se da por engranajes (esta consideración es importante ya que
estos efectos pueden alcanzar un orden de un 25% del par requerido para mover al
manipulador en situaciones típicas [Craig 89]). Esto hace que el sistema sea no
conservativo, sin embargo, el sistema puede ser resuelto por medio de la formulación de
Lagrange y finalmente aplicando la función de disipación de Rayleigh (apéndice C) se
permite adicionar los efectos de fricción al modelo dinámico. En el análisis de cada
eslabón, los efectos de las Energías Cinética y Potencial de los eslabones anteriores (si
existen) repercuten en el análisis del eslabón en cuestión. Las pérdidas debidas a los
huelgos y excentricidades en los engranajes, así como la eficiencia del motor fueron
despreciadas dentro del análisis de la ecuación de movimiento de Lagrange.
28
Capítulo 2 Modelado matemático
Como lo representa la figura 2-7, el modelo dinámico inverso expresa las fuerzas y
pares que intervienen, en función de la evolución temporal de las coordenadas articulares y
sus derivadas.
W= Carga aplicada
mi = Masa del i-ésimo eslabón
g= Constante de gravedad
l= Radio de giro para la masa de la base
a= Longitud del primer eslabón
b= Longitud del segundo eslabón
Ii = Inercia i-ésima del eslabón
Vi = Velocidad lineal del i-ésimo eslabón
Ki = Energía cinética del i-ésimo eslabón
Pi = Energía potencial del i-ésimo eslabón
Eje Z
W
b m2 θ 3 g
a
m1
θ2
θ1
mb Eje X
Eje Y
29
“Caracterización de un robot manipulador articulado”
1 &2
Kb = I bθ1 2-27
2
I b = mb l 2 2-28
1
K b = mb l 2θ&12 2-29
2
Eje Z
W
b θ3
m2 g
a
m1
θ2
Eje XY
2 2
1 ⎛a⎞ 1 ⎛a ⎞
K1 = m1 ⎜ ⎟ θ&22 + m1 ⎜ cosθ 2 ⎟ θ&12 2-30
2 ⎝2⎠ 2 ⎝2 ⎠
30
Capítulo 2 Modelado matemático
1 a2 1 a2
K1 = m1 θ&22 + m1 cos 2 θ 2θ&12 2-31
2 4 2 4
⎡1 1 ⎤
Aplicando la identidad cos2 θ = ⎢ + cos 2θ ⎥ a la ecuación 2-31 se obtiene:
⎣2 2 ⎦
1 1 ⎡1 1 ⎤
K1 = m1a 2θ&22 + m1a 2 ⎢ + cos 2θ 2 ⎥θ&12 2-32
8 8 ⎣2 2 ⎦
1 1 1
K1 = m1a 2θ&22 + m1a 2θ&12 + m1a 2 cos 2θ 2θ&12 2-33
8 16 16
a
P1 = m1 g senθ 2 2-34
2
1 1
K 2 = m2V22 + I 2θ&12 2-35
2 2
x2 = a cosθ 2 + b cos(θ 2 + θ 3 )
1
2-37
2
(
x& 22 = a 2 sen 2θ 2θ&22 + absenθ 2 sen(θ 2 + θ 3 ) θ&22 + θ&2θ&3 )
+ b 2 sen 2 (θ 2 + θ 3 )(θ&2 + θ&3 )
1 2 2-39
4
y 2 = asenθ 2 + bsen(θ 2 + θ 3 )
1
2-40
2
31
“Caracterización de un robot manipulador articulado”
(
y& 22 = a 2 cos 2 θ 2θ&22 + ab cosθ 2 cos(θ 2 + θ 3 ) θ&22 + θ&2θ&3 )
2-42
+ b 2 cos 2 (θ 2 + θ 3 )(θ&2 + θ&3 )
1 2
(
V22 = a 2 sen 2θ 2θ&22 + absenθ 2 sen(θ 2 + θ 3 ) θ&22 + θ&2θ&3 )
+ b 2 sen 2 (θ 2 + θ 3 )(θ&2 + θ&3 ) + a 2 cos 2 θ 2θ&22
1 2
4
( )
2-43
+ ab cosθ 2 cos(θ 2 + θ 3 ) θ&22 + θ&2θ&3
( )
x& 22 + y& 22 = a 2θ&22 + ab θ&22 + θ&2θ&3 cos θ 3 + b 2 (θ&2 + θ&3 )
1
4
2
2-44
I 2 = m2 x22 2-45
2
⎡ ⎤
x = ⎢ a cos θ 2 + b cos (θ 2 + θ 3 )⎥
2 1
2 2-46
⎣ 2 ⎦
1 ⎡
2 ⎣
( ) 1 2⎤
K 2 = m2 ⎢a 2θ&22 + ab θ&22 + θ&2θ&3 cosθ 3 + b 2 (θ&2 + θ&3 ) ⎥
4 ⎦
2-48
⎡ ⎤
+ m2θ&12 ⎢a 2 cos 2 θ 2 + ab cosθ 2 cos(θ 2 + θ 3 ) + b 2 cos 2 (θ 2 + θ 3 )⎥
1 1
2 ⎣ 4 ⎦
K2 =
1
2 2
( 1
8
)
m2 a 2θ&22 + m2 ab θ&22 + θ&2θ&3 cosθ 3 + m2 b 2 (θ&2 + θ&3 )
1 2
32
Capítulo 2 Modelado matemático
P2 = m2 gasenθ 2 + m2 gbsen(θ 2 + θ 3 )
1
2-50
2
1 1
K c = WVc2 + I cθ&12 2-51
2 2
(
x& c2 = a 2 sen 2θ 2θ&22 + 2absenθ 2 sen(θ 2 + θ 3 ) θ&22 + θ&2θ&3 )
2-55
+ b 2 sen 2 (θ 2 + θ 3 )(θ&2 + θ&3 )
2
(
y& c2 = a 2 cos 2 θ 2θ&22 + 2ab cosθ 2 cos(θ 2 + θ 3 ) θ&22 + θ&2θ&3 )
2-58
+ b 2 cos 2 (θ 2 + θ 3 )(θ&2 + θ&3 )
2
(
Vc2 = a 2 sen 2θ 2θ&22 + 2absenθ 2 sen(θ 2 + θ 3 ) θ&22 + θ&2θ&3 )
+ b 2 sen 2 (θ 2 + θ 3 )(θ&2 + θ&3 ) + a 2 cos 2 θ 2θ&22
2
2-59
( )
+ 2ab cosθ 2 cos(θ 2 + θ 3 ) θ&22 + θ&2θ&3 + b 2 cos 2 (θ 2 + θ 3 )(θ&2 + θ&3 )
2
33
“Caracterización de un robot manipulador articulado”
( )
Vc2 = a 2θ&22 + 2ab θ&22 + θ&2θ&3 cos θ 3 + b 2 (θ&2 + θ&3 )
2
2-60
I c = Wxc2 2-61
2
( )
K c = Wa 2θ&22 + Wab θ&22 + θ&2θ&3 cosθ 3 + Wb 2 (θ&2 + θ&3 )
1 1
2
2
L = ΣK i − ΣPi 2-66
Donde
L = Kb + K1 + K2 + Kc – Pb – P1 – P2 – Pc 2-67
34
Capítulo 2 Modelado matemático
1 1 1 1
L= mb l 2θ&12 + m1a 2θ&22 + m1a 2θ&12 + m1a 2 cos 2θ 2θ&12
2 8 16 16
2 2
( )
+ m2 a 2θ&22 + m2 ab θ&22 + θ&2θ&3 cosθ 3 + m2 b 2 (θ&2 + θ&3 )
1 1 1
8
2
2
( )
+ Wa 2θ&22 + Wab θ&22 + θ&2θ&3 cosθ 3 + Wb 2 (θ&2 + θ&3 )
1 1
2
2
d ∂L ∂L
τ= − 2-69
dt ∂q& ∂q
∂L 1 1
= mb l 2θ&1 + m1a 2θ&1 + m1a 2 cos 2θ 2θ&1
∂θ1
& 8 8
35
“Caracterización de un robot manipulador articulado”
d ∂L 1 1
= mb l 2θ&&1 + m1a 2θ&&1 + m1a 2 cos 2θ 2θ&&1
dt ∂θ1
& 8 8
1 1 1
− m1a 2 sen2θ 2θ&1θ&2 + m2 a 2θ&&1 + m2 a 2 cos 2θ 2θ&&1
4 2 2
− m2 a sen2θ 2θ1θ 2 + m2 ab cosθ 2 cos(θ 2 + θ 3 )θ&&1
2 & &
− m2 absenθ 2 cos(θ 2 + θ 3 )θ&1θ&2 − m2 ab cosθ 2 sen(θ 2 + θ 3 )(θ&2 + θ&3 )θ&1
∂L
=0 2-72
∂θ 1
∂L 1
= m1a 2θ&2 + m2 a 2θ&2 + m2 ab(2θ&2 + θ&3 )cosθ 3
1
∂θ 2 4
& 2
d ∂L 1
= m1a 2θ&&2 + m2 a 2θ&&2 + m2 ab(2θ&&2 + θ&&3 )cosθ 3
1
dt ∂θ 2 4
& 2
36
Capítulo 2 Modelado matemático
∂L 1
= − m1a 2 sen2θ 2θ&12
∂θ 2 8
∂L 1
= m2 abθ&2 cosθ 3 + m2 b 2 (θ&2 + θ&3 )
1
∂θ&3 2 4 2-76
+ Wabθ&2 cosθ 3 + Wb 2 (θ&2 + θ&3 )
d ∂L 1
= m2 ab cosθ 3θ&&2 − m2 absenθ 3θ&2θ&3 + m2 b 2 (θ&&2 + θ&&3 )
1 1
dt ∂θ 3 2
& 2 4 2-77
+ Wab cosθ 3θ&&2 − Wabsenθ 3θ&2θ&3 + Wb 2 (θ&&2 + θ&&3 )
∂L
∂θ 3 2
( )
= − m2 ab θ&22 + θ&2θ&3 senθ 3 − m2 ab cosθ 2 sen(θ 2 + θ 3 )θ&12
1 1
2
( )
− m2 b 2 sen2(θ 2 + θ 3 )θ&12 − Wab θ&22 + θ&2θ&3 senθ 3
1
8 2-78
− Wab cosθ 2 sen(θ 2 + θ 3 )θ&12 − Wb 2 sen2(θ 2 + θ 3 )θ&12
1
2
− m2 gb cos(θ 2 + θ 3 ) − Wgb cos(θ 2 + θ 3 )
1
2
2.2.2.6 Fricción
Una vez obtenido el modelo del manipulador para sus tres primeros grados de
libertad, se expresa de forma general, como se muestra el la ecuación 2-80, dentro de la
cual se incluyó un modelo simple de fricción viscosa siendo el par proporcional a la
variable generalizada θ& , es decir τ Fricción = vθ& donde v es una constante de fricción viscosa
[Craig 89]. Por lo tanto, el par de fricción viscosa puede expresarse como [Lewis 93]:
37
“Caracterización de un robot manipulador articulado”
[ ]
FV q& = vec viθ&i 2-79
Donde:
Donde:
M (q ) Matriz de inercia
τ Par requerido
Donde:
38
Capítulo 2 Modelado matemático
Inercias
1 1 1 1
A = mb l 2 + m1a 2 + m1a 2 cos 2θ 2 + m2 a 2 + m2 a 2 cos 2θ 2
8 8 2 2
+ m2 ab cosθ 2 cos(θ 2 + θ 3 ) + m2 b 2 + m2 b 2 cos 2(θ 2 + θ 3 )
1 1
8 8 2-83
+ Wa 2 + Wa 2 cos 2θ 2 + 2Wab cosθ 2 cos(θ 2 + θ 3 )
1 1
2 2
+ Wb 2 + Wb 2 cos 2(θ 2 + θ 3 )
1 1
2 2
B=0 2-84
C=0 2-85
1
J =− m1 a 2 sen 2θ 2θ&1θ&2 − m 2 a 2 sen 2θ 2θ&1θ&2
4
− m 2 absen θ 2 cos (θ 2 + θ 3 )θ&1θ&2
− m 2 ab cos θ 2 sen (θ 2 + θ 3 )(θ&2 + θ&3 )θ&1
Efectos gravitacionales
M=0 2-87
Efectos de fricción
39
“Caracterización de un robot manipulador articulado”
Inercias
D=0 2-90
1 1
E = m1a 2 + a 2 m2 + m2 ab cosθ 3 + m2 b 2 + Wa 2 + 2Wab cosθ 3 + Wb 2 2-91
4 4
1 1
F = m2 ab cosθ 3 + m2 b 2 + Wab cosθ 3 + Wb 2 2-92
2 4
Efectos Gravitacionales
Efectos de fricción
Inercias
G=0 2-97
40
Capítulo 2 Modelado matemático
1 1
H = m2 ab cosθ 3 + m2 b 2 + Wab cosθ 3 + Wb 2 2-98
2 4
1
I = m2 b 2 + Wb 2 2-99
4
1
2
1
P = − m2 absenθ 3θ&2θ&3 − Wabsenθ 3θ&2θ&3 + m2 absenθ 3 θ&22 + θ&2θ&3
2
( )
− m2 ab cosθ 2 sen(θ 2 + θ 3 )θ&12 − m2 b 2 sen2(θ 2 + θ 3 )θ&12
1 1
2-100
2 8
( )
+ Wabsenθ 3 θ&22 + θ&2θ&3 − Wab cosθ 2 sen(θ 2 + θ 3 )θ&12 − Wb 2 sen2(θ 2 + θ 3 )θ&12
1
2
Efectos gravitacionales
Efectos de fricción
Tomando en cuenta los cofactores nulos mostrados en las ecuaciones 2-84, 2-85, 2-
87, 2-90 y 2-97; finalmente se puede rescribir la ecuación 2-81 como:
Por lo que la ecuación 2-103 representa el modelo dinámico inverso del robot
manipulador articulado que se aplica para el “Scorbot-ER V plus”
41
“Caracterización de un robot manipulador articulado”
θ&&1 = X 2-107
θ&&2 = Y 2-108
θ&&3 = Z 2-109
τ 1 = AX + J + v1θ&1 2-110
τ 2 = EY + FZ + K + N + v2θ&2 2-111
τ 3 = HY + IZ + P + O + v3θ&3 2-112
T = τ 1 − J − v1θ&1 2-113
Q = τ 2 − K − N − v2θ&2 2-114
S = τ 3 − P − O − v3θ&3 2-115
42
Capítulo 2 Modelado matemático
Sustituyendo los pares en las ecuaciones 2-113, 2-114 y 2-115, sufren la siguiente
modificación:
T = AX 2-116
Q = EY + FZ 2-117
S = HY + IZ 2-118
⎡A 0 0⎤
det ⎢⎢ 0 E F ⎥⎥ = A[EI − FH ] 2-119
⎢⎣ 0 H I ⎥⎦
⎡T 0 0⎤
⎢Q E F ⎥⎥
⎢
⎢S H I ⎥⎦ T [EI − FH ] T
X=⎣ = = 2-120
⎡A 0 0⎤ A[EI − FH ] A
⎢0 E F ⎥⎥
⎢
⎢⎣ 0 H I ⎥⎦
⎡A T 0⎤
⎢0 Q F ⎥⎥
⎢
⎢0 S I ⎥⎦ A[QI − FS ] QI − FS
Y= ⎣ = = 2-121
⎡A 0 0 ⎤ A[EI − FH ] EI − FH
⎢0 E F ⎥⎥
⎢
⎢⎣ 0 H I ⎥⎦
⎡A 0 T⎤
⎢0 E Q ⎥⎥
⎢
⎢0 H S ⎥⎦ A[ES − QH ] ES − QH
Z=⎣ = = 2-122
⎡A 0 0⎤ A[EI − FH ] EI − FH
⎢0 E F ⎥⎥
⎢
⎢⎣ 0 H I ⎥⎦
43
“Caracterización de un robot manipulador articulado”
T
θ&&1 = 2-123
A
I [τ 2 − K − N − v2θ&2 ]− F [τ 3 − P − O − v3θ&3 ]
θ&&2 = 2-124
IE − FH
E [τ 3 − P − O − v3θ&3 ] − H [τ 2 − K − N − v2θ&2 ]
θ&&3 = 2-125
IE − FH
Por lo que las ecuaciones 2-119, 2-120 y 2-121 representan el modelo dinámico
directo del robot manipulador articulado que se aplica para el “Scorbot-ER V plus”.
44
Capítulo 3 Simulación en PC
Capítulo
3
SIMULACIÓN EN PC
45
“Caracterización de un robot manipulador articulado”
Para llevar a cabo las simulaciones de los modelos obtenidos y vistos en el capítulo
2 fue necesaria la utilización de una herramienta que permitiera su fácil manejo. Dado que
el objetivo de esta tesis no es la de desarrollar un simulador, se optó por emplear un
software que cubre las características pertinentes para estas necesidades, siendo Matlab el
que presentó mayores ventajas para trabajar con él (como la disponibilidad, el
conocimiento, lo amigable que es, su modo gráfico, etc.). En un inicio se trabajó en
lenguaje “C”, en el cual se realizó la simulación de la cinemática directa y dicho trabajo es
incluido dentro del el apéndice F, sin embargo, se decidió cambiar de software por las
ventajas que ofrece Matlab.
3.1 Cinemática
Para los modelos cinemáticos, la simulación fue realizada en el editor de Matlab, el
cual cuenta con una opción gráfica en 3D que permite rotar la figura obtenida, en este caso
un modelo de alambre, desde cualquier ángulo que se desee, como se puede apreciar en las
figuras de la 3-1 a la 3-6. Se optó por esta herramienta computacional por que se buscaba
tener una representación gráfica de los modelos, para visualizar las posibles formas
geométricas que permitan adquirir la estructura del robot para alcanzar una posición y
orientación deseada.
%PRESENTACIÓN
46
Capítulo 3 Simulación en PC
47
“Caracterización de un robot manipulador articulado”
%Dibujo de la base
sphere (20)
x2=cos(rad1)*cos(rad2)*link1;
y2=sin(rad1)*cos(rad2)*link1;
z2=sin(rad2)*link1;
%azul
line ([x1,x2],[y1,y2],[z1,z2],'LineWidth',8,'Color',[0 0 1])
x4= (((cos(rad1)*cos(rad2)*cos(rad3))-
(cos(rad1)*sin(rad2)*sin(rad3)))*link2)+(cos(rad1)*cos(rad2)*link1);
y4= (((sin(rad1)*cos(rad2)*cos(rad3))-
(sin(rad1)*sin(rad2)*sin(rad3)))*link2)+(sin(rad1)*cos(rad2)*link1);
z4=
(((sin(rad2)*cos(rad3))+(cos(rad2)*sin(rad3)))*link2)+(sin(rad2)*link1);
%Vector N
fen=2;%Factor de escalamiento
nxa= cos(rad1)*cos(rad2)*cos(rad3)*cos(rad4)*cos(rad5);
nxb= -cos(rad1)*sin(rad2)*sin(rad3)*cos(rad4)*cos(rad5);
nxc= -cos(rad1)*cos(rad2)*sin(rad3)*sin(rad4)*cos(rad5);
nxd= -cos(rad1)*sin(rad2)*cos(rad3)*sin(rad4)*cos(rad5);
nxe= -sin(rad1)*sin(rad5);
48
Capítulo 3 Simulación en PC
nx= (nxa+nxb+nxc+nxd+nxe)*fen;
nya= sin(rad1)*cos(rad2)*cos(rad3)*cos(rad4)*cos(rad5);
nyb= -sin(rad1)*sin(rad2)*sin(rad3)*cos(rad4)*cos(rad5);
nyc= -sin(rad1)*cos(rad2)*sin(rad3)*sin(rad4)*cos(rad5);
nyd= -sin(rad1)*sin(rad2)*cos(rad3)*sin(rad4)*cos(rad5);
nye= -cos(rad1)*sin(rad5);
ny= (nya+nyb+nyc+nyd+nye)*fen;
nza= -sin(rad2)*cos(rad3)*cos(rad4)*cos(rad5);
nzb= -cos(rad2)*sin(rad3)*cos(rad4)*cos(rad5);
nzc= sin(rad2)*sin(rad3)*sin(rad4)*cos(rad5);
nzd= -cos(rad2)*cos(rad3)*sin(rad4)*cos(rad5);
nz= (nza+nzb+nzc+nzd)*-fen;
%negra
line ([x4,x4+nx],[y4,y4+ny],[z4,z4+nz],'LineWidth',2.5,'Color',[0 0 0])
%Vector S
fes=1.5;%Factor de escalamiento
sxa= -cos(rad1)*cos(rad2)*cos(rad3)*cos(rad4)*sin(rad5);
sxb= cos(rad1)*sin(rad2)*sin(rad3)*cos(rad4)*sin(rad5);
sxc= cos(rad1)*cos(rad2)*sin(rad3)*sin(rad4)*sin(rad5);
sxd= cos(rad1)*sin(rad2)*cos(rad3)*sin(rad4)*sin(rad5);
sxe= -sin(rad1)*cos(rad5);
sx= (sxa+sxb+sxc+sxd+sxe)*fes;
sya= -sin(rad1)*cos(rad2)*cos(rad3)*cos(rad4)*sin(rad5);
syb= sin(rad1)*sin(rad2)*sin(rad3)*cos(rad4)*sin(rad5);
syc= sin(rad1)*cos(rad2)*sin(rad3)*sin(rad4)*sin(rad5);
syd= sin(rad1)*sin(rad2)*cos(rad3)*sin(rad4)*sin(rad5);
sye= cos(rad1)*cos(rad5);
sy= (sya+syb+syc+syd+sye)*fes;
sza= sin(rad2)*cos(rad3)*cos(rad4)*sin(rad5);
szb= cos(rad2)*sin(rad3)*cos(rad4)*sin(rad5);
szc= -sin(rad2)*sin(rad3)*sin(rad4)*sin(rad5);
szd= cos(rad2)*cos(rad3)*sin(rad4)*sin(rad5);
sz= (sza+szb+szc+szd)*-fes;
%verde
line ([x4,x4-sx*2],[y4,y4-sy*2],[z4,z4-sz*2],'LineWidth',2.5,'Color',[0 1
0])
%gris
line ([x4,x4+sx],[y4,y4+sy],[z4,z4+sz],'LineWidth',6,'Color',[0.5 0.5
0.5])
49
“Caracterización de un robot manipulador articulado”
%gris
line ([x4,x4-sx],[y4,y4-sy],[z4,z4-sz],'LineWidth',6,'Color',[0.5 0.5
0.5])
%Vector A
fea=3.5;%Factor de escalamiento
axa= cos(rad1)*cos(rad2)*cos(rad3)*sin(rad4);
axb= -cos(rad1)*sin(rad2)*sin(rad3)*sin(rad4);
axc= cos(rad1)*cos(rad2)*sin(rad3)*cos(rad4);
axd= cos(rad1)*sin(rad2)*cos(rad3)*cos(rad4);
ax= (axa+axb+axc+axd)*fea;
aya= sin(rad1)*cos(rad2)*cos(rad3)*sin(rad4);
ayb= -sin(rad1)*sin(rad2)*sin(rad3)*sin(rad4);
ayc= sin(rad1)*cos(rad2)*sin(rad3)*cos(rad4);
ayd= sin(rad1)*sin(rad2)*cos(rad3)*cos(rad4);
ay= (aya+ayb+ayc+ayd)*fea;
aza= -sin(rad2)*cos(rad3)*sin(rad4);
azb= -cos(rad2)*sin(rad3)*sin(rad4);
azc= -sin(rad2)*sin(rad3)*cos(rad4);
azd= cos(rad2)*cos(rad3)*cos(rad4);
az= (aza+azb+azc+azd)*-fea;
%amarrilo
line
([x4,x4+ax*1.2],[y4,y4+ay*1.2],[z4,z4+az*1.2],'LineWidth',2.5,'Color',[1
1 0])
50
Capítulo 3 Simulación en PC
Cuadro de diálogo
X= 21.25037
Y= 21.25037
Z= 30.05256
El resultado de la ubicación del efector final aparece de inmediato una vez que se
terminó de introducir el último dato requerido por el programa, dicho resultado está
expresado en centímetros en un espacio cartesiano. Otra opción de visualizar el resultado de
la simulación es a través de la gráfica que aparece en forma simultánea con los resultados,
la gráfica tiene la opción de cambiar la perspectiva, razón por la que el usuario tiene un
espacio disponible en tercera dimensión (3D) que si lo desea puede “voltear” y/o girar en
cualquier dirección al robot. La visualización gráfica de los resultados se puede apreciar en
las figuras 3-1, 3-2 y 3-3 que se muestran a continuación.
51
“Caracterización de un robot manipulador articulado”
52
Capítulo 3 Simulación en PC
%PRESENTACIÓN
%Tipo de configuración
ca = input ('\nLa simulación la desea con configuración Codo Arriba (1) o
Codo Abajo (0): ');
53
“Caracterización de un robot manipulador articulado”
R=sqrt(x^2+y^2+z^2);
L=link1+link2+link3;
end
%Dibujo de la base
sphere (20)
if (x==0)
if y<0
rxy=y*-1;
end
rxy=y;
teta2=beta+alfa;
54
Capítulo 3 Simulación en PC
if x<0
teta2=beta+alfa+180;
end
f=link1*sin(teta2);
h=z-f;
mu=asin(h/link2);
teta3=teta2-mu;
g=link1*cos(teta2);
gx=g*cos(teta1);
gy=g*sin(teta1);
x1=0;
y1=0;
z1=0;
%Vector N
fen=2;%Factor de escalamiento
nxa= cos(rad1)*cos(rad2)*cos(rad3)*cos(rad4)*cos(rad5);
nxb= -cos(rad1)*sin(rad2)*sin(rad3)*cos(rad4)*cos(rad5);
nxc= -cos(rad1)*cos(rad2)*sin(rad3)*sin(rad4)*cos(rad5);
nxd= -cos(rad1)*sin(rad2)*cos(rad3)*sin(rad4)*cos(rad5);
nxe= -sin(rad1)*sin(rad5);
nx= (nxa+nxb+nxc+nxd+nxe)*fen;
nya= sin(rad1)*cos(rad2)*cos(rad3)*cos(rad4)*cos(rad5);
nyb= -sin(rad1)*sin(rad2)*sin(rad3)*cos(rad4)*cos(rad5);
nyc= -sin(rad1)*cos(rad2)*sin(rad3)*sin(rad4)*cos(rad5);
nyd= -sin(rad1)*sin(rad2)*cos(rad3)*sin(rad4)*cos(rad5);
nye= -cos(rad1)*sin(rad5);
55
“Caracterización de un robot manipulador articulado”
ny= (nya+nyb+nyc+nyd+nye)*fen;
nza= -sin(rad2)*cos(rad3)*cos(rad4)*cos(rad5);
nzb= -cos(rad2)*sin(rad3)*cos(rad4)*cos(rad5);
nzc= sin(rad2)*sin(rad3)*sin(rad4)*cos(rad5);
nzd= -cos(rad2)*cos(rad3)*sin(rad4)*cos(rad5);
nz= (nza+nzb+nzc+nzd)*-fen;
%negra
line ([x4,x4+nx],[y4,y4+ny],[z4,z4+nz],'LineWidth',2.5,'Color',[0 0
0])
%Vector S
fes=1.5;%Factor de escalamiento
sxa= -cos(rad1)*cos(rad2)*cos(rad3)*cos(rad4)*sin(rad5);
sxb= cos(rad1)*sin(rad2)*sin(rad3)*cos(rad4)*sin(rad5);
sxc= cos(rad1)*cos(rad2)*sin(rad3)*sin(rad4)*sin(rad5);
sxd= cos(rad1)*sin(rad2)*cos(rad3)*sin(rad4)*sin(rad5);
sxe= -sin(rad1)*cos(rad5);
sx= (sxa+sxb+sxc+sxd+sxe)*fes;
sya= -sin(rad1)*cos(rad2)*cos(rad3)*cos(rad4)*sin(rad5);
syb= sin(rad1)*sin(rad2)*sin(rad3)*cos(rad4)*sin(rad5);
syc= sin(rad1)*cos(rad2)*sin(rad3)*sin(rad4)*sin(rad5);
syd= sin(rad1)*sin(rad2)*cos(rad3)*sin(rad4)*sin(rad5);
sye= cos(rad1)*cos(rad5);
sy= (sya+syb+syc+syd+sye)*fes;
sza= sin(rad2)*cos(rad3)*cos(rad4)*sin(rad5);
szb= cos(rad2)*sin(rad3)*cos(rad4)*sin(rad5);
szc= -sin(rad2)*sin(rad3)*sin(rad4)*sin(rad5);
szd= cos(rad2)*cos(rad3)*sin(rad4)*sin(rad5);
sz= (sza+szb+szc+szd)*-fes;
%verde
line ([x4,x4-sx*2],[y4,y4-sy*2],[z4,z4-
sz*2],'LineWidth',2.5,'Color',[0 1 0])
%gris
line ([x4,x4+sx],[y4,y4+sy],[z4,z4+sz],'LineWidth',6,'Color',[0.5 0.5
0.5])
%gris
line ([x4,x4-sx],[y4,y4-sy],[z4,z4-sz],'LineWidth',6,'Color',[0.5 0.5
0.5])
%Vector A
fea=3.5;%Factor de escalamiento
56
Capítulo 3 Simulación en PC
axa= cos(rad1)*cos(rad2)*cos(rad3)*sin(rad4);
axb= -cos(rad1)*sin(rad2)*sin(rad3)*sin(rad4);
axc= cos(rad1)*cos(rad2)*sin(rad3)*cos(rad4);
axd= cos(rad1)*sin(rad2)*cos(rad3)*cos(rad4);
ax= (axa+axb+axc+axd)*fea;
aya= sin(rad1)*cos(rad2)*cos(rad3)*sin(rad4);
ayb= -sin(rad1)*sin(rad2)*sin(rad3)*sin(rad4);
ayc= sin(rad1)*cos(rad2)*sin(rad3)*cos(rad4);
ayd= sin(rad1)*sin(rad2)*cos(rad3)*cos(rad4);
ay= (aya+ayb+ayc+ayd)*fea;
aza= -sin(rad2)*cos(rad3)*sin(rad4);
azb= -cos(rad2)*sin(rad3)*sin(rad4);
azc= -sin(rad2)*sin(rad3)*cos(rad4);
azd= cos(rad2)*cos(rad3)*cos(rad4);
az= (aza+azb+azc+azd)*-fea;
%amarillo
line
([x4,x4+ax*1.2],[y4,y4+ay*1.2],[z4,z4+az*1.2],'LineWidth',2.5,'Color',[1
1 0])
while tetac1>360
tetac1=tetac1-360;
end
while tetah1>360
tetah1=tetah1-360;
end
while tetaco1>360
tetaco1=tetaco1-360;
end
57
“Caracterización de un robot manipulador articulado”
while tetah1<-360
tetah1=tetah1+360;
end
while tetaco1<-360
tetaco1=tetaco1+360;
end
fprintf('\tCintura =%12.2f\n',tetac1);
fprintf('\tHombro =%12.2f\n',tetah1);
fprintf('\tCodo =%12.2f\n',tetaco1);
break%Finaliza el programa
end
teta2=beta-alfa;
if x<0
teta2=beta-alfa+180;
end
a=link1*sin(teta2);
b=link1*cos(teta2);
c=rxy-b;
d=z-a;
w=atan(d/c);
teta3=w-teta2;
bx=b*cos(teta1);
by=b*sin(teta1);
x1=0;
y1=0;
z1=0;
58
Capítulo 3 Simulación en PC
%Vector N
fen=2;%Factor de escalamiento
nxa= cos(rad1)*cos(rad2)*cos(rad3)*cos(rad4)*cos(rad5);
nxb= -cos(rad1)*sin(rad2)*sin(rad3)*cos(rad4)*cos(rad5);
nxc= -cos(rad1)*cos(rad2)*sin(rad3)*sin(rad4)*cos(rad5);
nxd= -cos(rad1)*sin(rad2)*cos(rad3)*sin(rad4)*cos(rad5);
nxe= -sin(rad1)*sin(rad5);
nx= (nxa+nxb+nxc+nxd+nxe)*fen;
nya= sin(rad1)*cos(rad2)*cos(rad3)*cos(rad4)*cos(rad5);
nyb= -sin(rad1)*sin(rad2)*sin(rad3)*cos(rad4)*cos(rad5);
nyc= -sin(rad1)*cos(rad2)*sin(rad3)*sin(rad4)*cos(rad5);
nyd= -sin(rad1)*sin(rad2)*cos(rad3)*sin(rad4)*cos(rad5);
nye= -cos(rad1)*sin(rad5);
ny= (nya+nyb+nyc+nyd+nye)*fen;
nza= -sin(rad2)*cos(rad3)*cos(rad4)*cos(rad5);
nzb= -cos(rad2)*sin(rad3)*cos(rad4)*cos(rad5);
nzc= sin(rad2)*sin(rad3)*sin(rad4)*cos(rad5);
nzd= -cos(rad2)*cos(rad3)*sin(rad4)*cos(rad5);
nz= (nza+nzb+nzc+nzd)*-fen;
%negra
line ([x4,x4+nx],[y4,y4+ny],[z4,z4+nz],'LineWidth',2.5,'Color',[0 0 0])
%Vector S
fes=1.5;%Factor de escalamiento
59
“Caracterización de un robot manipulador articulado”
sxa= -cos(rad1)*cos(rad2)*cos(rad3)*cos(rad4)*sin(rad5);
sxb= cos(rad1)*sin(rad2)*sin(rad3)*cos(rad4)*sin(rad5);
sxc= cos(rad1)*cos(rad2)*sin(rad3)*sin(rad4)*sin(rad5);
sxd= cos(rad1)*sin(rad2)*cos(rad3)*sin(rad4)*sin(rad5);
sxe= -sin(rad1)*cos(rad5);
sx= (sxa+sxb+sxc+sxd+sxe)*fes;
sya= -sin(rad1)*cos(rad2)*cos(rad3)*cos(rad4)*sin(rad5);
syb= sin(rad1)*sin(rad2)*sin(rad3)*cos(rad4)*sin(rad5);
syc= sin(rad1)*cos(rad2)*sin(rad3)*sin(rad4)*sin(rad5);
syd= sin(rad1)*sin(rad2)*cos(rad3)*sin(rad4)*sin(rad5);
sye= cos(rad1)*cos(rad5);
sy= (sya+syb+syc+syd+sye)*fes;
sza= sin(rad2)*cos(rad3)*cos(rad4)*sin(rad5);
szb= cos(rad2)*sin(rad3)*cos(rad4)*sin(rad5);
szc= -sin(rad2)*sin(rad3)*sin(rad4)*sin(rad5);
szd= cos(rad2)*cos(rad3)*sin(rad4)*sin(rad5);
sz= (sza+szb+szc+szd)*-fes;
%verde
line ([x4,x4-sx*2],[y4,y4-sy*2],[z4,z4-sz*2],'LineWidth',2.5,'Color',[0 1
0])
%gris
line ([x4,x4+sx],[y4,y4+sy],[z4,z4+sz],'LineWidth',6,'Color',[0.5 0.5
0.5])
%gris
line ([x4,x4-sx],[y4,y4-sy],[z4,z4-sz],'LineWidth',6,'Color',[0.5 0.5
0.5])
%Vector A
fea=3.5;%Factor de escalamiento
axa= cos(rad1)*cos(rad2)*cos(rad3)*sin(rad4);
axb= -cos(rad1)*sin(rad2)*sin(rad3)*sin(rad4);
axc= cos(rad1)*cos(rad2)*sin(rad3)*cos(rad4);
axd= cos(rad1)*sin(rad2)*cos(rad3)*cos(rad4);
ax= (axa+axb+axc+axd)*fea;
aya= sin(rad1)*cos(rad2)*cos(rad3)*sin(rad4);
ayb= -sin(rad1)*sin(rad2)*sin(rad3)*sin(rad4);
ayc= sin(rad1)*cos(rad2)*sin(rad3)*cos(rad4);
ayd= sin(rad1)*sin(rad2)*cos(rad3)*cos(rad4);
ay= (aya+ayb+ayc+ayd)*fea;
aza= -sin(rad2)*cos(rad3)*sin(rad4);
azb= -cos(rad2)*sin(rad3)*sin(rad4);
azc= -sin(rad2)*sin(rad3)*cos(rad4);
azd= cos(rad2)*cos(rad3)*cos(rad4);
60
Capítulo 3 Simulación en PC
az= (aza+azb+azc+azd)*-fea;
%amarillo
line
([x4,x4+ax*1.2],[y4,y4+ay*1.2],[z4,z4+az*1.2],'LineWidth',2.5,'Color',[1
1 0])
while tetah>360
tetah=tetah-360;
end
while tetaco>360
tetaco=tetaco-360;
end
while tetah<-360
tetah=tetah+360;
end
while tetaco<-360
tetaco=tetaco+360;
end
61
“Caracterización de un robot manipulador articulado”
fprintf('\tCintura =%12.2f\n',tetac);
fprintf('\tHombro =%12.2f\n',tetah);
fprintf('\tCodo =%12.2f\n',tetaco);
62
Capítulo 3 Simulación en PC
Cuadro de diálogo
La solución la desea con configuración Codo Arriba (1) o Codo Abajo (0): 0
63
“Caracterización de un robot manipulador articulado”
64
Capítulo 3 Simulación en PC
3.2. Dinámica
Tao1
A
Goto31
SubSystem
Product6 TAO1
DINAMICA EN LA CINTURA
Tao2 Tao3
H
E
Goto32 Subsystem4 Goto33
Subsystem Product3
Product1
alfa2 alfa2
From17 From19
TAO2 TAO3
I
F 0
0
Subsystem1 Subsystem5
Product4 Display2
Product2 Display1
alfa3 alfa3
P
K
From18 From20
Subsystem2 Subsystem6
O
N
Subsystem3 Subsystem7
DINAMICA EN EL HOMBRO DINAMICA EN EL CODO
65
“Caracterización de un robot manipulador articulado”
3.2.2 Péndulos
Puesto que la estructura del robot permite que éste se comporte tanto como un
péndulo simple como uno horizontal; es posible comparar estos modelos con el del robot y
sus respectivas simulaciones, es decir, los de un GDL contra el de tres GDL con las
condiciones iniciales iguales y esperando resultados similares. Se hace la aclaración de que
no se incluyó ningún tipo de pérdidas (fricciones) en los modelos para este capítulo.
INERCIAS
-1
SubSystem
Product4 Gain1 Péndulo Simple
[alfa2] 0
From7 Display
GRAVITACIONALES
66
Capítulo 3 Simulación en PC
9 Los parámetros y la distribución de masas fueron las mismas en ambos modelos así
como las condiciones iniciales y finales, en las que se tienen para ambos modelos
una posición inicial de 0º (con respecto a la horizontal) y un desplazamiento de 90º,
en un tiempo de 4.5 seg.
8 8
7 7
6 6
5 5
Par Par
(N-m) (N-m)
4 4
3 3
2 2
1 1
0 0
0 2 4 6 8 10 12 14 16 18 0 2 4 6 8 10 12 14 16 18
Tiempo (s) Tiempo (s)
Figura 3-10 Gráfica del par requerido por el péndulo Figura 3-11 Gráfica del par requerido por el robot
simple (1 GDL). para el hombro (3 GDL).
Se observa que las señales mostradas en las figuras 3-10 y 3-11 son idénticas. Esto
permite tener un primer nivel de validación del modelo de tres GDL presentado en el
capítulo 2.
alfa1
-1
From1
Product1 Ajuste Péndulo Horizontal
INERCIAS
0
Subsystem
PARAMETROS Entrada 1
Display
Figura 3-12 Diagrama de bloques principal de la dinámica inversa del péndulo horizontal.
67
“Caracterización de un robot manipulador articulado”
9 Los parámetros y la distribución de masas fueron las mismas en ambos modelos así
como las condiciones iniciales y finales, en las que se tienen para ambos modelos
una posición inicial de 0º (con respecto a la horizontal) y un desplazamiento de 90º,
en un tiempo de 3.3 seg.
9 Se utilizó para la entrada una trayectoria de posición cúbica.
0.3 0.25
0.2
0.2
0.15
0.1 0.1
0.05
0
Par Par
(N-m) 0
(N-m)
-0.1 -0.05
-0.1
-0.2
-0.15
-0.3
-0.2
-0.25
-0.4 0 2 4 6 8 10 12 14
0 2 4 6 8 10 12 14
Tiempo (s)
Tiempo (s)
Figura 3-13 Gráfica del par requerido por el Figura 3-14 Gráfica del par requerido por
péndulo horizontal (1 GDL). el robot para la cintura (3 GDL).
Nuevamente se observa que las señales mostradas en las figuras 3-13 y 3-14 son
similares. Esto permite tener un primer nivel de validación del modelo de tres GDL
presentado en el capítulo 2.
La comparación del modelo para un robot planar de dos GDL con el modelo del
Scorbot-ER V plus se realizó bajo las siguientes condiciones:
68
Capítulo 3 Simulación en PC
ESLABÓN 1
A_2
INERCIA
Product
[alfa2]
From2 -1
INERCIA 1 0
Product1
Par articulación 1
[alfa3]
E_2
From1
CENTRIFUGAS Y
DE CORIOLIS
G_2
PARAMETROS Entrada 2 Entrada 3
GRAVITACIONALES
C_2 ESLABÓN 2
INERCIA 2
Product2
[alfa2]
From4 1
GRAVITACIONALES1
69
“Caracterización de un robot manipulador articulado”
6 6
5.5 5.5
5 5
4.5 4.5
Par 4 Par 4
(N-m) (N-m)
3.5 3.5
3 3
2.5 2.5
2 2
1.5 1.5
0 2 4 6 8 10 12 14 0 2 4 6 8 10 12 14
Tiempo (s) Tiempo (s)
Figura 3-16 Gráfica del par requerido Figura 3-17 Gráfica del par requerido por el
por el robot planar (2 GDL). robot para el hombro (3 GDL).
2 2
1.5 1.5
1 1
Par Par
(N-m) (N-m)
0.5 0.5
0 0
-0.5 -0.5
0 2 4 6 8 10 12 14 0 2 4 6 8 10 12 14
Tiempo (s) Tiempo (s)
Figura 3-18 Gráfica del par requerido por Figura 3-19 Gráfica del par requerido por
el robot planar (2 GDL). el robot para el codo (3 GDL).
De nueva cuenta se observa que las señales mostradas en las figuras 3-16 y 3-17 son
iguales y lo mismo sucede con las figuras 3-18 y 3-19. Esto permite tener un nivel de
validación más confiable del modelo de tres GDL presentado en el capítulo 2. Esto se debe
a la complejidad incrementada en el robot planar comparada con la de los péndulos.
70
Capítulo 3 Simulación en PC
Dinámica directa
θ
τ D θ
θ
Figura 3-20 Bloque de la Dinámica Directa.
71
“Caracterización de un robot manipulador articulado”
Tao1
A
Goto31
SubSystem
Product6 TAO1
Entrada 1 Entrada 2 Entrada 3
[alfa1]
PARAMETROS J 0
TRAYECTORIAS From16
SubSystem1 Display
DINAMICA EN LA CINTURA
Tao2 Tao3
H
E
Goto32 Goto33
Subsystem4
Subsystem Product3
Product1
[alfa2] [alfa2]
From19
From17 TAO3
TAO2
I
F 0
0
Subsystem5
Subsystem1 Product4 Display2
Product2 Display1
[alfa3] [alfa3]
P
K
From20
From18
Subsystem6
Subsystem2
O
N
Subsystem7
Subsystem3
DINAMICA EN EL HOMBRO DINAMICA EN EL CODO
Display3
E
[Tao2] Subsystem36
From22
K I Product5
Subsystem40 Subsystem37
N Product9 1 1
R2D
Subsystem41 F s s
I Product11 Integrator2 Integrator3 Radians Posicion - hombro
Subsystem38 to Degrees1
Subsystem42
H Product8 0
DINAMICA EN EL HOMBRO
[Tao3] Subsystem39 Display4
From24
O
Subsystem43
P Product10
Subsystem44
F
Subsystem45
[Tao2] Subsystem35
From23
K I Product14
Subsystem24 Subsystem32
N Product16 1 1
R2D
Subsystem29 F s s
H Product13 Integrator4 Integrator5 Radians Posicion - codo
Subsystem34 to Degrees3
Subsystem46
H 0
Product15
0
[Tao3] Subsystem33 Display5
Compesacion
From25
O
DINAMICA EN EL CODO
Subsystem30
P Product12
Subsystem31
E
Subsystem47
72
Capítulo 3 Simulación en PC
Par 0
(N-m)
-2
-4
-6
0 2 4 6 8 10 12 14 16 18
Tiempo (s)
140 140
130 130
120 120
110 110
100 100
Grados Grados
90 90
80 80
70 70
60 60
50 50
40 40
0 2 4 6 8 10 12 14 16 18 0 2 4 6 8 10 12 14 16 18
Tiempo (s) Tiempo (s)
Figura 3-24 Posición dinámica inversa. Figura 3-25 Posición dinámica directa.
En este par de gráficas anteriores se puede notar que las señales son idénticas, tanto
la señal de posición que entra al modelo dinámico inverso como la trayectoria de posición
generada en el modelo directo.
73
“Caracterización de un robot manipulador articulado”
0.5 0.5
0.4 0.4
0.3 0.3
0.2 0.2
0.1 0.1
Rad/seg. 0 Rad/seg. 0
-0.1 -0.1
-0.2 -0.2
-0.3 -0.3
-0.4 -0.4
-0.5 -0.5
0 2 4 6 8 10 12 14 16 18 0 2 4 6 8 10 12 14 16 18
Tiempo (s) Tiempo (s)
Figura 3-26 Velocidad dinámica inversa. Figura 3-27 Velocidad dinámica directa.
En este par de gráficas anteriores se puede notar que las señales son idénticas tanto
la señal de velocidad que entra al modelo dinámico inverso como la trayectoria de
velocidad generada en el modelo directo
0.5 0.5
0.4 0.4
0.3 0.3
0.2 0.2
0.1 0.1
Rad/seg2. Rad/seg2.
0 0
-0.1 -0.1
-0.2 -0.2
-0.3 -0.3
-0.4 -0.4
-0.5 -0.5
0 2 4 6 8 10 12 14 16 18 0 2 4 6 8 10 12 14 16 18
Tiempo (s) Tiempo (s)
Figura 3-28 Aceleración dinámica inversa. Figura 3-29 Aceleración dinámica directa.
En este par de gráficas anteriores se puede notar que las señales son idénticas tanto
la señal de aceleración que entra al modelo dinámico inverso como la trayectoria de
aceleración generada en el modelo directo.
74
Capítulo 4 Validación
Capítulo
4
VALIDACIÓN
L
a validación es el proceso de llevar a un nivel aceptable la confianza del
usuario referente a que cualquier inferencia acerca de un sistema que se
derive de la simulación es correcta. Es imposible probar que cualquier
simulador es un modelo correcto o “verdadero” del sistema real. [Shannon 88]
Aún las porciones más limitadas del mundo real son demasiado complejas para ser
totalmente comprendidas y descritas por el esfuerzo humano. Casi todas las situaciones de
problemas son extremadamente complejas, ya que contienen un número casi infinito de
elementos, variables, parámetros, relaciones, restricciones, etc. Cuando intentamos
construir un modelo, podemos incluir un número infinito de hechos y dedicar mucho
tiempo a recolectar hechos detallados acerca de cualquier situación y definiendo las
relaciones entre ellos. En consecuencia, se deben ignorar la mayoría de las características
reales de un evento en estudio y abstraer de la situación real sólo aquellos aspectos que
75
“Caracterización de un robot manipulador articulado”
conformen una visión idealizada del evento real. Todos los modelos son simplificaciones y
abstracciones del mundo real. [Shannon 88]
X= 21.25037
Y= 21.25037
Z= 30.05256
76
Capítulo 4 Validación
Esta validación es medular en este trabajo de tesis, puesto que por los resultados
obtenidos se pudo determinar que el modelo para el Scorbot-ER V plus es válido. Fueron
necesarias varias etapas para poder tener una comparación correcta de los resultados y a
continuación se muestran.
77
“Caracterización de un robot manipulador articulado”
CONTROLADOR
τ=iK m n 4-1
Donde:
τ es el par a la salida de la relación engranaje
i es la corriente de armadura en el motor
Km es la constante de par
n es la relación de engranaje
En el Scrobot-ER V plus existen varios modos de operación (ver apéndice A), sin
embargo para realizar secuencias de movimiento se necesita hacerlo a través del lenguaje
de programación ACL, con el cual se generaron rutinas que describieran ciertas trayectorias
en el efector final. Para cada movimiento fue necesario crear un programa específico, éstos
se muestran en el apéndice F.
78
Capítulo 4 Validación
embargo, es posible cambiarlo a perfil de velocidad trapezoidal (ver apéndice A). Como
existe la posibilidad de utilizar el perfil parabólico o el trapezoidal, antes de iniciar las
pruebas se utilizó un comando del ACL llamado “Mprofile paraboloid” que es el encargado
de ordenarle al controlador que siga el perfil de velocidad deseado (en este caso parabólico)
y así se aseguraba que el perfil de velocidad fuera parabólico.
PARABÓLICO
A continuación en tabla 4-3, se muestra la lista del equipo y material utilizado en las
pruebas físicas:
• Flexómetro
• Masking type
• Verniere
• Regla
79
“Caracterización de un robot manipulador articulado”
Los datos antes mostrados, se obtuvieron de la placa del motor y de hojas de datos del
fabricante.
Para que el modelo dinámico contara con los datos más precisos, fue necesario
hacer la estimación del peso en cada eslabón, ya que, como dato inicial, sólo se tenía el
peso total del manipulador; información obtenida del manual del robot que servía de
referencia, pero de ningún modo, para la introducción de parámetros en el modelo
dinámico.
Para conocer los datos acerca del peso de cada eslabón con la mayor precisión
posible y sin tener que desmontar las piezas (por lo menos los dos eslabones), fue necesario
que se midiera cada pieza del manipulador (a las que se pudo tener acceso) para obtener su
volumen y estimar su peso. Con las herramientas que se tenían al alcance.
Una vez con todas las mediciones hechas, se dibujaron todas las piezas en un
software llamado Pro-Enginner, el cual fue de mucha ayuda, ya que una vez finalizado el
dibujo de la pieza, al software se le proporcionan los datos de las unidades de longitud y la
densidad del material; datos suficientes para que el software calcule el área, volumen y
peso total de la pieza, así como información adicional que no se requirió como se muestra
en la tabla 4-4.
Los resultados que se obtuvieron de las estimaciones de los pesos de los eslabones
del robot, están concentrados en la tabla 4-5, donde considerando que el peso total de
manipulador es de 11.500 kg. y obteniendo un total de 10.400 kg. se hace la suposición que
los gramos restantes pertenecen al efector final y a la base del manipulador, pieza que en su
80
Capítulo 4 Validación
interior contiene elementos que no fue posible medir, además que como se mencionó
anteriormente, no se contó con la posibilidad de desmontar el robot, ni con la herramienta
de exactitud que tal vez estas mediciones requerían.
En la figura 4-4, se muestra el primer eslabón del robot Scorbot-ER V plus dibujado
en Pro-Enginner, para que sirva de forma ilustrativa en el proceso que se llevó a cabo para
cada pieza.
81
“Caracterización de un robot manipulador articulado”
82
Capítulo 4 Validación
83
“Caracterización de un robot manipulador articulado”
Las condiciones de prueba para todos los experimentos son las mismas que se
dieron a conocer en las secciones anteriores.
Las figuras que contienen gráficas obtenidas de los experimentos, en todos los
casos, se tuvo un muestreo de 20 segundos con el osciloscopio, sin embargo, en ocasiones
se “recortaron” las gráficas por los tiempos muertos existentes para una mejor visualización
de los resultados.
Los puntos a y b determinan medio ciclo, por lo que del punto a al punto c sería un
ciclo completo.
84
Capítulo 4 Validación
Posición inicial: 0º
100º Posición final: 100º
Desplazamiento total: 100º
85
“Caracterización de un robot manipulador articulado”
Prueba 1
Motor1 CH 1
Motor2 CH 2
Motor3 CH 3
Programa EJE1B
Archivo TEK00000
.PCX
Velocidad 70%
Desplazamiento ≈100°
Movimiento CIRCULAR
86
Capítulo 4 Validación
Corriente en el Motor 1
0.8
0.6
Corriente (A) 0.4
0.2
0 CH1
-0.2 1 3 5 7 9 11 13 15 17
-0.4
-0.6
-0.8
Tiempo (s)
La relación de engranaje: n = N2 / N1
∴ n =0.2 x 127.1
N1 = 120 dientes = 25.42
N2 = 24 dientes MOTOR
Esta relación de engranaje se considera de este modo, puesto que se tiene un arreglo
de tipo planetario el cual se ve a detalle en el apéndice H.
87
“Caracterización de un robot manipulador articulado”
0.6
0.5
0.4
0.3 b
0.2 Par
Par (N-m)
0.1
0
-0.1 20 per. media móvil
3 8 13 18 (Par)
-0.2
-0.3
-0.4
a c
-0.5
-0.6
Tiempo (s)
0.3
b
0.2
0.1
Par 0
N-m
(N-m)
-0.1
-0.2 a c
-0.3
-0.4
0 2 4 6 8 10 12 14
TIME(s)
Tiempo
Figura 4-10 Gráfica del par en prueba 1 en simulación.
Al comparar los puntos abc de las figuras 4-9 y 4-10, se puede apreciar la similitud
en forma y magnitud que tienen uno respecto a otro.
88
Capítulo 4 Validación
150º
Posición inicial: - 27º respecto a la horizontal
Posición final: 123º respecto a la horizontal
Desplazamiento total: 150º
89
“Caracterización de un robot manipulador articulado”
Prueba 2
Motor1 CH 1
Motor2 CH 2
Motor3 CH 3
Programa EJE2B
Archivo TEK00001
.PCX
Velocidad 70%
Desplazamiento ≈150°
Movimiento CIRCULAR
Figura 4-12 Pantalla del osciloscopio en la prueba 2.
90
Capítulo 4 Validación
Corriente en el Motor 2
0.6
0.4
Corriente (A)
0.2
0 CH2
-0.2 3 8 13
-0.4
-0.6
Tiempo (s)
La relación de engranaje: n = N1 / N2
N1 = 72 dientes ∴ n = 4 x127.1
= 508.4
N2 = 18 dientes MOTOR
Para una mejor comprensión del tema, existe un apéndice que contiene información
acerca de los engranes. Ver apéndice H.
91
“Caracterización de un robot manipulador articulado”
La figura 4-15 muestra la señal de par requerido por la articulación del hombro,
obtenida al transformar la señal de corriente demandada por el motor2 en la prueba 2.
10
a c
8
6
4
Par
Par (N-m)
2
0
-2 3 20 per. media móvil
8 13 (Par)
-4
-6
-8
b
-10
Tiempo (s)
La figura 4-16 muestra la señal de par requerido para el movimiento del hombro en
simulación bajo las mismas condiciones de la prueba 2
8
a
c
6
ParN-m
(N-m) 2
-2
b
-4
0 2 4 6 8 10 12 14 16 18
TIME (s)
Tiempo
Al comparar los puntos abc de las figuras 4-15 y 4-16, se puede apreciar la similitud
en forma y magnitud que tienen uno respecto a otro.
92
Capítulo 4 Validación
251º
Posición inicial: - 63º respecto a la horizontal
Posición final: 188º respecto a la horizontal
Desplazamiento total: 251º
93
“Caracterización de un robot manipulador articulado”
Prueba 3
Motor1 CH 1
Motor2 CH 2
Motor3 CH 3
Programa EJE3B
Archivo TEK00002
.PCX
Velocidad 70%
Desplazamiento ≈251°
Trayectoria CIRCULAR
Figura 4-18.- Pantalla del osciloscopio en la prueba 3.
94
Capítulo 4 Validación
Corriente en el Motor 3
0.5
0.3
Corriente (A)
0.1
CH3
-0.1
0 5 10 15 20
-0.3
-0.5
Tiempo (s)
∴ n = 1.3 x127.1
= 169.4
N1 = 24 dientes
N2 = 72 dientes
N3 = 18 dientes MOTOR
Para una mejor comprensión del tema, existe un apéndice que contiene información
acerca de los engranes. Ver apéndice H.
95
“Caracterización de un robot manipulador articulado”
La figura 4-21 muestra la señal de par requerido por la articulación del codo,
obtenida al transformar la señal de corriente demandada por el motor3 en la prueba 3.
8
6
b
4
Par
Par (N-m)
2
0
20 per. media móvil
-2 0 5 10 15 20 (Par)
-4
a c
-6
-8
Tiempo (s)
1.5
0.5
Par 0
(N-m)
-0.5
a
-1
c
-1.5
-2
-2.5
0 2 4 6 8 10 12 14 16 18
Tiempo (s)
Figura 4-22 Gráfica del par en prueba 3 en simulación.
Al comparar los puntos abc de las figuras 4-21 y 4-22, se puede apreciar la similitud
en forma y magnitud que tienen uno respecto a otro.
96
Capítulo 4 Validación
Hombro Codo
Posición inicial: 0º 90º
Posición final: 90º -90º
Desplazamiento total: 90º 180º
97
“Caracterización de un robot manipulador articulado”
Prueba 4
Motor1 CH 1
Motor2 CH 2
Motor3 CH 3
Programa PRUE4
Archivo TEK00003
.PCX
Velocidad 70%
Movimientos CIRCULARES
98
Capítulo 4 Validación
0.7
0.5
Corriente (A)
0.3
0.1 CH2
-0.1 CH3
1 6 11 16
-0.3
-0.5
-0.7
Tiempo (s)
Las relaciones de engranajes, son las mismas que en las pruebas 2 y 3 para los
motores 2 y 3 respectivamente.
Para una mejor comprensión del tema, existe un apéndice que contiene información
acerca de los engranes. Ver apéndice H.
La figura 4-26 muestra la señal de par requerido por la articulación del hombro,
obtenida al transformar la señal de corriente demandada por el motor2 en la prueba 4.
99
“Caracterización de un robot manipulador articulado”
10
9
8 a
7 c
6
5
HOMBRO
Par (N-m)
4
3
2 20 per. media móvil
1
0
(HOMBRO)
-1
-2
1 6 11 16
-3
-4
-5
b
Tiempo (s)
c
5.5
a
5
4.5
Par
N-m 4
(N-m)
3.5
2.5
2
b
1.5
0 2 4 6 8 10 12 14 16 18
TIME(s)
Tiempo
Al comparar los puntos abc de las figuras 4-26 y 4-27, se puede apreciar la similitud
en forma y magnitud que tienen uno respecto a otro.
100
Capítulo 4 Validación
La figura 4-28 muestra la señal de par requerido por la articulación del codo,
obtenida al transformar la señal de corriente demandada por el motor3 en la prueba 4.
1.5
a c
1
0.5
0
CODO
Par (N-m)
-0.5 1 6 11 16
-1 20 per. media móvil
(CODO)
-1.5
-2
-2.5
b
-3
Tiempo (s)
0.5
c
0 a
-0.5
Par
N-m
(N-m)
-1
-1.5
-2
b
-2.5
0 2 4 6 8 10 12 14 16 18
TIME
Tiempo (s)
Figura 4-29 Gráfica del par en prueba 4 en simulación (codo).
Al comparar los puntos abc de las figuras 4-28 y 4-29, se puede apreciar la similitud
en forma y magnitud que tienen uno respecto a otro.
101
“Caracterización de un robot manipulador articulado”
102
Capítulo 5 Conclusiones
Capítulo
5
CONCLUSIONES
103
“Caracterización de un robot manipulador articulado”
Como paso inicial para la validación, fue necesario determinar los parámetros
involucrados en cada uno de los modelos.
El diseño y creación de prácticas para uso didáctico así como para la tesis en
general, implicó un estudio extenso de los manuales de operación y programación del
Scorbot-ER V plus; en la programación se adquirió el conocimiento de los comandos de
ACL más básicos para la elaboración de rutinas.
La realización de una interfase del tipo DB 50 (que en realidad es una extensión que
va del controlador al robot), que se deja lista para trabajar con cualquier otro experimento
que se proponga o incluso, cuantas veces sea necesario, repetir las mediciones descritas en
el capítulo 4.
Realmente escribir todo lo que se hizo durante esta investigación sería muy extenso,
por ello esta tesis sólo se concentra en lo más importante para satisfacer los alcances
planteados en el inicio.
104
Capítulo 5 Conclusiones
5.1 Resultados
Para comprobar y dar por hecho el correcto desarrollo de los modelos Cinemáticos
se llevó a cabo una comparación entre el modelo directo y el modelo inverso. Esta
comparación se refiere a que las salidas resultantes del modelo cinemático directo, fueron
introducidas en las entradas del modelo cinemático inverso y viceversa, con ello su pudo
apreciar una total congruencia en los resultados, ya que se “recuperaba” el valor inicial para
cada caso. Esto fue suficiente para validarlos por software, ya que el desarrollo de ambos
fue por métodos completamente diferentes obteniendo resultados exactos, tal y como se
pudo ver en el capítulo 3.
Por otro lado, los resultados que se obtuvieron del desarrollo del modelo dinámico
inverso en un primer grado de validación, como el que se hizo en el capítulo 3 al comparar
simples modelos desarrollados para péndulos y para un robot planar contra el modelo del
Scorbot-ER V plus, fueron satisfactorios al dar resultados iguales, esto dio una credibilidad
importante al desarrollo del modelo.
Se debe tomar en cuenta que cuando se realiza una prueba a sistemas físicos es
imposible realizarlas bajo condiciones ideales, ya que existen factores que son imposibles
de controlar o eliminar. Estos factores pueden ser el no contar con una fuente de
alimentación limpia de ruidos (en este caso los picos de corriente que se pueden presentar),
la precisión en el equipo de muestreo, la repetibilidad del sistema, las pérdidas en los
actuadores, fricciones no lineales, el propio desgaste físico del sistema, etc. Estas
condiciones se pueden despreciar cuando se lleva acabo una simulación en PC donde se
pueden tener condiciones ideales al igual que el propio modelo. Los sistemas presentan
normalmente no linealidades en su comportamiento, y las perturbaciones que se presentan
resultan difíciles de determinar o de controlar. Por éstas y otras razones se presentan estas
diferencias en cuanto a la magnitud del par requerido, sin embargo la tendencia general de
la señal es muy similar y se comporta de acuerdo a predicciones lógicas. Otro factor de
influencia en la diferencia de resultados se debe a la instrumentación tan rudimentaria que
se utilizó para medir los eslabones del robot y las piezas que lo conforman.
105
“Caracterización de un robot manipulador articulado”
0.6
0.5
0.4
0.3
0.2 Par
Par (N-m)
0.1
0
-0.1 20 per. media móvil
3 8 13 18 (Par)
-0.2
-0.3
-0.4
-0.5
-0.6
Tiempo (s)
0.25 0.3
0.2
0.2
0.15
0.1 0.1
0.05
0
Par Par
(N-m) 0 (N-m)
-0.1
-0.05
-0.1 -0.2
-0.15
-0.3
-0.2
-0.25 -0.4
0 2 4 6 8 10 12 14 0 2 4 6 8 10 12 14
Tiempo (s) Tiempo (s)
Figura 5-2 Par en simulación para el movimiento de Figura 5-3 Par en simulación para el movimiento de
cintura sin fricción. cintura con fricción.
106
Capítulo 5 Conclusiones
5.2 Aportaciones
Una de las aportaciones principales de este trabajo de tesis, es la puesta en
operación del robot Scorbot-ER V plus; por los motivos que se explican en el siguiente
párrafo.
Los pasos necesarios que se siguieron para la puesta en operación del robot
Scorbot-ER V plus, se documentaron y se les dio el formato de prácticas de laboratorio
(una serie de seis prácticas), para que la infraestructura del laboratorio de mecatrónica del
Cenidet tenga un mejor aprovechamiento. Estas prácticas ya fueron realizadas por
alumnado del centro con gran éxito.
107
“Caracterización de un robot manipulador articulado”
El limitar los trabajos futuros que se pueden realizar en robótica, sería muy
aventurado e injusto, puesto que en este campo a pesar de que ya tiene formado más de
medio siglo, la investigación y desarrollo están al día.
• La publicación de este trabajo de tesis para darle difusión y demostrar los alcances
que se tienen en la Maestría en Ingeniería Mecatrónica en crecimiento.
o Caracterización del robot del área de calidad que tiene un GDL adicional.
108
Bibliografía general
BIBLIOGRAFÍA GENERAL
[Baltazar 94]
Dinámica de manipuladores de eslabones rígidos mediante simulación numérico-gráfica
Martín Eduardo Baltazar López
Departamento de Ingeniería Mecánica
Tesis de Maestría, Cenidet, 1994
[Barrientos 97]
Fundamentos de robótica
A. Barrientos, L. F. Peñin, C. Balaguer, R. Aracil
Mc Graw Hill, 1997
[Craig 89]
Introduction to robotics mechanics and control
John J. Craig
Addison-Wesley Publishing Company, 1989
TJ 211.C67 1989
[Fu 88]
Robótica
K. S. Fu, R. C. González, C. S. G. Lee
Mc Graw Hill, 1988
TJ 211. F8218 1988
109
“Caracterización de un robot manipulador articulado”
[Groover 86]
Industrial robotics technology, programming, and applications
Mikell P. Groover, Mitchell Meiss, Roger N. Nagel, Nicholas G. Odrey
McGraw Hill, 1986
TS 191.8 G766i 1986
[Hernández 03]
Implementación de una red neuronal holográfica, para el control de un brazo robot
articulado
José Juan Hernández
Departamento de Ciencias de la Computación
Tesis de Maestría, Cenidet, 2003
[Ibarra 99]
Regulación de un sistema electromecánico subactuado
Jorge Luis Ibarra López
Departamento de Ingeniería Electrónica
Tesis de Maestría, Cenidet, 1999
[Iglesias 91]
Implementación de un sistema de visión para la detección, reconocimiento y manipulación
de piezas de ensamble por medio de un robot de uso industrial
Arturo Iglesias Zárate
Departamento de Ciencias Computacionales
Tesis de Maestría, Cenidet, 1991
[Juvinall 99]
Fundamentos de diseño de ingeniería mecánica
Robert C. Juvinall
Limusa Noriega Editores, 1999
TJ 230 .J8818 1999
[Koivo 89]
Fundamentals for control of robotics manipulators
Antti J. Koivo
Wiley, 1989
TJ 211 K65F 1989
110
Bibliografía general
[Koren 87]
Robotics for engineers
Yoran Koren
McGraw Hill, 1987
TJ 211 K67 1987
[Lewis 93]
Control of robot manipulators
F.L. Lewis, C.T. Abdalla, D.M. Dawson
Mac Millan Publishing Company, 1993
TJ 211.35 L48C 1993
[López]
Detallador de tareas de visión robótica
Juan Gabriel López Solórzano
Departamento de Ciencias de la Computación
Tesis de Maestría, Cenidet (en elaboración)
[Megahed 93]
Principles of robot modelling and simulation
Said M. Megahed
John Willey and Sons, 1993
[Norton 99]
Diseño de máquinas
Robert L. Norton
Prentice Hall, 1999
TJ 230 .N 6718 1999
[Núñez 91]
Diseño e implementación de un sistema de programación para un manipulador industrial
Oscar Fernando Núñez Olvera
Departamento de Ingeniería Electrónica
Tesis de Maestría, Cenidet, 1991
[Ogata 87]
Dinámica de sistemas
Katsuhiko Ogata
Prentice Hall, 1987
TA 168 .O33D 1987
111
“Caracterización de un robot manipulador articulado”
[Ollero 01]
Robótica: Manipuladores y robots móviles
Aníbal Ollero Baturone
Alfaomega marcombo, 2001
TJ 211. O43 2001
[Peralta]
Esquema para la integración de sistemas de visión robótica
Edson Ignacio Peralta Abundes
Departamento de Ciencias de la Computación
Tesis de Maestría, Cenidet (en revisión)
[Pérez 02]
Diseño e implementación de un sistema de calibración para un sistema de visión robótica
Agustín Pérez Ramírez
Departamento de Ciencias de la Computación
Tesis de Maestría, Cenidet, 2002
[Sandler 91]
Robotics
Ben-Zion Sandler
Prentice Hall, 1991
TJ 213.5729r 1991
[Shigley 90]
Diseño en ingeniería mecánica
Joseph Edwar Shigley, Charles R. Mischke
Mc Graw Hill, 1990
Quinta edición (cuarta en español)
TJ 230 .S779D 1990
[Sciavicco 96]
Modeling and control of robot manipulators
Lorenzo Sciavicco, Bruno Siciliano
McGraw Hill, 1996
112
Bibliografía general
[Shannon 88]
Simulación de sistemas
Robert E. Shannon
Trillas, 1988
TA 343. S 5218 1988
[Spong 89]
Robot dynamics and control
Mark W. Spong, M. Vidyasagar
John Wiley & Sons, 1989
TJ 211. 4566 1989
[Wellstead 79]
Introduction to physical system modelling
P. E. Wellstead
Academic Press, 1979
113
“Caracterización de un robot manipulador articulado”
PÁGINAS WEB
[@ Basañez]
http://www.metalunivers.com/1pm/Pm02/Robotica.html
[@ Brandeis]
http://www.demo.cs.brandeis.edu/golem
http://www.demo.cs.brandeis.edu/golem/simulator/poscilate1.mov
[@ Manufactura]
http://www2.ing.puc.cl/icmcursos/procesos/apuntes/cap4/42/421/
[@ Mecanismos]
http://webs.demasiado.com/ing_industrial/ingenieria/mecanismos/
[@ Motores 98]
http://www.angelfire.com/sc/felipemeza/pub1.html
[@ Pérez 01]
http://www.geocities.com/Eureka/Office/4595/robotica.html
[@ Rodríguez 99]
http://mailweb.udlap.mx/~tesis/razo_r_af/c2.html
114
Apéndice A El robot Scorbot – ER V plus
Apéndice
A
115
“Caracterización de un robot manipulador articulado”
A.1 Especificaciones
116
Apéndice A El robot Scorbot – ER V plus
117
“Caracterización de un robot manipulador articulado”
118
Apéndice A El robot Scorbot – ER V plus
119
“Caracterización de un robot manipulador articulado”
120
Apéndice A El robot Scorbot – ER V plus
121
“Caracterización de un robot manipulador articulado”
122
Apéndice A El robot Scorbot – ER V plus
A.5 Interfase
123
“Caracterización de un robot manipulador articulado”
124
Apéndice B Cinemática
Apéndice
B
CINEMÁTICA
125
“Caracterización de un robot manipulador articulado”
z z
l2 l2
l1 l1 l1 l2
θ θ θ
l2 z
l2 z
d
l1 d l1 d l1
l2
126
Apéndice B Cinemática
• θi: Es el ángulo que forman los ejes xi-1 y xi medido en un plano perpendicular al eje
zi-1, utilizando la regla de la mano derecha. Se trata de un parámetro variable en
articulaciones giratorias.
• di: Es la distancia a lo largo del eje zi-1 desde el origen del sistema de coordenadas
(i-1)-ésimo hasta la intersección del eje zi-1 con el eje xi. Se trata de un parámetro
variable en articulaciones prismáticas.
• ai: Es la distancia a lo largo del eje xi que va desde la intersección del eje zi-1 con el
eje xi hasta el origen del sistema i-ésimo, en el caso de articulaciones giratorias. En
el caso de articulaciones prismáticas, se calcula como la distancia más corta entre
los ejes zi-1 y zi.
• αi: Es el ángulo de separación del eje zi-1 y el eje zi , medido en un plano
perpendicular al eje xi , utilizando la regla de la mano derecha.
• D-H 1.- Numerar los eslabones comenzando con 1 (primer eslabón móvil de la
cadena) y acabando con n (último eslabón móvil). Se numerará como eslabón 0 a la
base fija del robot.
• D-H 2.- Numerar cada articulación comenzando por 1 (la correspondiente al primer
grado de libertad) y acabando en n
• D-H 3.- Localizar el eje de cada articulación. Si ésta es rotativa, el eje será su
propio eje de giro. Si es prismática, será el eje a lo largo del cual se produce el
desplazamiento.
• D-H 4.- Para i de 0 a n-1 situar el eje zi sobre el eje de la articulación i+1.
• D-H 5.- Situar el origen del sistema de la base {S0} en cualquier punto del eje z0.
Los ejes x0 e y0 se situarán de modo que formen un sistema dextrógiro con z0.
• D-H 6.- Para i de 1 a n-1, situar el sistema {Si} (solidario al eslabón i) en la
intersección del eje zi con la línea normal común a zi-1 y zi. Si ambos ejes se
cortasen se situaría {Si} en el punto de corte. Si fuesen paralelos {Si} se situaría en
la articulación i+1.
• D-H 7.- Situar xi en la línea normal común a zi-1 y zi.
• D-H 8.- Situar yi de modo que forme un sistema dextrógiro con xi y zi.
• D-H 9.- Situar el sistema {Sn} en el extremo del robot de modo que zn coincida con
la dirección de zn-1 y xn sea normal a zn-1 y zn.
• D-H 10.- Obtener θi como el ángulo que hay que girar en torno a zi-1 para que xi-1 y
xi queden paralelos.
• D-H 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.
• D-H 12.- Obtener ai como la distancia medida a lo largo de xi (que ahora coincidiría
con xi-1) que habría que desplazar el nuevo {Si-1} para que su origen coincidiese con
{Si}.
127
“Caracterización de un robot manipulador articulado”
• D-H 13.- Obtener αi como el ángulo que habría que girar entorno a xi (que ahora
coincidiría con xi-1), para que el nuevo {Si-1} coincidiese totalmente con {Si}.
• D-H 14.- Obtener las matrices de transformación i-1Ai.
• D- 15.- Obtener la matriz de transformación entre la base y el extremo del robot T =
0
A1 1A2 ... n-1An.
• D-H 16.- La matriz T define la orientación (submatriz de rotación) y posición
(submatriz de traslación) del extremo referido a la base en función de las n
coordenadas articulares.
Matriz T: Matriz 0An cuando se consideran todos los grados de libertad del robot
Conexión de matrices A:
T=0An= 0A11A22A3…n-2An-1n-1An
⎡cθi − sθ i 0 0 ⎤ ⎡1 0 0 0 ⎤ ⎡1 0 0 ai ⎤ ⎡1 0 0 0⎤
⎢ sθ cθi 0 0⎥⎥ ⎢⎢0 1 0 0 ⎥⎥ ⎢⎢0 1 0 0 ⎥⎥ ⎢⎢0 cα i − sα i 0⎥⎥
Ai = ⎢ i B-2
⎢0 0 1 0 ⎥ ⎢0 0 1 d i ⎥ ⎢0 0 1 0 ⎥ ⎢ 0 sα i cα i 0⎥
⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥
⎣0 0 0 1 ⎦ ⎣0 0 0 1 ⎦ ⎣0 0 0 1 ⎦ ⎣0 0 0 1⎦
⎡cθ i − cα i sθ i s α i sθ i ai cθ i ⎤
⎢ sθ cα i cθ i − sα i cθ i ai sθ i ⎥⎥
Ai = ⎢ i B-3
⎢ 0 sα i cα i di ⎥
⎢ ⎥
⎣ 0 0 0 1 ⎦
128
Apéndice B Cinemática
• Métodos geométricos
o Se suele utilizar para las primeras variables articulares
o Uso de relaciones geométricas y trigonométricas (resolución de triángulos)
• Resolución a partir de las matrices de transformación homogénea
o Despejar las n variables qi en función de las componentes de los vectores n,
o, a y p.
• Desacoplamiento cinemático
o En robots de 6 GDL
o Separación de orientación y posicionamiento
• Otros
o Algebra de tornillo
o Cuaterniones duales
o Métodos iterativos
129
“Caracterización de un robot manipulador articulado”
Apéndice
C
DINÁMICA
130
Apéndice C Dinámica
L = Ki – Pi C-1
Donde Ki y Pi son las energías totales cinética y potencial respectivamente del sistema,
definidas como:
1 2 &2
KR = I θ i Para la energía cinética rotacional.
2
1
K L = mvi2 Para la energía cinética lineal.
2
Donde:
m es la masa del elemento
θ&i y vi son las velocidades rotacional y lineal respectivamente del i-ésimo eslabón
I es la inercia del elemento definida por:
I = mli2
li = es la longitud del i-ésimo eslabón
d ∂L ∂L
− =τi C-2
dt ∂q& i ∂qi
para i = 1,..., n
131
“Caracterización de un robot manipulador articulado”
1
D = (b1δ&12 + b2δ&22 + K + br δ&r2 C-3
2
Donde
b1 es el coeficiente del i-ésimo amortiguador viscoso
δ&i es la diferencia de velocidad a través del i-ésimo amortiguador viscoso
Así pues, δ&i puede expresarse como función de las variables generalizadas q& i
d ⎛ ∂L ⎞ ⎛ ∂L ⎞ ⎛ ∂D ⎞
⎜ ⎟⎟ − ⎜⎜ ⎟⎟ + ⎜⎜ ⎟⎟ = 0 C-4
dt ⎜⎝ ∂q& i ⎠ ⎝ ∂qi ⎠ ⎝ ∂q& i ⎠
i = 1, 2,…, n
Aplicando los puntos C-1 y C-2 para la solución de un modelo dinámico se puede
utilizar el Lagrangiano definiendo la estructura del manipulador y el tipo de articulación
que posee, así como la identificación y distribución de sus masas. Una vez obtenido el
Lagrangiano se puede aplicar la ecuación de movimiento de Lagrange, que está dada por la
resolución de las derivadas tanto parciales como referidas al tiempo de las coordenadas
generalizadas y sus derivadas para posteriormente se agregan los efectos de fricción por
medio de función de disipación de Rayleigh quedando finalmente de forma general un
modelo tal y como se define y aplica en la ecuación 2-80 del capítulo 2.
132
Apéndice C Dinámica
Donde:
M (q ) Matriz de inercia
τ Par requerido
133
“Caracterización de un robot manipulador articulado”
Apéndice
D
PÉNDULOS
134
Apéndice D Péndulos
x1 = longitud
θ x2 = longitud
x1
M1, M2 = masas
M1 W = carga
x2
M2
L= Lagrangiano
K= Energía cinética
P= Energía potencial
I= Inercia
mi = Masa i-ésima
xi = Radio de giro de la masa i-ésima
hi = Altura i-ésima
τ = Par requerido
L=K–P D-1
Para obtener el par deseado empleamos la ecuación de movimiento de Lagrange dada por:
d ∂L ∂L
τ= − D-2
dt ∂θ& ∂θ
135
“Caracterización de un robot manipulador articulado”
1 &2
K= Iθ D-3
2
I = mx 2 D-4
1 ⎛ 1 ⎞
l = x1 + ⎜ x1 + x 2 ⎟ + W (x1 + x 2 ) D-5
2 ⎝ 2 ⎠
2 2
⎛1 ⎞ ⎛ 1 ⎞
I = m1 ⎜ x 1 ⎟ + m 2 ⎜ x 1 + x 2 ⎟ + W (x 1 + x 2 )
2
D-6
⎝ 2 ⎠ ⎝ 2 ⎠
1 2 2 1 2 2 2
I = m1 x 1 + m2 x 1 + m2 x 1 x 2 + m2 x 2 + Wx 1 + 2Wx 1 x 2 + Wx 2 D-7
4 4
1 ⎡1 1 2⎤
m1 x 1 + m2 x 1 + m2 x 1 x 2 + m2 x 2 + Wx 1 + 2Wx 1 x 2 + Wx 2 ⎥θ& 2
2 2 2 2
K= ⎢ D-8
2 ⎣4 4 ⎦
1 1 1
K = m1 x 1 θ& 2 + m2 x 1 θ& 2 + m2 x 1 x 2θ& 2
2 2
8 2 2
D-9
1 1 1
+ m2 x 2 θ& 2 + Wx 1 θ& 2 + Wx 1 x 2θ& 2 + Wx 2 θ& 2
2 2 2
8 2 2
hi = xi (1 − cos θ ) D-11
1 ⎛ 1 ⎞
P = m1 g x 1 (1 − cos θ ) + m2 g ⎜ x 1 + x 2 ⎟(1 − cos θ ) + Wg ( x 1 + x 2 )(1 − cos θ ) D-12
2 ⎝ 2 ⎠
1 1 ⎛ 1 ⎞ ⎛ 1 ⎞
P = m1 g x 1 − m1 g x 1 cos θ + m 2 g ⎜ x 1 + x 2 ⎟ − m2 g ⎜ x 1 + x 2 ⎟ cos θ
2 2 ⎝ 2 ⎠ ⎝ 2 ⎠ D-13
+ Wg ( x 1 + x 2 ) − Wg ( x 1 + x 2 ) cos θ
136
Apéndice D Péndulos
8 2 2 8
1 1 1 1
+ Wx 1 θ& 2 + Wx 1 x 2θ& 2 + Wx 2 θ& 2 − m1 g x 1 + m1 g x 1 cos θ
2 2
D-14
2 2 2 2
⎛ 1 ⎞ ⎛ 1 ⎞
− m 2 g ⎜ x 1 + x 2 ⎟ + m 2 g ⎜ x 1 + x 2 ⎟ cos θ − Wg ( x 1 + x 2 ) + Wg ( x 1 + x 2 ) cos θ
⎝ 2 ⎠ ⎝ 2 ⎠
∂L 1 1
= m1 x 1 θ& + m2 x 1 θ& + m2 x 1 x 2θ& + m2 x 2 θ& + Wx 1 θ& + 2Wx 1 x 2θ& + Wx 2 θ&
2 2 2 2 2
D-15
∂θ 4
& 4
d ∂L ⎛ 1 1 2⎞
= ⎜ m1 x 1 + m 2 x 1 + m 2 x 1 x 2 + m 2 x 2 + Wx 1 + 2Wx 1 x 2 + Wx 2 ⎟θ&&
2 2 2 2
D-16
dt ∂θ ⎝ 4
& 4 ⎠
∂L 1 ⎛ 1 ⎞
= − m1 g x 1 senθ − m2 g ⎜ x 1 + x 2 ⎟ senθ − Wg ( x 1 + x 2 ) senθ D-17
∂θ 2 ⎝ 2 ⎠
⎛1 1 ⎞
τ = ⎜ m1 x 1 2 + m2 x 1 2 + m2 x 1 x 2 + m2 x 2 2 + Wx 1 2 + 2Wx 1 x 2 + Wx 2 2 ⎟θ&&
⎝4 4 ⎠
D-18
1 ⎛ 1 ⎞
+ m1 g x 1 senθ + m2 g ⎜ x 1 + x 2 ⎟ senθ + Wg ( x 1 + x 2 ) senθ
2 ⎝ 2 ⎠
137
“Caracterización de un robot manipulador articulado”
Fi
Fit
ri
Fin mi
Teniendo en cuenta las relaciones Fit = mi ait y ait = ri α la expresión del momento se
puede escribir de la forma:
138
Apéndice D Péndulos
ubicada a una distancia (x1 + x2/2) y la carga W esta al final del péndulo a una distancia (x1
+ x2). Este es un sistema de un grado de libertad y el ángulo θ es la única coordenada
generalizada.
x1 = 0.22 x2 = 0.22
M1 M2 W Giro de la
estructura
Giro del
motor
L= Lagrangiano
K= Energía cinética
P= Energía potencial
I= Inercia
mi = Masa i-ésima
xi = Radio de giro de la i-ésima masa
τ = Par requerido
2 2
⎛1 ⎞ ⎛ 1 ⎞
I = mb l 2 + m1 ⎜ a ⎟ + m2 ⎜ a + b ⎟ + W (a + b )
2
D-21
⎝2 ⎠ ⎝ 2 ⎠
1 1
I = mb l 2 + m1 a 2 + m2 a 2 + m2 ab + m2 b 2 + Wa 2 + 2Wab + Wb 2 D-22
4 4
139
“Caracterización de un robot manipulador articulado”
1⎛ 1 1 2⎞ 2
K= ⎜ mb l + m1 a + m2 a + m2 ab + m2 b + Wa + 2Wab + Wb ⎟θ&
2 2 2 2 2
D-23
2⎝ 4 4 ⎠
1 1 1 1
K= mb l 2θ& 2 + m1 a 2θ& 2 + m2 a 2θ& 2 + m2 abθ& 2
2 8 2 2
D-24
1 1 1
+ m2 b 2θ& 2 + Wa 2θ& 2 + Wabθ& 2 + Wb 2θ& 2
8 2 2
P=0 D-25
1 1 1 1
L= mb l 2θ&12 + m1 a 2θ&12 + m2 a 2θ&12 + m2 abθ&12
2 8 2 2 D-26
1 1 1
+ m 2 b 2θ&12 + Wa 2θ&12 + Wabθ&12 + Wb 2θ&12
8 2 2
∂L 1
= mb l 2θ& + m1 a 2θ& + m2 a 2θ& + m2 abθ&
∂θ& 4 D-27
1
+ m2 b 2θ& + Wa 2θ& + 2Wabθ& + Wb 2θ&
4
d ∂L ⎛ 1 1 ⎞
= ⎜ mb l 2 + m1 a 2 + m 2 a 2 + m 2 ab + m 2 b 2 + Wa 2 + 2Wab + Wb 2 ⎟θ&& D-28
dt ∂θ& ⎝ 4 4 ⎠
∂L
=0 D-29
∂θ1
⎛ 1 1 ⎞
τ = ⎜ mb l 2 + m1 a 2 + m 2 a 2 + m 2 ab + m 2 b 2 + Wa 2 + 2Wab + Wb 2 ⎟θ&& D-30
⎝ 4 4 ⎠
140
Apéndice D Péndulos
W= Carga aplicada
mi = Masa del i-ésimo eslabón
g= Constante de gravedad
a= Longitud del primer eslabón
b= Longitud del segundo eslabón
Ii = Inercia del i-ésimo eslabón
Vi = Velocidad lineal del i-ésimo eslabón
Ki = Energía cinética respectivamente de cada eslabón
Pi = Energía potencial respectivamente de cada eslabón
Eje
Eje YZ
W
b θ3
m2 g
a
m1
θ2
XY
Eje X
2
1 ⎛a⎞
K1 = m1 ⎜ ⎟ θ&22 D-31
2 ⎝2⎠
1 a2
K1 = m1 θ&22 D-32
2 4
141
“Caracterización de un robot manipulador articulado”
1
K1 = m1a 2θ&22 D-33
8
a
P1 = m1 g senθ 2 D-34
2
1
K 2 = m2V22 D-35
2
1
x2 = a cosθ 2 + b cos(θ 2 + θ 3 ) D-37
2
(
x& 22 = a 2 sen 2θ 2θ&22 + absenθ 2 sen(θ 2 + θ 3 ) θ&22 + θ&2θ&3 )
D-39
+ b 2 sen 2 (θ 2 + θ 3 )(θ&2 + θ&3 )
1 2
1
y 2 = asenθ 2 + bsen(θ 2 + θ 3 ) D-40
2
(
y& 22 = a 2 cos 2 θ 2θ&22 + ab cosθ 2 cos(θ 2 + θ 3 ) θ&22 + θ&2θ&3 )
D-42
+ b 2 cos 2 (θ 2 + θ 3 )(θ&2 + θ&3 )
1 2
142
Apéndice D Péndulos
4 D-43
+ ab cosθ 2 cos(θ 2 + θ 3 )(θ&22 + θ&2θ&3 )
( )
x& 22 + y& 22 = a 2θ&22 + ab θ&22 + θ&2θ&3 cos θ 3 + b 2 (θ&2 + θ&3 )
1
4
2
D-44
K2 =
1 ⎡ 2 &2
2 ⎣
( ) 1
4
2⎤
m2 ⎢a θ 2 + ab θ&22 + θ&2θ&3 cosθ 3 + b 2 (θ&2 + θ&3 ) ⎥ D-45
⎦
1
P2 = m2 gasenθ 2 + m2 gbsen(θ 2 + θ 3 ) D-47
2
1
K c = WVc2 D-48
2
(
x& c2 = a 2 sen 2θ 2θ&22 + 2absenθ 2 sen(θ 2 + θ 3 ) θ&22 + θ&2θ&3 )
D-52
+ b 2 sen 2 (θ 2 + θ 3 )(θ&2 + θ&3 )
2
143
“Caracterización de un robot manipulador articulado”
(
y& c2 = a 2 cos 2 θ 2θ&22 + 2ab cosθ 2 cos(θ 2 + θ 3 ) θ&22 + θ&2θ&3 )
D-55
+ b 2 cos 2 (θ 2 + θ 3 )(θ&2 + θ&3 )
2
(
Vc2 = a 2 sen 2θ 2θ&22 + 2absenθ 2 sen(θ 2 + θ 3 ) θ&22 + θ&2θ&3 )
+ b 2 sen 2 (θ 2 + θ 3 )(θ&2 + θ&3 ) + a 2 cos 2 θ 2θ&22
2
D-56
( )
+ 2ab cosθ 2 cos(θ 2 + θ 3 ) θ&22 + θ&2θ&3 + b 2 cos 2 (θ 2 + θ 3 )(θ&2 + θ&3 )
2
( )
Vc2 = a 2θ&22 + 2ab θ&22 + θ&2θ&3 cos θ 3 + b 2 (θ&2 + θ&3 )
2
D-57
2
( 1
2
)
K c = Wa 2θ&22 + Wab θ&22 + θ&2θ&3 cosθ 3 + Wb 2 (θ&2 + θ&3 )
1 2
D-58
L = ΣK i − ΣPi D-60
Donde
L = K1 + K2 + Kc – P1 – P2 – Pc D-61
144
Apéndice D Péndulos
1 1
L = m1a 2θ&22 + m2 a 2θ&22
8 2
2
( )
+ m2 ab θ&22 + θ&2θ&3 cosθ 3 + m2 b 2 (θ&2 + θ&3 )
1 1
8
2
2
( )
+ Wa 2θ&22 + Wab θ&22 + θ&2θ&3 cosθ 3 + Wb 2 (θ&2 + θ&3 )
1 1
2
2
D-62
1 1
− m1 gasenθ 2 − m2 gasenθ 2 − m2 gbsen(θ 2 + θ 3 )
2 2
− Wgasenθ 2 − Wgbsen(θ 2 + θ 3 )
d ∂L ∂L
τ= − D-63
dt ∂q& ∂q
∂L 1
= m1a 2θ&2 + m2 a 2θ&2 + m2 ab(2θ&2 + θ&3 )cosθ 3
1
∂θ 2 4
& 2
d ∂L 1
= m1a 2θ&&2 + m2 a 2θ&&2 + m2 ab(2θ&&2 + θ&&3 )cosθ 3
1
dt ∂θ 2 4
& 2
∂L 1
= − m1 ga cosθ 2 − m2 ga cosθ 2
∂θ 2 2
D-66
1
− m2 gb cos(θ 2 + θ 3 ) − Wga cosθ 2 − Wgb cos(θ 2 + θ 3 )
2
145
“Caracterización de un robot manipulador articulado”
∂L 1
= m2 abθ&2 cosθ 3 + m2 b 2 (θ&2 + θ&3 )
1
∂θ&3 2 4 D-67
+ Wabθ&2 cosθ 3 + Wb 2 (θ&2 + θ&3 )
d ∂L 1
= m2 ab cosθ 3θ&&2 − m2 absenθ 3θ&2θ&3 + m2 b 2 (θ&&2 + θ&&3 )
1 1
dt ∂θ&3 2 2 4 D-68
+ Wab cosθ 3θ&&2 − Wabsenθ 3θ&2θ&3 + Wb 2 (θ&&2 + θ&&3 )
∂L
∂θ 3
1
( ) (
= − m2 ab θ&22 + θ&2θ&3 senθ 3 − Wab θ&22 + θ&2θ&3 senθ 3
2
)
D-69
1
− m2 gb cos(θ 2 + θ 3 ) − Wgb cos(θ 2 + θ 3 )
2
Donde:
M (q ) Matriz de inercia
τ Par requerido
⎡τ 2 ⎤ ⎡ A2 B2 ⎤ ⎡θ&&2 ⎤ ⎡ E 2 ⎤ ⎡ G2 ⎤
⎢τ ⎥ = ⎢C ⎢ ⎥+ +
D2 ⎥⎦ ⎣θ&&3 ⎦ ⎢⎣ F2 ⎥⎦ ⎢⎣ H 2 ⎥⎦
D-71
⎣ 3⎦ ⎣ 2
Donde:
146
Apéndice D Péndulos
1 1
A2 = m1 a 2 + a 2 m2 + m2 ab cos θ 3 + m2 b 2 + Wa 2 + 2Wab cos θ 3 + Wb 2 D-73
4 4
1 1
B2 = m2 ab cos θ 3 + m2 b 2 + Wab cos θ 3 + Wb 2 D-74
2 4
Efectos gravitacionales
1 1
G2 = m1 ga cos θ 2 + m2 ga cos θ 2 + m2 gb cos(θ 2 + θ 3 )
2 2 D-76
+ Wga cos θ 2 + Wgb cos(θ 2 + θ 3 )
Inercias
1 1
C2 = m2 ab cos θ 3 + m2 b 2 + Wab cos θ 3 + Wb 2 D-78
2 4
1
D2 = m2 b 2 + Wb 2 D-79
4
⎛1 ⎞
F2 = ⎜ m2 + W ⎟absenθ 3θ&22 D-80
⎝2 ⎠
Efectos gravitacionales
1
H 2 = m2 gb cos(θ 2 + θ 3 ) + Wgb cos(θ 2 + θ 3 ) D-81
2
147
“Caracterización de un robot manipulador articulado”
Apéndice
E
IDENTIDADES
TRIGONOMÉTRICAS
148
Apéndice E Identidades trigonométricas
1
sen 2θ = (1 − cos 2θ ) E-4
2
1
cos 2 θ = (1 + cos 2θ ) E-5
2
149
“Caracterización de un robot manipulador articulado”
Apéndice
F
PROGRAMAS
150
Apéndice F Programas
void main()
{
int ang,ang1, ang2, modo, control, x, x1, x2, x3, y, y1, y2, y3, grad1, grad2, grad3;
float rad,rad1, rad2;
modo=VGAHI;
control=VGA;
initgraph(&control,&modo,"");
for(;;)
{
clrscr ();
setfillstyle(1,BLACK);
rectangle(0,0,639,479);
floodfill (320,240,BLACK);
setlinestyle(DASHED_LINE, 1, 1);
setcolor(YELLOW);
line (160,100,160,379);
line (480,100,480,379);
line (0,240,639,240);
setlinestyle(SOLID_LINE, 1, 3);
line (100,350,220,350);
rectangle(370,130,590,350);
//Ángulo de hombro
//Rutina para el primer angulo
setfillstyle(1,WHITE);
circle (160,240,5);
floodfill (160,240,YELLOW);
if (ang>=0)
{
for (grad1=0; grad1<=ang; grad1++)
{
rad=grad1*M_PI/180;
x=100*cos(rad);
y=100*sin(rad);
setlinestyle(SOLID_LINE, 1, 3);
setcolor (WHITE);
line(160,240,160+x,240-y);
delay (100);
setcolor(BLACK);
line(160,240,160+x,240-y);
setlinestyle(DASHED_LINE, 1, 1);
setcolor (WHITE);
line (160,100,160,379);
line (480,100,480,379);
line (0,240,639,240);
}
setlinestyle(SOLID_LINE, 1, 3);
setcolor(WHITE);
line(160,240,160+(x/2),240-(y/2));
}
else
{
for (grad1=0; grad1>=ang; grad1--)
{
rad=grad1*M_PI/180;
x=100*cos(rad);
y=100*sin(rad);
setlinestyle(SOLID_LINE, 1, 3);
setcolor (WHITE);
line(160,240,160+x,240-y);
delay (100);
setcolor(BLACK);
line(160,240,160+x,240-y);
152
Apéndice F Programas
setlinestyle(DASHED_LINE, 1, 1);
setcolor (WHITE);
line (160,100,160,379);
line (480,100,480,379);
line (0,240,639,240);
}
setlinestyle(SOLID_LINE, 1, 3);
setcolor(WHITE);
line(160,240,160+(x/2),240-(y/2));
}
circle (160+(x/2),240-(y/2),2);
//Ángulo de codo
if (ang2>=0)
{
for(grad2=0; grad2<=ang2; grad2++)
{
rad2=grad2*M_PI/180;
x2=50*cos(rad+rad2);
y2=50*sin(rad+rad2);
setlinestyle(SOLID_LINE, 1, 3);
setcolor(WHITE);
line(160+(x/2),240-(y/2),160+(x/2)+x2,240-(y/2)-y2);
delay(100);
setcolor(BLACK);
line(160+(x/2),240-(y/2),160+(x/2)+x2,240-(y/2)-y2);
setlinestyle(DASHED_LINE, 1, 1);
setcolor (WHITE);
line (160,100,160,379);
line (480,100,480,379);
line (0,240,639,240);
}
setlinestyle(SOLID_LINE, 1, 3);
setcolor(WHITE);
line(160+(x/2),240-(y/2),160+(x/2)+x2,240-(y/2)-y2);
}
else
{
for(grad2=0; grad2>=ang2; grad2--)
{
rad2=grad2*M_PI/180;
x2=50*cos(rad+rad2);
y2=50*sin(rad+rad2);
153
“Caracterización de un robot manipulador articulado”
setlinestyle(SOLID_LINE, 1, 3);
setcolor(WHITE);
line(160+(x/2),240-(y/2),160+(x/2)+x2,240-(y/2)-y2);
delay(100);
setcolor(BLACK);
line(160+(x/2),240-(y/2),160+(x/2)+x2,240-(y/2)-y2);
setlinestyle(DASHED_LINE, 1, 1);
setcolor (WHITE);
line (160,100,160,379);
line (480,100,480,379);
line (0,240,639,240);
}
setlinestyle(SOLID_LINE, 1, 3);
setcolor(WHITE);
line(160+(x/2),240-(y/2),160+(x/2)+x2,240-(y/2)-y2);
}
if (ang1>=0)
{
for(grad3=0; grad3<=ang1; grad3++)
{
rad1=(grad3*M_PI)/180;
x1=x/2*cos(rad1);
y1=x/2*sin(rad1);
setlinestyle(SOLID_LINE, 1, 3);
setcolor(WHITE);
line (480,240,480+x1,240-y1);
delay (30);
setcolor(BLACK);
line (480,240,480+x1,240-y1);
setcolor(WHITE);
line (480+x1,240-y1,480+x1+x3,240-y1-y3);
delay(30);
154
Apéndice F Programas
setcolor(BLACK);
line (480+x1,240-y1,480+x1+x3,240-y1-y3);
setlinestyle(DASHED_LINE, 1, 1);
setcolor (WHITE);
line (160,100,160,379);
line (480,100,480,379);
line (0,240,639,240);
}
setlinestyle(SOLID_LINE, 1, 3);
setcolor(WHITE);
circle (480+x1,240-y1,2);
line (480,240,480+x1,240-y1);
setcolor(WHITE);
line (480+x1,240-y1,480+x1+x3,240-y1-y3);
}
else
{
for(grad3=0; grad3>=ang1; grad3--)
{
rad1=(grad3*M_PI)/180;
x1=x/2*cos(rad1);
y1=x/2*sin(rad1);
setlinestyle(SOLID_LINE, 1, 3);
setcolor(WHITE);
line (480,240,480+x1,240-y1);
delay (30);
setcolor(BLACK);
line (480,240,480+x1,240-y1);
setcolor(WHITE);
line (480+x1,240-y1,480+x1+x3,240-y1-y3);
delay(30);
setcolor(BLACK);
line (480+x1,240-y1,480+x1+x3,240-y1-y3);
setlinestyle(DASHED_LINE, 1, 1);
setcolor (WHITE);
line (160,100,160,379);
line (480,100,480,379);
155
“Caracterización de un robot manipulador articulado”
line (0,240,639,240);
}
setlinestyle(SOLID_LINE, 1, 3);
setcolor(WHITE);
circle (480+x1,240-y1,2);
line (480,240,480+x1,240-y1);
setcolor(WHITE);
line (480+x1,240-y1,480+x1+x3,240-y1-y3);
}
printf ("\n\n\n Desea otra simulación: s/n ");
if(getch()=='n')break;
}
restorecrtmode();
}
PROGRAM EJE1B
*********************
785: SPEED 40
786: MOVED 234
787: SPEED 35
788: FOR E1B = 1 TO 3
789: MOVED 235
790: MOVED 236
791: ENDFOR( 788)
792: END
(END)
PROGRAM EJE2B
*********************
794: SPEED 40
795: MOVED 220
156
Apéndice F Programas
796: SPEED 70
797: FOR E2B = 1 TO 3
798: MOVED 240
799: MOVED 241
800: ENDFOR( 797)
801: END
(END)
PROGRAM EJE3B
*********************
848: SPEED 40
849: MOVED 220
850: SPEED 70
851: FOR E3B = 1 TO 3
852: MOVED 237
853: MOVED 238
854: ENDFOR( 851)
855: END
(END)
PROGRAM PRU5A
*********************
1233: SPEED 60
1234: FOR E2B = 1 TO 3
1235: MOVED 294
1236: MOVED 293
1237: ENDFOR( 1234)
1238: END
(END)
157
“Caracterización de un robot manipulador articulado”
ENCODERS
Posición X Y Z P R
1 2 3 4 5
234 3539 -2229 5280 -83 -3 -4570 4575 -3391 1534 -1550
235 4924 -3447 3678 93 -3 -4965 13650 -3012 2027 -2042
236 2510 5461 3678 93 -3 9265 13650 -3012 2027 -2442
237 170 -1984 2575 -535 104 -12076 3276 -9954 573 9
238 -293 3424 4861 2006 -13 -12076 3278 18530 7338 -7405
240 -3401 -1411 739 -240 -3 -18389 16688 -6489 1098 -1112
241 -1999 2417 8330 1310 -7 18389 -341 10848 5410 -5446
293 1802 -1262 7132 991 -7 -4965 13650 7168 4522 -4559
294 3112 -2178 5988 110 -5 -4975 3454 -2890 2069 -2095
Por último se recuerda que las posiciones reservadas para este trabajo de tesis,
abarcan de la posición 200 a la 300 por lo que se pide que se respeten dichas posiciones.
158
Apéndice G Subsistemas en Matlab/Simulink
Apéndice
G
SUBSISTEMAS EN
MATLAB/SIMULINK
159
“Caracterización de un robot manipulador articulado”
G.1 Dinámica
G.1.1.1 Parámetros
0.22 a 2.2483 M1
9.81 g
Upper Arm1 Goto24 Masa3 Goto30
(mts) (Kg) Gravedad1 Goto26
0.22 b 0.9888 M2
Forearm1 Goto25 Goto23
(mts) Masa4 0.4 W
(Kg)
0.06 l Carga1 Goto27
4.7698 Mb
Radio_base1 Goto28
Masa_base1 Goto29
G.1.1.2 Entrada
ENT RADA CONDICION INICIAL
1 1
-K- 0 D2R
s s
Repeating Gain1 # GRADOS Degrees to Integrator Integrator1
Sequence Radians
R2D
160
Apéndice G Subsistemas en Matlab/Simulink
Mb 1/8 2
teta2 2 cos
[A_1]
From84 Gain13Trigonometric
Function14 From33
[A_2]
From39
M2 [A_3]
From47
From52 [A_4]
From44
a [A_5]
From50 From40
[A_6]
b [A_6] From46
[A_7]
From51 Goto19 From38 1
[A_8]
A
teta2 cos From37
[A_9]
From55 Trigonometric
Function12 From45
Product19 [A_10]
teta3
From48
[A_11]
From54 cos
From49
Trigonometric [A_13]
teta2
Function11 From68
[A_14]
From53
From70
161
“Caracterización de un robot manipulador articulado”
[E_1]
M2 W From18
From3 From10 [E_2]
[E_2] [E_5]
2 2 From19
a u Goto1 a u Goto4
[E_3]
From4 Math From11 Math
Function2 Product1 Function4 Product4 From20
[E_4] 1
From21 E
From7
2 [E_5]
M2
Constant4 From22
W [E_6]
a
From15
From5 [E_3] a [E_6] From23
b [E_7]
Goto2 From13 Goto5
From6 b From24
teta3 cos Sum
From14
teta3 cos
From Trigonometric Product2
Function1 From12 Trigonometric Product5
Function2
1/2
Constant4 From7
M2
W
From15
a [F_1]
a
From13 Goto5
b From5 [F_3] [F_1]
b
From14 Goto2 From18
teta3 cos From6
teta3 cos
Product5 [F_2]
From12 Trigonometric
Function2 From Trigonometric Product2 From19 1
Function1
[F_3] F
1/4 From20
W
Constant2
M2 [F_2] From16 [F_4]
[F_4]
From8 Goto3 2 From21
2 b u Goto6
b u
Sum
From9 From17 Math
Math Product3
Function3 Function5 Product6
162
Apéndice G Subsistemas en Matlab/Simulink
1/2
Constant4
M2 From7
From15 W
a [H_1]
From13 Goto5 a
b
From5 [H_3]
From14 b
teta3 cos Goto2
Product5 From6
From12 Trigonometric teta3 cos
Function2
From Trigonometric Product2
1/4 Function1
Constant2
M2 [H_2]
From8 Goto3
b u2 [H_1]
From18
From9 Math Product3
Function3 [H_2]
From19 1
W [H_3] H
From20
From16 [H_4]
2 [H_4]
b u Goto6
From17 From21
Math Sum
Function5 Product6
[W] [I_2]
From19
From16 [I_2]
[b] u2 Goto6
Sum
From17 Math
Function5 Product6
163
“Caracterización de un robot manipulador articulado”
M1 omega1 W
M2 From105 Trigonometric
From130 Trigonometric
Function18
Function7
From6 teta3 teta3
2
a u From132 sin From101 cos
From7 Math
teta2 Trigonometric Trigonometric
Function3 teta2
Function24
omega1 [J_2] Function26
From131 From100
From8 Goto2
omega2 1/4
Product2 2
From9 Constant17
Constant23
teta2 2 sin M2
W
From121 Gain5Trigonometric From91
From147
Function2
omega1
omega1
M2
From14 From25
From122 [J_5]
b u2
Goto4 a
omega1 Math
From112 From149
From13 Function16
[J_8]
omega2 b
omega2 Goto13
From10 From148
From15 Product5
a [J_3] omega2
omega3
Goto1 From26
From124
From133 Product9
b omega3
teta3
Gain21
From123 From96 From27
2 sin
teta2 sin Product3 teta2 cos
Trigonometric
teta2
From125 Trigonometric Function20 From146 Trigonometric
Function22 From95 Function31
teta3 teta3
From127 cos From145
W sin
teta2 Trigonometric Trigonometric
Function23 From108 teta2
Function32
From126 omega1 From144
From16
a u2 [J_6] W
164
Apéndice G Subsistemas en Matlab/Simulink
1/8 1/2 W
M2 From36 2
M1 a
From10 From26 omega3 Gain3
Product10 From31
a From35
a [K_1]
From22 Goto7 From11 [K_2] b [K_3]
Goto8 From33 Goto9
omega1 u2 omega2 b
1/2 1/2
1/2 Constant8 Constant9
Constant7
M2 M2
From41 From46
M2
From37 omega1 u2 omega1 u2
From43 Math From48 Math
omega1 u2 [K_4] a
Function12
[K_5] a
Function13
[K_6]
From39 Math Goto10 From42 Goto11 From47 Goto12
Function9
2 b b
a u
From38 From45 From50
Math
Function10 teta2 sin teta2 cos
teta2 2 sin From44 Trigonometric From49 Trigonometric
From40 Gain4 Trigonometric Function8 Function10
Function7
Product12
teta3 cos teta3 sin
Product13 Product14
From3 Sum3 Trigonometric From4 Sum4 Trigonometric
Function9 Function11
1/8 W
1/2
Constant10 From59
Constant11
2
omega1 u
M2 W From61 Math
From51 From52 Function18
a
2 From63
b u2 a u
From58 Math
From55 Math teta2 sin
Function15 Function17
teta2 From62 Trigonometric
teta2 2 sin Function12
From54 2 sin
From57 Gain6 Trigonometric
teta3 Sum5 Gain5 Trigonometric Function14 Product16
teta3 cos
Function13 Product15
From5 Product17
From6 Sum6 Trigonometric
Function15
[K_1]
From18
W [K_2]
From73 1/2
From19
Constant12 [K_3]
omega1 u2 From20
From75 Math [K_4]
W
Function21 From21
From64 [K_5]
a
From24
From74
[K_10] 2 [K_6] 1
omega1 u [K_11]
Goto17 From68 K
b From65 Goto16
Math [K_7]
From77 Function19
From69
2 [K_8]
teta2 cos b u
From70
From67 Math [K_9]
From76 Trigonometric
Function17 teta2 Function20
From71
From66 [K_10]
2 sin
sin From72
teta3 Gain7 Trigonometric
teta3 Sum7 [K_11]
Sum8 Trigonometric Product19 Function16 Product18
From8 From78
Function18 From7
Sum
165
“Caracterización de un robot manipulador articulado”
1/2
[W]
1/2
Constant6
From59
Constant8
[M2]
[M2] 2
From26 [omega1] u
From41
From61 Math
[a]
2 Function18
[omega1] u
From11 [P_1]
From43 [a]
Math
[b] Goto8 Function12 From60
[a] [P_3] [P_5]
From27
[omega2] From42 Goto11 Goto15
[b]
From30 [b] From63
[omega3] From45
Product8
From29 [teta2] cos
[teta2] cos
[teta3] sin Product9 From62 Trigonometric
From44 Trigonometric
Function12
From1 Trigonometric Function8
Function5
sin
sin [teta3]
[teta3]
Product13 Product17
Sum6 Trigonometric
From3 Sum3 Trigonometric From6
Function15
Function9
[W]
1/8
From32 1/2
Constant10
Constant12
[a]
From31 [M2]
[W]
From51
[b] [P_2] From64
From33 Goto9
2
[omega2] [omega1] u [P_4]
2
[omega1] u [P_6]
From36 From53 Math Goto13
Function14 From65 Math Goto16
[omega3] Function19
Product10
From35 2
[b] u
2
[b] u
From55 Math
[teta3] sin From67 Math
[teta2] Function15
Product11 Function20
From2 Trigonometric [teta2]
Function6 From54
2 sin
From66
2 sin
[teta3] Sum5 Gain5 Trigonometric
Function13 [teta3] Sum7 Gain7 Trigonometric
From5 Product15
Function16
From7 Product18
Trigonometric
Function10 [P_1]
1/2
[teta3] sin From18
Constant13
[P_2]
From8
[M2] From19
From52 [P_3]
[W]
From20
From56
[a] [P_4]
From76 From21 1
[P_7]
[a] [P_8] [P_5] P
Goto10
2 [b] From80 Goto12 From24
[omega2] u
From73 From75 2 [P_6]
Math [omega2] u
[b]
Function21 From68
From77 Math From79
Function22 [P_7]
Sum1
From69
[omega3]
Sum2 [P_8]
From74 Product14 [teta3] sin [omega3]
From70
From4 Trigonometric From78 Product16 Sum
Function7 Product19
Product20
166
Apéndice G Subsistemas en Matlab/Simulink
1/2
[W]
Constant1 From14
[M1]
[g]
From1
[g] [N_1] From15 [N_4]
From2 Goto [a] Goto3
[a] From16
From3 [teta2] cos
[teta2] cos
From17 T ri gonometri c
From4 T ri gonometri c Product Functi on4 Product3
Functi on1
[W]
[M2]
From22
From5
[g]
[g]
From18 [N_5]
From6 [N_2] [b]
[a] [teta2] Goto4
Goto1 From19
From20
From7
[teta3] cos
[teta2] cos
T ri gonometri c
Sum1
From8 T ri gonometri c From21 Product4
Functi on5
Functi on2 Product1
1/2 [N_1]
Constant2 From
[M2] [N_2]
From9 From25
[g] [N_3]
[N_3] 1
From10 Goto2
[teta2] [b] From24 N
1/2
Constant2
[M2]
From9
[g] [O_1]
From10 Goto2
[teta2] [b]
From12 From11
[teta3] cos [O_1]
From13 SumTrigonometric Product2 From 1
Function3
[O_2] O
From25
[W] Sum2
From22
[g]
From18 [O_2]
[teta2] [b] Goto4
From20 From19
[teta3] cos
From21 Trigonometric
Sum1
Product4
Function5
167
“Caracterización de un robot manipulador articulado”
G.2 Péndulos
G.2.1.1 Inercias
1/4
Constant
[M1] [b]
[a] u2 [a]
From4
Product3
From1 Math From5
Function1
[M2] 1/4
From2 Constant1
[M2]
Product2
[a] u2 From7 Product4
[W]
From15
Product7
[b] u2
From14 Math
Function5
168
Apéndice G Subsistemas en Matlab/Simulink
G.2.1.2 Gravitacionales
[M1]
From [M2]
[g] From20
From17 [g]
1/2
From22
Constant
[a]
[a]
From21
From1
[teta] cos [b] 1/2
From23 Trigonometric
[W] Function1
From25
1
[g] GRAVITACIONALES
From27
[a]
From26
[b]
From29
Product10
[teta] cos
From28 Trigonometric
Function2
G.2.2.1 Inercias
[Mb]
From16
2 Product4
0.10 |u|
constante3 [M1]
From69
1
Product5
INERCIAS
2 2
[b] |u|
0
Gain2
From59 Math [M2]
Function3 Product6 suma de masas1
From70
Product8
1/4
2 constante4
|u|
Product9
Math
Function4
[W]
From71 Product7
169
“Caracterización de un robot manipulador articulado”
[M1] 1/4
From Gain [W]
[M2] From16
2 1
From1 [b] u
A_2
[a] u2 From17 Math
Product1 Function5 Product6
From2 Math
Function1
[W]
[M2] 1/4 From10
From3 Gain1 2
[a] u
[b] u2 Product2 From11 Math
Function4 Product4
From4 Math
Function2 2
[M2] 1/4
From14 Gain3
From15 Product2
[W]
[b] u2
From4 Math 1
Function2 B_2
[M2] 1/2
From12 Gain2
From13
[W]
[a]
From6
[b]
From7
[teta33] cos
170
Apéndice G Subsistemas en Matlab/Simulink
Trigonometric
From8 Function1
[teta33] sin
Math
[b]
Function3
From7
[omega33] u2 -1 1
From9 E_2
[a] Gain2
[omega22] 2 From3
From10 Product4 Gain1 Product3
[M2] 1/2
From4
Gain5
[W]
From37 Sum3
[M1] 1/2
From4 Gain
[g]
[M2]
From11
From5 [a]
1
From12 Trigonometric
G_2
Function1
[W]
[teta22] cos Product5
From26
From8 Trigonometric [g]
Function2
From22
[teta22] cos
[teta22] [b]
From15
From24 From23
[g]
[teta33] cos
From13 [teta33]
From16 Trigonometric
Sum4
From25 Product4
[b] Function5
From21 Trigonometric
Product3
Function4
171
“Caracterización de un robot manipulador articulado”
[M2] 1/4
From14
Gain3
From15 Product2
[W]
2
[b] u
From4 Math 1
Function2 C_2
[M2] 1/2
From12
Gain2
From13
[W]
[a]
From6
[b]
From7
[teta33] cos
From8 Trigonometric Product3
Function1
[M2] 1/4
From14 1
Gain3
From15 D_2
Product2
[W]
[b] u2
From4 Math
Function2
172
Apéndice G Subsistemas en Matlab/Simulink
Trigonometric
From8 Function1
[teta33] sin
Math
[b]
Function3
2 From7
[omega22] u 1
F_2
From9 [a]
From3
Product3
[M2] 1/2
From14 Gain3
From15
[W]
Trigonometric
Function2
[teta22] cos
From15
[g]
teta33] 1
From13
From16 H_2
[b]
From14
Product6
[M2] 1/2
From18
Gain3
From19
[W]
173
“Caracterización de un robot manipulador articulado”
Apéndice
H
ENGRANES
174
Apéndice H Engranes
H.1 Nomenclatura
La nomenclatura de los dientes de engranes rectos se indica en la figura H-1. La
circunferencia de paso es el círculo teórico en el que generalmente se basan todos los
cálculos; su diámetro es el diámetro de paso. Las circunferencias de paso de un par de
engranes conectados son tangentes entre sí. En un engranaje o par de engranes, al menor se
le llama piñón y al mayor, rueda o engrane mayor.
175
“Caracterización de un robot manipulador articulado”
del espacio entre dos dientes consecutivos y el grueso del diente del otro engrane, medidos
sobre la circunferencia de paso.
N
P= H-1
d
Donde:
P = paso diametral, dientes por unidad de longitud
N = número de dientes
d = diámetro de paso
d
m= H-2
N
Donde:
m = módulo
d = diámetro de paso
πd
p= = πm H-3
N
por lo que:
pP = π H-4
Donde:
P = paso circular
[Shigley 90]
176
Apéndice H Engranes
N2
N1
ω
ω
1 2
N1
mV = H-5
N2
N3 N5
N2 N4
N1
ω
ω
1 2 3 4 5
⎛ N ⎞⎛ N ⎞⎛ N ⎞⎛ N ⎞ N
mV = ⎜⎜ − 1 ⎟⎟⎜⎜ − 2 ⎟⎟⎜⎜ − 3 ⎟⎟⎜⎜ − 4 ⎟⎟ = 1 H-6
⎝ N 2 ⎠⎝ N 3 ⎠⎝ N 4 ⎠⎝ N 5 ⎠ N 5
Potencialmente cada engrane contribuye a la razón general del tren, pero en el caso
de un tren simple (en serie) los efectos numéricos de todos los engranes, excepto el primero
y el último, se cancelan. Sólo se afecta el signo de la razón general del tren debido a los
engranes intermedios, es decir se puede usar un engrane loco intermedio para que el sentido
de giro del engrane de salida sea el mismo sentido que el del engrane de entrada, esto es si
existe un número impar de engranes locos el sentido será el mismo entre la entrada y la
salida y cuando el número de engranes locos sea par el sentido de giro entre la entrada y la
salida será opuesto.
177
“Caracterización de un robot manipulador articulado”
misma flecha y, por lo tanto, tienen la misma velocidad angular. La razón de tren resulta
ahora:
⎛ N ⎞⎛ N ⎞
mV = ⎜⎜ − 1 ⎟⎟⎜⎜ − 2 ⎟⎟ H-7
⎝ N 2 ⎠⎝ N 3 ⎠
Flecha
de Flecha
entrada N2 de salida
N1
N3 N4
2
1
ωentrada ωsalida
3 4
Figura H-4 Tren compuesto de engranes.
178
Apéndice H Engranes
velocidad de trenes planetarios, puede ser más conveniente referirse al planeta único
dibujado (figura H-5b) [Norton 99].
Anillo
R R
P Sol P
A
S
Brazo S
P P
Planeta
(a) Con tres planetas (típico) (b) Con un planeta (sólo para análisis)
En otra configuración, la figura H-6, muestra un tren planetario formado por un,
engrane solar 2, un portador 3 y los engranes planetarios 4 y 5. La velocidad angular del
engranaje 2 con relación al brazo, en rpm, es:
n23 = n2 – n3 H-8
n53 = n5 – n3 H-9
Donde:
ni representan la velocidad angular del engrane i
179
“Caracterización de un robot manipulador articulado”
donde
nF = velocidad (rpm) del primer engrane del tren planetario
nL = velocidad del último engrane del tren
nA = velocidad del brazo
[Juvinall 99]
Brazo rotatorio
2
5
180
Apéndice I Prácticas
Apéndice
I
PRÁCTICAS
L as prácticas que aquí se presentan, están diseñadas de tal modo que el usuario
sea capaz y autosuficiente para realizarlas de forma satisfactoria, sin
embargo, es recomendable que un asesor esté presente para resolver alguna
duda o dar información adicional que requiera el usuario. Cabe mencionar que es requisito
indispensable realizar la práctica 0, ya que si bien no se tiene un contacto físico con el
robot, en esta práctica se da una amplia visión de la celda de manufactura y de forma
específica lo referente con el Scorbot-ER V plus mostrado en la figura 1-2 del capítulo 1.
Otra recomendación que se hace con contundencia es que las prácticas se realicen en forma
secuencial, es decir, primero la 0, después la 1, la 2, etc.
Se espera que con esta serie de prácticas que aquí se proponen se le de un uso
adecuado al robot y que esté al alcance de cualquier integrante de Cenidet, sin que el
usuario tenga un previo conocimiento de robótica. Al final de este apéndice se localiza la
respuesta correcta a cada inciso que se cuestiona en cada práctica. (A partir de la página
195).
181
“Caracterización de un robot manipulador articulado”
I.1 Práctica 0
Objetivos:
Introducción:
Equipo:
182
Apéndice I Prácticas
Desarrollo:
• Leer el capítulo 2 del manual 100016-c ER_Vplus (págs. 2-2, 2-3, 2-4). (3 págs.)
Cuestionario:
18. ¿Cuáles son elementos que conforman el sistema robótico del Scorbot-ER V plus?
183
“Caracterización de un robot manipulador articulado”
I.2 Práctica 1
Objetivos:
Introducción:
El robot puede programarse para que realice varios tipos de actividades, pero antes
de entrar plenamente a la programación, se harán ejercicios con la botonera para conocer
los movimientos que realiza cada articulación del robot.
Equipo:
Desarrollo:
184
Apéndice I Prácticas
Notas: El robot puede tener diferentes grupos de trabajo; sin embargo, en el caso del robot
de almacenes sólo trabaja con el grupo control A por lo que los grupos B y C no
están habilitados para este robot.
En caso de que exista una colisión y/o se rebasen los topes del robot y los comandos
de la botonera no respondan; habilitarlos de nueva cuenta con la tecla “CONTROL
ON/OFF”.
Cuestionario:
1. ¿Para qué sirve llevar a “home” al robot cada vez que se inicia una sesión?
2. ¿Qué velocidad cree que es “segura” para la manipulación de piezas?
3. ¿Qué diferencias existen entre las opciones “joints” y “cartesian”?
4. ¿Qué problemas tuvo?
185
“Caracterización de un robot manipulador articulado”
I.3 Práctica 2
“Introducción de posiciones para una posible rutina de manejo para el robot Scorbot-
ER V plus a través de la botonera”
Objetivo:
Introducción:
Equipo:
186
Apéndice I Prácticas
Desarrollo:
• Encender el sistema.
1. Coloca un templete en el ASRS 1 y que el Buffer 1 este vacío. Ver figura P2-1.
2. Ejecute el programa prac2 (RUN 71 ENTER).
3. Cambie la velocidad del robot al 30%. (págs. 5-6,6-12.)
4. Trate de imitar la secuencia del programa, grabando las posiciones que crea
necesarias para esta secuencia. (Se sugiere combinar el modo JOINTS con el
CARTESIAN según se requiera) (págs. 5-4, 5-5, 5-6, 6-13).
Nota: Para el usuario sólo están disponibles de la posición 500 a la 599 del grupo de
control A.
Banda transportadora
1 2
RS
2
4
6
8
Buffers
AS
10
Feeder 1
RO B O T
1
3
5
7
Feeder 2
9
Cuestionario:
187
“Caracterización de un robot manipulador articulado”
I.4 Práctica 3
Objetivo:
Introducción:
Equipo:
Desarrollo:
• Encender el sistema.
1. Encender la Work Station 1.
2. Entrar al ATS (Existe en el escritorio un acceso directo).
3. Ejecuta el siguiente comando: <HOME>.
4. Entrar al modo manual con <ALT>+M y probar todos los comandos (pág. 3-120 a
la 3-122 del manual ACL).
188
Apéndice I Prácticas
• Apagar el sistema.
Cuestionario:
189
“Caracterización de un robot manipulador articulado”
I.5 Práctica 4
Objetivo:
• El usuario será capaz al término de esta práctica de realizar programas que generen
una secuencia de movimiento en el robot Scorbot-ER V plus.
Introducción:
Equipo:
Desarrollo:
• Encender el sistema.
1. Encender la Work Station 1.
2. Entrar al ATS. (Existe en el escritorio un acceso directo).
3. Ejecute el siguiente comando: <HOME>.
4. Coloque la pieza cilíndrica de plástico en el Feeder 1 (alimentador de materia
prima). Ver figura P2-1.
5. Entrar al modo edición e introducir el siguiente programa como se indica:
o Edit prac4
190
Apéndice I Prácticas
• Apagar el sistema.
191
“Caracterización de un robot manipulador articulado”
Cuestionario:
192
Apéndice I Prácticas
I.6 Práctica 5
Objetivo:
Introducción:
Equipo:
Desarrollo:
• Encender el sistema.
1. Encender la Work Station 1.
2. Entrar al ATS (Existe en el escritorio un acceso directo).
3. Ejecute el siguiente comando: <HOME>.
4. Entrar al modo edición e introducir la secuencia propuesta en la práctica 2 (inciso 6)
5. Verificar el programa utilizando el comando LIST <Programa>. (¡Antes de ejecutar
el programa!)
6. Si está seguro de su programa, ejecute el programa utilizando el comando RUN
<Programa>. (Esté siempre listo con el botón ABORT de la botonera en caso que
sea necesario)
193
“Caracterización de un robot manipulador articulado”
• Apagar el sistema.
Cuestionario:
194
Apéndice I Prácticas
RESPUESTAS
195
“Caracterización de un robot manipulador articulado”
1. Porque en el modo edición es necesario, ya que sólo así espera que se termina de
ejecutar el comando completamente antes de pasar con el siguiente.
2. Entre dos puntos lo realiza en línea recta.
3. En un punto lo realiza en línea curva pasando por otro punto que le definimos.
4. Que se desea abrir el gripper al 35 % de su capacidad.
5. En centésimas de segundo.
6. Respuesta subjetiva.
1. Respuesta subjetiva.
2. Respuesta subjetiva.
3. Con la opción EDIT y el nombre del programa.
4. Primero se busca el nombre que le asignó el controlados con el comando DIR y
después desde la botonera con RUN # del programa y ENTER.
5. De preferencia se deben de utilizar las velocidades más bajas para evitar colisiones.
6. Respuesta subjetiva.
196