0% encontró este documento útil (0 votos)
32 vistas119 páginas

Robot Miniatura para Terapia de Ratas Taiep

Cargado por

Lizandro Ponce
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
32 vistas119 páginas

Robot Miniatura para Terapia de Ratas Taiep

Cargado por

Lizandro Ponce
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

BENEMÉRITA UNIVERSIDAD AUTÓNOMA DE PUEBLA

FACULTAD DE CIENCIAS DE LA ELECTRÓNICA


MAESTRÍA EN CIENCIAS DE LA ELECTRÓNICA
OPCIÓN EN AUTOMATIZACIÓN

“Diseño e implementación de un robot miniatura para proveer


estimulación iterativa a la extremidad posterior del mutante de mielina
taiep”*

TESIS
Presentada para obtener el título de:
Maestro en Ciencias de la Electrónica Opción en Automatización

Presenta:

Ing. Daniel Eduardo Hernández Sánchez**

Directores:
Dr. José Ramón Eguibar Cuenca

Dr. José Fernando Reyes Cortés

Dra. Ma. del Carmen Cortés Sánchez


Puebla, México enero 2017
* TRABAJO FINANCIADO PARCIALEMENTE POR PROYECTO BUAP,

** BECARIO CONACYT
Agradecimientos

Realizar un trabajo de tesis es una tarea ardua y extensa por lo que resulta imposible
llevarlo a cabo sin la colaboración y el apoyo de personas, profesores e instituciones, es
por ello que en estas líneas me permito agradecer profundamente todas las aportaciones
que permitieron la conclusión de este proyecto de forma exitosa.

Agradezco a mis padres, Irene Sánchez Salazar y Jeronimo Hernández Silverio, por
apoyarme en cada paso que he dado, en cada decisión que he tomado, por bridarme todo
su amor y por ser un gran ejemplo a seguir.

Les agradezco a mis hermanas, Maria del Rosario y Miriam Areli, por todo el apoyo
que me han brindado en cada etapa de mi vida.

A Nayeli por ayudarme y apoyarme durante todo este proceso y junto a ella cumplir
un sueño más.

Al Dr. José Fernando Reyes Cortés por brindarme todo su apoyo, no solo académi-
camente sino también personalmente, por orientarme adecuadamente adecuadamente con
cada uno de sus consejos y así lograr cumplir esta meta.

Al Dr. José Ramón Eguibar por brindarme todo su apoyo para cumplir este sueño,
por enseñarme una nueva forma de trabajo que en lo personal fue muy enriquecedor, por
permitirme adentrarme nuevamente en el área de la salud y llevarme de la mano en un
mundo casi desconocido para mí, por todo el apoyo académico y personal que me brindo
en toda esta etapa.

A la Dra. Carmen Cortés Sánchez, que de igual forma supo guiarme con sus conoci-
mientos y buenos consejos, los cuales fueron parte fundamental para el desarrollo de este
trabajo.

II
A mis amigos y compañeros con los cuales compartí momentos extraordinarios durante
este proceso y a todas las personas que de alguna u otra forma ayudaron a cumplir esta
meta.

A la Facultad de Ciencias de la Electrónica, al Laboratorio de Robótica y Control así


como al Laboratorio de Neurofisiología de la Conducta y Control Motor (Instituto de Fi-
siología) de la Benemérita Universidad Autónoma de Puebla por brindarme todo el apoyo
durante mi estancia en el posgrado, gracias a todos los profesores que nos sólo me brinda-
ron sus conocimientos sino que también me enseñaron y aconsejaron de forma adecuada
para ser una mejor persona día con día.

Un agradecimiento a los miembros de jurado revisor, a la Dr. Aurora Vargas, la Dra.


Darnes Vilariño y el Dr. Sergio Vergara por cada uno de los consejos, observaciones y el
tiempo que me brindaron en cada etapa de este proyecto.

Un agradecimiento a la Vicerrectoría de Investigación y Estudios de Posgrado, en espe-


cial al Vicerrector Dr. Ygnacio Martínez Laguna, ya que con su apoyo se pudieron cumplir
los objetivos de este trabajo.

Al Consejo Nacional de Ciencia y Tecnología, por el apoyo que me brindaron como


becario 581773, lo que permitió dedicarme por completo a este trabajo de tesis.
Esta investigación fue realizada gracias al apoyo del Consejo de Ciencia y Tecnología del
Estado de Puebla.
Dedicatoria

A mis padres Irene Sánchez y Jeronimo Hernández, que han luchado mucho para que mis
hermanas y yo podamos cumplir cada uno de nuestros sueños.
A mis hermanas Maria del Rosario y Miriam Areli, por siempre ser una inspiración para
ser una mejor persona en cada aspecto de mi vida.
A toda mi familia, que simepre me apoyan.
A Nayeli, por acompañarme de la mano en esta travesía.
A mis amigos, que se han vuelto parte de mi familia.
Resumen

En el presente trabajo de tesis se exponen los conceptos que nos permiten entender el
problema motor que presenta el mutante de mielina denominada rata taiep, tema que es
una base importante para el desarrollo de este proyecto.

Para llevar a cabo una rutina programable que aplique una estimulación repetitiva a la
extremidad de una rata sana o una rata taiep, se diseña y se construye un robot móvil de
tracción diferencial. A partir de esta configuración de robot móvil se desarrolla la cinemá-
tica y el modelo dinámico con base en la metodología de Newton-Euler. El desarrollo del
modelo dinámico sienta las bases para poder elaborar un algoritmo de control y se realiza
el análisis de estabilidad asintótica en el sentido de Lyapunov, que garantiza la inmunidad
del control a las condiciones iniciales. Posteriormente se presentan las simulaciones del
algoritmo de control en conjunto con el modelo dinamico desarrollado previamente, las
respuestas que presenta esta simulación son comparadas con las respuestas que presenta
el algoritmo de control tangente hiperbólico y PD; esto permite evaluar el desempeño de
las estructuras de control.

Se desarrolla la etapa de potencia para los motores con los que cuenta el robot móvil,
la cual está basada en transistores BJT. Se elabora una aplicación móvil para el sistema
operativo Android; se usa el protocolo de comunicación Bluetooth para el manejo de datos
que permiten realizar el control del robot móvil de manera remota y así llevar a cabo la
terapia deseada. La aplicación le permite al usuario configurar parámetros de la terapia.
Para realizar en control de posición del robot móvil se desarrolla un firmware que le per-
mite al robot móvil realizar una trayectoria. Se implementa el controlador desarrollado
previamente y el algoritmo de tangente hiperbólico y se logra cerrar el lazo de control con
ayuda de los enconders con los que cuentan los motorreductores.

Por último, se realizan pruebas experimentales del control del robot móvil al realizar
una trayectoria y al llevar a cabo la rutina para la aplicación de la terapia.

VI
Índice general

Resumen VI

Introducción XIII

1. Marco conceptual 1
1.1. Robots móviles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1.1. Ackerman . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.2. Triciclo clásico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1.3. Configuración síncrona . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1.4. Direccionamiento diferencial . . . . . . . . . . . . . . . . . . . . . . 5
1.2. Mielina . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.2.1. Mutante de mielina taiep . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2.2. Enfermedades de la mielina . . . . . . . . . . . . . . . . . . . . . . 9

2. Diseño y construcción del robot móvil 11


2.1. Desarrollo del prototipo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

3. Modelo cinemático y dinámico de un robot móvil de tracción diferencial 17


3.1. Cinemática . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.1.1. Cinemática directa . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.1.2. Cinemática inversa . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.1.3. Cinemática diferencial . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.1.4. Matrices de rotación . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.1.5. Matriz de rotación alrededor del eje z0 . . . . . . . . . . . . . . . . 20
3.1.6. Cinemática de un robot de tracción diferencial . . . . . . . . . . . . 21
3.1.7. Restricciones cinemáticas de un robot de tracción diferencial . . . . 23
3.2. Dinámica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.2.1. Formulación de Newton-Euler . . . . . . . . . . . . . . . . . . . . . 24
3.2.2. Ecuaciones básicas . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

VII
Índice general VIII

3.2.3. Dinámica de un robot de tracción diferencial . . . . . . . . . . . . . 26

4. Control 29
4.1. Propuesta de estructura de control . . . . . . . . . . . . . . . . . . . . . . 29
4.2. Simulaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4.2.1. Ecuación en lazo cerrado (estructura de control propuesta y diná-
mica en conjunto) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

5. Instrumentación electrónica 39
5.1. Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
5.1.1. Tarjeta de control . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
5.1.2. Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
5.1.3. Etapa de potencia . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
5.2. Firmware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
5.2.1. Aplicación móvil . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

6. Resultados 55

Conclusiones 63

A. Reconocimientos 65
A.1. XXIII Congreso Internacional Anual de la Sociedad Mexicana de Ingeniería
Mecánica. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
A.2. 1er. Congreso Internacional de Ciencias de la Ingeniería y Tecnología ECI-
TEC 2017. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
A.3. Certificación TOEFL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

B. Publicaciones 71
B.1. SOMIM 2017. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
B.2. ECITEC 2017. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

C. Firmware 87
C.1. Firmware para la adquisición el procesamiento de señales de la aplicación
móvil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
C.2. Firmware para realizar la simulación del modelo dinámico. . . . . . . . . . 91
C.3. Firmware para el control del robot moóvil. . . . . . . . . . . . . . . . . . . 95

Bibliografía 101
Índice de figuras

1.1. Clasificación de robots de acuerdo al tipo locomoción . . . . . . . . . . . . 2


1.2. Trayectoria de un robot móvil de un punto A a un punto B . . . . . . . . . 2
1.3. Sistema Ackerman . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.4. Locomoción de triciclo clásico . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.5. Configuración para transmisión síncrona . . . . . . . . . . . . . . . . . . . 5
1.6. Robot móvil en configuración diferencial . . . . . . . . . . . . . . . . . . . 5
1.7. Variedades de células neurogliales en el sistema nervioso central de los ma-
míferos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.8. Diagrama de un axón mielinizado, proceso por el cual los oligodendrocitos
en el sistema nervioso central, y células de Schwann en el sistema nervioso
periférico, envuelven al axón en mielina. . . . . . . . . . . . . . . . . . . . 7
1.9. Diagrama de una célula de Schwann. Estas células producen las vainas de
mielina que aíslan los axones en el sistema nervioso periférico, son colocadas
a lo largo de un solo axón y forman un segmento de vaina de mielina de
aproximadamente 1 mm de longitud. . . . . . . . . . . . . . . . . . . . . . 7

2.1. Llantas DU-BRO Super Lite Wheels utilizadas para el sistema de tracción 12
2.2. Motorreductor Pololu de relación 131:1 con codificador de 64 ciclos por
revolución (CPR) para el sistema de tracción. . . . . . . . . . . . . . . . . 12
2.3. Rueda de castor para el soporte del chasis. . . . . . . . . . . . . . . . . . . 14
2.4. Representación general del robot móvil diseñado en SOLIDWORKS. . . . . 14
2.5. Ensamble del prototipo de robot móvil. . . . . . . . . . . . . . . . . . . . . 15
2.6. Primer prototipo mecánico para sujetar las extremidades de los roedores. . 15
2.7. Segundo prototipo mecánico para sujetar las extremidades de los roedores. 16
2.8. Restrictor de movimiento para el cuerpo de los roedores. . . . . . . . . . . 16

3.1. Sistema de referecia fijo Σ0 y rotado Σ1 . . . . . . . . . . . . . . . . . . . . 20


3.2. Sistema de referecia fijo Σ0 y rotado Σ1 . . . . . . . . . . . . . . . . . . . . 21

IX
Índice de figuras X

3.3. Sistemas de coordenadas Σ0 [x0 , y0 , z0 ], Σ1 [x1 , y1 , z1 ] y Σ2 [x2 , y2 , z2 ] que per-


miten describir el desplazamiento y la orientación del robot móvil. 2L es la
distancia de separación entre las dos ruedas de tracción, 2R es el diámetro
de las ruedas, L1 es la distancia del centro de masa al eje de rotación de las
ruedas y θ es el ángulo que describe la orientación del móvil. . . . . . . . . 22
3.4. Diagrama de cuerpo libre del robot móvil de direccionamiento diferencial.
FlI y FlD son las fuerzas longitudinales, FoI y FoD son las fuerzas laterales
del robot, vl y vo son las velocidades, al y ao son las aceleraciones del centro
de masa del robot, respectivamente. . . . . . . . . . . . . . . . . . . . . . . 26

4.1. Diagrama a bloques del modelo dinámico. . . . . . . . . . . . . . . . . . . 31


4.2. Diagrama a bloques de la propuesta de algoritmo de control. . . . . . . . . 32
4.3. Diagrama a bloques de la ecuación en lazo cerrado (Dinámica del robot
móvil y el controlador propuesto). . . . . . . . . . . . . . . . . . . . . . . . 32
4.4. Error de posición de las ruedas del robot móvil al aplicar el controlador
propuesto. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
4.5. Niveles de torques requeridos para llegar a la posición deseada. . . . . . . . 34
4.6. Posición final del centro de masa del robot móvil al aplicar la propuesta de
controlador. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.7. Error de posición del centro de masa del robot móvil al aplicar el controlador
tangente hiperbólico. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.8. Niveles de torques requeridos para llegar a la posición deseada. . . . . . . . 36
4.9. Posición final del centro de masa del robot móvil al aplicar el controlador
tangente hiperbólico. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
4.10. Error de posición del centro de masa del robot móvil al aplicar el controlador
PD. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.11. Niveles de par requeridos para llegar a la posición deseada. . . . . . . . . . 37
4.12. Posición final del centro de masa del robot móvil al aplicar el controlador
PD. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

5.1. Diagrama a bloques del hardware del robot móvil. . . . . . . . . . . . . . . 39


5.2. Módulos de protocolo de comunicación Bluetooth. . . . . . . . . . . . . . . 41
5.3. Freno prony para la caracterización de motores. . . . . . . . . . . . . . . . 42
5.4. Diagrama esquemático del puente H con transistores en configuración Dar-
lington y optoacoplador. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.5. Diagrama esquemático del circuito de protección para el puente H con com-
puertas lógicas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Índice de figuras XI

5.6. Batería LI-PO Turnigy 1000 mAh 2S 7.4 V. . . . . . . . . . . . . . . . . . 47


5.7. Diagrama de conexión del regulador de voltaje L7805. . . . . . . . . . . . . 48
5.8. Representación de la aplicación móvil para el control de la fisioterapia. . . 49
5.9. Lista con los nombres y direcciones de los dispositivos Bluetooth disponibles
para emparejar. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
5.10. Bloques para generar la lista con los nombres y direcciones de los disposi-
tivos Bluetooth disponibles para emparejar. . . . . . . . . . . . . . . . . . 50
5.11. Bloques para emparejar los dispositivos Bluetooth. . . . . . . . . . . . . . 51
5.12. Bloques para desconectar los dispositivos Bluetooth. . . . . . . . . . . . . . 51
5.13. Bloques para inicializar variables globales. . . . . . . . . . . . . . . . . . . 51
5.14. Campos de texto para que el usuario ingrese los parámetros deseados. . . . 52
5.15. Bloque para enviar los parámetros de la terapia al microcontrolador. . . . . 52
5.16. Bloque para iniciar la rutina. . . . . . . . . . . . . . . . . . . . . . . . . . 53
5.17. Bloque para detener la rutina. . . . . . . . . . . . . . . . . . . . . . . . . . 53

6.1. Configuración de desplazamiento de 25 cm. . . . . . . . . . . . . . . . . . . 55


6.2. Desplazamientos de 25cm . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
6.3. Configuración de desplazamiento de 13cm. . . . . . . . . . . . . . . . . . . 56
6.4. Desplazamientos de 13cm. . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
6.5. Configuración de tres rutinas distintas. . . . . . . . . . . . . . . . . . . . . 57
6.6. Pruebas de restricción de movimiento en roedores. . . . . . . . . . . . . . . 57
6.7. Valores obtenidos al inicio de la trayectoria. . . . . . . . . . . . . . . . . . 59
6.8. Valores obtenidos a la mitad de la trayectoria. . . . . . . . . . . . . . . . . 59
6.9. Valores obtenidos al final de la trayectoria. . . . . . . . . . . . . . . . . . . 60
6.10. Trayectoria recorrida por el robot móvil. . . . . . . . . . . . . . . . . . . . 60
6.11. Gráficas de posición de las ruedas del robot móvil. . . . . . . . . . . . . . . 61
6.12. Gráficas de torques aplicados a las ruedas del robot móvil para realizar la
trayectoria deseada. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
6.13. Gráficas de error posición de las ruedas del robot móvil. . . . . . . . . . . . 62
Índice de tablas

1.1. Tamaño y velocidad de conducción de fibras aferentes en los nervios perifé-


ricos de acuerdo a su nivel de mielinización. . . . . . . . . . . . . . . . . . 8

2.1. Características físicas de las ruedas DU-BRO . . . . . . . . . . . . . . . . . 12


2.2. Especificaciones generales del motorreductor pololu 131:1. . . . . . . . . . . 13

5.1. Características generales del microcontrolador ATmega2560. . . . . . . . . 40


5.2. Especificaciones técnicas de la tarjeta Mega 2560. . . . . . . . . . . . . . . 40
5.3. Resultados obtenidos de la caracterización del motor izquierdo. . . . . . . . 43
5.4. Resultados obtenidos de la caracterización del motor derecho. . . . . . . . 44
5.5. Especificaciones de la Batería LI-PO Turnigy 1000 mAh 2S 7.4 V. . . . . . 47
5.6. Especificaciones eléctricas del regulador de voltaje L7805. . . . . . . . . . . 48

XII
Introducción

La denominada robótica móvil ha cobrado una importancia creciente durante los años
ochenta y noventa que responde a la necesidad de extender el campo de la aplicación de
la robótica ya que a diferencia de los robots manipuladores, los robots móviles poseen un
espacio de trabajo ilimitado [1–3].

Tanto en los robots manipuladores como en la robótica móvil existen puntos de interés
común: el modelado cinemático, el modelado dinámico, el control (arquitecturas, algorit-
mos), la planificación, el reconocimiento del entorno, etc [3].

Los robots móviles se mueven en ambientes cambiantes llenos de obstáculos que pueden
ser aleatorios e inesperados. A diferencia de los robots fijos, los robots móviles cambian
con cada movimiento la posición y orientación de su eje coordenadas base. Por lo tanto,
deben reconocer constantemente el ambiente donde se mueven para poder adaptarse ade-
cuadamente [4].

Gracias a estas características, los robots móviles nos otorgan un gran número de po-
sibilidades en la realización de tareas, sea de modo automático o siendo manipulados por
medio de teleoperación limitando todo lo posible la intervención humana [2, 5, 6].

Sus aplicaciones cubren una gran variedad de campos entre los cuales incluyen trabajos
subterráneos (minería, construcción de túneles, etc.) misiones espaciales y exploración pla-
netaria (recolección de muestras, mantenimiento de estaciones orbitales, etc.) vigilancia
e intervención de seguridad (reconocimiento de terrenos, inspección y vigilancia, misio-
nes de búsqueda y rescate, desactivación de explosivos, operación en zonas radioactivas),
aplicaciones militares, aplicaciones marítimas, limpieza de entornos, asistencia médica, in-
vestigación y desarrollo, agricultura, transporte, entre otros [1, 7].

Para que los robots móviles sean capaces de ejecutar de forma autónoma movimientos

XIII
Introducción XIV

previamente planificados y así cumplir con las tareas que se mencionan anteriormente, es
necesario desarrollar un modelo matemático completo que permita observar, a través de
simulaciones, los efectos de diferentes eventos sobre el robot [8] y posteriormente formular
leyes de control que permitan estabilizar el vehículo sobre un punto de trabajo, anulando
el efecto de las perturbaciones y manteniendo acotadas las señales de control [2].

Por otra parte, la naturaleza multidisciplinaria de la automatización permite inter-


actuar con una diversidad de áreas del conocimiento, particularmente con ciencias de la
salud ya que existe una correlación muy estrecha entre los campos, debido a que la teoría
de control automático se aplica directamente, dando origen al diseño de robots que permi-
tan automatizar la adquisición y procesamiento de señales, además de controlar sistemas
específicos.

Bajo este contexto se aborda el problema motor que presenta la rata taiep. La ra-
ta taiep es un mutante de mielina neurológico caracterizado por una disminución de la
mielinización (hipomielinización) y una desmielinización progresiva del sistema nervioso
central [9], pero no se afecta la mielina periférica, lo que lo hace un modelo de esclerosis
múltiple. Estas ratas muestran un síndrome motor progresivo caracterizado por temblor,
ataxia, episodios de inmovilidad, epilepsia y parálisis de los miembros posteriores [10].

La mielina es una capa aislante compuesta por proteinas y grasas que se forma alrede-
dor de los nervios, se encuentran en el cerebro, médula espinal y los nervios periféricos. Por
medio de la mielina es como se permite la transmisión de impulsos nerviosos mas rápido a
lo largo de las neuronas, si esta se daña, entonces se genera una reducción en la velocidad
de conduccion en los impulsos nerviosos, dando origen a un grupo de enfermedades, tales
como la esclerosis múltiple.

Existen diversos trabajos donde se estudian los problemas que presentan estos roedores,
ver trabajos de Dr. José Eguibar [11] donde se estudian la crisis epilépticas, Dr. Manuel
Roncagliolo [9] donde se estudia el problema que presenta la vía auditiva central en el
tronco encefálico, entre muchos otros. Sin embargo, actualmente se han desarrollado pocos
dispositivos o mecanismos que permiten apoyar, mediante una terapia, al estudio de los
trastornos del sistema motor que presenta la rata taiep, ver trabajo de Jeff A. Nessler
[12] donde se muestra un dispositivo robótico que permite realizar el estudio del sistema
locomotor después de provocar una lesión en la médula espinal.
Introducción XV

Objetivo General
Desarrollar y construir un prototipo de robot que ejecute rutinas motoras
iterativas variando los desplazamientos, la fuerza y el torque ejecutadas sobre
el tobillo en una extremidad de las ratas y analizar los resultados obtenidos
para determinar si existe una mejora después de aplicar la terapia.

Objetivos particulares
1. Diseñar y construir un robot móvil miniatura para la ejecución de rutinas motoras
iterativas.

2. Modelado dinámico del robot móvil.

3. Diseño de un algoritmo de control.

4. Desarrollo de la interface electrónica y programación requerida por el robot móvil.

5. Transmisión de datos/comandos por Bluetooth y/o WiFi.

6. Resultados experimentales sobre la locomoción de la rata taiep.

7. Publicación de los resultados de tesis en revista (arbitrada/indexada) y congreso


arbitrado.

La estructura del presente trabajo es presentada a continuación:

En el capítulo 1 se presentan una serie de conceptos que permiten describir las carac-
terísticas principales de los robots móviles, la mielina, la rata taiep.

En el capítulo 2 se describen los elementos que conforman el prototipo construido del


robot móvil y se presenta el ensamble final.

En el capítulo 3 se describen conceptos teóricos acerca del modelo cinemático y diná-


mico de un robot móvil de tracción diferencial y su respectivo desarrollo.

En el capítulo 4 se desarrolla una propuesta de algoritmo de control, el análisis sobre


la estabilidad del punto de equilibrio y se presentan simulaciones de la ecuación en lazo
cerrado.
Introducción XVI

En el capítulo 5 se presenta el desarrollo de la etapa de potencia requerida por los


motorreductores, y aplicación móvil elaborada para llevar a cabo el control de la terapia
requerida.

En el capítulo 6 se presentan los resultados experimentales que incluyen gráficas de


trayectorias realizadas, respuestas de robot móvil al ser controlado con la aplicación móvil
y pruebas sobre la locomoción de la rata taiep.

Para finalizar se presenta una sección donde se presentan las conclusiones del trabajo
desarrollado.
Capítulo 1

