Você está na página 1de 78

MANUAL DE ROBÓTICA

(GUÍA DE CINEMÁTICA EN GEOGEBRA)

GRADO ACADÉMICO:
UNIVERSIDAD

ÁREA DE ESTUDIO:
CINEMÁTICA DE ROBOTS Y GEOGEBRA
Elaborado para grupo Valladolid por:

M.C. Víctor Manuel Rodríguez Velázquez


M.C. Dora Aydee Rodríguez Vega
Ing. Héctor Nahum Chavarría Lizárraga
Dr. José Víctor Núñez Nalda

Mazatlán, Sinaloa a Diciembre del 2016

I.
ÍNDICE

Introducción ………………………….…….………..……………………………………1
Capítulo 1: Robótica ………………………………......…….……………………………2
1.1 ¿Qué estudia la robótica? ………..…...………………………………………2
1.2 ¿Qué es un robot? ………………………...…...……………………………2
1.3 Tipos de robots ………...…….....…...………………………………………3
1.4 Clasificación de los pares cinemáticos ………………………………………4
1.5 Cinemática ……...……...…….....…...………………………………………7
1.5.1 Cinemática directa …………………….……………...……………8
1.5.1.1 Cadena cinemática ……..…….….………………….………9
1.5.1.2 Marcos de referencia ………...….….……………….……10
1.5.1.3 Matrices de rotaciones …...………………………….……11
1.5.1.3.1 Multiplicación de matrices .....……….…….……12
1.5.1.4 Vectores de posición ………...…………………….……15
1.5.1.5 Matrices homogéneas …………..………………….……17
1.5.1.6 Ángulos de Euler ………………….……………….……18
1.5.1.7 Principales identidades trigonométricas ….....……….……22

II.
1.5.2 Cinemática inversa ..………………………………………………23
1.5.2.1 Vectores ..……………………………………...…………24
1.5.2.2 Representación de vectores ...………...………...…………25
1.5.2.3 ley de cosenos ..........………………………………………28
1.6 Brazo robótico de 2 GDL ...…………..…...………………………………30
1.6.1 Cinemática directa ….………..…...………………………………31
1.6.2 Cinemática inversa …......……..…...………………………………39
Capítulo 2: GeoGebra ...…………………...…………....…...……………………………46
2.1 ¿Qué es GeoGebra? ...………..…...……...…………………………………47
2.2 Entorno gráfico de GeoGebra …............…………..………………………47
2.3 Herramientas de GeoGebra para trabajar robótica ...…....………..…...……48
2.4 Vectores en GeoGebra y sus operaciones …..……….……..………………49
2.4.1 Forma polar y rectangular …...…...…….…..…...…………………59
2.5 Matrices en GeoGebra y sus operaciones ….....……..…...…………………60
2.6 Brazo robótico de dos grados de libertad ….....……..…...…………………67
2.6.1 Cinemática directa ..…….……….…………………...……....……68
2.6.2 Cinemática inversa …...………………………………………..….69

III.
Bibliografía ……………………………………………..…...……..…...……70

IV.
INTRODUCCIÓN
En este manual se abordara el uso de GeoGebra para la representación visual de los cálculos matemáticos que
hay detrás de la robótica, el software será una herramienta fundamental para la fácil comprensión del algebra
vectorial y matricial que conlleva el análisis cinemático directo e inverso.
Se busca que el alumno sea capaz de asociar las ecuaciones y fórmulas de robótica dentro del programa
GeoGebra y aparte puede visualizar todo de manera vectorial las implicaciones que los cálculos llevan a saber.
Aquí es donde se comprobara la teoría con a practica dentro del marco de aprendizaje haciendo esto interactivo
y sencillo de usar e interpretar.
Como inicio se tomara de manera clara los conceptos de robótica para una vez visto, se pase a analizar el
programa de la mano con la teoría vista al principio del manual.

1
CAPÍTULO 1: ROBÓTICA

1.1- ¿Qué estudia la robótica?


La robótica es una ciencia o rama de la tecnología, que estudia el diseño y construcción de máquinas capaces
de desempeñar tareas realizadas por el ser humano o que requieren del uso de inteligencia. Las ciencias y
tecnologías de las que deriva podrían ser: el álgebra, los autómatas programables, las máquinas de estados, la
mecánica o la informática.

1.2-¿Qué es un robot?
Un robot es un manipulador multifuncional reprogramable diseñado para mover material, piezas, herramientas
o dispositivos especializados a través de movimientos programados para la realización de una variedad de tareas.

2
1.3- Tipos de robots
I. Androides: estos artilugios se parecen y actúan como si fueran seres humanos. Este tipo de robots no existen
en la realidad, por lo menos por el momento, sino que son elementos ficcionales.
II. Móviles: estos robots cuentan con orugas, ruedas o patas que les permiten desplazarse de acuerdo a la
programación a la que fueron sometidos. Estos robots cuentan con sistemas de sensores, que son los que
captan la información que dichos robots elaboran. Los móviles son utilizados en instalaciones industriales,
en la mayoría de los casos para transportar la mercadería en cadenas de producción así como también en
almacenes.
III. Industriales: los robots de este tipo pueden ser electrónicos o mecánicos y se los utiliza para la realización
de los procesos de manipulación o fabricación automáticos. También se les llama robots industriales a
aquellos electrodomésticos que realizan simultáneamente distintas operaciones.
IV. Médicos: bajo esta categoría se incluyen básicamente las prótesis para disminuidos físicos. Estas cuentan
con sistemas de mando y se adaptan fácilmente al cuerpo. Estos robots lo que hacen es suplantar a aquellos
órganos o extremidades, realizando sus funciones y movimientos. Además existen robots médicos destinados
a la realización de intervenciones quirúrgicas.

