Está en la página 1de 80

CINTICA DEL CUERPO RGIDO

Autor : Oscar Guerrero Miramontes


Indice general
1. Introducci on 1
1.1. Problema a Resolver . . . . . . . . . . . . . . . . . . . . . . . 2
1.2. Proyecto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.3. Justicaci on . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.4. Objetivo del Proyecto . . . . . . . . . . . . . . . . . . . . . . . 3
1.4.1. Objetivo General . . . . . . . . . . . . . . . . . . . . . 3
1.4.2. Objetivos Especcos . . . . . . . . . . . . . . . . . . . 3
2. Marco Te orico 4
2.1. Denici on de un Cuerpo Rgido . . . . . . . . . . . . . . . . . 4
2.2. Rotaci on y Traslaci on de un Cuerpo Rgido . . . . . . . . . . . 5
2.3. Cinem atica Inversa . . . . . . . . . . . . . . . . . . . . . . . . 6
2.4. Cinem atica Directa . . . . . . . . . . . . . . . . . . . . . . . . 6
2.4.1. El Problema Cinematico Directo: . . . . . . . . . . . . 6
3. Metodologa 7
3.1. Manipulador en el Plano . . . . . . . . . . . . . . . . . . . . . 7
3.2. Animaci on del Manipulador en el Plano . . . . . . . . . . . . . 9
3.3. Ejemplos de Cinem atica Inversa . . . . . . . . . . . . . . . . . 10
3.4. Ejemplos de Generaci on de Trayectorias . . . . . . . . . . . . . 12
3.4.1. Aplicaci on de los par ametros DH . . . . . . . . . . . . 14
3.4.2. Animaci on Cinem atica Inversa . . . . . . . . . . . . . . 16
4. An alisis de Resultados 18
5. Conclusiones 22
Bibliografa 23
Ap endices 23
I
A. Cinem atica del S olido Rgido 24
A.1. Coordenadas Independientes de un S olido Rgido . . . . . . . . 24
A.2. Transformaciones Ortogonales . . . . . . . . . . . . . . . . . . 28
A.3. Momento Angular y Energa Cin etica Alrededor de un Punto . . 30
A.4. Propiedades Formales de la Matriz de Transformaci on . . . . . 33
B. Transformaciones Rgidas 39
B.1. Rotaciones y Traslaciones en 2D . . . . . . . . . . . . . . . . . 40
B.2. Movimiento de los Cuerpos Rgidos en 2D . . . . . . . . . . . . 42
B.3. Centro de Rotaci on . . . . . . . . . . . . . . . . . . . . . . . . 44
B.4. Rotaci on en 3D . . . . . . . . . . . . . . . . . . . . . . . . . . 45
B.4.1.

Angulos de Euler . . . . . . . . . . . . . . . . . . . . . 48
B.5. Movimiento de los Cuerpos Rgidos en 3D . . . . . . . . . . . . 49
C. Introducci on a la Rob otica 52
C.1. Manipuladores en Serie . . . . . . . . . . . . . . . . . . . . . . 54
C.2. Manipuladores en Paralelo . . . . . . . . . . . . . . . . . . . . 55
C.3. Anatoma del Robot . . . . . . . . . . . . . . . . . . . . . . . . 56
C.3.1. Uniones . . . . . . . . . . . . . . . . . . . . . . . . . . 56
C.4. Cinem atica Directa de Manipuladores . . . . . . . . . . . . . . 57
C.4.1. 3R Mu nequera . . . . . . . . . . . . . . . . . . . . . . 59
C.5. Par ametros de Denavit Hartenberg . . . . . . . . . . . . . . . . 59
C.6. Aplicaci on de los Par ametros de DH a un Manipulador . . . . . 61
C.7. Cinem atica Inversa de Manipuladores . . . . . . . . . . . . . . 63
C.7.1. Jacobiano . . . . . . . . . . . . . . . . . . . . . . . . . 63
C.7.2. M etodos Num ericos . . . . . . . . . . . . . . . . . . . 65
C.7.3. Ejemplos . . . . . . . . . . . . . . . . . . . . . . . . . 66
D. Generaci on de Trayectorias 68
D.1. Aproximaciones Lineales . . . . . . . . . . . . . . . . . . . . . 68
D.2. Aproximaciones Polinomiales . . . . . . . . . . . . . . . . . . 69
E. Listado de C odigo Fuente 71
F. Software 73
F.1. Lista de Funciones ofrece MATLAB . . . . . . . . . . . . . . . 73
F.2. Informaci on Referente ActionScript . . . . . . . . . . . . . . . 75
F.2.1. Estructura . . . . . . . . . . . . . . . . . . . . . . . . . 75
II

Indice de guras
3.1. La gura en la izquierda muestra el manipulador despu es de la
transformaci on, la gura de la derecha muestra al manipulador
en su conguraci on base. . . . . . . . . . . . . . . . . . . . . . 9
3.2. Geometra del manipulador en el plano. . . . . . . . . . . . . . 9
3.3. Animaci on manipulador en el plano usando las matrices de trans-
formaci on homog eneas. . . . . . . . . . . . . . . . . . . . . . . 10
3.4. La conguraci on de los enlaces que localiza al efector nal en su
posici on base se muestra por el punto rojo y con un punto azul la
conguraci on en (1.5,0). . . . . . . . . . . . . . . . . . . . . . 11
3.5. La imagen (a) muestra la conguraci on del robot donde el efector
nal se encuentra en su posici on base y la imagen (b) muestra la
conguraci on del robot donde el efector nal se encuentra en el
punto p(1,0,2). . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.6. Posici on de la uniones en funci on del tiempo se observ o que s olo
la uni on tres contribuy o en la generaci on del movimiento. . . . . 13
3.7. La imagen muestra la conguraci on del efector nal en el punto
P
1
= (129.42, 28.908, 1960.4). Con una lnea azul la trayecto-
ria de P
o
a P
1
. . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.8. Movimiento realizado por las uniones en funci on del tiempo para
mover el manipulador de la gura (3.7) de P
o
a p
1
. . . . . . . . 15
3.9. Localizaci on de la Posici on el punto azul en funci on del eje de
referencia inm ovil lnea naranja . . . . . . . . . . . . . . . . . 17
3.10. Dos enlaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
4.1. Conguraci on del efector nal en su posici on base se muestra
por el punto rojo y la conguraci on despu es en el punto (1.5,0)
en azul. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
4.2. La imagen (a) muestra la conguraci on del robot donde el efector
nal se encuentra en su posici on base y la imagen (b) muestra la
conguraci on del robot donde el efector nal se encuentra en el
punto p(1,0,2). . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
III
4.3. Posici on de la uniones en funci on del tiempo se observa que s olo
la uni on tres contribuy o en la generaci on del movimiento . . . . 19
4.4. La imagen muestra la conguraci on del effector nal en el punto
P
1
= (129.42, 28.908, 1960.4). Con una lnea azul la trayecto-
ria de P
o
a P
1
. . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.5. Posici on y velocidad de las uniones en funci on del tiempo . . . 20
4.6. Animaci on una cadena de n enlaces. . . . . . . . . . . . . . . . 21
A.1. Grados de libertad un s olido rgido. . . . . . . . . . . . . . . . 26
B.1. Angulos Euler diagrama. . . . . . . . . . . . . . . . . . . . . . 48
B.2. Encontrando el angulo de rotaci on. . . . . . . . . . . . . . . . . 51
C.1. Genealoga. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
C.2. Uniones. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
C.3. Ejes de coordenada diferente origen. . . . . . . . . . . . . . . . 58
C.4. Enlace arbitrario con uniones en su terminaciones. . . . . . . . . 61
C.5. Robot basado en los parametros DH del cuadro 6.1. . . . . . . . 62
D.1. Aproximaci on una funci on usando una interpolaci on lineal. . . . 69
E.1. Valor de los par ametros. . . . . . . . . . . . . . . . . . . . . . 71
E.2. Denir la Matriz K en Mathematica. . . . . . . . . . . . . . . . 71
E.3. Sistema de Ecuaciones no lineales. . . . . . . . . . . . . . . . . 72
E.4. Uso de la funci on FindRoot. . . . . . . . . . . . . . . . . . . . 72
E.5. C odigo en ActionScript para animar una cadena de n enlaces. . . 72
IV
Captulo 1
Introducci on
Este proyecto tiene como prop osito describir la trayectoria que sigue un con-
junto de cuerpos rgidos unidos entre s y con algunos de sus extremos jos, al
trasladarse de un punto a otro en una regi on del espacio. Se planter an las ecua-
ciones del movimiento usando la cinem atica del cuerpo rgido y se usar a el m eto-
do de Newton-Rapshon para la soluci on num erica de las ecuaciones cinem aticas
no lineales.
En mec anica el movimiento es un fen omeno fsico que se dene como todo cam-
bio de posici on que experimentan los cuerpos de un sistema, o conjunto, en el
espacio con respecto a ellos mismos o con arreglo a otro cuerpo que sirve de
referencia. Todo cuerpo en movimiento describe una trayectoria.
La parte de la fsica que se encarga del estudio del movimiento sin estudiar sus
causas es la cinem atica. La parte de la fsica que se encarga del estudio de las
causas del movimiento es la din amica.
Anaximandro pensaba que la naturaleza proceda de la separaci on, por medio
de un eterno movimiento, de los elementos opuestos (por ejemplo, fro-calor),
que estaban encerrados en algo llamado materia primordial. Dem ocrito deca que
la naturaleza est a formada por piezas indivisibles de materia llamadas atomos, y
que el movimiento era la principal caracterstica de estos, siendo el movimien-
to un cambio de lugar en el espacio.A partir de Galileo Galilei los hombres de
ciencia comenzaron a encontrar t ecnicas de an alisis que permiten una descripci on
acertada del problema.
Hist oricamente el primer ejemplo de ecuaci on del movimiento que se introdu-
jo en fsica fue la segunda ley de Newton para sistemas fsicos compuestos de
agregados partculas materiales puntuales. En estos sistemas el estado fsico de
un sistema quedaba jado por la posici on y velocidades de todas las partculas en
un instante dado. Hacia nales del siglo XVIII se introdujo la mec anica analtica
1
o racional, que era una generalizaci on de las leyes de Newton aplicables en pie
de igualdad a sistemas de referencia inerciales y no inerciales. En concreto se
crearon dos enfoques b asicamente equivalentes conocidos como mec anica La-
grangiana y mec anica Hamiltoniana, que pueden llegar a un elevado grado de
abstracci on y formalizaci on.
1.1. Problema a Resolver
Dada la posici on inicial de un cuerpo rgido se evaluar an sus par ametros: las
uniones, angulos,longitudes, tipo de enlace. Para poder colocar el objeto rgido
en un punto predeterminado.
1.2. Proyecto
El problema que se va a resolver es localizar con exactitud el punto nal de un
objeto que se va a rotar o trasladar. Este es uno de los problemas fundamentales
en animaci on computacional, en rob otica y el dise no de m aquinas mec anicas. Se
usar a la teora del cuerpo s olido, angulos de euler, matrices de transformaci on,
matrices de rotaci on, el Software Mathematica, el Software Matlab y el Software
Macromedia Flash.
1.3. Justicaci on
La descripci on de trayectorias es muy importante en el dise no de m aquinas
mec anicas: si se conocieran las posiciones que puede desempe nar la m aquina
antes de ser construida usando simulaciones, se podra mejorar la realizaci on de
su trabajo y corregir errores ergon omicos. Antes de la llegada de las computa-
doras realizar los c alculos era una tarea casi imposible, la computadora redujo
el tiempo para realizar los c alculos, introdujo la visualizaci on y animaci on de
los resultados. La cinem atica juega un rol muy importante en la creaci on de es-
tas animaciones. En este trabajo se pretende resaltar su importancia describiendo
ejemplos reales aplicados a robots manipuladores y cadenas de enlaces.
Este trabajo no pretende crear animaciones complejas, ya existe un gran numero
de software que permite tal labor, uno de los tantos que merece menci on es el
Blender (www.blender.org), el cual que es gratuito. Con animaciones simples es
mas que suciente para comprobar el uso de las transformaciones homog eneas,
pero no por ser simple pierde su m erito, mucha de la teora aplicada en los ejemp-
los y algoritmos, se encuentra adjunto en software comercial. Este trabajo ense na
2
como generar movimiento y sus fundamentos matem aticos.
1.4. Objetivo del Proyecto
1.4.1. Objetivo General
Escribir un c odigo en el Software Mathematica y el Software MATLAB para
evaluar los siguientes par ametros: el tipo de uni on, los angulos de uni on, la longi-
tud de los enlaces y posici on del efector nal. Los resultados obtenidos de evaluar
estos par ametros se introducir an en el Software Macromedia Flash y el Software
MATLAB para observar el movimiento previamente determinado y comprobar la
efectividad del algoritmo.
1.4.2. Objetivos Especcos
Escribir un c odigo en Mathematica para evaluar los par ametros.
Estos par ametros se introducen en el Software Macromedia para compro-
bar que si satisfacen las condiciones dadas: que al partir de una posici on
inicial se llega a la posici on previamente jada.
Se nalar la importancia de la Cinem atica en el area de la rob otica y de la
animaci on computarizada
Conocer la teora matem atica para la animaci on y descripci on del movimien-
to de los cuerpos rgidos.
3
Captulo 2
Marco Te orico
Este trabajo se basa fundamentalmente en el movimiento de cuerpos s oli-
dos rgidos, el cual se estudia en los cursos introductorios de Fsica y Mec anica
Cl asica. En estos cursos se obtienen las matrices de rotaci on mediante los angu-
los de Euler, matrices de translaci on, la ecuacion de movimiento de Newton, se
introduce al concepto de grados de libertad y de ligaduras.
Una descripci on mas detallada se encuentra en los ap endices:
2.1. Denici on de un Cuerpo Rgido
Un cuerpo rgido, es un concepto, que representa cualquier cuerpo que no se
deforma y es representado por un conjunto de puntos en el espacio que se mueven
de tal manera que no se alteran las distancias entre ellos, sea cual sea la fuerza
actuante:
|

r
a

r
b
| = c
Se dice que las ligaduras son hol onomas,si f(r
1
, ..., r
n
, t) = c estas ligaduras
eliminan grados de libertad.
Aplicando las ligaduras se requiere de 6 coordenadas generalizadas para describir
el movimiento de un cuerpo rgido: 3 variables denen la traslaci on y 3 variables
denen la rotaci on. Para el caso de los angulos de euler el rango de los par ametros
es el siguiente: 0 < , 0 < 2 y para evadir duplicaci on de resultados
el ultimo par ametro se restringe de 0 < . Pero a un con estas medidas no
se puede evadir la duplicaci on del todo, si = 0 obtenemos el mismo resultado
siempre que + tenga un valor constante:
4
R(, , )= R(, k)R(, j)R(, k)
=
_
_
_
cos sin 0
sin cos 0
0 0 1
_
_
_
_
_
_
cos 0 sin
0 1 0
sin 0 cos
_
_
_
_
_
_
cos sin 0
sin cos 0
0 0 1
_
_
_
=
_
_
_
cos cos cos sin sin cos cos sin sin cos cos sin
sin cos cos + cos sin sin cos sin + cos sin sin sin
sin cos sin sin cos
_
_
_
(2.1)
2.2. Rotaci on y Traslaci on de un Cuerpo Rgido
La traslaci on de un cuerpo rgido en donde T = (t
x
, t
y
, t
z
) representa el
vector de traslaci on y r = (r
x
, r
y
, r
z
) es el punto que se va trasladar se dene
a continuaci on:
r

= T + r (2.2)
La rotaci on de un cuerpo rgido en donde R es la matriz de transformaci on se
dene a continuaci on :
r