Marco conceptual

La robótica móvil es un área de la robótica que se encarga del análisis, el diseño, la


construcción y el control de una clase particular de sistemas mecánicos que se desplazan
con un sistema locomotor que permite producir un desplazamiento lineal con respecto al
centro de gravedad del robot móvil.

El desarrollo y crecimiento de la nueva tecnología ha permitido ampliar y mejorar


las tareas que puede realizar los robots móviles (aplicaciones científicas, comerciales, do-
mesticas, industriales, etc.), por lo que es posible adquirir, procesar y controlar sistemas
específicos de las áreas de medicina, fisiología, fisioterapia, entre otras más.

Por otro lado, la secretaria de salud indica que en el ámbito mundial en promedio 2.3
millones de personas padecen esclerosis múltiple de las cuales aproximadamente 20 mil
son mexicanas, por tal motivo, el estudio de esta enfermedad es de gran importancia para
nuestra sociedad.

Es por eso que resulta de gran importancia estudiar y conocer las características que
presenta el mutante de mielina, puesto que se pretende trabajar sobre los padecimientos
que presenta dicho roedor.

Por tal motivo, el presente capitulo tiene la finalidad de mostrar un panorama general
de los conceptos más importantes relacionados los robots con ruedas. Asimismo se exponen
conceptos referentes a la la mielina, la rata taiep, la locomoción.

1
Capítulo 1. Marco conceptual 2

1.1. Robots móviles


Un robot móvil requiere de un mecanismo de locomoción que le permita moverse den-
tro de su entorno. En general, los tres sistemas de locomoción más conocidos son: ruedas
(1.1(a)), patas (1.1(b)) y orugas (1.1(c)) las cuales les confieren caracterśticas y propieda-
des diferentes respecto a la eficiencia energética, dimensiones, cargas útiles y maniobrabi-
lidad [1, 2].

(a) ruedas (b) patas (c) orugas

Figura 1.1: Clasificación de robots de acuerdo al tipo locomoción

El avance de la mecatrónica ha permitido construir robots más livianos y pequeños


aunque también ha permitido superar las fronteras teóricas y construir robots más com-
plejos, es por eso que los robots deben ser capaces de identificar su posición y la de un
posible objeto que se encuentre en su espacio de trabajo por lo que trasladarse desde un
punto A hasta un punto B (ver figura 1.2 ) es una actividad arriesgada para un robot
móvil.

Figura 1.2: Trayectoria de un robot móvil de un punto A a un punto B

En general los robots móviles distribuyen sus sistemas de tracción y dirección sobre
los ejes de sus ruedas de acuerdo a las exigencias de velocidad, maniobrabilidad y ca-
racterísticas del terreno. La precisión y rapidez con que el robot móvil debe alcanzar su
Capítulo 1. Marco conceptual 3

destino, implica tener un sistema de tracción confiable y un sistema de dirección que dé


maniobrabilidad al robot. Esta confiabilidad y maniobrabilidad que debe tener el robot
móvil, determinan las características del sistema de tracción y dirección, no sólo en lo que
respecta a la técnica, sino también al número de ruedas necesarias y al tipo y disposición
de éstas para lograr una estructura mecánica estable [13].

A continuación se presentan las características más significativas de los sistemas de


locomoción con ruedas más comunes en robótica móvil.

1.1.1. Ackerman
Es el utilizado en vehículos de cuatro ruedas convencionales. Este diseño está compuesto
de cuatro ruedas y proporciona una adecuada estabilidad, las ruedas direccionales no son
motrices. Este sistema de locomoción se ilustra en la Fig. (1.3). La rueda delantera interior
gira un ángulo ligeramente superior a la exterior (θ1 > θ0 ) para eliminar el deslizamiento.
Las prolongaciones de los ejes de las ruedas delanteras intersecan en un punto sobre la
prolongación del eje de las ruedas traseras. El lugar de los puntos trazados sobre el suelo
por los centros de los neumáticos son circunferencias concéntricas con centro el eje de
rotación P1 en la figura. Si no se tienen en cuenta las fuerzas centrifugas, los vectores de la
velocidad instantánea son tangentes a estas curvas. El mayor problema de la locomoción
Ackerman es la limitación en la maniobrabilidad [1, 2].

Figura 1.3: Sistema Ackerman


Capítulo 1. Marco conceptual 4

1.1.2. Triciclo clásico


Este sistema de locomoción se ilustra en la Fig. (1.4). La rueda delantera sirve tanto
para la tracción como para el direccionamiento. El Eje trasero con dos ruedas laterales,
es pasivo y sus ruedas se mueven libremente, esta configuración se conoce como delta. La
maniobrabilidad es mayor que en la configuración anterior pero puede presentar problemas
de estabilidad en terrenos difíciles. El centro de gravedad tiende a desplazarse cuando el
vehículo se mueve por una pendiente, causando la pérdida de tracción. La premisa principal
de un triciclo es proporcionar una plataforma estable. El efecto de la base en un triciclo
influye en la maniobrabilidad y distribución de su peso. La base de un triciclo es la longitud
entre el eje de las ruedas traseras y la rueda dentaltera. Una base corta genera un radio
de giro del triciclo muy pequeño, mientras que una base larga hace al radio de giro mas
grande. Adicionalmente, un triciclo con base corta exhibe mayor maniobrabilidad que un
triciclo con una base larga. Debido a su simplicidad, es bastante frecuente en vehículos
robóticos para interiores y exteriores pavimentados.

Figura 1.4: Locomoción de triciclo clásico

1.1.3. Configuración síncrona


En este diseño todas las ruedas (tres o más) son tanto de dirección como de tracción;
las ruedas se encuentran ubicadas de tal forma que siempre apuntan en la misma dirección.
Para cambiar la dirección, el robot gira simultáneamente todas sus ruedas alrededor de
un eje vertical de modo que la dirección del robot cambia, pero su chasis sigue apuntando
en la misma dirección que tenía antes del giro [1]. La transmisión se consigue mediante
coronas de engranes o con correas concéntricas [2]. Esta configuración se muestra en la
Fig. (1.5).
Capítulo 1. Marco conceptual 5

Figura 1.5: Configuración para transmisión síncrona

1.1.4. Direccionamiento diferencial


El punto IRC (Centro instantáneo de rotación, por sus siglas en inglés) sobre el cual
pivotea esta sobre una línea perpendicular que atraviesa el centro de las ruedas (ver Fig.
1.6). El radio llega a ser mínimo cuando el punto del pivote se localiza en el punto medio
entre las dos ruedas. El espacio mínimo para que el robot gire es determinado por la
distancia máxima de ese punto a cualquier otro punto en el robot móvil, normalmente
la esquina delantera. El robot puede moverse en línea recta, girar sobre su mismo eje y
seguir trayectorias. El equilibrio del robot se obtiene mediante una o dos ruedas adicionales
[1]. El direccionamiento principal viene dado por la diferencia de las velocidades (vI y
vD ) de las ruedas laterales. La tracción se consigue también con estas mismas ruedas.
Adicionalmente, existe una o más ruedas para soporte [1, 2]. En la Fig.(1.6) se ilustra el
sistema de locomoción mencionado.

Figura 1.6: Robot móvil en configuración diferencial

Se elige un robot móvil de tracción diferencial para desarrollar los objetivos de este
trabajo por las características mencionadas anteriormente además de que su construcción
es relativamente fácil y se logra una mejor movilidad en terrenos suficientemente duros y
libres de obstáculos, permitiendo conseguir velocidades relativamente altas [2].
Capítulo 1. Marco conceptual 6

1.2. Mielina
Existen tres tipos de células gliales en el sistema nervioso central maduro: astrocitos,
oligodendrocitos y las células microgliales (ver Fig. 1.7)[14].

(a) Los astrocitos le deben su nom- (b) Los oligodendrocitos son (c) Las células microglia-
bre a la forma irregular de sus cuer- células pequeñas que llevan les se encargan de eliminar
pos celulares, perecidos a la forma a cabo la importante tarea los desechos neuronales y
de una estrella. Ayudan a formar un de aislar los axones, forman- de reparar el daño que es-
revestimiento impermeable que evi- do una vaina de mielina que tas presentan después de
ta que sustancias toxicas en la san- envuelve herméticamente sus una lesión o un recambio
gre ingresen al cerebro y también procesos membranosos alre- natural.
aportan nutrientes a las células ner- dedor del axón.
viosas del cerebro y la médula espi-
nal.

Figura 1.7: Variedades de células neurogliales en el sistema nervioso central de los mamí-
feros.

Los astrocitos, que están restringidos al cerebro y a la médula espinal, tienen elabora-
dos procesos locales que les dan a estas células una apariencia de estrella (de ahí el prefijo
“astro”). Una función principal de los astrocitos es mantener, en una variedad de formas,
un entorno químico apropiado para la señalización neuronal [14].

Los oligodendrocitos, que también están restringidos al sistema nervioso central, esta-
blecen una envoltura laminada y rica en lípidos llamada mielina (ver Fig. 1.8) alrededor
de algunos, pero no de todos, los axones. En el sistema nervioso periférico, las células que
elaboran mielina se llaman células de Schwann (ver Fig. 1.9) [15].

Ambas se encargan de producir la mielina que sirve para aislar los axones de las células
nerviosas, las cuales son células pequeñas con relativamente pocos procesos, proporcionan
Capítulo 1. Marco conceptual 7

la mielina lo que da origen a la denominada materia blanca. Ambos tipos llevan a cabo
la tarea importante de aislar los axones, formando una envoltura de mielina al enrollar
herméticamente sus procesos membranosos alrededor del axón en forma de espiral. Los
oligodendrocitos, que se encuentran en el sistema nervioso central, envuelven un promedio
de 15 internodos axónicos cada uno. Por el contrario, las células de Schwann, que se
producen en el sistema nervioso periférico, envuelven un solo internodo de un solo axón
[15].

Figura 1.8: Diagrama de un axón mielinizado, proceso por el cual los oligodendrocitos en el
sistema nervioso central, y células de Schwann en el sistema nervioso periférico, envuelven
al axón en mielina.

Figura 1.9: Diagrama de una célula de Schwann. Estas células producen las vainas de
mielina que aíslan los axones en el sistema nervioso periférico, son colocadas a lo largo de
un solo axón y forman un segmento de vaina de mielina de aproximadamente 1 mm de
longitud.

La mielina tiene efectos importantes sobre la velocidad de transmisión de las señales


eléctricas. En el caso de los nervios periféricos, las fibras nerviosas difieren no solo en la
morfología de sus terminales y en el estímulo que perciben, sino que también en el tamaño
Capítulo 1. Marco conceptual 8

y la velocidad de conducción de sus axones. Estas dos últimas características son muy
importantes desde el punto de vista fisiológico, debido a que el tamaño de las fibras afecta
la velocidad a la que los potenciales de acción se llevan al cerebro (ver tabla 1.1) [15].

Diámetro de la fibra (µm) Velocidad de conducción(m/s)


muy mielinizadas 12 − 20 72 − 120
medianamente mielinizadas 6 − 12 36 − 72
poco mielinizadas 1−6 4 − 36
desmielinizadas 0.2 − 1.5 0.4 − 2.0

Tabla 1.1: Tamaño y velocidad de conducción de fibras aferentes en los nervios periféricos
de acuerdo a su nivel de mielinización.

Las fibras grandes conducen los potenciales de acción más rápidamente debido a que la
resistencia interna al flujo de corriente a lo largo del axón es baja y los nodos de Ranvier
están más espaciados a lo largo de su longitud. La velocidad de conducción de las fibras
mielinizadas grandes es aproximadamente seis veces el diámetro del axón, mientras que
la de las fibras finas mielinizadas es cinco veces el diámetro del axón. Cuando la mielini-
zación a lo largo del axón se ve interrumpida por enfermedad, los potenciales de acción
en diferentes axones del nervio comienzan a conducir a velocidades ligeramente diferentes,
y el nervio pierde su sincronía de conducción normal en respuesta a un único estímulo [15].

Finalmente, las células microgliales se derivan principalmente de células precursoras


hematopoyéticas (aunque algunas pueden derivarse directamente de células precursoras
neuronales). Comparten muchas propiedades con los macrófagos que se encuentran en
otros tejidos, y son principalmente células depuradoras que eliminan los desechos celulares
de los sitios de lesión o el recambio celular normal [14]. Además, la microglía, al igual
que sus homólogos macrófagos, secretan moléculas de señalización, particularmente una
amplia gama de citocinas que también son producidas por las células del sistema inmune,
que pueden modular la inflamación local e influir en la supervivencia o muerte celular [14].

1.2.1. Mutante de mielina taiep


La rata mutante de mielina taiep se obtuvo en 1989, en el Laboratorio de Neurofisilogía
de la Conducta y COntrol Motor del Instituto de Fisiología de la Benemérita Universidad
Autónoma de Puebla como una mutación espontanea neurológica en el proceso para selec-
cionar una rata con una alta frecuencia de bostezo [16]. En la generación F4 del proceso de
Capítulo 1. Marco conceptual 9

entrecruzamiento endogámico (hermanos x hermanas) apareció de manera espontánea el


mutante de mielina denominado taiep [17]. Los animales desarrollan un síndrome neuroló-
gico progresivo caracterizado por un temblor (el cual aparece a la edad de 1 mes), ataxia
(a los 4 meses), episodios de inmovilidad (después de los 6 meses) presentando actividad
cortical similar al sueño con movimientos oculares rápidos [18], convulsiones de tipo au-
diogénico y parálisis de las extremidades posteriores (después del año de edad). Mediante
experimentos de entrecruzamiento se indica que se trata de una mutación autosómica re-
cesiva, la cuál se nombró sub-línea taiep [17].

La rata taiep es un mutante neurológico caracterizado por una disminución de la mie-


linización (hipomielinización) seguido de una desmielinización progresiva del sistema ner-
vioso central [9, 11, 20], pero no se afecta la mielina periférica lo que lo hace un modelo
ideal de esclerosis múltiple progresiva. Estas ratas muestran un síndrome motor progresivo
caracterizado por temblores, ataxia, episodios de inmovilidad, epilepsia y parálisis de los
miembros posteriores, por lo que se acuñó la palabra taiep con el acrónimo de sus síntomas
principales [10, 11, 17].

1.2.2. Enfermedades de la mielina


El estudio de las enfermedades de la mielina en humanos se han basado en estudios
clínicos y epidemiológicos lo que ha permitido su clasificación en cuatro grupos, tanto en
humanos como en modelos animales, y estos son: metabólico-hereditarias, enfermedades
infecciosas o alérgicas, enfermedades de la mielina tóxicas y enfermedades de tipo nutri-
cional.

En el caso específico de la esclerosis múltiple (enfermedad en humanos de base alér-


gico/infecciosa) el paciente desarrolla ataques sucesivos de zonas de desmielinización pro-
ducto de una reacción inflamatoria donde confluyen una gran cantidad de neutrófilos y
polimorfonucleares. La reacción inflamatoria desencadena a su vez la lesión en las celulas
gliales, lo que provoca la pérdida de la mielina cuando son afectados los oligodendrocitos
[19]. Las zonas de desmielinización pueden abarcar cualquier parte del sistema nervioso
central o periférico, pero con frecuencia afectan más a los nervios ópticos, algunas zonas
de la médula espinal y zonas de la corteza cerebral. La esclerosis múltiple tiene diferentes
signos y síntomas, los más frecuentes son: la disminución de la agudeza visual, nistagmus,
disartria, ataxia, temblor, debilidad, parálisis, espasmos, así como disfunción intestinal,
sexual y vesical. En el caso del modelo animal podemos mencionar, la encefalomielitis
alérgica experimental (enfermedad de base alérgico-infecciosa) y la distrofia muscular (en-
Capítulo 1. Marco conceptual 10

fermedad de base metabólico-hereditaria) [21].


Capítulo 2

Diseño y construcción del robot móvil

Como se mencionó anteriormente se elige un robot móvil de tracción diferencial por


las características de movimiento que presenta, además de que su construcción es relati-
vamente sencilla, se elige una estructura redonda para el diseño del chasis que permite
tener obtener un buen equilibrio con el apoyo de las dos ruedas de tracción situadas en un
eje de perpendicular a la dirección del robot, cada una de ellas es actuada mediante un
motorreductor y una rueda de apoyo formando un diseño triangular.

En el aspecto de movilidad, que hace referencia a la habilidad que tiene un robot móvil
para desplazarse o moverse con libertad en su entorno, la restricción básica de esta configu-
ración es satisfacer la condición de no deslizamiento de las ruedas, la cual fue considerada
previamente en el desarrollo de la dinámica.

2.1. Desarrollo del prototipo


Para iniciar con este trabajo se desarrolla el diseño asistido por computadora del robot
móvil, donde se consideró el siguiente material.

Una base circular de plástico de 25 cm. de diámetro y de 0.3cm de espesor como el


chasis del robot.

Un par de llantas DU-BRO Super lite Wheels (ver Fig. 2.1) con las características
que se muestran en la tabla (2.1).

11
Capítulo 2. Diseño y construcción del robot móvil 12

Figura 2.1: Llantas DU-BRO Super Lite Wheels utilizadas para el sistema de tracción

Cat. No. Diámetro Diámetro de eje Peso Ancho


300SL 7.62cm 0.4cm 16.8gr 23cm

Tabla 2.1: Características físicas de las ruedas DU-BRO

Dos motorreductores pololu (131:1) con encoder para el sistema de tracción (Fig.
2.2).

Figura 2.2: Motorreductor Pololu de relación 131:1 con codificador de 64 ciclos por revo-
lución (CPR) para el sistema de tracción.

Se hace está elección ya que en un esquema de control en lazo cerrado se requiere retro-
alimentar la respuesta o salida del motor la cual se compara con un ángulo deseado o
referencia lo que genera una señal de error, esta es procesada por el algoritmo de control
para cumplir con el objetivo de que los motores alcancen el ángulo deseado y el error de
posición tienda a ser cero.
Capítulo 2. Diseño y construcción del robot móvil 13

Para llevar a cabo esta tarea, los motores utilizan encoder de posición para detectar el
comportamiento de su respuesta. Existen dos tipos de encoder, el incremental que genera
de salida un tren de pulsos que proporcional al ángulo de giro del rotor y el absoluto que
genera una palabra digital codificada en formato binario, específicamente el motorreduc-
tor Pololu cuenta con un encoder incremental de cuadratura magnético que consta de una
resistencia magnética colocada sobre el perímetro de un disco magnético. La resistencia es
un transductor que convierte el campo magnético en corriente eléctrica y cuya resistencia
eléctrica varía en función de la intensidad del campo magnético aplicado. El valor de la
resistencia magnética depende de la forma en la que fluye la corriente y el campo magné-
tico (efecto Hall).

Al ser un encoder incremental de cuadratura con dos canales A y B que están fuera de
fase 90 grados, es posible conocer la dirección de rotación o sentido de giro del movimiento,
es decir, indica si el desplazamiento rotacional tiene dirección negativa (en el sentido del
giro de las manecillas del reloj) o positiva (en sentido contrario al giro de las manecillas
del reloj); esto es importante para detectar el signo del error de posición.

El encoder proporciona una resolución de 64 conteos por revolución (CPR) del eje
del motor, que corresponde a 8400 CPR del eje de salida de la caja de engranaje. Otras
especificaciones otorgadas por el fabricante se pueden observar en la tabla (2.2).

Tamaño 37D x 69L mm


Peso 230 g
Diámetro del eje 6 mm
Relación de transmisión 131:1
Velocidad sin carga (6V) 40 rpm
Corriente sin carga (6V) 250 mA
Corriente máxima (6V) 2500 mA
Torque máximo (6V) 250 oz-in
Velocidad sin carga (12V) 80 rpm
Corriente sin carga (12V) 300 mA
Corriente máxima (12V) 5000 mA
Torque máximo (12V) 125 oz-in

Tabla 2.2: Especificaciones generales del motorreductor pololu 131:1.


Capítulo 2. Diseño y construcción del robot móvil 14

1 rueda de castor como soporte (Fig. 2.3).

Figura 2.3: Rueda de castor para el soporte del chasis.

En la Fig. 2.4 se observa una representación general del robot móvil diseñado en SOLID-
WORKS.

Figura 2.4: Representación general del robot móvil diseñado en SOLIDWORKS.


Capítulo 2. Diseño y construcción del robot móvil 15

En la Fig. 2.5 se presenta ensamble del robot móvil.

Figura 2.5: Ensamble del prototipo de robot móvil.

El poder sujetar la extremidad de los roedores no es un tarea sencilla debido a que se


deben consideras muchos aspectos, como lo son la morfología, los movimientos que puede
realizar, evitar dañar la extremidad, entre otros. Por tal motivo se diseñaron distintos
prototipos para poder llevar a cabo esta tarea.

A continuación se muestran los elementos mecánicos que se diseñaron para cumplir


esta tarea.

(a) (b)

Figura 2.6: Primer prototipo mecánico para sujetar las extremidades de los roedores.
Capítulo 2. Diseño y construcción del robot móvil 16

(a) (b)

Figura 2.7: Segundo prototipo mecánico para sujetar las extremidades de los roedores.

Con ayuda de SOLIDWORKS se diseñó un restrictor de movimiento para poder intro-


ducir la mitad del cuerpo del roedor y así poder manipular únicamente las extremidades
de la parte trasera, el cual se muestra en la fig. (2.8).

(a) (b)

Figura 2.8: Restrictor de movimiento para el cuerpo de los roedores.


Capítulo 3

Modelo cinemático y dinámico de un


robot móvil de tracción diferencial

Los modelos geométricos y cinemáticos se emplean tanto para la simulación como pa-
ra el control. Existen herramientas matemáticas que nos permiten modelar la posición y
orientación del robot, se basan en empleo de transformaciones homogéneas (operaciones de
rotación y traslación) entre los sistemas de referencia, lo que permite obtener el modelo
directo donde es posible obtener la posición y orientación del efector final del robot en
función de las variables de articulación u obtener el modelo inverso donde las variables
articulares hacen que la posición y orientación del efector final sea la deseada [1, 2].

Por otra parte, el modelo dinámico se refiere a la derivación de las ecuaciones de movi-
miento del robot, obteniendo las velocidades lineales y angulares, las cuales vienen dadas
por las fuerzas y pares que se aplican a la estructura mecánica y dependen también de las
magnitudes de las masas y de su distribución. Las relaciones involucradas constituyen el
modelo dinámico del robot. La identificación del modelo dinámico de un robot es en gene-
ral difícil lo que complica el desarrollo e implementación de un sistema de control, por tal
motivo, muchos sistemas de control de robot se basan en el modelo cinemático, obtenien-
do resultados aceptables cuando los movimientos del robot son suaves y sin aceleraciones
significativas. Sin embargo, cuando se requiere realizar movimientos rápidos con acelera-
ciones y masas importantes, la consideración del modelo dinámico resulta imprescindible.
El modelo dinámico es muy útil para el diseño mecánico de la estructura, la elección de
actuadores, la determinación de estrategias de control y la simulación por computadora
del movimiento del robot [2, 5]. En este capítulo se desarrollan los modelos previamente
descritos que nos permitirán posteriormente evaluar el desempeño de nuevos algoritmos
de control durante la etapa de simulaciones.

17
Capítulo 3. Modelo cinemático y dinámico de un robot móvil de tracción diferencial 18

3.1. Cinemática
La cinemática es la parte de la física que aborda el problema de la descripción geométri-
ca del movimiento de sistemas mecánicos sin tomar en cuenta las fuerzas que lo producen
[1, 2, 5]. Además del problema puramente geométrico involucrado en el posicionamiento
estático, se consideran las variaciones en el tiempo de las posiciones y orientaciones; es
decir, las velocidades [2].

3.1.1. Cinemática directa