3
V. Teleoperadores: estos robots son controlados de manera remota por un operador humano. A estos
artilugios se los utiliza en situaciones extremas como la desactivación de una bomba o bien, para manipular
residuos tóxicos.
VI. Poliarticulados: si bien estos pueden tener de diversas configuraciones, lo que tienen en común estos robots
es que son sedentarios. Estos son diseñados para mover sus terminales con limitada libertad y de acuerdo a
ciertos sistemas de coordenadas. Estos robots son ideales para cuando se precisa abarcar una amplia zona
de trabajo.

1.4 Clasificación de los pares cinemáticos


Existen tres formas de clasificar los pares cinemáticos los cuales son los siguientes:
I. Bajo Par: Teóricamente tienen una superficie de contacto.
II. Alto Par: Su contacto es a través de un punto o una línea. (baleros, engranes, levas).
III. Par Envolvente: La conexión entre una banda y su polea, entre una cuerda y un tambor o entre una cadena
y el sprocket.
En este curso de robótica se hará análisis solo de pares cinemáticos de bajo nivel los cuales son los siguientes:

4
Tabla 1. Pares cinemáticos de bajo nivel.
Nombre Símbolo Grados de libertad Variable
Revoluta R 1 𝜃
Prismática P 1 x
Hélice H 1 xó𝜃
Cilíndrica C 2 x,𝜃
Esférica S 3 𝛼,𝛽,𝜃
Planar PL 3 x, y, 𝜃
Junta universal U 2 𝜃,β

Dependiendo del tipo de robot es como se analiza su tipo de movimiento o par cinemático, las configuraciones
dependerán del diseño del robot y en que se va aplicar. Normalmente los brazos robóticos son del tipo revoluta
puesto que utilizan motores que tienen un movimiento rotativo y son enfocados a la fisiología del movimiento
de un brazo humano el cual hace movimientos rotativos.

5
Nombre Imagen Nombre Imagen

Revoluta
Esférica

Prismática

Planar

Hélice

Junta universal
Cilíndrica

Tabla 2. Pares cinemáticos R-P-H-C Tabla 3. Pares cinemáticos S-PL-U

6
1.5 Cinemática
La cinemática del robot estudia el movimiento del mismo con respecto a un sistema de referencia. Así, la
cinemática se interesa por la descripción analítica del movimiento espacial del robot como una función del tiempo,
y en particular por las relaciones entre la posición y la orientación del extremo final del robot con los valores que
toman sus coordenadas articulares. Existen dos problemas fundamentales para resolver la cinemática del robot,
el primero de ellos se conoce como el problema cinemático directo, y consiste en determinar cuál es la posición
y orientación del extremo final del robot, con respecto a un sistema de coordenadas que se toma como referencia,
conocidos los valores de las articulaciones y los parámetros geométricos de los elementos del robot, el segundo
denominado problema cinemático inverso resuelve la configuración que debe adoptar el robot para una posición
y orientación del extremo conocidas.

7
1.5.1 Cinemática directa
Se utiliza fundamentalmente el álgebra vectorial y matricial para representar y describir la localización de un
objeto en el espacio tridimensional con respecto a un sistema de referencia fijo. Dado que un robot puede
considerar como una cadena cinemática formada por objetos rígidos o eslabones unidos entre sí mediante
articulaciones, se puede establecer un sistema de referencia fijo situado en la base del robot y describir la
localización de cada uno de los eslabones con respecto a dicho sistema de referencia. De esta forma, el problema
cinemático directo se reduce a encontrar una matriz homogénea de transformación H que relacione la posición y
orientación del extremo del robot respecto del sistema de referencia fijo situado en la base del mismo. Esta matriz
H será función de las coordenadas articulares.

8
1.5.1.1 Cadena cinemática
Al conectar entre sí varios eslabones de tal manera que sea posible el movimiento relativo entre ellos y se
proporciona un movimiento de salida controlado en respuesta a un movimiento de entrada, se obtiene una cadena
cinemática; si dicha conexión no permite movimiento, se tratará de una estructura. Una cadena cinemática es un
conjunto de eslabones cinemáticos unidos por pares cinemáticos elementales; estos pares elementales a través de
cierres de forma, cierres de fuerza y cierres de cadena, limitan en su movilidad relativa a los elementos de la
cadena. Casi todas las cadenas cinemáticas tienen un eslabón fijo (soporte) que constituye el cierre de la cadena
siendo móviles los demás, de los cuales uno o varios son los que reciben el movimiento que se transmite a los
restantes.

9
1.5.1.2 Marco de referencia
Para poder orientar una posición con respecto a un punto p, se necesita estar identificado el tipo de convención
que tiene nuestro marco de referencia y partiendo de eso es como el punto p es localizado en el espacio
tridimensional.
Una convención es como se asigna un marco de referencia, esto significa el acomodo de como tomemos los tres
ejes (x,y,z).

Figura 1. Marco de referencia.

10
1.5.1.3 Matrices de rotaciones
Para la representación de un punto es necesario solamente indicar sus tres coordenadas, para un cuerpo es
necesario además indicar su orientación en el espacio. Por ejemplo para un brazo robótico que se encarga de
tomar objetos no basta con conocer su ubicación en el espacio, sino que es necesario también conocer la
orientación de su extremo para que realice adecuadamente la operación.
Las matrices de rotación pueden componerse para representar la aplicación continua de varias rotaciones, esto
sirve para entender en qué posición queda el punto final, para esto se hacen ciertos cálculos pero primero se
deben definir cuáles son las matrices de rotación, estas son las que se muestran a continuación:

1 0 0
𝑅𝑥 = [0 𝑐𝑜𝑠𝛼 −𝑠𝑖𝑛𝛼] (1)
0 𝑠𝑖𝑛𝛼 cos 𝛼
cos𝜃 0 sin𝜃
𝑅𝑦 = [ 0 1 0 ] (2)
−sin𝜃 0 cos 𝜃
cos ψ −sin ψ 0
𝑅𝑧 = [ sin ψ cos ψ 0] (3)
0 0 1