= Rr (2.3)
Para un mejor manejo de las variables, la rotaci on y traslaci on de un cuerpo rigi-
do se encapsulan en una forma matricial. Para el caso de 2D en una matriz de tres
columnas por tres reglones y en 3D en una matriz de cuatro columnas por cuatro
reglones.
Para 2D:
_
_
_
cos sin t
x
sin cos t
y
0 0 1
_
_
_
(2.4)
Y en 3D :
_
_
_
_
_
_
cos sin 0 t
x
sin cos 0 t
y
0 0 1 t
z
0 0 0 1
_
_
_
_
_
_
(2.5)
5
2.3. Cinem atica Inversa
El objetivo de la cinem atica inversa consiste en encontrar la posici on que
deben adoptar las diferentes articulaciones dado solamente la posici on del efec-
tor nal.
Usando el paquete Mathematica se obtendr a la soluci on a sistemas de ecuaciones
no lineales usando el m etodo de Newton-Rhapson.

(n+1)
=
(n)
J
1
(
(n)
)f(
(n)
) (2.6)
2.4. Cinem atica Directa
2.4.1. El Problema Cinematico Directo:
Se utiliza fundamentalmente el algebra vectorial y matricial para representar
y describir la localizaci on de un objeto en el espacio tridimensional con respecto
a un sistema de referencia jo. Dado que un robot se puede considerar como una
cadena cinem atica formada por objetos rgidos o eslabones unidos entre s me-
diante articulaciones, se puede establecer un sistema de referencia jo situado
en la base del robot y describir la localizaci on de cada uno de los eslabones con
respecto a dicho sistema de referencia. De esta forma, el problema cinematico
directo se reduce a encontrar una matriz homog enea de transformaci on K que
relacione la posici on y orientaci on del extremo del robot respecto del sistema de
referencia jo situado en la base del mismo. Esta matriz K ser a funci on de las
coordenadas articulares .
1
1
http://proton.ucting.udg.mx/materias/robotica/r166/r79/r79.htm
6
Captulo 3
Metodologa
3.1. Manipulador en el Plano
En un espacio de 2D se necesitan tres uniones para que un manipulador posea
tres grados de libertad. Para especicar la posici on de un enlace en dos dimen-
siones se pueden usar dos puntos o un punto (x, y) y un angulo . Las variables
de uni on ser an tres angulos
1
,
2
y
3
. Tambi en se debe especicar la longitud de
los enlaces. Dejaremos estos par ametros de dise no arbitrarios y se denotar an por
l
1
,l
2
y l
3
ver gura (3.1)
1. En el primer paso se establece una conguraci on base, para este caso es
conveniente que los angulos
1
=
2
=
3
= 0 ver gura (3.1).
2. En el segundo paso se plantean las matrices de movimiento para cada
uni on:
a) Primero rotar la uni on tres un angulo
3
. Esta rotaci on se representa
de la siguiente forma:
A
3
(
3
) =
_
R(
3
)| t
3
0 | 1
_
El centro de rotaci on es la posici on de la tercera uni on en la congu-
raci on base y tiene coordenadas: (l
1
+l
2
, 0). Por tanto la matriz A
3
(
3
)
es la siguiente:
A
3
(
3
) =
_
_
_
cos
3
sin
3
(1 cos
3
)(l
1
+ l
2
)
sin
3
cos
3
sin
3
(l
1
+ l
2
)
0 0 1
_
_
_
(3.1)
Notese que la rotaci on [3.1] no afecta la posici on de los de la primera
y segunda uni on.
7
b) El segundo paso es rotar la segunda uni on un angulo
2
como se mues-
tra en la siguiente matriz:
A
2
(
2
) =
_
_
_
cos
2
sin
2
(1 cos
2
)l
1
)
sin
2
cos
2
sin
2
l
1
0 0 1
_
_
_
(3.2)
Siendo el centro de rotaci on (l
1
, 0)
c) El tercer paso es rotar la primera uni on un angulo
1
.
A
1
(
1
) =
_
_
_
cos
1
sin
1
0
sin
1
cos
1
0
0 0 1
_
_
_
(3.3)
3. Por ultimo el movimiento del manipulador se dene por el producto de las
matrices anteriores: A
1
(
1
)A
2
(
2
)A
3
(
3
)
A
1
(
1
)A
2
(
2
)A
3
(
3
) =
_
_
_
cos(
1
+
2
+
3
) sin(
1
+
2
+
3
) k
x
sin(
1
+
2
+
3
) cos(
1
+
2
+
3
) k
y
0 0 1
_
_
_
(3.4)
Las cantidades k
x
y k
y
tienen el siguiente valor:
k
x
= l
1
cos
1
+ l
2
cos(
1
+
2
) (l
1
+ l
2
) cos(
1
+
2
+
3
)
k
y
= l
1
sin
1
+ l
2
sin(
1
+
2
) (l
1
+ l
2
) sin(
1
+
2
+
3
)
(3.5)
La matriz de transformaci on K = A
1
(
1
)A
2
(
2
)A
3
(
3
) encapsula toda la cin-
em atica del manipulador y se referiere a esta matriz por el nombre de Matriz
Cinem atica de Transformaci on. Si se desea encontrar la posici on de cualquier
punto adjunto al efector nal simplemente se multiplica el vector de posici on del
punto por la matriz K, Por ejemplo el punto (l1 + l2 + l3, 0) despu es de una
rotaci on tendr a la posici on (x, y):
_
_
_
x
y
1
_
_
_
=
_
_
_
cos(
1
+
2
+
3
) sin(
1
+
2
+
3
) k
x
sin(
1
+
2
+
3
) cos(
1
+
2
+
3
) k
y
0 0 1
_
_
_
_
_
_
l
1
+ l
2
+ l
3
0
1
_
_
_
(3.6)
Comprobar las ecuaciones del manipulador y la matriz K son correctas es simple-
mente usar trigonometra ver gura (3.2), pero este m etodo de obtener la matriz
K es mas general y sirve para casos mas complicados en que la geometra no es
tan clara como en el manipulador en 2D.
8
Figura 3.1: La gura en la izquierda muestra el manipulador despu es de la trans-
formaci on, la gura de la derecha muestra al manipulador en su conguraci on
base.
Figura 3.2: Geometra del manipulador en el plano.
3.2. Animaci on del Manipulador en el Plano
Describiendo la matriz K como se mencion o anteriormente se logr o encon-
trar la posici on del efector nal en funci on de las coordenadas independientes

1
,
2
,
3
. Las transformaciones homog eneas que se usaron como una herramienta
matem atica para resolver la cinem atica del manipulador en el plano, se pueden
usar entonces para describir el movimiento de cualquier cuerpo s olido como se
muestra a continuaci on con un simple ejemplo creado en el software Macromedia
ash:
9
Figura 3.3: Animaci on manipulador en el plano usando las matrices de transfor-
maci on homog eneas.
3.3. Ejemplos de Cinem atica Inversa
A continuaci on se propone un ejemplo donde se usa el m etodo de Newton-
Rapson para resolver la cinem atica inversa del manipulador, auxiliandose del
software Mathematica para realizar los c alculos:
En el siguiente ejemplo se desea encontrar los angulos de uni on que localicen
al efector nal, para el manipulador en el plano estudiado de la gura (3.3) en el
punto (1.5, 0) y =ArcTan(ye/xe) radianes. Si l
1
= 1, l
2
= 1 y l
3
= 1
1. Denir el valor para los par ametros
2. Encontrar la matriz cinem atica de transformaci on K que para este ejemplo
se encuentra en la secci on [3.1] y se inserta en Mathematica
3. Se desarrolla r

= [K]r para este ejemplo el valor r

= (1.5, 0) y r =
(3, 0, 0) sustituyendo se obtiene un sistema de tres ecuaciones no lineales.
4. Se resuelve el sistema de ecuaciones no lineales usando la funci on de Math-
ematica FindRoot.
5. El valor de los angulos de uni on encontrados son :
1
= 7.6013.
2
=
15.2026,
3
= 7.6013 radiantes o
1
= 75
o
,
2
= 151
o
,
3
= 75
o
.
10
Comprobaci on:
Para comprobar que el valor de los par ametros obtenidos mueven el manip-
ulador al punto xe = 1.5, ye = 0, se insertaron en la animaci on. La siguiente
imagen muestra la posici on del efector en su conguraci on base por el punto rojo
y la conguraci on en el punto (1.5,0) por el punto azul como se puede observar
el valor de los par ametros mueven el efector nal al punto correcto.
Figura 3.4: La conguraci on de los enlaces que localiza al efector nal en su
posici on base se muestra por el punto rojo y con un punto azul la conguraci on
en (1.5,0).
11
3.4. Ejemplos de Generaci on de Trayectorias
Existe un gran numero de software que se utiliza para calcular interpolaciones
y resolver la cinem atica inversa de manipuladores. Los ejemplos que se mencio-
nan en esta secci on usan el paquete ROBOTIC TOOLBOX de MATLAB, en el
ap endice se ofrece un listado de las funciones que ofrece este paquete. Es impor-
tante resaltar que no estoy en favor de usar MATLAB: la teora mencionada en
previos captulos puede desarrollase usando varios entornos de lenguaje de pro-
gramaci on y la gente con mayor dominio de la programaci on puede desarrollar
aplicaciones que mejor satisfaga sus necesidades.
En el ap endice [C.6] se muestra el esqueleto diagrama de un manipulador de 3
grados de libertad en donde todas las uniones son R-pair y se calcula la cinem atica
directa del manipulador empleando las par ametros de DH. Ahora que pasara si
se desea que el efector nal se moviese de la conguraci on base p
o
= (2, 0, 1) a
un determinado punto p en un tiempo de dos segundos?. Sea para ilustrar el valor
de p = (1, 0, 2)
1. En el Primer paso se crea un vector de tiempo para denir la trayectoria en
5 segundos en intervalos de 56ms
t = [0 : 0.056 : 5]

;
2. El segundo paso es calcular la trayectoria de las uniones en donde qz =
(0, 0, 0) y qr = (0, 0, 2) y qz = (0, 0, 0). Se utiliza una interpolaci on un
polinomio de s eptimo orden
q = jtraj(qz, qr, t)
la matriz q es el resultado y cada columna representa el movimiento gene-
rado por el angulo de uni on en funci on del tiempo t
3. Se grafca el movimiento de cada angulo en funci on del tiempo t
A continuaci on se muestran im agenes que describen el movimiento realizado
por cada una de las uniones en funci on del tiempo. Se observ o que s olo la tercera
uni on contribuye en el movimiento de ir de la conguraci on base p
o
= (2, 0, 1)
al punto p = (1, 0, 2). Una ves obtenidos las posici on de las uniones en funci on
del tiempo, derivando se calcula la velocidad y aceleraci on de cada uni on.
12
Figura 3.5: La imagen (a) muestra la conguraci on del robot donde el efector
nal se encuentra en su posici on base y la imagen (b) muestra la conguraci on
del robot donde el efector nal se encuentra en el punto p(1,0,2).
Figura 3.6: Posici on de la uniones en funci on del tiempo se observ o que s olo la
uni on tres contribuy o en la generaci on del movimiento.
13
3.4.1. Aplicaci on de los par ametros DH
Para el siguiente caso se calcula la trayectoria que sigue el efector nal en su
conguraci on base P
o
= (930, 69.44, 359.78) a el punto P
1
= (129.42, 28.908, 1960.4)
Se programa para que llegue en 10 segundos. Los par ametros DH se muestran a
continuaci on
Link d a
1
1
810 200 +90
2
2
0 600 0
3
3
30 130 +90
4
4
550 0 +90
5
5
100 0 +90
6
6
100 0 0
Cuadro 3.1: Par ametros DH para un robot
Figura 3.7: La imagen muestra la conguraci on del efector nal en el punto P
1
=
(129.42, 28.908, 1960.4). Con una lnea azul la trayectoria de P
o
a P
1
.
1. En el Primer paso se crea un vector de tiempo para denir la trayectoria en
10 segundos en intervalos de 56ms
t = [0 : 0.056 : 10]