Cinemática directa es una función vectorial que relaciona las coordenadas articulares
q ∈ Rn con las coordenadas cartesianas [x, y, z]T ∈ R3 del robot f R : Rn → Rm , así como
la orientación [θ, φ, ψ]T ∈ R3 , tomando en cuenta las propiedades geométricas del sistema
mecánico del robot.  
x
 
y 
 
z 
  = f R (q ). (3.1)
 
θ
 
φ
 
ψ
En esta definición f R es una función continua en el vector de posiciones o desplazamiento
articular q ∈ Rn , n representa el número de grados de libertad y la dimensión del vector
de posiciones o desplzamioento artuicular, x, y, z ∈ R son las coordenadas cartesianas y
θ, φ, ψ son los ángulos de Euler, que representan la orientación con respecto a un sistema
de referencia fijo, m es la dimensión de la función vectorial f R (q ) = [x, y, z, θ, φ, ψ]T ∈ R6 .
Dependiendo de la aplicación del robot se pueden requerir menos coordenadas de posición
y orientación [1, 22].

3.1.2. Cinemática inversa


La cinemática inversa es un problema no lineal que relaciona las coordenadas articulares
en función de las coordenadas cartesianas. Este problema representa la solución inversa de
la ec. (3.1): dada la posición cartesiana y la orientación final de robot, obtener los ángulos
de las articulaciones [1, 22].
q = f −1
R [x, y, z, θ, φ, ψ], (3.2)

donde f −1
R [x, y, z, θ, φ, ψ] es función inversa de la ec. (3.1).
Capítulo 3. Modelo cinemático y dinámico de un robot móvil de tracción diferencial 19

3.1.3. Cinemática diferencial


La cinemática diferencial directa es la derivada con respecto al tiempo de la cinemática
directa:
" #
d v d
[x, y, z, θ, φ, ψ]T = = f R (q )
dt w dt
(3.3)
∂f R (q )
= q̇ = J(q )q̇ ,
∂q

ésta relaciona la velocidad articular q̇ ∈ Rn con la velocidad lineal v = dtd [x, y, z]T =
[ẋ, ẏ, ż]T ∈ R3 y la velocidad angular ẇ = dtd [θ, φ, ψ]T = [θ̇, φ̇, ψ̇]T ∈ R3 , además el mapeo
es descrito en términos de una matriz J(q ) = ∂f ∂q R (q )
∈ R6×n denominada jacobiano del
robot o jacobiano analítico:
" #
Jv (q )
J(q ) = , (3.4)
Jw (q )

donde Jv (q ) ∈ R3×n relaciona la velocidad articular q̇ ∈ Rn con la velocidad lineal v ∈ R3 ,


mientras que Jw (q ) ∈ R3×n relaciona la velocidad angular w ∈ R3 con la velocidad
articular q̇ ∈ Rn , es decir:
" # " #
v Jv (q )q̇
= J(q )q̇ = . (3.5)
w Jw (q )q̇

El jacobiano del robot representa una importante herramienta en robótica que sirve para
caracterizar a un robot, encontrar configuraciones singulares, analizar redundancia, de-
terminar la cinemática diferencial inversa, así como describir la relación entre la fuerza
aplicada y los pares o torques resultantes. Es indispensable para el análisis y diseño de
algoritmos de control cartesiano [1, 22].

3.1.4. Matrices de rotación


La Fig. 3.1 muestra dos sistemas de referencia cartesianos, asociados a un cuerpo
rígido, representados por Σ0 [x0 , y0 , z0 ] y Σ1 [x1 , y1 , z1 ], ambos sistemas comparten el mismo
origen. El sistema de referencia Σ1 [x1 , y1 , z1 ] mantiene una orientación relativa al sistema
de referencia fijo Σ0 [x0 , y0 , z0 ]. Un vector que va desde el origen común para ambos sistemas
hasta el punto p, puede ser expresado en función de cualquiera de las dos bases de vectores
unitarios de la siguiente forma:
Capítulo 3. Modelo cinemático y dinámico de un robot móvil de tracción diferencial 20

p 0 = p0x i + p0y j + p0z k con respecto al sistema Σ0 . (3.6)

p 1 = p1x i + p1y j + p1z k con respecto al sistema Σ1 . (3.7)

Figura 3.1: Sistema de referecia fijo Σ0 y rotado Σ1

Los vectores p 0 , p 1 representan al mismo punto p, de tal forma que, las ecs. (3.6) y
(3.7) pueden ser relacionadas entre sí, de la siguiente forma:

p 0 = R01 p 1 , (3.8)

donde la matriz R01 ∈ R3×3 es la matriz de transformación de las coordenadas del punto
p del sistema de referencia Σ1 [x1 , y1 , z1 ] hacia las coordenadas del sistema Σ0 [x0 , y0 , z0 ].
En otras palabras, dado un punto p 1 en el sistema Σ1 [x1 , y1 , z1 ], entonces R01 p 1 representa
el mismo vector expresado con respecto al sistema de referencia Σ0 [x0 , y0 , z0 ]. De manera
análoga, la transformación inversa R01 significa la orientación del sistema de referencia
Σ0 [x0 , y0 , z0 ] relativa al sistema de referencia Σ1 [x1 , y1 , z1 ] [22].

3.1.5. Matriz de rotación alrededor del eje z0


Si se considera al sistema de referencia Σ1 [x1 , y1 , z1 ] el cual se encuentra rotado un
ángulo θ alrededor del eje z0 del sistema Σ0 [x0 , y0 , z0 ] como se muestra en la Fig. 3.2, es
posible observar que los ejes z0 y z1 son paralelos. El signo del ángulo θ está dado por
la regla de la mano derecha. Por convención, un ángulo positivo es aquel cuyo sentido de
rotación es contrario al movimiento de las manecillas del reloj [22].
Capítulo 3. Modelo cinemático y dinámico de un robot móvil de tracción diferencial 21

Figura 3.2: Sistema de referecia fijo Σ0 y rotado Σ1

Por lo que la matriz de rotación al rededor del eje z es representada por Rz (θ).
 
cos(θ) − sin(θ) 0
 sin(θ) cos(θ) 0 . (3.9)
 

0 0 1

3.1.6. Cinemática de un robot de tracción diferencial


Para el robot móvil de direccionamiento diferencial, el propósito principal del modelado
cinemático es representar la velocidad del robot en función a las velocidades de las ruedas
conjuntamente a los parámetros geométricos del robot [23]. Un robot móvil con ruedas
es un dispositivo que debe moverse sobre una superficie mediante la acción de ruedas
montadas en él, se asumen las siguientes hipótesis:

El robot móvil se mueve sobre una superficie plana horizontal, es decir la energía
potencial es constante.

Los ejes de referencia son perpendiculares al suelo.

No existen elementos flexibles en la estructura del robot, incluyendo las ruedas.

El contacto entre cada rueda y el suelo se reduce a un solo punto.

No existe deslizamiento.

De acuerdo con las hipótesis anteriores, se aborda el caso bidimensional debido a que el
robot solo se mueve en un plano [1, 2].
Capítulo 3. Modelo cinemático y dinámico de un robot móvil de tracción diferencial 22

Figura 3.3: Sistemas de coordenadas Σ0 [x0 , y0 , z0 ], Σ1 [x1 , y1 , z1 ] y Σ2 [x2 , y2 , z2 ] que per-


miten describir el desplazamiento y la orientación del robot móvil. 2L es la distancia de
separación entre las dos ruedas de tracción, 2R es el diámetro de las ruedas, L1 es la
distancia del centro de masa al eje de rotación de las ruedas y θ es el ángulo que describe
la orientación del móvil.

Con base en la Fig. 3.3, el análisis se inicia fijando un sistema de referencia Σ0 [x0 , y0 , z0 ],
de un forma conveniente. Subsecuentemente, se coloca un sistema de referencia Σ1 [x1 , y1 , z1 ],
el cual nos permite hallar los componentes de traslación y la orientación del robot móvil
respecto al sistema de referencias Σ0 . Es posible determinar la postura del robot en el eje
coordenado inercial Σ0 mediante la siguiente relación:

Σ0 = Rz (θ)Σ1 (3.10)

Para el caso de Σ2 , también es posible definir los componentes del centro de masa del
robot como se observa en la ec. (3.11).:
" # " #
x2 x0 + L1 cos(θ)
= (3.11)
y2 y0 + L1 sin(θ)
Capítulo 3. Modelo cinemático y dinámico de un robot móvil de tracción diferencial 23

Considerando un robot móvil de direccionamiento diferencial no holonómico que se


mueve en un plano horizontal, se puede describir su cinemática diferencial con la ec. 3.12.
   
ẋ v cos(θ)
ẏ  =  v sin(θ)  , (3.12)
   

θ̇ w

donde p = [x0 , y0 ]T representa la posición del robot, θ es la orientación, v y w son estradas


de control de velocidad lineal y angular respectivamente [24], las cuales son expresadas en
las ecs. (3.13) y (3.14).
vD + vI φ̇D + φ̇I
v= =R , (3.13)
2 2

vD − vI φ̇D − φ̇I
w= =R , (3.14)
2L 2L
donde φ̇D y φ̇I son velocidades angulares, R es el radio de las ruedas y 2L es la distancia
de separación entre las dos ruedas de tracción.

3.1.7. Restricciones cinemáticas de un robot de tracción diferen-


cial
Son restricciones sobre las coordenadas de un sistema (independientes de las fuerzas
actuantes), es decir, son condiciones que restringen el movimiento [25]. Las restricciones
pueden ser holónomas, aquellas en las que no intervienen las velocidades, y las restricciones
no holónomas, que dependen de las velocidades, además de no ser integrables, es decir,
que no se deducen por derivación total con respecto al tiempo de una holónoma [2]. Las
restricciones no holonómicas de rodamiento puro y no deslizamiento lateral establecen que
el móvil solo puede moverse en dirección normal al eje de las ruedas [26]. Las restricciones
no holonómicas introducidas a un nivel cinemático en el centro de masa del robot móvil
se representan con la ec. (3.15) [27]
   
ẋc cos(θ) 0 " #
 v
 ẏc  =  sin(θ) 0 (3.15)
  
w
θ̇ 0 1

Estas restricciones no holonómicas definen la velocidad del centro de masa del robot (Σ2 ),
al forzarla a cero y usando la matriz de transformación Rz (θ) hallamos la velocidad del
centro de masa de la siguiente forma:
Capítulo 3. Modelo cinemático y dinámico de un robot móvil de tracción diferencial 24

" # " # " #


ẋ2 cos(θ) − sin(θ) vu
= × (3.16)
ẏ2 sin(θ) cos(θ) vw
Al derivar las ec. (3.11) con respecto al tiempo, obtenemos la siguiente expresión:
" # " #
ẋ2 ẋ0 + L1 sin(θ)θ̇
= (3.17)
ẏ2 ẏ0 + L1 cos(θ)θ̇

Al igualar los términos de y de las ecs. (3.16) y (3.17) se demuestra que el robot móvil sólo
se desplaza con movimientos curvos (hacia adelante y hacia atrás) pero no lateralmente.
Se aplican las propiedades de matrices de rotación y las reglas de rotación para determinar
la orientación del sistema de referencia Σ1 con respecto a Σ2 [22], con lo que se obtiene
ẏ1 = vw −L1 θ̇ y, al igualarla con cero se demuestra que en ausencia de deslizamiento lateral
tenemos:
vw = L1 θ̇. (3.18)

3.2. Dinámica
El modelo dinámico de un robot permite explicar todos los fenómenos físicos que se
encuentran en su estructura mecánica, tales como efectos inerciales, fuerzas centrípetas
y de Coriolis, par gravitacional y fricción, lo cuales son fenómenos físicos intrínsecos o
propios de la naturaleza dinámica del robot [1]. Consiste en encontrar el mapeo entre
las fuerzas ejercidas sobre su estructura, y las posiciones, velocidades y aceleraciones [5].
La utilidad del modelo dinámico es fundamental para propósitos de simulación, diseño y
construcción del sistema mecánico, así como el análisis y diseño de algoritmos de control
[1].

3.2.1. Formulación de Newton-Euler


La formulación de Newton-Euler permite calcular el modelo dinámico de un robot
sin derivar las expresiones explícitas de los términos de masas e inercias, de las fuerzas
centrípetas y de Coriolis y de los pares gravitacionales.
Capítulo 3. Modelo cinemático y dinámico de un robot móvil de tracción diferencial 25

3.2.2. Ecuaciones básicas


Considérese un cuerpo rígido de masa total m cuyo centro de masas tiene una acele-
ración vc′ . De acuerdo a la ecuación de Newton, la fuerza que actúa en el centro de masas
viene dada por:
F = mvc′ (3.19)

Por otra parte, si un cuerpo rígido rota con velocidad angular w y la aceleración angular
w’ , el momento angular que actúa en el cuerpo viene dado por la ecuación de Euler:

N = Iω ′ + ω × Iω (3.20)

siendo I el tensor de inercias del cuerpo en sistema {C} cuyo origen está en el centro
de masas. Una vez calculada la aceleración del centro de masas, pueden aplicarse las
ecuaciones de Newton-Euler para determinar la fuerza y el par que actuarán en el centro
de masa de cada sistema de referencia [2]:

Fi = mvc′ i (3.21)

N = Iωi′ + ωi × Iωi (3.22)


Capítulo 3. Modelo cinemático y dinámico de un robot móvil de tracción diferencial 26

3.2.3. Dinámica de un robot de tracción diferencial


Para llevar a cabo el modelo dinámico por el método de Newton-Euler es necesario
emplear un diagrama de cuerpo libre del sistema (ver Fig. 3.4) que permita analizar las
fuerzas que actúan sobre el vehículo [23].

Figura 3.4: Diagrama de cuerpo libre del robot móvil de direccionamiento diferencial. FlI y
FlD son las fuerzas longitudinales, FoI y FoD son las fuerzas laterales del robot, vl y vo son
las velocidades, al y ao son las aceleraciones del centro de masa del robot, respectivamente.

Asumiendo que el robot es un cuerpo rígido, usamos coordenadas polares para repre-
sentar la posición del centro de masa del móvil con respecto a Σ0 , la cual es definida como
x0 = r cos(θ) e iy0 = r sin(θ) de acuerdo a la Fig. (3.4), por lo tanto:

r̂ = r(cos(θ) + i sin(θ)) = reiθ (3.23)

Diferenciando la ec. (3.23) con respecto al tiempo obtenemos la velocidad y la aceleración


del robot móvil, las cuales podemos observar en las ecs. 3.24 y 3.25 respectivamente.

r̂˙ = ṙeiθ + irθ̇eiθ = ṙeiθ + rθ̇ei(θ+π/2) (3.24)

r̂¨ = r̈eiθ + 2iṙθ̇eiθ + irθ̈eiθ − rθ̇2 eiθ = (r̈ − rθ̇2 )eiθ + (2ṙθ̇ + rθ̈)ei(θ+π/2) (3.25)
Capítulo 3. Modelo cinemático y dinámico de un robot móvil de tracción diferencial 27

Con la ec. (3.24) se definen las velocidades y con la ec. (3.25) se definen las aceleraciones que
se observan en el diagrama de cuerpo libre de la Fig. 3.4, dichas expresiones se muestran
a continuación.
vl = ṙ ⇒ v̇l = r̈, (3.26)

vo = rθ̇ ⇒ v̇o = ṙθ̇ + rθ̈, (3.27)

al = r̈ − rθ̇2 ⇒ al = v̇l − vo θ, (3.28)

ao = 2ṙθ̇ − rθ̈ ⇒ ao = v̇o + vl θ̇. (3.29)

Si expresamos la segunda ley de movimiento de Newton para el sistema de referencia Σ0 ,


es posible encontrar la relación entre torques, fuerzas y aceleraciones [23]. Considerando
M como la masa total (llantas, cuerpo y actuadores) e I = Ic + M L21 como la inercia con
respecto al centro de masa del robot móvil aplicando el teorema de ejes paralelos [28], se
define la dinámica con las ecs. (3.30)-(3.32).

FlI + FlD = M al , (3.30)

FoI − FoD = M ao , (3.31)

I θ̈ = (FlI − FlD )L + (FoI − FoD )L1 . (3.32)

Las ecs. (3.30)-(3.32) representan los movimientos de translación y rotación que son ob-
tenidas de las ecuaciones de torque neto [28]. Sustituyendo las ecs. (3.28) y (3.29) en las
ecs. (3.30) y (3.32), respectivamente, obtenemos las ecs. (3.33)-(3.35).

FlI + FlD = M (v̇l − vo θ), (3.33)

FoI − FoD = M (v̇l − vo θ), (3.34)

L L1
θ̈ = (FlI − FlD ) + (FoI − FoD ) . (3.35)
I I
Capítulo 3. Modelo cinemático y dinámico de un robot móvil de tracción diferencial 28

Al reescribir las ecs. (3.33)-(3.35) se obtienen las siguientes expresiones:

FlI + FlD
v̇l = + vo θ̇, (3.36)
M

FoI − FoD
v̇o = − vl θ̇ (3.37)
M

L L1
θ̈ = 2
(FlI − FlD ) + (FoI − FoD ) (3.38)
I c + M L1 Ic + M L21
Al sustituir la ec. (3.18) que hace referencia a las restricciones de movimiento en las ecs.
(3.36)-(3.38), se obtienen las expresiones que se muestran a continuación:

FlI + FlD
v̇l = + L1 θ̇2 . (3.39)
M

L M L1 v1 θ̇
θ̈ = 2
(FlI − FlD ) + . (3.40)
I c + M L1 Ic + M L21
Se asocia el radio de las ruedas en las ecs. (3.39) y (3.40) como se observa a continuación:

R(M v̇l − M L1 θ̇2 ) = (FlI + FlD )R (3.41)

R((Ic + M L21 )θ̈ − M L1 v1 θ̇) = L(FlI − FlD )R. (3.42)

Las ecuaciones anteriores permiten hallar la relación con el torque de las ruedas, obteniendo
las siguientes ecuaciones.

1
M v̇l − M L1 θ̇2 = (τI + τD ) (3.43)
R

L
(Ic + M L21 )θ̈ − M L1 vl θ̇ =
(τI − τD ). (3.44)
R
Las ecs. (3.43) y (3.44) se puede expresar de forma matricial como se observa en la ec.
(3.45) que representa las ecuaciones generales de la dinámica.
" #" # " #" # " #" #
M 0 v̇l 0 −M L1 θ̇ vl 1 1 1 τI
+ = (3.45)
0 Ic + M L21 θ̈ M L1 θ̇ 0 θ̇ R L −L τD
Capítulo 4

Control

El objetivo de control de posición se refiere a encontrar un ley de control τ que nos


proporcione los pares aplicados o torques a cada una de las articulaciones del robot, tal
que la posición actual del robot q (t) y su velocidad articular de movimiento q̇ (t) tiendan
asintóticamente hacia la posición deseada q d y velocidad cero, respectivamente; sin im-
portar las condiciones iniciales. En otras palabras, como el tiempo t evoluciona al infinito
t → ∞+ se debe satisfacer la convergencia de [29]:
" # " #
q (t) q
lı́m = d (4.1)
t→∞ q̇ (t) 0

4.1. Propuesta de estructura de control


Para comenzar, se considera la siguiente estructura de control:
" # " # " cosh(q̃ ) sinh(q̃ ) # " # " cosh(q̇ ) sinh(q̇ ) #
x x x x
τD kpx 0 2
1+cosh (q̃x ) k vx 0 1+cosh2 (q̇x )
= cosh(q̃y ) sinh(q̃y ) − cosh(q̇y ) sinh(q̇y ) , (4.2)
τI 0 kpy 1+cosh2 (q̃y )
0 kvy 1+cosh2 (q̇y )

donde la ganancia proporcional kp ∈ R2×2 y la ganancia derivativa kv ∈ R2×2 son matrices


diagonales y q̃ ∈ R2×1 es el error de posición q d − q . Del mismo modo, se considera la
estructura general de la dinámica del robot móvil dada por la ec. (4.3).

τ = M (q )q̈ + C(q , q̇ )q̇ + B q̇ , (4.3)

donde M (q ) ∈ R2×2 es la matriz de masas e inercias, q̈ ∈ R2×1 es el vector de aceleraciones,


C(q , q̇ ) ∈ R2×2 es la matriz de Coriolis, B ∈ R2×2 es la matriz diagonal de coeficientes de
fricción viscosa y q̇ ∈ R2×1 es el vector de velocidades.

29
Capítulo 4. Control 30

Se genera un punto de equilibrio estable en el sentido de Lyapunov, la estabilidad del


punto de equilibrio se demuestra con el teorema de LaSalle [30] al igualar la forma general
de la ec. (4.2) con la ec. (4.3).

cosh(q̃) sinh(q̃) cosh(q̇) sinh(q̇)


τ = M (q )q̈ + C(q , q̇ )q̇ + B q̇ − kp 2 + kv (4.4)
1 + cosh (q̃) 1 + cosh2 (q̇)

Es posible expresar la ec. (4.4) en variables de estado para definir la ecuación de lazo
cerrado como se observa en la ec. (4.5).
" # " #
d q̃ − q̇
= h i (4.5)
dt q̇ M −1 (q ) kp cosh(q̃) sinh(q̃)
1+cosh2 (q̃)
− k cosh(q̇) sinh(q̇)
v 1+cosh2 (q̇) − C(q , q̇ ) q̇ − B q̇

Para demostrar que el punto de equilibrio de la ecuación de lazo cerrado es estable, con-
sideramos la siguiente función candidata de Lyapunov:
q T q 
1 2 2
V (q̇ , q̃ ) = q̇ T M (q )q̇ + ln(1 + cosh (q̃ )) kp ln(1 + cosh (q̃ )) , (4.6)
2

donde V (q̇ , q̃ ) es definida positiva ya que el primer término es positivo debido a que en
la energía cinética la matriz M (q ) es definida positiva [1] y el segundo término que es la
energía potencial artificial con kp , es definida positiva por diseño. Al aplicar la derivada
temporal a la ec. (4.6) se obtiene la ec. (4.7).

1 sinh(q̃) cosh(q̃)
V̇ (q̇ , q̃ ) = q̇ T M (q )q̈ + q̇ T Ṁ (q )q̇ − kp q̇ (4.7)
2 1 + cosh2 (q̃)

De la ec. (4.5) retomamos la aceleración q̈ la cual es sustituida en la ec. (4.7), obteniendo


la ec. (4.8).

sinh(q̃) cosh(q̃) sinh(q̃) cosh(q̃)


V̇ (q̇ , q̃ ) =q̇ T kp 2 − 2 kp q̇ − q̇ T C(q , q̇ )q̇
1 + cosh (q̃) 1 + cosh (q̃)
(4.8)
1 sinh(q̇) cosh(q̇)
+ q̇ T Ṁ (q )q̇ − q̇ T kv 2 − q̇ T B q̇
2 1 + cosh (q̇)

En la ec. (4.8) el primer término se cancela con el segundo, el tercero se cancela con el
cuarto al aplicar la propiedad de antisimetría [1], resultando la ec. (4.9).

sinh(q̇) cosh(q̇)
V̇ (q̇ , q̃ ) = −q̇ T kv 2 − q̇ T B q̇ ≤ 0. (4.9)
1 + cosh (q̇)
Capítulo 4. Control 31

Por lo que queda demostrada la estabilidad global del punto de equilibrio en la ecuación
de lazo cerrado.

4.2. Simulaciones
Un simulador se caracteriza por reproducir fielmente todos los fenómenos físicos de un
sistema mecatrónico, por lo tanto desarrollar un proceso de simulación es una etapa no
trivial ya que involucra aspectos tales como seleccionar el método numérico más adecuado
y las finalidades del problema a resolver. Para esta situación es importante la identifica-
ción paramétrica, la caracterización de sensores y servomotores, la estimación de señales
usando la posición por ejemplo, la velocidad y aceleración de movimiento.

También es importante seleccionar el método de integración más adecuado de tal forma