11
Las matrices de rotación son los ángulos en que rota un eslabón y proporcionan la orientación del efector final
(pinza o herramienta) del robot con la operación matricial de la multiplicación. Para poder hallar la orientación
final las matrices de rotación se multiplican puesto que son la representación vectorial de la forma polar y una de
las propiedades dicta que al multiplicarse los vectores en forma polar en ellos se suman sus ángulos, en caso de
las matrices pasa lo mismo y es por eso que se efectúa tal operación.
Para poder entender mejor las operaciones de matrices, a continuación explicaremos como multiplicar una
matriz.

1.5.1.3.1 Multiplicación de matrices


En matemática, la multiplicación o producto de matrices es la operación de composición efectuada entre dos
matrices, o bien la multiplicación entre una matriz y un escalar según unas determinadas reglas.
Al igual que la multiplicación aritmética, su definición es instrumental, es decir, viene dada por un algoritmo
capaz de efectuarla. El algoritmo para la multiplicación matricial es diferente del que resuelve la multiplicación de
dos números. La diferencia principal es que la multiplicación de matrices no cumple con la propiedad de
conmutatividad.
12
Dada las siguientes matrices se procederá a multiplicarse bajo los siguientes pasos:
 Paso 1: primero se identifican las matrices a multiplicar.

1 2 3
𝐴 = [ 4 5 6] (4)
7 8 9

9 8 7
𝐵 = [6 5 4] (5)
3 2 1

Las propiedades son las siguientes:


 Las multiplicación de matrices no es conmutativa, por lo que 𝐴 ∗ 𝐵 ≠ 𝐵 ∗ 𝐴
 Todas las matrices cuadradas se pueden multiplicar mientras sean ambas del mismo orden(se le llama
cuadradas por tener el mismo número de filas y columnas).
 Solo se pueden multiplicar matrices sean 𝐴 y 𝐵 mientras A tenga el número de columnas igual al número de
filas de B (esto para matrices no cuadradas).

13
 Paso 2: multiplicar ambas matrices haciendo las operaciones de filas y columnas.

1 2 3 9 8 7
𝐴 ∗ 𝐵 = [4 5 6] ∗ [ 6 5 4] (6)
7 8 9 3 2 1

Para efectuar la operación se multiplica las filas de A por las columnas de B y a cada elemento se suma, esto
queda como resultado una tercera matriz.

1 2 3 9 8 7 1∗9+2∗6+3∗3 1∗8+2∗5+3∗2 1∗7+2∗4+3∗1


[4 5 6] ∗ [6 5 4] = [ 4 ∗ 9 + 5 ∗ 6 + 6 ∗ 3 4 ∗ 8 + 5 ∗ 5 + 6 ∗ 2 4 ∗ 7 + 5 ∗ 4 + 6 ∗ 1] = (7)
7 8 9 3 2 1 7∗9+8∗6+9∗3 7∗8+8∗5+9∗2 7∗7+8∗4+9∗1

1∗9+2∗6+3∗3 1∗8+2∗5+3∗2 1∗7+2∗4+3∗1 21 24 18


[4 ∗ 9 + 5 ∗ 6 + 6 ∗ 3 4 ∗ 8 + 5 ∗ 5 + 6 ∗ 2 4 ∗ 7 + 5 ∗ 4 + 6 ∗ 1] = [ 84 69 54] (8)
7∗9+8∗6+9∗3 7∗8+8∗5+9∗2 7∗7+8∗4+9∗1 138 114 90

30 24 18
𝐴 ∗ 𝐵 = [ 84 69 54] (9)
138 114 90

14
1.5.1.4 Vectores de posición
Para definir y manipular cantidades matemáticas con las cuales podemos representar la posición, nosotros
debemos definir sistemas de coordenadas y establecer las convenciones propias para la representación respectiva.
Es por esto que nos apoyamos en la concepción, de que en cualquier parte existe un sistema de coordenadas,
para lo cual todo lo emprendido puede ser referenciado.
En un plano: Sistema coordenado OXY de referencia, para el cual el punto a se expresa por las componentes
(x, y). A este punto le corresponde un vector p(x, y). En el espacio de tres dimensiones: El vector p está definido
por las respectivas componentes cartesianas (x, y, z).
Y
𝑥 p(x, y)

X
O

Figura 2. Vector de posición.

15
Otra manera de denotar un vector en el plano se muestra en (10) y para denotarlo en el espacio lo podemos
ver en (11).

𝑥
𝑃𝑜𝑠𝑖𝑐𝑖ó𝑛 = (𝑦) = (𝑥, 𝑦) (10)

𝑥
𝑃𝑜𝑠𝑖𝑐𝑖ó𝑛 = (𝑦) = (𝑥, 𝑦, 𝑧) (11)
𝑧

En robótica un vector de posición se denota como se ve a continuación:

𝑥
𝐵
𝐷𝑟𝐵,1 = (𝑦) (12)
𝑧

16
1.5.1.5 Matrices homogéneas
Uno de los problemas fundamentales de la cinemática del robot es la cinemática directa, que consiste en
conocer la posición y orientación del robot si son conocidos los valores de sus articulaciones. Una de las
principales herramientas dela cinemática directa es el uso de las matrices de transformación homogéneas, estas
consisten en que dentro de ellas contienen tanto la posición como la rotación y al momento de multiplicarlas se
van realizando las operaciones de hallas la posición y orientación en una sola operación que de caso contrario se
tienen que hallas ambos datos por separado.

𝑅 𝑟
𝐻=[
0 1
] (13)

Donde “R” es la rotación y “r” es la posición. La matriz de transformación homogénea tiene 4 filas y 4
columnas. La matriz tiene una fila de tres ceros y un uno la cual completan la matriz para que sea de 4x4 y esta se
encuentra en la cuarta fila. La parte importante consiste en que al final se puede encontrar la orientación y posición
de una manera sencilla al tener todas las operaciones en una matriz final desde la base hasta el efector final del
robot. Un ejemplo de esta matriz se muestra en (14), esta contiene una matriz de rotación en z y un vector de
posición expresado en componentes de rx, ry y rz.