;
14
2. El segundo paso es calcular le trayectoria de las uniones en donde P
o
=
(930, 69.44, 359.78) y P
1
= (129.42, 28.908, 1960.4) se utiliza una inter-
polaci on usando un polinomio de s eptimo orden
q = jtraj(qz, qr, t)
la matriz q es el resultado y cada columna representa el movimiento gene-
rado por el angulo de uni on en funci on del tiempo t
3. Se grafca el movimiento de cada angulo en funci on del tiempo t
4. Usando la cinem atica directa se grafca la trayectoria del efector nal
Figura 3.8: Movimiento realizado por las uniones en funci on del tiempo para
mover el manipulador de la gura (3.7) de P
o
a p
1
.
15
3.4.2. Animaci on Cinem atica Inversa
La animaci on cinem atica inversa con siglas en ingl es IKA(Inverse Kine-
matics Animation), se reere a un proceso utilizado en la animaci on de gr acos
de computadora en 3D, para calcular la articulaci on requerida de una serie de
miembros o de empalmes, tales que el extremo del miembro termine en una lo-
calizaci on particular. En contraste con la animaci on cinem atica Directa, donde
cada movimiento para cada componente debe ser planeado, s olo las localiza-
ciones que comienzan y que terminan del miembro son necesarias. Por ejemplo,
cuando uno desea alcanzar una manija de la puerta, su cerebro debe hacer los
c alculos necesarios para colocar sus miembros y torso tales que la mano se lo-
calic e cerca de la puerta. El objetivo principal es mover la mano pero las muchas
articulaciones complejas de varios empalmes deben ocurrir para conseguir que la
mano se mueva a la localizaci on deseada. Semejantemente con muchos usos tec-
nol ogicos, los c alculos matem aticos cinem aticos inversos se deben realizar para
articular los miembros de las maneras correctas para resolver metas deseadas.
El uso de m etodos num ericos para resolver el problema de la cinem atica inversa
requiere gran cantidad de memoria, es por eso que se proponen m etodos alter-
nos para aparentar un movimiento. La cinem atica inversa se puede dividir en dos
grupos:
Alcanzar (Reaching) : Cuando el extremo libre del sistema intenta llegar
a un blanco, el otro extremo del sistema, la base, puede ser no movible,
as que el extremo libre puede que nunca pueda conseguir llegar hasta el
nal y tocar el blanco si este est a fuera del rango de alcance (workspace).
Un ejemplo de esto, es cuando est as intentando tocar con tu mano un ob-
jeto. Tus dedos se mueven hacia el objeto, tus pivotes de la mu neca para
poner tus dedos tan cerca como sea posible, y tu codo, hombro y el resto de
tu cuerpo intenta darte tanto alcance como sea posible. A veces, la combi-
naci on de todas estas posiciones pondr a tus dedos en contacto con el obje-
to; a veces, no podr as alcanzarlo.La cinem atica inversa te demostrar a c omo
colocar todos esos pedazos para dar el mejor alcance
Arrastrar (Dragging): El otro tipo de cinem atica inversa es cuando se est a a-
rrastrando algo. En este caso, el extremo libre est a siendo movido por una
cierta fuerza externa. Dondequiera que se mueva, el resto de las partes del
sistema siguen detr as de el, coloc andose en cualquier manera fsicamente
posible.
16
Para entender como animar un enlace usando la cinem atica inversa, se plantea
la siguiente situaci on: Un enlace con base ja intenta seguir la posici on de un
punto en el plano Sin la necesidad usar los m etodos num ericos la soluci on es
encontrar el angulo de rotaci on que viene dado por tan
1
(L+x/y) ver gura
(3.9)
Figura 3.9: Localizaci on de la Posici on el punto azul en funci on del eje de refer-
encia inm ovil lnea naranja
Ahora se agrega un segundo enlace gura (3.10), se podra pensar que se
complica el problema pero en realidad se aplica el mismo principio empleado
para encontrar la posici on de un punto en el caso de un solo enlace. Si se con-
sidera cada enlace por separado la posici on del segundo enlace esta dada por la
posici on de primer enlace por tanto el problema se puede dividir en encontrar la
posici on por separado de cada enlace
Figura 3.10: Dos enlaces
La animaci on de los enlaces puede generarse en Actionscript, usando las ideas
antes mencionadas para animar la posici on del efector nal en el ejemplo de un
enlace y dos enlaces, De igual manera se puede extender para animar una cadena
de n enlaces. En los apendices se muestra el c odigo que se utilizo para animar la
cada de n enlaces.
17
Captulo 4
An alisis de Resultados
En el movimiento de dos dimensiones el manipulador inicial en rojo y termina
en el punto azul. Para ver la animaci on se calculan los puntos intermedios por
medio de la cinem atica inversa, para ahorrar recursos tambi en se puede usar la
interpolaci on.
Figura 4.1: Conguraci on del efector nal en su posici on base se muestra por el
punto rojo y la conguraci on despu es en el punto (1.5,0) en azul.
18
Se obtienen im agenes que describen el movimiento realizado por cada una
de las uniones en funci on del tiempo, observamos que s olo la tercera uni on con-
tribuye en el movimiento de ir de la conguraci on base a la posici on predetermi-
nada.
Figura 4.2: La imagen (a) muestra la conguraci on del robot donde el efector
nal se encuentra en su posici on base y la imagen (b) muestra la conguraci on
del robot donde el efector nal se encuentra en el punto p(1,0,2).
Figura 4.3: Posici on de la uniones en funci on del tiempo se observa que s olo la
uni on tres contribuy o en la generaci on del movimiento
19
Se han obtenido los par ametros DH para ver el movimiento que sigue el ma-
nipulador que parte del punto P
o
y termina en el punto P
1
. Se observa que la
trayectoria es una curva. Se han obtenido la posici on y velocidad de las uniones
en funci on del tiempo para mover el manipulador que parte del punto P
o
y termi-
na en el punto P
1
Figura 4.4: La imagen muestra la conguraci on del effector nal en el punto
P
1
= (129.42, 28.908, 1960.4). Con una lnea azul la trayectoria de P
o
a P
1
.
Figura 4.5: Posici on y velocidad de las uniones en funci on del tiempo
20
Se ha escrito un c odigo que se utiliza para animar una cadena de n enlaces.
Los efectos de la animaci on se observan usando Macromedia Flash Player:
Figura 4.6: Animaci on una cadena de n enlaces.
21
Captulo 5
Conclusiones
Las conclusiones principales de este proyecto en orden de importancia s on:
1. Se modelo Matem aticamente la conguraci on que deben adoptar las varias
uniones y enlaces de un manipulador en serie para posicionarlo en una
regi on del espacio. Despu es se planearon trayectorias que exitosamente
fueron recorridas.
2. Se observ o que el m etodo de Newton-Rhapson y los algoritmos presenta-
dos en el trabajo resuelven el problema de la cinem atica inversa con una
gran precisi on. Una desventaja que se encontr o en usar este m etodo es que
se requiere unas estimaciones iniciales cercanas a la raz y esto no garanti-
za que se encuentra la soluci on optima en otras palabra el algoritmo elige
la primera soluci on que encuentra no necesariamente la mejor.
3. El dise no y la calidad de las animaciones, puede mejorarse utilizando una
API multilenguaje y multiplataforma para escribir aplicaciones que pro-
duzcan gr acos en 2D y 3D, como lo son OpenGL (www.opengl.org) o
Direc3D.
22
Bibliografa
[1] Jorge Angeles, Fundamentals of Robotic Mechanical Systems, Springer Ver-
lag, 2002, ISBN: 038795368X
[2] Jon M. Selig, Introductory Robotics, Prentice Hall, 1992, ISBN: 0134888758
[3] John J. Craig, Introduction to Robotics Mechanics and Control, Addison-
Wesley, 1989, ISBN: 0201095289
[4] Vladimir Lumelsky, Sensing Intelligence Motion How Robots And Humans
Move In An Unstructured World, John Wiley & Sons Inc, 2005, ISBN:
0471707406
[5] Herbert Goldstein, Classical Mechanics, Addison-Wesley, 3rd edition, 2001,
ISBN: 0201657023
[6] K. F. Riley ; M. P. Hobson ; S. J. Bence, Mathematical Methods for Physics
And Engineering, Cambridge Univ Pr, 3rd edition, 2006, ISBN: 0521861535
[7] Peter Szekeres, A Course in Modern Mathematical Physics, Cambridge Univ
Pr, 2005, ISBN: 0521829607
[8] John H. Mathews, Numerical Methods Using Matlab, Pearson Prentice Hall,
4th Edition, 2003, ISBN-13: 9780130652485
[9] Keith Peters, Foundation ActionScript Animation: Making Things Move!,
Friends of Ed c 2006, ISBN:1590595181
23
Ap endice A
Cinem atica del S olido Rgido
Se deni o anteriormente al s olido rgido como un sistema de masas puntuales,
sometido a las ligaduras hol onomas y que la distancia entre los pares de puntos
que forman al s olido permanecen inalteradas durante el movimiento. Aunque
sea una idealizaci on de la realidad, el concepto es muy usual y la mec anica del
solid o rgido merece atenci on.
A.1. Coordenadas Independientes de un S olido Rgi-
do
Antes de estudiar el movimiento de un solid o rgido establezcamos el numero
de coordenadas independientes necesarias para determinar su conguraci on. Un
solid o rgido formado por N partculas tendr a a lo sumo 3N grados de libertad,
numero que se reduce considerablemente al tener en cuenta las ligaduras, que
pueden expresarse mediante ecuaciones de la forma
r
ij
= c
ij
(A.1)
Donde r
ij
es la distancia entre las partculas i y j, y las c son constantes.
El numero efectivo de grados de libertad no se deduce sol o con restar de 3N
el numero de ecuaciones de ligadura, pues hay
1
2
N(N 1) ecuaciones posibles
de la forma [A.1], numero que excede a 3N para valores grandes de N. En rea-
lidad, las ecuaciones [A.1] no son todas independientes. Para jar un punto en
un solid o rgido no es necesario dar sus distancia a todos los dem as puntos del
cuerpo; basta con conocer las correspondientes a tres puntos no colineales (ver
gura C.1). Una vez jadas las posiciones de tres tales puntos, las de los restantes
quedan determinadas por las ligaduras. Por tanto, el numero de grados de libertad
no exceder a a nueve; a su vez los tres puntos de referencia no son independientes,
pues est an sometidos a tres ecuaciones de ligadura
r
12
= c
12
r
23
= c
23
r
13
= c
13
24
lo que reduce el numero grados de libertad a seis. Se llega a esta misma con-
clusiones mediante las siguientes consideraciones: Para determinar la posici on
de uno de los puntos de referencia se precisan tres coordenadas; pero una vez
jado el punto 1, el 2 quedara determinado con solo dos coordenadas, ya que
esta obligado a moverse sobre la supercie de una esfera de centro en 1. Una
vez determinados 1 y 2, el 3 sol o tiene un grado de libertad, pues esta obliga-
do a girar alrededor del eje que pasa por 1 y 2; por tanto basta con seis coor-
denadas ver gura (A.1). As pues, un solid o rgido en el espacio necesita seis
coordenadas generalizadas independientes para determinar su conguraci on, in-
dependientemente del numero de puntos que contenga, incluso en el caso limite
de solid o continuo. Puede existir adem as otras ligaduras sobre el solid o aparte
de la rigidez, ej., verse obligado a moverse sobre una supercie o a conservar un
punto jo. En tales casos se reducir a aun mas el numero de grado de libertad y,
por tanto, el de coordenadas independientes. Como se asignaran estas coorde-
nadas? T enganse en cuenta que la conguraci on de un solid o rgido queda por
completo especicada deniendo un sistema de ejes cartesianos invariablemente
ligado al solid o (los ejes acentuados de la gura C.1) respecto a otro sistema de
ejes exteriores. Evidentemente, har an falta tres coordenadas para localizar el ori-
gen del sistema de ejes del solid o. Las tres coordenadas restantes servir an para
determinar la orientaci on de este sistema con relaci on a otro paralelo el exterior
y con el mismo origen que los ejes acentuados.
Existen muchas maneras de precisar la orientaci on de un sistema cartesiano
con relaci on a otro del mismo origen. Una de ellas consiste en dar los cosenos
directores de los ejes acentuados respecto a los no acentuados. As, el eje x

puede
denirse por sus tres cosenos directores,
1
,
2
,
3
, respecto a x,y,z. Si i,j,k son
tres vectores unitarios correspondientes a x,y,z, respectivamente, e i

,j

,k

los
relativos a x

,y

,z

, los cosenos directores ser an:

1
= cos(i

, i) = i

2
= cos(i

, j) = i

3
= cos(i

, k) = i

k
(A.2)
Se expresa i

en funci on de i,j,k mediante la relaci on


i

= (i

i)i + (i

j)j + (i

k)k
i

=
1
i +
2
j +
3
k
An alogamente, los cosenos directores de y

respecto a x,y,z, los designaremos


25
Figura A.1: Grados de libertad un s olido rgido.
por
1
,
2
,
3
, que ser an las componentes de j

en el sistema sin acentuar


j

=
1
i +
2
j +
3
k (A.3)
Puede escribirse una ecuaci on an aloga para k

designando con los cosenos


directores de z

. Por tanto, el conjunto de los nuevos cosenos directores especi-


ca completamente la orientaci on de x

,y

,z

respecto de x,y,z. De modo an alogo,


cabria haber invertido el proceso, expresando i,j,k en funci on de sus compo-
nentes sobre los ejes acentuados:
i = (i i

)i

+ (i j

)j

+ (i k

)k

i =
1
i

+
1
j

+
1
k

(A.4)
y ecuaciones an alogas para j y k.
Los cosenos directores dan tambi en directamente las relaciones entre las coorde-
26
nadas de un punto dado en un sistema y las correspondientes en el otro. Esto es,
las coordenadas de un punto en un sistema dado son las componentes del vec-
tor de posici on r, sobre los ejes de tal sistema. Seg un esto, la coordenada x

en
funci on del eje x y z vendr a dada por
x

= (r i

) =
1
x +
2
y +
3
z (A.5)
y an alogamente para las otra coordenadas
y

=
1
x +
2
y +
3
z
z

=
1
x +
2
y +
3
z
(A.6)
Lo dicho para el vector de posici on r puede evidentemente ampliarse a un
vector cualquiera. Si G es un cierto vector, la componentes de G sobre el eje x

estar a relacionada con sus componentes x,y,z, por


G
x
= (G i

) =
1
G
x
+
2
G
y
+
3
G
z
y as sucesivamente. Por tanto, los nuevos cosenos directos constituyen los ele-
mentos de transformaci on entre ambos sistemas coordenados.
Si los ejes acentuados est an invariablemente unidos al solid o nuevos cosenos di-
rectores ser an funciones del tiempo al variar la orientaci on del cuerpo en el trans-
curso del movimiento. En este sentido cabe considerar ,, como las coorde-
nadas que describen la orientaci on instant anea del solid o. Es evidente que no se
trata de coordenadas independientes, pues hay nueve y, como hemos visto, bastan
tres para describir completamente la orientaci on.
Las relaciones existentes entre los cosenos directores se deducen teniendo en
cuenta que los dos sistemas son ortogonales y unitarios; simb olicamente
i j = j k = k i = 0
i i = j j = k k = 1
(A.7)
Con relaciones similares para i

,j

,k

. Se puede obtener las condiciones que


satisfacen los nueve coecientes sin mas que formar todos los productos escalares
posibles entre las tres ecuaciones de i,j y k en funci on de i

,j

y k

(como en la
ecuaci on [A.4]) teniendo presentes las [A.7]

m
+
l

m
+
l

m
= 0, l, m = 1, 2, 3; l = m

2
l
+
2
l
+
2
l
= 1, l = 1, 2, 3
(A.8)
27
Estos dos sistemas de tres ecuaciones bastan para reducir el n umero de mag-
nitudes independientes de nueve a tres. Formalmente, es posible sintetizar las seis
ecuaciones en una mediante el smbolo de Kronecker,
im
, denido por

im
= 1 l = m
= 0 l = m
Las ecuaciones [A.8] tomaran entonces la forma

m
+
l

m
+
l

m
=
lm
(A.9)
No es posible por tanto establecer una lagrangiana y las ecuaciones del movimien-
to subsiguientes a base de los nueve cosenos directores como coordenadas gene-
ralizadas; para este n ha de utilizarse un sistema de tres funciones indepen-
dientes de los cosenos directores. M as adelante se describe algunos de tales con-
juntos de variable independientes, siendo el m as importante el de los llamados
angulos de Euler. Aun as, el empleo de los cosenos directores en el estudio de las
relaciones entre dos sistemas coordenados ofrece importantes ventajas. A base de
ellos, muchos de los teoremas referentes al movimiento de s olidos rgidos pueden
expresarse con gran elegancia y generalidad, de forma ntimamente relacionada
con los procedimientos empleados en la relatividad especial, mec anica cu antica
y sistemas mec anicos roboticos. Por ello tal descripci on merece su estudio deta-
llado
A.2. Transformaciones Ortogonales
Para la mejor compresi on de las propiedades de los cosenos directores con-
viene cambiar de notaci on y designar todas las coordenadas por x, distinguiendo
los ejes mediante subndices
x x
1
y x
2
z x
3
De este este modo las ecuaciones [A.6] se transforman en
28
x

1
=
1
x
1
+
2
x
2
+
3
x
3
x

2
=
1
x
1
+
2
x
2
+
3
x
3
x

3
=
1
x
1
+
2
x
2
+
3
x
3
(A.10)
Este ultimo sistema constituye un grupo de ecuaciones de transformaci on del
sistema x
1
,x
2
,x
3
en el x

1
,x

2
,x

3
. En particular representan un ejemplo de transfor-
maci on lineal vectorial, caracterizada por ecuaciones de la forma
x

1
= a
11
x
1
+ a
12
x
2
+ a
13
x
3
x

2
= a
21
x
1
+ a
22
x
2
+ a
23
x
3
x