que no consuma muchos recursos computacionales y que tenga la exactitud adecuada en la
solución numérica para que esta sea confiable para su correcta interpretación de resultados.

4.2.1. Ecuación en lazo cerrado (estructura de control propuesta


y dinámica en conjunto)
A continuación se muestran diagramas a bloques donde se representa el modelo diná-
mico del robot móvil, el controlador propuesto y la ecuación en lazo cerrado.

Figura 4.1: Diagrama a bloques del modelo dinámico.


Capítulo 4. Control 32

Figura 4.2: Diagrama a bloques de la propuesta de algoritmo de control.

Figura 4.3: Diagrama a bloques de la ecuación en lazo cerrado (Dinámica del robot móvil
y el controlador propuesto).

Para esta etapa se lleva a cabo la simulación de modelo dinámico previamente desa-
rrollado en conjunto con la propuesta de algoritmo de control, lo que nos permite observar
el comportamiento del robot móvil al realizar una trayectoria. De igual forma, se simula
la dinámica del robot móvil en conjunto con el algoritmo de control tangente hiperbólico
y PD, con esto es posible hacer una comparación y definir si el algoritmo de control que
se diseñó presenta un mejor desempeño y robustez.
Capítulo 4. Control 33

Para llevar a cabo el proceso simulación se utiliza el software MATLAB del cual se
aplica la función ode45, el cual utiliza el método de Runge-Kutta de cuarto y quinto orden
para la integración numérica de ecuaciones diferenciales de primer orden. Dicho método
se basa en aproximar la solución a través de la serie de Taylor con las primeras cuatro y
cinco derivadas, es decir, a través de cuatro y cinco líneas tangentes.

Se desarrolló un programa principal donde se implementa el método de ODE45 con el


cual se permite obtener los valores de torque requeridos por cada rueda para realizar una
trayectoria deseada, también se obtiene los vectores de error de posición que se genera
durante el control y se obtienen los valores de la cinemática diferencial del robot móvil,
los cuales son integrados posteriormente con el método trapezoidal y el método de Euler
y encontrar los valores de la cinemática directa. En la parte final de esta segmento de
programa se grafican los valores obtenidos con método de ODE45 descrito anteriormente
y los valores de la cinemática directa para graficar la posición final del centro de masa del
robot móvil.

Aunado a este código se programan tres funciones más que trabajan a la par con el
programa principal.

El primero es la función “controlador_movil” que permite obtener los valores de error


de posición y los valores de torque. Es esta sección se colocan las posiciones deseadas y
se implementan los controladores descritos anteriormente (propuesta de controlador, tan-
gente hiperbólico y PD). La segunda función llamada “control_movil” permite estimar
las velocidades y aceleraciones con ayuda de la función “controlador_movil” descrita en
el punto anterior y con la ecuación de lazo cerrado que también es implementada en esta
sección. La última función, “cinematica_movil” permite calcular los valores de la cinemá-
tica diferencial que son integrados en el programa principal para conocer los valores de la
cinemática directa al realizar una trayectoria.

Todos los segmentos de programa descritos anteriormente se presentan en el Apéndice


C.2.

A continuación se muestran las gráficas de los resultados obtenidos de las simulaciones


realizadas.
Capítulo 4. Control 34

En las figs. (4.4-4.6) se observan las respuestas de torque de cada rueda, los errores de
posición y la posición final del centro de masa del robot móvil, al aplicar la propuesta de
controlador.

(a) Error de posición en el eje X. (b) Error de posición en el eje Y.

Figura 4.4: Error de posición de las ruedas del robot móvil al aplicar el controlador pro-
puesto.

(a) Torque requerido por la rueda izquierda. (b) Torque requerido por la rueda derecha.

Figura 4.5: Niveles de torques requeridos para llegar a la posición deseada.


Capítulo 4. Control 35

Figura 4.6: Posición final del centro de masa del robot móvil al aplicar la propuesta de
controlador.

En las figs. (4.7-4.9) se observan las respuestas de torque de cada rueda, los errores
de posición y la posición final del centro de masa del robot móvil, al aplicar controlador
tangente hiperbólico.

(a) Error de posición en el eje X. (b) Error de posición en el eje Y.

Figura 4.7: Error de posición del centro de masa del robot móvil al aplicar el controlador
tangente hiperbólico.
Capítulo 4. Control 36

(a) Torque requerido por la rueda izquierda. (b) Torque requerido por la rueda derecha.

Figura 4.8: Niveles de torques requeridos para llegar a la posición deseada.

Figura 4.9: Posición final del centro de masa del robot móvil al aplicar el controlador
tangente hiperbólico.
Capítulo 4. Control 37

En las figs. (4.10-4.12) se observan las respuestas de torque de cada rueda, los errores
de posición y la posición final del centro de masa del robot móvil, al aplicar controlador
PD.

(a) Error de posición en el eje X. (b) Error de posición en el eje Y.

Figura 4.10: Error de posición del centro de masa del robot móvil al aplicar el controlador
PD.

(a) Torque requerido por la rueda izquierda. (b) Torque requerido por la rueda derecha.

Figura 4.11: Niveles de par requeridos para llegar a la posición deseada.


Capítulo 4. Control 38

Figura 4.12: Posición final del centro de masa del robot móvil al aplicar el controlador PD.

Como se aprecia en las gráficas anteriores, el comportamiento del controlador propues-


to y el del controlador tangente hiperbólico son muy parecidas comparando los estados
transitorios de las gráficas de torques (ver Figs. 4.5 y 4.8) y de los errores de posición (ver
Figs. 4.4 y 4.7), también son parecidos en los niveles máximos de torques ya que la natura-
leza de ambos controladores permite acotar dichos niveles. Y aunque los tres controladores
muestran una buena respuesta al llegar a la posición deseada (ver Figs. 4.6, 4.9 y 4.12),
la diferencia se aprecia en el nivel de toque máximo que presenta el controlador PD (ver
Fig. 4.11), debido a que este requiere de niveles de energía más grades para cumplir con
la tarea de llegar a la posición deseada, ya que al ser un controlador no acotado le exige
a los motores trabajar en la zona de saturación un mayor tiempo, lo que puede afectar su
tiempo de vida.

Por lo tanto, se comprueba que a nivel simulación el controlador diseñado presenta un


buen desempeño.
Capítulo 5

Instrumentación electrónica

La instrumentación electrónica hace referencia al diseño, desarrollo y análisis de una


clase de sistemas electrónicos para acondicionar o acoplar señales de sensores analógicos
o digitales, así como el procesamiento de información a través de microprocesadores para
automatizar diversos procesos [29].

5.1. Hardware
En la Fig. 5.1 se presenta un diagrama a bloques del hardware con el que cuenta el
robot móvil.

Figura 5.1: Diagrama a bloques del hardware del robot móvil.

39
Capítulo 5. Instrumentación electrónica 40

5.1.1. Tarjeta de control


Para llevar a cabo le programación del control se hace uso de una tarjeta Mega 2560
que está basada en un microcontrolador ATmega2560 con las siguientes características:

Memoria flash 256 KB


EEPROM 4 KB
SRAM 8 KB
Velocidad de reloj 16 MHz
Pines E/S (Propósito general) 86
Puertos seriales 4
Canales PWM (16 bits de resolución) 12
Canales ADC 16
Voltaje máximo de operación 6V

Tabla 5.1: Características generales del microcontrolador ATmega2560.

Por lo que la tarjeta Mega 2560 cuenta las siguientes características:

Tamaño 101.52 x 53.3 mm


Peso 37 g
Voltaje de operación 5V
Pines digitales E/S 54 (15 proporcionan salida de PWM)
Pines de entrada analóogica 16
Corriente DC por Pin E/S 20 mA

Tabla 5.2: Especificaciones técnicas de la tarjeta Mega 2560.

5.1.2. Bluetooth
Bluetooth es un protocolo de comunicación de datos de forma inalámbrica, diseñado
para dispositivos de bajo consumo, que requieren corto alcance de emisión a bajo costo.
Permite la comunicación entre diferentes dispositivos mediante un enlace por radio fre-
cuencia en la banda de 2.4 GHz.

A grandes rasgos, el hardware de un sistema Bluetooth está formado por dos partes:

Dispositivo de radio para modular y transmitir la señal de radio-control.


Capítulo 5. Instrumentación electrónica 41

Un controlador compuesto por un procesador de señales digitales DSP por sus si-
glas en inglés, un CPU para procesar las instrucciones Bluetooth con el dispositivo
anfitrión e interfaces del dispositivo anfitrión. Esto le permite enviar y recibir datos,
paginación y peticiones, establecimiento de conexiones y tipos de enlace, transferen-
cia de mensajes o paquetes de datos.

El Bluetooth se utiliza principalmente en equipos digitales como computadoras teléfonos,


impresoras, etc. Es de gran utilidad cuando hay dos o más dispositivos en un área reducida
sin necesidad de una alta tasa de velocidad de transmisión de datos.

Específicamente en este trabajo se hace uso de un módulo Bluetooth HC-06 que dispone
de 4 pines, dos de alimentación (Vcc y GND) y dos de comunicación (Rx y Tx), solo puede
actuar como esclavo, es decir, solo puede conectarse a un módulo maestro y a ningún otro,
por lo tanto dispone de menos instrucciones a las que atiende, comparado con el módulo
HC-05 que puede actuar también como maestro permitiéndole conectarse a varios módulos
esclavos.

(a) Módulo HC-06 (b) Módulo HC-05

Figura 5.2: Módulos de protocolo de comunicación Bluetooth.

5.1.3. Etapa de potencia


El primer paso para la diseñar la etapa de potencia fue realizar la caracterización de los
motores con ayuda de un freno prony (Ver Fig. 5.3), una polea de 1 pulgada de diámetro,
un dinamómetro y una fuente de voltaje. Esta tarea nos permite conocer los parámetros
reales de nuestros motores (torques, corrientes, eficiencia).

Se tomó la lectura de la corriente y la fuerza en kilogramos por cada nivel de voltaje


aplicado. Posteriormente, se calcula la potencia eléctrica con la siguiente ecuación:

potencia(W ) = corriente(I) ∗ voltaje(V ) (5.1)


Capítulo 5. Instrumentación electrónica 42

A continuación, se calcula el par o torque en relación al valor de fuerza medido (kg), el


radio de la polea (0.0127m) y la gravedad (9.8m/s).

τ =r∗F ∗g (5.2)

Por último, se calcula el índice de eficiencia.

par(N m)
ef iciencia(η) = (5.3)
potencia(W )

Figura 5.3: Freno prony para la caracterización de motores.

En las tablas 5.3 y 5.4 se presentan los resultados obtenidos al realizar todo el proceso
de caracterización de los motores izquierdo y derecho respectivamente.
Capítulo 5. Instrumentación electrónica 43

volteje (V) corriente (A) Potencia (W) Fuerza (kg) Par o torque (Nm) Eficiencia (tau / W)

0 0 0 0 0 0

0.5 0.31 0.155 1 0.12446 0.802967742

1 0.56 0.56 2.45 0.304927 0.5445125

1.5 0.84 1.26 4.47 0.5563362 0.441536667

2 1.12 2.24 5.57 0.6932422 0.309483125

2.5 1.41 3.525 6.75 0.840105 0.23832766

3 1.68 5.04 8.39 1.0442194 0.207186389

3.5 1.96 6.86 9.25 1.151255 0.167821429

4 2.36 9.44 10.69 1.3304774 0.140940403

4.5 2.5 11.25 11.74 1.4611604 0.129880924

5 2.73 13.65 13.63 1.6963898 0.124277641

5.5 2.98 16.39 14.72 1.8320512 0.111778597

6 3.26 19.56 15.96 1.9863816 0.101553252

6.5 3.45 22.425 16.37 2.0374102 0.090854412

7 3.68 25.76 18.07 2.2489922 0.087305598

7.5 3.93 29.475 19.49 2.4257254 0.082297723

8 4.21 33.68 21.24 2.6435304 0.07848962

8.5 4.43 37.655 22.32 2.7779472 0.073773661

9 4.55 40.95 22.59 2.8115514 0.068658154

9.5 4.79 45.505 23.79 2.9609034 0.06506765

10 4.94 49.4 24.19 3.0106874 0.060945089

10.5 5.08 53.34 25.14 3.1289244 0.05866

11 5.27 57.97 26.11 3.2496506 0.056057454

11.5 5.38 61.87 26.16 3.2558736 0.052624432

12 5.69 68.28 27.46 3.4176716 0.050053773

Tabla 5.3: Resultados obtenidos de la caracterización del motor izquierdo.


Capítulo 5. Instrumentación electrónica 44

volteje (V) corriente (A) Potencia (W) Fuerza (kg) Par o torque (Nm) Eficiencia (tau / W)

0 0 0 0 0 0

0.5 0.31 0.155 1 0.12446 0.802967742

1 0.56 0.56 2.45 0.304927 0.5445125

1.5 0.84 1.26 4.47 0.5563362 0.441536667

2 1.12 2.24 5.57 0.6932422 0.309483125

2.5 1.41 3.525 6.75 0.840105 0.23832766

3 1.68 5.04 8.39 1.0442194 0.207186389

3.5 1.96 6.86 9.25 1.151255 0.167821429

4 2.36 9.44 10.69 1.3304774 0.140940403

4.5 2.5 11.25 11.74 1.4611604 0.129880924

5 2.73 13.65 13.63 1.6963898 0.124277641

5.5 2.98 16.39 14.72 1.8320512 0.111778597

6 3.26 19.56 15.96 1.9863816 0.101553252

6.5 3.45 22.425 16.37 2.0374102 0.090854412

7 3.68 25.76 18.07 2.2489922 0.087305598

7.5 3.93 29.475 19.49 2.4257254 0.082297723

8 4.21 33.68 21.24 2.6435304 0.07848962

8.5 4.43 37.655 22.32 2.7779472 0.073773661

9 4.55 40.95 22.59 2.8115514 0.068658154

9.5 4.79 45.505 23.79 2.9609034 0.06506765

10 4.94 49.4 24.19 3.0106874 0.060945089

10.5 5.08 53.34 25.14 3.1289244 0.05866

11 5.27 57.97 26.11 3.2496506 0.056057454

11.5 5.38 61.87 26.16 3.2558736 0.052624432

12 5.69 68.28 27.46 3.4176716 0.050053773

Tabla 5.4: Resultados obtenidos de la caracterización del motor derecho.


Capítulo 5. Instrumentación electrónica 45

Para la etapa de potencia se implementó un circuito con transistores en configuración


Darlington que realizara la función de switch (Puente H). Ya que el motor tiene una
corriente máxima de 5 A, se elaboraron los cálculos del Darlington con una corriente
máxima de 6 A.

Figura 5.4: Diagrama esquemático del puente H con transistores en configuración Darling-
ton y optoacoplador.

Los primeros transistores de potencia seleccionados fueron el TIP41C y el TIP42C


(Dispositivos NPN-PNP complementarios) ya que estos son capaces de drenar 6 A. Cuen-
tan con una beta en un rango de 20 a 750, por lo tanto, tomamos una beta forzada de
10 y podemos calcular la corriente que se necesita suministrar en la base para lograr la
saturación del transistor de la siguiente forma:

Ic 6A
Ib = = = 600mA (5.4)
βf 10

Los siguientes transistores seleccionados fueron el 2N2222A y PN2907 (Dispositivos NPN-


PNP complementarios), estos son capaces de drenar 600 mA. Cuentan con una beta en un
rango de 100 a 300, por lo tanto, tomamos una beta forzada de 50 y nuevamente podemos
calcular la corriente que se necesita suministrar en la base para lograr la saturación del
Capítulo 5. Instrumentación electrónica 46

transistor.
Ic 600mA
Ib = = = 12mA (5.5)
βf 50
De esta forma sabemos que se necesita una corriente de 12 mA para saturar el arreglo de
transistores (Darlington).

Para el diseño del puente H se consideró un optoacoplador 4N25 que cumple con la
función de conmutar los estados de activación del puente H pero también permite aislar
la etapa de potencia de la etapa de control en caso de que se presenten corrientes o vol-
tajes excesivos. El optoacoplador con salida a transistor consiste en un diodo emisor de
infrarrojos acoplado ópticamente a un detector de un fototransistor.

Se hace énfasis en lo descrito anteriormente debido a que el fototransistor con el que


cuenta el optoaislador 4N25 debe ser considerado en el cálculo de las resistencias que per-
miten suministrar la corriente de activación a la configuración Darlington.

Por lo tanto, para calcular el valor de la resistencia 2 se considera la caída de potencial


(Voltaje base-emisor) de los transistores Q5, Q3, Q2 y Q8, la caída de potencial (voltaje
colector-emisor) del fototransistor de OK3 y un voltaje de alimentación (VDD ) de 7.4 V
como se observa a continuación:

VDD − 4 ∗ (0.7V ) − 0.2V 7.4V − 3V


Rb = = = 366Ω (5.6)
12mA 12mA

Para la resistencia 3 se realiza el mismo procedimiento, pero debido a que son los mismos
transistores que en el caso anterior, se puede hacer uso de una resistencia del mismo valor.

Es muy importante asegurar que nunca se activen al mismo tiempo los dos sentidos
de giro ya que se generaría un corto circuito, por tal motivo se implementa un circuito
de protección con base en compuertas NOT (74LS04) y compuertas AND (74ALS11) (ver
fig. 5.5).
Capítulo 5. Instrumentación electrónica 47

Figura 5.5: Diagrama esquemático del circuito de protección para el puente H con com-
puertas lógicas.

Para suministrar el voltaje a los motores, a la tarjeta de control y al resto del Hardware
se elige una batería de polímero de litio (LI-PO por sus siglas en inglés) Turnigy 1000mAh
2S 7.4 V (Ver Fig. 5.6). Esto debido a las ventajas que ofrecen por el tamaño, el peso y
las características eléctricas (ver tabla 5.5) con las que cuenta.

Figura 5.6: Batería LI-PO Turnigy 1000 mAh 2S 7.4 V.

Capacidad 1000 mAh


Voltaje 7.4 V
Descarga 20-30 C
Peso 60 g
Dimensiones 75x35x12 mm

Tabla 5.5: Especificaciones de la Batería LI-PO Turnigy 1000 mAh 2S 7.4 V.

Debido a que la batería es capaz de suministrar 7.4 volts, se requiere de un regulador de


voltaje que permita proveer únicamente 5 volts a la tarjeta control, al circuito de protección
Capítulo 5. Instrumentación electrónica 48

y al módulo Bluetooth. Para ello se utiliza el dispositivo L7805; es un regulador positivo


de tres terminales, emplea una limitación de corriente interno y apagado térmico. Las
características eléctricas se muestran en la tabla 5.6 y el diagrama de conexión eléctrica
en la Fig. 5.7.

Voltaje de entrada 8-20v


Voltaje de salida 4.65-5.35 V
Corriente de salida 0.5 mA - 1 A

Tabla 5.6: Especificaciones eléctricas del regulador de voltaje L7805.

Figura 5.7: Diagrama de conexión del regulador de voltaje L7805.

5.2. Firmware
5.2.1. Aplicación móvil
Para llevar a cabo el control de la fisioterapia que se le aplica a la rata taiep, se desa-
rrolló una aplicación móvil en la plataforma de MIT App Inventor que permite desarrollar
aplicaciones dedicadas al sistema operativo Android. Es herramienta es fácil de usar al
estar basada en diseño y edición de bloques, lo que permite generar aplicaciones en menor
tiempo.

La aplicación se desarrolló para que el usuario puede configurar las características de


la terapia que se va a aplicar, incluyendo la distancia de desplazamiento lineal que el robot
móvil debe realizara para que la extremidad del roedor emule le movimiento de flexión y
extensión. El usuario puede elegir el nivel de energía (torque o par) con la que desea que
esta terapia se realice y también se puede elegir el número de repeticiones del movimiento.

La aplicación móvil cuenta con la sección de emparejamiento del Bluetooth del celular
con el módulo HC-06, contando con los botones de “CONECTAR” y “DESCONECTAR”.
Capítulo 5. Instrumentación electrónica 49

Posteriormente, se observa la sección de configuración de parámetros de la terapia,


donde es posible agregar los datos previamente descritos (número de repeticiones, nivel de
energía y magnitud de desplazamiento). Estos parámetros son enviados al microcontrola-
dor para su procesamiento mediante el botón “Cargar parametros”.

Finalmente se observan los botones de “Iniciar rutina” y “Detener ruina” que le permiten
al usuario comenzar o detener la rutina en el momento que lo requiera. Los elementos
descritos anteriormente se pueden observar en la Fig. 5.8.

Figura 5.8: Representación de la aplicación móvil para el control de la fisioterapia.

“CONECTAR” y “DESCONECTAR” Bluetooth

En esta sección se hace uso del componente ClienteBluetooth que permitirá realizar la
conexión y el envío y recepción de datos entre el teléfono móvil y el módulo HC-06.

Con el botón “CONECTAR” se genera una la lista con los nombres y direcciones de
los dispositivos disponibles para la conexión (ver Fig. 5.9). Esto se programa mediante un
evento llamado “antes de la selección”, como se observa en la Fig. 5.10.
Capítulo 5. Instrumentación electrónica 50

Figura 5.9: Lista con los nombres y direcciones de los dispositivos Bluetooth disponibles
para emparejar.

Figura 5.10: Bloques para generar la lista con los nombres y direcciones de los dispositivos
Bluetooth disponibles para emparejar.

Posteriormente se programa el evento “después de la selección” que permite la conexión


con el Bluetooth después de que el usuario seleccione el dispositivo de la lista desplegada,
esto se observa en la Fig. 5.11.

Los mismos eventos son programados para el botón “DESCONECTAR”, la única dife-
rencia es que en el evento “después de la selección” se genera la desconexión del módulo
Bluetooth. Este proceso se presenta en la Fig. 5.12.
Capítulo 5. Instrumentación electrónica 51

Figura 5.11: Bloques para emparejar los dispositivos Bluetooth.

Figura 5.12: Bloques para desconectar los dispositivos Bluetooth.

Configuración de parámetros

Para comenzar esta sección se inicializan 5 variables globales (ver Fig. 5.13), tres son
los datos que se enviaran al microcontrolador, para realizar la rutina con las características
que el usuario desee. Esta información es la que se describió anteriormente (número de
repeticiones, torque (el usuario puede elegir entre tres niveles de energía distintos) y magni-
tud del desplazamiento). Las dos restantes son las señales que recibirá el microcontrolador
para comenzar o detener la rutina.

Figura 5.13: Bloques para inicializar variables globales.

En esta etapa el usuario puede ingresar los parámetros que desee mediante los campos
de texto que se observan en la aplicación (Ver Fig. 5.14).
Capítulo 5. Instrumentación electrónica 52

Figura 5.14: Campos de texto para que el usuario ingrese los parámetros deseados.

Los datos ingresados por el usuario son procesados al programar el evento “clic” del
botón “Cargar parámetros”. Los datos son guardados en las variables previamente inicia-
lizadas, que posteriormente son enviadas en una cadena de números de 1 Byte al micro-
controlador. Los bloques que se encargan de realizar esta tarea se observan en la Fig.
5.15.

Figura 5.15: Bloque para enviar los parámetros de la terapia al microcontrolador.


Capítulo 5. Instrumentación electrónica 53

“Iniciar rutina” y “Detener ruina”

En los botones “Iniciar rutina” y “Detener ruina”, también se programa el evento “clic”,
donde se envía nuevamente una cadena de números de 1 Byte que representan la señal de
inicio y de paro de la rutina a ejecutar. Después de que los datos son enviados al micro-
controlador, todas las variables son reiniciadas con el valor de cero para poder ingresar
una configuración en cuanto el usuario así lo desee. Este proceso se puede observar en las
Figs. 5.16 y 5.17.

Figura 5.16: Bloque para iniciar la rutina.

Figura 5.17: Bloque para detener la rutina.


Capítulo 5. Instrumentación electrónica 54

Procesamiento de los datos