17
cos 𝜃 −sin 𝜃 0 𝑟𝑥
sin 𝜃 cos 𝜃 0 𝑟𝑦
𝐻=[
0 0 1 𝑟𝑧
] (14)
0 0 0 1

1.5.1.6 Ángulos de Euler


Un método común de especificar una matriz de rotación en términos de tres cantidades independientes es
utilizar los llamados ángulos de Euler.
Mediante los ángulos de Euler se puede representar una rotación cualquiera con una sucesión de tres
rotaciones planas alrededor de tres ejes ortogonales. No hay acuerdo sobre los tres ejes concretos y en la literatura
científica aparecen diversos convenios; hay, en concreto, 12 posibilidades, pero lo más habitual es que se tomen
zyz y zxz. A estos 12 convenios hay que añadir posibles variaciones en el signo, orientación relativa de ejes (horario
o antihorario) y punto de vista (operación en vectores o transformación de coordenadas).
Para este manual se utilizaran la convención de zyz como se muestra a continuación:

18
0
2𝑅𝑧𝑦𝑧 = 𝐵𝑑𝑅𝑧,𝜙 ∗ 𝐵𝑑𝑅𝑦𝜃 ∗ 𝐵𝑑𝑅𝑧𝜓
(15)
cos 𝜙 −sin 𝜙 0 cos𝜃 0 sin𝜃 cos ψ −sin ψ 0
0
2𝑅𝑧𝑦𝑧 = [ sin 𝜙 cos 𝜙 0] ∗ [ 0 1 0 ] ∗ [ sin ψ cos ψ 0]
0 0 1 −sin𝜃 0 cos 𝜃 0 0 1 (16)

cos 𝜙cos𝜃 cos ψ − sin 𝜙 sin ψ −cos 𝜙 cos𝜃 sin ψ − sin 𝜙 cos ψ cos 𝜙 sin𝜃
0
2𝑅𝑧𝑦𝑧 = [sin 𝜙 cos𝜃cos ψ + cos 𝜙 sin ψ − sin 𝜙 cos𝜃 sin ψ + cos 𝜙 cos ψ sin 𝜙 sin𝜃 ] (17)
−sin𝜃 cos ψ sin𝜃 sin ψ cos𝜃

Cuando se obtiene las multiplicaciones se procede a hallar los ángulos de los tres ejes (x, y, z) mediante las
siguientes formulas:
Primero suponemos los valores de la matriz 02𝑅𝑧𝑦𝑧 con esta representación cartesiana:

𝑟11 𝑟12 𝑟13


𝑅𝑧𝑦𝑧 = [𝑟21 𝑟22 𝑟23 ] (18)
𝑟31 𝑟32 𝑟33

19
Para hallar el ángulo theta usamos la fórmula (19) y (20):

2
𝜃 = 𝐴𝑡𝑎𝑛2 (𝑟33 , √1 − 𝑟33 ) (19)

2
𝜃 = 𝐴𝑡𝑎𝑛2 (𝑟33 , −√1 − 𝑟33 ) (20)

La función Atan2 se usa para hallar el ángulo que forman los vectores en los 4 cuadrantes del plano cartesiano,
puesto que con el uso de la función Atan o lo que es lo mismo que 𝑡𝑎𝑛𝑔−1 solo tenemos acceso a ciertos valores
del ángulo en el espacio. Esta función se usa en programación y no se puede encontrar en las calculadoras
convencionales. Para que las ecuaciones de 𝜃 sean válidas, el valor de 𝑟33 ≠ ±1

Ahora para encontrar los otros dos ángulos tenemos una restricción dada por dos parámetros, la primera
restricción es cuando sin𝜃 > 0 entonces los valores angulares están dados por las siguientes fórmulas:

20
𝜙 = 𝐴𝑡𝑎𝑛2(𝑟13 , 𝑟23 ) (21)

𝜓 = 𝐴𝑡𝑎𝑛2(−𝑟31 , 𝑟32 ) (22)

La segunda restricción se da cuando sin𝜃 < 0 entonces los valores angulares están dados por las siguientes
fórmulas:

𝜙 = 𝐴𝑡𝑎𝑛2(−𝑟13 , −𝑟23 ) (23)

𝜓 = 𝐴𝑡𝑎𝑛2(𝑟31 , −𝑟32 ) (24)

Con estas fórmulas hallamos la orientación de la pinza del brazo robótico en el espacio en donde realiza su
movimiento.

21
1.5.1.7 Principales identidades trigonométricas
Una identidad trigonométrica es una igualdad entre expresiones que contienen funciones trigonométricas y es
válida para todos los valores del ángulo en los que están definidas las funciones (y las operaciones aritméticas
involucradas).
Estas identidades que se presentan a continuación en la tabla 4, son las que más se usan para simplificar
expresiones trigonométricas producto de la multiplicación de matrices, todo esto para encontrar el despeje de los
ángulos.
Expresión trigonométrica Identidad trigonométrica
cos(𝑎) cos(𝑏) − sen(𝑎) sen(𝑏) cos(𝑎 + 𝑏)

sen(𝑎) cos(𝑏) + cos(𝑎) sen(𝑏) sen(𝑎 + 𝑏)

cos(𝑎) cos(𝑏) + sen(𝑎) sen(𝑏) cos(𝑎 − 𝑏)

sen(𝑎) cos(𝑏) − cos(𝑎) sen(𝑏) sen(𝑎 − 𝑏)

Tabla 4. Identidades trigonométricas.

