Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Cód: 1065624386
DIRECTOR DE PROYECTO:
VICENTE OROZCO BONILLA
Ingeniero Eléctrico
3
DEDICATORIA
Primeramente, dedico este proyecto a Dios Por haberme permitido llegar hasta
este punto y haberme dado salud para lograr mis objetivos, además de su infinita
bondad y amor.
A mis padres Luis Rafael Carrillo Mindiola e Imera Brito Cardona, quienes son
el apoyo constante en mi diario vivir, por todos esos consejos, valores, ejemplos
de perseverancia y constancia el cual los caracteriza y que me lo han infundado
siempre permitiendo salir adelante como una persona de bien, pero más que nada
por su amor infinito.
A mis hermanos Lainys Yeleni Carrillo Brito y Leiner Yemith Carrillo Brito,
quienes también de una forma u otra me han dado fuerza para seguir adelante en
este camino y brindarme además su amor, sacrificio y sus mejores deseos en mi
vida.
A mis tíos, Cheva, Ñego, Tite, como de cariño los llamo y en especial a Carlos
Carrillo Mendiola (QEPD) mi ejemplo a seguir quien fue pilar fundamentar al
inicio de mi carrera, a mi familia en general quienes directa o indirectamente
aportaron un granito de arena en el camino de mi formación profesional, porque
me han brindado su apoyo incondicional y por compartir conmigo todos esos
buenos y malos momentos.
A mi novia Siris Maylin Ortiz Ortiz, quien ha sido una persona importante en esta
hermosa etapa de mi vida, brindándome su amor, apoyo y cariño incondicional.
A mis amigos, Gabriela, Yacelis, Ángela, Jessica, Yeca, Maydj, Jaime, Rodolfo,
Leivin, Carlitos, Fabián, Saballe, Jarol, Cristian, Alvarito, Carri y Anderson con los
cuales compartí muchos momentos de risas, reuniones y conversaciones que se
mantendrán en nuestras memorias. Y a esas personas q me apoyaron y ayudaron
a que esto fuera realidad.
5
RESUMEN
Esta interfaz se realizó en Visual Studio C# usando una aplicación WPF, esta
interfaz una vez de recibir los datos propuestos por el usuario, enviara dichos
datos al microcontrolador, el microcontrolador a usar es el PIC16F877A
MICROCHIP.
Por último, el robot bípedo realizará los movimientos efectuados por el usuario
mediante la interfaz, siendo lo más parecido a la locomoción humana y aun tiempo
real, esto será cuestión de practica mediante el usuario para poder lograr una
manipulación efectiva y correcta de este sistema.
6
ABSTRACT
This interface was made in Visual Studio C# through the use of an application
WPF, after receiving the proposed data by the user, the interface is going to send
this information to the microcontroller that in this case is the MICROCHIP
PIC16F877A.
Then, the microcontroller will transform all received data by the computer through a
module Bluetooth RN-42. Also, it is going to convert this signal into PWN which is
in charge of doing the actuators movements of the biped robot.
Finally, the biped robot will make the movements performed by the user through
the interface being the closest thing to human locomotion in real time. Depends of
the user an effective and correct manipulation of this system.
7
TABLA DE CONTENIDO
1. ROBOTS................................................................................................... 19
1.1. CLASIFICACIÓN DE LOS ROBOTS .............................................................. 19
1.1.1 Según su cronología ................................................................................. 19
1.1.2. Según su arquitectura .................................................................................. 19
1.1.2.1 Poliarticulados ............................................................................................ 20
1.1.2.2 Móviles ....................................................................................................... 20
1.1.2.3 Androides ................................................................................................... 21
1.1.2.4 Zoomórficos ............................................................................................... 22
1.1.2.5 Híbridos...................................................................................................... 23
1.2. Biomecánica De La Marcha Humana ............................................................. 24
1.2.1 El Ciclo De La Marcha Humana .................................................................... 24
1.2.1.1 La Locomoción ........................................................................................... 24
1.2.1.2 El Ciclo De La Marcha ............................................................................... 25
1.3 ROBOT BÍPEDO.............................................................................................. 25
1.4 CINEMÁTICA DEL ROBOT ............................................................................. 26
1.4.1 El problema cinemático directo ..................................................................... 27
1.4.1.1 Resolución del problema cinemático directo mediante matrices de
transformación homogénea. .................................................................................. 27
1.4.1.2 Algoritmo de Denavit-Hartenberg. .............................................................. 29
1.4.2 El problema cinemático inverso .................................................................... 30
1.4.3 Control Cinemático ....................................................................................... 34
1.4.3.1 Funciones de control cinemático ................................................................ 34
1.4.3.2 Generador de trayectorias ......................................................................... 35
1.4.3.3 Consignas de movimientos ........................................................................ 36
1.4.3.4 Polinomios de 5° grado .............................................................................. 36
2. CONSTRUCCION .................................................................................... 37
2.1 IMPLEMENTACION DEL ROBOT ................................................................... 37
2.1.1 Componentes mecánicos.............................................................................. 37
8
2.1.1.1 Disco metálico para acoplar servomotor. ................................................... 37
2.1.1.2 Pie de robot humanoide bípedo. ................................................................ 38
2.1.1.3 Waist Bracket robot bípedo ........................................................................ 39
2.1.1.4 Soporte de dirección en forma de L. .......................................................... 39
2.1.1.5 Bracket en forma de U corto. ..................................................................... 40
2.1.1.6 Bracket multipropósito para servo estándar ............................................... 41
2.1.1.7 Servomotor MG995 .................................................................................... 41
2.1.1.8 Rodamiento 625zz. .................................................................................... 41
2.1.2 Ensamblaje final del sistema mecánico. ....................................................... 42
2.2 MODELO MATEMATICO................................................................................. 43
2.2.1 Cinemática directa del robot. ........................................................................ 43
2.2.2 Cinemática inversa del robot......................................................................... 47
2.2.2 Dinámica del robot. ....................................................................................... 50
2.2.3 Espacio de trabajo del robot ......................................................................... 53
2.3 DESARROLLO DE HARDWARE ..................................................................... 55
2.3.1 Computador. ................................................................................................. 55
2.3.2 Modulo Bluetooth RN-42. .............................................................................. 55
2.3.3 Bluetooth USB – Dongle Clase 2. ................................................................. 56
2.3.4 Microcontrolador. .......................................................................................... 57
2.3.5 Tarjeta de control y potencia. ........................................................................ 57
2.4 DISEÑO DE SOFTWARE ................................................................................ 57
2.4.1 Software para el control del robot ................................................................. 58
2.4.2 Firmware microcontrolador. .......................................................................... 58
2.4.3 Interfaz gráfica. ............................................................................................. 59
2.4.3.1 Interfaz gráfica en Visual Basic. ................................................................. 59
2.4.4 Comunicación de datos................................................................................. 60
3. PRUEBAS Y RESULTADOS .................................................................... 62
3.1 PRUEBA DE HARDWARE .............................................................................. 62
3.1.1 Prueba de velocidad de respuesta ................................................................ 62
9
3.1.2 Prueba de rango de comunicación. .............................................................. 62
3.1.3 Prueba de rendimiento de la energía eléctrica.............................................. 63
3.1.4 Prueba de usuarios ....................................................................................... 63
3.2 PRUEBA DE SOFTWARE ............................................................................... 63
3.2.1 Prueba de conexión de interfaz y robot. ....................................................... 63
3.2.2 Prueba de envió de parámetros desde la interfaz al robot. ........................... 65
3.3 COMPORTAMIENTO DEL ROBOT RESPECTO AL MODELO CINEMATICO
............................................................................................................................... 66
CONCLUSIONES .................................................................................................. 69
RECOMENDACIONES .......................................................................................... 70
REFERENCIA BIBLIOGRAFICAS ......................................................................... 71
ANEXOS ................................................................................................................ 73
10
LISTA DE FIGURAS
Figura 14: Periodos de aceleración y frenado del movimiento del robot ................ 35
Figura 36: Mini Adaptador Bluetooth 4.0 USB - Dongle BT Clase 2 ...................... 56
12
Figura 44: Sistema conectado y desconectado. .................................................... 64
13
LISTA DE TABLA
14
LISTA DE ANEXOS
15
INTRODUCCIÓN
16
moverse en áreas con obstáculos o terrenos que no son completamente planos.
Ellos se diferencian de otros robots con piernas en que su estructura presenta un
comportamiento inherentemente inestable, sin importar la forma en que han sido
diseñados. Ellos requieren un balance activo para moverse ya que su centro de
masa se encuentra fuera del área de soporte en un ciclo de caminado, por tal
motivo es recomendable utilizar estrategias de control avanzado como el control
cinemático que establece cuales son las trayectorias que debe seguir cada
articulación del robot bípedo a lo largo del tiempo para así lograr los objetivos
fijados. Por esta razón, se hace necesario para los estudiantes del área de control,
contar con herramientas que le permitan interactuar con estos tipos de sistemas,
puesto que el programa de ingeniería electrónica de la universidad popular del
cesar actualmente no cuenta con este tipo de ayudas para el estudio de sistemas
no lineales e inestables como el robot bípedo.
17
OBJETIVOS
OBJETIVO GENERAL
OBJETIVOS ESPECIFICOS
18
1. ROBOTS
21
Figura 3.Robot Humanoide
22
Figura 4.Robot Zoomórfico
24
como una serie de movimientos alternantes, rítmicos, de las extremidades y del
tronco que determinan un desplazamiento con respecto al centro de gravedad.
Aunque existen pequeñas diferencias en la forma de la marcha de un individuo a
otro, estas diferencias caen dentro de pequeños límites. [6]
La longitud del paso completo es la distancia lineal entre los sucesivos puntos de
contacto del talón del mismo pie. Longitud del paso es la distancia lineal en el
plano de progresión entre los puntos de contacto de un pie y el otro pie.
Durante casi todo el siglo 20, los robots bípedos eran muy difíciles de construir y
locomoción del robot participar sólo ruedas, bandas de rodadura, o múltiples
piernas. Recientes barato y compacto potencia de cálculo ha hecho que los robots
bípedos más factible. Algunos robots bípedos notables son ASIMO ver figura 7,
HUBO y QRIO.
Robot Bípedo Dinámico: Robot cuyo sistema de locomoción está basado en dos
piernas y que es capaz de andar sin necesidad de interrumpir su avance.
Robot Bípedo Estático: Robot cuyo sistema de locomoción está basado en dos
piernas y que debe interrumpir su avance al andar para garantizar el equilibrio.
𝑥 = 𝑙1 cos 𝑞1 + 𝑙2 cos(𝑞1 + 𝑞2 )
𝑦 = 𝑙1 sen 𝑞1 + 𝑙2 sen(𝑞1 + 𝑞2 )
27
Figura 9 Robot planar de 2 GDL
Aunque para describir la relación que existe entre dos elementos contiguos se
puede hacer uso de cualquier sistema de referencia ligado a cada elemento, la
forma habitual que suele utilizar en robótica es la representación de Denavit-
Hartenberg (D-H). Denavit y Hatenberg propusieron el 1995 un método matricial
que permite establecer de manera sistematica un sistema de coordenadas ligado
a cada eslabon i de cada cadena articulada, logrando determinar a continuación
las ecuaciones cinematicas de la cadena completa.
Donde θi, di, ai, αi son los parámetros D-H del eslabón i. De este modo, basta con
identificar los parámetros θi, di, ai, αi para obtener matrices A y relacionar si todos y
cada uno los eslabones del robot.
29
D-H 5. Situar el origen del sistema de la base (So) en cualquier punto del eje zo.
Los ejes xo e yo se situaran de modo que formen un sistema dextrógiro con zo.
D-H 9. Situar el sistema (Sn) en el extremo del robot de modo que zn coincida con
la dirección de zn-1 y xn sea normal a zn-1 y zn.
D-H 10. Obtener θi como Angulo que hay que girar en torno a zi-1 para que xi-1 y xi
queden paralelos.
D-H 11. Obtener di como la distancia, medida a lo largo de zi-1, que habría que
desplazar (Si-1) para que xi y xi-1 quedasen alineados.
D-H 12. Obtener ai como la distancia medida a lo largo de xi (que ahora coincidiría
con xi-1) que habría que desplazar el nuevo (Si-1) para que su origen coincidiese
con (Si).
D-H 13. Obtener αi como el ángulo que habría que girar entorno a xi (que ahora
coincidiría con xi-1), para que el nuevo (Si-1) coincidiese totalmente con (Si).
30
Así cómo es posible abordar el problema cinemático directo de una manera
sistemática a partir de la utilización de matrices de transformación homogéneas, e
independientemente de la configuración del robot, no ocurre lo mismo con el
problema cinemático inverso, siendo el procedimiento de obtención de las
ecuaciones fuertemente dependiente de la configuración del robot.
𝑞𝑘 = 𝑓𝑘 (𝑥, 𝑦, 𝑧, 𝛼, 𝛽, 𝛾)
𝑘 = 1. . . 𝑛 (𝐺𝐷𝐿)
31
Para mostrar el procedimiento a seguir se va a aplicar el método a la resolución
del problema cinemático inverso de un robot con 3 GDL de rotación (estructura
típica articular). La figura 11 muestra la configuración del robot. Los datos de
partida son coordenadas (px, py, pz) referidas a (So) en las que se quiere
posicionar su extremo. Como se ve, este robot posee una estructura planar,
quedando definido por el ángulo de la primera variable articular q1.
𝑝𝑦
𝑞1 = 𝑎𝑟𝑐𝑡𝑔 ( )
𝑝𝑥
𝑟 2 = 𝑝𝑥2 + 𝑝𝑦2
Esta expresión permite obtener q3 en función del vector de posición del extremo p.
No obstante, y por motivos de ventajas computacionales, es más conveniente
utilizar la expresión de la arcotangente en el lugar del arcoseno.
Puesto que
Se tendrá que
±√1 − 𝑐𝑜𝑠 2 𝑞3
𝑞3 = 𝑎𝑟𝑐𝑡𝑔 ( )
𝑐𝑜𝑠𝑞3
Con
𝑝𝑥2 + 𝑝𝑦2 + 𝑝𝑧2 − 𝑙22 − 𝑙32
𝑐𝑜𝑠𝑞3 =
2𝑙2 𝑙3
Como se ve, existen 2 posibles soluciones para 𝑞3 según se tome el signo positivo
o el signo negativo en la raíz. Estas corresponden a las configuraciones de codo
arriba (Figura 12-b) y codo abajo (Figura 12-a) del robot.
𝑞2 = 𝛽 − 𝛼
Siendo:
𝑝𝑧 𝑝𝑧
𝛽 = 𝑎𝑟𝑐𝑡𝑔 ( ) = 𝑎𝑟𝑐𝑡𝑔 ( )
𝑟 ±√𝑝𝑥2 + 𝑝𝑦2
𝑙3 𝑠𝑒𝑛𝑞3
𝛼 = 𝑎𝑟𝑐𝑡𝑔 ( )
𝑙2 + 𝑙3 𝑐𝑜𝑠𝑞3
Luego, finalmente
𝑝𝑧 𝑙3 𝑠𝑒𝑛𝑞3
𝑞2 = 𝑎𝑟𝑐𝑡𝑔 ( ) − 𝑎𝑟𝑐𝑡𝑔 ( )
±√𝑝𝑥2 + 𝑝𝑦2 𝑙2 + 𝑙3 𝑐𝑜𝑠𝑞3
De nuevo los dos posibles valores según la elección del signo dan lugar a dos
valores diferentes de 𝑞2 correspondientes a las configuraciones codo arriba y
abajo. Las expresiones 𝑞1 , 𝑞2 , 𝑞3 resuelven el problema cinemático inverso para el
robot de 3 GDL considerado.
34
Figura 13 Esquemático del funcionamiento del Control Cinemático.
35
1.4.3.3 Consignas de movimientos A las ordenes de referencia en posición,
velocidad y aceleración, que son funciones del tiempo, se les llama consignas y
deben ser definidas para cada uno de los motores del robot. Las consignas
pueden ser articulares o cartesianas.
1.4.3.4 Polinomios de 5° grado Para los robots rápidos o que transportan cargas
importantes, es necesario asegurar la continuidad de las aceleraciones con el fin
de evitar sobrecargar la mecánica del robot. Como el polinomio de tercer grado no
es suficiente debe imponerse dos condiciones suplementarias a la trayectoria
diseñada, eso es, aceleración inicial y final nula:
𝑞̈ (0) = 0
𝑞̈ (𝑓) = 0
36
2. CONSTRUCCION
Fuente: Autor.
Esta fase cuenta con factores importantes como: la robustez, vida útil y sobre todo
la calidad en el producto final. A su vez la selección de los componentes
mecánicos, electromecánicos como son los motores, tornillería y la fuente de
energía eléctrica.
2.1.1.1 Disco metálico para acoplar servomotor. Este accesorio metálico está
fabricado en aluminio y oxido de plata, lo cual lo caracteriza por ser muy
resistente, liviano, además es compatible con los servomotores que se utilizaron,
sus características son las siguientes.
2.1.1.2 Pie de robot humanoide bípedo. Este componente es usado como planta
del pie del robot, sus cualidades la hacen fácil de acoplar lo cual es practico a la
hora de hacer mantenimiento o cambio en caso de que presente deterioro del
mismo. Sus características son las siguientes.
Fuente: Vistronica
38
2.1.1.3 Waist Bracket robot bípedo. Este soporte pertenece a la cintura del robot
bípedo, su forma de U permite la sujeción del tronco y las piernas del robot.
Fuente: Vistronica
• Modelo Soporte L
• Material Aluminio (grosor de 2.2mm)
• Medidas de Largo: 26.5mm, Alto: 32mm, Ancho: 26.5mm
• Error de posición del agujero ~ 0.1mm
39
Figura 19: Soporte de dirección en forma de L.
Fuente: Vistronica
Fuente: Vistronica
40
2.1.1.6 Bracket multipropósito para servo estándar. Este soporte es muy
utilizado en robotica, se utilizar para sujetar el servomotor a otro otra base o
accesorio para el robot, con este producto se pueden armas los brazos roboticos,
hexapodos, robots bipedos y muchos otros proyectos de robotica.
Fuente: Vistronica
2.1.1.7 Servomotor MG995. El MG995 Tower Pro destaca por su gran torque,
engranajes metálicos y gran robustez (ver figura 21). Funciona con la mayoría de
tarjetas electrónicas con microcontroladores y además con la mayoría de los
sistemas de radio control comercial. Es utilizado principalmente en proyectos de
robótica y modelismo de mediano tamaño (Ver Anexo F).
Fuente: Vistronica
41
encuentra en rotación con respecto a otro; siendo su función principal el de
permitir la rotación relativa de dichos elementos bajo carga, con precisión y con un
rozamiento mínimo.
• Diámetro exterior 16 mm
• Diámetro interior 5 mm
• Anchura 5 mm
Fuente: Vistronica
2.1.2 Ensamblaje final del sistema mecánico. Después de tener todos los
componentes mecánicos, se procede a ensamblar todos los elementos descritos
en la sección anterior con el fin de obtener un prototipo final del sistema mecánico.
Para el ensamblaje de dichos componentes se debe tener en cuenta algunas
características que debe presentar el sistema mecánico, primero se debe
garantizar una estabilidad para sí obtener un equilibrio en el robot al momento de
la locomoción, segundo se debe tener en cuenta el ensamblaje de las piezas que,
al momento de ejercer la locomoción, esta sea la menos forzosa para no exigir los
actuadores al momento de indicarle el movimiento que este debe realizar. Una vez
realizado lo antes mencionado se observa el robot implementado, (ver figura 23).
42
Figura 24. Robot bípedo ensamblaje final
Fuente: Autores
Fuente: Autores
43
Tabla 1. Modelo Cinemático Directo Denavit-Hartenberg
Articulación Θ d a α
1 Q1 0 L1 0
2 Q2 0 L2 0
3 Q3 0 L3 -90
4 Q4 L5 L4 0
Se remplazan los valores de la tabla de parámetros de D-H para cada una de las
filas.
44
Cos(q3) 0 Sen(q3) l3 * Cos(q3)
2
Sen(q3) 0 Cos(q3) l3 * Sen(q3)
.𝐴3 =
0 1 0 0
[ 0 0 0 1 ]
Para obtener la matriz de transformación (T) entre la base y el extremo del robot
se multiplica cada una de las matrices de transformación correspondiente a las
articulaciones involucradas:
nx ox ax px
n oy ay p y
𝑇= y
nz oz az pz
0 0 0 w
Para obtener los valores de la posición (x, y, z) del extremo del robot se usa la
última columna de la matriz de transformación (T). Así, para obtener, se realiza la
siguiente operación:
0
0 0
.𝐴5 ∗ (0) = (𝑥, 𝑦, 𝑧, 𝑤) → 𝑝 = (𝑥, 𝑦, 𝑧).
45
Al obtener como resultado los valores de Px, Py y Pz en función de los ángulos
que toman cada una de las articulaciones.
𝑃𝑍 = −𝐿𝐸 𝑆4
Fuente: Autores.
46
Figura 27: Ventana de Comando de Matlab
2.2.2 Cinemática inversa del robot. Para el problema cinemático inverso al igual
que la cinemática directa el estudio se basa el análisis en una sola pierna debido a
que el modelo matemático resultante aplica para las dos extremidades, teniendo
en cuenta que cada pierna cuenta con pocos grados de libertad (4), para la
resolución se utilizara el método geométrico donde se relacionan las articulaciones
con las coordenadas del extremo del robot.
Fuente: Autores.
47
Se observa el diagrama de traslación de cada una de las extremidades que
conforman el robot bípedo, el punto extremo de este mismo se le ha llamado (P5),
el cual deberá seguir x trayectoria dada por un control cinemático.
Fuente: Autores.
𝑃𝑍5
𝑄4 = 𝑎𝑟𝑐𝑡𝑔 ( ) 𝑎ℎ𝑜𝑟𝑎 𝑠𝑒 𝑐𝑎𝑙𝑐𝑢𝑙𝑎𝑟 𝑃3
𝑃𝑋5
𝑃3 = (𝑃𝑋3 , 𝑃𝑌3 , 𝑃𝑍3 ) 𝐷𝑜𝑛𝑑𝑒 𝑃𝑋3 = 𝑃𝑋5 − 𝑙4 ∗ 𝐶𝑜𝑠(𝑄4 ), 𝑃𝑌3 = 𝑃𝑌5 − 𝑙4 ∗ 𝑆𝑒𝑛(𝑄4 )
𝑃𝑍3 = 𝑃𝑍5 − 𝑙5
48
Figura 30: Diagrama de Traslación P1, P2 y P3
Fuente: Autores.
Debido a limitaciones del sistema la articulación que hace las veces de la rodilla
toma valores positivos como negativos, caso que no sucede en las articulaciones
de los seres humanos.
Con
𝑃𝑌 𝑃𝑌
𝑄3 = 𝛽 − 𝛼 ⇒ 𝛽 = 𝑎𝑟𝑐𝑡𝑔 ( ) ⇒ 𝛽 = 𝑎𝑟𝑐𝑡𝑔 ( )
𝑟 ±√𝑃𝑧2 + 𝑃𝑋2
𝑙1 𝑆𝑒𝑛(𝑄2 )
𝛼 = 𝑎𝑟𝑐𝑡𝑔 ( )
𝑙2 + 𝑙1 𝐶𝑜𝑠(𝑄2 )
49
𝑃𝑌 𝑙1 𝑆𝑒𝑛(𝑄2 )
𝑄3 = 𝑎𝑟𝑐𝑡𝑔 ( ) − 𝑎𝑟𝑐𝑡𝑔 ( )
±√𝑃𝑧2 + 𝑃𝑋2 𝑙2 + 𝑙1 𝐶𝑜𝑠(𝑄2 )
Fuente: Autores
Una vez identificado el modelo del robot con las masas concentradas, se
encuentran las coordenadas cartesianas de cada masa:
Para 𝑚1
50
𝑥1 = 𝐿1 ∗ sin 𝜃1
𝑦1 = −𝐿1 ∗ cos 𝜃1
Para 𝑚2
𝑥2 = 𝐿1 ∗ sin 𝜃1 + 𝐿2 ∗ sin 𝜃2
Para 𝑚3
1
𝐸𝑘 = 𝑚𝑣 2
2
𝑣 2 = 𝑥̇ 2 + 𝑦̇ 2
Para 𝑚1
𝑦̇ 1 = 𝐿1 ∗ sin 𝜃1
𝑥̇ 1 = 𝐿1 ∗ cos 𝜃1
Para 𝑚2
𝑦̇ 2 = 𝐿1 ∗ sin 𝜃1 + 𝐿2 ∗ sin 𝜃2
51
Para 𝑚3
Para 𝑚1
1
𝐸𝑘1 = 𝑚1 (𝑥̇ 1 2 + 𝑦̇ 1 2 )
2
1
𝐸𝑘1 = 𝑚1 (𝐿1 2 sin2 𝜃1 + 𝐿1 2 cos 2 𝜃1 )
2
Para 𝑚2
1 2
𝐸𝑘2 = 𝑚2 (𝑥̇ 2 2 + 𝑦̇ 2 2 )
2
1 2 2 2 2
𝐸𝑘2 = 𝑚 (𝜃̇ 𝐿 2 + 𝜃̇2 𝐿2 2 + 2𝜃̇1 𝐿1 2 𝜃̇2 𝐿2 2 cos(𝜃1 − 𝜃2 ))
2 2 1 1
Para 𝑚3
1 2
𝐸𝑘3 = 𝑚3 (𝑥̇ 3 2 + 𝑦̇ 3 2 )
2
1 2 2 2 2 2 2
𝐸𝑘3 = 2 𝑚3 [𝜃̇1 𝐿1 2 + 2𝜃̇1 𝐿1 2 𝜃̇2 𝐿2 2 cos(𝜃1 − 𝜃2 ) + 𝜃̇2 𝐿2 2 + 2𝜃̇1 𝐿1 2 𝜃̇3 𝐿3 2 cos(𝜃1 −
2 2 2
𝜃3 ) + 2𝜃̇2 𝐿2 2 𝜃̇3 𝐿3 2 cos(𝜃2 − 𝜃3 ) + 𝜃̇3 𝐿3 2 ].
𝐸𝑝 = 𝑚𝑔𝑦
Para 𝑚1
𝐸𝑝1 = 𝑚1 𝑔𝑦1
52
𝐸𝑝1 = −𝑚1 𝑔𝐿1 cos 𝜃1
Para 𝑚2
𝐸𝑝2 = 𝑚2 𝑔𝑦2
Para 𝑚3
𝐸𝑝3 = 𝑚3 𝑔𝑦3
𝑑 𝜕𝐿 𝜕𝐿
( )− = 𝑄𝑖
𝑑𝑡 𝜕𝑞𝑖 𝜕𝑞𝑖
𝐿 = 𝐸𝑘 + 𝐸𝑝
1 2 1 2 2 2
𝐿= (𝑚1 + 𝑚2 + 𝑚3 )𝜃̇1 𝐿1 2 + 2 𝑚2 𝜃̇2 𝐿2 2 + 2(𝑚2 + 𝑚3 )𝜃̇1 𝐿1 2 𝜃̇2 𝐿2 2 cos(𝜃1 −
2
1 2 2 2 2 2
𝜃2 ) + 2 𝑚3 𝜃̇3 𝐿3 2 + 𝑚3 𝜃̇1 𝐿1 2 𝜃̇3 𝐿3 2 cos(𝜃1 − 𝜃2 ) + 𝑚3 𝜃̇2 𝐿2 2 𝜃̇3 𝐿3 2 cos(𝜃2 − 𝜃3 ) +
(𝑚1 + 𝑚2 + 𝑚3 )𝐿1 𝑔 cos 𝜃1 + (𝑚2 + 𝑚3 )𝐿2 𝑔 cos 𝜃2 + 𝑚3 𝐿3 𝑔 cos 𝜃3 .
✓ La estructura del espacio de trabajo viene definida por la estructura del robot y
las dimensiones de sus eslabones.
Figura 32: Espacio de trabajo del robot bípedo.
Fuente: Autores.
54
2.3 DESARROLLO DE HARDWARE
En esta fase se llevó a cabo una explicación general de los posibles componentes
y herramientas de hardware a utilizar para el funcionamiento óptimo del robot
implementado anteriormente, lo cuales se seleccionaron los diferentes
dispositivos, tales como microcontrolador, tarjetas impresas, computador. A
continuación, se observa en el siguiente diagrama de bloques las fases del
desarrollo del hardware (ver figura 31).
Fuente: Autores.
Las etapas o fases del hardware del sistema mostradas en la figura anterior, se
resumen a continuación.
Fuente: Autor.
55
transmitir datos tipo de Datos UART con una tasa de datos de 240Kbps en
Esclavo y 300Kbps en Maestro, admite múltiples protocolos de interfaz. [13]
56
2.3.4 Microcontrolador. Un microcontrolador es un pequeño ordenador que
contiene en su interior básicamente un procesador, soporte (Reloj y Reset),
memoria y puertos de entradas y salidas todo encapsulador en un chip que se
puede programar con total flexibilidad y relativa facilidad.
Los Micro controladores de 8Bit son aquellos que todos los recursos necesarios a
nivel hardware están contenidos dentro de este; solo es necesario alimentarlo y
configurar la señal del Oscilador de Reloj para que realice su funcionamiento, así
mismo facilitando la programación con posibilidades de conectar con otros
dispositivos externos llevando a cabo lo que se desea controlar
Fuente: Autores.
El trabajo realizado es un sistema que debe ser lo más rápido posible, el robot
bípedo tiene que moverse en un determinado tiempo que asimile los datos que se
envíen desde la interface de usuario.
57
Antes de iniciar esta etapa, se tendrán que tener instalado los siguientes
programas.
2.4.1 Software para el control del robot. Para la interacción entre en usuario y el
robot, se usó la versión educativa de Microsoft Visual Studio Profesional 2010,
usando como lenguaje de programación Visual C (ver figura 36). La cual ofrece
una amplia infraestructura y potencia grafica con la que es posible desarrollar
aplicaciones visualmente atractivas y multiplataforma, con facilidades de
integración que incluyen animación, video, audio, documentos, navegación, que
son compatibles en diferentes medios.
Fuente: Autores.
Fuente: Autores.
58
2.4.3 Interfaz gráfica. La interfaz gráfica de usuario, conocida también como GUI
(del inglés graphical user interface), es un programa informático que actúa de
interfaz de usuario, utilizando un conjunto de imágenes y objetos gráficos para
representar la información y acciones disponibles en la interfaz. Su principal uso,
consiste en proporcionar un entorno visual sencillo para permitir la comunicación
con el sistema operativo de una máquina o computador.
Fuente: Autor.
59
Si la comunicación no es exitosa se generara una alerta la cual indica que no ha
sido posible establecer un vínculo con el dispositivo; en caso que la conexión se
establezca de manera satisfactoria la interfaz manda la primera trama al hardware
de control con la posición inicial que debe adoptar el robot bípedo, una vez
realizado estos pasos la interfaz quedara a espera que el usuario ejecute un
comando para realizar una acción de control sobre el robot de acuerdo a lo
seleccionado, es decir el usuario por cada tecla valida que presione estaría
seleccionando una trayectoria que el robot deberá de seguir, sin embargo a esta
trayectoria seleccionada, primero se le debe aplicar la cinemática inversa donde
se generan las tramas que van a ser enviadas al hardware de control del robot.
Fuente: Autores.
Fuente: Autores.
60
La transferencia ordenada de información en el enlace de Datos se logra por
medio de protocolos de comunicación el cual el objetivo es establecer una
conexión entre el equipo terminal de datos identificando el emisor y el receptor
asegurando que todos los mensajes se transfieran correctamente. El protocolo
más empleado es el RS-232, pero el dispositivo que controla los puertos y
dispositivos serie es el UART (Transmisor-Receptor Asíncrono Universal). Se
encuentra integrado en la placa base o en la tarjeta adaptadora del dispositivo el
cual interpreta los datos recibidos mediante protocolos como el que se mencionó
con anterioridad.
61
3. PRUEBAS Y RESULTADOS
PROCEDIMIENTO TIEMPO
Fuente: Autores
62
distancias que varían de 200 cm, teniendo en cuenta los obstáculos que se pueda
presentar a la hora de establecer la comunicación entre el robot y la computadora.
200cm 180cm SI
400cm 380cm SI
800cm 780cm SI
10Mt 970cm SI
12Mt 12Mt NO
Fuente: Autores.
3.1.4 Prueba de usuarios. Para las pruebas se tomaron como punto de referencia
usuarios que nunca habían tenido contacto con el proyecto, para probar la
eficiencia del prototipo con la interfaz y la facilidad de usar la misma, solamente
viendo a los desarrolladores y explicando el manejo de la interfaz, lo cual
ofrecieron observaciones de la interfaz para que esta pueda ser operada por
cualquier persona que tenga conocimientos básicos de electrónica sin necesidad
de la presencia de los desarrolladores.
Fuente: Autores.
Fuente: Autores.
64
En la figura 42, se muestra la tarjeta cuando se encuentra conectada y
desconectada, cuando se encuentra el led rojo encendido indica que el bluetooth
no ha establecido una conexión y el led verde indica que se encuentra conectado
y la comunicación está habilitada.
Fuente: Autores.
65
Figura 46: Respuesta a cambio de posición de ambas piernas.
Fuente: Autores.
Una última prueba seria variando la posición de la pierna izquierda del robot,
dejando en condición inicial la pierna derecha. (Ver figura 45).
Fuente: Autores.
66
Figura 48: Modelo cinemático del robot en Simulink de Matlab.
Fuente: Autor.
Se hicieron pruebas donde se tomaron los siguientes parámetros los cuales fueron
posición inicial y final de la articulación (Q4 y Q5), esperando obtener como
resultado un movimiento de la cadera del robot. La respuesta obtenida se puede
apreciar en las siguientes figuras.
Figura 49: Respuesta de la aceleración, velocidad y desaceleración de las articulaciones (Q4, Q5).
Fuente: Autores.
67
Se hicieron pruebas donde se tomaron los siguientes parámetros los cuales fueron
posición inicial y final de la articulación (Q3 y Q6), esperando obtener como
resultado un movimiento de las rodillas del robot. La respuesta obtenida se puede
apreciar en las siguientes figuras.
Figura 50: Respuesta de la aceleración, velocidad y desaceleración de las articulaciones (Q3, Q6).
Fuente: Autor.
68
CONCLUSIONES
69
RECOMENDACIONES
70
REFERENCIA BIBLIOGRAFICAS
[3] M. Brady and R. Paul, editors. “Robotics Research: The First International
Symposium. The MIT Press,” Cambridge MA, 1984, Pag. 5 – 7}
[8] J. J. Craig Pearson, “Robótica,” 1ra ed, Prentice Hall, New Jersey USA,
[online]. 2006. Pag. 230
[11] Spong, Mark, Jonathan K. Holm, And Dongjun Lee. Passivity-Based Control of
Bipedal Locomotion, IEEE Robotics & Automation Magazine. Junio 2007. pag. 30 -
40.
71
[13] Microsoft, Documentacion - MSDN Library (2007), Introduccion a Visual
Studio. [Online]. Available: https://msdn.microsoft.com/es-
es/library/fx6bk1f4(v=vs.90).aspx
72
ANEXOS
73
Anexo A. Código MATLAB de la Cinemática Directa del Robot Bípedo
close all
q=[90 0 0 0 0];
d = [3.3 0 0 0 0];
0 0 0 1];
0 0 0 1];
0 0 0 1];
74
A34 = [cos(teta(4)) -cos(alfa(4))*sin(teta(4)) sin(alfa(4))*sin(teta(4))
a(4)*cos(teta(4));
0 0 0 1];
0 0 0 1];
T=A05
75
Anexo B. Código MATLAB de la Cinemática Inversa del Robot Bípedo
d = [0 0 0 0 0];
p = T(1:3,4);
p(1)=roundn(p(1),-4);
p(2)=roundn(p(2),-4);
p(3)=roundn(p(3),-4);
Teta4=acos(T(1,3));
r=sqrt((p(1)-a(1))^2+p(3)^2);
q1=asin(p(3)/r);
q1s=roundn(q1*180/pi,-4)
X1=a(2)*cos(q1);
Y1=a(2)*sin(q1);
X2=p(1)-a(1)-X1;
Y2=p(2)-Y1;
Xf=a(5)*cos(Teta4);
Yf=a(5)*sin(Teta4);
76
X3=X2-Xf;
Y3=Y2-Yf;
r2=sqrt(X3^2+Y3^2);
Teta2=acos((a(3)^2+r2^2-a(4)^2)/(2*r2*a(3)));
Teta3=acos((a(3)^2-r2^2+a(4)^2)/(2*a(4)*a(3)));
q2s=roundn(Teta2*180/pi,-4)
q3s=roundn(Teta3*180/pi,-4)
q4s=roundn(Teta4*180/pi,-4)
77
Anexo C. Modulo Bluetooth RN-42
78
79
80
Anexo D. Servomotor MG-996
81
82
Anexo E. Batería De Lithiom
83
Anexo F. Cargador de Batería LiPo imaxrc
84
Anexo G. Transistor Bipolar 2N2222A
85
Anexo H. Manual de Usuario
86
➢ 1. Aumenta y disminuye el tiempo que se tarda para el envío de cada punto
de la trayectoria.
➢ 2. Es una barra de progreso que indica el avance de la trayectoria punto a
punto.
➢ 3. Este comando sirve para que el robot regrese a la posición inicial.
➢ 4. Al pulsar este botón el robot ejecuta el semi ciclo izquierdo de la marcha
humana.
➢ 5. Con este botón se la da la orden al robot de ejecutar la trayectoria de la
marcha humana alternando el semi ciclo derecho con el izquierdo.
➢ 6. Al pulsar este botón el robot ejecuta el semi ciclo derecho de la marcha
humana.
➢ 7. Determina los puertos serial disponible en el computador y los anexa en
el Combobox.
➢ 8. Permite seleccionar un ítem que contiene el nombre del puerto serial con
el que se dese establecer una comunicación.
➢ 9. Determina la conexión de la interfaz con el hardware de control a través
del puerto serial indicado.
➢ 11. Con este comando el robot se balancea hacia izquierda.
87
➢ 12 al pulsar este botón el robot bípedo responde con la trayectoria de
agacharse.
➢ 13. Con este comando el robot se balancea hacia derecha.
88
En la figura anterior se muestra la tarjeta cuando se encuentra conectada y
desconectada, cuando se encuentra el led rojo encendido indica que el bluetooth
no ha establecido una conexión y el led verde indica que se encuentra conectado
y la comunicación está habilitada.
89