Para el procesamiento de los datos se realiza una comunicación serial a una velocidad
de 9600 baudios por segundo entre la tarjeta de control y la aplicación móvil.

En el microcontrolador se realiza un programa que es capaz de recibir la cadena de


datos que envía la aplicación móvil con los parámetros y las señales de inicio y paro de la
rutina.

En el programa se separan los datos de la cadena para asignarlos a los procesos corres-
pondientes, es decir, se obtiene la información del número de repeticiones, el torque con el
que robot móvil debe realizar la rutina y la magnitud del desplazamiento que debe realizar.

Para las señales de inicio y paro de la rutina se manejan dos números arbitrarios (900
para iniciar la rutina y 800 para detenerla) los cuales también son identificados por el
microcontrolador permitiendo realizar la acción correspondiente.

Por último se programan los movimientos que debe realizar el robot móvil para emular
la flexión y extensión de la extremidad.

El programa desarrollado con las características descritas anteriormente se presenta en


el Apéndice C.1.
Capítulo 6

Resultados

En primera instancia se presentan imágenes de las pruebas realizadas con la aplicación


móvil realizando los desplazamientos solicitados desde dicha aplicación.

Figura 6.1: Configuración de desplazamiento de 25 cm.

(a) Punto inicial = 0cm (b) punto final = 25cm

Figura 6.2: Desplazamientos de 25cm

55
Capítulo 6. Resultados 56

Figura 6.3: Configuración de desplazamiento de 13cm.

(a) Punto inicial = 0cm (b) punto final = 13cm

Figura 6.4: Desplazamientos de 13cm.

En las imágenes mostradas anteriormente se observan dos rutinas con parámetros dis-
tintos, la primera de ellas es con un desplazamiento de 25 cm, con el nivel de energía 1 y
5 repeticiones (ver figs. 6.1 y 6.2). La segunda rutina se configura con un desplazamiento
de 13cm, el nivel de energía 3 y nuevamente 5 repeticiones (ver figs. 6.3 y 6.4).

Por otra parte, en Arduino se puede observar la configuración cargada para las rutinas
requeridas, con el número de repeticiones, los valores de PWM necesarios por cada rueda
para ejecutar el desplazamiento requerido y el número de repeticiones. Lo descrito ante-
riormente se observa en la fig. (6.5) donde se muestra la configuración y los parámetros
ingresados por el usuario para tres rutinas distintas.
Capítulo 6. Resultados 57

Figura 6.5: Configuración de tres rutinas distintas.

En la fig. (6.6) se observan las pruebas realizadas del restrictor con un par de ratas
taiep de 3 meses de edad.

(a) (b)

Figura 6.6: Pruebas de restricción de movimiento en roedores.


Capítulo 6. Resultados 58

Por otra parte, se realizó un programa que no permite realizar una trayectoria contro-
lando las ruedas del robot móvil. Como primer paso se leen las señales de los encoders con
las cuales se puede conocer la posición y el sentido de giro de las ruedas. Al procesar estas
señales se puede calcular la velocidad y el error de posición.

Como siguiente paso se implementa las ecuaciones de control para cada rueda el cual
posteriormente es acotado de acuerdo a las necesidades del movimiento del robot móvil,
por ejemplo, se restringe el valor máximo de tau a 3 ya que el valor máximo en el que
pueden trabajar los motores son 3 N. Lo mismo sucede para el caso de movimiento en
reversa que podrían requerir torques negativos lo que significa que el sentido de giro debe
cambiar y así como el signo del torque requerido, el cual debe ser positivo sin importar el
sentido de giro de las ruedas.

Para ambos casos el valor de torque se mapea para poder tener una salida PWM ya
que el valor de torque que se obtiene no se puede implementar directamente a los motores,
así que dichos valores se mapean en un rango de 0 a 255 que es la resolución con la que
cuentan las salidas analógicas del Arduino.

Por último, se implementa un pequeño menú con el que es posible elegir entre ingresar
los valores de las ganancias requeridas y las posiciones deseadas, detener el movimiento de
los motores y resetear todas las variables del programa.

El programa que se describe anteriormente se presenta en el Apendice C.3.

En la figuras que se muestra a continuación se pueden apreciar los valores que se


obtienen con el programa descrito anteriormente, las posiciones deseadas y las posiciones
actuales de cada rueda, así como el torque suministrado a cada rueda, el error de posición
y las velocidades de ambas ruedas, al inicio (ver fig. 6.7), a la mitad (ver fig. 6.8) y al final
(ver fig. 6.9) de la trayectoria realizada.
Capítulo 6. Resultados 59

Figura 6.7: Valores obtenidos al inicio de la trayectoria.

Figura 6.8: Valores obtenidos a la mitad de la trayectoria.


Capítulo 6. Resultados 60

Figura 6.9: Valores obtenidos al final de la trayectoria.

A continuación se presentas las imágenes con la trayectoria realizada, la cual es una


desplazamiento en línea recta de aproximadamente 48 cm que equivale al dos veces el giro
completo de cada rueda (Fig. 6.10).

(a) punto inicial = 0cm (b) punto final = 48cm

Figura 6.10: Trayectoria recorrida por el robot móvil.


Capítulo 6. Resultados 61

Y por último, se presentan las gráficas de posición, los torques aplicados y el error de
posición de las dos ruedas.

(a) Posición de la rueda izquierda (b) Posición de la rueda derecha

Figura 6.11: Gráficas de posición de las ruedas del robot móvil.

Como se observa en las fig. 6.11 la posición de los motores es alcanzada con un sobretiro
muy pequeño.

(a) Torque aplicado a rueda izquierda (b) Torque aplicado a rueda derecha

Figura 6.12: Gráficas de torques aplicados a las ruedas del robot móvil para realizar la
trayectoria deseada.

En el caso de las gráficas de torque (fig. 6.12) se observa como el controlador aplicado
acota los valores que puede alcanzar el torque máximo, lo que evita que el motor trabaje
en la zona de saturación. También es posible observar que conforme se alcanza la posición
Capítulo 6. Resultados 62

deseada el nivel de torque baja y aunque se muestra una pequeña variación al alcanzar la
posición deseada, al ser en un periodo de tiempo corto no afecta el posicionamiento del
robot móvil.

(a) Error de posición de la rueda izquierda (b) Error de posición de la rueda derecha

Figura 6.13: Gráficas de error posición de las ruedas del robot móvil.

Para el caso de las gráficas de error de posición (ver fig. 6.13) el comportamiento
adecuado, ya que como se observa, la posición deseada es alcanzada sin grandes variaciones
al aplicar el control.
Conclusiones

El desarrollo de la cinemática y la dinámica del robot móvil es un proceso complicado


ya que se debe ser cuidadoso al considerar todos los fenómenos físicos que se involucran
en su movimiento. Este desarrollo es importante para aspectos de construcción mecánica
y simulación de movimientos o seguimientos de trayectoria.

En el caso de la construcción mecánica fue muy importante conocer la influencia del


centro de masa del robot móvil en la dinámica del robot móvil, lo que nos permitió conocer
las ventajas de ubicar el centro de masa muy cerca del eje de giro de las ruedas. Para la
etapa del diseño de los elementos mecánicos para sujetar las extremidades de los roedores
fue muy complicado debido a que se deben considerar muchos aspectos como lo son, evitar
dañarlos físicamente con los dispositivos mecánicos diseñados, evitar que los animales se es-
tresen, la fisionomía de su extremidad, los movimientos naturales que realizan, entre otros.

En el aspecto de simulaciones lo complicado fue hallar el método adecuado para imple-


mentar todos los aspectos dinámicos del robot móvil, así como el proceso de integración
para obtener los valores de finales de la cinemática del robot móvil. Por las características
físicas del prototipo construido (masa, tamaño del prototipo, características de las ruedas
y de la estructura del motor, etc.) este proceso resulto más complicado ya que al elegir
un método incorrecto los valores de las variables calculadas resultaban muy pequeños in-
definiendo algunas operaciones realizadas por las funciones implementadas en MATLAB.
Pero al finalizar esta etapa los resultados de simulación fueron satisfactorios.

El diseño de un algoritmo de control también es una tarea complicada ya que se debe


comprobar su estabilidad y de este punto poder hacer simulaciones y pruebas físicas para
saber si es un algoritmo adecuado para realizar el proceso de control deseado.

Al realizar una caracterización adecuada de los motores se facilitó el desarrollo de la


etapa de potencia, ya que así se conocen las características eléctricas reales de los motores,

63
Conclusiones 64

esto a su vez permite conocer los valores con los que se puede llevar a cabo un control ade-
cuado, por ejemplo, conocer los límites de voltajes y corriente en los que se puede trabajar.

Para el caso de las simulaciones y las pruebas físicas del control, el proceso de sinto-
nización de ganancia es de gran importancia y complicado al mismo tiempo, ya que al no
existir un método que nos proporcione el valor correcto de las ganancias que satisfagan el
control adecuado, es necesario realizar distintas pruebas hasta poder hallar los valores con
los cuales nuestro proceso de control presente un mejor desempeño.

Las pruebas experimentales sobre las extremidades de los roedores no se concluyeron


completamente, debido a lo complicado que resultó el poder sujetar las extremidades sin
dañarlas. Al realizar las pruebas con los distintos mecanismos diseñados se observó que en
algunos casos, estos causaban daños sobre la extremidad de los roedores. En otros casos,
el movimiento natural de resistirse a ser sujetadas permitía que las ratas fueran capaces
de liberarse del mecanismo que detenía su extremidad.

En el caso de las pruebas experimentales para la realizar una trayectoria, los resultados
con el controlador tangente hiperbólico fueron satisfactorias pero en el caso del controlador
propuesto los valores que se calculaban para los torque resultaban muy pequeños lo cual
indefinía los valores de PWM necesarios para las ruedas. Aunque en las simulaciones se
logró implementar dicho algoritmo, las respuestas obtenidas nos permitieron comprobar
que los valores que se calculaban eran muy pequeños, por tal motivo se concluye que este
controlador no es adecuado para nuestro prototipo aunque no se descarta que este contro-
lador pueda funcionar con otro prototipo de mayores dimensiones.

Como trabajo a futuro se puede desarrollar un modelo dinámico considerando más


características, lo que permitirá mejorar los resultados en aspectos de simulaciones. Desa-
rrollar nuevos algoritmos de control que sean adecuados para las características que pre-
sentan este tipo de prototipos.

Se deben buscar materiales que nos permitan construir un elemento mecánico que no
dañe la extremidad de la rata y así poder realizar las pruebas en condiciones adecuadas
para el roedor y para obtener resultados correctos.

Agregar sensores que permitan complementar la información del entorno donde el robot
móvil realiza su movimiento.
Apéndice A

Reconocimientos

A.1. XXIII Congreso Internacional Anual de la Socie-


dad Mexicana de Ingeniería Mecánica.

65
Reconocimientos 67

A.2. 1er. Congreso Internacional de Ciencias de la In-


geniería y Tecnología ECITEC 2017.
Reconocimientos 69

A.3. Certificación TOEFL


Apéndice B

Publicaciones

B.1. SOMIM 2017.

71
01023456819 4442 3162413 5 42 595 59819562040
8161410318113 55 502319260 42


 !"#$%&'()*)+,*#-.(&/01234541678917:;<1=78:4;>91:8?87>5@A4B1>C