22
1.5.2 Cinemática inversa
En Robótica, la Cinemática inversa es la técnica que permite determinar el movimiento de una cadena de
articulaciones para lograr que un actuador final se ubique en una posición concreta. El cálculo de la cinemática
inversa es un problema complejo que consiste en la resolución de una serie de ecuaciones cuya solución
normalmente no es única.
El objetivo de la cinemática inversa es encontrar los valores que deben tomar las coordenadas articulares del
robot para que su extremo se posicione y oriente según una determinada localización espacial. Depende de la
configuración del robot.

23
1.5.2.1 Vectores
En física, un vector (también llamado vector euclidiano o vector geométrico) es una magnitud física definida
en un sistema de referencia que se caracteriza por tener módulo (o longitud) y una dirección (u orientación).
 Módulo: está representado por el tamaño del vector, y hace referencia a la intensidad de la magnitud
(número).
 Dirección: corresponde a la inclinación de la recta, y representa al ángulo entre ella y un eje horizontal.
 Sentido: está indicado por la punta de la flecha. (signo positivo que por lo general no se coloca, o un signo
negativo). No corresponde comparar el sentido de dos vectores que no tienen la misma dirección, de modo
que se habla solamente de vectores con el mismo sentido o con sentido opuesto.

Figura 3. Vector.

24
Un vector se puede definir por sus coordenadas, si el vector está en el plano xy, se representa como en (10) y
si está en el espacio se representa como (11).

1.5.2.2 Representación de vectores


Existen varias maneras de poder representar un vector pero en robótica se usan dos, esas dos representaciones
se llaman: forma polar y forma rectangular.
La forma rectangular representa a un vector mediante los componentes que forma cartesianamente como se
muestra a continuación:

𝐴⃗ = 2𝑖̂ + 4𝑗̂ + 2𝑘̂


(25)

Pero cuando se necesita conocer el modulo del vector y el ángulo que este forma con respecto a la horizontal se
procede a utilizar la forma polar.

25
La forma polar tiene el siguiente formato:

𝐴⃗ = 𝑟∠𝜃
(26)

Donde 𝑟 es el módulo del vector y 𝜃 es el ángulo. Para calcular r se utiliza la formula (27).

𝑟 = √𝑥 2 + 𝑦 2 + 𝑧 2
(27)

Y para calcular el ángulo se utiliza la fórmula (28).

𝑦
𝜃 = tan−1 ( ) (28)
𝑥

26
Las operaciones con vectores de suma y resta se hacen mediante forma rectangular mientras que la
multiplicación y división se hacen mediante la forma polar.
Las propiedades angulares de la forma polar ante las operaciones de la multiplicación t división son las
siguientes:

 Cuando es una división los ángulos se restan.


 Cuando es una multiplicación los ángulos se suman.

La propiedad de multiplicación de vectores en forma polar se aplica como se había mencionado anteriormente
a la multiplicación de matrices de rotación y esto da como resultado que los ángulos se sumen de cada eje hasta
llegar a efector final provocando cambios en su orientación.

27
1.5.2.3 Ley de cosenos
El teorema del coseno, denominado también como ley de cosenos, es una generalización del teorema de
Pitágoras en los triángulos rectángulos que se utiliza, normalmente, en trigonometría.
El teorema relaciona un lado de un triángulo cualquiera con los otros dos y con el coseno del ángulo formado
por estos dos lados.

Figura 4. Triangulo.

Las ecuaciones para determinar los lados del triángulo por la ley de cosenos son las siguientes:

28
𝑎2 = 𝑏 2 + 𝑐 2 − 2𝑏𝑐 cos 𝛼 (29)

𝑏 2 = 𝑎2 + 𝑐 2 − 2𝑎𝑐 cos 𝛽 (30)

𝑐 2 = 𝑎2 + 𝑏 2 − 2𝑎𝑏 cos 𝛾 (31)

Con las ecuaciones (29), (30) y (31) se pueden determinar en cualquier triangulo los lados y con despejes los
ángulos de los mismos, es una herramienta útil para cinemática inversa puesto que el análisis vectorial de un brazo
robótico desde la base al efector final se hace mediante el método gráfico del triángulo y este triángulo coincide
con el que se calcula para el método de la ley de cosenos.

La ley de cosenos se emplea en resumidas cuentas como el método geométrico de cinemática inversa, se busca
encontrar los ángulos y con los despejes adecuados se logra encontrarlos.

29
1.6 Brazo robótico de 2 GDL

Figura 5. Brazo robótico de 2 GDL.

De manera general, un robot con n grados de libertad está constituido por n eslabones unidos también por
n articulaciones, de tal manera que cada par de articulación –eslabón, conforma un grado de libertad. De esta
manera, a cada eslabón se le asocia un sistema de referencia solidario a él y, empleando las transformaciones
homogéneas, podemos representar las rotaciones y traslaciones relativas, entre los distintos eslabones que
componen el robot.

30
1.6.1 Cinemática directa:

Figura 6. Brazo robótico de 2 GDL.

31
Para empezar el análisis cinemático directo primero analizamos la Figura 6 y ver en que ejes rotan los eslabones
del brazo robótico la cual sabemos que rotan en z como se muestra a continuación:

cos 𝜃1 −sin 𝜃1 0
0𝐵
𝑅 = [ sin 𝜃1 cos 𝜃1 0]
2𝐷 1
0 0 1 (32)
cos 𝜃2 −sin 𝜃2 0
01
𝑅 = [ sin 𝜃2 cos 𝜃2 0]
2𝐷 2
0 0 1 (33)

1 0 0
02
𝑅
2𝐷 𝑃
= [ 0 1 0] (34)
0 0 1

Aquí se agregó una matriz de unos y ceros la cual es (34), con esto representa a la pinza o efector final de
brazo robótico puesto que no rota sino que la rotan por eso tiene ese formato.

32
Una vez identificados se procede a especificar los vectores de posición del brazo robótico:

0
𝐵
𝐷𝑟𝐵,1 = (0) (35)
0

4
1 (36)
𝐷𝑟1,2 = ( 0)
0