3
= a
31
x
1
+ a
31
x
2
+ a
33
x
3
(A.11)
Donde las a
11
, a
12
, ... son constantes (independientes de x y x

) las ecuaciones
[A.10] son solo un caso especial de las [A.11] pues los cosenos directores no son
todos independientes.
Volveremos a deducir las relaciones entre los coecientes (Ecs [A.8] con la nue-
va notaci on. Como ambos sistemas coordenados son cartesianos el modulo de un
vector vendr a dado mediante la suma de los cuadrados de las componentes.Ademas
como el vector es el mismo independientemente del sistema elegido, su modulo
sera el mismo en ambos sistemas. Simb olicamente representaremos esta inva-
riancia del siguiente modo:
3

i=1
x

2
i
=
3

i=1
x
2
i
(A.12)
En forma abreviada las ecuaciones [A.11] son
x

i
=
3

j=1
a
ij
x
j
i = 1, 2, 3 (A.13)
Por tanto el primer miembro de [A.12] sera:
3

i=1
_
3

j=1
a
ij
x
j
_ _
3

k=1
a
ik
x
k
_
=
3

i=1
3

j,k=1
a
ij
a
ik
x
j
x
k
Mediante ligeras modicaciones esta expresi on se convierte en:

j,k
_

i
a
ik
x
k
_
x
j
x
k
29
que se reduce al segundo miembro de [A.12] si y s olo si:

i
a
ij
a
ik
=
jk
j, k = 1, 2, 3 (A.14)
Expresando los coecientes a
ij
en funci on de las , y , las seis ecuaciones
[A.14] se identican con las [A.9].
Cualquier transformaci on lineal [A.11], con las propiedades requeridas por [A.14]
se llama ortogonal y la ecuaci on [A.14] se denomina condici on de ortogonalidad,
As, pues, el paso del sistema jo en el espacio al sistema unido al s olido se veri-
ca mediante una transformaci on ortogonal. Los elementos de la transformaci on
(cosenos directores), dispuestos en la forma
_
_
_
a
11
a
12
a
13
a
21
a
22
a
23
a
31
a
32
a
33
_
_
_
Constituyen la matriz de transformaci on, que designaremos por la letra A.
Las cantidades a
ij
son los elementos de la matriz.
Cabe imaginar la matriz de transformaci on A, como un operador que al actuar
sobre el sistema sin acentuar lo transforma en el acentuado. Este proceso se re-
presenta simb olicamente en la forma
(r)

= Ar (A.15)
La ecuaci on [A.15] se lee: la aplicaci on de la matriz A a las componentes
del vector sin acentuar proporciona las del vector acentuado. Conviene tener muy
en cuenta que hasta ahora A act ua solo sobre el sistema de coordenado, dejando
inalterado el vector propiamente dicho y haciendo variar unicamente sus com-
ponentes al pasar de uno a otro sistema. Por eso hemos puesto un par entesis en
el vector de la izquierda, con lo que queda patente que es el mismo en ambos
miembros de la ecuaci on simb olica.
A.3. Momento Angular y Energa Cin etica Alrede-
dor de un Punto
En el teorema de Chasles se establece que cualquier desplazamiento general
de un s olido rgido se puede representar por una traslaci on mas una rotaci on.
Este teorema sugiera la posibilidad de descomponer el problema del movimiento
de un s olido en dos fases: una concerniente al movimiento de traslaci on, y la
otra, al de rotaci on. Por supuesto, si el s olido tiene un punto jo, sin traslaci on
30
alguna. Pero aun en tipos mas generales de movimiento sigue siendo posible,
como regla general, tal desdoblamiento. Ya hemos dividido anteriormente las
seis coordenadas necesarias para la descripci on del movimiento en dos grupos,
las tres coordenadas cartesianas que localizan un punto jo y sirven para describir
la traslaci on y los tres angulos de Euler, que denen el movimiento alrededor del
punto jo. si se hace coincidir adem as el origen del sistema del cuerpo con el
c. de g., el momento angular total se dividir a en la parte correspondiente a las
traslaci on del c. de g., mas la correspondiente a la rotaci on alrededor de aquel.
En el primer termino sol o aparecer an las coordenadas cartesianas del c. de g.,
y en el segundo, las coordenadas angulares unicamente. La energa cin etica T
experimenta un desdoblamiento an alogo
T =
1
2
Mv
2
+ T

(, , ) (A.16)
en suma de la energa cin etica del cuerpo como si toda su masa estuviese con-
centrada en el c. de g. mas la correspondiente al movimiento alrededor de este.
A menudo es tambi en posible desdoblar la energa potencia del mismo modo.
As, la energa potencial gravitatoria depende sol o de la coordenada cartesiana
vertical del c. de g. O si la fuerza ejercida sobre el s olido se debe a un campo
magn etico uniforme B, que act ua sobre su momento dipolar magn etico M, el
potencial sera proporcional a M B, que sol o depende de la orientaci on del cuer-
po. en realidad la mayora de los problemas que en la practica admiten soluci on
son susceptibles de tal descomposici on. En estos casos, el problema mec anico en
conjunto se desdobla en dos, pues la lagrangiano, L = T V , se divide en dos
partes: una en la que sol o aparecen coordenadas de traslaci on y otra, en funci on de
las coordenadas angulares. Al estar separados estos dos puntos de coordenadas,
podr an resolverse independientemente los problemas de traslaci on y rotaci on. Es
pues de evidente importancia la obtenci on de expresiones del momento angular
y de la energa cin etica del movimiento respecto a cierto punto jo en el s olido.
Cuando un s olido rgido se mueve de manera que uno de sus puntos permanece
jo, el momento angular total respecto a este punto es:
L =

m
i
(r
i
v
i
) (A.17)
Siendo r
i
y v
i
el radio vector y la velocidad, respectivamente, de la partcula i
con relaci on al punto jo. Como r
i
es un vector jo respecto al cuerpo, la veloci-
dad vi respecto al sistema espacial de ejes se deber a unicamente al movimiento
de rotaci on del s olido alrededor del punto jo. por tanto v
i
sera
v
i
= w r
i
(A.18)
31
sustituyendo [A.18] en [A.17], el momento angular total se reinscribe de la
siguiente forma
L =

i
m
i
[r
i
(w r
i
)] (A.19)
Desarrollando el triple producto vectorial en la ecuaci on anterior
L =

i
m
i
[r
i
(w r
i
)] =

i
m
i
[wr
2
i
r
i
(r
i
w)] (A.20)
Un ultimo desarrollo da como componente x del momento angular
L
x
= w
x

i
m
i
(r
2
i
x
2
i
)w
y

i
m
i
x
i
y
i
w
z

i
m
i
x
i
z
i
(A.21)
Con ecuaciones an alogas para las otras componentes de L. As pues, cada una
de las componentes del momento angular es funci on lineal de todas las compo-
nentes de la velocidad angular. El vector momento angular y el vector velocidad
angular est an relacionados mediante una trasformaci on lineal. Para hacer patente
la analoga con la ecuaciones de una transformaci on lineal se escribe L
x
en la
forma
L
x
= I
xx
w
x
+ I
xy
w
y
+ I
xz
w
z
(A.22)
An alogamente para L
y
y L
z
pondremos
L
y
= I
yx
w
x
+ I
yy
w
y
+ I
yz
w
z
L
z
= I
zx
w
x
+ I
zy
w
y
+ I
zz
w
z
(A.23)
Los nueve coecientes I
xx
,I
xy
,etc. son los elementos de la matriz de transfor-
maci on. Los elementos diagonales se denominan momentos de inercia y son de
la forma
L
xx
=

i
m
i
(r
2
i
x
2
i
) (A.24)
mientras que los elementos extradiagonales se llaman productos de inercia
uno de los cuales es
L
xy
=

i
m
i
x
i
y
i
(A.25)
Los elementos de la matriz aparecen en la forma correspondiente a un cuer-
po constituido por partculas discretas. En cuerpos continuos, la suma habr a de
32
reemplazarse por una integral de volumen y masa de las partculas por la densidad
masica. As los elementos diagonales I
xx
adoptaran la forma
I
xx
=
_
V
(r)(r
2
x
2
)dV (A.26)
Hasta ahora no se a especicado el sistema de coordenadas empleado para
resolver L en componentes. A partir de este momento, se considera jo al cuer-
po. Las distancias x
i
,y
i
e z
i
ser an pues, constantes en el tiempo, por lo que los
elementos de la matriz tambi en ser an constantes, caractersticas del cuerpo en
cuesti on, y dependientes del origen y orientaci on del sistema de ejes jos al cuer-
po elegidos para expresarlos.
Las ecuaciones [A.23] que relacionan las componentes de L y w, se resumen en
la siguiente ecuaci on operacional
L = Iw (A.27)
donde el smbolo I representa el operador cuyos elementos matriciales son los
coecientes de inercia que aparecen en [A.23], es evidente I corresponde al caso
en que se transforma el vector w y no el sistema coordenado. Los vectores L y w
son fsicamente diferentes y de dimensiones distintas no se trata en modo alguno
del mismo vector expresado en dos sistemas distintos. I no se halla sometido a
condici on de ortogonalidad.
A.4. Propiedades Formales de la Matriz de Trans-
formaci on
Consideremos lo que ocurre al realizar dos transformaciones sucesivas a las
que corresponden dos desplazamientos consecutivos del s olido rgido. Sea B la
primera transformaci on de r a r

k
=

j
b
kj
x
j
(A.28)
y por A la siguiente, que hace pasar de r

a un tercer sistema r

i
=

k
a
ik
x

k
(A.29)
La relaci on entre x

i
y x
i
se obtiene combinando las ecuaciones [A.28] y
[A.29]
33
x

i
=

k
a
ik

j
b
kj
x
j
=

j
_

k
a
ik
b
kj
_
x
j
que tambi en puede escribirse:
x

i
=

j
c
ij
x
j
donde c
ij
=

k
a
ik
b
kj
Por tanto, la aplicaci on sucesiva de dos transformaciones ortogonales A y B
equivale a una tercera transformaci on lineal C. No es difcil probar que, al ser
A y B matrices ortogonales tambi en lo es C. Simb olicamente cabe considerar el
operador resultante C como producto de los dos operadores A y B:
C = AB
y los elementos matriciales c
ij
son, por denici on, los elementos de la matriz
obtenida al multiplicar A por B. Advi ertase que esta multiplicaci on operacional
o matricial no es en general conmutativa
BA = AB
pues, por denici on los elementos de la transformaci on D = BA son:
d
ij
=

k
b
ik
a
kj
que, en general, no coincidiran con los elementos de C. As pues, el sistema
coordenado nal depende del orden de aplicaci on de los operadores A y B. Sin
embargo, la multiplicaci on matricial es asociativa; en un producto de tres o mas
matrices es indiferente el orden de multiplicaci on:
(AB)C = A(BC)
Ya se a dicho que la yuxtaposici on de Ay r en la ecuaci on [A.15] para indicar
la operaci on de A sobre el sistema coordenado (o sobre el vector) era meramente
simb olica. Pero, ampliando el concepto de matriz, puede considerarse tambi en
como una multiplicaci on de matrices.
La suma de matrices aunque como concepto no es tan importante como el pro-
ducto, es una operaci on muy usual. La suma de A + B es una matriz C cuyos
elementos son las sumas de los elementos correspondientes de A y B
c
ij
= a
ij
+ b
ij
34
De mayor importancia es la transformaci on inversa de A, que hace pasar de
r

a r. Se dene por A
1
, y a sus elementos por a

ij
. Tenemos por tanto el sistema
de ecuaciones
x
i
=

j
a

ij
x

j
(A.30)
que ha de ser compatible con :
x

k
=

i
a
ki
x
i
(A.31)
Eliminando x
i
entre [A.30] y [A.31] se tiene:
x

k
=

i
a
ki

j
a

ij
x

j
=

j
_

i
a
ki
a

ij
_
x

j
(A.32)
Como las componentes de r

son independientes, la ecuaci on [A.32] es sol o co-


rrecta si la sumaci on respecto de j se reduce id enticamente a x

k
; por ello, el
coeciente de x

j
ha de ser 1 cuando j = k, y cero para j = k; en simbolos:

a
ki
a

ij
=
kj
(A.33)
Se ve que el primer miembro de [A.33] corresponde a los elementos de la ma-
triz producto AA
1
, mientras que el segundo representa los de la llamada matriz
unidad:
I =
_
_
_
1 0 0
0 1 0
0 0 1
_
_
_
De este modo, [A.33] se podr a escribir en la forma
AA
1
= I (A.34)
que aclara la raz on de haber designado por A
1
la matriz inversa. La opera-
ci on realizada por la matriz unidad se llama transformaci on id entica, y no produce
cambio alguno en el sistema de coordenadas
x = Ix (A.35)
An alogamente, su producto por una matriz A, en cualquier orden, deja esta
inalterada:
IA = AI = A
35
As pues, los elementos de las matrices directa A e inversa A
1
est an rela-
cionados por:
a

ij
= a
ji
(A.36)
En general, la matriz obtenida intercambiando en A las por columnas se
denomina matriz transpuesta y se indica con una tilde:

A. Por tanto, la ecuaci on
[A.36] indica que, en el caso de matrices ortogonales, la reciproca coincide con
la transpuesta; simbolicamente:
A
1
=

A (A.37)
Sustituyendo este resultado en [A.34] obtenemos

AA = I (A.38)
que es id entica al conjunto de condiciones de ortogonalidad [A.14], pero en
forma abreviada. Asociada a la noci on de matriz transpuesta este la de su com-
pleja conjugada, conocida por los fsicos como matriz adjunta y simbolizada por
una crucecita ():
A

= (

A)

(A.39)
An alogamente a la denici on de matriz ortogonal [A.38], una matriz unitaria
A satisface la condici on
A

A = I (A.40)
En el problema de especicar la orientaci on de un s olido rgido, la matriz de
transformaci on ha de ser real, pues tanto x como x

lo son. Por tanto, no existe


entonces distinci on entre las propiedades de ortogonal y unitaria o entre matrices
transpuestas y adjuntas. En resumen, una matriz ortogonal real es unitaria.
Las dos interpretaciones de que es susceptible un operador aparecen implcitas al
tratar de hallar la transformaci on de un operador mediante un cambio de coorde-
nadas. Consideramos A como un operador que act ua sobre un vector F (o una
matriz de una sola columna F) convirti endolo en otro G:
G = AF (A.41)
Si el sistema de coordenadas es transformado por la matriz B, las compo-
nentes del vector G en el nuevo sistema vendr an dadas por
BG = BAF (A.42)
36
o, escrito de otra forma,
BG = BAB
1
BF (A.43)
Podemos interpretar esta ecuaci on diciendo que el operador BAB1 al ac-
tuar sobre el vector F, expresando en el nuevo sistema, produce el vector G,
tambi en en funci on de las nuevas coordenadas. Por tanto, es posible interpretar
BAB
1
como la forma que toma el operador A al pasar a un nuevo sistema de
ejes
A

= BAB
1
(A.44)
Cualquier transformaci on matricial de la forma [A.44] se conoce como trans-
formaci on de semejanza.
Conviene ahora que consideremos las propiedades del determinante formado a
partir de los elementos de una matriz cuadrada. Como es costumbre, designare-
mos tal determinante por dos barras verticales |A|. Debe advertirse que la deni-
ci on de producto matricial es id entica a la del producto de determinantes por
tanto:
|AB| = |A| |B| (A.45)
Como el determinate de la matriz unidad es 1, las condiciones de ortogonali-
dad expresadas por determinantes son:
|A| = 1 (A.46)
Adem as. Como el valor del determinante no se altera al intercambiar les y
columnas se tiene:

A
2

= 1 (A.47)
Lo cual signica que el determinante de una matriz ortogonal sol o puede valer
1 o -1. Ya tendremos ocasi on de ver la interpretaci on geom etrica de estos valores.
Pero si la matriz no es ortogonal, el determinante no tomara en general, valo-
res tan sencillos. Sin embargo, se demuestra que el valor de un determinante no
varia al someterlo a una transformaci on de semejanza. Multiplicando [A.44] a la
derecha por B obtenemos la relaci on
A

B = BA
o, expresada mediante determinantes,
37
|A

| |B| = |A| |B|


Como el determinante de B es un numero y, adem as, distinto de cero, sera
posible dividir ambos miembros por |B|, obteniendo el resultado deseado
|A

| = |A|
Al estudiar el movimiento del s olido rgido utilizaremos todas estas propiedades
de las transformaciones matriciales, especialmente las correspondientes a las or-
togonales. Se necesitaran adem as otras propiedades que deduciremos a medida
que vayamos precisando de ellas.
38
Ap endice B
Transformaciones Rgidas
Los robots mueven objetos s olidos a trav es del espacio. Se asume que to-
dos los objetos s olidos son cuerpos rgidos, incluyendo las partes que forma al
robot mismo. En muchos casos esta es una buena aproximaci on, pero puede fal-
lar. Por ejemplo usar un robot para sujetar una botella de pl astico. Tambi en hay
inter es en investigar robots formados por materiales exibles,pero para este es-
tudio en particular se mantendr a el modelo de s olido rgido. Lo primero que se
necesita es una forma de poder describir las posibles posiciones de un s olido.
Esto puede realizarse por medio de transformaciones rgidas, si se establece un
eje de coordenadas jo las subsecuentes posiciones pueden obtenerse por dichas
transformaciones que describen la forma de llegar del punto jo a la posici on
actual. Estas transformaciones rgidas se caracterizan por el hecho preservan las
distancias entre los puntos. Un ejemplo es describir dos puntos de un s olido rgi-
do por medio de vectores de posici on v
1
y v
2
. El cuadrado de la distancia entre
los puntos se dene por
(v
1
v
2
) (v
1
v
2
) = (v
1
v
2
)
T
(v
1
v
2
) (B.1)
Despu es de aplicar una transformaci on los puntos tendr an una nueva posici on
v

1
y v

2
y el cuadrado de la distancia de los nuevos puntos de dene por:
(v

1
v

2
) (v

1
v

2
) = (v

1
v

2
)
T
(v

1
v

2
) (B.2)
Pero por la caracterstica de que las transformaciones rgidas preservan las
distancia entonces sea:
(v
1
v
2
) (v
1
v
2
) = (v

1
v

2
) (v

1
v

2
) (B.3)
entonces para cada par de punto v
1
y v
2
la transformaci on es ortogonal.
39
B.1. Rotaciones y Traslaciones en 2D
Las Rotaciones son una transformaci on rgida. no se distorsiona el tama no o
la forma del objeto. las rotaciones alrededor de un eje pueden ser presentadas por
una matriz de 2x2 de la forma
R() =
_
cos sin
sin cos
_
(B.4)
Hay que enfatizar el uso de la notaci on R()
Comprobar esta transformaci on [B.4], tiene el efecto de una rotaci on al contrario
las manecilla del reloj por radianes. Asumir que v = (x, y)
T
es el vector de
posici on de un punto de el s olido rgido. Expresando en coordenadas polares el
vector v, sea x = r cos() y y = r sin(). Despu es de la rotaci on, el punto ten-
dr a el mismo valor de r pero el angulo formado en el eje x sera + expresando
al nuevo vector de posici on
v

=
_
r cos( + )
r sin( + )
_
=
_
r(cos cos sin sin )
r(sin cos + cos sin )
_
=
_
x cos y sin
x sin + y cos
_
Lo anterior es una multiplicaci on de matrices
v

= R()v =
_
cos sin
sin cos
__
x
y
_
A continuaci on se hace referencia a particularidades que posse la matriz de
rotaci on
Una rotaci on de 0 radianes no tendr a ning un efecto, sustituyendo el valor
de = 0 en la matriz de rotaci on se obtiene la matriz identidad
R(0) =
_
1 0
0 1
_
El efecto de dos rotaciones sucesivas es el resultado de la multiplicaci on de
matrices
v

= R(
2
)v

= R(
2
)R(
1
)v
Es f acil observa que las rotaciones sucesivas giran al cuerpo un angulo de

1
+
2
lo anterior puede comprobarse realizando la multiplicaci on
40
R(
2
)R(
1
) =
_
cos
2
sin
2
sin
2
cos
2
__
cos
1
sin
1
sin
1
cos
1
_
=
_
cos
2
cos
1
sin
2
sin
1
sin
2
cos
1
cos
2
sin
1
sin
2
cos
1
+ cos
2
sin
1
cos
2
cos
1
sin
2
sin
1
_
=
_
cos(
1
+
2
) sin(
1
+
2
)
sin(
1
+
2
) cos(
1
+
2
)
_
= R(
2
+
1
)
(B.5)
El resultado se obtiene usando identidades trigonom etricas b asicas
La rotaci on inversa es rotar el objeto en direcci on contraria R()
1
= R()
Considerando la simetra entre las funciones seno y coseno se nota que
R()
1
= R()
T
, es decir la transpuesta de la matriz da como resultado
R()
T
R() = I
Por lo tanto si tenemos dos vectores v
1
y v
2
la rotaciones de ambos vectores
no afecta su producto escalar
(R()v
1
) (R()v
2
) = (R()v
1
)
T
(R()v
2
)
= v
T
1
R()
T
R()v
2
= v
T
1
v
2
= v
1
v
2
(B.6)
Esto justica la suposici on que la rotaci on es una transformaci on rgida
El determinantes de R() es
det R() =

cos sin
sin cos

= cos
2
+ sin
2
= 1
Lo que implica que la rotaci on no varia el area del cuerpo rgido. El he-
cho que el determinante sea +1 y no -1 signica que la transformaci on no
involucra reexiones. Las reexiones pueden considerarse tambi en trans-
formaciones rgidas, pero las m aquinas no pueden ser afectadas por dicha
transformaci on y por tanto se excluye.
A continuaci on se menciona la traslaci on de un cuerpo rgido. Una traslaci on
puede ser representada por un vector. El efecto de la traslaci on en un punto con
41
un vector de posici on v es simplemente agregar la traslaci on al vector. Defnase el
vector de traslaci on por t = (t
x
, t
y
)
T
, la expresi on simb olica dene esta traslaci on
para el vector v es
v

= v + t =
_
x
y
_
+
_
t
x
t
y
_
(B.7)
La traslaci on preserva la distancia entre los puntos v
1
y v
2
, siendo v
1
+ t y
v
2
+ t, el vector entre ellos no cambia
(v
1
+ t) (v
2
+ t) = v
1
v
2
El efecto de dos sucesivas traslaciones t
1
y t
2
se dene por la suma vectorial
t
1
+ t
2
B.2. Movimiento de los Cuerpos Rgidos en 2D
Una transformaci on rgida no es mas que simplemente una transformaci on
que deja la distancia entre entre pares de puntos ja. Ahora se intenta mostrar
que cualquier movimiento de un cuerpo rgido puede dividirse en un secuencia
de translaciones y rotaciones respecto un un eje de coordenadas jo.
Por lo tanto una transformaci on general de un cuerpo rgido puede denirse por
un par (R(), t) en donde, R() se sigue deniendo como una matriz de rotaci on
de 2x2 y t un vector de traslaci on. Estos pares tiene el siguiente efecto en los
vectores de posici on
(R(), t) : v R()v + t (B.8)
As dos sucesivas transformaciones dan como resultado
(R(
2
), t
2
) : R(
1
)v + t
1
R(
2
)R(
1
)v + R(
2
)t
1
+ t
2
Lo anterior es equivalente a una sola transformaci on rgida por el par
(R(
2
)R(
1
), R(
2
)t
1
+ t
2
)
y se obtiene un regla de multiplicaci on para estos pares
(R(
2
), t
2
)(R(
1
), t
1
) = (R(
2
)R(
1
), R(
2
)t
1
+ t
2
) (B.9)
Se debe enfatizar que la traslaciones puras se representan por pares de la for-
ma (I, t), donde I es una matriz de identidad. Rotaciones puras sobre el orgien
se representan por pares de la forma ((R(), 0) la transformaci on identidad es
42
aquella que no varia los vectores y corresponde al par (I, 0).
El orden como estas transformaciones se realizan es muy importante, es decir la
multiplicaci on entre estos pares denidos en [B.9] no es conmutativa. Por ejem-
plo el resultado de primero rotar y despu es trasladar
(I, t)(R(), 0) = (R(), t)
Cambiando los factores da un resultado totalmente diferente
(R(), 0)(I, t) = (R(), R()t)
Es posible quitar el efecto de una la transformaci on aplicando una transfor-
maci on inversa
(R(), t)
1
= (R()
T
, R()
T
t)
Con facilidad se puede comprobar multiplicando se obtiene
(R(), t)(R(), t)
1
= (R(), t)
1
(R(), t) = (I, 0)
La notaci on usada para representar las transformaciones hasta ahora es muy inc omo-
da, seria mejor usar representar la transformaci on usando solo una matriz, esto se
obtiene realizando el siguiente truco. Se considera una matriz de 3x3 de la forma
_
_
_
cos sin t
x
sin cos t
y
0 0 1
_
_
_
o en forma dividida
_
R()| t
0 | 1
_
Una multiplicaci on entre dos de estas matrices da el siguiente resultado
_
R(
2
)| t
2
0 | 1
__
R(
1
)| t
1
0 | 1
_
=
_
R(
2
)R(
1
)| R(
2
)t
1
+ t
2
0 | 1
_
El resultado imita la regla de multiplicaci on para los pares mencionada anteri-
ormente. Tambi en el uso de esta representaci on puede usarse para encontrar el
efecto de la transformaci on en un vector de posici on. Sea v = (x, y)
T
el vec-
tor puede extender su dimension agregando en extra 1; v = (x, y, 1)
T
, el extra
1 es sol o un articio matem atico y no representa una coordenada en el eje z, lo
anterior se representa por
_
_
_
cos sin t
x
sin cos t
y
0 0 1
_
_
_
_
_
_
x
y
1
_
_
_
=
_
_
_
x cos y sin + t
x
x sin + y sin + t
y
1
_
_
_
43
Usando la nuevo representaci on se da una mejor idea de la transformaci on
_
R()| t
0 | 1
_
_
v
1
_
=
_
R()v + t
1
_
Como se puede observar la nueva representaci on matricial es mucho mas conve-
niente
B.3. Centro de Rotaci on
En las ultimas secciones sol o se considero rotaciones usando como eje de
rotaci on el origen. Rotaciones en ejes arbitrarios tambi en son transformaciones
rgidas. Nuestro objetivo es encontrar las matrices corresponden a la rotaci on de
radianes, sobre un punto p = (p
x
, p
y
)
T
y no necesariamente el origen.
El movimiento puede dividirse en 3 pasos
Primero trasladar el punto p al origen; la matriz correspondiente es
_
I| p
0| 1
_
Rotar sobre el origen usando
_
R()| 0
0 | 1
_
Trasladar el origen a la posici on p
_
I| p
0| 1
_
Combinando las transformaciones anteriores se obtiene
_
I| p
0| 1
__
R()| 0
0 | 1
__
I| p
0| 1
_
=
_
R()| p R()p
0 | 1
_
Advi ertase que la primera operaci on va en el lado derecho. Esto se recuerda
considerando el efecto de una transformaci on rgida sobre un punto en el plano.
Como la representaci on matricial de la transformaci on se escribe a la izquierda
del vector representa al punto, sucesivas transformaciones son escritas mas a la
izquierda. Este m etodo para encontrar la transformaci on retrocediendo a una ya
conocida es muy util y se usara muchas veces. En general una operaci on en una
matriz M que tiene la forma TMT
1
, recibe el nombre de conjugaci on. En este
caso primero se realizo una rotaci on en el origen , seguida de una traslaci on
44
p R()p = (I R()). De echo aparte de la traslaci on pura, toda transforma-
ci on rgida de esta forma es una rotaci on jado en un centro. Es posible encontrar
el centro de rotaci on de la transformaci on gr acamente. Se necesita dos puntos,
unir cada punto con su transformaci on con una lnea recta. Los bisectores per-
pendicaular se encontraran en el centro de la rotaci on. Este m etodo funciona por
que los bisectores perpendiculares deben ser normal a las tryectorias circulares
de los puntos y al di ametro de los circulos
Para mayor precision se requiere de un m etodo algebraico para encontrar el centro
de una rotaci on. Para deducir este m etodo compare una transformaci on general
rgida con la mencionada en la ecuaci on [B.8]
_
R()| t
0 | 1
_
=
_
R()| p R()p
0 | 1
_
Para que esta igualdad sea cierta p R()p = t, resolviendo para el valor de p
p = (I R)
1
t (B.10)
En otras palabras el centro de rotaci on es el punto que permanece invariante,
el punto que mantiene su posici on despu es de aplicada la transformaci on de
rotaci on.
B.4. Rotaci on en 3D
Ahora se estudiara las transformaciones en tres dimensiones. Para convenien-
cia usaremos la notaci on estandarizara en la cual i,j y k representan vectores
unitarios en la direcci on x,y y z respectivamente. En 3D cualquier rotaci on es
alrededor de un eje jo. Por tanto para una rotaci on en 3D se debe especicar el
angulo de rotaci on y tambi en un vector unitario v en direcci on el eje de rotaci on.
Para asignar una matriz de rotaci on con una dimension de 3x3 se escribe R(, v)
R(, k) =
_
_
_
cos sin 0
sin cos 0
0 0 1
_
_
_
(B.11)
El efecto de la transformaci on en un punto con coordenadas (x, y, z)
_
_
_
x cos y sin
x sin + y cos
z
_
_
_
=
_
_
_
cos sin 0
sin cos 0
0 0 1
_
_
_
_
_
_
x
y
z
_
_
_
(B.12)
45
La anterior muestra el componente z del punto esta siempre jo, el eje z esta jo
y por tanto es una rotaci on en el plano xy
De forma similar podemos expresar rotaciones en los eje yz y zx
R(, i) =
_
_
_
1 0 0
0 cos sin
0 sin cos
_
_
_
R(, j) =
_
_
_
cos 0 sin
0 1 0
sin 0 cos
_
_
_
(B.13)
Notar que el signo en los t erminos sin() en la rotaci on R(, j est an al reves, esto
es a causa la rotaci on radianes es medida para este caso en direcci on manecillas
del reloj,
Como se menciono anteriormente, el resultado de dos rotaciones, una despu es
de la otra se obtiene usando la multiplicaci on matricial, Por tanto las rotaciones
en 3D no conmutan es decir el orden como se realicen las transformaciones de
rotaci on es importante. Para ilustrar la anterior se considera las siguientes rota-
ciones:
R(

2
, k) =
_
_
_
0 1 0
0 0 0
0 0 1
_
_
_
y R(

2
, j) =
_
_
_
0 0 1
0 1 0
1 0 0
_
_
_
(B.14)
Observemos las dos maneras posibles de combinar las rotaciones en [B.14]
R(

2
, k)R(

2
, j) =
_
_
_
0 1 0
0 0 0
0 0 1
_
_
_
_
_
_
0 0 1
0 1 0
1 0 0
_
_
_
=
_
_
_
0 1 0
0 0 1
1 0 0
_
_
_
El siguiente orden de la multiplicaci on da como resultado
R(

2
, j)R(

2
, k) =
_
_
_
0 0 1
0 1 0
1 0 0
_
_
_
_
_
_
0 1 0
0 0 0
0 0 1
_
_
_
=
_
_
_
0 0 1
1 0 0
0 1 0
_
_
_
Se observa las soluciones son diferentes. N otese tambi en que el resultado no es
una rotaci on alrededor un eje de coordenadas.
46
Observando las matrices representan una rotaci on, ahora la pregunta que surge
es como poder representar una rotaci on general en 3D? . La pregunta no es f acil
de contestar, Como se menciono toda matriz de rotaci on cumple la relaci on
R(, v)
T
R(, v) = I det R = I (B.15)
Para encontrar la representaci on matricial de una rotaci on alrededor de un vector
arbitrario, se puede usar la conjugaci on. Por ejemplo sea w un vector unitario
en el plano xz generando un angulo con el eje z. Una rotaci on de radianes
alrededor de este vector pede encontrarse rotando w de manera coincida con el
eje z, luego rotar radianes alrededor del eje z y por ultimo rotando el sistema a
su posici on inicial denida por w
R(, w)= R(, j)R(, k)R
1
(, j) (B.16)
En 2D es posible escribir cualquier matriz de rotaci on usando un sol o par ametro,
deniendo esta par ametro usando la variable .
En 3D resulta que se necesitan tres par ametros, pero es imposible elegir estos
par ametros en forma inequvoca. Por razones de topologa siempre abra una elec-
ci on de par ametros que den como resultado la misma matriz.Estas imperfectas
parametrizaciones aun as pueden ser utiles. Por ejemplo se puede pensar que
una rotaci on general en 3D es el producto de tres rotaciones alrededor del eje de
coordenadas
R(
x
,
y
,
z
)=
_
_
_
cos
z
sin
z
0
sin
z
cos
z
0
0 0 1
_
_
_
_
_
_
cos
y
0 sin
y
0 1 0
sin
y
0 cos
y
_
_
_
_
_
_
1 0 0
0 cos
x
sin
x
0 sin
x
cos
x
_
_
_
=
_
_
_
cos
y
cos
z
sin
x
sin
y
cos
z
cos
x
sin
z
cos
x
sin
y
cos
z
+ sin
x
sin
z
cos
y
sin
z
sin
x
sin
y
sin
z
+ cos
x
cos
z
cos
x
sin
y
sin
z
sin
x
cos
z
sin
y
sin
x
cos
y
cos
x
cos
y
_
_
_
Aparte del echo esta matriz es muy larga, encontramos el problema que cuando
al par ametro
y
= /2 la matriz se convierte en
R(
x
,

2
,
z
)=
_
_
_
0 sin(
x

z
) cos(
x

z
)
0 cos(
x

z
) sin(
x

z
)
1 0 0
_
_
_
Para la matriz superior encontramos que se encuentra el mismo resultado siempre
que
x
=
z
+ c donde c es una constante real.
47
B.4.1.

Angulos de Euler
Otra parametrizaci on de las rotaciones es en t erminos de los angulos de Euler.
Los angulos de Euler (, , ) denen las siguientes rotaciones: rotar alrededor
del eje z, rotar alrededor del eje y y por ultimo, rotar alrededor del eje z ver
g(5.1)
R(, , )= R(, k)R(, j)R(, k)
=
_
_
_
cos sin 0
sin cos 0
0 0 1
_
_
_
_
_
_
cos 0 sin
0 1 0
sin 0 cos
_
_
_
_
_
_
cos sin 0
sin cos 0
0 0 1
_
_
_
=
_
_
_
cos cos cos sin sin cos cos sin sin cos cos sin
sin cos cos + cos sin sin cos sin + cos sin sin sin
sin cos sin sin cos
_
_
_
(B.17)
Para el caso de los angulos de euler el rango de los par ametros es el siguiente:
Figura B.1: Angulos Euler diagrama.
0 < , 0 < 2 y para evadir duplicaci on de resultados el ultimo
par ametro se restringe de 0 < . Pero aun con estas medidas no se puede
evadir la duplicaci on del todo, si = 0 obtenemos el mismo resultado siempre
que + tenga un valor constante. Esto puede observarse con facilidad en los
diagramas denen los angulos de euler. En siguientes captulos se mencionara
por que esta caso es importante en el estudio de las mu nequeras en robots.
48
B.5. Movimiento de los Cuerpos Rgidos en 3D
Traslaciones puras en 3D pueden expresarse con con facilidad ya que son
muy similares a el caso en 2D. Como el caso anterior en 2D de nuevo las trasla-
ciones en 3D pueden representarse por vectores (Un vector de tres componentes
en este caso). De igual manera las rotaciones act uan sobre las traslaciones y el
movimiento general en 3D puede representarse usando una matriz 4x4 dividida
como se muestra a continuaci on
_
R(, v)| t
0 | 1
_
(B.18)
De nuevo se emplea la regla de multiplicaci on
_
R(
2
, v
2
)| t
2
0 | 1
__
R(
1
, v
1
)| t
1
0 | 1
_
=
_
R(
2
, v
2
)R(
1
, v
1
)| R(
2
, v
2
)t
1
+ t
2
0 | 1
_
(B.19)
Para describir un movimiento rgido en 3D, se estara tentado a pensar que en
general seria una rotaci on alrededor de una lnea en el espacio. Esta armaci on
tiende a ser no general ya que tambi en es permitido una traslaci on a lo largo del
eje de rotaci on (lnea en el espacio) el resultado entonces de combinar la rotaci on
mas una traslaci on a lo largo del eje seria un movimiento de h elice o de tornillo
ver g(D.2).
El movimiento en forma de tornillo se representa usando la siguiente matriz
_
I| u
0| 1
_
_
R(, v)|
p
2
v
0 | 1
_
_
I| u
0| 1
_
=
_
R(, v)|
p
2
v + (I R(, v))u
0 | 1
_
(B.20)
En la ecuaci on [B.20] la matriz de en medio muestra un movimiento tornillo, es
decir una rotaci on alrededor del eje v seguida por una traslaci on en direcci on de
v. Las otras matrices conjugan la matriz de en medio y sirve para mover la lnea
a una posici on arbitraria en el espacio. El par ametro p es la frecuencia del tornil-
lo (vueltas por distancia). Cuando p = 0 se genera un rotaci on pura, un valor
de p positivo indica un movimiento tornillo en direcci on la mano izquierda y un
valor de p negativo un movimiento tornillo en direcci on la mano derecha. Para
mostrar que el movimiento de un cuerpo rgido en general se representa por un
movimiento tipo tornillo, se debe encontrar el valor de los par ametros v, u, y p.
El vector unitario v en direcci on de la lnea se encuentra de manera f acil ya que
debe ser un eigenvector de la matriz de rotaci on.
El vector u es mas difcil de encontrar ya que es cualquier vector de posici on
de cualquier punto en el eje de rotaci on. Pero se puede especicar u de manera
49
sea normal al eje de rotaci on, imponiendo la condici on u v
p
2
v + (I R)u = t (B.21)
siendo v Ru = v u = 0, por que la rotaci on es alrededor de v, sustituyendo en
[B.22] se encuentra el par ametro p
p =
2

v t (B.22)
Por ultimo se encuentra el par ametro u resolviendo
(I R)u = (t (v t)v) (B.23)
Para entender se plantea el siguiente problema : Dada la matriz de transformaci on
_
_
_
_
_
_
2+

3
4
2

3
4
1
2

2
1
6

2
2

3
4
2+

3
4
1
2

2
5
6

2
1
2

2
1
2

3
2
2

3
2
0 0 0 1
_
_
_
_
_
_
Encontrar los par ametros p,,v y u
Primero se debe encontrar el par ametro v = (vx, vy, vz)
T
, este par ametro se
encuentra resolviendo (I R)v = 0 esta a causa que por ser v el eje de rotaci on
es invariable por la transformaci on R
(I R)v =
_
_
_
_
2

3
4
2+

3
4
1
2

2
2+

3
4
2

3
4
1
2

2
1
2

2
1
2

2
2

3
2
_
_
_
_
_
v
x
v
y
v
z
_
T
=

0
Aplicando cualquier m etodo reducci on de matrices encontramos que v
z
= 0 y
v
x
= v
y
, por tanto el vector unitario v es:

v =
_
_
_
1

2
1

2
0
_
_
_
Para encontrar el angulo de rotaci on , se observa que v no tiene componentes
en la direcci on de z entonces k v = 0. al ser k perpendicular al eje de rotaci on,
el efecto de la rotaci on es k Rk = cos entonces cos =

3/2 y el valor de
50
= /6. Conociendo el valor de los par ametros v y se procede a encontrar p
p =
2

(v t) = 4
Figura B.2: Encontrando el angulo de rotaci on.
51
Ap endice C
Introducci on a la Rob otica
En denir el objetivo del tema, se debe establecer la genealoga de sistemas
mec anicos roboticos. siendo esta una subclase de los sistemas mec anicos y la
vez los sistemas mec anicos son subclase de un concepto mas general llamado
sistemas din amicos. Por tanto se debe tener una idea de que es en general un
sistema. El diccionario de la Real Academia Espa nola dene sistema como un
Conjunto de cosas que relacionadas entre s ordenadamente contribuyen a deter-
minado objeto en otras palabras un conjunto de elementos interact uan como un
todo. Un sistema din amico es un sistema el cual se distingue por tener tres ele-
mentos, un estado, una entrada y una salida, en adici on una regla de transici on
de ir del estado actual a uno futuro. Mas aun el estado es funcional de la entrada
y funci on de un estado previo.En este concepto la idea del orden es importante y
puede tomarse en cuenta asociando a cada estado un valor de tiempo. Esto sig-
nica que el estado de un sistema din amico en un cierto instante es determinado
no sol o por el valor de la entrada en ese instante pero tambi en por los eventos
anteriores de la entrada. Por esta virtud se dice que los sistemas din amicos tienen
memoria. Sistemas donde su estado en un instante es sol o funci on de la entrada
en el tiempo actual son est aticos y se dicen que no poseen memoria.
Obviamente un sistema mec anico es un sistema compuesto de elementos mec anicos,
Si el sistema cumple con la denici on de sistema din amico entonces recibe el
nombre de sistemas din amicos mec anicos. Los sistema mec anicos de este tipo
son aquellos en los cuales la inercia de los elementos se toma en cuenta. Sistemas
est aticos mec anicos son aquello en que la inercia no se toma en cuenta. Los e-
lementos constituyen los sistemas mec anicos son cuerpos rgidos y deformables,
uidos comprensibles e incompresibles. Los sistemas mec anicos pueden ser na-
turales o creados por el hombre siendo el ultimo el objetivo de estudio. Los
sistemas mec anicos creados por el hombre pueden ser de control y de no con-
trol. La mayora de los sistema mec anicos en la ingeniera son de control al
mismo tiempo un sistema de control mec anico puede ser robotico o no roboti-
co. Los no roboticos son sistemas que contienen controles primitivos por lo ge-
52
neral an alogos como termostatos, v alvulas,etc. Los sistemas Roboticos pueden
ser programables, los sistemas programables obedecen comandos de movimiento
que est an almacenados en memoria o generados en lnea, en cualquiera de los
dos casos estos sistemas requieren sensores primitivos tales como acelerometros,
dinamometrometos. Robots Inteligentes o mas mejor conocidos por el termino
m aquinas inteligentes que actualmente se investigan, si las m aquinas inteligentes
son posibles, depender an de un sosticado sistema de sensores y un software que
procese la informaci on proporcionada por los sensores. La informaci on proce-
sada sera enviada a los actuadores en proporcionar el movimiento deseado que
desempe ne el robot. A diferencia de los robots programables que su operaci on
esta limitada a un ambiente estructurado. las m aquinas inteligentes son capaces
de actuar a cambios repentinos en un ambiente no estructurado. Por tanto las
m aquinas inteligentes deben estar proporcionadas con la habilidad de tomar de-
cisiones parecido a la toma natural de decisiones por organismos vivos esta es la
raz on por la cual el uso del termino inteligente en primer lugar. Lo que se supone
hace a estas m aquinas inteligentes es su habilidad de percepci on que involucra un
cierto elemento de subjetividad. Hasta ahora la tarea mas compleja de percepci on
en humanos y m aquinas, es la vision (Levine,1985;Horn, 1986). En resumen,
una m aquina inteligente es capaz de (i) percibir el ambiente; (ii) razonar la in-
formaci on percibida; (iii) tomar decisiones en base esta percepci on; y (iv) actuar
acorde un plan especicado a un nivel muy alto, en otras palabras la m aquina
toma desiciones en base a intrucciones similares a las de un ser humano ejemplo
: Traer un vaso de agua sin que se derrame. Ya sea m aquinas inteligente con esas
cualidades sean o no posibles es todava un tema de discusi on llegando hasta ins-
tancias los ocas. Penrose (1994) escribi o una detallada discusi on refutando la
armaci on m aquinas inteligentes son posibles.
53
Figura C.1: Genealoga.
C.1. Manipuladores en Serie
De todos los sistemas mec anicos roboticos que se mencionaron, los mani-
puladores roboticos son de gran importancia por varias razones. La primera es
su relevancia en la industria,la segunda es que es el mas simple de los sistemas
mec anicos roboticos y por ende aparecen como constituyentes de otros mas com-
plejos sistemas roboticos. Un manipulador es en general un sistema mec anico
que tiene por objetivo manipular objetos. Manipular es mover un objeto usando
las manos, manipular se deriva del latn manus. La idea b asica atr as de La palabra
manipuladores en rob otica es que las manos son organos que el cerebro humano
puede controlar mec anicamente con una alta precision, esto lo muestran los artis-
tas como picasso, un guitarrista o un cirujano. Por tanto un manipulador es un
aditamento ayuda al hombre realizar una tarea, Aunque los manipuladores ya
existan desde que el hombre descubri o la primera herramienta, sol o muy recien-
temente a nales de la segunda guerra mundial se desarrollaron manipuladores
que eran capaces de imitar el movimiento de un brazo humano para manipu-
lar sustancia radiactivas surgiendo los primeros manipuladores de seis grado de
libertad. La necesidad de manufacturar piezas mec anicas con gran precision sur-
54
gi o en la industria de aviones que propicio los primeros controladores num ericos
o abreviado en ingl es (NC) que eran una sntesis de los manipuladores de seis gra-
dos y a su vez las m aquinas num ericas produjeron lo que seria los manipuladores
roboticos a inici o de 1960 . La diferencia esencial entre los anteriores manipu-
ladores y el manipulador robotico es su capacidad de control por medio de la
computadora permitiendo ser programado para realizar una tarea por siempre, la
llegada de los microprocesadores que permitieron al maestro humano ense nar a
un manipulador una tarea manejando al manipulador grabando todas las posi-
ciones realizadas por el maestro para despu es repetir la misma tarea, no obstante
la capacidad de un robot industrial es explotada al m aximo cuando el manipu-
lador es programado con software en lugar de grabar la trayectoria.
Actualmente se investiga software y hardware permita que los manipuladores
roboticos tomen decisiones al momento y aprendan mientras realizan la tarea, la
implementaci on de tales sistemas esta fuera del estudio de este libro Latombe(1991)
C.2. Manipuladores en Paralelo
Un robot paralelo est a compuesto por una cadena cinem atica cerrada, la cual
consta de cadenas seriales separadas que conectan al eslab on jo (plataforma -
ja) con el efector nal (plataforma m ovil), tambi en nombrados manipuladores
de plataforma como lo comenta L.W. Tsai [1]. Este tipo de manipulador presen-
ta grandes ventajas comparado con los manipuladores seriales, destacando las
siguientes: mejor estabilidad y precisi on, peso ligero, capacidad de manipular
cargas relativamente grandes, altas velocidades y aceleraciones, y baja fuerza de
actuaci on, siendo su principal desventaja el espacio de trabajo reducido.
En lo que respecta a la aplicaci on de robots paralelos en el area de ensamble, se
han desarrollado investigaciones recientes como la realizada por Amirat 2001 [2]
en donde presenta una c elula exible de ensamble destinada a ejecutar tareas de
ensamble preciso, en la cual se incluye un robot paralelo de seis grados de liber-
tad (6 DOF) el cual act ua como la fuerza controladora de la mu neca de un robot
cartesiano. Morris 2001 [3] investiga a cerca del uso de un manipulador paralelo
de 6 DOF que incorpora aspectos de la plataforma de Stewart (Plataforma de seis
grados de libertad, la cual fue de los primeros an alisis en robots paralelos) con
el n de realizar ensambles mec anicos que normalmente se realizan a mano, co-
mo lo son componentes seleccionados de transmisi on automotriz. R.C. Michelini
2001 [4] ha trabajado en el dise no de un manipulador paralelo de cuatro grados
de libertad 4 DOF para ensambles que se caracterizan por la rapidez, precisi on
y seguridad dentro del rango de desempe no esperado. Ahora bien, estudios rela-
cionados con robots paralelos planares de tres grados de libertad 3 DOF se han
55
venido realizando en la universidad de Ohio por R.L. Williams II [5] quien se en-
foca en el dise no, construcci on y control de este tipo de manipuladores, con el n
de evaluar el control del mismo utilizando elementos neum aticos y proponiendo
su dise no para diversas tareas entre ellas ensamble de piezas. Cabe mencionar
que actualmente Williams [6], tambi en realiza an alisis cinem aticos para diversos
manipuladores planares.
C.3. Anatoma del Robot
En esta secci on se estudiara los componentes b asicos que forman a un robot.
Esencialmente se considera que un robot esta formado por enlaces entre s olidos
rgidos conectados entre si por uniones. En el mas simple de los casos las uniones
est an conectadas en serie, para formar un ciclo abierto. Se pueden usar una con-
guraci on de uniones mas complicadas, y el an alisis de los manipuladores que
contienen ciclos cerraros es mas complejo.
C.3.1. Uniones
Para nuestro estudio se considera que un enlace es un cuerpo rgido, en los
captulos anteriores se menciono sus transformaciones especicas. A primera
vista se pudiera decir que hay formas ilimitadas de unir los enlaces y al mismo
tiempo permitir un movimiento relativo. En 1870 un ingeniero mec anico Alem an
llamado Franz Reuleaux simplic o las cosas deniendo lower pairs o tambi en
llamados Reuleaux lower pair, estos pares son supercies id enticas; una solida y
la otra hueca. Estas supercies embonan pero pueden moverse relativamente una
a la otra mientras permanecen en contacto.
Reuleauxe encontr o seis de tales pares y puede mostrarse que son las unicas posi-
bilidades
1. Cualquier supercie de revoluci on da un R-pair
2. Cualquier supercie de h elice da un H-pair
3. Cualquier supercie de traslaci on, como un prima resulta en una P-pair
4. La supercie de una cilindro es una supercie de traslaci on y rotaci on. Dos
cilindros forman un C-pair
5. Una esfera es una supercie de revoluci on alrededor cualquier di ametro. da
un S-pair
56
6. Un plano es una supercie de traslaci on alrededor de una lnea en el plano y
una supercie de revoluci on alrededor una lnea normal. Dos planos forman
un E-pair
Figura C.2: Uniones.
Cada uno de estos pares puede considerarse una union. Por ejemplo un R-pair
da el movimiento de una bisagra. De echo cualquier articulacion entre enlaces
puede considerarse como combinaci on de estos seis pares. Como se menciono
antes el movimiento de un cuerpo rgido en general es en forma de tornillo.
Una parte importante que estudia la rob otica es la localizaci on de objetos en
un espacio de tres dimensiones,en orden para describir la posici on y la orientaci on
de un cuerpo en el espacio se plantea un eje de coordenadas jo al objeto, despu es
se describe la posici on y orientaci on del objeto respecto a un marco de referencia
ver gura (C.3)
C.4. Cinem atica Directa de Manipuladores
La cinem atica es la ciencia que estudia el movimiento excluyendo las fuerzas
que la causaron. Dentro la ciencia de la cinem atica se estudia la posici on, ve-
locidad, aceleraci on y todas las derivadas de las variables de posici on. Por tanto
la cinem atica hace referencia a las propiedades geometra del movimiento.Los
57
Figura C.3: Ejes de coordenada diferente origen.
Manipuladores est an formados por enlaces rgidos que est an conectados entre si
por uniones que permiten un movimiento relativo que los enlaces vecinos. Estas
uniones est an por lo general instrumentados por sensores de posici on que per-
miten la medici on de la posici on de los enlaces vecinos. En el caso de uniones
que generan movimiento de traslaci on y rotaci on los desplazamientos se generan
se llaman angulos de union.
En el caso de robots industriales los manipuladores forman cadenas abiertas y
la posici on de cada union por lo general se dene por una sola variable por tanto
el numero de uniones es igual al numero grados de libertad. Al nal de la cadena
de uniones que forman al manipulador se encuentra el efector nal o en ingl es
end-effector. Dependiendo de la aplicaci on del robot el efecto nal puede ser
unas pinzas, un im an u otro dispositivo. Por lo general se describe La posici on
del manipulador relativo al eje de coordenadas de referencia que se encuentra en
una base ja del manipulador.
Un problema b asico en el estudio de los manipuladores Es encontrar la posici on y
la orientaci on del efecto efecto nal en base el eje de coordenadas de referencia,
dada la posici on de las uniones en el espacio. La idea b asica para resolver este
problema es encontrar las matrices corresponden al movimiento de cada union,
Combinar las matrices en el orden correcto estas matrices se mencionaron en
captulos anteriores. Ahora se mostraran ejemplos simples platen el problema de
la cinem atica directa por ser simples no signican sean triviales, muchos robots
comerciales incorporan las estructuras mencionadas en los siguientes ejemplos
58
C.4.1. 3R Mu nequera
La estructura de una mu nequera es un componente en varios robots, (Puma y
el manipulador Standford son ejemplos). La mu nequera 3R se forma por tres R-
pair que sus ejes coinciden en un mismo punto.este es un ejemplo de un mecan-
ismo esf erico. En la conguraci on base la primera,tercera union se encuentra
alineados en direcci on el eje z, y la segunda union en direcci on el eje-y el sistema
de coordenadas de referencia se encuentra en el punto las uniones coinciden. Por
tanto la matriz de K es:
K(
1
,
2
,
3
) = R(
1
, k)R(
2
, j)R(
3
, k) (C.1)
Pares esta caso se usa la representaci on normal de una matriz de rotaci on 3x3,
observemos que tan similar el resultado K es a los angulos de euler, siendo esto
no coincidencia desarrollando los elementos de las matrices en [C.1]
Donde , y es igual a
1
,
2
,
3
respectivamente.La manera mas simple
de tratar la 3R mu nequera es utilizando el m etodo de la matriz transformaci on
cinem atica,si eligi eramos otra parametrizaci on de las rotaciones la matrix k se
vuelva muy complicada y tendramos que resolver por medio de una complicada
trigonometra. Por ejemplo un vector adjunto al efector nal y con posici on inicial
(0,0,1) se transforma en
K
_
_
_
0
0
1
_
_
_
=
_
_
_
cos
2
sin
2
sin
1
sin
2
cos
2
_
_
_
C.5. Par ametros de Denavit Hartenberg
Para arreglos de enlaces mas complicados es preferible usar una notaci on es-
tandarizada para describir la geometra de un manipulador, Tal notaci on fue pro-
puesta en 1955 por Denavit and Harbenterg y actualmente su uso es generalizado.
La gura (E.4) muestra un enlace arbitrario con uniones en sus extremos. El eje
z es designado como un eje de coordenadas de las uniones permientiendo a las
uniones rotar alrededor del eje o deslizarse paralelo al eje. Para hacer el esquema
mas general los ejes de las uniones en los extremos se consideran como lneas.
Es un echo que un par de lneas se encuentran en un unico par de planos paralelos
el entendimiento de esta idea es importante en visualizar la idea del concepto. El
i-esimo enlace se dene por tener un enlace (i 1) en uno de sus extremos y en
el otro extremo un enlace i. Otro echo de geometra es que hay una lnea unica
que es la distancia mas corta entre los dos ejes z esta lnea va del punto N
i1
a O
i
59
y es normal a ambos planos. Si los ejes de las uniones fueran paralelos entonces
no hay un par unico de planos
Seg un la representaci on DH, escogiendo adecuadamente los sistemas de coor-
denadas asociados para cada eslab on, ser a posible pasar de uno al siguiente me-
diante 4 transformaciones b asicas que dependen exclusivamente de las carac-
tersticas geom etricas del eslab on. Estas transformaciones b asicas consisten en
una sucesi on de rotaciones y traslaciones que permitan relacionar el sistema de
referencia del elemento i con el sistema del elemento i-1. Las transformaciones
en cuesti on son las siguientes:
1. Rotaci on alrededor del eje Z
i1
un angulo
i
.
2. Traslaci on a lo largo de Z
i1
una distancia d
i
; vector d
i
(0, 0, d
i
).
3. Traslaci on a lo largo de X
i
una distancia a
i
; vector a
i
(0, 0, a
i
).
4. Rotaci on alrededor del eje X
i
, un angulo
i
.
Las relaciones entre eslabones no consecutivos vienen dadas por las matrices T
que se obtienen como producto de un conjunto de matrices A.
i1
[A]
i
= [T, z
i1
, d
i
][T, z
i1
,
i
][T, x
i
, a
i
][T, x
i
,
i
]
De este modo se tiene que:
i1
[A]
i
=
_
_
_
_
_
_
1 0 0 0
0 1 0 0
0 0 1 d
i
0 0 0 1
_
_
_
_
_
_
_
_
_
_
_
_
C
i
S
i
0 0
S
i
C
i
0 0
0 0 1 0
0 0 0 1
_
_
_
_
_
_
_
_
_
_
_
_
1 0 0 a
i
0 1 0 0
0 0 1 0
0 0 0 1
_
_
_
_
_
_
_
_
_
_
_
_
1 0 0 0
0 C
i
S
i
0
0 S
i
C
i
0
0 0 0 1
_
_
_
_
_
_
=
_
_
_
_
_
_
C
i
S
i
C
i
S
i
S
i
a
i
C
i
S
i
C
i
C
i
C
i
S
i
a
i
S
i
0 S
i
C
i
d
i
0 0 0 1
_
_
_
_
_
_
(C.2)
Una vez obtenidos los par ametros DH, el calculo de las relaciones entre los
eslabones consecutivos del robot es inmediato, ya que vienen dadas por las ma-
trices A, que se calcula seg un la expresi on general [C.2].
60
Figura C.4: Enlace arbitrario con uniones en su terminaciones.
C.6. Aplicaci on de los Par ametros de DH a un Ma-
nipulador
La gura (E.5) muestra un manipulador que consiste de 3 enlaces y todas las
uniones del manipulador son R-pair. para describir la cinem atica del manipulador
lo primero es asignar cuidadosamente los ejes ya que deben obedecer las reglas
de los par ametros de DH. El primer enlace es un pilar vertical que gira alededor
del eje z
o
y el eje x
o
se elige que sea normal to the pin axis. Los otros enlaces se
encuentra unidos por pins.
Los par ametros DH del manipulador son los siguientes
Link d a
1
1
d
1
0 +90
2
2
0 a
2
0
3
3
0 a
3
0
Cuadro C.1: Par ametros D-H para un robot
61
Donde d
1
,a
2
,a
3
son constantes, y las matrices A se muestran a continuaci on
0
[A]
1
=
_
_
_
_
_
_
C
1
0 S
1
0
S
1
0 C
1
0
0 1 0 d
1
0 0 0 1
_
_
_
_
_
_
1
[A]
2
=
_
_
_
_
_
_
C
2
S
2
0 a
2
C
2
S
2
C
2
0 a
2
S
2
0 0 1 0
0 0 0 1
_
_
_
_
_
_
2
[A]
3
=
_
_
_
_
_
_
C
3
S
3
0 a
3
C
3
S
3
C
3
0 a
3
S
3
0 0 1 0
0 0 0 1
_
_
_
_
_
_
La matriz dene la posici on del efector nal en funci on de los ejes de referencia
base es por tanto
0
[A]
3
=
0
[A]
1 1
[A]
2 2
[A]
3
Figura C.5: Robot basado en los parametros DH del cuadro 6.1.
Usando MATLAB para el an alisis de la cinem atica del robot se dibuja un
simple modelo del robot The Robot Arm Free Body Diagram (FBD) basado en
los par ametros DH en su conguraci on base
1
=
2
=
3
= 0 con el valor de
d
1
= a
2
= a
3
= 1
62
C.7. Cinem atica Inversa de Manipuladores
El objetivo de la cinem atica inversa consiste en encontrar la posici on que
deben adoptar las diferentes articulaciones dado la solamente la posici on del efec-
tor nal.
El problema de la cinem atica inversa es por tanto encontrar el valor de las va-
riables independientes q, tal dada la transformaci on f lo anterior se representa
por:
x = K(q) cinematica directa
q = K
1
(x) cinematica inversa
(C.3)
Como ya se menciono K es una matriz que dene la posici on y orientaci on del
efector nal, La cinem atica inversa es un problema mas complicado que la cine-
m atica directa, encontrar el valor de las variables q involucra resolver un sistema
de n ecuaciones no lineales (los elementos de la matriz K involucran cosenos y
senos) es posible que el sistema no tenga soluci on alguna o existan mas de una
conguraci on de uniones resuelven el problema.
C.7.1. Jacobiano
Matem aticamente las ecuaciones cinem aticas, denen una funci on entre el
espacio cartesiano y el espacio de las articulaciones. Se puede pensar que la cin-
em atica directa es un mapping del espacio de union al espacio del movimiento
de los s olidos rgidos, la imagen de este mapping se denomina Workspace. El
workspace consiste de todas las posicines y orientaciones que el efector nal
puede realizar y por tanto En general el workspace se puede considerar como un
subespacio de todos los movimiento un s olido rgido,
K : (
i
) (x
1
, x
2
, x
3
)
Ahora se propone minimizar el desplazamiento de las uniones de esta forma se
linealiza el mapa y la posici on del efector nal es por tanto:
x
1
=
k
1

1
+
k
1

2
+ ... +
k
1

n
x
2
=
k
2

1
+
k
2

2
+ ... +
k
2

n
x
3
=
k
3

1
+
k
3

2
+ ... +
k
3

n
(C.4)
63
Si se escribe (x
1
, x
2
, x
3
)
T
= x y (
1
, ...
n
)
T
= la ecuaci on [C.10] se
simplica a
x = J (C.5)
Donde J es la matriz Jacobiana
J(x
1
, ..., x
n
) =
_

_
y
1
x
1

y
1
xn
.
.
.
.
.
.
.
.
.
ym
x
1

ym
xn
_

_
(C.6)
El jacobiano prove una relaci on entre las velocidades de los angulos de union
y la velocidad resultante del efector nal Derivando la ecuaci on [C.12] por un
incremento innitesimal t
x = J

(C.7)
EL jacobiano es importante en el dise no y control de robots, una propiedad im-
portante del jacobiano que se usar de ahora en adelante es
J(J
1
, ..., J
n
), donde J
n

nx1
(C.8)
En donde J
1
, ..J
n
representan las columnas de la matriz jacobiana J, por tanto es
la ecuaci on [xx] se puede escribir de la siguiente forma
x = J
1

1
+ ...J
n

n
(C.9)
Por tanto la velocidad resultante del efector nal es igual a la suma vectorial de la
velocidad inducida por cada uno de los angulos de union en forma individual, Ca-
da columna n de la matriz jacobiana entonces representa la velocidad del efector
nal generada por el movimiento del n angulo mientras las dem as uniones per-
manece inm oviles, mas aun las columnas del jacobiano controlan la direcci on en
la cual el efector nal puede moverse esto es que el robot solo puede moverse en
direcciones que son combinaci on lineal de las columnas de la matriz jacobiana, si
existe una dependencia entre las columnas del jacobiano el robot pierde un grado
de libertar tales puntos reciben el nombre de puntos singulares, para encontrar los
puntos singular el determinante de la matriz jacobiano debe ser nulo
Det(J) = 0 (C.10)
Es importante resaltar que en ocasiones los puntos singulares se encuentra en
el centro del workspace degradando as la movilidad y destreza del movimiento
del robot. Para superar esta dicultad se proponen varios m etodos uno de ellos es
generar trayectorias que no pasen por los puntos singulares, otro m etodo es incluir
64
adicionales grados de libertad para que aunque se pierdan grado de libertad en
ciertas conguraciones el robot pueda mantener la destreza requerida tales robots
reciben el nombre de redundant robots
C.7.2. M etodos Num ericos
La matrix jacobiana tiene aplicaciones en varios m etodos num ericos, para
resolver el problema cinem atica inversa.
Para una funci on f de una sola variable el m etodo de Newton-Raphson tiene por
prop osito encontrar aproximaciones de los ceros o races de una funci on real.
f(x) = 0 (C.11)
se comienza con un valor razonablemente cercano al cero (denominado punto de
arranque), entonces se reemplaza la funci on por la recta tangente en ese valor, se
iguala a cero y se despeja (f acilmente, por ser una ecuaci on lineal). Este cero ser a,
generalmente, una aproximaci on mejor a la raz de la funci on. Luego, se aplican
tantas iteraciones como se deseen.Sup ongase f : [a, b] R funci on derivable
denida en el intervalo real [a, b]. Empezamos con un valor inicial x
0
y denimos
para cada n umero natural n
x
n+1
= x
n

f(x
n
)
f

(x
n
)
. (C.12)
Los anterior puede generalizarse f acilmente a funciones de varias variables. Por
ejemplo sup ongase que se tiene seis ecuaciones con seis variables
f
1
(
1
, ...,
6
) = 0
f
2
(
1
, ...,
6
) = 0
.
.
.
f
6
(
1
, ...,
6
) = 0
(C.13)
Ahora se intenta resumir en una notaci on vectorial, el teorema de Taylor dice que
mientras que f() = 0
f( + h) f() + J()h (C.14)
Ahora se asume que se desea encontrar la raz de la funci on f() = 0, se puede
aproximar el error h:
h J
1
()f( + h) (C.15)
65
En la ecuaci on [xx] no se puede calcular el valor de J
1
() por que se desconoce
el valor de y se aproxima por J
1
( + h). Siendo h
n
=
n

n+1
se establece
el siguiente algoritmo

(n+1)
=
(n)
J
1
(
(n)
)f(
(n)
) (C.16)
la ecuaci on [C.16] es el m etodo de Newton-Rapshon para varias variables. En
practica la inversion de matrices no es recomendado y un m etodo mas r apido es
resolver usando reducci on gauss.
C.7.3. Ejemplos
A continuaci on se propone un ejemplo donde se usa el m etodo de Newton-
Rapson para resolver la cinem atica inversa del manipulador
Encuentra los angulos de union que localizan al efector nal, para el manipu-
lador en el plano estudiado en la secci on [3.1] en el punto x = 0,5, y = 3,0 y
= 2/3 radianes. Si l
1
= 2, l
2
= 1 y l
3
= 1
Primero se debe encontrar la matriz cinem atica de transformaci on K que
para este ejemplo se encuentra en la secci on [3.1]
Se desarrolla r

= (K)r para este ejemplo el valor r

= (0.5, 3)
T
y r =
(4, 0, 0)
T
sustituyendo se obtiene un sistema de tres ecuaciones no lineales
2 cos(
1
) + cos(
1
+
2
) + cos(
1
+
2
+
3
) 0,5 = 0
2 sin(
1
) + sin(
1
+
2
) + sin(
1
+
2
+
3
) 3 = 0

1
+
2
+
3
2/3 = 0
(C.17)
El sistema de ecuaciones [C.17] se resuelve usando el m etodo Newton-
Rapshon [C.16] Se calcula la matriz jacobiana del sistema ecuaciones [C.17]
J(
1
,
2
,
3
) =
_
_
_
_
_
_
_
_
2 sin
1
sin(
1
+
2
)
sin(
1
+
2
+
3
)
sin(
1
+
2
)
sin(
1
+
2
+
3
)
sin(
1
+
2
+
3
)
2 cos
1
+ cos(
1
+
2
)
+cos(
1
+
2
+
3
)
cos(
1
+
2
)
+cos(
1
+
2
+
3
)
cos(
1
+
2
+
3
)
1 1 1
_
_
_
_
_
_
_
_
66
Se propone un valor inicial
(0)
= (/3, /6, /6)
T
y se corre el algoritmo
J(
(0)
) =
_
_
_
3.5981 1.8660 0.8660
0.5000 0.5000 0.5000
1 1 1
_
_
_
y f(
(0)
) =
_
_
_
0.0000
0.5981
0.0000
_
_
_
Se encuentra el error de aproximaci on
_
_
_
3.5981 1.8660 0.8660
0.5000 0.5000 0.5000
1 1 1
_
_
_
_
_
_
h
(0)
1
h
(0)
2
h
(0)
3
_
_
_
=
_
_
_
0.0000
0.5981
0.0000
_
_
_
Se encuentra la primera aproximaci on al valor los angulos de union
(1)

(1)
=
(0)
h
(0)
=
_
_
_
0.4491
2.5176
0.0000
_
_
_
Utilizando el mismo algoritmo se minimiza el error

(2)
=
_
_
_
0.6097
1.6083
0.1236
_
_
_

(3)
=
_
_
_
0.6789
1.4106
0.0049
_
_
_

(4)
=
_
_
_
0.6984
1.4329
0.0369
_
_
_
El valor aproximado hasta 2 dgitos es = (0.6984, 1.4329, 0.0369) radianes.
67
Ap endice D
Generaci on de Trayectorias
Hasta ahora sol o se a considerado mover el manipulador a un sol o punto.
En muchas situaciones se desea el robot siga una trayectoria prescrita, algunos
ejemplos son Robots que se utilizan en ensamblado,pintura,soldadura,corte,etc.
La trayectoria se genera a base el movimiento de una secuencia continua de s oli-
dos rgidos K(t) donde el par ametro t representa el tiempo por tanto se deber
resolver la siguiente ecuaci on
N

i=1
A
i
(
i
) = K(t) (D.1)
Por tanto el problema es encontrar el valor de los angulos de union en funci on
del tiempo
i
(t), que no es una tarea f acil en casos muy especiales es posible
encontrar una soluci on exacta pero en la practica el valor de
i
(t) se aproxima.
En general una computadora controla la trayectoria del robot, la trayectoria se
forma deniendo puntos en el espacio y calculando los angulos de union corre-
sponde a esos puntos usando la cinem atica inversa, mayor el numero de puntos
mejor se dene la trayectoria pero el tiempo necesario para realizar los c alculos
aumenta. Es posible reducir este tiempo de computo proponiendo que en lugar de
calcular la cinem atica inversa para cada punto que dene la trayectoria se denan
punt es posible guardar los valor encontrados en un tabla y aproximar los puntos
intermedios usando un m etodo de interpolaci on.
D.1. Aproximaciones Lineales
Las trayectorias que deseamos seguir pueden ser lneas rectas o arcos de
crculos en los casos m as simples. Pero no hay raz on de restringirse a tales trayec-
torias. Generalmente sin embargo, la trayectoria tomado por el robot consistir a en
tres secciones. Comenzar con el robot en reposos y en el primer segmento de la
trayectoria debemos aceleramos. Esto se llama a veces la fase del despegue de
la trayectoria. Durante el segundo segmento de la trayectoria esperamos que el
68
robot se mueva con velocidad constante. Finalmente debemos decelerar el robot,
esto se reere como jar-abajo la fase. Sin embargo, comenzamos considerando
el caso m as simple del movimiento uniforme a lo largo de una lnea recta.
Pc(t) = P
o
_
t t
1
t
o
t
1
_
+ p
1
_
t t
o
t
1
t
o
_
(D.2)
La ecuaci on [D.2] muestra una interpolaci on lineal para aproximar los valores en
p
o
y p
1
en funci on del tiempo t. De igual manera se puede aproximar el valor de
los angulos de union en funci on del tiempo

i
(t) =
o
_
t t
1
t
o
t
1
_
+
1
_
t t
o
t
1
t
o
_
(D.3)
Figura D.1: Aproximaci on una funci on usando una interpolaci on lineal.
D.2. Aproximaciones Polinomiales
Para una aproximaci on m as sosticada utilizamos polinomios m ayor grado.
Los Polinomios puede ser evaluado muy r apidamente: calcular un polinomio de
n grado requiere de n multiplicaciones usando el m etodo de Homer. Para esto
reescribirlos el polin omico del grado n de la siguiente forma:
a
n
t
n
+a
n1
t
n1
+... +a
1
t +a
0
= (...((a
n
t +a
n1
)t +a
n2
)t...a
1
)t +a
0
(D.4)
Como un ejemplo calcular la aproximaci on cuadr atica a la trayectoria de la lnea
recta

q
(t) = at
2
+ bt + c (D.5)
69
Los coecientes ser an escritos como vectores, puesto que tenemos realmente un
polinomio para cada union y el calculo para encontrar los coecientes tendr a que
ser hecha para cada union por tanto la notaci on del vectorial se puede utilizar para
resumir.
La ecuaci on cuadr atica debe pasar a trav es de los tres puntos (p
o
),(p
o
/2) y
(p
1
) estos puntos denen tres ecuaciones que podemos utilizar para encontrar el
valor de las tres constantes:
(p
o
) = c
(
p
1
p
o
2
) = a/4 + b/2 + c
(p
1
) = a + b + c
(D.6)
y el valor de las tres constante viene dado por [xx]
a = 2(p
1
) 4(
p
1
p
o
2
) + 2(p
o
)
b = (p
1
) + 4(
p
1
p
o
2
) 3(p
o
)
c = (p
o
)
(D.7)
En general obtenemos mejores aproximaciones usando polinomios de mayor gra-
do, utilizando la interpolaci on de lagrange:
Interpolaci on Lagrange
Sea f la funci on a interpolar, sean x
0
,x
1
,...,x
m
las abscisas conocidas de f y
sean f
0
,f
1
,...,f
m
los valores que toma la funci on en esas abscisas, el polinomio
interpolador de grado n de Lagrange es un polinomio de la forma
n

j=0
f
j
l
j
(x), n m (D.8)
donde l
j
(x) son los llamados polinomios de Lagrange, que se calculan de este
modo:
l
j
(x) =

i=j
x x
i
x
j
x
i
=
(x x
0
)(x x
1
)...(x x
j1
)(x x
j+1
)...(x x
n
)
(x
j
x
0
)(x
j
x
1
)...(x
j
x
j1
)(x
j
x
j+1
)...(x
j
x
n
)
(D.9)
N otese que en estas condiciones, los coecientes l
j
(x) est an bien denidos y
son siempre distintos de cero.
70
Ap endice E
Listado de C odigo Fuente
En este ap endice se ubican los listados del c odigo fuente de los ejemplos uti-
lizados para el desarrollo del proyecto de titulaci on. S olo se muestran los c odigos
fuentes, no aquellos archivos generados autom aticamente por alg un compilador.
Sin embargo, s se explica la funci on de esos archivos generados autom atica-
mente en el captulo correspondiente. No se incluye el listado de esos archivos ya
que el proyecto no se basa en estudiar el c odigo generado por los compiladores.
Figura E.1: Valor de los par ametros.
Figura E.2: Denir la Matriz K en Mathematica.
71
Figura E.3: Sistema de Ecuaciones no lineales.
Figura E.4: Uso de la funci on FindRoot.
Figura E.5: C odigo en ActionScript para animar una cadena de n enlaces.
72
Ap endice F
Software
F.1. Lista de Funciones ofrece MATLAB
A continuaci on se muestra un glosario de funciones que ofrece el paquete
ROBOTIC TOOLBOX de Matlab para resolver la cinem atica directa e inversa de
manipuladores.
El ROBOTIC TOOLBOX y otros paquetes pueden descargarse de la p agina o-
cial de MATLAB http://www.mathworks.com/
Transformaciones Homog eneas
Funci on Descripcion
eul2tr De angulos de Euler a matriz homog enea.
oa2tr De vector de orientaci on y proximidad a matriz homog enea.
rotx Matriz De transformaci on homog enea de una rotaci on en el eje X.
roty Matriz de transformaci on homog enea de una rotaci on en el eje Y.
rotz Matriz de transformaci on homog enea de una rotaci on en el eje Z.
rpy2tr De Roll/Pitch/Yaw angulos a matriz homog enea.
tr2eul De transformaci on homog enea a angulos de Euler.
tr2rpy De transformaci on homog enea a roll/pitch/yaw
Generaci on Trayectorias
Funci on Descripcion
ctraj Trayectoria cartesiana.
Drivepar Par ametros de trayectoria cartesiana.
jtraj Trayectoria en coordenadas angulares.
trinterp Interpolaci on de transformaciones homog eneas.
ttg Extrae la transformaci on homog enea desde la matriz de trayectoria cartesiana.
73
Cinem atica
Funci on Descripcion
dh Matriz de convenci on de Denavit-Hartenberg.
diff2tr De vector de movimiento diferencial a matriz homog enea.
fkine Calcula la cinem atica directa.
ikine Calcula la cinem atica inversa.
ikine560 Calcula la cinem atica inversa para el robot Puma560.
jacob0 Calcula el Jacobiano con respecto a las coordenadas de la base.
jacobn Calcula el Jacobiano con respecto a las coordenadas nales.
linktrans Calcula la transformaci on homog enea a partir de los eslabones.
mdh Matriz De convenci on de Denavit-Hartenberg (modicada).
mfkine Calcula la cinem atica directa (modicada).
Mlinktrans Calcula la transformaci on homog enea a partir de los eslabones (modicada).
tr2diff De matriz homog enea a vector diferencial.
tr2jac De matriz homog enea a Jacobiano.
Din amica
Funci on Descripcion
accel Calcula la din amica directa.
cinertia Calcula la matriz de inercia en coordenadas cartesianas.
coriolis Calcula el torque de coriolis.
dyn Matriz de convenci on cinem atica y din amica.
friction Fricci on angular.
gravload Calcula la matriz de gravedad.
inertia Calcula la matriz de inercia del manipulador.
itorque Calcula el torque de inercia.
mdyn Matriz de convenci on cinem atica y din amica (modicada).
mrne Din amica inversa (modicada).
rne Din amica inversa.
74
F.2. Informaci on Referente ActionScript
ActionScript es un lenguaje de programaci on orientado a objetos (OOP), uti-
lizado en especial en aplicaciones web animadas realizadas en el entorno Adobe
Flash, la tecnologa de Adobe para a nadir dinamismo al panorama web. Fue lan-
zado con la versi on 4 de Flash, y desde entonces hasta ahora, ha ido ampli andose
poco a poco, hasta llegar a niveles de dinamismo y versatilidad muy altos en la
versi on 9 (Adobe Flash CS3) de Flash.
ActionScript es un lenguaje de script, esto es, no requiere la creaci on de un
programa completo para que la aplicaci on alcance los objetivos. El lenguaje
est a basado en especicaciones de est andar de industria ECMA-262, un est andar
para Javascript, de ah que ActionScript se parezca tanto a Javascript.
La versi on m as extendida actualmente es ActionScript 3.0, que incluye clases
y es utilizada en la ultima versi on de Adobe Flash (recientemente comprada a
Macromedia) y en anteriores versiones de Flex. Recientemente se ha lanzado la
beta p ublica de Flex 2, que incluye el nuevo ActionScript 3, con mejoras en el
rendimiento y nuevas inclusiones como el uso de expresiones regulares y nuevas
formas de empaquetar las clases. Incluye, adem as, Flash Player 8.5, que mejora
notablemente el rendimiento y disminuye el uso de recursos en las aplicaciones
Macromedia Flash.
F.2.1. Estructura
Flash est a compuesto por Objetos, con su respectiva ruta dentro del swf. Cada
uno de estos en ActionScript pertenece a una clase (MovieClip, Botones, Arre-
glos, etc.), que contiene Propiedades y M etodos.
Propiedades: Dentro del archivo raz de la clase, est an declaradas como
variables (alpha, useHandCursor, length).
M etodos: Dentro del archivo raz de la clase, est an declaradas como fun-
ciones (stop(), gotoAndPlay(), getURL()).
75

También podría gustarte