D^EF
_VFGMH^IUJJKLL^MVJLGNHG`OPQQFTF
MMFHRNNOLJSLLUTJ
HLOPU^HSVJHLMUOFJNPWF^TF
GaMbJLUHLQNLPJXJOLTRYFVLZ.[&&(-'Z(\['&(]
cdefghijkldmkniogmepekgqidrpestgqduviwnxyizd{|eij}lf~dmilgesd~vidm{geinm€yxirpestgq~vi
wnxyigmedeknizg‚gxinm€yxb
ƒ„ƒ†‡
ˆƒ‰b‰Šb‹ŒŠŒƒŽb‰Šb‡ƒb‡Šˆ‘Œƒ’b“ƒŠŽˆ”ƒbŠb‹ŒŠŒƒŽb‰Šb‡ƒb‡Šˆ‘Œƒb•–Œ‘bŠb—†ˆ˜™ƒˆŒšƒŒ‘’b›ŠŠ™œŒˆƒbŒžŠŽŒ‰ƒ‰b—†ˆ‘˜™ƒb‰ŠbŸ†Š‡ƒ¡b
—ž¡b¢ƒb‹‡ƒ†‰Œ˜b£b¤¥b¢†b‰Œ¦¡b„‹§’b‹Œ†‰ƒ‰bŒžŠŽŒˆƒŒƒ’b‹˜‡¡b̈ƒ‰ŒŠŽb‰Šb¢ƒb“ƒ†Š‡’bŸ†Š‡ƒ’bŸ†Š‡ƒ’b‹¡Ÿ¡b©ª«©¬’b“œ­Œ˜¡b
®ŽˆŒˆ†ˆ˜b‰Šb„ŒŽŒ˜‡˜¯”ƒ’b›ŠŠ™œŒˆƒbŒžŠŽŒ‰ƒ‰b—†ˆ‘˜™ƒb‰ŠbŸ†Š‡ƒ¡b—ž¡¤°b¢†b§±¬¤’b‰Œ¦¡b®„®ª’b‹˜‡¡b¨ƒ‰ŒŠŽb‰Šb¢ƒb“ƒ†Š‡’bŸ†Š‡ƒ’bŸ†Š‡ƒ’b‹¡Ÿ¡b
©ª«©¬’b“œ­Œ˜¡b
²—†ˆ˜b‰Šb˜ˆƒˆ˜¡b³ŒŠ Œ‘b‰Šb˜Š˜bŠ‡Šˆ‘Œ˜´b‰ƒŒŠ‡¡µŠƒ‰ŠšŽ¶ƒ‡†™˜¡†ƒ–¡™­bbb
i
b
,·¸¹%·º

»8>:8?87>5@A4B1>>86=;¼;=1>91:1;B4½;:58A4541678>161>¼;=48>917:;?;¾84B4547;98>16=85¼;:;=4@6;B8>:8?87>
5;64¼3B;98:1><36891>3>¼:46=4¼;B1>8?¾174A8>1>1¿1=73;:91¿8:5;;37@685;58A4541678>¼B;64¿4=;98>=862:;6
1À;=74739Á¼;:;1>78>1:1Â341:194>1Ã;:1>7:3=73:;>91=867:8BÂ3151¾8:16B;:1>¼31>7;91B:8?87CÄ8:B87;678Á161>717:;?;¾8
>1¼:1>167;1B94>1Ã8<;6ÅB4>4>5;715Å74=89136;1>7:3=73:;91=867:8B;=87;9;ÁÂ3116=86¾3678=861B1>7394891B;
=4615Å74=;<B;946Å54=;9136:8?875@A4B91=86¿423:;=4@694¿1:16=4;B¼1:5471>453B;:<;6;B4½;:1B=85¼8:7;541678Â31
1B:8?875@A4B¼:1>167;;B1¿1=73;:36;7:;<1=78:4;91>1;9;ÁB8>:1>3B7;98>8?716498>>1=85¼;:;6=86B;:1>¼31>7;;9Â34:49;
;B>453B;:B;946Å54=;;>8=4;9;;36=867:8B;98:ÄÆ?;¾8B;54>5;7:;<1=78:4;C
Ÿƒ‡ƒƒŽb‹‡ƒžŠ´bǘ˜ˆb™‘žŒ‡b‰Šbˆƒ Œ‘b‰Œ¦ŠŠŒƒ‡’bŒŠ™ÈˆŒƒ’b‰ŒÈ™Œƒ’bŠŽˆ†ˆ†ƒb‰Šb˜ˆ˜‡’b˜ˆ˜‡b‰Šbˆƒ£Šˆ˜Œƒ¡bb
!ɸ,!Ê
b
ËÌ158?4B1:8?87>;:1;?B178¼1:¿8:558A15167>4636B454719Í8:Î>¼;=1>=85¼;:19785;64¼3B;78::8?87>;698618¿7Ì14:
5;468?¾1=74A1>4>78=;::<837;37868583>B<¼B;661958A15167>Í47Ì2:1;7;==3:;=<Á¿8:7Ì4>Á474>61=1>>;:<7891>426
=867:8B>7:3=73:1>7Ì;745¼:8A17Ì1:8?87Ï>:1>¼86>1CËÌ1:1¿8:1Á467Ì4>Í8:ÎÍ1¼:1>1677Ì15;7Ì15;74=;B91>426;69;6;B<>4>Á
8¿;?836919=867:8B>7:3=73:1ÁÍÌ4=Ì78217Ì1:Í47Ì7Ì1>739<8¿7Ì1Î4615;74=>;699<6;54=>8¿;58?4B1:8?878¿94¿¿1:1674;B
=86¿423:;7486;BB8Í>3>78>453B;71;69;6;B<½17Ì1?1Ì;A48:7Ì;77Ì158?4B1:8?87¼:1>167>ÁÍÌ1647¼1:¿8:5>;91>4:19
7:;¾1=78:<CËÌ1:1>3B7>8?7;4619;:1=85¼;:19Í47Ì7Ì1:1>¼86>1;=Â34:19?<>453B;74627Ì19<6;54=>;>>8=4;719Í47Ì7Ì1ÄÆ
=867:8BB1:Á3691:7Ì1>;517:;¾1=78:<Cii
Њ£Ñ˜‰Ž´b‰Œ¦¦ŠŠˆŒƒ‡b‰ŒžŠb™˜Œ‡Šb˜˜ˆ’bҌŠ™ƒˆŒ’b‰£ƒ™Œ’b˜ˆ˜‡bŽˆ†ˆ†Š’bˆƒÓŠˆ˜£bˆƒÒŒ¯Ôi
b

917:;?;¾84B4547;98Á;94¿1:16=4;91B8>:8?87>
Õ$Ö×'.[*ZØ&&(-' 5;64¼3B;98:1>¿4¾8>B8>=3;B1>1>7Å6:1>7:462498>;=35¼B4:
7;:1;>9167:891361>¼;=48917:;?;¾89171:546;98¼8:>3>
ÙB91>;::8BB891:8?87>5@A4B1>:1>¼8691;B;61=1>49;991 9;3451
6>4861>¿Ú>4=;>CÄ8:B87;678Á=86B;¿46;B49;991
1À71691:1B=;5¼891B;;¼B4=;=4@691B;:8?@74=;Á>3 =;¼51 67;:B;58A4B49;991B:8?87<911>7;5;61:;>3
45¼8:7;6=4;:;94=;¼:46=4¼;B5167116Â31¼8>116361>¼;=48 ;=49;9917:;?;¾8Á>1Ì;=13>89136>4>715;B8=85878:

ÛÜÜÝÞßààáâãããä åæÞä çèéèêëìíÞîèíèéïðñìíÞòÞßóäôõÞÜöåÛå
01023456819 4442 3162413 5 42 595 59819562040
8161410318113 55 502319260 42
¼;:;Â311B:8?87¼319;91>¼B;½;:>1B4?:15167116>31>¼;=48 5Þ681À4>7191>B4½;541678C
917:;?;¾8÷øùC Æ1;=31:98=86B;>Ì4¼@71>4>;671:48:1>Á>1;?8:9;1B=;>8
ú94¿1:16=4;91B8>:8?87>¿4¾8>ÁB8>:8?87>5@A4B1> ?494516>486;B91?498;Â311B:8?87>8B8>1531A11636
=;5?4;6=86=;9;58A4541678B;¼8>4=4@6<8:4167;=4@691 ¼B;68÷øùC
>31¾191=88:916;9;>?;>1CÄ8:=86>42341671Á91?16 Ù6?;>1;B;þ42CøÁ1B;6ÅB4>4>>1464=4;¿4¾;69836>4>715;
:1=868=1:=86>7;671516711B;5?4167198691>1531A16 91:1¿1:16=4; 97 9Á9Á98 9136¿8:5;=86A1641671C
¼;:;¼891:;9;¼7;:>1;91=3;9;51671CÄ;:;Â3136>4>715; 03?>1=3167151671Á>1=8B8=;36>4>715;91:1¿1:16=4;
:8?@74=85@A4B¼319;>1:1À478>861=1>47;=867;:=8636;
?316;17;¼;91>16>;98<7161:=41:782:;9891;378685Ú;
7 ÁÁ 8Á1B=3;B68>¼1:5471Ì;BB;:B8>=85¼861671>91
7:;ø>B;=ø4@ø6ø<B;8:4167;=4@691B:8?875@A4B:1>¼1=78;B
÷ûùC >4>715;91:1¿1:16=4;> 9C
»8>:8?87>5@A4B1>91?16>1:=;¼;=1>911¾1=37;:91 ý86>491:;69836:8?875@A4B9194:1==486;541678
¿8:5;;37@685;58A4541678>¼:1A4;51671¼B;64¿4=;98> 94¿1:16=4;B68Ì8B86@54=8Â31>1531A11636¼B;68
¼;:;B8=3;B>1:1Â341:1¿8:53B;:B1<1>91=867:8BÂ31 Ì8:4½867;BÁ>1¼319191>=:4?4:>3=4615Å74=;=86B;>1=CøC
¼1:547;61>7;?4B4½;:1BA1ÌÚ=3B8>8?:136¼3678917:;?;¾8Á 
;63B;6981B1¿1=7891B;>¼1:73:?;=4861><5;671641698
;=87;9;>B;>>1Ã;B1>91=867:8B÷üùC ­9 ž=8>78  Á£9 ž>4678  ÁÁ ø
Ä8:7;B5874A8Á>194>1Ã;36;1>7:3=73:;91=867:8BÂ31 
¼:1>167;3651¾8:91>15¼1Ã8<:8?3>71½=85¼;:;98=861B 98691Á‚1>B;¼8>4=4@691B:8?87Á 1>B;8:4167;=4@6
9136=867:8B;98:ÄÆCÄ;:;1A;B3;:1B91>15¼1Ã891B 91B:8?87Á9<9 >86B;>167:;9;>91=867:8B91A1B8=49;9
=867:8B;98:¼:1A4;51671516=486;98Á>11B42136:8?87 B461;B<;623B;:91B:8?87Á:1>¼1=74A;51671÷ùÁB;>=3;B1>
5@A4B917:;==4@694¿1:16=4;B<;Â311>711>=;¼;½91 >861À¼:1>;9;>16B;>1=>Cû<üC
58A1:>116BÚ61;:1=7;Á24:;:>8?:1>Ú54>58<7:;½;:=3:A;> 
÷øùÁ>3=86>7:3==4@61>:1B;74A;51671¿Å=4B<>1B82:;36;
51¾8:58A4B49;91671::168>>3¿4=416715167193:8><B4?:1>
91 8?>7Å=3B8>Á ¼1:54741698 =86>1234: A1B8=49;91>
:1B;74A;51671;B7;>÷üùÁB8Â31:1>3B7;;91=3;98¼;:;1>71
74¼891;6ÅB4>4>Cý86?;>1161>7;=86¿423:;=4@6Á>1
91>;::8BB;B;=4615Å74=;Â3191>=:4?1B;¼8>4=4@6<
8:4167;=4@691B:8?875@A4B<¼8>71:48:51671>1:1;B4½;B;
946Å54=;91?498;Â311>7;91?1>1:46=B349;16B;1>7:3=73:;
5;715Å74=;91B8>;B28:4758>91=867:8B÷øùCþ46;B51671Á>1
¼:1>167;6B8>:1>3B7;98>Â31>18?741616;B:1;B4½;:B;
>453B;=4@691B;946Å54=;16=86¾3678=86B;¼:8¼31>7;91
=867:8B;98:<;B=867:8B;98:ÄÆÁB8Â31¼1:54711¿1=73;:36;
=85¼;:;=4@691B;:1>¼31>7;Â31¼:1>167;=;9;36891B8>
;B28:4758>C

ÿ$ÖÊ('0.(&+Z('0(&
ÙB5891B;98=4615Å74=81>1B1>739489158A454167891 
>4>715;>51=Å64=8>>46=86>491:;:B;>¿31:½;>Â31;¿1=7;6
94=Ì858A4541678CÄ;:;1B:8?875@A4B9194:1==486;541678 (Ø[Õ¸(). )Z&**[Z'Z) 97 9Á9Á98 ø7 øÁÁ ø ø8 +
94¿1:16=4;BÁ1B¼:8¼@>478¼:46=4¼;B91B5891B;98=4615Å74=8 û7 ûÁûÁû8[(.'Z)&[(#([]Z)]('.*+]*[('.&(-'Z]
1>:1¼:1>167;:B;A1B8=49;991B:8?8716¿36=4@6;B;> [*#*.-(]$û!)]Z().'&(Z)[&(-''.[])Z*)[ØZ)Z
A1B8=49;91>91B;>:319;>=86¾367;51671;B8>¼;:Å517:8> .[&&(-'ûz)]Z(0.[*Z])[ØZ)!ø)]Z().'&(Z]&'.[*
218517:4=8>91B:8?87÷2ùC Z )]"Z[*.&(-'Z])[ØZ)+ )]0'Ø]*#ØZ)&[(#
36:8?875@A4B=86:319;>1>3694>¼8>474A8Â3191?1 ]*[('.&(-'Z]-(]$
58A1:>1>8?:136;>3¼1:¿4=415194;671B;;==4@691:319;>
5867;9;>161BÁ>1;>3516B;>>42341671>Ì4¼@71>4>4 ž% &Ç '&%

5ÞÙB:8?875@A4B>1531A1>8?:136;>3¼1:¿4=41¼B;6; žžÇ 'û $ û Á  û
Ì8:4½867;BÁ1>91=4:B;161:2Ú;¼8716=4;B1>=86>7;671C žÇ (ûž% $&Ç (û&%Á  ü
5Þ»8>1¾1>91:1¿1:16=4;>86¼1:¼1694=3B;:1>;B>31B8C
5Þ681À4>7161B151678>¿B1À4?B1>16B;1>7:3=73:;91B 
:8?87Á46=B3<1698B;>:319;>C 98691&Ç<&%>86A1B8=49;91>;623B;:1><Ç1>1B:;94891B;>
5ÞÙB=867;=78167:1=;9;:319;<1B>31B8>1:193=1;36 :319;>CË;5?4161>¼8>4?B191¿464:B8>=85¼861671>91B
>8B8¼3678C
ÛÜÜÝÞßààáâãããä åæÞß çèéèêëìíÞîèíèéïðñìíÞòÞßóäôõÞÜöåÛå
01023456819 4442 3162413 5 42 595 59819562040
8161410318113 55 502319260 42



=167:8915;>;91=858>18?>1:A;16B;1=C2C ž† 1 ž† Á  2


­û­9'%ø=8> Á£û£9'%ø=8> C 2 žÑ 1 žÑ 'Á  3

Ä;:;BB1A;:;=;?81B5891B8946Å54=8¼8:1B51789891 ƒ† (û1 ƒ† ž†(žÑÁ ø9
61Í786)Ù3B1:1>61=1>;:4815¼B1;:3694;2:;5;91=31:¼8 ƒÑ û(1 ƒÑ žÑ'ž†C øø
B4?:191B>4>715;A1:þ42CûÂ31¼1:547;;6;B4½;:B;>¿31:½;> 
Â31;=7*;6>8?:11BA1ÌÚ=3B8÷2ùC 041À¼:1>;58>B;>12369;B1<9158A45416789161Í786
ú>3541698Â311B:8?871>36=31:¼8:Ú2498Á3>;58> ¼;:;1B>4>715;91:1¿1:16=4; øÁ1>¼8>4?B116=867:;:B;
=88:916;9;>¼8B;:1>¼;:;:1¼:1>167;:B;¼8>4=4@691B=167:8 :1B;=4@6167:178:Â31>Á¿31:½;><;=1B1:;=4861>÷2ùC
915;>;91B5@A4B=86:1>¼1=78; ÁB;=3;B1>91¿4649; ý86>491:;6984=858B;5;>;787;BBB;67;>Á=31:¼8<
=8589m=8><f‚9 fm>46919;=31:98;B;þ42CûÁ ;=73;98:1><®®'49û=858B;461:=4;=86:1>¼1=78;B
¼8:B87;6784 =167:8915;>;91B:8?875@A4B;¼B4=;6981B718:15;911¾1>
 ¼;:;B1B8>÷,ùÁ>191¿461B;946Å54=;=86B;>1=>Cøû)ø2C
+=8>  'Œ>46ŠŒC 


Æ4¿1:16=4;698B;1=C=86:1>¼1=78;B7415¼8 „†%'„†Ç“ƒ†Á  øû
8?716158>B;A1B8=49;9<B;;=1B1:;=4@691B:8?875@A4BÁB;> „Ñ%(„ÑÇ“ƒÑÁ  øü
=3;B1>¼89158>8?>1:A;:16B;>1=>C,<-C ®„†%(„†Ç%'„Ñ%(„ÑljC
 ø2

»;>1=>Cøû)ø2:1¼:1>167;6B8>58A4541678>91
7:;6>B;=4@6<:87;=4@6Â31>868?71649;>91B;>1=3;=4861>
9178:Â316178÷,ùC
03>7473<1698B;>1=>Cø9<øø16B;>1=>Cøû<øüÁ
:1>¼1=74A;51671Á8?716158>B;>1=>Cø)ø-C

ž† „†%“'„†Ç'žÑÁ  ø
žÑ „Ñ%“(„ÑÇ(ž†Á  ø,
®'%“‰û„†%(„†Ç'®'%“‰ ø 
û „Ñ%(„ÑÇ Cø-
  
»;>:1>7:4==4861>68Ì8B86@54=;>467:893=49;>;3664A1B
=4615Å74=81>7Å6>86:1¼:1>167;9;>¼8:B;1=Cø2÷-ùC

5
7
­6 5=8>
8 7
 96856 ž C 
7£ 8  7 >4
6 
 9878
9:Ñ ø2
(Ø[ÿ.([ Z&Ø[*](#[Z][*#*.-(]Z 7  8
9:9 : 7 9 ø8
Z([&&(*'('.*Z(\['&(]$lz +lz )*'])\Ø[)]*'(.ØZ(']) 
/z + /z )*'])\Ø[)].[])Z][*#*.l +/ )*']) Ù>7;>:1>7:4==4861>68Ì8B86@54=;>91¿4616B;A1B8=49;9
]*&(ZZ)dl+d/ )*'])&][&(*')Z]&'.[*Z )Z][*#*. 91B=167:8915;>;91B:8?87 û¿8:½Å698B;;=1:8<
[)&.( '.$ 3>;698B;5;7:4½917:;6>¿8:5;=4@6Ç  4
 Œ Œ Œ Œ'0û 
+ŠŒ'ŒŠ  ŒŠ 'ŒŠ  û ŒC , 75­û8
67  (>46
5=8>  (žÑ>46
8675ž†8675ž†=8> 86Cø3
+Š 'ûŒŠ  'ŒŠ  (Š  £
9û: 9 >46
 =8 >
 ž
:9Ñ: 9† ž >4
6 
 (ž Ñ :
=8 >
- 
(ûŠŒ 'û'ŠŒ'0ûC ;23;B;698B;1=C2=86B;1=Cø3>191531>7:;Â311B
 :8?875@A4B>@B8>191>¼B;½;=8658A4541678>=3:A8>Ì;=4;
ý86B;1=C,>191¿4616B;>A1B8=49;91><=86B;1=C- ;91B;671<Ì;=4;;7:Å>¼1:868B;71:;B51671ÁB8=3;B>1
>191¿4616B;>;=1B1:;=4861>Â31>18?>1:A;6161B94;2:;5; 8?>1:A;16B;>1=>Cû9)ûøC
91=31:¼8B4?:191B;þ42CûÁ94=Ì;>1À¼:1>4861>>1531>7:;6 
;=867463;=4@6C
ÛÜÜÝÞßààáâãããä åæÞ< çèéèêëìíÞîèíèéïðñìíÞòÞßóäôõÞÜöåÛå
01023456819 4442 3162413 5 42 595 59819562040
8161410318113 55 502319260 42
5­9'%ø=8> 6857ž†=8>  (žÑ>466 946Å54=;91B:8?875@A4B9;9;¼8:B;1=Cû-C
7
9£9'%ø=8> : 9ž†>46  (žÑ=8> 8:C û9 
=“ BB'‹BBB ÁC  û-
 
01;¼B4=;6B;>¼:8¼419;91>915;7:4=1>91:87;=4@6<B;> Æ86914
:12B;>91:87;=4@6¼;:;9171:546;:B;8:4167;=4@691B>4>715; 
91:1¿1:16=4; ø=86:1>¼1=78; û÷2ùÁ=86B8Â31>18?74161 5ޓ BG ­1
ûû >B;5;7:4½915;>;>1461:=4;>C
‚ (! <Á;B423;B;:B;=86=1:8>191531>7:;Â311B 5ÞBG 1>1ûû
ûø
­ B­A1=78:91;=1B1:;=4861>C
¼3ø678/9Á‚ø9=86:1>¼1=78; 91>4 5ދBBG
Á 1>B;5;7:4½91ý8:48B4>C
 5ÞBG ûø­1>1BA1=78:91A1B8=49;91>C
žÑ %øC  ûø 
  012161:;36¼3678911Â34B4?:481>7;?B1161B>16749891
úB>3>74734:B;1=Cûø16B;>1=>Cø<ø,1 »<;¼368AÁB;1>7;?4B49;991B¼3678911Â34B4?:48>1
46=8:¼@:;B;>16B;1=Cø-8?716158>B;>1=>Cûû<ûüC 91531>7:;=861B718:15;91»;0;BB1÷ø9ù;B423;B;:B;¿8:5;
 2161:;B91B;1=Cû,=86B;1=Cû-C
ž† „†%“'„†Ç'%øûÁ  ûû

=“ Á(Җ=8ø>'Ì=
BB'‹BBB Â>4û6ÌÂ'Ҟ=8>ÌÂ>4û6ÌÂC û2
8>ÌÂ ø'=8>ÌÂ
®'“%øû(“%ž ø †Ç
%=%(=ÇC ûü 
 Ù>¼8>4?B11À¼:1>;:B;1=Cû216A;:4;?B1>911>7;98¼;:;
»;>1=>Cûû<ûü>11À¼:1>;616¿8:5;5;7:4=4;B=858>1 91¿464:B;1=3;=4@691B;½8=1::;98=858>18?>1:A;16B;1=C
8?>1:A;16B;1=Cû2C û3C
 
B 5 (B 6
5“ 9 65ž†65 9 (“%ø65ž†6ø5ø ø65=%6Cû2 ‰56 7 (ø 5 =8>ÌÂ>46Ì =8>ÌÂ>46ÌÂ
B 7
78 8C û3
68
7
99®'“%øû8 :7
98:7 9“%ø 9 8 :7
98: Ç7 9% (%8 :7
9=Ç8: ‰ˆ9: “
7
9

ÂÒ
7
9– ø'=8>Ìû Â (Ҟ ø'=8
>Ìû Â ( Á
‹BB8
:8
:
 
Ä;:;9158>7:;:Â311B¼3678911Â34B4?:4891B;1=3;=4@6
"$Ö·).[Ø&.Ø[Z&*'.[*]$ 91B
;½8=1::;981>1>7;?B1Á=86>491:;58>B;>42341671¿36=4@6
=;6949;7;91»<;¼368A4
ÙB8?¾174A891=867:8B91¼8>4=4@6>1:1¿41:1;16=867:;:36  ø I
B1<91=867:8BÂ3168>¼:8¼8:=4861B8>¼;:1>;¼B4=;98>8 JBB Á B“ BB'øû÷B6ø'=8>Ìû BùIҖ÷B6ø'=8>Ìû BùÁü9
78:Â31>;=;9;36;91B;>;:74=3B;=4861>91B:8?87Á7;BÂ31B;  û
¼8>4=4@6;=73;B91B:8?87>7<>3A1B8=49;9;:74=3B;:91
58A4541678>774169;6;>467@74=;51671Ì;=4;B;¼8>4=4@6 19>86¼981>JBB Á1>91¿4649;¼8>474A;<;Â311B¼:451:71:5468
474A891?498;Â3116B;161:2Ú;=46174=;B;5;7:4½
91>1;9;>k<A1B8=49;9=1:8Á:1>¼1=74A;51671?>4645¼8:7;: “
B;>=8694=4861>464=4;B1>CÙ687:;>¼;B;?:;>Á=8581B7415¼8 161:B2Ú;1>¼89711¿646=44;9B;;¼:874>¿447=44A;;B=÷ø8ù6<Ò1bB1>>19213¿6469489;71¼:54
8>
681>B;
4
74A;¼8:
€1A8B3=486;;B46¿46478 €@A' >191?1>;74>¿;=1:B; 94>1Ã8<:1=8:9;698Â31“ BÁÒG ¼ ­ <BÁBG ûø­C
=86A1:216=4;91÷3ù4 ¼
úB;¼B4=;:B;91:4A;9;715¼8:;B;B;1=Cü9>18?74161B;
ûû

B7 B 1=C
üøC
455
Bˆ@A 7 65 ‰6C
BB'øûB“ ÂÂ(>46Ìø B=8>Ì BÒB
9B78
:7998 : 
  û ÁB“
JBB I  I 
'=8>ÌûB C üø
–

CÔDÔEFmnlgx€dikgigx€mls€lmdikgisne€mnhi 
Æ1B;1=Cû3:1785;58>B;;=1B1:;=4@6 BÁB;=3;B1>
Ä;:;=8516½;:94=Ì8;6ÅB4>4>Á>1=86>491:;B;>42341671 >3>747349;16B;1=CüøÁ8?71641698B;1=CüûC
1>7:3=73:;91=867:8B4 I > 46Ì B=8>Ì B >46Ì B=8>Ì B
5=8>ÌÂ>4û6ÌÂ
7 8­>Ì ­6 5
8 Ҟ­ 967
=8>ÌÂ>4û6ÌÂ
7 ø'=8­>Ì ­6
8 ÁBҖ ø'=8>Ìû
JBB B ( ø'=8>ÌûB ÒB
–
5=%65Җ­ 967 ø'= Â
­ 85 Â
7 8 7
79Җ£:
9=Ç: 9 8
87
7=8>ÌÂ
£>46ÌÂ (
£89
8
7 8
87
79Ҟ£:7=8>ÌÂ
£>
­ 8
46Ì£8
8

Á
û,

(B BB
IýÁ' ø B“ BB
I  (BÒ
I >4
6ÌB
= BCüû
8û>Ì
9 ø'=8>ÌÂ
7 û
£ 8: 9 ø'=8>ÌÂ
7 û
£ 8: û ž ø'=8>ÌB
 
98691B;2;6;6=û4;û¼:8¼8:=486;BHG <B;2;6ûÀ;6ø=4; >12Ù6
ûû B;1=Cüû1B¼:451:71:5468>1=;6=1B;=861B
91:4A;74A;HG >865;7:4=1>94;286;B1><ÂG 1> ¼:83¼641998;Á919B171;:6=714>:4851
>1=;6=1B;=861B=3;:78;B;¼B4=;:B;
7:Ú;÷øùÁ:1>3B7;698B;1=CüüC
1B1::8:91¼8>4=4@6B‰(BC
Æ1B54>585898Á>1=86>491:;B;1>7:3=73:;2161:;B91B; 
ÛÜÜÝÞßààáâãããä åæÞà çèéèêëìíÞîèíèéïðñìíÞòÞßóäôõÞÜöåÛå
01023456819 4442 3162413 5 42 595 59819562040
8161410318113 55 502319260 42



I >
Á(BÒ
JBB 46Ì
B=8û>Ì
B
ž ø'= 8>ÌB K9C üü

Ä8:B8Â31Â319;9158>7:;9;B;1>7;?4B49;92B8?;B91B
¼3678911Â34B4?:4816B;1=3;=4@691B;½8=1::;98C
CÔLÔEjx€mls€lmdikgisne€mnhiFci
ÙB=867:8B¼:8¼8:=486;B91:4A;74A81>7Å9;98¼8:B;>42341671
1=3;=4@64
 
5Җ­ 98
5=%67 65B­8 5Ҟ­ 98
6(7 65B­8
6Á ü2 (Ø[QN·&Ø&(-'']*&[[Z*R).[Ø&.Ø[Z&*'.[*][*Ø).
7
9=Ç8
:799Җ£8:7 99Ҟ£8
9B£: 7 :7
9B£: +Z('0(&'&*'"Ø'.*S(]'.Z*'¸(Ø]('O$

ÙB;6ÅB4>4>>8?:1B;1À4>716=4;Á364=49;9<1>7;?4B49;991B
¼3678911Â34B4?:48911>71;B28:475891=867:8B1>7Å
;5¼B4;5167198=35167;98÷øÁø9ùC
Æ1>¼31>91=85¼:8?;:B;1>7;?4B49;991;5?8>
=867:8B;98:1>>1¼3191>453B;:36;7:;<1=78:4;>45¼B1¼;:;
¼891:=85¼;:;:1B91>15¼1Ã891=;9;368C

M$Ö̧(Ø]&(*')$
Ù6B;>þ42>Cü),Â31>1¼:1>167;6;=867463;=4@6Á>18?>1:A;6
B8>94;2:;5;>;?B8Â31>91B;946Å54=;91B:8?875@A4BÁ1B 
;B28:475891=867:8B¼:8¼31>78Á<B;1=3;=4@616B;½8
=1::;98=86;5?8>=867:8B;98:1>Cb (Ø[T·&Ø&(-'']*&[[Z*R).[Ø&.Ø[Z&*'.[*]P.+
Z('0(&'&*'"Ø'.*S(]'.Z*'¸(Ø]('O$
Ù6B;>þ42>C-)3>1¼:1>167;6B8>:1>3B7;98>8?716498>;B
>453B;:36;7:;<1=78:4;:1=7;=86464=4816ÀÁ<U9Á95C<
¿46ÀÁ<U9Áø5C91B;946Å54=;=861B=867:8B;98:
¼:8¼31>78C018?>1:A;B;¼8>4=4@6¿46;B91=167:8915;>;
91B:8?875@A4BÁ1B1::8:91B;¼8>4=4@6<1B78:Â31Â31
:1Â341:1=;9;:319;¼;:;:1;B4½;:B;7:;<1=78:4;91>1;9;Á
:1>¼1=74A;51671C

(Ø["N.('0(&Z][*#*.-(](]'.Z'¸(Ø]('O$

 (Ø[VNP*)(&(-'\(']Z]&'.[*Z )]](&[]&*'.[*]Z*[
(Ø[MNP[*Ø).Z).[Ø&.Ø[Z&*'.[*](]'.Z' [*Ø).*]Z('0(&Z][*#*.-(]$
¸(Ø]('O$
ÛÜÜÝÞßààáâãããä åæÞã çèéèêëìíÞîèíèéïðñìíÞòÞßóäôõÞÜöåÛå
01023456819 4442 3162413 5 42 595 59819562040
8161410318113 55 502319260 42



 (Ø[ÕÕN·[[*[Z*)(&(-'Z]&'.[*Z )Z][*#*.-(]
](&'Z*]&*'.[*]Z*[P.$
(Ø[W·[[*[Z*)(&(-'Z]&'.[*Z )Z][*#*.-(]
](&'Z*]&*'.[*]Z*[[*Ø).*$


 (Ø[Õÿ*[#Ø[#Ø[(Z**[&Z[ØZ[[]([]
.[+&.*[(Z)Z]](&[]&*'.[*]Z*[P.]Z('0(&Z]
(Ø[XN*[#Ø[#Ø[(Z**[&Z[ØZ[[]([] [*#*.-(]$
.[+&.*[(Z)Z]](&[]&*'.[*]Z*[[*Ø).*]Z('0(&
Z][*#*.-(]$ Q$ÖÊ*').[Ø&&(-'Z][*.*.(*Z][*#*.-(]$
Ù6B;>þ42>Cø9)øû>1¼:1>167;6B8>:1>3B7;98>8?716498> Ä;:;B;=86>7:3==4@691B¼:87874¼8>1=86>491:@1B>42341671
;B>453B;:B;7:;<1=78:4;91>=:47;161B=;>8;671:48:=86B; 5;71:4;BC
946Å54=;91B:8?875@A4B<=867:8B;98:ÄÆC018?>1:A;B;
¼8>4=4@6¿46;B91=167:8915;>;91B:8?875@A4BÁ1B1::8:91 5Þ36;?;>1=4:=3B;:91¼BÅ>74=891Zû=5<919Cü=591
B;¼8>4=4@6<1B78:Â31Â31:1Â341:1=;9;:319;¼;:;:1;B4½;: 1>¼1>8:=8581B=31:¼891B:8?87C
B;7:;<1=78:4;91>1;9;Á:1>¼1=74A;51671C 5Þ36¼;:91BB;67;>=851:=4;B1>Æ3)[$\03¼1:B471
]Ì11B>91Z-C,û=5C
5Þû5878::193=78:1>¼8B8B3øüø4øü-ÆÀ-»55=86
16=891:C
5Þø:319;91=;>78:C



(Ø[ÕYP*)(&(-'\(']Z]&'.[*Z )]](&[]&*'.[*]Z*[ 
P.]Z('0(&Z][*#*.-(]$ (Ø[Õ"N^().\[*'.]Z[*.*.(*Z[*#*.-(]$
Ù6B;þ42Cøü>1¼:1>167;1B¼:87874¼8¿46;B91:8?875@A4B
Â31>1=86>7:3<@C

ÛÜÜÝÞßààáâãããä åæÞ_ çèéèêëìíÞîèíèéïðñìíÞòÞßóäôõÞÜöåÛå
01023456819 4442 3162413 5 42 595 59819562040
8161410318113 55 502319260 42



T$ÖÊ*'&]Ø)(-' ÷-ù4Cj31ÁþÁË;62Á[C»43Á[Cj;8CIƒÓŠˆ˜£gˆƒÒŒ¯b
˜ˆ˜‡b˜¦bƒb˜µ˜‡˜˜™Œb™˜Œ‡Šb˜˜ˆ´bƒÒŽˆŠ––Œ¯b
ý858>1;¼:1=4;16B8>:1>3B7;98>91B;>>453B;=4861>>1 Òú¼Œ¼Š™ƒ
B419ˆŒú:Žb7Œ4¿4ˆ=˜4b;‰B£;6ƒ71™Œ
BB42Ž1b6ь
=1ˆµÁbË;
†<B8А:ˆi
ƒŒþb:‰;Œ6Ž=ˆ†4>c:
ƒ83мޡÁb
B82:@91>;::8BB;:36;1>7:3=73:;91=867:8B=863651¾8: û`9Cþ
øûC$1
C <1>ý8:71>C“ƒˆ‡ƒbƒ–‡Œƒ‰˜bƒb˜‘ˆŒƒb£b
91>15¼1Ã8Â311B=867:;B8:ÄÆCúB=85¼;:;:B;þ42>C-<ø9 ÷2ù“Š ƒˆ‘ŒƒCøaÙ9CúB¿;8512;Á¼¼Cø22)ø-9Áû9øûC
>18?>1:A;36;5;<8:1À;=7473991B=867:8B;98:91>;::8BB;98 ÷3ùþC$1<1>ý8:71>Á`Cý49486¾;:;½ÁÙb;:2;>0878C
16B;3?4=;=4@6¿46;B91B=167:8915;>;91B:8?875@A4BÁ16 “Š¿;ƒ8ˆ51‘2Œ;Áƒ´¼b‹˜
B;>þ42>C2<øø>18?>1:A;Â311B1>7;987:;6>478:48Â31
¼:1>167;1B=867:8B;98:ÄÆ1>5Å>=8:78Â311BÂ31¼:1>167; úB ¼Cû-ˆÁ˜‡ûb£
9øøbƒ C†ˆ˜™ƒˆŒšƒŒ‘CøaÙ9C
1B=867:8B;98:91>;::8BB;98ÁB8Â31>3¼869:Ú;36;51¾8: ÷ø9ù˜$C ˜ˆŽk1
b™ƒ BB<ÁŒ–bC
†‡ƒ0‰˜;6Š74Ž?ÁÅøÃ;1½Ù9
C‹˜
Cč:1ˆ6˜74‡=b1‰Šd;
b™˜BBÁžŒ¼™Œ
¼CŠüˆ2˜)b‰üŠÁb
:1>¼31>7;91B=867:8B;98:ÄÆÁB8=3;B:1>3B7;1::@618¼31>78 ø2ü)ø2-Áû99üC
Â31Á;B=85¼;:;:B;>þ42>C3<øû>191531>7:;Â311B 
=867:8B;98:ÄÆ:1Â341:13678:Â315ÅÀ45891ø6C¼;:; 
:1;B4½;:B;7:;<1=78:4;91>1;9;¼8:>1:36=867:8B;98:68 
;=87;98Á<;36Â311B5878:68>1;=;¼;½91¼:8¼8:=486;: 
94=Ì;161:2Ú;Á=861>7;;==4@6>1B11À4217:;?;¾;:16B;½86;
91>;73:;=4@6365;<8:7415¼8Á;¿1=7;98;>Ú1B7415¼891 
A49;91B5878:CÙ>7868>3=191161B=;>891B=867:8B;98: 
Â31>191>;::8BB@91?498;Â31¼8:94>1Ã8Á>1B4547;B; 
161:2Ú;Â311B=867:8B;98:¼31911À424:B1;B5878:Á16B8> 
:1>3B7;98>>18?>1:A;Â311B78Â315ÅÀ458Â31:1Â341:1=86 
1B=867:8B;98:94>1Ã;981>91øCû6Á¼8:B87;678Á>1 
=85¼:31?;Â31631>7:894>1Ã8741613651¾8:91>15¼1Ã8C
ý8587:;?;¾8;¿373:8>145¼B15167;:Å1B;B28:4758 
94>1Ã;98161B¼:87874¼8Â31>1=86>7:3<@ÁB8Â31¼1:5474:Å 
=85¼:8?;:B8>:1>3B7;98>8?716498>16B;>>453B;=4861><16 
=;>891>1::1Â31:498>1:1;B4½;:;6B;>;91=3;=4861> 
¼1:7461671>C 

$ÙþÙ$Ù6ý;ú0 
 

Þ
÷øù`CþC$1<1>ý8:71>Áǘ‘ˆŒƒ´b‹˜ˆ˜‡b‰Šbǘ˜ˆŽb 
“ƒŒ–†‡ƒ‰˜ŠŽÁøaÙ9CúB¿;8512;Á¼¼Cøüø)øüüÁûø) 
üû-Áüü,)ü2ûÁü3)2,Áû9øøC 
÷ûùÄ1:1½ú::123Ú6ÁË8A;:ú::4;2;Áb4BB;>1Ã8:ý;::4BB8Á 
c8::8>7417;d3:7;98ÁÄ19:;½;\:712;Áb;:2;>0878Á 
$;58>ú::123Ú6Á08785;<8:\B5198Cǘ˜ˆb“‘žŒ‡b‰Šb 
Iƒ Œ‘b³Œ¦ŠŠŒƒ‡b ˜bŸ‡ƒˆƒ¦˜™ƒb‰Šb‹˜ˆ˜‡b 
“˜‰†‡ƒb–ƒƒb®žŠŽˆŒ¯ƒŒ‘b£b³ŠŽƒ˜‡‡˜be¯Œ‡b‰Šb 
Ÿ˜£Šˆ˜ŽÁ¼¼C-2Á-3C364A1:>49;9ú37@685;91 
f31:17;:8û9øøC 
÷üùúC\BB1:8[;73:861Á$8?@74=;44;64¼3B;98:1><:8?87> 
5@A4B1>ÁøaÙ9C4;:=85?8Á¼¼Cû2)ü9Áû2Áû3Á 
[;:=1B86;û99øC 
÷2ù‰$C 
Œ¦¦ŠÆÌ
Š;ˆŒ8ƒ3‡g;‰94ŒÁžŠúCú?3Œ‡Šd;
b™˜ b˜7;?˜Cˆ޳£
b†ŽŒƒ™Œ
¯b‡bƒ™˜
¯ƒ‰Š¯‡‡ŠŒbƒ
¯b˜‰¦bb

ŠÑˆ˜gІ‡Šb™Šˆµ˜‰˜‡˜¯ŒŠŽ´bƒb†Œ¦ŒŠ‰b¦ƒ™ŠÑ˜ÒCú9A 
$8
÷ùhC ?8ýÌ7ú3167Á85CþCûd;9ø8üÁC[C
4;CŸŠŒ˜‰ŒbŠžŠˆgˆŒ¯¯ŠŠ‰b
˜˜–АƒˆŒžŠb˜ˆ˜‡b˜¦b™†‡ˆŒ–‡Šb˜gµ˜‡˜˜™ŒbѵŠŠ‡Š‰b 
™˜Œ‡ŠC;ÙËý867:8BËÌ18:<iú¼¼B4=;7486>:8?87>C 
û9ø-C 
÷,ù$C01:Í;<Á`C`1Í177CŸµ£ŽŒŽb¦˜b¢ŒŠˆŒŽˆŽbƒ‰b 

û
-2¯)Œû3ŠŠ,ŽCb30
ьˆúµb“˜û99‰2АCbŸµ£ŽŒŽÁ-;Ù9CËÌ85>86Á¼¼C 

ÛÜÜÝÞßààáâãããä åæÞô çèéèêëìíÞîèíèéïðñìíÞòÞßóäôõÞÜöåÛå
Publicaciones 80

B.2. ECITEC 2017.


3

 

1











567895 9 7 5
9 756 57 
56895









4




!"#$%&#'($)*!+*,')*#,-.$/0)
12#!3,*,43!#','#1$5#-#)*,3#,,/,),-+,#3
6789:;<=>7?=@A:?8B8=:CD78EF:CGHI@JKL:?878=@M:N:JO@?PKJHI@JKM7QR8<S>9T7?
O>:8E7HU7?9E7?Q:8O@?PKJDB8EF:C

GL7E>;
P7==:O9:8E97J=:;7<;:EP?R89E7HU7:JP?V7:8O9:8E97J=:;7<;:EP?R89E7@WE9R8X>P@Q7P9C7E9R8Y
Z:8:QK?9P7[89\:?J9=7=X>PR8@Q7=:]>:T;7YX\YD78O;7>=9@NGD>?D^_OY[YO@;YI7?=98:J=:D78
U78>:;HOY]Y`a`bH]>:T;7H]>:YHUKc9E@Y
d
8JP9P>P@=:L9J9@;@SV7YZ:8:QK?9P7[89\:?J9=7=X>PR8@Q7=:]>:T;7YX\YGeD>?fbGHOY[YO@;YI7?=98:J=:
D78U78>:;HOY]Y`a`bH]>:T;7H]>:YHUKc9E@Y