4
2 (37)
𝐷𝑟2,𝑝 = (0)
0
´

El primer vector de posición está en ceros porque el robot esta directamente en la base sin elevaciones en su
posición o en otras palabras el robot está a la misma altura de donde esta lavase del mismo.

33
Ahora ya definidos los parámetros de posición y rotación procedemos a crear las matrices de
transformación homogéneas:

cos 𝜃1 −sin 𝜃1 0 0
sin 𝜃1 cos 𝜃1 0 0]
𝐵
𝐷 𝐻1 = [ 0 0 1 0 (38)
0 0 0 1

cos 𝜃2 −sin 𝜃2 0 4
sin 𝜃2 cos 𝜃2 0 0]
1
𝐷 𝐻2 = [ 0 0 1 0 (39)
0 0 0 1

1 0 0 4
2 0 1 0 0]
𝐷 𝐻𝑝 = [0 0 1 0 (40)
0 0 0 1

Para obtener la rotación y orientación final vamos a multiplicar las matrices homogéneas en orden:

34
𝐵
𝐷 𝐻𝑝 = 𝐷𝐵𝐻1 ∗ 𝐷1𝐻2 ∗ 𝐷2𝐻𝑝 (41)

cos 𝜃1 −sin 𝜃1 0 0 cos 𝜃2 −sin 𝜃2 0 4 1 0 0 4


sin 𝜃1 cos 𝜃1 0 0] ∗ [ sin 𝜃2 cos 𝜃2 0 0] ∗ [0 1 0 0]
𝐵
𝐷 𝐻𝑝 = [ 0 0 1 0 0 0 1 0 0 0 1 0 (42)
0 0 0 1 0 0 0 1 0 0 0 1

cos 𝜃1 cos 𝜃2 − sin 𝜃1 sin 𝜃2 − cos 𝜃1 sin 𝜃2 − cos 𝜃2 sin 𝜃1 0 4cos 𝜃1 + 4 cos 𝜃1 cos 𝜃2 − 4 sin 𝜃1 sin 𝜃2
𝐵 cos 𝜃1 sin 𝜃2 + cos 𝜃2 sin 𝜃1 cos 𝜃1 cos 𝜃2 − sin 𝜃1 sin 𝜃2 0 4 sin 𝜃1 + 4 cos 𝜃1 sin 𝜃2 + 4 cos 𝜃2 sin 𝜃1 ] (43)
𝐷 𝐻𝑝 = [
0 0 1 0 0
0 0 0 1 1

Ya que tenemos la matriz homogénea final procedemos a saber cuál es la orientación final y la posición
final:

35
Para hallar la dicha información primero determinamos los datos dentro de la matriz.

𝑟11 𝑟12 𝑟13 𝑟14


𝑟21 𝑟22 𝑟23 𝑟24
𝐷 𝐻𝑝 = [𝑟
𝐵
31 𝑟32 𝑟33 𝑟34 ] (44)
𝑟41 𝑟42 𝑟43 𝑟44

Ahora hallaremos la posición final del brazo robótico con los siguientes datos de la matriz:

𝑟43
𝐵 𝑟 (45)
𝐷𝑟𝐵,𝑝 = ( 43 )
𝑟43

4cos 𝜃1 + 4 cos 𝜃1 cos 𝜃2 − 4 sin 𝜃1 sin 𝜃2


𝐵 (46)
𝐷𝑟𝐵,𝑝 = (4 sin 𝜃1 + 4 cos 𝜃1 sin 𝜃2 + 4 cos 𝜃2 sin 𝜃1)
0

36
Ahora hallaremos la orientación final del brazo robótico con los siguientes datos de la matriz:

𝑟11 𝑟12 𝑟13


𝐵
𝐷 𝑅𝑝 = [𝑟21 𝑟22 𝑟23 ] (47)
𝑟31 𝑟32 𝑟33

cos 𝜃1 cos 𝜃2 − sin 𝜃1 sin 𝜃2 − cos 𝜃1 sin 𝜃2 − cos 𝜃2 sin 𝜃1 0


𝐵
𝐷 𝑅𝑝 = [cos 𝜃1 sin 𝜃2 + cos 𝜃2 sin 𝜃1 cos 𝜃1 cos 𝜃2 − sin 𝜃1 sin 𝜃2 0] (48)
0 0 1

Para poder tomar el ángulo final tenemos primero que simplificar las expresiones trigonométricas con
identidades trigonométricas:

cos(𝜃1 + 𝜃2) − sin( 𝜃1 + 𝜃2) 0


𝐵
= [ sin( 𝜃1 + 𝜃2) (49)
𝐷 𝑅𝑝 cos(𝜃1 + 𝜃2) 0]
0 0 1

37
Para poder hallar un ángulo en componentes de senos y cosenos recurrimos a la función tangente y aplicamos
arco tangente:

𝑦 𝑠𝑒𝑛(𝜃)
𝜃𝑓 = tan−1 ( ) = tan−1 (
𝑥 cos(𝜃)
) (50)

𝑟21 sin( 𝜃1 + 𝜃2)


𝜃𝑓 = tan−1 ( ) = tan−1 ( ) = 𝜃1 + 𝜃2
𝑟11 cos( 𝜃1 + 𝜃2) (51)

𝜃𝑓 = 𝜃1 + 𝜃2
(52)

Con esto ya tenemos la posición y orientación final de un brazo robótico de dos grados de libertad por
cinemática inversa.

38
1.6.2 Cinemática inversa

Figura 6. Brazo robótico 2 GDL representado con vectores.

39
Primero definimos los parámetros:
 α=es el ángulo Alpha.
 β=es el ángulo Beta.
 γ=es el ángulo Gamma.
 𝜃=es el ángulo que forma el eslabón A con respecto al eje x.
 𝜉=es el ángulo que forma el eslabón B con respecto al eje x.
 A=longitud del primer eslabón.
 B=longitud del segundo eslabón.
 C=longitud de la base al punto final del robot

Como la cinemática inversa se basa en encontrar los valores de las coordenadas, entonces primero definimos
un punto en el plano (x, y), al cual queremos que el robot se posicione.

𝑃𝑓𝑖𝑛𝑎𝑙 = (𝑥𝑓, 𝑦𝑓) (53)

40
Una vez definido el Punto final, pasamos esas coordenadas rectangulares del dicho punto a coordenadas
polares.

 Forma rectangular:

𝑃𝑓𝑖𝑛𝑎𝑙 = 𝑥𝑓 𝑖 + 𝑦𝑓 𝑗 (54)
 Forma polar:

𝑃𝑓𝑖𝑛𝑎𝑙 = 𝐶∠𝜓 (55)


Pasa sacar C hacemos lo siguiente:

𝐶 = √𝑥𝑓 2 + 𝑦𝑓 2 (56)

41
Para sacar 𝜓 hacemos lo siguiente:

𝑦𝑓
𝜓 = tan−1 (
𝑥𝑓
) (57)

De antemano sabemos que:

𝜓 =𝛽+𝜃 (58)

Debido a que el ángulo 𝜓 es el que forma el vector o el eslabón C con respecto al eje x. El siguiente paso
después de obtener la forma polar del vector C, se procede sacar el ángulo β con la siguiente fórmula:

42
𝐴2 +𝐶 2 −𝐵2
𝛽 = cos −1
(
2𝐴𝐶
) (59)

Como se describe en la ecuación (58), una vez obtenidos en valor de 𝛽 y el valor de 𝜓, se despeja el ángulo
𝜃 de la ecuación:

𝜓 =𝛽+𝜃 (60)

𝜃 =𝜓−𝛽 (61)

Después de haber obtenido el ángulo 𝜃, se procede a obtener el ángulo γ con la siguiente fórmula:

𝐴2 +𝐵2 − 𝐶 2
𝛾 = cos −1
(
2𝐴𝐵
) (62)

43
Quedando dos ángulos por sacar, se define que:

𝛼 + 𝛾 + 𝛽 = 180 (63)
(64)
𝛼 = 180 − 𝛾 − 𝛽

Y por último se obtiene el ángulo 𝜉 con lo siguiente:

ξ = 180 − 𝛾 (65)

Los ángulos principales que son para llegar al punto 𝑃𝑓𝑖𝑛𝑎𝑙 son el ángulo ξ para el eslabon B y 𝜃 para el
eslabón A, quedando la siguiente expresión:

44
𝑃𝐴 = 𝐴∠𝜃 (66)

𝑃𝐵 = 𝐵∠ξ (67)

Ya con esto sabemos que coordenadas polares de ambos eslabones deben tener para llegar al:

𝑃𝑓𝑖𝑛𝑎𝑙 = 𝐶∠𝜓 (68)

45
CAPÍTULO 2: GEOGEBRA

2.1 ¿Qué es GeoGebra?


Geogebra es un programa dinámico para la enseñanza y aprendizaje de las matemáticas para educación en todos
sus niveles. Combina dinámicamente, geometría, álgebra, análisis y estadística en un único conjunto tan sencillo
a nivel operativo como potente. Ofrece representaciones diversas de los objetos desde cada una de sus posibles
perspectivas: vistas gráficas, algebraicas, estadísticas y de organización en tablas y planillas, y hojas de datos
dinámicamente vinculadas. Geogebra es en su origen la tesis de Markus Hohenwarter, con el objeto de crear una
calculadora de uso libre para trabajar el Álgebra y la Geometría.
Fue un proyecto que se inició en el 2001 en un curso de Matemática en la Universidad de Salzburgo
(Austria). Actualmente, Geogebra continúa su desarrollo en la Universidad de Boca Ratón, Florida Atlantic
University (USA). Pero no tenemos que olvidar que GeoGebra está diseñado con mentalidad colaborativa. Desde
la página oficial disponemos de acceso a ayudas, recursos, foros y wikis que usuarios de todo el mundo mantienen
en constante renovación.

46
2.2 Entorno gráfico de GeoGebra

Figura 7. Entorno gráfico de GeoGebra.

47
2.3 Herramientas de GeoGebra para trabajar robótica
En robótica se ocupan diferentes herramientas de programación para cálculos cinemáticos y dinámicos pero
en si los principales los nombramos a continuación:

 Uso de matrices.
 Forma polar y rectangular de vectores.
 Uso de la función Atan2.
 Multiplicación de matrices.
 Operaciones con ángulos (conversión de radianes a grados y viceversa).
 Uso de sliders y casillas de operaciones (panel dinámico).
 Uso de resolución de ecuaciones (función CAS).

Todo esto como lo fundamental que se ocupa en un programa para calcular y simular un brazo robótico lo
contiene GeoGebra y se ira desarrollando en las siguientes páginas.

48
2.4 Vectores en GeoGebra y sus operaciones
Los pasos para crear un vector en GeoGebra son los siguientes:
 Paso 1: Colocar un punto en el origen y otro fuera del origen. Los puntos están en la segunda casilla como
se muestra en la Figura 8, selecciona donde dice Punto y da click donde está el origen del plano cartesiano
(0,0) y posteriormente en otro lugar como se muestra en la Figura 9.

Figura 8. Paleta de vista gráfico u objeto de GeoGebra.

49
Figura 9. Colocando dos puntos en GeoGebra.

 Paso 2: Crear un vector a partir de dos puntos. Esto se crea al seleccionar la opción vector desde la tercer
casilla de la parte superior de GeoGebra como se muestra en la Figura 10.

50
Figura 10. Creando un vector en GeoGebra.

51
Para realizar operaciones con vectores recurrimos a crear un segundo vector desde el origen con otro punto
en el espacio diferente al del primero como se ve en la Figura 11.

50
Figura 11. Creando un segundo vector en GeoGebra.

Una vez creado los dos podemos hacer operaciones con vectores. Las operaciones que podemos hacer con
vectores son:

52
 Suma.
 Resta.
 Producto punto.
 Producto cruz.

Las operaciones se hacen en la barra entrada de GeoGebra como se muestra en la Figura 12.

Figura 12. Casilla de entrada en GeoGebra.

Para poder hacer las operaciones ocupamos saber que nombre tienen los vectores y eso lo podemos ver como
se muestra en la Figura 13.

54
Figura 13. Casilla de vista Algebraica.

Los vectores se llaman U y V, sabiendo esto podemos hacer la operaciones con vectores antes mencionadas.
Un dato importante es que en la vista algebraica se van a ir registrando todos los objetos y acciones que se vayan
haciendo en la vista gráfica de GeoGebra.
En la vista algebraica vienen los tres puntos que se hicieron y los dos vectores, cuando se hagan las operaciones
también se podrán ver los resultados en esta vista y se podrán visualizar si hay cambios en la vista gráfica en
tiempo real.

53
 Suma de vectores: en la entrada se pone 𝑢 + 𝑣 y automáticamente se suman ambos vectores como se
muestra en la Figura 14, de antemano sabemos que la suma de vectores es conmutativa tal que 𝑢 + 𝑣 = 𝑣 +
𝑢.

Figura 14. Suma de vectores.

55
 Resta de vectores: en la entrada se pone 𝑢 − 𝑣 y automáticamente se restan ambos vectores como se
muestra en la Figura 15, de antemano sabemos que la resta de vectores no es conmutativa tal que 𝑢 − 𝑣 ≠
𝑣 − 𝑢.

Figura 15. Resta de vectores.

57
 Producto punto de vectores: en la entrada se pone 𝑢 ∗ 𝑣 y automáticamente se realiza el producto punto
de ambos vectores como se muestra en la Figura 16. En lugar de mostrarse gráficamente, este dato es
numérico y se queda en la vista algebraica en la sección de número.

Figura 16. Producto punto de vectores.

56
 Producto cruz de vectores: en la entrada se pone 𝑢 ⊗ 𝑣 y automáticamente se realiza el producto cruz
de ambos vectores como se muestra en la Figura 17. En lugar de mostrarse gráficamente, este dato es
numérico y se queda en la vista algebraica en la sección de número.

Figura 17. Producto cruz de vectores.

58
2.4.1 Forma polar y rectangular
En GeoGebra al momento de crearse un vector lo expresa de forma rectangular pero existe una manera para
hacer que ese vector se transforme en la forma polar y es haciendo click derecho sobre el vector y seleccionar la
opción que dice coordenadas polares como lo muestra la Figura 18.

60
59
Figura 18. De forma rectangular a polar en GeoGebra.

2.5 Matrices en GeoGebra y sus operaciones


En GeoGebra las matrices mediante acomodo de arreglos colocados en la casilla de entrada, cuando se da
enter se da un autoformato para que la matriz pueda ser visualizada.
Haremos un ejemplo de una matriz a GeoGebra, para esto escogeremos la siguiente matriz y le daremos
formato en GeoGebra:

1 2 3
𝐴 = [ 4 5 6] (69)
7 8 9

60
El formato que tiene esta matriz es el siguiente:

𝐴 = {{1,2,3}, {4,5,6}, {7,8,9}}


(69)

Con esto procedemos a pasar la matriz a GeoGebra como se muestra en la Figura 19.

59
Figura 19. Creando una Matriz en GeoGebra.

Para empezar a hacer operaciones con matrices se hará otra matriz como (5), en GeoGebra como la anterior
y como se muestra en la Figura 20.

61
Figura 20. Creando una segunda matriz.

Una vez creadas procedemos a hacer las siguientes operaciones:

63
 Suma de matrices.
 Resta de matrices.
 Multiplicación de matrices.

Para poder hacer las operaciones ocupamos saber que nombre tienen las matrices y eso lo podemos ver como
se muestra en la Figura 21.

Figura 21. Matrices A y B.

62
 Suma de matrices: las matrices se suman con la operación 𝐴 + 𝐵 y automáticamente se hace la suma y se
crea una tercera matriz en la vista algebraica con el resultado como se muestra en la Figura 22.

Figura 22. Suma de la matriz A y B.

64
 Resta de matrices: las matrices se restan con la operación 𝐴 − 𝐵 y automáticamente se hace la resta y se
crea una tercera matriz en la vista algebraica con el resultado como se muestra en la Figura 23.

Figura 23. Resta de la matriz A y B.

66
 Multiplicación de matrices: las matrices se multiplican con la operación 𝐴 ∗ 𝐵 y automáticamente se hace
la multiplicación y se crea una tercera matriz en la vista algebraica con el resultado como se muestra en la
Figura 24. Con esto comprobamos el resultado correcto de (9) en GeoGebra.

Figura 24. Multiplicación de la matriz A y B.

65
2.6 Brazo robótico de dos grados de libertad

Figura 25. Brazo robótico representado con vectores en GeoGebra.

El brazo robótico que se hará en GeoGebra será mediante vectores y donde el eje “y” es la altura y el eje
“x” el suelo o base del robot.

67
2.6.1 Cinemática directa

Figura 26. Cinemática directa de brazo robótico de 2GDL.

68
2.6.2 Cinemática inversa

Figura 27. Cinemática inversa de brazo robótico de 2GDL.


70
BIBLIOGRAFÍA
 2004, Spong, Hutchinson, Vidyasagar.
 http://datateca.unad.edu.co/contenidos/299012/CURSO_DE_ROBOTICA_A
VANZADA_2014.pdf.
 http://homepage.cem.itesm.mx/marios/pdfs/Definicionesbasicas.pdf.
 http://www.ctpcalleblancos.com/Que_es_la_Robotica.pdf.
 https://sites.google.com/site/geogebra1112/caracteristicas-de-geogebra.

69