/ -.& $ghijkilminolplkqliqorsrtuiplilvnuklilmiwxplyuzimri{ukpqo|{{x}kzilmi~uwlmrwuiwxk~x{ui€ilmi{ukqoumi
wli|kiousuqi~}xmi‚|linlo~xqlirsuowroilminousml~ri~uquoi‚|linolplkqrilmi~|qrkqliwli~xlmxkriwlku~xkrwri
orqriqrxlnƒi„ukilmi|puiwlmi~uwlmuiwxk~x{uiwlprooummrwuziplipx~|mri|kriqor€l{quoxri{ukiwupirmuoxq~upiwli
{ukqoumi€imupiolp|mqrwupiusqlkxwupipli~|lpqorkilkio†x{rpi‚|linlo~xqlki{u~nroroilmiwlpl~nlyuiwli{rwri|kui
€zinrori†xkrmx‡roiplinolplkqrkix~lklpiwlminouquqxnui{ukpqo|xwuƒiii
ˆ,!,0*,-'!,2‰M@T@PQR\9;Š=98BQ9E7Š7;S@?9PQ@J=:E@8P?@;ŠE@8P?@;=:P?7N:EP@?97ŠqrxlnŠQ9:;987Y


40-)*,')gi‹kiqŒxpiuoŽilinolplkqiqŒliwlpxkzi{ukpqo|{qxukziw€kr~x{i~uwlmxkirkwi{ukqoumiu†iri~usxmliousuqi
qŒrqirmmupi|piquiqr{ŽmliqŒli~uquoinousml~iqŒrqinolplkqpiqŒli~€lmxki~|qrkqi{rmmlwiorqiqrxlnƒixqŒiqŒli|pliu†i
qŒliw€kr~x{i~uwlmiqŒrqiliwllmunlwzilipx~|mrqliriqortl{quo€ixqŒiqui{ukqoumirmuoxqŒ~pirkwiqŒliolp|mqpi
usqrxklwirolipŒukixkiornŒpiqŒrqirmmui|piqui{u~nroliqŒlinlo†uo~rk{liu†ilr{Œiuklƒixkrmm€ziqŒlix~rlpiu†i
qŒlinouquq€nlirolipŒukƒi
‘’*-‰U@T9;:?@T@PŠ=N87Q9EJŠE@8P?@;7;S@?9PFQJŠP?7“:EP@?NE@8P?@;ŠqrxlnŠQN:;98Y








g” •$)*.''#1$ N?@T>JP:CžN;@JQKP@=@J=:J98P@89C7E9R8=:


S7878E97JY
–7?7P7P79:W:J>8Q>P78P:8:>?@;RS9E@
E7?7EP:?9C7=@W@?Q9:;989C7E9R878@?Q7;N Ÿg”(#$&%)#',#$%&#',
W@JP:?9@?=:JQ9:;989C7E9R8=:;J9JP:Q78:?\9@J@
E:8P?7;—G˜Y]?:J:8P7>8JV8=?@Q:Q@P@? E98O:@QB 8T7J::8;7š9S>?7G7žHJ:=:JE?9T:;7
W?@S?:J9\@E7?7EP:?9C7=@W@?P:QT;@?:JH7P7c97H £¦¬­§¨©P9EN7¨= 9š:?:8E97;E@8 ¡¢£¤¥¦§¨©ª«¡¢
¡¢®H=@8=:¯¢°±ª«²³́?:W?:J:8P7
:W9J@=9@J=:98Q@\9;9=7=H:W9;:WJ97NW7?B;9J9J=: ;7W@J9E9R8=:;?@T@PH¨:J;7@?9:8P7E9R8H£N®J@8
;@JQ9:QT?@JW@JP:?9@?:J—˜YD:F78=:J7??@;;7=@ :JP?7=7J=:E@8P?@;=:\:;@E9=7=;98:7;N78S>;7?
W@E@J=9JW@J9P9\@J@Q:E789JQ@J™>:W:?Q9P:8 ?:JW:EP9\7Q:8P:H™>:W>:=:8J:?:cW?:J7=7JE@8
:JP>=97?;@JP?7JP@?8@J™>:W?:J:8P7;7?7P7P79:WH ;7:E>7E9R8GžY
\:?P?7T7“@=:I:ššXY_:JJ;:?—˜YZ7“@:JP:
E@8P:cP@J:>T9E7;7W?@W>:JP7=:;W?:J:8P: £¢µ¶·µ¸¢º»¡¶·»¡¸ª®¢µ¶¼µ¸¢º»¡¶¼»¡¸ªGž
P?7T7“@HE>N7Q@P9\7E9R8W?98E9W7;?7=9E7:8:; ¹ ¹ ¹ ¹
=9J:›@HE@8JP?>EE9R8HQ@=:;7=@=98BQ9E@N =@8=:½¡¾N½¡¿J@8\:;@E9=7=:J78S>;7?:JNº:J:;
E@8P?@;=:>78ž
?@T@PQR\9;™>:W:?Q9P:Tž
7T@?=7?:;
W?@T;:Q7 Q@P@? Q:=978P: >87 ?>P987 ?7=9@=:;7J?>:=7JY
W?@S?7Q7T;:™>:7W;9™>:>87:JP9Q>;7E9R8
?:W:P9P9\77;7:cP?:Q9=7==:>87?7P7J787@>87
?7P7P79:WH:Q>;78=@>87š9J9@P:?7W97E@8
Q@\9Q9:8P@J7;P:?878P:J=:š;:c9R8N:cP:8J9R8H
Q:“@?78=@7JV;7P?78JQ9J9R8=:9QW>;J@J
8:?\9@J@J7;@;7?S@=:;7J8:>?@87JH;@™>:W>:=:
7N>=7?7Q78P:8:?;7Q9:;987@:\9P7?™>::;
W?@T;:Q7:\@;>E9@8:Y
D::;9S::;?@T@PQR\9;=:P?7EE9R8=9š:?:8E97;
=:T9=@7™>:W@J::>8:JW7E9@=:P?7T7“@
9;9Q9P7=@H:8E@QW7?7E9R87;@J?@T@PJ
Q789W>;7=@?:JNW>:=:8?:7;9C7?Q@\9Q9:8P@J:8
;V8:7?:EP7HS9?7?J@T?:JVQ9JQ@NP?7C7?E>?\7J—e˜Y
]7?7;;:\7?7E7T@J>E@8P?@;=:Q@\9Q9:8P@J:
š@?Q>;78;:N:J=:E@8P?@;™>:W:?Q9P77;\:FVE>;@ 
J:S>9?=:š@?Q77>PR8@Q7>87P?7N:EP@?97=: 5#À.*,g7žD9JP:Q7J=:E@@?=:87=7JÁ²§Â²ªÃ²ªÄ²©H
?:š:?:8E97—a˜H;@E>7;?:J>;P7E@QW;9E7=@Y–@J Á§ÂªÃªÄ© N Á§Â ªÃªÄ© =:JE?9T:8 :;
?:J>;P7=@J™>:J:W?:J:8P78=:Q>:JP?78;7 =:ÅJW;Å7C7ÅQ9:Å8P@N;7@?9:¹8P7¹E9R¹8=:¹;QR\9;YÆÇ=9JP78E97
E@QW;:“9=7==:?:7;9C7?:;E@8P?@;=:;@J?@T@PJ :8P?:;7J=@J?>:=7J=:P?7EE9R8Hƺ=9BQ:P?@=:;7J
QR\9;:JHN7™>::JP@J=:W:8=:8=:=9JP98P@J ?>:=7JNÇÅ=9JP78E97=:;E:8P?@=:Q7J77;:“:=:
š7EP@?:JE@Q@;@J@8œ:;:JP>=9@7=:E>7=@=:;7 ?@P7E9R8=:;7J?>:=7JYTž697S?7Q7=:E>:?W@;9T?:=:;
E98:QBP9E7H=:T9=@7™>:;7E@8š9S>?7E9R8:;:S9=7 QR \9;YÈÉ¿NÈɾJ@8š>:?C7J;@8S9P>=987;:JHȱ¿Nȱ¾J@8
=:?@T@PQR\9;=:P:?Q987?7:;P9W@=:?:JP?9EE9R8 š7>E::?;:C7?7JE;79@P8::?7J;:=J:H;£EÉ:N8P£?±@J=@:8Q7
\:;@E9=7=:JHÊÉNʱJ@8;7J
J7Y
E@8;7J™>:E>:8P:J>Q@\9Q9:8P@?:JP?9EE9@8:J
8@F@;@8RQ9E7JžH:;P9W@=:E@8P?@;7=@?7W;9E7=@ 6:;Q9JQ@Q@=@J:=:š98:8;7JE@QW@8:8P:J=:;
:;P9:QW@=:?:JW>:JP7HJ>:c7EP9P>=H=:J:QW:›@ E:8P?@=:Q7J7E@8;7J9S>9:8P::E>7E9R8œ




 ¹¢ ²ËÇŤ¥¦§¨©ª«¹¢«²ËÇŦ¬­§¨©Ìž –7J?:JP?9EE9@8:J8@F@;@8RQ9E7J98P?@=>E9=7J7
L>8=7Q:8P7=@:8—f˜H:;Q@=:;@=98BQ9E@J: > 889\:;E98:QBP9E@J:?:W?:J:8P78E@8;7
:E>7E9R8GGžY
=:J7??@;;7W@?:;QKP@=@=:_:ÍP@8Î<>;:?W7?7;@
E>7;J:?:™>9:?:>8=97S?7Q7=:E>:?W@;9T?:\:?  °¡¤Ñ«¡¤Ñ̈¡Ñ³ÑËѰ¤¥¦Ñ§¨©ÑåѦ¬­Ñ§¨©ÑåÑåÑæÑ³°£Ñ®Ñ³GGž
š9S>?7GTžžYD:?:W?:J:8P7;7W@J9E9R8=:;E:8P?@
=:Q7J7=:;QR\9;:QW;:78=@E@@?=:87=7J X;?:;7E9@87?;7J:¡E>7E9@8:JžNGGžJ:@TP9:8:
W@;7?:JHÏТϧ¤¥¦§¨©Ë¬¦¬­§¨©©Ñ¢ÑÏÒÓÔH™>:7; ™>:«¡Å¢£±ÙÇ Å¨ N7;9S>7;7?;77E:?@J:W?>:T7
=9š:?:8E97?=7EÕ@Q@?:J>;P7=@;7\:;@E9=7=ÏС¢ ™>:£±¢ÇŨ¡H=:Q@JP?78=@7JV™>::;?@T@P8@
ÑÏ¡ÒÓÔËϨ¡ÒÓ§Ô·Ö©N;77 E
:;:? 7
E 9
R 8×
ÏØ¢§ÏØÙ W>:=:=:JW;7C7?J:;7P:?7;Q:8P:HW@?;@P78P@H;7J
:E>7E9@8:JážNGbžJ:?::JE?9T:8=:;7J9S>9:8P:
Ϩ¡Æ©Ò¬¨Ë§ÆÏ¡¨¡ËϨةҬ§¨ËÚÆ©YO@8;@78P:?9@?HJ: š@?Q7œ
=:š98:8;7J\:;@E9=7=:JN7E:;:?7E9@8:J™>:J:
:JW:E9š9E78:8:;=97S?7Q7=:E>:?W@;9T?:E@Q@  £É¡¢Þ߸¼Þ à ËÇŨ ª
ß¶ ¡¹ Gž
J:@TJ:?\77E@8P98>7E9R8œ
 £É¢Ï¡Û Ñ£¡É¢ÏتÑ ž  §ÝçËÜǹũ¨ØÙÜÇţɨ¡¢èâ§é¿Ù龩̝Gž
 £±¢Ï¨¡Û Ñ£¡±¢Ï¡¨¡ËϨØ ež –7J:E>7E9@8:J78P:?9@?:JJ:W>:=::cW?:J7?=:
š@?Q7Q7P?9E97;E@Q@J:@TJ:?\7:8;7:E>7E9R8
ÊÉ¢ÏØÙϨ¡¹Û ÊÉ¢£¡ÉÙ£±¨¡ªaž GežY
ʱ ¢ÆÏ¡¨¡ÙϨØÛ ʱ¢£¡±Ë£É¨¡Ñ̝fž °ÜÑ
åÑ
åÑ
ݤËÜÇÆæÑ ³°£¡êÑ̈ØÑ³Ë °åÑÙÜÇæ¨¡ÑÜÇæ¨¡Ñåѳ°£êÑ̈¡Ñ³¢
æ
° æÑ
æÑ
ÇÑÙÇ Ñ³ ° é Ñ
Ýé ë ѳÌ Gež
<JW@J9T;:F7;;7?;7?:;7E9R8:8P?:P@?™>:JH º
š>:?C7JN7E:;:?7E9@8:J7;:cW?:J7?;7J:S>8=7;:N ìg”/ -.!),-
=:_:ÍP@8J@T?::;J9JP:Q7=:?:š:?:8E97ÁÅYD: <8;7Jš9S>?7JžÎežJ:W?:J:8P78;@J?:J>;P7=@J
E@8J9=:?7ÜE@Q@;7Q7J7P@P7;=:?@T@PQR\9; =:;7JJ9Q>;7E9@8:J=:Q@=:;@=98BQ9E@:8
;;78P7JHE>:?W@N7EP>7=@?:Jž:Ý¢ÝËÜǹÅE@8
;@™>:J:=:š98:;7=98BQ9E7=:;\:FVE>;@E@Q@J: WE@?@8W“>>8:PJ@P77;=E:@E8@P?8@P;?7@=;7@=?@]?6é¢íî§ïð©Ùíµ§ï¡©N7;7
@TJ:?\77E@8P98>7E9R8Y
±ñòÖѧóð©Ñ µ Å·ç±ñòÖѧóð©Ñ 
é¢íîç±Åñ·ç òѧóð©ÑñÓôòѧó¡©Ùí ç±ñòѧóð©ÑñÓôòѧó¡©Y
 ÈÉ¿ËÈɾ ¢ÜÊɪȱ¿Ùȱ¾Ñ¢ÑÜʱH`ž
 ݨآ§ÈÉ¿ÙÈɾ©Ç˧ȱ¿Ùȱ¾©ÇÅY ž 
D:J>JP9P>N:8;7J:E>7E9@8:JažNfž:8;7J
:E>7E9@8:J`žNžH=:š989:8=@7JV;@J9S>9:8P:œ
 £¡É¢Þ߸·Þ ¡ ±¢Þ߸¼Þ
à Ë£±¨ª£¡
ß¶
à Ù£±¨Ñ
ß¶ ¡áž
¨Ø¢¿ã·àâ â §È ÙÈ ©Ë âä §È ÙÈ ©Y
Öä É¿ ɾ ¿ã·àâÖä ±¿ ±¾  Gbž


e



7ž Tž

 
5#À.*,Ÿg]@J9E9R8š987;=:;E:8P?@=:Q7J7Ν7žE@8;7 5#À.*,õgö@?™>:?:™>:?9=@W@?;7?>:=7=:?:EF7W7?7
W?@W>:JP7=:E@8P?@;7=@?NTžE@8:;E@8P?@;7=@?]6Y ?:7;9C7?;7P?7N:EP@?97=:J:7=7÷7žE@8;7W?@W>:JP7=:
E@8P?@;7=@?NTžE@8:;E@8P?@;7=@?]6Y
D:;;:\R7E7T@;7E@8JP?>EE9R8=:;W?@P@P9W@=:
?@T@PQR\9;7JVE@Q@:;=9J:›@:98JP?>Q:8P7E9R8
=:;7:P7W7=:W@P:8E97W>:8P:Až™>:8@J
W:?Q9P9?B8HE@Q@P?7T7“@7š>P>?@H?:7;9C7?;7J
7ž Tž W?>:T7JšVJ9E7J=:;E@8P?@;=:P?7N:EP@?97\:?
š9S>?7ežY
õg”($'!.-#$-
]7?7;7:P7W7=:J9Q>;7E9@8:JJ:=:š989R>87
P?7N:EP@?97?:EP7E@8989E9@:8cHNžøbHbžEQNš98
 cHNžøabHbžEQYXQT@JE@8P?@;7=@?:J?:7;9C7?@8;7
5#À.*,ìg<??@?:8:;=:JW;7C7Q9:8P@J@T?::;:“:cΝ7ž P?7N:EP@?97=:J:7=7;;:S78=@7;=:JP98@E@Q@J:
E@8;7W?@W>:JP7=:E@8P?@;7=@?NTžE@8:;E@8P?@;7=@? @TJ:?\7:8;7š9S>?7Y–7?:JW>:JP7=:;]6
]6Y W?:J:8P7>8:JP7=@P?78J9P@?9@QBJE@?P@\:?
š9S>?7žHJ98:QT7?S@H?:™>9:?:=:>87J:›7;=:
 E@8P?@;P@?™>:žQBJS?78=:\:?š9S>?7ežH:8
 E@QW7?7E9R87;7;S@?9PQ@=:E@8P?@;W?@W>:JP@H
W@?J:?>8E@8P?@;7=@?8@7E@P7=@Y<JP77EE9R8
7E@?P7:;P9:QW@=:\9=7=:;@J7EP>7=@?:JW>:JP@
™>:?:™>:?9?B8P?7T7“7?:8;7C@87=:J7P>?7E9R8
W7?7E>QW;9?J>@T“:P9\@YO@Q@P?7T7“@7š>P>?@J:
?:7;9C7?B8W?>:T7JšVJ9E7J™>:W:?Q9P9?B8:Q>;7?;7
P:?7W97?:™>:?9=7N:\7;>7?;@J?:J>;P7=@J™>:
W?:J:8P::;?@:=@?Y

a

Apéndice C

Firmware

C.1. Firmware para la adquisición el procesamiento de


señales de la aplicación móvil

int i=0, j=0, repeticiones=0, distancia=0, PWM1=0, PWM2=0,


PWM3[]={0,110,140,205}, PWM4[]={0,180,235,253},
configuracion[3];//declaracion devariables
void setup()
{
Serial.begin(9600); //inicializando el puerto serial
pinMode(4,OUTPUT); //Pin giro atras.
pinMode(5,OUTPUT); //PWM
pinMode(6,OUTPUT); //Pin Giro adelante.
pinMode(7,OUTPUT); //Pin Giro atras.
pinMode(8,OUTPUT); //PWM
pinMode(9,OUTPUT); //Pin Giro adelante.
}
void loop()
{
delay(300);
while(Serial.available()>0)
{
for(i=0;i<3;i++)
{
configuracion[i]=Serial.read(); //leyendo los parametros de

87
Firmware 88

configuracion, inicio y alto de la rutina


}//fin for
if(configuracion[0]==8 && configuracion[1]==0 && configuracion[2]==0)
{
repeticiones=0; //reseteando
distancia=0; //las variables
PWM1=0; //de configuracion.
PWM2=0;
analogWrite(5,PWM2);
analogWrite(8,PWM1);
alto();
configuracion[0]=0; //restableciendo
configuracion[1]=0; //los parametros
configuracion[2]=0; //de configuracion.
Serial.println("detener terapia");
break;
}
else if(configuracion[0]==9 && configuracion[1]==0 &&
configuracion[2]==0)
{
for(j=0;j<repeticiones;j++)
{
for(i=0;i<3;i++)
{
configuracion[i]=Serial.read(); //leyendo los
parametros de configuracion, inicio y alto de la rutina
}//fin for
if(configuracion[0]==8 && configuracion[1]==0 &&
configuracion[2]==0)
{
alto();
configuracion[0]=0; //restableciendo
configuracion[1]=0; //los parametros
configuracion[2]=0; //de configuracion.
Serial.println("terapia detenida");
break;
Firmware 89

}
else
analogWrite(5,PWM1);
analogWrite(8,PWM2);
adelante();
delay(distancia*200);
alto();
atras();
delay(distancia*190);
alto();
Serial.print("rep: ");
Serial.print(repeticiones);
Serial.print(" ");
Serial.print("PWM izq: ");
Serial.print(PWM1);
Serial.print(" ");
Serial.print("PWM der: ");
Serial.print(PWM2);
Serial.print(" ");
Serial.print("dis: ");
Serial.print(distancia);
Serial.print(" ");
Serial.print("rep act: ");
Serial.println(j);
}
alto();
configuracion[0]=0; //restableciendo
configuracion[1]=0; //los parametros
configuracion[2]=0; //de configuracion.
Serial.print("rep: ");
Serial.print(repeticiones);
Serial.print(" ");
Serial.print("PWM izq: ");
Serial.print(PWM1);
Serial.print(" ");
Serial.print("PWM der: ");
Firmware 90

Serial.print(PWM2);
Serial.print(" ");
Serial.print("dis: ");
Serial.println(distancia);

}//fin de else if
else
delay(10);
repeticiones=configuracion[0]; //Asignando los parametros
PWM1=PWM3[configuracion[1]]; // de configuracion para
PWM2=PWM4[configuracion[1]];
distancia=configuracion[2]; // ejecutar la rutina.
Serial.print("rep: ");
Serial.print(repeticiones);
Serial.print(" ");
Serial.print("PWM izq: ");
Serial.print(PWM1);
Serial.print(" ");
Serial.print("PWM der: ");
Serial.print(PWM2);
Serial.print(" ");
Serial.print("dis: ");
Serial.println(distancia);
//fin if
}//fin while 1
}//fin void loop
void adelante(){ //Funcion adelante
digitalWrite(4,LOW);
digitalWrite(6,HIGH);
digitalWrite(7,HIGH);
digitalWrite(9,LOW);
}
void atras(){ //Funcion atras
digitalWrite(4,HIGH);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
Firmware 91

digitalWrite(9,HIGH);
}
void alto(){ //Funcion alto
digitalWrite(4,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(9,LOW);
}

C.2. Firmware para realizar la simulación del modelo


dinámico.
clc
clear all
close all
format short

global q1 q2 qp1 qp2 th R L tau t;


ti=0;
h=0.1;
tf=20;%vector tiempo
t=ti:h:tf;%tiempo de simulacion
%x1p=0;y1p=0;t1p=0;
ci=[0;0;0;0;0];
opciones=odeset(’RelTol’,1e-3,’InitialStep’,1e-3,’MaxStep’,1e-3);
[t,x]=ode45(’control_movil’,t,ci,opciones);

q1=x(:,1);
q2=x(:,2);
qp1=x(:,3);
qp2=x(:,4);
th=x(:,5);

[n,m]=size(t);
xef=zeros(n,1);
Firmware 92

yef=zeros(n,1);
tef=zeros(n,1);
int_trap_x=zeros(n,1);
int_trap_y=zeros(n,1);
int_trap_th=zeros(n,1);
Ix=zeros(n,1); Iy=zeros(n,1);

R=3.81;%radio de las ruedas en cm.


L=8.54;%mitad de distancia entre las rueda en cm.

[xef,yef,tef]=cinematica_movil(R,L,qp1,qp2,th);

for k=1:n
[qtilde,tau]=controlador_movil([q1(k);q2(k)],[qp1(k);qp2(k)]);
tau1(k)=tau(1);
tau2(k)=tau(2);
qtilde1(k)=qtilde(1);
qtilde2(k)=qtilde(2);
[xef(k),yef(k),tef(k)]=cinematica_movil(R,L,qp1(k),qp2(k),th(k));
end

for a=1:n
int_trap_x(a)=trapz(t,xef);
int_trap_y(a)=trapz(t,yef);
int_trap_th(a)=trapz(t,tef);

end

for w=2:n
Ix(w)=Ix(w-1)+h*xef(w);
Iy(w)=Iy(w-1)+h*yef(w);
end

figure
plot(t,qtilde1)
title(’Error de posicion X’,’FontSize’,18)
Firmware 93

xlabel(’tiempo(s)’,’FontSize’,16)
ylabel(’error(cm)’,’FontSize’,16)
grid on
figure
plot(t,qtilde2)
title(’Error de posicion Y’,’FontSize’,18)
xlabel(’tiempo(s)’,’FontSize’,16)
ylabel(’error(cm)’,’FontSize’,16)
grid on
figure
plot(int_trap_x,int_trap_y,’*’,’MarkerSize’,18)
title(’Posicion final del centro de masa’,’FontSize’,18)
xlabel(’Desplazamiento (m)’,’FontSize’,16)
ylabel(’Desplazamiento (m)’,’FontSize’,16)
grid on
figure
plot(t,tau1)
title(’Torque rueda izquierda’,’FontSize’,18)
xlabel(’tiempo (s)’,’FontSize’,16)
ylabel(’torque (x10^{-2} N)’,’FontSize’,16)
grid on
figure
plot(t,tau2)
title(’Torque rueda derecha’,’FontSize’,18)
xlabel(’tiempo (s)’,’FontSize’,16)
ylabel(’torque (x10^{-2} N)’,’FontSize’,16)
grid on

function [qtilde,tau] = controlador_movil(x,xp)


%% vector de posiciones articulares
q1=x(1); q2=x(2);
q = [q1;q2];
%% vector de velocidades articulares
qp1=xp(1); qp2=xp(2);
qp = [qp1;qp2];
%% ganancia proporcional
kp1=55;
Firmware 94

kp2=55;
Kp=[kp1,0;0,kp2];
%% ganancia derivativa
kv1=0.5*kp1;
kv2=0.5*kp2;
Kv=[kv1,0;0,kv2];
%% vector de posiciones deseadas
qd1=2*pi;
qd2=2*pi;
qd=[qd1;qd2];
%% vector de error de posicion
% ERROR GRADOS
qtilde=pi/180*qd-q;
qtgrados=(180/pi)*qtilde;
qpgrados=180*qp/pi;
%% ley de control
%propuesta
% tau1=(Kp(1,1)*((cosh(qtgrados(1))*sinh(qtgrados(1)))/(1+
(cosh(qtgrados(1))^2))))-(Kv(1,1)*((cosh(qpgrados(1))*
sinh(qpgrados(1)))/(1+(cosh(qpgrados(1))^2))));
% tau2=(Kp(2,2)*((cosh(qtgrados(2))*sinh(qtgrados(2)))/(1+
(cosh(qtgrados(2))^2))))-(Kv(2,2)*((cosh(qpgrados(2))*
sinh(qpgrados(2)))/(1+(cosh(qpgrados(2))^2))));
%tangente hiperbolico
% tau1=(Kp(1,1)*tanh(qtgrados(1)))-(Kv(1,1)*tanh(qpgrados(1)));
% tau2=(Kp(2,2)*tanh(qtgrados(2)))-(Kv(2,2)*tanh(qpgrados(2)));
%PD
tau1=(Kp(1,1)*qtgrados(1))-(Kv(1,1)*qpgrados(1));
tau2=(Kp(2,2)*qtgrados(2))-(Kv(2,2)*qpgrados(2));
tau=[tau1;tau2];
end

function xp = control_movil(~,x)
R=3.81;L=8.54;
%% vector de posiciones articulares
q = [x(1);x(2)];
%% vector de velocidades articulares
Firmware 95

qp = [x(3);x(4)];
qp1=x(3);qp2=x(4);
thp=(R/(2*L))*(qp1-qp2);
%% matriz de masas e inercias
M=[786 0;0 954.99];
%% matriz de coriolis y fuerzas centrÃpetas
C=[0 -707.4*thp;707.4*thp 0];
%% obtencion del control
[~,tau]=controlador_movil(q,qp);
%% vector de aceleracion articular
qpp=M^(-1)*(tau-C*qp);
%% vector de salida para ode45
xp=[qp1;qp2;qpp(1);qpp(2);thp];
end

function [x1p, y1p, t1p]=cinematica_movil(R,L,qp1,qp2,th)


x1p=(R*(qp1+qp2).*cos(th))/2;
y1p=(R*(qp1+qp2).*sin(th))/2;
t1p=(R*(qp1-qp2))/(2*L);
end

C.3. Firmware para el control del robot moóvil.


#include "TimerOne.h"
#define AI 19//variable para lectura encoder A rueda izquierda.
#define BI 18//variable para lectura encoder B rueda izquierda.
#define AD 3 //variable para lectura encoder A rueda derecha.
#define BD 2 //variable para lectura encoder B rueda derecha.

int serial=0, lectura=0, lectura1=0,PWMI,PWMD;


long contador_I=0, contador_D=0, SAI=0, SBI=0, SAD=0, SBD=0;
float posicion_actual_I=0, posicion_anterior_I=0, posicion_deseada_I;
int error_posicion_I, velocidad_I=0;
float posicion_actual_D=0, posicion_anterior_D=0, posicion_deseada_D;
int error_posicion_D, velocidad_D=0;
float tau_I=0, tau_D=0, kpi=0, kvi=0, kpd=0, kvd=0;
void setup()
Firmware 96

{
Serial.begin(115200);//Inicializacion puerto serial.
pinMode(2,INPUT); //Pin de Lectura AI Encoder (Declaracion como entrada).
pinMode(3,INPUT); //Pin de Lectura BI Encoder (Declaracion como entrada).
pinMode(18,INPUT); //Pin de Lectura AD Encoder (Declaracion como entrada).
pinMode(19,INPUT); //Pin de Lectura BD Encoder (Declaracion como entrada).
pinMode(4,OUTPUT); //Pin Giro atras.
pinMode(5,OUTPUT); //PWM. //
pinMode(6,OUTPUT); //Pin Giro adelante. //Ruedas
pinMode(7,OUTPUT); //Pin Giro atras. //Traccion
pinMode(8,OUTPUT); //PWM. //
pinMode(9,OUTPUT); //Pin Giro adelante.
//Lectura A como interrupcion.
attachInterrupt(digitalPinToInterrupt(AI),lecturaAI,CHANGE);
//Lectura B como interrupcion.
attachInterrupt(digitalPinToInterrupt(BI),lecturaBI,CHANGE);
//Lectura A como interrupcion.
attachInterrupt(digitalPinToInterrupt(AD),lecturaAD,CHANGE);
//Lectura B como interrupcion.
attachInterrupt(digitalPinToInterrupt(BD),lecturaBD,CHANGE);
Timer1.initialize(50000);//Incializacion de Timer1 a 50 milisegundos.
Timer1.attachInterrupt(controlador);//Lectura de Timer1 como Interrupcion.
}
//////////////////LECTURA DE ENCODERS////////////////////////////
//Funciones para conteo de lecturas de acuerdo al sentido de giro.
void lecturaAI()
{
SAI=digitalRead(AI);
contador_I += (SAI != SBI) ? +1 : -1;
}
void lecturaBI()
{
SBI=digitalRead(BI);
contador_I += (SAI == SBI) ? +1 : -1;
}
void lecturaAD()
Firmware 97

{
SAD=digitalRead(AD);
contador_D += (SAD != SBD) ? +1 : -1;
}
void lecturaBD()
{
SBD=digitalRead(BD);
contador_D += (SAD == SBD) ? +1 : -1;
}
void controlador()
{
//Funcion para obtener Posicion y Velocidad actual, Error de posicion
y TAU de ambas ruedas.
//Conversion para obtener posicion en grados de la rueda izquierda.
posicion_actual_I=(contador_I*0.0428571429);
// Calculo del error de posicion de la rueda izquierda.
error_posicion_I=posicion_deseada_I-posicion_actual_I;
// Calculo de la velocidad de la rueda izquierda.
velocidad_I=(posicion_actual_I-posicion_anterior_I)/0.05;
posicion_anterior_I=posicion_actual_I; // Posicion anterior
//Conversion para obtener posicion en grados de la rueda derecha.
posicion_actual_D=(contador_D*0.0428571429);
// Calculo del error de posicion de la rueda derecha.
error_posicion_D=posicion_deseada_D-posicion_actual_D;
// Calculo de la velocidad de la rueda derecha.
velocidad_D=(posicion_actual_D-posicion_anterior_D)/0.05;
posicion_anterior_D=posicion_actual_D; //Posicion anterior.
/////// Calculo de torque para la rueda izquierda //////
tau_I=kpi*(tanh(error_posicion_I))-kvi*(tanh(velocidad_I));
/////// Calculo de torque para la rueda derecha ////////
tau_D=kpd*(tanh(error_posicion_D))-kvd*(tanh(velocidad_D));

if (tau_I==0)
{
digitalWrite(4,LOW);
analogWrite(5,0);
Firmware 98

digitalWrite(6,LOW);
}
else if (tau_I>0)
{
if(tau_I>3)
{
tau_I=3;
}
digitalWrite(4,LOW);
digitalWrite(6,HIGH);
PWMI=map(tau_I,0,3,40,255);
analogWrite(5,PWMI);
}
else if(tau_I<0)
{
if(tau_I<-3)
{
tau_I=-3;
}
tau_I=(-1)*tau_I;
digitalWrite(4,HIGH);
digitalWrite(6,LOW);
PWMI=map(tau_I,0,3,40,255);
analogWrite(5,PWMI);
}

if (tau_D==0)
{
digitalWrite(7,LOW);
analogWrite(8,0);
digitalWrite(9,LOW);
}
else if (tau_D>0)
{
if(tau_D>3)
{
Firmware 99

tau_D=3;
}
digitalWrite(9,LOW);
digitalWrite(7,HIGH);
PWMD=map(tau_D,0,3,30,255);
analogWrite(8,PWMD);
}
else if(tau_D<0)
{
if(tau_D<-3)
{
tau_D=-3;
}
tau_D=(-1)*tau_D;
digitalWrite(9,HIGH);
digitalWrite(7,LOW);
PWMD=map(tau_D,0,3,30,255);
analogWrite(8,PWMD);
}
}

//////////////// PROGRAMA PRINCIPAL ///////////////////


void loop()
{
if(Serial.available()>0)
serial=Serial.read();
switch (serial){ //Menu de Seleccion
case ’r’://reset de variables
contador_I=0, contador_D=0, SAI=0, SBI=0, SAD=0, SBD=0;
posicion_actual_I=0, posicion_anterior_I=0, velocidad_I=0;
posicion_actual_D=0, posicion_anterior_D=0, velocidad_D=0;
break;
case ’s’://detener motor
digitalWrite(4,LOW);
analogWrite(5,0);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
Firmware 100

analogWrite(8,0);
digitalWrite(9,LOW);
break;
case ’i’://seleccion de giro izquierda
kpi=1.6949;
kvi=0.41*kpi;
posicion_deseada_I=720;
kpd=1.849;
kvd=0.459*kpd;
posicion_deseada_D=720;
break;
}//switch
}
Bibliografía
[1] J. F. Reyes Cortés, Robótica: Control de Robots Manipuladores, 1a Ed. Alfaomega,
pp 509-546, 2011.

[2] A. Ollero Baturone, Robótica: Manipuladores y robots móviles, 1a Ed. Marcombo, pp.
8-11, 28-30, 258, 259, 2001.

[3] L. I. Gracia Calandín, Modelado cinemático y control de robots móviles con ruedas.
Departamento de Ingeniería de Sistemas y Automática, pp 31, Universidad Politécnica
de Valencia.

[4] Pérez Arreguín, Tovar Arriaga, Villaseñor Carrillo, Gorrostieta Hurtado, Pedraza Or-
tega, Vargas Soto, Ramos Arreguín, Sotomayor Olmedo, Robot Móvil de Tracción
Diferencial con Plataforma de Control Modular para Investigación y Desarrollo Ágil
de Proyectos, pp 78,79. Universidad Autónoma de Querétaro, Facultad de Informáti-
ca, 2011.

[5] C. Canudas de Wit, B. Ciciliano, G. Bastin, Theory of Robot Control, 1a Ed. Springer,
pp 263-386, 1996.

[6] J. C. Moreno, M. Berenguel, F. Rodríguez, J. F. Sarabia, R. Garrote, J. L. Guzmán,


O López, Proyecto de Aplicación de Telerobótica a un Minirobot Móvil, EIWISA,
Madrid, 2001.

[7] E. Grisales Ramírez, Control de un robot móvil en entornos domésticos, pp 1,2. Uni-
versidad Nacional de Colombia, Departamento de Ingeniería Eléctrica, Electrónica y
Computación, 2013.

[8] L. H. Ríos, M. Bueno. Modelo Matemático para un Robot Móvil, pp 13 Universidad


Tecnológica de Pereira, 2008.

[9] M. Roncagliolo, J. Benítez, R Eguibar. Progressive deterioration of central components


of auditory brainstem responses during postnatal development of the myelin mutant
taiep rat, Audiolgy & NeuroOtology pp 267-27, 2000.

101
Bibliografía 102

[10] R. Eguibar, C. Cortés, A. Ugarte, A. León, The myelin mutant rat taiep as a model
of neuroimmunological disease, Advances in Neuroimmune Biology 5. pp 9-17, 2014.

[11] R. Eguibar y C. Cortés. El mutante de mielina taiep como un modelo de crisis de


ausencia,Gac Méd Méx Vol. 146 No. 1, 2010,pp 11, 2010.

[12] J. Nessler, W. Timoszyk, M. Merlo, J. Emken, K. Minakata, R. Roy, R. de Leon,


V. Edgerton, D. Reinkensmeyer, A Robotic Device for Studying Rodent Locomotion
After Spinal Cord Injury, TNSRE, pp. 497-506, 2005.

[13] H. Cruz, Una Introducción a los Robots Móviles, pp. 1-25, 2008.

[14] D. Purves G. Augustine, D. Fitzpatrick, W. Hall, A. Lamantia, J. Mcnamara, S.


Williams, Neuroscience, 3a Ed. Sinauer Associates Inc., pp. 8, 9, 63, 64. 2004.

[15] E. Kandel, J. Schwartz, T. Jessell, Principles of neural science, 4a Ed. McGraw-Hill,


pp. 20, 21. 2000.

[16] R. Urbá-Holmgren, N. Trucios, B. Holmgren, R. Eguibar, A. Gavito G. Cruz A. San-


tos. Genotypic dependency of spontaneous yawning frequency in the rat. Behavioural
Brain Research, pp 29-35, 1990.

[17] B. Holmgren, R. Urbá-Holmgren, L. Riboni, E. Vega-SaenzdeMiera. Sprague Dawley


rat mutant with tremor, ataxia, tonic immobility episodes, epilepsy and paralysis.
Laboratory Animal Science, pp 226-228, 1989.

[18] C. Cortés, B. Gavito, M. Ita, J. Valencia, R. Eguibar. Characterization of the spon-


taneous and gripping-induced immobility episodes on taiep rats, Synapse, pp 95-101,
2005.

[19] B. Grestl, N. Malamund, R. Hayman, P.Bond, Morphological and neurochemical study


of pelizaeus-merzbacher disease. Journal of Neurology, Neurosurgery and Psychiatry
28, pp 540-547,1965.

[20] C. Bonansco, M. Fuenzalida, E. Couve, E. Aliaga, M. Roncagliolo. The taiep rat:


A neurological mutant as a model to understand the role of glial cells in synaptic
transmission, Austral - Asian Journal of Cancer, 2009.

[21] F. Rocha, Análisis de la locomoción en la rata taiep: Rol de las vías inhibitorias, 2013.

[22] J. F. Reyes Cortés, Matlab: Aplicado a la robótica y mecatrónica, pp. 141-188, 2014.
Bibliografía 103

[23] R. Dhaouadi, A. Hatab, Dynamic modelling of differential-drive mobile robots using


lagrange and newton-euler methodologies: a unified framework. Adv Robot Autom,
2013.

[24] X. Chen, F. Hao, B. Ma, Periodic event-triggered cooperative control of multiple non-
holonomic wheeled mobile. IET Control Theory & Applications robots, 2017.

[25] T. Sodolviei, Intriducción a la mecánica de Lagrange y Hamilton, 1a Ed., pp. 70-103,


2013.

[26] K. Wang, X. Jiao, K. Wang, B. Dai, Adaptive optimal kinematic tracking control of
nonholonomic mobile robot. Chinese Automation Congress (CAC), 2015.

[27] M. Yue, F. Tang, B. Liu , B. Yao,Trajectory-tracking control of a nonholonomic mobile


robot: backstepping kinematics into dynamics with uncertain disturbances. Applied
Artificial Intelligence, Taylor & Francis Group, 2012.

[28] R. Serway, J. Jewett, Physics for Scientists and Engineers with Modern Physics, 7a
Ed. Thomso, pp. 278-296. 2008.

[29] F. Reyes Cortés, J. Cid Monjaraz, E. Vargas Soto. Mecatrónica: Control y automati-
zación, 1a Ed. Alfaomega, pp 281-285. 2011.

[30] R. Kelly, V. Santibáñez, Control de movimiento de robots manipuladores, 1a Ed.


Prentice Hall, pp. 34-53, 143-147. 2003.

También podría gustarte