desarrollo de un robot mÓvil terrestre semi- …€¦ · resumen este documento es el informe...

118
DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- AUTÓNOMO CON ACCESO REMOTO Nickson Eduardo García Hernández Cristian Giovanny Molina Hernández Facultad de Ingeniería Ingeniería Electrónica Ibagué, 2019

Upload: others

Post on 28-Oct-2020

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO REMOTO

Nickson Eduardo García Hernández Cristian Giovanny Molina Hernández

Facultad de Ingeniería

Ingeniería Electrónica

Ibagué, 2019

Page 2: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre
Page 3: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO REMOTO

Proyecto de grado. Ingeniería Electrónica. 2019. III

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO REMOTO

Nickson Eduardo García Hernández Cristian Giovanny Molina Hernández

Trabajo de grado que se presenta como requisito parcial para optar al título de:

Ingeniero Electrónico

Director:

MSc. Ing. Harold Fabián Murcia

Profesor Universidad de Ibagué

Facultad de Ingeniería

Ingeniería Electrónica

Ibagué, 2019

Page 4: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre
Page 5: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO REMOTO

Proyecto de grado. Ingeniería Electrónica. 2019. V

Dedicatoria

A mis padres y hermanos

Con amor, respeto y admiración

Nickson García H.

A Dios, mi familia y a cada persona

que me acompaño en este proceso.

Con aprecio

Cristian Molina H.

Page 6: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre
Page 7: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO REMOTO

Proyecto de grado. Ingeniería Electrónica. 2019. VII

Agradecimientos

A mis padres, por todos sus sacrificios, esfuerzos y apoyo brindado a lo largo de todo

este camino, por su amor y entrega incondicional, por estar conmigo en mis éxitos y en

mis fracasos, por su educación y valores inculcados. A mi hermano, por sus enseñanzas

directa o indirectamente. Han sido un ejemplo a seguir para mí.

A todos mis amigos por esos grandes momentos vividos dentro y fuera de la facultad, a

mi compañero de tesis por su gran amistad, apoyo, paciencia, esfuerzo y compromiso

con la culminación de esta meta. A ella, por su amor, apoyo y comprensión en todo

momento.

A toda la planta docente del programa por sus grandes enseñanzas, en especial a

nuestro director de tesis el Ing. Harold Murcia por sus consejos, ayuda y dedicación. Al

semillero de investigación SIRUI adscrito al grupo D+TEC. Este proyecto fue posible

gracias al financiamiento por parte del programa de Ingeniería Electrónica de la

Universidad de Ibagué y del proyecto “Explotación de Ecos Múltiples en la Clasificación

de Nubes de Puntos 3D Generadas a partir de Sensores LiDAR en Aplicaciones de

Agricultura de Precisión”, código 19-489-INT.

A todos, mis más sinceros agradecimientos.

Nickson García H. “Los que tienen su esperanza puesta en Dios renovarán sus fuerzas. Les crecerán alas

como a las águilas; correrán sin fatigarse, caminarán sin cansarse” Isaías 40:31.

Inicialmente agradezco a Dios por la fortaleza y paciencia que me brindo a lo largo de

este proyecto, desde el inicio fue mi guía en momentos de complejidad dándome la vida

y las herramientas para culminar esta meta.

A mi padre por brindarme la oportunidad de realizar mis estudios, por ser un consejero y

estar para mi incondicionalmente. A mi madre por su gran amor, cariño y apoyo en cada

una de las dificultades que surgieron en el camino, porque sin ellos no hubiese podido

finalizar mis estudios y ser la persona que soy hoy por hoy. A mi pareja que a pesar de

las largas horas de trabajo, con su gran amor siempre me apoyo y alentó a seguir

adelante.

A mis amigos que iniciaron conmigo este proceso y me regalaron buenos momentos y

experiencias para recordar. A Nickson por ser un gran amigo durante estos arduos años,

Page 8: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

VIII García Nickson

Molina Cristian

por enseñarme el valor de una amistad sincera, por las grandes anécdotas vividas y por

la perseverancia y compromiso para alcanzar este logro en equipo.

A mi tutor del proyecto, Ing. Harold Murcia por guiarme en el proceso y orientarme de la

mejor manera, por compartir sus conocimientos, experiencias y tiempo. Al semillero de

investigación SIRUI adscrito al grupo D+TEC. Este proyecto fue posible gracias al

financiamiento por parte del programa de Ingeniería Electrónica de la Universidad de

Ibagué y del proyecto “Explotación de Ecos Múltiples en la Clasificación de Nubes de

Puntos 3D Generadas a partir de Sensores LiDAR en Aplicaciones de Agricultura de

Precisión”, código 19-489-INT.

A cada una de las personas, mis mas sinceros agradecimientos.

Cristian Molina H.

Page 9: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO REMOTO

Proyecto de grado. Ingeniería Electrónica. 2019. IX

Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de

un robot explorador terrestre no tripulado, el cual es controlado a distancia mediante una

conexión de red, con acceso a internet para largas distancias, o sin este para un manejo

local, a través de un gamepad conectado a un sistema Linux remoto compatible con

ROS. Existe un gran número de aplicaciones en las que los robots terrestres no

tripulados pueden ser utilizados: agricultura, mapeo de información, transporte o

exploración en ambientes de difícil acceso para el ser humano, de forma que logre

superar los diferentes desafíos que pueda haber en la ruta, teniendo la capacidad de

brindar algunas ayudas al piloto, como lo son transmitir vídeo en tiempo real mediante

una videocámara y un dispositivo Kinect V1, informar sobre su trayectoria recorrida

interpretando los datos obtenidos por la IMU y los encoders, combinándolos mediante un

Filtro Extendido de Kalman; así como una función de control automático de velocidad o la

opción de transportar cargas livianas con un brazo robótico a bordo. En este documento

se describen los métodos utilizados para las etapas de diseño y construcción del

prototipo en sus capas mecánica, electrónica y de software. También se presentan los

resultados obtenidos en pruebas realizadas en diferentes condiciones.

Palabras clave: Vehículo terrestre no tripulado, estimación de posición, ROS,

odometría, control digital, robótica de exploración.

Abstract

This document is the final report of the degree work corresponding to the development of

an unmanned ground exploration robot, which is controlled remotely by means of a

network connection, with access to the internet for long distances, or without it for local

management, through a gamepad connected to a remote Linux system compatible with

ROS. There are a large number of applications in which unmanned terrestrial robots can

be used: agriculture, information mapping, transport or exploration in environments that

are difficult for humans to access, in order to overcome the different challenges that may

exist in the route, having the ability to provide some help to the pilot, as they are to

transmit video in real time through a video camera and a Kinect V1 device, to inform

about their trajectory by interpreting the data obtained by the IMU and the encoders,

combining them through an Extended Kalman Filter; as well as an automatic speed

control function or the option to transport light loads with a robotic arm on board. This

document describes the methods used for the design and construction stages of the

prototype in its mechanical, electronic and software layers. The results obtained in tests

carried out in different conditions are also presented.

Keywords: Unmanned ground vehicle, position estimation, ROS, odometry, digital control, exploration robotics.

Page 10: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

X García Nickson

Molina Cristian

Contenido

Contenido

Resumen ......................................................................................................................... IX

Introducción .....................................................................................................................1

Capítulo 1. Vehículo Terrestre no Tripulado ............................................................5 1.1 Marco Teórico ..................................................................................................... 5

1.1.1 Topologías de Robots Móviles Terrestres ........................................................5 1.1.2 Elementos de Percepción y Acción ..................................................................9 1.1.3 Robot Operating System ................................................................................10 1.1.4 Control PID .....................................................................................................11 1.1.5 Filtro Extendido de Kalman.............................................................................12

1.2 Antecedentes .................................................................................................... 13 1.3 Descripción del Problema y Justificación .......................................................... 15 1.4 Objetivos ........................................................................................................... 16

1.4.1 Objetivo General ............................................................................................16 1.4.2 Objetivos Específicos .....................................................................................16

1.5 Metodología ...................................................................................................... 16

Capítulo 2. Diseño del Alpha Rover ........................................................................21 2.1 Capa Electrónica del Sistema ........................................................................... 22

2.1.1 Selección de Componentes para la Capa Electrónica ....................................23 2.1.2 Diseño Electrónico .........................................................................................38

2.2 Capa Mecánica del Sistema ............................................................................. 40 2.2.1 Selección de Materiales para la Capa Mecánica ............................................41 2.2.2 Diseño Mecánico ............................................................................................42

2.3 Capa de Software del Sistema .......................................................................... 54 2.3.1 Diseño del Sistema Central del Robot ............................................................54 2.3.2 Diseño del Control de Velocidad ....................................................................60 2.3.3 Diseño de la Estimación de Trayectoria..........................................................72

Capítulo 3. Resultados Experimentales ..................................................................75 3.1 Implementación Electrónica del Sistema ........................................................... 75 3.2 Fabricación del Robot ....................................................................................... 76 3.3 Resultados de Manipulación Remota ................................................................ 78

3.3.1 Test 1 de navegación (Desierto de la Tatacoa) ..............................................78 3.3.2 Test 2 de navegación (Zona rural Ibagué) ......................................................79 3.3.3 Test 3 de navegación (Campus Unibagué) .....................................................81

3.4 Resultados del Control de Velocidad ................................................................ 83 3.5 Resultados de la Estimación de Trayectoria ..................................................... 85

Capítulo 4. Conclusiones y Recomendaciones ......................................................88 4.1 Aportes ............................................................................................................. 90

Referencias Bibliográficas ............................................................................................91

Anexos ............................................................................................................................93

Page 11: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

Proyecto de grado. Ingeniería Electrónica. 2019. XI

Page 12: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO REMOTO

Proyecto de grado. Ingeniería Electrónica. 2019. XII

Lista de figuras

Pág. Figura 1-1. Configuración diferencial. Fuente: [8] .............................................................. 6

Figura 1-2. Comparativa entre topología diferencial y Ackerman. Fuente: Autores ........... 6

Figura 1-3. Diagrama de la configuración Ackerman. Fuente: [10] .................................... 7

Figura 1-4. Diagramas de configuración skid-steer. Fuente: [11], [12] ............................... 8

Figura 1-5. Sistema Rocker-Bogie integrado en el MER Curiosity. Fuente:

www.jpl.nasa.gov .............................................................................................................. 8

Figura 1-6. Proceso de superación de un obstáculo de un sistema rocker-bogie. Fuente:

[14] .................................................................................................................................... 9

Figura 1-7. Esquema de un sistema de control automático en lazo cerrado. Fuente: [24]

....................................................................................................................................... 12

Figura 1-8. Metodología de desarrollo. Fuente: Autores .................................................. 18

Figura 2-1. Diagrama pictórico del sistema electrónico. Fuente: Autores ........................ 23

Figura 2-2. Motor DC seleccionado para el robot. Fuente: www.pololu.com ................... 28

Figura 2-3. Batería LiPo HBR 6000 mAh - 50C. Fuente: www.rcextremo.co ................... 33

Figura 2-4. Encoder de efecto Hall utilizado. Modificado de: www.pololu.com ................ 34

Figura 2-5. Principios de funcionamiento del encoder de efecto Hall. Fuente: Autores ... 34

Figura 2-6. Señales generadas por el encoder. Fuente: www.pololu.com ....................... 35

Figura 2-7. Especificaciones de la IMU seleccionada. Modificado de: [30] ...................... 35

Figura 2-8. Sensores del Kinect V1. Fuente: Autores ...................................................... 36

Figura 2-9. Logitech QuickCam Orbit AF. Fuente: www.logitech.com ............................. 37

Figura 2-10. Esquema del subsistema de comunicación. Fuente: Autores ...................... 38

Figura 2-11. PCB diseñada para la etapa de alimentación. Fuente: Autores ................... 39

Figura 2-12. PCB diseñada para la etapa de acondicionamiento. Fuente: Autores ......... 40

Figura 2-13. Selección de materiales para la construcción. Fuente: Autores................... 42

Figura 2-14. Diseño de robot móvil (configuración skid-steer – suspensión rocker-bogie)

en SolidWorks. Fuente: Autores ...................................................................................... 43

Figura 2-15. Estructura principal o chasis del robot. Fuente: Autores .............................. 43

Figura 2-16. Construcción de rines en torno CNC. Fuente: Autores ................................ 44

Figura 2-17. Diseño de rines para ruedas motrices en SolidWorks. Fuente: Autores ...... 45

Figura 2-18. Diseño y construcción de bujes en SolidWorks. Fuente: Autores ................ 45

Figura 2-19. Diseño de soporte para motor con SolidWorks. Fuente: Autores ................ 46

Figura 2-20. Especificaciones de diseño del soporte para motor con SolidWorks. Fuente:

Autores ........................................................................................................................... 46

Figura 2-21. Diseño del sistema de suspensión rocker-bogie. Fuente: [14] y Autores ..... 48

Figura 2-22. Diseño y ensamble de rocker-bogie en SolidWorks y el prototipo real.

Fuente: Autores .............................................................................................................. 49

Figura 2-23. Diseño de acoples de aluminio. Fuente: Autores ........................................ 49

Page 13: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

Proyecto de grado. Ingeniería Electrónica. 2019. XIII

Figura 2-24. Ensamble del armazón en la estructura principal del prototipo. Fuente:

Autores ............................................................................................................................50

Figura 2-25. Esquema del nivel de computación de ROS. Fuente: Autores .....................56

Figura 2-26. Diagrama de conexión entre el master y los nodos. Fuente: Autores ..........56

Figura 2-27. Mapa de nodos y tópicos del sistema. Fuente: Autores ...............................58

Figura 2-28. Relación de velocidad angular (rpm) y el valor medido por los encoders.

Fuente: Autores ...............................................................................................................62

Figura 2-29. a) Señal de identificación (PRBS). b) Salida-entrada ajustada del sistema.

Fuente: Autores ...............................................................................................................63

Figura 2-30. MATLAB System Identification Toolbox GUI. Fuente: Autores ....................64

Figura 2-31. Identificación del modelo. Fuente: Autores ..................................................64

Figura 2-32. Salida del modelo medida y simulada. Fuente: Autores ..............................65

Figura 2-33. Validación del modelo. Fuente: Autores ......................................................66

Figura 2-34. Interfaz gráfica de Frtool con curva en el gráfico de Nichols correspondiente

a la respuesta de frecuencia del bucle. Fuente: [33] ........................................................67

Figura 2-35. Diseño de control con FRtool (parámetros Ro, Ts, %OS). Fuente: Autores .68

Figura 2-36. Diseño óptimo del controlador PID y la respuesta paso de motor derecho

(superior) e izquierdo (inferior). Fuente: Autores .............................................................69

Figura 2-37. Pseudocódigo del control de velocidad de motores. Fuente: Autores ..........71

Figura 2-38. Implementación de control de velocidad (a), diagrama de bloques del

controlador PID de cada motor (b y c) y señal de salida (d). Fuente: Autores..................72

Figura 3-1. Diagrama de bloques del sistema. Fuente: Autores ......................................75

Figura 3-2. PCB de acondicionamiento electrónico del sistema. Fuente: Autores ...........76

Figura 3-3. Partes del prototipo final. Fuente: Autores .....................................................77

Figura 3-4. Imagen captada por la cámara de navegación en el test 1. Fuente: Autores .78

Figura 3-5. Comparativa entre la reconstrucción 3D y la imagen de navegación. Fuente:

Autores ............................................................................................................................79

Figura 3-6. Distancia en línea recta entre el UGV y el piloto en el test 1. Fuente: Autores

........................................................................................................................................79

Figura 3-7. Prueba de latencia del test 2. Fuente: Autores ..............................................80

Figura 3-8. Imagen captada por la cámara de navegación en el test 2. Fuente: Autores .80

Figura 3-9. Distancia en línea recta entre el UGV y el piloto en el test 2. Fuente: Autores

........................................................................................................................................81

Figura 3-10. Prueba de latencias del test 3. Fuente: Autores ..........................................82

Figura 3-11. Trayectoria recorrida en el test 3. Fuente: Autores ......................................82

Figura 3-12. Imagen captada por la cámara de navegación en el test 3. Fuente: Autores

........................................................................................................................................83

Figura 3-13. Sin control de velocidad en rampa de 30° de inclinación. Fuente: Autores ..84

Figura 3-14. Control de velocidad en rampa de 30° de inclinación. Fuente: Autores .......84

Figura 3-15. Establecimiento de velocidad de los motores entorno a la señal de referencia

variable. Fuente: Autores ................................................................................................85

Figura 3-16. Trayectoria circular estimada por el EKF. Fuente: Autores ..........................85

Page 14: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

XIV García Nickson

Molina Cristian

Figura 3-17. Estimación de trayectoria mediante el EKF. Fuente: Autores ...................... 86

Figura 3-18. Gráficas en tiempo real de trayectoria recorrida en el simulador Rviz. Fuente:

Autores ........................................................................................................................... 86

Page 15: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO REMOTO

Proyecto de grado. Ingeniería Electrónica. 2019. XV

Lista de tablas

Pág. Tabla 1-1. Algoritmo general del EKF. Fuente: Autores ...................................................13

Tabla 2-1. Requerimientos de diseño del robot. Fuente: Autores ....................................21

Tabla 2-2. Características principales de las opciones de actuadores a implementar.

Fuente: Autores ...............................................................................................................24

Tabla 2-3. Comparación de características de diferentes motores DC. Fuente: Autores .27

Tabla 2-4. Matriz de selección para motores del robot. Fuente: Autores .........................27

Tabla 2-5. Matriz de selección de la tarjeta de control principal. Fuente: Autores ............28

Tabla 2-6. Matriz de selección de driver de potencia para motores. Fuente: Autores ......29

Tabla 2-7. Matriz de selección de convertidores DC-DC. Fuente: Autores ......................30

Tabla 2-8. Matriz de selección de baterías. Fuente: Autores ...........................................33

Tabla 2-9. Matriz de selección para materiales de estructura. Fuente: Autores ...............41

Tabla 2-10. Requerimientos para el brazo robótico. Fuente: Autores ..............................51

Tabla 2-11. Especificaciones de diseño del brazo robótico. Fuente: Autores ..................52

Tabla 2-12. Datos de lectura de encoders y Tacómetro (rpm). Fuente: Autores ..............61

Tabla 3-1. Partes del prototipo final. Fuente: Autores ......................................................76

Page 16: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO REMOTO

Proyecto de grado. Ingeniería Electrónica. 2019. XVI

Page 17: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO REMOTO

Proyecto de grado. Ingeniería Electrónica. 2019. 1

Introducción

La idea de crear una máquina autónoma que pueda desempeñar tareas útiles en

beneficio de las personas ha motivado el desarrollo de inventos tales como [1], que trata

sobre robótica móvil, la cual conforma una parte fundamental en las actividades de la

vida moderna, por ejemplo, en procesos de industria y manufactura como en [2], puesto

que el flujo de materiales de las líneas de producción necesita ser agilizado y más

preciso. En comparación con el uso de cintas transportadoras fijas, que pueden ser

difíciles y costosas de adaptar, los AGV (Vehículos Automáticos Guiados) y AMR (Robots

Móviles Autónomos) pueden ser más eficientes, y por lo tanto ofrecen una forma más

rentable de suministrar materiales [2]. Este tipo de robótica también es útil para ayudar a

las personas en una amplia gama de actividades, preservando su integridad en labores

de búsqueda y rescate, extinción de incendios, construcción de túneles, agricultura,

minería, exploración planetaria, desactivación de explosivos, operaciones en zonas

radioactivas y demás ambientes peligrosos como es visto en [3] y [4]. También se

pueden utilizar como robots de servicio con el objetivo de realizar trabajos de apoyo a la

sociedad, en este campo son generalmente usados en tareas de laboratorio, actividades

didácticas y ayuda a minusválidos como en el caso de [5], entre otros.

Existen diferentes tipos de robots, todos ellos se diferencian según sus capacidades y se

pueden clasificar generalmente en fijos y móviles. A diferencia de los robots

estacionarios, que realizan su trabajo desde un punto fijo, los robots móviles tienen que

desplazarse mediante un sistema de locomoción a través de grandes entornos, por lo

que al realizar sus tareas van a enfrentarse a un alto grado de incertidumbre. Esto puede

solventarse mediante la captación de información del medio en el que se encuentra, por

lo cual deben estar dotados con un gran sistema sensorial según su tipo de aplicación

[6].

Particularmente en este proyecto, como su título lo indica, se documenta la metodología

para desarrollar un prototipo robótico móvil semi-autónomo con capacidad de explorar su

entorno y transmitir la información captada por sus sistemas de percepción en tiempo

real a través de una red local sin necesidad de conexión a internet para accesos a

distancias cortas, o con una conexión a internet, que brinde acceso a una Red Virtual

Privada (VPN), para maniobras a larga distancia.

Un robot móvil semi-autónomo es un sistema en el que cabe identificar subsistemas de

percepción, comunicación y acción, todos en constante interacción entre sí, generando

un flujo continuo de información proveniente de diferentes sensores. Por todo ello, un

robot de este tipo rara vez va equipado con un único sensor, sino que la práctica más

habitual consiste en combinar varios de estos haciendo uso de algoritmos de fusión,

como en este caso el Filtro de Kalman, que a partir de la información recolectada por los

Page 18: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

2 García Nickson

Molina Cristian

encoders y la IMU, logra trazar un estimado de la trayectoria recorrida por la plataforma

móvil.

El calificativo de semi-autónomo hace referencia a la capacidad de percibir la velocidad

angular actual de las ruedas, para lograr por sí mismo establecerla en un punto de

referencia deseado, siendo capaz de hacer frente a posibles variaciones del terreno por

el cual navega (obstáculos o pendientes) y superarlas a una velocidad constante con una

mínima intervención por parte del piloto. Del mismo modo, el brazo robótico del sistema

también cuenta con una función automática para recoger objetos, siempre que estos

estén ubicados en el punto marcado por los indicadores láser instalados. Ambas

funciones mencionadas solo requieren ser activadas por el piloto mediante

combinaciones de botones predeterminadas.

El primer capítulo del presente proyecto presenta el planteamiento del problema, los

objetivos y la metodología desarrollada, el segundo capítulo describe el diseño del robot

en todas sus capas, en el tercero se presentan los resultados obtenidos, y finalmente se

comentan las conclusiones y recomendaciones a tener en cuenta para futuros trabajos

del mismo campo.

Page 19: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

Proyecto de grado. Ingeniería Electrónica. 2019. 3

Page 20: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre
Page 21: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Proyecto de grado. Ingeniería Electrónica. 2019. 5

Capítulo 1. Vehículo Terrestre no Tripulado

1.1 Marco Teórico

Con el propósito de introducir al lector en el contexto del proyecto, se exponen algunos

de los conceptos básicos que fundamentan el mismo, y que permiten al lector entender

de mejor manera tanto la problemática de estudio como los aportes del proyecto.

1.1.1 Topologías de Robots Móviles Terrestres

Dentro de la categoría de robots móviles existe una gran variedad de sistemas de

locomoción para trasladarse sobre una superficie sólida; entre los más comunes se

destacan las ruedas, las cadenas y las patas, no obstante, como se refleja en todos los

casos expuestos en la sección de Antecedentes de este documento, los vehículos de

ruedas son los más populares principalmente por dos razones prácticas, ya que

presentan mayor facilidad a la hora de su construcción y control, además la carga que

pueden transportar es mayor, puesto que, tanto los robots basados en cadenas como en

patas, se pueden considerar más complejos y pesados que los robots de ruedas para

una misma carga útil.

La principal desventaja de las ruedas es su desempeño en terrenos irregulares, en los

que presentan dificultades para desplazarse, normalmente un vehículo de ruedas no

puede sobrepasar un obstáculo que tenga una altura superior al radio de sus ruedas

como es visto en [7], razón por la que surgen posibles soluciones, como por ejemplo,

utilizar ruedas mayores que los posibles obstáculos a superar, implementar diferentes

topologías, distribución y cantidad de ruedas a las convencionales o incorporar un

sistema de suspensión que facilite el desempeño de la plataforma a la hora de

desplazarse sobre dichas irregularidades.

A continuación se describen las topologías o configuraciones de robots móviles con

ruedas más comunes, así como el tipo de suspensión utilizado en este proyecto.

• Configuración diferencial: Se trata de uno de los diseños de menor complejidad

tanto para el modelamiento matemático, como para el diseño y construcción, tal como

es visto en [8], ya que el robot puede ir recto, girar sobre sí mismo y trazar curvas con

gran facilidad. Un problema importante es cómo mantener el equilibrio del vehículo,

debe emplearse un apoyo adicional a las dos ruedas ya existentes, esto se consigue

mediante una o dos ruedas de apoyo añadidas en un diseño triangular o romboidal.

El diseño triangular puede no ser suficiente dependiendo de la distribución de pesos

del robot, y el romboidal (Figura 1-1) puede provocar inadaptación al terreno si éste

es irregular, lo que puede exigir alguna clase de suspensión. Otra consideración a

tener en cuenta en los diseños que no incluyen ruedas directrices, es cómo conseguir

que el robot avance recto, para que el robot se mueva en línea recta sus ruedas

tienen que girar a la misma velocidad, y tanto sus ruedas como su centro de masa

Page 22: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

6 García Nickson

Molina Cristian

deben estar balanceados. Cuando los motores encuentran diferentes resistencias

(cada rueda sobre un terreno diferente) las velocidades de los motores varían y el

robot girará incluso cuando se le haya ajustado inicialmente para que vaya recto, lo

quiere decir que la velocidad debe ser controlada dinámicamente, es decir, debe

existir un medio de monitorizar y cambiar la velocidad del motor mientras el robot

avanza. De esta manera la simplicidad del diseño queda minimizada por la

complejidad del sistema de control de la velocidad; no obstante, la reducción de la

complejidad mecánica en comparación de la electrónica, es frecuentemente una

elección más económica y fiable [7]. En este caso no existen ruedas directrices

controladas, pues el cambio de dirección se realiza modificando la relación de

velocidad relativa de las ruedas motrices izquierda y derecha para trazar curvas, o

invirtiendo sus sentidos de giro para virajes sobre su propio eje.

a) Diseño triangular. b) Diseño romboidal.

Figura 1-1. Configuración diferencial. Fuente: [8]

• Configuración Ackerman: Es el utilizado en vehículos de cuatro ruedas

convencionales, de hecho, los vehículos robóticos para exteriores resultan

normalmente de la modificación de estos [9]. El sistema se basa en dos ruedas

motrices traseras que se montan de forma paralela en el chasis principal del vehículo,

y a diferencia de la topología diferencial, esta cuenta con ruedas de direccionamiento

controlado delanteras, como se ilustra en la Figura 1-2.

Figura 1-2. Comparativa entre topología diferencial y Ackerman. Fuente: Autores

Page 23: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 1 7

Proyecto de grado. Ingeniería Electrónica. 2019. 7

La rueda delantera interior gira un ángulo ligeramente superior a la rueda exterior, de

forma tal que los ejes de prolongación de las ruedas delanteras (directrices) se cortan en

el ICR (centro instantáneo de rotación), que se sitúa en el mismo punto que en el eje de

prolongación de las ruedas traseras (motrices). Esto elimina el deslizamiento que

provoca los sobre virajes de la plataforma. El lugar de los puntos trazados sobre el suelo

por los centros de los neumáticos, son circunferencias concéntricas con centro en el eje

de rotación ICR. Si no se tienen en cuenta las fuerzas centrífugas, los vectores de

velocidad instantánea son tangentes a estas curvas, por lo que las velocidades de

movimiento del móvil deberán evitar que las ruedas no resbalen.

En los robots móviles con configuración Ackerman se presentan dos ángulos de giro, uno

en cada rueda, lo cual genera mayores problemas a la hora de realizar el control, por lo

que en muchas ocasiones lo que se hace es unificar los ángulos de direccionamiento en

uno sólo, causando que los radios de giro para los cuales el robot no muestra

deslizamiento lateral son mayores que en otras configuraciones. En la Figura 1-3 se

puede observar éste efecto sobre el centro instantáneo de rotación.

Figura 1-3. Diagrama de la configuración Ackerman. Fuente: [10]

• Configuración Skid-Steer: El principio de funcionamiento de la estructura skid-steer

es el mismo que el de la configuración diferencial, con la diferencia de que a cada

lado del robot se tiene más de una rueda, por esto puede existir configuración skid

steer de 4 o 6 ruedas. En esta topología el desplazamiento se produce al combinar

las velocidades de las ruedas del lado derecho e izquierdo, pero al constar de dos o

más ruedas a cada lado se produce deslizamiento transversal, situación que no se da

en la topología diferencial. A efectos del control puede manejarse de manera similar

si no se tiene en cuenta este deslizamiento. Sus ventajas son las mismas que las de

los robots de configuración diferencial, añadiendo robustez, mayor tracción al suelo y

desplazamiento en casi cualquier tipo de terreno, aunque su diseño es más complejo

y al contar con un mayor número de motores consumen más energía. Su principal

inconveniente es el deslizamiento lateral producido en las ruedas durante los cambios

de dirección y que da lugar a dificultades a la hora de la estimación de posición del

Page 24: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

8 García Nickson

Molina Cristian

robot. La configuración skid-steer es muy utilizada en una gran variedad de vehículos

móviles: montacargas, vehículos de minería o de guerra. También se utilizan en

aplicaciones relacionadas con la robótica de exploración o de investigación. En la

Figura 1-4 se ilustra la configuración skid-steer con 4 y 6 ruedas.

Figura 1-4. Diagramas de configuración skid-steer. Fuente: [11], [12]

• Suspensión Rocker-Bogie: El sistema rocker-bogie hace referencia al tipo de

suspensión utilizado en los rovers de exploración interplanetaria enviados a Marte por

la NASA, y a día de hoy continúa siendo el modelo de referencia de sus diseños [13],

como en el caso del Curiosity Rover en la Figura 1-5.

Figura 1-5. Sistema Rocker-Bogie integrado en el MER Curiosity. Fuente: www.jpl.nasa.gov

En [14] este mecanismo de suspensión se define como un sistema que está compuesto

por dos piezas que se unen y tienen libertad de giro. El rocker es la pieza que se une al

chasis del rover gracias a un mecanismo diferencial, de manera que cuando

un rocker asciende, el opuesto desciende. Uno de los extremos del balancín se une a

Page 25: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 1 9

Proyecto de grado. Ingeniería Electrónica. 2019. 9

una rueda motora, mientras que en el otro extremo se acopla el elemento bogie, el cual

puede pivotar sobre el balancín. El término bogie se refiere al mecanismo que aloja en

cada extremo una rueda motriz. Este tipo de soporte se suele utilizar para ayudar a

distribuir la carga sobre las seis ruedas.

El diseño rocker-bogie no incorpora muelles o ejes por cada rueda, lo que permite al

rover superar obstáculos como rocas con un tamaño mayor al del diámetro de las ruedas,

manteniendo las seis ruedas sobre el suelo. Según el Laboratorio de Propulsión a

Reacción (JPL) de la NASA, este sistema de suspensión reduce el movimiento del

cuerpo del vehículo a la mitad en comparación a otros [13]. Cada una de las seis ruedas

que incorpora el rover tiene su propio motor independiente, los cuales cuentan con una

reductora de manera que cada rueda individual puede cargar una gran parte de la masa

del vehículo.

Para poder superar un obstáculo vertical, las ruedas delanteras son empujadas contra

este por el resto de ruedas del vehículo, de esta manera las ruedas delanteras se

inclinan sobre su eje para adaptarse y superar el obstáculo. Las ruedas centrales pasan

a ser empujadas por las ruedas traseras contra el obstáculo con la ayuda de las

delanteras que ejercen una fuerza tractora sobre el resto. Por último las ruedas traseras

son empujadas contra el obstáculo por el resto de ruedas que ya lo han superado.

Cuando una rueda se encuentra superando un obstáculo, el avance del vehículo se

ralentiza, llegando a detenerse en ocasiones [14]. En la Figura 1-6 se ilustran las partes

del sistema de suspensión rocker-bogie, así como las diferentes posiciones que adopta al

momento de superar un obstáculo.

Figura 1-6. Proceso de superación de un obstáculo de un sistema rocker-bogie. Fuente: [14]

1.1.2 Elementos de Percepción y Acción

Los sistemas de percepción son aquellos encargados de transmitir la información

captada por los diferentes sensores y dispositivos de entrada a la unidad central de

Page 26: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

10 García Nickson

Molina Cristian

control UCC. En este prototipo el sistema de percepción está conformado por los

siguientes elementos de entrada:

• IMU: La unidad de medición inercial es un elemento emisor de información sobre

orientación, inclinación y aceleración, a fin de que puedan llevarse a cabo procesos

automatizados de control. Esta emisión de datos debe evaluarse a fin de verificar la

veracidad de sus mediciones en la tarea a la que son asignadas [15].

• Kinect: Es un dispositivo inicialmente pensado como un simple controlador de juego,

que integra componentes como: sensor de profundidad, cámara RGB, arreglo de

micrófonos y sensor de infrarrojos, es capaz de capturar un objeto, reconocerlo y

posicionarlo en un plano 3D [16].

• Encoders: Son sensores que generan señales digitales en respuesta al movimiento

rotatorio o lineal. Cuando son usados en conjunto con dispositivos mecánicos tales

como ruedas conectadas a motores, estos pueden ser utilizados para medir sus

respectivas velocidades [17].

• Cámara web: Es una pequeña cámara asociada a una PC que puede capturar

imágenes y transmitirlas a través de Internet a diferentes PC de forma privada.

También existen diferentes cámaras autosuficientes que únicamente necesitan un

punto de acceso a la red. Ambas son útiles en asignaciones de seguridad y

reconocimiento de video [18].

Por el contrario los sistemas de acción se describen como aquellos compuestos por

actuadores capaces de realizar las acciones ordenadas por la UCC.

• Motorreductores: Es un método de reducción de velocidad de un motor DC, estos por

lo regular usan sistemas de engranajes que varían el par del motor en proporción a la

velocidad, la máquina convierte la energía eléctrica en mecánica, provocando un

movimiento rotatorio, gracias a la acción de un campo magnético.

• Servomotores y manipulación de carga: Entre las características de los servomotores

puede destacarse una alta relación entre el par del motor y la inercia, por lo cual

resultan útiles en aplicaciones tan variadas como las correspondientes a la

manipulación de carga en el campo de la robótica, permitiendo el desarrollo de piezas

como un brazo robótico. Dicho sistema debe admitir la programación de su

posicionamiento, aceleración y velocidad [19].

1.1.3 Robot Operating System

Robot Operating System ROS es un framework (entorno de trabajo) flexible, con una

amplia variedad de herramientas, librerías y paquetes que busca la creación de software

complejo para tener robots robustos y con un comportamiento variado [20]. ROS se

puede definir de igual manera como un metasistema operativo, ya que es un OS que se

instala sobre otro. Lo más usual es que funcione bajo un sistema UNIX (Ubuntu, Debian)

aunque también se está adaptando a otros sistemas operativos como Fedora, Mac OS X,

Page 27: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 1 11

Proyecto de grado. Ingeniería Electrónica. 2019. 11

Arch, Gentoo, OpenSUSE, Debian o Microsoft Windows, considerados a día de hoy

como ‘experimentales’ [21]. En el caso de este proyecto se utilizó Ubuntu 14.04 y ROS

Indigo. Gracias al soporte en línea con el que cuenta ROS, se puede encontrar suficiente

información técnica, además de intuitivas guías de instalación [22].

Algunas de las características principales de ROS son:

• Cuenta con un nodo principal de coordinación.

• Apuesta por la modularidad (diferentes áreas que se conjugan en un proyecto).

• En ROS cada módulo es autónomo (como las computadoras en una red LAN).

• Permite procesamiento distribuido en múltiples núcleos, multiprocesamiento, GPUs y

clústeres.

• Cada módulo interactúa entre sí por medio de mensajes llamados tópicos (protocolo

XML-RCP), esto hace posible la programación en diferentes lenguajes C++, Python o

Java.

• Publicación o subscripción de flujos de datos: imágenes, estéreo, láser, actuador, etc.

• Hace uso del protocolo TCP/IP para un esquema cliente-servidor entre diferentes

dispositivos conectados a una misma red.

ROS tiene dos partes básicas: el sistema operativo y ros-pkg. Esta última consiste en

una suite de paquetes aportados por la contribución de usuarios que implementan las

funcionalidades tales como localización y mapeo simultáneo, percepción, simulación,

control, robots móviles, etc. Además se trata de un software con licencia libre para uso

comercial y de investigación [20].

Actualmente existen algunos robots tanto comerciales como de investigación que ya

utilizan ROS, entre estos se pueden encontrar:

• PR1: robot personal desarrollado por el laboratorio Ken Salisbury en Stanford.

• PR2: robot personal que está siendo desarrollado por Willow Garage.

• Baxter de Rethink Robotics, Inc.

• Robot de Shadow: mano robótica diestra motorizada desarrollada por la empresa

Shadow y la cual se está desarrollando mediante el consorcio de un proyecto

europeo dentro del marco europeo. Entre los participantes de este proyecto se

pueden encontrar la empresa Shadow Robot, la Université Pierre et Marie Curie-Paris

(Francia) o la Universidad Carlos III de Madrid (España).

• HERB: desarrollado en CMU dentro del programa de robótica personal de Intel.

1.1.4 Control PID

Un controlador o regulador PID es un dispositivo que permite controlar un sistema en

lazo cerrado para que alcance el estado de salida deseado. El controlador PID está

compuesto por tres elementos que proporcionan una acción Proporcional, Integral y

Derivativa. Estas tres acciones son la que dan nombre al controlador PID [23]. Al aplicar

Page 28: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

12 García Nickson

Molina Cristian

la sumatoria de estas acciones a un sistema con realimentación se obtiene una

estructura de control PID en lazo cerrado, representado en la Figura 1-6.

Figura 1-7. Esquema de un sistema de control automático en lazo cerrado. Fuente: [24]

La señal de referencia indica el estado que se desea conseguir en la salida del sistema.

En un sistema de control de velocidad, la referencia será la velocidad deseada y la salida

será la velocidad real del sistema controlado.

Como puede verse en el esquema anterior, la entrada al controlador es la señal de error.

Esta señal indica al controlador la diferencia que existe entre el estado que se quiere

conseguir y el estado real del sistema a través de una señal de realimentación medida

por el sensor. Si la señal de error es grande, significa que el estado del sistema se

encuentra lejos del estado de referencia deseado. Si por el contrario el error es pequeño,

significa que el sistema ha alcanzado el estado deseado.

La salida de un controlador automático se conecta a un actuador, como un motor o una

válvula. El actuador es un dispositivo de potencia que produce la entrada para la planta

de acuerdo con la señal de control, a fin de que la señal de salida se aproxime a la señal

de entrada de referencia.

El elemento de medición es un dispositivo sensorial que convierte la variable de salida en

información interpretable y manejable, como un desplazamiento o un voltaje, que pueda

usarse para comparar la salida con la señal de referencia. Dicho elemento está en la

trayectoria de realimentación del sistema en lazo cerrado [24].

1.1.5 Filtro Extendido de Kalman

El Filtro de Kalman es una potente herramienta matemática que juega un importante

papel cuando se incluyen medidas del mundo real en el sistema con el que se trabaja.

Fue inventado por Rudolph Emil Kalman a finales de la década de 1950, con la finalidad

Page 29: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 1 13

Proyecto de grado. Ingeniería Electrónica. 2019. 13

de filtrar y predecir sistemas lineales, siendo posteriormente extendido para el análisis no

lineal (EKF). Básicamente es un conjunto de ecuaciones matemáticas que implementan

un estimador del tipo predictor-corrector. Procesa todas las medidas disponibles (IMU y

odometría) para estimar el valor actual de las variables de interés (posición). Esto es

posible gracias a:

a) el conocimiento del sistema y a dispositivos dinámicos de medida,

b) a la descripción de los ruidos del sistema, errores de medida e incertidumbre en los

modelos dinámicos,

c) y a cualquier información disponible acerca de las variables de interés.

El Filtro Extendido de Kalman (EKF) es un algoritmo de procesamiento de datos, y como

se trata de un programa de ordenador debe trabajar siguiendo un algoritmo [25],

resumido en la Tabla 1-1, cuyo contenido se describe más detalladamente en la sección

2.3.3 del presente documento, basado en [26].

Tabla 1-1. Algoritmo general del EKF. Fuente: Autores

Algoritmo general del EKF

1. Inicializar la matriz de covarianza, el ruido del proceso y el ruido de medición.

𝑷𝟏𝒌, 𝑸𝟏, 𝑹𝟏

2. Actualizar el modelo.

𝒙𝒌 , 𝒚𝒌

3. Cálculo Jacobiano para el modelo.

𝑨𝑫𝒌, 𝑪𝑫𝒌

4. Actualización de la matriz de covarianza.

𝑷𝟏𝒌

5. Ganancia de Kalman. 𝑲𝒌

6. Actualización de mediciones.

𝒚𝒌 , 𝒙𝒌 , 𝑷𝟏𝒌

1.2 Antecedentes

Al hablar de un robot explorador, los ejemplos más destacables correspondes a los

realizados por NASA en sus exploraciones interplanetarias, no obstante existe un gran

número de estudios relacionados a la robótica móvil. Las referencias que se plantean a

continuación se han incluido principalmente por su aporte en las diferentes aéreas del

desarrollo de este proyecto, tales como: exploración, sistemas mecánicos, de control y de

comunicación. En el presente capítulo se dan a conocer conceptos e información

bibliográfica que representan parte del estado del arte para el desarrollo del prototipo de

vehículo de exploración.

Page 30: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

14 García Nickson

Molina Cristian

El proyecto descrito en [22] consiste en el desarrollo de un sistema de control de bajo y

alto nivel de un robot móvil con tracción diferencial. Se llevó a cabo la implementación de

los sistemas de comunicación entre el control de bajo nivel (microcontrolador) y el de alto

nivel (Raspberry PI) así como el protocolo de comunicación entre ambos. Además, se

realizó la programación necesaria para el funcionamiento de actuadores y sensores, todo

esto utilizando el entorno de programación “Robot Operating System” (ROS). El autor

dota su proyecto de un sistema de percepción compuesto por sensores ultrasónicos para

medir distancias o detectar obstáculos, sensores de choque que se activan cuando son

presionados en caso de fallo de los sensores de distancia, encoders para conocer la

velocidad y posición del vehículo, una cámara de Raspberry para seguimiento de líneas o

visión remota, y un escáner láser 2D Hokuyo para crear un mapa del entorno. Para el

control de sus motores se utilizan dos drivers de potencia Picoborg Reverse, uno para

cada motor, conectados a la Raspberry PI mediante comunicación I2C.

En [27] se utilizó una estructura donde se describen los componentes del sistema de

control y se diseñó cada una de las tarjetas electrónicas. En este proyecto la tarjeta

principal envía los datos sensados del análisis de las variables de temperatura, presión,

humedad, luminosidad, inclinación a través de un acelerómetro, distancia a la tarjeta de

mando, la cual permite el control inalámbrico del robot gracias a un sistema emisor-

receptor RF de gran alcance para maniobrar el robot en una zona amplia. Sus principales

elementos de percepción son los sensores de medición de parámetros ambientales,

como el BMP085 que registra los cambios de temperatura y presión; el DHT11 que

permite detectar la humedad y el acelerómetro GY-61 utilizado para medir la inclinación.

También se describe el uso de conexión WiFi para la transmisión de vídeo. Se utiliza

como microcontrolador el PIC16F877 en la tarjeta principal ensamblada a bordo del robot

y un PIC18F4620 en la tarjeta de control inalámbrico. Para el monitoreo de todos estos

datos medidos los autores utilizan una pantalla líquida gráfica monocromática de

Displays GLCD con una lámina táctil para su interacción. Finalmente se describe una

unidad de potencia compuesta por dos baterías recargables de Ni/Cd de 12V tanto en el

robot como en la unidad de control inalámbrico, para un total de cuatro baterías.

En [3] se describe el proceso de diseño y construcción de un robot móvil remoto para la

asistencia en operaciones de alto riesgo del cuerpo de bomberos, así como la

exploración de zonas afectadas por este tipo de catástrofes. El esquema de este sistema

consta de una tarjeta principal que en primer lugar se debe comunicar con el computador

de usuario, a través del cual la persona que controla al robot envía comandos y recibe

datos de estado; todo a través de una comunicación TCP/IP. La tarjeta principal (Intel) se

comunica además con el circuito controlador de motores (RoboteQ) a través de una

conexión serial RS232, el cual luego de recibir los comandos desde la tarjeta principal se

encarga de mover los motores que tiene conectados. Por otro lado dicha tarjeta principal

se comunica con la tarjeta adquisidora de datos mediante un puerto USB que se

convierte en un puerto serial virtualizado. La tarjeta Daq recibe consultas para realizar la

adquisición del dato comunicándose con los sensores mediante protocolos de

Page 31: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 1 15

Proyecto de grado. Ingeniería Electrónica. 2019. 15

comunicación para periféricos como I2C y SPI, o adquiriendo señales analógicas y

digitales. Finalmente la tarjeta principal adquiere las señales de vídeo de las cámaras a

través de los puertos USB, y envía toda la información recopilada para poder ser

visualizada por el usuario.

1.3 Descripción del Problema y Justificación

El desarrollo de la robótica representa un significativo impacto en el crecimiento

tecnológico de un país; naciones avanzadas en el campo como Alemania o Japón

exportan este tipo de tecnología debido a su utilidad, y por tanto alta demanda. Así en el

caso de Colombia, donde aún es necesario aumentar la inversión en investigación sobre

este ámbito, podría permitirse en un futuro una dependencia menor a la importación de

tecnología al poder desarrollar avances propios. Además, los robots móviles teledirigidos,

semi-autónomos o autónomos, permiten la adquisición de datos en entornos de difícil o

imposible acceso humano, minimizando la exposición de un individuo a los posibles

peligros existentes en dichos entornos como pueden ser misiones de exploración

espacial, sistemas de vigilancia y seguridad, manejo de explosivos, agricultura o

transporte automático en áreas industriales [1], [28]. Cabe mencionar que, aunque el

presente proyecto tenga fines meramente educativos e investigativos, contando con los

medios necesarios, existe la posibilidad de convertirlo en un proyecto a mayor escala

para ejecutar alguna de las aplicaciones mencionadas.

Según [1], la investigación asociada al campo de la robótica, específicamente a los

móviles, ha adquirido gran relevancia, y aun a día de hoy, cuando se han logrado

importantes avances, sigue siendo un tema de mucha investigación y gran interés. Los

retos que enfrenta este campo para implementar materiales y esquemas de fabricación

en estructuras físicas, aplicar estrategias para la comunicación de tele-operación en

plataformas móviles y elaborar robots que puedan ser multifuncionales, mantienen una

limitación en el desarrollo tecnológico.

Mencionado lo anterior, se evidencia una motivación por realizar una aplicación en

robótica móvil para contribuir al desarrollo regional y nacional en la investigación del área

en cuestión. En este caso en particular, para lograr la navegación semi-autónoma de un

robot móvil, es decir donde los subsistemas a bordo del vehículo faciliten su operación, y

que su metodología de desarrollo pueda servir de referencia para otro tipo de robots

móviles e incluso para llevarlo a una escala mayor en una etapa posterior a este

proyecto. De tal manera, en el presente documento se pretende dar respuesta a la

pregunta: Entre las diferentes opciones de hardware, electrónica y software, ¿cuáles

deben tenerse en cuenta para el desarrollo de una plataforma móvil semi-autónoma con

manipulación remota?

Page 32: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

16 García Nickson

Molina Cristian

1.4 Objetivos

1.4.1 Objetivo General

Desarrollar una plataforma robótica móvil terrestre que pueda ser operada de manera

remota en desplazamiento y manipulación de carga, empleando Robotic Operating

System ROS.

1.4.2 Objetivos Específicos

Estudiante 1: Cristian Giovanny Molina Hernández.

• Diseñar y construir un robot móvil terrestre no tripulado UGV en topología “skid-

steering” en sus capas mecánica y electrónica.

• Desarrollar un control automático de velocidad angular sobre cada tracción lateral

del robot, para mejorar los desplazamientos de traslación y giro del mismo.

Estudiante 2: Nickson Eduardo García Hernández.

• Establecer un sistema de comunicación remoto mediante una red Wireless entre

el UGV y el piloto, de manera que se acceda a todos los elementos de percepción

y se manipulen todos los elementos de acción del robot desde el centro de

control.

• Estimar la trayectoria recorrida del robot a partir de odometría y unidad de

medición inercial IMU.

1.5 Metodología

El alcance de los objetivos propuestos contempla una metodología divida en tres etapas

o fases (Figura 1-8): 1) Diseño y construcción del robot; 2) Desarrollo de subsistemas de

percepción, manipulación y comunicación, y 3) Validación experimental del desempeño

del robot.

Etapa uno (1).

En la primera etapa, se estableció el hardware del robot explorador así como su

estructura, topología, tipo de suspensión y materiales atendiendo los parámetros de

diseño mecánico y electrónico. Para ello se inició por la selección de los componentes

del chasis, incluyendo el elemento de manipulación de carga, estimando las masas de la

estructura, motores y electrónica asociada. Con los elementos anteriormente

mencionados fue posible empezar a concebir la estructura del robot.

El brazo por condición inicial, fue dotado de una rigidez adecuada para manipular la

carga sin comprometer su propia integridad ni, por otro lado fue necesario reducir su

Page 33: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 1 17

Proyecto de grado. Ingeniería Electrónica. 2019. 17

masa, al mínimo posible, pues de ser muy elevado restaría agilidad al robot. Teniendo en

cuenta estos detalles, para la mecánica del robot se realizó un chasis elaborado en

materiales que poseen características de alta resistencia y a la vez baja densidad para

reducir la exigencia de torque, y por tanto consumo energético a los motores DC,

logrando así una mayor autonomía.

El diseño del robot hace uso de dos fuentes de alimentación para movilizar todos sus

subsistemas. No obstante, no todos los dispositivos electrónicos operan con los mismos

niveles de corriente y voltaje. Esto hizo necesario incluir elementos de acondicionamiento

que garantizan los niveles correctos de energía según sea requerido. El propósito de

utilizar dos fuentes de energía diferentes es dividir la alimentación del sistema en

Potencia y Lógico o Control. Potencia comprende los niveles de voltajes y corrientes

inyectados sobre los motores de tracción así como la energización del elemento de

manipulación de carga, mientras que el lógico corresponde a la alimentación de sensores

y demás periféricos.

De igual manera es comprensible que los elementos de control no tengan la capacidad

de utilizar grandes densidades de corriente para operar los actuadores, por esta razón

fueron incluidos drivers de potencia que gestionan la cantidad de energía aplicada a los

elementos que requieren de mayor potencia.

Etapa dos (2).

Una vez finalizada la estructura tanto mecánica como electrónica de la plataforma se dio

inicio a la segunda etapa, consistente en el desarrollo del software requerido para el

correcto funcionamiento de los subsistemas de percepción, manipulación y comunicación

del robot.

El subsistema de percepción está conformado por un conjunto de sensores que brindan

al piloto información sobre el estado actual del robot y el entorno en el que se encuentra.

Se enfocó en el desarrollo de un un algoritmo de control que regula las velocidades

angulares de cada tracción lateral del robot utilizando encoders, de manera que el piloto

desde su central de control navega con mayor facilidad el móvil, enviando las referencias

de control digital desde un gamepad. Este controlador mejora los desplazamientos de

traslación y giro del robot reduciendo posibles desviaciones y mejorando su desempeño

ante inclinaciones y demás irregularidades del terreno.

Con el objetivo de que el piloto cuente con una percepción de profundidad, la cual no es

posible obtener con la videocámara, se añadió al sistema un mecanismo de visión 3D

gracias a un Kinect instalado en la plataforma móvil. Además, se desarrolló un algoritmo

para la estimación de la posición del robot móvil, de manera que el piloto tenga una idea

de la trayectoria ejecutada por el móvil gracias al procesamiento de las lecturas de los

encoders y la IMU con un Filtro Extendido de Kalman.

En el subsistema de manipulación se establecieron algoritmos con la función de accionar

cada uno de los actuadores del elemento de manipulación de carga, así como los

Page 34: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

18 García Nickson

Molina Cristian

motores de tracción y el sistema de luces de apoyo para la navegación en entornos

oscuros. Estos algoritmos también se encargan de extraer y analizar la información del

gamepad para lograr la completa manipulación de la plataforma móvil a voluntad del

piloto.

A fin de lograr los enlaces entre los subsistemas de percepción y manipulación se impuso

un sistema de comunicación bidireccional entre los dispositivos a bordo del robot y el

equipo desde el cual este es comandado por el piloto. Para llevar a cabo tal subsistema

se desarrolló e implementó un protocolo de comunicación eficiente, reduciendo en lo

posible la latencia. Dicho protocolo se basó en configuraciones de red propias de ROS.

Puesto que estas configuraciones solo son funcionales en redes locales no permiten la

comunicación a largas distancias, por tanto fue preciso la creación de una red virtual

privada VPN, las cuales son capaces de conectar varios dispositivos como si se

encontrasen físicamente en el mismo lugar mediante un túnel que enlaza todos los

equipos conectados a ella.

Etapa tres (3).

Tan pronto como fue finalizada la construcción de la plataforma y establecidas sus capas

de software de percepción, control y comunicación, se procedió a una validación

experimental en diferentes entornos de navegación de espacios abiertos y cerrados,

empleando un módem WiFi encargado de enlazar al robot a una red con acceso a

internet, y a su vez con el piloto ubicado en diferentes rangos de distancias.

Figura 1-8. Metodología de desarrollo. Fuente: Autores

•Diseño

•Construcción

Fase I

•Percepción

•Manipulación

•Comunicación

Fase II•Validación

experimental

Fase III

Page 35: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 1 19

Proyecto de grado. Ingeniería Electrónica. 2019. 19

Page 36: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre
Page 37: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Proyecto de grado. Ingeniería Electrónica. 2019. 21

Capítulo 2. Diseño del Alpha Rover

Esta sección aborda el desarrollo del prototipo del robot móvil denominado Alpha Rover. Dentro de dicho desarrollo se contempla el diseño electrónico y mecánico de la plataforma, al igual que el software del sistema, incluyendo el diseño de control de velocidad y trazado de trayectoria del rover. Se parte de un amplio estudio de las características del vehículo, no solo para el correcto desarrollo del proyecto, sino también para la evaluación de las posibilidades que la plataforma puede ofrecer. Con el objetivo de seguir un esquema ordenado se estudió, tanto desde el punto de vista mecánico y cinemático, como electrónico, la óptima ubicación de los elementos y periféricos a bordo. Para hacer una introducción más clara, la sección está dividida en tres segmentos: capa electrónica del sistema, capa mecánica del sistema y capa de software del sistema, cuyos requerimientos o parámetros de diseño principales se resumen en la Tabla 2-1, clasificados según la capa a la cual pertenezcan.

Tabla 2-1. Requerimientos de diseño del robot. Fuente: Autores

Requerimientos Definición Implementación

Mecánica

Modular

Los elementos que conforman el prototipo son desmontables.

Dispositivos desmontables.

Robustez mecánica Su construcción garantiza

durabilidad y resistencia frente al uso.

Uso de materiales livianos y resistentes.

Masa La plataforma no puede

superar una masa de 25 kg. 20 kg.

Topología / Sistema de traccion

Configuración de dirección utilizada Skid-steer.

Topologia a usar Skid steer / 6 ruedas.

Sistema de suspensión

Este sistema le brinda una alta estabilidad ya que absorbe de

manera eficiente todas las fuerzas externas ejercidas

sobre el UGV.

Suspensión Rocker-Bogie.

Interfaz de hardware amigable

Permite al usuario manipular el prototipo de forma intuitiva sin

dificultades.

Panel de control físico del sistema.

Actuador de manipulación El robot debe contar con un elemento manipulador que le

permita accionar botones o trasladar cargas sencillas.

Tamaño El área del robot no puede

superar las medidas de 1m x 1m x 1m (largo x ancho x alto).

0.7m x 0.5m x 0.8m.

Electrónica

Autonomía El prototipo debe funcionar durante un límite de horas, hasta una nueva recarga.

3 h en movimiento sobre terrenos medianamente

irregulares.

Paro de emergencia El robot debe contar con un dispositivo de apagado de

emergencia en su hardware.

Iluminación El vehículo debe contar con un sistema de luces que le permita

operar en espacios de baja iluminación.

Instrumentación El móvil debe contar con periféricos que faciliten su manejo

remoto.

Page 38: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

22 García Nickson

Molina Cristian

Requerimientos Definición Implementación

Software

Ejecución multitarea El rover debe ejecutar sus

diferentes funciones de operación al mismo tiempo.

La red de nodos de ROS permite esta función.

Acceso

En caso de requerir modificar el código fuente o los

parámetros del robot, debe poderse acceder

remotamente.

El sistema permite accesos para depuración remota vía

SSH.

Modos de manejo El prototipo debe contar con

dos modos de operación: manual y semi-autónomo.

Las ayudas semi-autónomas se pueden activar o no, desde

el gamepad.

Manipulación El robot debe manipularse

desde una estación remota. Implementación de una red

virtual privada.

Control de velocidad

El sistema debe contar con un control de tracción que le

permita avanzar a velocidades constantes

independientemente de las irregularidades o inclinación

del terreno.

Controlador PID digital.

Elemento de manejo El manejo del gamepad que opera el piloto debe ser intuitivo,

permitiendo acceder a las diferentes funciones del robot fácilmente.

2.1 Capa Electrónica del Sistema

La capa electrónica del robot se constituye por los circuitos electrónicos que se utilizan

para poner en funcionamiento el sistema a niveles de potencia y lógico, se incluyen

elementos de acondicionamiento que garanticen los niveles correctos de energía según

sea requerido. En inicio se dividió la fuente de energía en dos: Potencia y Lógico.

Potencia comprende los niveles de voltajes y corrientes inyectados sobre los motores de

tracción, así como la alimentación del elemento de manipulación de carga, mientras que

el lógico corresponde al voltaje DC que alimenta sensores y tarjetas de control. En la

Figura 2-1 se aprecia un diagrama pictórico general de la plataforma.

Page 39: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 2 23

Proyecto de grado. Ingeniería Electrónica. 2019. 23

Figura 2-1. Diagrama pictórico del sistema electrónico. Fuente: Autores

2.1.1 Selección de Componentes para la Capa Electrónica

Para el correcto funcionamiento del robot móvil, son necesarios ciertos componentes

comunes en todos los tipos de robótica como lo son: los motores que permiten el

movimiento del robot, los sensores que proporcionan la retroalimentación necesaria para

conocer su entorno y estado, las baterías que son la fuente de energía portátil que se ha

venido empleando para dispositivos que requieren movilidad, y finalmente sus circuitos

electrónicos, que se diseñan a partir de ciertos requisitos según la selección de cada

componente del prototipo construido.

A continuación se presenta la selección de elementos como motores, ruedas, sensores,

convertidores y sistema de alimentación:

• Selección de los motores: La selección de los motores depende del sistema a

desarrollar y según sus características se busca el actuador que mejor se adapte a

sus requerimientos. Los servomotores tienen un desplazamiento angular limitado,

para su funcionamiento se basan en un control por ancho de pulso, por lo tanto no

es el recomendable para este prototipo. Los motores paso a paso, por el contrario

ofrecen precisión elevada en el giro del rotor debido a su estructura interna, sin

embargo exigen mayor electrónica para su control, lo cual lo hace relativamente

complejo. El motor DC, tiene un modelo lineal que facilita su control, puede alcanzar

altas velocidades y ofrecer una operación más suave a bajas velocidades, además

Page 40: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

24 García Nickson

Molina Cristian

de un alto torque y adicional a esto son más sencillos de instrumentar. A esto se

añade una muy buena relación entre coste, dimensiones, peso, potencia, eficiencia y

cierto control dentro de los rangos de velocidades a los que serán sometidos, de ahí

que se eligiesen los motores DC. En la Tabla 2-2 se puede observar una relación

entre las características principales de los motores anteriormente detallados.

Tabla 2-2. Características principales de las opciones de actuadores a implementar. Fuente: Autores

Se selecciona el Motor DC (Corriente Directa) debido a que ofrece las prestaciones

suficientes para este tipo de robot. Para superar sus limitaciones, como lo son las bajas

velocidades y el desconocimiento del valor de las mismas, se acoplan a estos unos

pequeños engranajes reductores a la salida, lo cual ofrecerá un mayor par y un mejor

control a bajas velocidades. Además, se añaden codificadores incrementales o encoders,

que ayudarán a conocer la velocidad de cada una de las ruedas y posición del robot

gracias a los cálculos odométricos.

Considerando lo anterior para la elección del motor, se debe tener en cuenta tres

aspectos fundamentales como son: la velocidad, el par y la eficiencia energética del tipo

de motor, al igual que la potencia necesaria para mover toda la estructura. A continuación

se realizarán los cálculos pertinentes para saber que par debe suministrar cada motor:

1. Inicialmente se estima la masa total de los componentes que conforman la plataforma

móvil, además de algunos componentes extra que podrían ser necesarios en

aplicaciones futuras. Así se obtiene una masa total de:

𝑀𝑡 = 𝑀𝑒 + 𝑀𝑚 = 4.2𝑘𝑔 + 16𝑘𝑔

𝑀𝑡 = 20.2 𝑘𝑔

Mt representa la masa total aproximada del robot, Me es la masa estimada de los

componentes electrónicos y Mm es la masa estimada de los componentes

mecánicos.

Page 41: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 2 25

Proyecto de grado. Ingeniería Electrónica. 2019. 25

2. Se toman ciertos parámetros de diseño en el modelo de la plataforma móvil como,

eficiencia de las cajas reductoras, número de ruedas motrices, radio de ruedas, los

dos últimos parámetros hacen parte del diseño mecánico expuesto en la sección 2.2.

• Eficiencia de las reductoras:

η = 0.8

• Número de ruedas motrices:

n = 6

• Radio de ruedas motrices:

r = 0.0725m

3. Teniendo en cuenta que la masa podría variar en el proceso de construcción de la

plataforma móvil, se consideró un margen de seguridad del 80 %, es decir, se dividió

la masa total entre 0.8 para obtener una nueva 𝑚𝑡 que será la considerada en la

selección de torque del motor. Así la masa de seguridad:

𝑀𝑡 ≈ 25 𝑘𝑔

4. Considerando que en las aplicaciones móviles terrestres de exploración se requiere

velocidades menores a 1 m/s, se escogieron los siguientes parámetros iniciales:

• Velocidad esperada (V): se ha decidido establecerla en 0.8 𝑚

s

• Aceleración esperada (a): fijada en 0.5 𝑚

𝑠2

• Posible pendiente a superar (𝛼): de unos 30𝑜

La velocidad de un motor siempre se refiere a la velocidad angular de su eje de giro y en

el Sistema Internacional (SI) viene dada en rad/s aunque hay otra unidad de uso muy

frecuente en los motores que es en revoluciones por minuto (rpm).

5. A continuación, con los parámetros que se disponen se calcula la velocidad angular

que proporcionarán los motores para mover al prototipo:

𝑇 = 𝑟 ∗ F (2-1)

𝑉𝑙 = 𝑤 ∗ 𝑟 (2-2)

En (2-1) se observa la relación entre el par motor y el diámetro de las ruedas, en donde T

representa el torque del motor en N.m, r representa el radio de la rueda en metros.

Cuanto mayor es el radio de las ruedas mayor será la velocidad lineal y menor la fuerza

ejercida por el motor. A partir de (2-2) se puede calcular la velocidad angular requerida

por los motores en rpm, en donde Vl es la velocidad lineal en m/s, w es la velocidad

angular en rad/s y r como anteriormente se menciono es el radio de la rueda [29]:

Page 42: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

26 García Nickson

Molina Cristian

𝑤 =𝑉𝑙

𝑟

𝑤 =0.8

𝑚𝑠

0.0725 𝑚

𝑤 = 11𝑟𝑎𝑑

𝑠

Para realizar la selección del motor en el parámetro de velocidad angular en la tabla

(2-2) de comparaciones, se hizo una conversión de unidades (radianes por segundo

a RPM), por lo tanto:

𝑤 = 11𝑟𝑎𝑑

𝑠∗

60

2 ∗ 𝜋

𝑤 = 105 𝑅𝑃𝑀

6. A continuación, se relaciona la fuerza que deben ejercer los motores en función del

peso del robot y la velocidad máxima deseada. Para ello, se pasará a calcular el par

motor o torque necesario con (2-3) dónde:

𝐹 = (𝑀𝑡 ∗ 𝑔 ∗ 𝑠𝑒𝑛(𝛼) + 𝑀𝑡 ∗ 𝑎)

𝐹𝑆

( 2-3)

𝐹 =108 𝑁

0.7 = 154 𝑁

𝑇 = 0.0725 m ∗ 154 N

𝑇 = 11.18 𝑁.𝑚

Teniendo en cuenta topología Skid-Steering del robot, la cual cuenta con 6 ruedas

acopladas con un motor independiente para cada una, de forma que el torque que

deberá desarrollar el rover será dividido en el número de ruedas motrices del mismo:

𝑇 =7.569 𝑁.𝑚

6= 1.267 𝑁. 𝑚 ≂ 1.3 𝑁. 𝑚

En (2-3) F representa la fuerza del motor en Newton, g fuerza de atracción o

gravedad, 𝛼 ángulo de inclinación del terreno, 𝑎 es aceleración lineal del robot y FS

es el factor de seguridad que indica la capacidad en exceso que tiene el sistema por

sobre sus requerimientos.Teniendo en cuenta que robot cuenta con 6 ruedas

acopladas con un motor independiente para cada una, de forma que el torque que

deberá desarrollar el Rover será dividido en el número de ruedas motrices del mismo:

7. Finalmente, se calcula la potencia que deben desarrollar los motores (2-4), del torque del motor y la velocidad angular se halló la potencia mecánica del motor:

Page 43: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 2 27

Proyecto de grado. Ingeniería Electrónica. 2019. 27

𝑃 =𝑇 ∗ 𝑤

ղ

(2-4)

𝑃 =1.8 ∗

6.8𝑟𝑎𝑑𝑠

0.8

𝑃 = 16,1 𝑊

El cálculo de los requisitos de potencia se utiliza a menudo como un paso preliminar

en la selección de motor. Si se conoce la potencia mecánica requerida para una

aplicación determinada, se pueden examinar las clasificaciones de potencia máxima

o continua de varios motores para determinar cuáles son posibles candidatos para su

uso en la aplicación. Para cumplir las especificaciones indicadas teniendo en cuenta

posibles inclinaciones de 30 grados serán necesarios motores con una potencia de

aproximadamente 16W. En las Tablas 2-3 y 2-4 se ilustran los parámetros para

selección de los motores.

Tabla 2-3. Comparación de características de diferentes motores DC. Fuente: Autores

M

od

elo

Fab

rican

te

T

ran

sm

isió

n

M

ax.

Eff

Velo

cid

ad

No

min

al

[rp

m]

To

rqu

e S

tall

N

-m

C

orr

ien

te

No

min

al [A

]

Masa [

g]

Vo

ltaje

N

om

inal

C

osto

US

D

[$]

37Dx73L

Pololu SI 80% 100 1.55 0.3 190 12

VDC 35

RE35 Maxon Motors

NO 89% 7160 0.85 4.45 385 24

VDC 330

37D52 Maxon Motors

NO 84% 7070 0.71 3.36 340 24

VDC 360

DCX22L

Maxon Motors

SI 82% 955 1.27 0.211 90 12

VDC 115

Tabla 2-4. Matriz de selección para motores del robot. Fuente: Autores

Modelo

Consumo energético

(20%)

Velocidad Angular (20%)

Torque (30%)

Masa (10%)

Costo (20%)

TOTAL

37Dx73L 4 4.2 4.5 4 5 4.4

RE35 4 2 2 3 2 2.6

37D52 4 2.5 3 3.5 2 3.2

DCX22L 3.8 3 3.5 4.5 3.8 3.72

Los motores seleccionados para el desarrollo del presente prototipo corresponden al

modelo 37Dx73L del fabricante Pololu, los cuales requieren de un voltaje de alimentación

de 12 V, cuentan con par nominal de 220 oz-in (1,55 N.m), velocidad angular 100 RPM y

potencia mecánica de 16.28 W. Asimismo, el factor de reducción del motor es de 100:1.

En la Figura 2-2 se muestra el motor de DC utilizado en el prototipo.

Page 44: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

28 García Nickson

Molina Cristian

Figura 2-2. Motor DC seleccionado para el robot. Fuente: www.pololu.com

• Selección de tarjeta de control principal: Esta etapa constituye el cerebro o

inteligencia del robot, puede elaborarse con la combinación de diferentes

microprocesadores y micro controladores. Actualmente se usan tecnologías

embebidas como los Arduino, Raspberry PI o FPGA’s, lo ideal aquí es utilizar una de

estas tarjetas, que cumpla con las características de capacidad (puertos, memoria),

velocidad de procesamiento, bajo consumo de energía y facilidad de implementación.

No obstante, adicional al sistema lógico es necesario emplear unidades de

acondicionamiento que en función de las señales de control enviadas desde la unidad

de control, genere una acción con la potencia necesaria para accionar los

actuadores. Los parámetros para su elección se tratarán en las Tablas 2-5 y 2-6.

Tabla 2-5. Matriz de selección de la tarjeta de control principal. Fuente: Autores

Dispositivos / %

Jetson TK1

BeagleBone Blue

Raspberry Pi 3 B

Alimentación (5%)

12 V

Nota

5 V

Nota

5 V

Nota

5.0 3.5 3.5

Numero Cores (10%)

4

5.0

4 5.0

4

5.0

RAM (10%)

2 GB

4.0

512 MB 2

1 GB

3.5

Memoria (15%)

16 GB

4.5

4GB 3.5

Micro SD

0.0

CPU (10%)

2.32 GHz

5.0

1 GHz 3.0

1.2 GHz

3.5

Dimensiones (5%)

12.7 x 12.7 x2.5 cm

2.0 9.5 x 5.3 x 1.5

cm 4.0 8.6 x 5.6 x 1.7 cm 4.5

GPIOS (15%)

8

4.0

8 4.0

17

5.0

Consumo (5%)

900 mA

5.0

1350 mA 3.5

1400 mA

1.0

Masa (5%)

499 gr 1.0 110 gr 4.0 45 gr 5.0

Costo USD (20%)

$ 199 3.5 $148 4.0 $35 5.0

TOTAL

4.0

3.5

3.6

Page 45: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 2 29

Proyecto de grado. Ingeniería Electrónica. 2019. 29

En el mercado se puede encontrar una gran variedad de plataformas de alto rendimiento

y bajo consumo energético, estas han sido implementadas en distintas aplicaciones de

forma eficiente como la plataforma Jetson TK1 desarrollada por Nvidia, que integra un

procesador ARM Córtex de cuatro núcleos y una GPU (Unidad de Procesamiento

Gráfico) de alto rendimiento que destaca sobre otras plataformas basadas en

procesadores, debido a que representa un balance entre costo en el mercado,

rendimiento y consumo energético, la plataforma Jetson TK1 es mucho más viable que

otras basadas en FPGA de alta gama.

Esta plataforma constituye la alternativa más idónea para la implementación y ejecución

de la programación en paralelo utilizando la GPU frente a la programación convencional

con el procesador CPU. Así, durante el desarrollo de este trabajo, se han ejecutado

diversos algoritmos en la tarjeta, para evaluar las limitaciones y propiedades de la misma.

A continuación se muestra la matriz de selección para el dispositivo controlador de

potencia. Se hace un análisis de las características de los drivers de potencia más

utilizados en aplicaciones robóticas y se valoran sus características de desempeño, para

elegir el más adecuado.

Tabla 2-6. Matriz de selección de driver de potencia para motores. Fuente: Autores

Referencia / %

RoboClaw 2x15A Pololu Dual

VNH5019 RoboteQ MDC2460

Frecuencia de Operación

(5%) Hasta 50 kHz

Nota 20 kHz

Nota Hasta 50 kHz

Nota

5.0 2.5 5.0

Corriente Máxima (25%)

15 A 3.5 30 A 4 60 A 5.0

Protecciones (10%)

Térmica, por sobrevoltaje y

por sobre corriente

5.0 Por corriente 3.5

Térmica, por sobrevoltaje y por

sobre corriente

5.0

Tamaño (20%)

7 x 5 x1.7 cm 4.5 6.4 x 5.1 x 0.96 cm

5.0 14 x 14 x 25 cm 0.5

Encoders (5%)

Cuadratura

5.0

NO 0.0

Cuadratura

5.0

Comunicación (5%)

Análoga, RS232, PWM,

RC Pulse y USB

5.0 PWM 3.5 Análoga, RS232, PWM, RC Pulse y

USB 5.0

Peso (20%)

61 gr 4.0 18 gr 5.0 400 gr 0.5

Costo USD (10%)

$ 155 3.5 $45 5.0 $ 360 0.5

TOTAL

4.2

3

3.3

Como resultado de la matriz de selección presentada en la Tabla 2-6, se eligió la tarjeta

RoboClaw de IonMotion, para regular la potencia de salida hacia los motores, debido a

Page 46: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

30 García Nickson

Molina Cristian

que cuenta con los niveles de corriente y voltaje requeridos y un tamaño y peso

reducidos.

• Selección de convertidores DC-DC: Los aspectos a considerar para la selección de

convertidores DC-DC son los siguientes, inicialmente se debe tomar en cuenta que

se utilizan dos fuentes de energía diferentes para dividir la alimentación del sistema

en Potencia y Lógico: La primera línea de alimentación corresponde a los niveles de

voltajes y corrientes sobre los motores de tracción y elementos de manipulación de

carga, esto se conoce como potencia; la parte lógica corresponde a la alimentación

de la tarjeta de control, sensores y demás periféricos. Con estas características, se

incluye el uso de conversores DC–DC regulables, debido a que todos los dispositivos

electrónicos no operan con los mismos niveles de corriente y voltaje. Esto hace

necesario incluir elementos de acondicionamiento que garanticen los niveles

correctos de energía según sea requerido.

Tabla 2-7. Matriz de selección de convertidores DC-DC. Fuente: Autores

Referencia

DROK 90483 DC OSKJ -UC3844

Voltaje de entrada / salida

(5%)

5 – 40 VDC 1.2 – 36 VDC

Nota 10 – 32 VDC 5 – 30 VDC

Nota

5.0 4.0

Corriente de salida (25%)

8 A / 12 A MAX 4.0 5A / 16 A MAX 4.5

Potencia (10%)

100W 200W con disipación

5.0 80W

120W con disipación

3.5

Eficiencia (20%)

95 %

5.0

90 % 4.0

Tamaño (5%)

6.0 x 4.3 x 2 cm

5.0

6.5 x 4.7 x 2.35 cm 3.5

Protección a cortocircuitos (5%)

SI

5.0

NO 0.0

Peso (20%)

51 gr 4.5 66 gr 3.5

Costo (10%)

$ 11.8 3.0 $10,85 4.5

TOTAL

4.56

3.4

A continuación, se describirán en detalle las características de alimentación para los diferentes elementos del robot móvil, se cuenta con 2 baterías de 11.1 Voltios (3S) a 6000mAh, una es la fuente de alimentación de la línea de potencia de los subsistemas de acción del robot, y la otra es la encargada de alimentar la línea lógica de los subsistemas de percepción y unidad de control. El regulador de tensión será el encargado de convertir el voltaje de la batería a 5 VDC, para poder alimentar algunos elementos como servomotores, su respectivo driver, y un módulo de relés.

Page 47: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 2 31

Proyecto de grado. Ingeniería Electrónica. 2019. 31

Ofrece 6 Amperios de intensidad, lo cual se considera suficiente ya que los mayores consumos residen en el driver de servomotores (1250mA Max) y el módulo de relés (200mA Max).

Por otro lado, se utiliza un convertidor DC-DC de 6A en la línea lógica con las mismas características, no obstante este será el encargado de regular el voltaje a 12 VDC para la tarjeta Jetson TK1 (800mA), Hub USB 9 puertos con alimentación externa (2650 mA ). Como resultado de la matriz de selección presentada en la Tabla 2-7, se eligió convertidor DC-DC DROK 90483 Regulador de voltaje Buck.

• Selección de las baterías: Las baterías son la fuente de energía portátil que se ha

venido empleando para dispositivos que requieren movilidad, y en el caso de este

prototipo en particular no es la excepción. Para la elección de estas además de la

tensión de la batería, se tomaron en cuenta la corriente en amperes por hora que

podrían proporcionar. Se requiere de 12V y una corriente máxima 1.33 Amp para

cada motor en casos de máxima exigencia, así se optó por usar dos baterías

recargables de 12V y 6 Amp/hora disponibles comercialmente, ya que estas permiten

un manejo adecuado de la potencia requerida por los motores y una mayor

autonomía, con el único inconveniente del peso de cada una de ellas, pero como ya

había sido considerado este aspecto para la elección de motores, no representa

ningún problema. Aunque en el mercado existen muchos tipos de baterías

recargables, es necesario tener en cuenta la eficiencia de estas, la capacidad de

corriente (mAh) y el peso. Las más usadas son las baterías tipo LiPo (abreviatura de

Polímero de Litio), que tienen las siguientes características:

• Son ligeras y se pueden hacer de casi cualquier forma y tamaño.

• Tienen gran capacidad y densidad energética, lo que significa que tienen

mucha energía en un tamaño reducido.

• Tienen una tasa de descarga alta para alimentar los sistemas eléctricos más

exigentes.

A continuación, se determina el consumo de cada subsistema del Rover en

condiciones extremas:

o Corriente de convertidor DC – DC: 0.15 A, Voltaje de convertidor DC-DC: 5

VDC

𝑃𝑐 = 𝐼𝑐 ∗ 𝑉𝑐

𝑃𝑐 = 0.15𝐴 ∗ 5𝑉 = 0.75 𝑊

Donde Pc es la potencia o consumo energético del convertidor DC-DC, Ic

corriente del convertido y Vc es el voltaje ajustable del convertidor.

o Corriente de tarjeta control Jetson TK1: 0.8 A, Voltaje de tarjeta de control: 12

VDC

𝑃𝐽 = 𝐼𝐽 ∗ 𝑉𝐽

Page 48: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

32 García Nickson

Molina Cristian

𝑃𝐽 = 0.8𝐴 ∗ 12𝑉 = 9.6 𝑊

Donde PJ es la potencia o consumo energético de la tarjeta de control, IJ

corriente de la tarjeta de control y VJ es el voltaje nominal de la tarjeta de

control.

o Corriente de HUB: 0.6 A, Voltaje de HUB: 12 VDC

𝑃𝐻 = 𝐼𝐻 ∗ 𝑉𝐻

𝑃𝐻 = 0.6𝐴 ∗ 12𝑉 = 7.2 𝑊

Dónde PH es la potencia o consumo energético del HUB, IH y VH son su

corriente y voltaje respectivamente.

Para realizar la selección de la batería es importante determinar la cantidad de

energía que puede almacenar, medida en Amperios-hora. Así se puede conocer el

tiempo que duración de una batería mientras está alimentando los elementos de

acción y percepción. Teniendo el consumo promedio de los elementos que

conforman el subsistema, se realizaron los cálculos para establecer la batería más

conveniente.

𝑃𝐵𝐴𝑇𝑇 =𝑃𝐶

ղ𝑑𝑐−𝑑𝑐 +𝑃𝐽 + 𝑃𝐻 = 17.58 𝑊

𝐼𝐵𝐴𝑇𝑇 =𝑃𝐵𝐴𝑇𝑇

12= 1.46 𝐴

𝐶𝐴ℎ =𝐼𝐵𝐴𝑇𝑇 ∗ 𝐴

𝐹𝑆 = 6.2 𝐴𝐻

Donde 𝑃𝐵𝐴𝑇𝑇 es la potencia suministrada por la batería, 𝐼𝐵𝐴𝑇𝑇 es la corriente de la

batería y 𝐶𝐴ℎ es la capacidad en Ah de la batería a seleccionar. Existen también

algunas dificultades de seguridad con esta tecnología, pero pueden superarse si se

manejan adecuadamente los ciclos de carga y descarga. Por su potencia, los motores

determinan la mayor parte del consumo de energía del robot, y con ello el tipo de

batería a emplear. En la Tabla 2-6, se muestra la matriz de selección, y se consideran

los parámetros de salida de la batería, también sus características de forma y

tecnología.

Existen también algunas dificultades con esta tecnología, pero pueden superarse si se

manejan adecuadamente los ciclos de carga y descarga. Por su potencia, los motores

determinan la mayor parte del consumo de energía del robot, y con ello el tipo de

batería a emplear. En la Tabla 2-8, se muestra la matriz de selección, y se consideran

los parámetros de salida de la batería, también sus características de forma y

tecnología.

Page 49: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 2 33

Proyecto de grado. Ingeniería Electrónica. 2019. 33

Tabla 2-8. Matriz de selección de baterías. Fuente: Autores

Referencia

HRB 6000mah 3S

50~100C Lipo Pack

Turnigy nano-tech

3300mah 3S 65~130C Lipo Pack

Turnigy nano-tech 5000mah 3S

35~70C Lipo Pack

Corriente máxima, número de celdas y tasa de descarga

continua [30%]

6 AH, 3S y 50C

Nota 3.3 AH, 3S y 65C

Nota 5.0 AH, 3S y 35C

Nota

5.0 3.7 3.0

Tecnología [10%]

Li-Po

5.0 Li-Po

5.0

Li-Po

5.0

Peso [20%]

450 gr 4.0

500 gr

4.0 659 gr

3.0

Tamaño [30%]

15x4.5x4 cm 3.5

13.5x4.4x4 cm

4.0 15.4x4.9x4.1cm

3.5

Costo USD [10%]

$ 75 3.5 $ 56 4.0 $ 60 3.7

TOTAL 4.2 3.85 3.6

Como se puede observar en la matriz presentada anteriormente, la opción número uno

es la batería más favorable dados los criterios y restricciones de selección. Por tanto la

batería adquirida e implementada en el robot fue HBR – 6000 mAh - 50C ilustrada en la

Figura 2-3.

Figura 2-3. Batería LiPo HBR 6000 mAh - 50C. Fuente: www.rcextremo.co

• Selección de sensores: Los sensores son aquellos encargados de transmitir la

información captada del medio externo. En el área de robótica hay distintas

herramientas que pueden ser de ayuda para obtener y procesar los datos necesarios

con el objetivo de resolver los problemas de mapeo y localización. Según lo expuesto

se analizarán algunos sensores que se consideran útiles para este prototipo como

encoders, IMU, Kinect, Cámara web.

Page 50: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

34 García Nickson

Molina Cristian

En un robot móvil terrestre es importante tener la capacidad de explorar el entorno

obteniendo datos durante la navegación y transmitirlos al centro de control para

facilitar su maniobrabilidad a largas distancias. A continuación se describen los

sensores necesarios para el correcto desarrollo del proyecto.

a) Los encoders miden la cantidad de giro del eje de los motores; a partir de esta

información y del radio de las ruedas motorizadas puede calcularse la distancia

recorrida por la plataforma, siempre y cuando no haya deslizamientos y el giro de

las ruedas corresponda exactamente al avance lineal del robot. Los encoders más

comúnmente usados en las aplicaciones de robótica utilizan emisores infrarrojos y

discos ranurados que se ajustan al eje del motor [17].

Figura 2-4. Encoder de efecto Hall utilizado. Modificado de: www.pololu.com

También existen encoders de tipo magnético como el utilizado en el desarrollo de

este proyecto Figura 2-4, que usan la posición de los polos magnéticos para

establecer el estado actual del encoder con un sensor de efecto Hall Figura 2-5.

Generan dos señales de onda cuadrada con un desfasamiento de 90°, de ahí que

sean conocidos como encoders en cuadratura. El sensor es de tipo analógico y

produce un código único que puede ser traducido al ángulo del eje.

Figura 2-5. Principios de funcionamiento del encoder de efecto Hall. Fuente: Autores

En la Figura 2-6 se observan las señales generadas por las fases A y B del

encoder con tensión del motor de 12 V y encoder de 5 V, se observa que en este

caso la señal de color azul tiene un desfasamiento de 90° con respecto a la de

color amarillo. El microcontrolador que realiza el monitoreo de estas señales

determina el sentido de giro al conocer cuál de las señales adelanta a la otra. Por

Page 51: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 2 35

Proyecto de grado. Ingeniería Electrónica. 2019. 35

ejemplo si la señal de color amarillo adelanta a la azul, el sentido es horario. Por el

contrario si la señal azul adelanta a la amarilla, el sentido es anti horario.

Figura 2-6. Señales generadas por el encoder. Fuente: www.pololu.com

b) La Unidad de Medición Inercial IMU son dispositivos que miden e informan acerca

de la velocidad, orientación y fuerzas gravitacionales existentes en determinados

aparatos, usando acelerómetros y giróscopos. En la actualidad, gracias a la

tecnología MEMS (Sistemas Micro Electro Mecánicos) se están combinando

dichas IMU’s con otros sensores como barómetros, termómetros o

magnetómetros consiguiendo de esta manera datos más fiables. La Xsens serie

MTI-10 utilizada en este prototipo, es una unidad de medición inercial de

tecnología MEMS que se compone 3 acelerómetros distribuidos ortogonalmente,

3 giróscopos distribuidos ortogonalmente y 3 magnetómetros distribuidos

ortogonalmente, y se orienta al control de un sistema móvil no tripulado; el

objetivo del mismo es conseguir un trazado de trayectoria ejecutada por el robot

móvil. La captura de datos se realiza conectando el sensor vía USB al sistema de

control de forma que permite obtener tanto la señal sin procesar (Raw data) como

los ángulos ya calculados. El costo de estos dispositivos es bastante alto debido a

que sus características los convierten en dispositivos ideales para mediciones en

ambientes reales por tiempos prolongados [15]. En la Figura 2-7 se ilustra la IMU

seleccionada así como sus características.

Figura 2-7. Especificaciones de la IMU seleccionada. Modificado de: [30]

Page 52: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

36 García Nickson

Molina Cristian

c) El Kinect es un dispositivo que permite el reconocimiento de imágenes en tiempo

real. El sensor está compuesto por dos partes principales: un proyector y una

cámara de infrarrojos VGA. La profundidad de los objetos es captada por la

cámara gracias al rebote de los haces de luz por el objeto, creando así un “campo

de profundidad” que permite al sensor diferenciar entre los objetos estáticos de la

sala y el usuario que lo manipula. Este “campo de profundidad” consiste

básicamente, en que Kinect recibe estos haces infrarrojos que varían en mayor o

menor grado de color dependiendo de la distancia a la que se encuentran del

sistema [16]. El sensor Kinect dispone de cuatro partes fundamentales Figura 2-8.

Figura 2-8. Sensores del Kinect V1. Fuente: Autores

Los sensores de profundidad 3D hacen un seguimiento del cuerpo dentro del

área de visión. Se dispone de un proyector de profundidad (retícula izquierda) y

un sensor de profundidad (retícula derecha), que calculan la distancia en función

del tiempo que tarda en reflejar la luz, también incorpora una cámara RGB (Red,

Green, Blue) que ayuda identificar y captar imágenes y vídeos con una

resolución máxima de 640x480 a 30 fps. El sensor infrarrojo permite obtener una

imagen que representa la radiación térmica emitida por el objeto observado.

Entonces, las informaciones captadas representan un mapeo de las emisiones

térmicas, emitidas por el objeto radiado u observado. Una parte de estos rayos

va a ser reflejada por el conjunto de las superficies tocadas. Así, cuanto más

cercano esté un objeto, mayor será la cantidad de radiación reflejada. Por lo

tanto, la cámara infrarroja, gracias a estos datos de cantidad de radiación

recibida, puede medir la distancia entre la cámara y el objeto. La información de

las coordenadas más los datos de la cámara RGB forman las nubes de puntos.

d) En cuanto a la elección de la cámara para la navegación remota del robot móvil

terrestre, es necesario hacer una adaptación de una cámara web debido a que los

requerimientos que se necesitan para este elemento son simples, que sea de un

tamaño promedio para ubicarla sobre un aluminio perfilado en la parta superior

del robot, ampliando la visión del mismo, y que tenga una resolución media para

que el flujo de datos que se transmitan en tiempo real sea ligero. Partiendo de

estos requerimientos se escoge una cámara fabricada por la reconocida empresa

Page 53: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 2 37

Proyecto de grado. Ingeniería Electrónica. 2019. 37

Logitech (Figura 2-9), la cual cuenta con las siguientes características principales:

funcionamiento 24 horas continúas, alimentación y transmisión de datos vía USB,

resolución de 720p. El modelo seleccionado tiene un costo aproximado de 200

USD y ofrece las funciones de reconocimiento facial y motor integrado para sus

movimientos de rotación PTZ (Pan, Tilt, Zoom).

Figura 2-9. Logitech QuickCam Orbit AF. Fuente: www.logitech.com

Con el objetivo de lograr los enlaces de comunicación entre los subsistemas de

percepción y manipulación, será necesario establecer un sistema de comunicación

bidireccional entre los dispositivos a bordo del robot y el equipo desde el cual este sea

comandado por el piloto. Para llevar a cabo este subsistema se debe desarrollar e

implementar un protocolo de comunicaciones eficiente, reduciendo en lo posible la

latencia. Dicho protocolo estará basado en configuraciones de red propios de ROS

basados en TCP/IP. La aplicación de este sistema es la adquisición de los comandos que

le dan movimiento al robot, bien sea en pista o en recolección, además proporciona

información de la velocidad de los motores, así como la información captada por los

demás elementos de percepción.

Para satisfacer las necesidades inalámbricas de casi cualquier situación que se pueda

encontrar, se cuenta con un modem portable TP-LINK TL-MR3020 interconectado como

se muestra en la Figura 2-10 con modos de funcionamiento de Router, Hotspot, Extensor

de Cobertura, Cliente y Punto de Acceso.

Page 54: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

38 García Nickson

Molina Cristian

Figura 2-10. Esquema del subsistema de comunicación. Fuente: Autores

El esquema utilizado para accesos remotos a largas distancias consiste primeramente en

la conexión de la unidad de control Jetson TK1 al módem TP-Link mediante un cable

LAN. Este módem se configura como repetidor de señal, de modo que se conecte

inalámbricamente a un router con acceso a internet y de esta forma el sistema es

enlazado a la red, teniendo como inconveniente la dependencia del alcance de la red

repetida por el módem. El equipo TP-Link a bordo ofrece la opción de conectar a él un

dispositivo de internet móvil USB, eliminando la necesidad de enlazarse a otro router y

con esta la dependencia de su alcance al conectar directamente el sistema a internet, no

obstante surgen dos inconvenientes con este método, los cuales son el costo de una

tarifa de internet móvil y la reducción de la velocidad de transmisión y recepción de datos.

También existe la posibilidad de adquirir el módulo WiFi disponible para la unidad de

control (Intel Wireless-AC 7260), permitiendo conectarla a una red sin necesidad del

módem portable a bordo. Esta última opción puede incrementar el costo ya que el

módulo requiere también de la adquisición de antenas compatibles para su óptimo

rendimiento.

2.1.2 Diseño Electrónico

Todos los elementos mencionados en la sección inmediatamente anterior deben

enlazarse mediante diferentes etapas. La capa electrónica del sistema consta de dos

etapas principales, alimentación o potencia y acondicionamiento. Esta sección del diseño

electrónico describe la parte principal de los circuitos electrónicos, utilizados para poner

en marcha los motores, drivers de potencia, reguladores de voltaje y sensores ya

especificados. El diagrama circuital del Alpha Rover se adjunta en la sección de anexos,

así como su respectiva tabla de etiquetas o nomenclatura de conexiones (Anexo A).

Circuitos de alimentación

Después de haber seleccionado correctamente la instrumentación que requiere el

prototipo, se diseñan los circuitos de potencia para cada uno de los elementos del

sistema. En la Figura 2-11 se muestra el diagrama eléctrico del circuito utilizado como

fuente para todos los demás componentes, se aprecia el uso de dos tensiones reguladas

Page 55: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 2 39

Proyecto de grado. Ingeniería Electrónica. 2019. 39

diferentes: 5 V para la tarjeta de control de servos (Pololu Master Servo-Controller) y el

módulo de relés diseñado; y 12 V para la tarjeta principal (Jetson TK1), Kinect y Hub

USB, que se obtienen a partir de dos convertidores DC-DC buck-boost de 8 A nominales

descritos previamente, estos convertidores estabilizan las tensiones usadas y la

mantienen en un nivel constante, no obstante se adicionaron salidas de tensión que

provienen directamente de las baterías para la energización del driver de motores,

garantizando que estos siempre cuenten con la intensidad de corriente necesaria sin

limitación alguna. Cada salida de voltaje se acopla a un terminal en bloque con el objetivo

de facilitar su accesibilidad.

En el diseño de la PCB se instalaron dos interruptores para la división de las líneas de

lógica y potencia, también cabe resaltar que se adaptó un botón de emergencia en caso

de alguna anomalía en el funcionamiento del robot, este botón desactiva la línea de

potencia, teniendo como resultado que se detengan los motores pero la unidad central de

procesamiento seguirá activa para corrección de posibles errores de software.

Figura 2-11. PCB diseñada para la etapa de alimentación. Fuente: Autores

Circuitos de acondicionamiento

Para esta etapa se diseñó una PCB (Figura 2-12) encargada de acoplar la salida

destinada a la alimentación de los seis motores con su respectivo driver, no obstante solo

dos de estos cuentan con encoders, el circuito para la interconexión de sus salidas con

Page 56: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

40 García Nickson

Molina Cristian

sus respectivos pines de lectura del Roboclaw también fue implementado en esta etapa.

Esta placa incorpora un módulo de relés como un dispositivo que opera mediante una

señal emitida por los pines GPIO de la unidad de control. La importancia de los relés

radica en la funcionalidad de las luces y laser de apoyo, también utilizadas como

indicadores de estado de la plataforma móvil mediante diferentes configuraciones de

parpadeo.

Figura 2-12. PCB diseñada para la etapa de acondicionamiento. Fuente: Autores

2.2 Capa Mecánica del Sistema

La capa mecánica del robot móvil consiste en la selección de materiales para realizar una

correcta construcción mecánica del robot, haciendo uso de herramientas de diseño para

lograr estructurar el prototipo de la manera más apropiada; tomando en cuenta los

requerimientos del vehículo en cada una de sus etapas, tanto para la construcción de la

plataforma móvil, como para la manufactura del brazo manipulador de carga. Una vez

comparadas y evaluadas las topologías, se estableció la configuración “Skid Steer” con

un sistema de suspensión rocker-bogie, por consiguiente el robot adopta una

configuración que implica la presencia de varios motores. Por otro lado el sistema de

suspensión elegido brinda al prototipo una alta estabilidad ya que absorbe de manera

eficiente todas las fuerzas externas ejercidas sobre el robot facilitando la navegación en

terrenos irregulares, además su estructura debe ser capaz de soportar peso extra,

debido a modificaciones que se realicen a futuro. Los principales requerimientos del

prototipo se detallan en la Tabla 2-1.

Page 57: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 2 41

Proyecto de grado. Ingeniería Electrónica. 2019. 41

2.2.1 Selección de Materiales para la Capa Mecánica

Los materiales utilizados en la construcción del robot determinan en gran medida el

desempeño final del prototipo, presentando una gran influencia sobre el peso, la

resistencia a impactos, el proceso de construcción y el costo asociado. Como criterios de

selección del material a utilizar, se plantearon: resistencia (asociada a la tolerancia a

impactos o choques con los obstáculos), costo (valor del material y su respectiva

manipulación), asequibilidad (facilidad de adquirir el material), peso (teniendo en cuenta

que el robot debe ser lo más liviano posible), maleabilidad (facilidad de manipulación en

para proceso de construcción). La Tabla 2-10, presenta para cada uno de los criterios

mencionados anteriormente una calificación entre 1 y 5 (siendo 5 la calificación más alta)

que permite establecer el material más apropiado para la aplicación de robot móvil.

Tabla 2-9. Matriz de selección para materiales de estructura. Fuente: Autores

Materiales/ Característ

icas Resistencia Costo Asequibilidad Peso Maleabilidad TOTAL

Aluminio 5 3 5 4 4 21

Tungsteno 5 2 2 4 3 16

PVC expandido

2 4 4 5 4 19

Metacrilato 2 5 5 5 3 20

Hierro 5 3 4 1 4 17

Fibra de carbono

5 1 2 5 3 16

Plata 5 1 3 2 3 14

Cobre 3 3 5 4 3 18

Fibra de vidrio

3 4 4 4 5 20

Finalmente, luego del análisis de posibles materiales presentado en la matriz de

comparación, se seleccionó el aluminio como mejor opción para la construcción de la

estructura principal o chasis del robot móvil, sin embargo debido a que internamente se

necesita resguardar las placas electrónicas, sensores, baterías y diversos elementos que

constituyen la parte electrónica del móvil, se seleccionó un segundo material, el

metacrilato o acrílico, debido a que este material no conduce la corriente eléctrica y actúa

como aislante para los circuitos eléctricos del prototipo; por último para el armazón del

prototipo se seleccionó la fibra de vidrio gracias a sus propiedades de densidad,

resistencia, tolerancia, costo y facilidad de transformación en comparación con otros

materiales. En la figura 2-13 se puede observar la estructura principal del robot (b),

plataformas en acrílico donde se fijan los circuitos (a) y armazón del robot móvil(c).

Page 58: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

42 García Nickson

Molina Cristian

a) b) c) Figura 2-13. Selección de materiales para la construcción. Fuente: Autores

2.2.2 Diseño Mecánico

El primer paso que se da en la construcción de los robots móviles es la elección de su

configuración cinemática, es decir, definir como estarán distribuidos los principales

elementos que lo componen como las ruedas o los motores. La precisión del robot,

dependerá en gran medida de su configuración cinemática o topología sabiendo que

tendrá la necesidad de desplazarse en un ambiente de trabajo y principalmente en

terrenos irregulares. A continuación se describirá el proceso de construcción del

prototipo, así como el diseño de cada una de las piezas del robot que se realizaron con

el software SolidWorks como se puede observar en la Figura 2-14,este software de

diseño mecánico permite simular piezas mecánicas así como su ensamble. La

manufactura de algunas de las piezas se realizó con la ayuda de un centro de

maquinado por control numérico (CNC), adicionalmente se hizo uso de herramientas

convencionales como el torno y la fresadora para construir los rines del prototipo.

La configuración skid-steer de seis ruedas seleccionada para el prototipo, los giros se

llevan a cabo de manera similar a como se hace en la configuración diferencial. Adicional

a esto se opta por implementar una suspensión tipo rocker-bogie utilizada en la mayoría

de robots exploradores operativos de las agencias espaciales, esta posee una parte fija

(rocker) la cual se encarga de la estabilidad y una parte móvil (bogie) que se encarga del

balanceo del robot al momento de cruzar obstáculos. Sin embargo se hizo una

modificación en la parte rocker adaptando un amortiguador de manera transversal a la

extremidad de esta sección, debido a que al ser fija el motor sufre un gran daño en su eje

cuando se desplaza por terrenos irregulares. A continuación se presenta el proceso de

diseño y fabricación de las principales piezas mecánicas requeridas para el ensamble del

rover.

Page 59: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 2 43

Proyecto de grado. Ingeniería Electrónica. 2019. 43

Figura 2-14. Diseño de robot móvil (configuración skid-steer – suspensión rocker-bogie) en

SolidWorks. Fuente: Autores

A) La estructura principal o chasis del robot móvil de aluminio se puede observar en la

Figura 2-15, considerando que no es una figura uniforme finalmente se obtienen las

dimensiones de 50cm x 20cm y su masa es de 2.5 kg, esta pieza se puede considerar

como la principal del prototipo, ya que es la base sobre la cual se colocaran todas las

demás. Haciendo una proporción con respecto al largo del chasis se realiza una

perforación lateral para ensamblar la suspensión rocker-bogie.

Figura 2-15. Estructura principal o chasis del robot. Fuente: Autores

B) Las ruedas motrices se observan en la Figura 2-16, y permiten el desplazamiento en

el plano del robot móvil, satisfacen condiciones de exploración en terrenos desérticos o

áridos en donde la superficie del suelo puede ser rocoso, arenoso o arcilloso. Las

dimensiones de las ruedas son las siguientes: 14.65 cm de diámetro externo, 6.7 cm de

diámetro interno y 10.6 cm ancho. Aunque comercialmente existen diferentes modelos de

Page 60: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

44 García Nickson

Molina Cristian

rines convencionales en aluminio, estos se maquinaron debido a que el buje de unión

entre la rueda y el motor es incompatible. Se hizo este mecanizado en aluminio Figura 2-

16 debido a la maleabilidad y resistencia del material y se usó un torno CNC para los

redondeos de la pieza, esto permitió que el tamaño de estas fuera el adecuado según el

diseño del robot, además permitió una mayor precisión y garantizó que las dimensiones

de cada una de las ruedas fueran iguales, así como sus masas (380gr c/u).

Figura 2-16. Construcción de rines en torno CNC. Fuente: Autores

Primero se realizó un prototipo en el software de diseño SolidWorks para modelar las

piezas en CAD 3D (diseño asistido por computadora) y observar su ensamblaje en 3D,

así como sus planos en 2D. Teniendo en cuenta las dimensiones iniciales mencionadas

anteriormente se adaptaron las medidas de la llanta al prototipo del rin, y además se

decidió dividir esta pieza en dos partes: cara superior Figura 2-17 (a-b) y cara inferior

Figura 2-17 (c-d), para obtener un ensamble modular. Estas dos cara se aseguran

mediante unos tornillos brístol, como en la Figura 2-17 (e), con cabeza UNF de 3/16 X ½;

la cara inferior cuenta con una adaptación para acoplar el eje del motor por medio del

buje de unión con tornillos brístol.

a) b)

Page 61: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 2 45

Proyecto de grado. Ingeniería Electrónica. 2019. 45

c) d)

e)

Figura 2-17. Diseño de rines para ruedas motrices en SolidWorks. Fuente: Autores

C) Buje de unión, utilizado para conectar las ruedas del robot con el eje del motor. La

base de la pieza tiene 2.95 cm de diámetro externo x 0.8 cm de ancho y la punta del buje

tiene 1 cm de diámetro externo x 0.5 cm de ancho. Estos montajes de aluminio le

permiten montar mecanismos personalizados en ejes de motor de 5 mm de diámetro. El

buje tiene cuatro orificios de montaje roscados para asegurarse a los ejes del motor con

tornillos brístol sin cabeza milimétrico INOX y un brístol sin cabeza NPT usado como

tornillo de fijación al eje. La Figura 2-18 muestra un buje de unión con uno de los

motorreductores de Pololu, funcionan con cualquier motorreductor Pololu con eje de

salida en forma de D de 16 mm de largo y 6 mm de diámetro.

Figura 2-18. Diseño y construcción de bujes en SolidWorks. Fuente: Autores

D) El soporte para motorreductor de la Figura 2-19 de aluminio permite montar los

motores en el sistema rocker-bogie fabricado. Los soportes cuentan con catorce orificios

de montaje para tornillos de tamaño M3. Estos soportes ligeros están diseñados

específicamente para asegurar los motores y tener un soporte mecanizado más

Page 62: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

46 García Nickson

Molina Cristian

resistente y modular para el ensamble del prototipo (este soporte está diseñado

específicamente para el diámetro del motorreductor seleccionado). En la Figura 2-20 se

observan de una manera más detallada las dimensiones del soporte para motores.

Figura 2-19. Diseño de soporte para motor con SolidWorks. Fuente: Autores

Figura 2-20. Especificaciones de diseño del soporte para motor con SolidWorks. Fuente: Autores

E) El sistema rocker-bogie se diseñó utilizando el método geométrico de triángulos

semejantes Figura 2-21 (b), ya que se debe garantizar la proporcionalidad tanto del

conjunto de las ruedas como del sistema de suspensión, antes de determinar los

segmentos del rocker-bogie se escogen algunos parámetros iniciales de diseño para

lograr los objetivos propuestos como superar obstáculos, subir escaleras, navegar sobre

cualquier superficie en un ángulo de 30˚ y mantener su estabilidad sobre terrenos

irregulares [14].

Page 63: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 2 47

Proyecto de grado. Ingeniería Electrónica. 2019. 47

Se comienza por hallar el segmento de la base BD que determina los puntos geométricos

importantes para la estabilidad del robot como son las distancias entre los centros de las

ruedas (y, x) como se observa en la Figura 2-21 (a), para lograr lo anterior se caracteriza

los obstáculos que el robot podrá sobrepasar o evadir, primero se definen los límites

estructurales de la escalera, que tendrá escalones de 15 cm de alto y 70 cm de largo. El

resultado del desarrollo matemático de los determinantes entre segmentos de la base de

los triángulos semejantes de observa a continuación:

ɵ = 𝑡𝑎𝑛−1 (𝑦

𝑥)

ɵ = 𝑡𝑎𝑛−1 (15

70)

ɵ = 12.09𝑜

Así que la longitud máxima del robot móvil puede ser de 70 cm. Para hallar el segmento

de la base se dice que la longitud total de la escalera menos la suma de los radios de las

ruedas delantera y trasera será el segmento BD.

𝐵𝐷 = 70 cm − (7.5cm + 7.5cm)

𝐵𝐷 = 55 𝑐𝑚

Para hallar los segmentos del triángulo (AB, AD) se debe definir los ángulos θ y α, ambos

ángulos de enlaces son 90𝑜. En el triángulo ACB el ángulo es de 90𝑜, los ángulos de

BAC y ABC son de 45𝑜, también consideramos de CA e igual a CB.

θ = α = 90𝑜

𝐴𝐵𝐶 = 90𝑜

𝐴𝐵2 = 𝐶𝐴2 + 𝐶𝐵2

𝐴𝐵2 = 2 ∗ 𝐶𝐴2

𝐴𝐵 = (2 ∗ 282)1/2

𝐴𝐵 = 37.29 𝑐𝑚 ≂ 40 𝑐𝑚

402 = 2𝐶𝐴2

𝐶𝐴 = 𝐶𝐵 = 30 𝑐𝑚

Ahora, hay que obtener la distancia del siguiente segmento AD, se calculan los valores

de los segmentos del triángulo rectángulo ECD.

𝐸𝐶𝐷 = 90𝑜

𝐶𝐷2 = 𝐸𝐶2 + 𝐸𝐷2

𝐶𝐷2 = 2 ∗ 𝐸𝐶2

Page 64: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

48 García Nickson

Molina Cristian

302 = 2 ∗ 𝐸𝐶2

𝐸𝐶 = 21 𝑐𝑚

𝐸𝐷 = 𝐸𝐶 = 21𝑐𝑚

𝐴𝐸 = 𝐴𝐷 − 𝐸𝐷 = 30 𝑐𝑚

𝐴𝐸 = 30 − 21 = 9𝑐𝑚

Para calcular la altura del sistema rocker-bogie se usa el teorema de Pitágoras y el

resultado que se obtenga se le suma al radio de la rueda para obtener la altura real:

ℎ2 = 𝐴𝐵2 − 𝐶𝐵2

ℎ = (402 − 302)1/2

ℎ = 26,451 + 𝑅

ℎ = 26,45 + 7 = 33,4 𝑐𝑚

Mediante el procedimiento descrito se obtienen las medidas necesarias para la

construcción del sistema rocker-bogie, visto en la Figura 2-21 (c).

a) b) c) Figura 2-21. Diseño del sistema de suspensión rocker-bogie. Fuente: [14] y Autores

El diseño del sistema de suspensión de bogies con seis ruedas tiene la ventaja de un

movimiento lineal que protege a todo el sistema de la rotación del pivote (punto E)

durante su operación, también cuenta con un amortiguador ubicado de manera

transversal al rocker para proteger los motores de la parte trasera del robot al reducir la

fuerza de los impactos en el momento de superar obstáculos. Esta mejora aumenta la

confiabilidad de la estructura en terreno accidentado o irregular al permitir que cada una

de las ruedas esté en todo momento en contacto con la superficie. A continuación se

presentan las piezas en SolidWorks para verificar el ensamble del sistema con cada una

de sus partes.

Page 65: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 2 49

Proyecto de grado. Ingeniería Electrónica. 2019. 49

Figura 2-22. Diseño y ensamble de rocker-bogie en SolidWorks y el prototipo real. Fuente: Autores

F) Los acoples de aluminio en la Figura 2-23, son soportes para sostener el marco

perfilado de aluminio y a su vez sirven como separadores para las plataformas de acrílico

en donde están ubicadas las placas electrónicas y sistemas de percepción, esto permite

la unión del armazón y la estructura del robot, por medio de unos tornillos bristol. Los

acoples tienen forma cilíndrica de diámetro externo de 10mm e interno de 3mm y 50mm

de altura, en total son 8 piezas de aluminio.

Figura 2-23. Diseño de acoples de aluminio. Fuente: Autores

G) Armazón, se fabricó un armazón en fibra de vidrio para cubrir la parte electrónica del

robot debido a que estaba expuesta a la intemperie Figura 2-24, esta es la carrocería del

robot, se encarga de alojar todos los componentes y de darle forma y rigidez al vehículo.

Sin embargo, a la vez que robusto debe ser ligero para que los motores utilizados

soporten su peso sin sobre esforzarse.

Page 66: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

50 García Nickson

Molina Cristian

a) b)

c) d)

e) f)

Figura 2-24. Ensamble del armazón en la estructura principal del prototipo. Fuente: Autores

Como se puede apreciar en la Figura 2-24 (a), se trata de una estructura robusta con

forma rectangular irregular. Está fabricada en un 40% de poliéster ya que es un material

liviano y maleable, por otro lado el 60% es de fibra de vidrio para aumentar su rigidez y al

mismo tiempo lograr robustez. Una de las principales ventajas que ofrece es, sin duda, el

soporte modular de aluminio perfilado Figura 2-24 (b), lo cual puede permitir en cualquier

momento, acoplar sensores o dispositivos en diferentes ángulos para obtener un mayor

rango de percepción del medio, perforar nuevos orificios o modificar alguna parte

deseada. En su interior se aprecian dos capas de acrílico: la parte superior se

aprovechará para la colocación de las placas de control y circuitos electrónicos que

acoplan drivers de potencia, como se muestra en la Figura 2-24 (c-d); en la parte inferior

está ubicada la alimentación y los circuitos que acoplan los diferentes conversores para

dividir las líneas de alimentación del robot, y por último se detalla la parte trasera en

donde se encuentra un panel de control Figura 2-24 (e) para proporcionar una interfaz

física amigable con el usuario, este panel de control cuenta con una conectividad

externa: puertos USB y puertos de carga para baterías correspondientes a control y

potencia, también se instalaron 2 interruptores y un botón de emergencia que permiten

energizar independientemente los subsistemas de percepción y acción, también se

instaló una pantalla LCD de 3.5’’ para visualizar los procesos y el estado actual de la

tarjeta principal de forma gráfica. La tapa superior Figura 2-24 (f), nos permite acceder

Page 67: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 2 51

Proyecto de grado. Ingeniería Electrónica. 2019. 51

fácilmente sin necesidad de desmontajes complejos, debido a que es de material acrílico

permitir acoplar sensores de forma sencilla.

H) Finalmente se realizó el diseño y selección de los componentes para la construcción

de un brazo robótico de cinco grados de libertad (DOF). Se parte estimando las masas

de la estructura, motores, cajas reductoras y electrónica asociada. Así con esta

información preliminar, conociendo los requerimientos de velocidad angular y torque y

respetando la lista de exigencias Tabla 2-11 se puede seleccionar los componentes

adecuados para este. Logrado esto se selecciona la transmisión adecuada para cada

articulación. Finalmente se comprueba el cumplimiento de las exigencias en las

posiciones más críticas del brazo robótico.

Tabla 2-10. Requerimientos para el brazo robótico. Fuente: Autores

Grados de libertad 6 DOF

Masa de la carga < a 1 kg

Material Aluminio rectangular

Alimentación 5 VDC

Motores Servomotores de stall-torque:8 Kg

piñonearía metálica

Piñonería Sí

Modular Sistema desmontable

Driver de control Pololu master controller servos

Inicialmente el brazo mecánico deberá tener la rigidez adecuada para manipular la carga

sin comprometer su característica de repetitividad. Por otro lado, su peso propio no

deberá de ser muy elevado pues esto restaría agilidad al robot. Teniendo en cuenta estos

2 detalles se deberá utilizar un material que posea características de alta resistencia y a

la vez baja densidad. El aluminio proporciona estas características idóneas de resistencia

y bajo peso, este material es excelente para mecanizado y presenta un muy buen

acabado superficial.

En el brazo robótico hay conjuntos motor-transmisión que se encargan de entregar el

torque necesario para lograr los movimientos de las articulaciones a las velocidades

requeridas. Dado que el brazo trabaja bajo una configuración mecánica distinta, se

explicara brevemente su funcionamiento Tabla 2-12: el brazo se estructuró en 6 partes

(servomotor base, eslabón 1, servomotor codo, eslabón 2, giro pinza, servomotor pinza)

inicialmente el brazo se encuentra en una posición home al momento de la manipulación,

el servomotor del eslabón 1 tiene acoplado un mecanismo de elongación con un tornillo

sinfín, este sistema destaca por su sencillo funcionamiento y ganancia en la longitud del

elemento manipulador de carga, en un extremo del sinfín se acopló una transmisión con

2 piñones, por lo tanto para la rotación completa del engranaje los servomotores están

modificados de forma que realicen un giro continuo, después se activa el codo que hará

un movimiento gradual de manera descendente, a continuación el eslabón 2, que

funciona del mismo modo que el eslabón 1, una vez llegue al suelo, se procede a

recoger el objeto gracias a la acción de la pinza y finalmente guardarlo por medio de una

rutina inversa a la anteriormente descrita.

Page 68: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

52 García Nickson

Molina Cristian

El brazo robótico se diseñó con un mecanismo alternativo, atendiendo a la facilidad de

manipulación de objetos específicamente para la plataforma construida, la longitud total

del brazo en estado recogido es de 20 cm de largo y 7 cm de ancho, mientras que en

estado elongado llega a 40 cm de largo y se mantiene en los mismos 7 cm de ancho. Sin

embargo se guarda un margen de seguridad del 15% (3 cm) en el momento de elongar el

brazo para menor torque y exigencia mecánica.

Tabla 2-11. Especificaciones de diseño del brazo robótico. Fuente: Autores

Can

al

Serv

om

oto

r

Imag

en

/

Tam

o

Tra

nsm

isió

n

Acció

n

Descri

pció

n

0 Base

-

Giro

Giro de la base en un

rango de 0 a 180°

Forma: Cilíndrica

Diámetro: 9.5 cm

Altura: 8.2 cm

-

1 Eslabón 1

Elonga extremidad 1

Un sinfín acoplado en un extremo a

una transmisión

que se encarga de entregar el

torque necesario

para lograr los movimientos

de la articulación,

elonga 10 cm

Forma: Rectangular

Tamaño1:

10X5X2.5cm

Tamaño 2:

10X4.85 X2.35 cm

Conjunto de 2 piñones

Piñón1: 3 cm

Piñón2: 1.5cm

Page 69: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 2 53

Proyecto de grado. Ingeniería Electrónica. 2019. 53

Can

al

Serv

om

oto

r

Imag

en

/

Tam

o

Tra

nsm

isió

n

Acció

n

Descri

pció

n

2 Codo

-

Movimiento gradual de articulación

Desplazamiento

descendente o ascendente gradual en un rango de 0 a

180° Forma:

Cuadrado

Tamaño: 7X7X4cm

-

3 Eslabón 2

Elonga extremidad 2

Un sinfín acoplado en un extremo a

una transmisión

que se encargan de entregar el

torque necesario

para lograr los movimientos

de la articulación, elonga 6 cm

Forma: Rectangular

Tamaño1:

10X5X2.5 cm

Tamaño 2:

10X4.85X2.35 cm

Conjunto de 2 piñones

Piñon1: 3 cm

piñon2: 1.5 cm

4 Roll pinza

- - Giro gradual

pinza

Giro en un rango de 0 a

180° - -

5 Pinza

- Apertura o cierre de

pinza

Giro en un rango de 0 a

180°

Área de 12.7cm x 6cm

-

Page 70: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

54 García Nickson

Molina Cristian

Con las piezas maquinadas descritas anteriormente, el paso siguiente es realizar su

ensamble para el montaje del robot. Para esto es importante seguir un orden

determinado que facilite el armado. Debido a que el diseño del prototipo es simétrico en

ambos lados, los ensambles serán idénticos, así solo se describirá el ensamble para un

lado entendiéndose que aplica para ambos. A continuación, se enumeran de manera

resumida los pasos para ensamblar totalmente al prototipo:

1. Asegurar el motor Pololu 37DX73L al soporte diseñado, después se coloca el buje de

unión al motor Pololu y se encaja en la parte interna de la rueda y se atornillan en los

orificios roscados de la parte frontal interna con un tornillo bristol con cabeza.

2. Se ensambla el rocker bogie a la estructura de aluminio acomodando las partes

diseñadas en los orificios laterales de la estructura, luego se ensambla el soporte de los

motores con el rocker-bogie y se fija con 3 tornillos brístol con cabeza.

3. Después de asegurar los componentes electrónicos a las plataformas de acrílico, se

procede a fijar de manera precisa la plataforma en la estructura principal o chasis.

4. Se ubican los primeros 4 separadores de aluminio en los agujeros que tienen la

plataforma y el chasis, se atraviesan internamente los separadores con los tornillos

brístol con cabeza para fijarlos con una tuerca de seguridad de 4 mm en un extremo.

5. Se coloca el armazón del robot, encajando con los huecos de los separadores

restantes y se procede a colocar el aluminio perfilado con las 4 perforaciones en los

separadores correspondientes para fijar esta pieza al chasis.

6. Finalmente se instala el brazo robótico modularmente sobre el aluminio perfilado con

uniones y accesorios como tornillos y tuercas propios de este perfilado.

En el Anexo B se adjunta la tabla de costos con relación a todos los materiales

necesarios para la construcción del prototipo.

2.3 Capa de Software del Sistema

2.3.1 Diseño del Sistema Central del Robot

En primer lugar, como ya se indicó anteriormente, para el desarrollo de la capa de

software del robot se utilizó ROS, ya que es un framework utilizado para desarrollar

aplicaciones robóticas. Entre sus principales características destacan que es de código

abierto, se encarga de realizar la abstracción del hardware y permite desarrollar una

computación distribuida. Además, proporciona librerías y herramientas para el desarrollo

de programas, con multitud de recursos disponibles en la red. Estas características

hacen de ROS el entorno ideal para el desarrollo de una plataforma robótica de este tipo.

Page 71: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 2 55

Proyecto de grado. Ingeniería Electrónica. 2019. 55

Desde su lanzamiento inicial en 2007, en el que inicialmente recibió el nombre de

“switchyard” por el Laboratorio de Inteligencia Artificial de Stanford, ROS ha ido

evolucionando de una forma rápida y dinámica a través de sus diferentes distribuciones

más o menos estables con una media de un año por lanzamiento. Como dato curioso,

destaca que la primera letra del nombre que se va dando a las distribuciones de ROS

sigue un orden alfabético. Así, comenzaron con la excepción de “Ros 1.0” a la que

siguieron “Box Turtle”, “C Turtle”, “Diamondback”, etc. hasta llegar a las últimas versiones

“Kinetic”, “Lunar” y “Melodic” [22].

Actualmente, “Melodic Morenia” es la versión más reciente con las ventajas y

desventajas que eso supone al inicio. Para garantizar una mayor estabilidad y

compatibilidad a la hora de desarrollar este prototipo, se decide trabajar en el equipo de

control remoto con una versión más antigua como lo es “Kinetic Kame”, únicamente

compatible con Ubuntu 16.04, y en su modalidad “Desktop-Full Install”, que incluye

“ROS”, “rviz”, “rqt”, “2D/3D simulators”, “navigation”, etc. Puesto que la tarjeta principal a

bordo del robot, Nvidia Jetson TK1 es plenamente compatible solo con la versión 14.04

de Ubuntu, es necesario utilizar en esta la distribución de ROS “Indigo Igloo”, aún más

antigua pero igualmente robusta. Cabe resaltar que los enlaces de conexión entre el

equipo de control y la tarjeta del rover no se ven afectados en ningún momento pese a

contar con diferentes distribuciones de ROS.

Para establecer una conexión entre el sistema ROS esclavo y el máster a largas

distancias sin necesidad de encontrarse bajo la misma red local, se deben vincular

ambas partes a una Red Virtual Privada VPN. La forma de comunicación entre las partes

de la red privada a través de la red pública se hace estableciendo túneles virtuales entre

dos puntos para los cuales se negocian esquemas de encriptación y autenticación que

aseguran la confidencialidad e integridad de los datos transmitidos utilizando la red

pública (Figura 1-7) [31]. Actualmente existe un extenso mercado VPN, el cual está en

constante crecimiento aumentando la dificultad de encontrar un proveedor adecuado,

siendo los más conocidos CyberGhost y LogMeIn Hamachi. Pese a que la primera opción

presenta una conexión de mayor confiabilidad permitiendo vincular hasta seis

dispositivos a la red virtual, requiere de suscripción con una tarifa mensual, por el

contrario Hamachi ofrece una versión gratuita limitando la cantidad de dispositivos

conectados a cinco. Ya que el número de dispositivos en la red no es un factor de gran

importancia para este proyecto, se decide utilizar el aplicativo de Hamachi en su versión

para Linux. Otro factor determinante en el momento de esta elección es que a diferencia

de CyberGhost, Hamachi presenta una versión para dispositivos Linux con arquitectura

armhf.

Mapa de nodos y tópicos del sistema

ROS crea una red donde todos los procesos están conectados. Cualquier nodo en el

sistema puede acceder a esta, interactuar con otros nodos, ver la información que están

enviando y transmitir datos a la red. En la Figura 2-25 se puede ver un esquema del nivel

de computación gráfico con el cual interactúa el usuario.

Page 72: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

56 García Nickson

Molina Cristian

Figura 2-25. Esquema del nivel de computación de ROS. Fuente: Autores

Los principales conceptos de este nivel que se tratan en el presente proyecto son:

• Master: proporciona el registro de nombres y la búsqueda del resto de los nodos. Si

no se tiene ejecutado el master en el sistema será imposible la comunicación entre

nodos, servicios, mensajes, y demás. Aunque cabe la posibilidad de tenerlo en un

ordenador mientras los nodos se ejecutan en otro, como ya se explicará más

adelante. Cuando un nodo arranca, este comienza a buscar al ROS Master o roscore

y registra el nombre del nodo en él. De esta forma, el master tiene los detalles de

todos los nodos que están corriendo en el sistema actualmente (Figura 2-26).

Además, cuando algún detalle de los nodos cambia, se realiza una llamada a la

función “call-back” y se actualiza con la última información.

Figura 2-26. Diagrama de conexión entre el master y los nodos. Fuente: Autores

Una vez obtenidos los detalles de cada nodo, el master los interconecta mediante el

protocolo TCPROS que se basa en los sockets de la arquitectura TCP/IP. Luego de

conectarlos, el master no tiene ninguna función de control sobre ellos, será el usuario el

roscore

nodo 1

nodo 2

nodo 3

nodo 4

Page 73: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 2 57

Proyecto de grado. Ingeniería Electrónica. 2019. 57

que tenga la posibilidad de detener cualquiera de ellos, ya sea el publicador o el

suscriptor.

Otra de las características que destacan, y que es de gran importancia en el desarrollo

de este proyecto, es el entorno del “ROS_MASTER_URI”. Esta variable contiene la IP y

el puerto del ROS Master, de modo que configurándola, los nodos de ROS pueden

localizar al máster independientemente de que se encuentre ejecutándose en otra

máquina. Si esta variable no está correctamente definida, la comunicación entre nodos

no tendrá lugar. Cuando se utiliza ROS solamente en una máquina se configura como IP

el “localhost” o bien el nombre de éste. Pero en una red distribuida, en la que se están

ejecutando varios nodos en diferentes máquinas, se debe definir correctamente la

variable “ROS_MASTER_URI”, ya que solo de esta manera, los nodos remotos serán

capaces de encontrar el máster y, así, poder comunicarse. En este caso se define como

máquina maestra el equipo de control remoto utilizado por el piloto.

• Nodos: son los ejecutables donde se realiza el proceso computacional o cálculos y

pueden ser clasificados en publicadores o suscriptores. Si se desea que un proceso

interactúe con otros, es necesario crear un nodo que contenga dicho proceso para

conectarlo a la red que crea ROS (ROS network). Por lo general un sistema cuenta

con varios nodos para controlar diferentes funciones. Es preferible tener un nodo para

cada funcionalidad, a tener un gran nodo que haga todo el trabajo del sistema ya que

esto proporciona una tolerancia a fallos, y al separar los códigos y sus

funcionalidades hace el sistema mucho más simple. Un nodo debe tener un nombre

único en el sistema. Este nombre se usa para permitir que un nodo se comunique con

otro nodo sin ambigüedades. Un nodo puede haber sido escrito en un lenguaje

diferente a otro y, sin embargo, gracias a los tópicos comunicarse sin ningún

problema. Se suelen usar dos librerías principales: “roscpp” para C++ y “rospy” para

“Python”.

• Tópicos: cada mensaje debe tener un nombre para ser enrutado a través de la ROS

network. Cuando un nodo está enviado datos, se dice que está publicando un

“tópico”. Los nodos también pueden recibir “tópicos” de otros simplemente

suscribiéndose a estos. Por tanto se pueden definir como los canales de

comunicación utilizados por los nodos para transmitir información entre ellos.

Los tópicos en ROS pueden ser transmitidos a través de TCP/IP y UDP. El primer

medio se conoce como TCPROS y usa la arquitectura TCP/IP persistente. Es el

transporte por defecto usado en ROS. El transporte basado en UDP es conocido

como UDPROS aunque es un transporte de baja latencia y pérdidas, por lo que es

más adecuado para tareas como la teleoperación.

• Bags: son ficheros con formato que permiten almacenar mensajes, tópicos y

servicios, entre otros. Los bags son un importante mecanismo para simular,

desarrollar y probar algoritmos sin necesidad de tener a disposición y en marcha el

Page 74: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

58 García Nickson

Molina Cristian

sistema, ya que permite visualizar y reproducir a gusto del usuario esta información

previamente recolectada [32].

El software del robot está distribuido en una red de ROS constituida por ocho nodos, los

cuales en su mayoría se ejecutan en la tarjeta principal del rover (a excepción del

webcam_ capture), estos se comunican con el master y demás nodos ejecutados en el

equipo de control remoto mediante la correcta configuración de la variable

ROS_MASTER_URI anteriormente mencionada. Lo que da como resultado el diagrama

de nodos y sus respectivos tópicos ilustrado en la Figura 2-27.

Figura 2-27. Mapa de nodos y tópicos del sistema. Fuente: Autores

Roboclaw_node

Se trata del nodo principal, encargado del control del robot, no solo de su movimiento

sino también del manejo de su sistema de iluminación de apoyo para entornos oscuros, y

brinda las opciones al piloto de reinicio o apagado de la tarjeta principal desde el joystick

en caso de ser necesario, así como la alternativa de habilitar o deshabilitar el control de

velocidad automático del robot. Este nodo se suscribe al tópico /joy con el objetivo de

extraer la información sobre botones pulsados y velocidad deseada por el piloto.

Después de obtener estos datos, los procesa y según las combinaciones de botones

registradas hará las configuraciones de las opciones anteriormente mencionadas.

También es el encargado de tomar las lecturas de velocidad y distancia recorrida de los

encoders y publicarlas en un tópico llamado /encoders. Finalmente, y si la opción de

control de velocidad está activa, el nodo tomará el valor de velocidad medido por los

Page 75: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 2 59

Proyecto de grado. Ingeniería Electrónica. 2019. 59

encoders y realizará el cálculo del controlador PID para establecerse en el valor de

referencia dado por el tópico /joy.

Joy_node

Este nodo se ejecuta en el equipo utilizado por el piloto para la navegación remota. Es el

encargado de extraer la información de botones digitales (buttons) y análogos (axes) del

joystick y publicarla en la red de ROS para el uso de los nodos que lo requieran bajo el

nombre de /joy. En caso de tratarse de una prueba de manipulación no remota, existe la

posibilidad de conectar la antena bluetooth del joystick a uno de los puertos USB del

rover y lanzar el joy_node de forma local en la tarjeta principal. Esto reducirá

notablemente la latencia del sistema, pero crea la necesidad de que el piloto se

encuentre ubicado a pocos metros de la plataforma robótica.

Usb_cam_node

Es un nodo inicializado directamente sobre la tarjeta a bordo del robot. Se configura de

forma que acceda a la webcam principal de navegación y publique su información en un

tópico denominado /usb_cam. Este tópico es accedido por un código en lenguaje python

denominado cam_bridge.py, el cual es ejecutado en el equipo de control del piloto, y se

encarga de crear un nodo suscriptor llamado webcam_capture y mostrar en pantalla la

información obtenida del tópico publicado por usb_cam_node.

Xsens_mti

El nodo xsens_mti es un driver ofrecido por el fabricante Xsens para la compatibilidad de

sus productos de la serie MTI con ROS. Este permite configurar principalmente el puerto

en el cual se encuentra conectada la IMU, su baudaje, el modelo del dispositivo, su

frecuencia de trabajo y los datos de salida que se desean. Para efectos de este proyecto

se configura de modo que publique un tópico /imu_data, el cual contiene la información

de su aceleración en X, Y y Z así como sus orientaciones pitch, roll y yaw.

Arm_node

Es el encargado del manejo del brazo robótico a bordo. De forma similar al

roboclaw_node, se suscribe a /joy con el objetivo de tomar la información del joystick y de

esta forma saber qué servomotores debe habilitar, en qué dirección y a qué velocidad.

Una vez manipulados los actuadores necesarios, permite deshabilitarlos para así reducir

el consumo energético del sistema. Este nodo también tiene la función de publicar un

tópico /arm_pose para permitir al piloto monitorear la posición de cada uno de los servos

del brazo robótico.

Kinect_bridge

Se trata de un nodo únicamente publicador ya que no requiere de suscripción a ningún

otro tópico. Por el contrario genera una gran cantidad de estos, los cuales contienen la

información recolectada por todos los sensores del Kinect como sus cámaras RGB e IR y

sus sensores de profundidad 3D. Estos pueden accederse de forma gráfica desde el

equipo del piloto mediante el visualizador Rviz, cuya interfaz permite seleccionar el tópico

deseado y sus respectivas opciones (color, B/N o variación de la perspectiva desde la

Page 76: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

60 García Nickson

Molina Cristian

cual se desea visualizar la nube de puntos generada por los sensores de profundidad).

Puesto que este método puede llegar a consumir muchos recursos computacionales y

ocasionar problemas de fluidez al sistema, existe la posibilidad de guardar los datos de la

nube de puntos en un archivo bag para su posterior análisis y procesamiento.

Ekf_node

La función de este nodo consiste en generar la trayectoria recorrida estimada gracias a la

implementación de un Filtro Extendido de Kalman. Para el funcionamiento de este filtro

es necesario contar con la información de distancias recorridas y giros realizados, la cual

se puede obtener mediante la suscripción del nodo a los tópicos /imu_data y /encoders,

descritos previamente, y por último publica un tópico /odom con el resultado de la

estimación de posición.

2.3.2 Diseño del Control de Velocidad

El punto de partida para el diseño de un control de velocidad y posteriormente la

implementación del sistema de control, generalmente es un modelo matemático, en

el cual, las entradas y salidas del sistema se relacionan como un conjunto de

ecuaciones diferenciales. Se identificó el modelo matemático que permitió conocer la

respuesta ante diferentes entradas de excitación. Para ello fue necesario identificar y

controlar la lectura en paralelo de la salida y la entrada. La idea fue generar un nodo de

Identificación que guardara la información de los motores. Así con una señal de

identificación PRBS excitando al motor y mediante la lectura de un encoder se observa

su respuesta a esta señal. Después de hallada la función de transferencia, se analizó con

simulación y se realizaron los ajustes pertinentes para validar el modelo propuesto. La

función de transferencia que se obtuvo es representativa de un sistema de segundo

orden sobre amortiguado; lo siguiente es diseñar un controlador con la herramienta

gráfica de diseño de controladores FR Tool de Matlab, teniendo la posibilidad de definir

las restricciones de diseño, que guiarán el proceso de ajuste. Estas especificaciones de

diseño son parámetros del controlador que se ajustan gráficamente.

Modelamiento del sistema como caja gris

Los modelos de caja gris emplean el conocimiento disponible de la estructura interna del

sistema y las leyes que rigen su comportamiento a través de observaciones de entrada

– salida. Para determinar la información faltante se inició con la adquisición de datos de

ambos motores haciendo una lectura de los encoders. Se obtiene una lista de datos

descrita en la Tabla 2-13. Para realizar el ajuste de estos se realizó una tabla en donde,

se mide la velocidad de la rueda con un tacómetro (rpm) variando secuencialmente la

referencia o amplitud (U) proporcionales a la máxima de 12 VDC o 63 bits. El mismo

procedimiento se repite ingresando valores de referencia negativos.

Page 77: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 2 61

Proyecto de grado. Ingeniería Electrónica. 2019. 61

Tabla 2-12. Datos de lectura de encoders y Tacómetro (rpm). Fuente: Autores

VALORES POSITIVOS

Voltaje Tacómetro (RPM) Valor encoder

U % L R L R

1.2V 11.54 10.32 691.5 675.5 6.3 10

2.4V 19.49 18.12 2118.5 1979 12.6 20

3.6V 30.33 28.70 3252 3115 18.9 30

4.8V 40.73 39.42 4425.5 4288.5 25.2 40

6.0V 51.55 50.14 5582 5428.5 31.5 50

7.2V 63.52 62.50 7019.5 6767.5 37.8 60

8.4V 74.14 73.15 8046.5 7958 44.1 70

9.6V 83.97 83.49 9162.5 9019.5 50.4 80

10.8V 97.05 96.70 10580 10478 56.7 90

12V 106.62 103.87 11685 11431,5 63 100

VALORES NEGATIVOS

Voltaje Tacómetro (RPM) Valor encoder

U % L R L R

-1.2V 10.73 9.85 600.8 725.5 -6.3 10

-2.4V 18.88 18.49 2170 2027,5 -12.6 20

-3.6V 29.66 28.76 3206 3163,5 -18.9 30

-4.8V 40.63 39.28 4406,5 4303 -25.2 40

-6.0V 51.31 49.98 5606 4941 -31.5 50

-7.2V 63.73 62.30 6986 6756,5 -37.8 60

-8.4V 74.30 72.51 8036 7897,5 -44.1 70

-9.6V 84.45 82.38 9185 8967.5 -50.4 80

-10.8V 96.89 94.10 10542,5 10193,5 -56.7 90

-12V 106.45 -104.44 11643.5 11368,5 -63 100

Con el objetivo de convertir los valores adimensionales entregados por los encoders y

mediante el método de mínimos cuadrados a partir de la tabulación realizada (Figura 2-

28), se llega a una ecuación característica que relaciona la velocidad angular en rpm y el

valor puro medido por los encoders, las cuales se muestran a continuación,

correspondientes al motor derecho e izquierdo relativamente:

𝑤𝑟 = 0.0092 ∗ (𝑉𝑎𝑙𝑜𝑟 𝑒𝑛𝑐𝑜𝑑𝑒𝑟) − 0.1514

𝑤𝑙 = 0.0092(𝑉𝑎𝑙𝑜𝑟 𝑒𝑛𝑐𝑜𝑑𝑒𝑟) + 0.0126.

Page 78: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

62 García Nickson

Molina Cristian

Figura 2-28. Relación de velocidad angular (rpm) y el valor medido por los encoders. Fuente:

Autores

Se obtuvo el modelo dinámico del sistema con la herramienta de Matlab System

Identification, antes de hacer uso de esta herramienta se necesitaron unas variables

como una señal de identificación que es representada como la entrada del sistema, la

salida del sistema y el tiempo de muestreo que en este caso es de 100 ms, en la primera

imagen Figura 2-29 (a) se observa una señal azul, esta es una PBRS (secuencia binaria

pseudo-aleatoria) con un patrón de referencia asignada entre 32 a 53 esto es aleatorio

dentro del período de repetición del patrón del generador, en la Figura 2-29 (b) se plotea

la relación salida- entrada en un mismo plano, debido a que los datos parten de un punto

de operación en este caso la entrada parte en 43 y la salida 7.7 a partir de ese punto de

operación se hacen los cambios sobre el sistema; el modelo observado es lineal, por

consiguiente va a capturar los cambios con respecto a un punto de operación y por lo

tanto se ajustan los datos de salida y entrada, la salida obedece a la respuesta del motor

en velocidad angular rad/s, la señal amarilla es el motor derecho y la señal roja es el

motor izquierdo.

Page 79: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 2 63

Proyecto de grado. Ingeniería Electrónica. 2019. 63

a)

b)

Figura 2-29. a) Señal de identificación (PRBS). b) Salida-entrada ajustada del sistema. Fuente: Autores

Se procedió a usar System Identification Figura 2-30, esta herramienta está compuesta

por tres partes principales: importación de datos, operaciones y visualización de modelos.

Se seleccionó la opción de importar datos en el dominio del tiempo en donde se eligen

las variables de entrada, salida y tiempo de muestreo. Cuando se importan los datos se

genera un Working-Data que sirve para realizar las operaciones de procesamiento y de

estimación del modelo. En el momento de estimar la función de transferencia se

establecieron cuantos polos y ceros se requerían en el sistema, sabiendo que se tiene un

Page 80: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

64 García Nickson

Molina Cristian

comportamiento dinámico de segundo orden determinado por la F.T general (2-5), se

definen 2 polos y 0 ceros en la identificación de la función de transferencia.

El proceso de identificación de los datos del motor derecho e izquierdo se muestran en la

Figura 2-31, donde la precisión de ambos modelos respectivamente alcanza el 89.55% y

89.47%, los resultados de la identificación fueron buenos, se observa una pequeña

variación de precisión entre los modelos lineales de los motores izquierdo y derecho.

También se observa la función de transferencia obtenida para cada motor.

Figura 2-30. MATLAB System Identification Toolbox GUI. Fuente: Autores

Figura 2-31. Identificación del modelo. Fuente: Autores

𝐺(𝑠) = 𝜔02

𝑠2 + 2𝜁𝜔0𝑠 + 𝜔02

(2-5)

Motor Derecho

Motor Izquierdo

Page 81: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 2 65

Proyecto de grado. Ingeniería Electrónica. 2019. 65

Validación del modelo

La herramienta de System Identification permite visualizar la salida del modelo estimado,

pero no con los datos experimentales, sino con los datos de validación. Se puede

observar que la salida de ambos motores tiene correlación, debido a que la diferencia de

ajuste con la señal de identificación es de 0.08%.

Figura 2-32. Salida del modelo medida y simulada. Fuente: Autores

Para comprobar la dinámica del sistema se realizó en Simulink una simulación del

modelo, observando en la Figura 2-32 dos gráficas en donde se implementa la función de

transferencia de los modelos correspondientes al motor derecho e izquierdo del sistema.

Se aplica una excitación con una señal de referencia (PBRS) diferente a la señal de

identificación para visualizar como es la verdadera salida dependiendo de su entrada que

es el principio del concepto de función de transferencia y así se comprobó que la salida

del modelo se ajustó de manera precisa.

En la Figura 2-33 se aprecia un bloque como la señal de referencia o variable de entrada

al modelo identificado, dos bloques que contiene los datos experimentales del sistema,

dos MUX que conectan las salidas de los modelos con los datos experimentales de cada

motor y un scope para visualizar la señales en 3 gráficas independientes. Finalmente se

observa que el modelo tiene un ajuste ideal y se procede a diseñar el compensador.

Page 82: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

66 García Nickson

Molina Cristian

Figura 2-33. Validación del modelo. Fuente: Autores

Diseño de control con FR-Tool

A continuación, se habla del control aplicado al sistema que estabiliza la velocidad del

robot móvil en una referencia deseada. Esta sección también explica el diseño del

controlador utilizado en el sistema, así como la simulación del software en MATLAB

Simulink. Actualmente existen herramientas de diseño gráfico interactivo de

controladores. De este modo se presentará la caja de herramientas basado en respuesta

en frecuencia (FRtool) en Matlab [32].

Se implementó un controlador PID, explicado con mayor detalle en el capítulo 1, este

contiene un término proporcional, integral y derivativo. La ecuación de un controlador PID

en el dominio del tiempo se presenta en (2-6).

𝑃𝐼𝐷(𝑡) = 𝐾𝑝 ∗ 𝑒(𝑡) + 𝐾𝑝/𝑇𝑖 ∫(𝑒(𝑡)𝑑𝑡) + 𝐾𝑝 ∗ 𝑇𝑑 (𝑑𝑒(𝑡)/𝑑𝑡) (2-6)

Page 83: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 2 67

Proyecto de grado. Ingeniería Electrónica. 2019. 67

𝐶(𝑠) = 𝐾𝑝 + 𝐾𝑝/𝑇𝑖 ∗ 𝑆 + 𝐾𝑝 ∗ 𝑇𝑑 ∗ 𝑆

(2-7)

El controlador puede representarse en el dominio de la frecuencia. Entonces, se obtiene

una función de transferencia usando transformada de Laplace (2-7). Se aplicó un mismo

tipo de controlador y un método de diseño el sistema derecho e izquierdo. De esta

manera, el diseño de los controladores PID se realiza con la herramienta basado en la

respuesta de frecuencia FRtool (Figura 2-34), es un diseño asistido por computadora

(CAD), que ayuda a encontrar la función de transferencia del controlador mediante la

colocación de polos, ceros y una ganancia en los diagramas de frecuencia (diagrama de

Nyquist), basado en los parámetros del diseño como: robustez, tiempo de

establecimiento, overshoot y margen de ganancia.

Figura 2-34. Interfaz gráfica de Frtool con curva en el gráfico de Nichols correspondiente a la

respuesta de frecuencia del bucle. Fuente: [33]

También tiene la posibilidad de mostrar especificaciones de diseño como actualización

en tiempo real mientras se ajustan los polos y ceros del controlador, se puede importar o

exportar el controlador diseñado y tiene opciones para visualizar el Bode.

Una característica importante de una herramienta de diseño de controlador es la

posibilidad de definir especificaciones de diseño prácticamente significativas, que guían

en el proceso de ajuste. Estas especificaciones deben convertirse en restricciones

gráficas o parámetros para que el diseñador pueda trabajar más fácilmente. Por lo tanto,

especificaciones más prácticas que pueden ser interpretadas de forma más sencilla por

cualquier usuario son las mencionadas anteriormente (tiempo de establecimiento,

máximo overshoot y la robustez del diseño). Dado que la idea básica es diseñar un

controlador de PID, se define el número de polos y ceros. Por lo tanto, las condiciones de

Page 84: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

68 García Nickson

Molina Cristian

diseño de parámetros deben satisfacerse con dos ceros, un polo y la ganancia, como lo

sugiere la ecuación (2-8).

𝑃𝐼𝐷(𝑡) = 𝐾𝑝(1 +1

𝑠 ∗ 𝑇𝑖+ 𝑠 ∗ 𝑇𝑑) = 𝐾𝑝

(𝑠 − 𝑧1)(𝑠 − 𝑧2)

𝑠

(2-8)

La robustez se describe como la insensibilidad de un circuito cerrado a los cambios en el

proceso. En FRtool, robustez (Ro) es un parámetro de diseño especificado por el usuario,

con valor 0 <Ro <1. Para cumplir con el Especificación de robustez, la curva de Nichols

tiene que permanecer fuera de la elipse curva azul con radio Ro figura 2-36, los otros dos

parámetros overshoot o sobreimpulso (% OS) y tiempo de establecimiento (Ts), se

derivan de la Función de transferencia de bucle cerrado de segundo orden dominante.

Más adelante, dadas las especificaciones definidas para % OS y Ts (Figura 2-35), es

sencillo de obtener la función de transferencia del controlador diseñado. Se observa en la

Figura 2-34 la representación de %OS por la curva roja, la curva de Nichols debe

permanecer por debajo de esta curva roja %OS. Finalmente el tiempo de establecimiento

es denotado por un pequeño círculo rojo, la curva de Nichols debe estar por encima de la

línea verde 3dB.

Figura 2-35. Diseño de control con FRtool (parámetros Ro, Ts, %OS). Fuente: Autores

Las especificaciones para el diseño del controlador PID para el motor izquierdo son: una

robustez Ro > 0.8, debido a que las variaciones u obstáculos del terreno pueden producir

un efecto negativo en el sistema, un pequeño sobre impulso %OS <5% y una alta

robustez son valores razonables; se escogió un ajuste de tiempo de establecimiento Ts ≤

2s. Después de ajustar los ceros, polos y la ganancia usando FRtool, la función de

transferencia del controlador en tiempo continuo del motor derecho (2-9) y motor

izquierdo (2-10) queda de la siguiente manera:

Page 85: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 2 69

Proyecto de grado. Ingeniería Electrónica. 2019. 69

𝐶𝑅𝑧(𝑠) =(0.05327 𝑠2 + 2.305 𝑠 + 13.06)

𝑠

(2-9)

𝐶𝐿𝑧(𝑠) =(0.3163 𝑠2 + 6.677 𝑠 + 28.65)

𝑠

(2-10)

El diseño óptimo del controlador PID y su correspondiente respuesta en frecuencia se

dan en la Figura 2-36. La línea azul continua representa como se establece el controlador

en un tiempo de 2 segundos ante un step, teniendo un comportamiento razonablemente

bueno, esto se debe al hecho de que se solicitó una alta robustez en las

especificaciones.

Figura 2-36. Diseño óptimo del controlador PID y la respuesta paso de motor derecho (superior) e

izquierdo (inferior). Fuente: Autores

Page 86: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

70 García Nickson

Molina Cristian

Este diseño obedece a la forma del PID continuo, cuya implementación digital en paralelo

puede obtenerse tras discretizar cada componente del controlador PID. Después de la

evaluación experimental de diferentes implementaciones, se seleccionó el método de

discretización FOH como se presenta a continuación:

𝑘𝑝 =𝑈𝑝(𝑠)

𝑒(𝑠) 𝑈𝑝(𝑘) = 𝐾𝑝 ∗ 𝑒(𝑘)

(2-11)

𝐾𝑖

𝑠=

𝑈𝑖(𝑠)

𝑒(𝑠)

𝑈𝑖(𝑠)

𝑒(𝑧)=

𝑇𝑠

(𝑧 − 1)∗ 𝑘𝑖

𝐾𝑑 ∗ 𝑠 𝐾𝑑(𝑠)

𝑇𝑠( 𝑧 − 1)

𝑈𝑖(𝑧)

𝑒(𝑧)=

𝐾𝑖 ∗ 𝑇𝑠

(𝑧 − 1 )𝑧−1∗ 𝑧−1

𝑈𝑖(𝑧)

𝑒(𝑧)=

𝐾𝑖 ∗ 𝑇𝑠

(1 − 𝑧−1)∗ 𝑧−1

𝑈𝑖(𝑘) = 𝐾𝑖 ∗ 𝑇𝑠 ∗ 𝑒(𝑘 − 1) − 𝑈𝑖(𝑘 − 1)

(2-12)

𝑈𝑑(𝑠)

𝑒(𝑧)=

𝐾𝑑

𝑇𝑠(𝑧 − 1)

𝑧−1

𝑧−1 =

𝐾𝑑

𝑇𝑠(1 − 𝑧−1)

𝑈𝑑(𝑘) ∗ 𝑇𝑠 = 𝐾𝑑(𝑒(𝑘) − 𝑒(𝑘 − 1))

𝑈𝑑(𝑘) = 𝐾𝑑

𝑇𝑠(𝑒(𝑘) − 𝑒(𝑘 − 1))

(2-13)

Finalmente, se transformaron las funciones de transferencia discretas presentadas en las

ecuaciones (2-11), (2-12) y (2-13) en un conjunto digital de ecuaciones, las leyes de

control se describen en el siguiente fragmento de pseudocódigo para cada motor Figura

2-37.

function y=fcn(u) coder.extrinsic('tic') coder.extrinsic('toc') %Inicializar variable Kp=13.3;Kd=12.11;Ki=2.313; persistent pre_err integral if isempty(pre_err); pre_err=0.0;end; if isempty (integral); pre_err=0.0;end;

err=u; Up=Kp*err; derivative=(err-pre_err);

Page 87: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 2 71

Proyecto de grado. Ingeniería Electrónica. 2019. 71

Ud=kd*derivative; Ui=integral + pre_err*ki; UR=Up + Ui + Ud; if (UR>63.0) UR=63.0; end if (UR<-63.0) UR=-63.0; end Ui= UR -Up-Ud y=UR; integral=Ui; pre_err=err;

Figura 2-37. Pseudocódigo del control de velocidad de motores. Fuente: Autores

Resultados de Simulación

Se realizó una simulación en donde se observan dos bloques correspondientes a los

sistemas de motor izquierdo y derecho, internamente estos bloques contienen la

implementación del controlador PID para comparar la respuesta de salida del sistema de

control en lazo cerrado y la referencia de velocidad. En la Figura 2-38 puede apreciarse

en la parte superior el diagrama en bloques del sistema, el cual cuenta con un generador

de señal como referencia a la entrada, en el sistema real esta señal de referencia se

introduce a través del gamepad. Dentro de los bloques de motor derecho e izquierdo se

encuentra la implementación de los dos controles PID y el modelo de referencia, y

finalmente, en la parte inferior se observa la salida del controlador en lazo cerrado en

comparación con la referencia.

a)

b) c)

Page 88: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

72 García Nickson

Molina Cristian

d)

Figura 2-38. Implementación de control de velocidad (a), diagrama de bloques del controlador PID de cada motor (b y c) y señal de salida (d). Fuente: Autores

2.3.3 Diseño de la Estimación de Trayectoria

Modelo del sistema

Para efectos de simplicidad a la hora de desarrollar el modelo cinemático del sistema se

asume que se trata de una topología skid-steer de cuatro ruedas, ya que en los

resultados no se ve afectada la precisión de la estimación de posición.

El modelo cinemático de este tipo de vehículos con respecto a su propio marco de

referencia puede describirse como en la ecuación (2-14) [26], [34].

[𝑣𝑥

𝜔] = 0.5 [

𝑟 𝑟

−𝑟

𝑌

𝑟

𝑌] [

𝜔𝐿

𝜔𝑅]

(2-14)

Nótese que 𝑣 = 𝜔𝑟 y por tanto se obtiene:

{𝑣𝑥 =

𝜔𝐿𝑟 + 𝜔𝑅𝑟

2=

𝑣𝐿 + 𝑣𝑅

2

𝜔 =−𝜔𝐿𝑟 + 𝜔𝑅𝑟

2𝑌=

−𝑣𝐿 + 𝑣𝑅

2𝑌

(2-15)

dónde VX es la velocidad de avance y ω la velocidad angular del robot, ωL y ωR las

velocidades angulares de las ruedas de la izquierda y derecha respectivamente, r el radio

de las ruedas y Y la coordenada y del Centro Instantáneo de Rotación ICR (Figura 1-3)

hallada de forma práctica mediante un experimento consistente en proporcionar la

velocidad máxima a las ruedas de un costado mientras las demás se encuentran

detenidas de forma que el vehículo trazará una trayectoria circular cuyo radio es el valor

de la coordenada Y, en este caso 0.6m. Una vez encontrado el valor de esta constante

Page 89: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 2 73

Proyecto de grado. Ingeniería Electrónica. 2019. 73

se puede calcular el ICR instantáneo a partir de (2-15), y como 𝑣𝑦 = 0 entonces 𝑣 = 𝑣𝑥

[25].

𝑅 =𝑣

𝜔=

𝑣𝑥

𝜔=

𝑣𝐿 + 𝑣𝑅

−𝑣𝐿 + 𝑣𝑅𝑌

(2-16)

Posteriormente se discretiza (2-14) y se obtienen (2-17) y (2-18),

∆𝑠𝑘 = 𝑇𝑠

𝑟

2(𝜔𝑅𝑘

+ 𝜔𝐿𝑘) (2-17)

∆𝜃𝑘 = 𝑇𝑠

𝑟

2𝑌(𝜔𝑅𝑘

− 𝜔𝐿𝑘) (2-18)

con ∆𝑠𝑘= 𝑥𝑘 − 𝑥𝑘1

el desplazamiento de avance del vehículo y ∆𝜃𝑘= 𝜃𝑘 − 𝜃𝑘1

el

desplazamiento angular en una muestra Ts. Después de esto, se puede estimar la

posición actual a partir de una posición inicial conocida al integrar el movimiento y

posteriormente transformarlo al marco inercial.

[

𝑥𝑘

𝑦𝑘

𝜃𝑘

] = [

𝑥𝑘−1

𝑦𝑘−1

𝜃𝑘−1

] +

[ ∆𝑠𝑘−1

𝑐𝑜𝑠 (𝜃𝑘−1 +∆𝜃𝑘

2⁄ )

∆𝑠𝑘−1𝑠𝑒𝑛 (𝜃𝑘−1 +

∆𝜃𝑘

2⁄ )

∆𝜃𝑘 ]

(2-19)

Dónde xk es la posición en el eje x, yk en el eje y, y θk el ángulo de dirección del marco

inercial [26].

Implementación del Filtro de Kalman

El algoritmo de fusión de sensores basado en el EKF se desarrolla en esta sección,

donde ωL y ωR son las entradas al modelo, y xk, yk, y θk las salidas. Las salidas del

modelo de estimación se corrigen con la información proporcionada por la IMU utilizando

el EKF. Dado que el tiempo de muestreo TS se eligió de 100ms, el algoritmo de fusión se

diseñó en dos etapas debido a que la IMU puede entregar mediciones a una frecuencia

de 100Hz, mientras que los codificadores entregan mediciones a una tasa de 10Hz. Por

lo tanto, en la primera etapa el algoritmo simplemente fusiona la dirección angular θk,

luego, en la segunda etapa fusiona xk, yk, y θk. Ahora, según el EKF y la ecuación del

modelo cinemático de espacio de estados, el algoritmo es el siguiente (Tabla 1-1) [26]:

1. Se inicializa la matriz de covarianza del error P1k, el ruido del proceso Q1 y el ruido de

medición R1.

𝑃1𝑘= [

100 0 00 100 00 0 100

]

𝑄1 = [1 0 00 1 00 0 0.5

]

Page 90: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

74 García Nickson

Molina Cristian

𝑅1 = 0.01

2. Actualización del modelo, ver (2-19).

𝑥𝑘 = 𝑥𝑘−1 + ∆𝑥𝑘

𝑦𝑘 = 𝜃𝑘

3. Cálculo Jacobiano para (2-10) en función de xk, yk y θk.

𝐴𝐷𝑘=

[ 1 0 −∆𝑠𝑘−1

𝑠𝑒𝑛 (𝜃𝑘−1 +∆𝜃𝑘

2⁄ )

0 1 ∆𝑠𝑘−1𝑐𝑜𝑠 (𝜃𝑘−1 +

∆𝜃𝑘

2⁄ )

0 0 1 ]

𝐶𝐷𝑘= [0 0 1]

4. Actualización de la matriz de covarianza del error.

𝑃1𝑘= 𝐴𝐷𝑘

𝑃1𝑘𝐴𝐷𝑘

𝑇 + 𝑄1

5. Cómputo de la ganancia de Kalman.

�̂�1𝑘= (𝑅1 + 𝐶𝐷𝑘

𝑃1𝑘𝐶𝐷𝑘

𝑇 )−1

𝐾𝑘 = 𝑃1𝑘𝐶𝐷𝑘

𝑇 �̂�1𝑘

6. Finalmente se actualizan las mediciones, donde zk es la medición de la IMU y yk la

salida del modelo. Retorna xk y P1k.

𝑦𝑘 = 𝐶𝐷𝑘𝑥𝑘

𝑥𝑘 = 𝑥𝑘 + 𝐾𝑘(𝑧𝑘 − 𝑦𝑘)

𝑃1𝑘= (𝐼 − 𝐾𝑘𝐶𝐷𝑘

)𝑃1𝑘

Page 91: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Proyecto de grado. Ingeniería Electrónica. 2019. 75

Capítulo 3. Resultados Experimentales

En este capítulo se presentan los resultados obtenidos en las diferentes etapas del

desarrollo del prototipo. Es un capítulo muy importante, ya que deja constancia de que se

han alcanzado los objetivos planteados.

3.1 Implementación Electrónica del Sistema

La implementación electrónica de los elementos del robot constituye los circuitos

electrónicos usados para poner en funcionamiento los motores y sensores especificados

en el capítulo 2. Estos se han dividido en tres categorías: los circuitos de alimentación

encargados de proporcionar, a partir de las 2 baterías de 12V, los voltajes necesarios

que maneja cada componente, los circuitos de adquisición de datos y control, y por último

los circuitos acopladores entre la tarjeta principal y los diversos sensores. Para la

implementación electrónica del sistema se utiliza el esquema de la Figura 3-1, el cual

muestra en forma de diagrama de bloques las conexiones pertinentes para la

comunicación e interacción desde el piloto hasta los diferentes subsistemas de

percepción y acción a bordo del UGV.

Figura 3-1. Diagrama de bloques del sistema. Fuente: Autores

Page 92: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

76 García Nickson

Molina Cristian

Figura 3-2. PCB de acondicionamiento electrónico del sistema. Fuente: Autores

3.2 Fabricación del Robot

Inicialmente se consideraron unos parámetros y especificaciones de la plataforma móvil

en su estructura mecánica, algunas de ellas eran su modularidad, arquitectura robusta,

suspensión rocker-bogie con adaptación de amortiguación trasera, objeto manipulador de

carga, panel de control con interfaz amigable y conectividad asequible y una

configuración skid steer de 6 ruedas. Teniendo en cuenta estas especificaciones se hizo

la elección de los diferentes materiales para la manufacturación logrando un equivalente

entre un sistema robusto y liviano para una mejor movilidad sobre terrenos irregulares, a

continuación se presentan los resultados finales en cada una de las etapas específicas

para llegar a un ensamble de prototipo final, Tabla 3-1 y Figura 3-3.

Tabla 3-1. Partes del prototipo final. Fuente: Autores

Partes Mecánicas (n°) Funcionalidad

1 Suspensión Rocker Bogie con amortiguación trasera

2 Topologia Skid-steer de 6 ruedas

3 Modularidad de aluminio perfilado

Page 93: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 3 77

Proyecto de grado. Ingeniería Electrónica. 2019. 77

Partes Mecánicas (n°) Funcionalidad

4 Arquitectura robusta

5 6

Panel de control con puertos para conectividad externa Objeto manipulador de carga: brazo robótico

Figura 3-3. Partes del prototipo final. Fuente: Autores

Page 94: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

78 García Nickson

Molina Cristian

3.3 Resultados de Manipulación Remota

Puesto que se trata de un vehículo terrestre no tripulado de navegación remota, fue

necesario realizar diversas pruebas de acceso en diferentes condiciones de terreno,

conectividad y distancia. El objetivo principal de estos test consiste en poner a prueba el

protocolo de comunicación en ambientes de conectividad reducida. Estas pruebas de

navegación remota se describen a continuación.

3.3.1 Test 1 de navegación (Desierto de la Tatacoa)

El test 1 de navegación se llevó a cabo ubicando el prototipo en el Desierto de la

Tatacoa, siendo el sistema accedido por el piloto ubicado en la ciudad de Ibagué. Pese a

lograrse el enlace robot-piloto de forma exitosa, al tratarse de un ambiente tan hostil se

obtuvieron los mayores tiempos de latencia a la hora de transmitir la información del

subsistema de percepción, principalmente la imagen de la vídeo cámara de navegación,

dificultando pero no imposibilitando el manejo del vehículo. En la Figura 3-4 (a) se

observa la imagen captada por la cámara principal y transmitida hasta el equipo utilizado

por el piloto, presentando una latencia promediada en 1300 ms. A su vez en 3-4 (b) se

evidencia el entorno en el cual se movilizaba el rover durante la toma (a).

a) b)

Figura 3-4. Imagen captada por la cámara de navegación en el test 1. Fuente: Autores

También se accedió al sensor 3D del dispositivo Kinect para lograr una reconstrucción de

la nube de puntos captada por este. En la Figura 3-5 se ilustra una comparativa de la

misma toma captada por los diferentes sensores.

Page 95: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 3 79

Proyecto de grado. Ingeniería Electrónica. 2019. 79

Figura 3-5. Comparativa entre la reconstrucción 3D y la imagen de navegación. Fuente: Autores

Esta prueba se realizó alcanzando una distancia mayor a 130 km entre la plataforma

móvil y la unidad de control del piloto (Figura 3-6).

Figura 3-6. Distancia en línea recta entre el UGV y el piloto en el test 1. Fuente: Autores

3.3.2 Test 2 de navegación (Zona rural Ibagué)

El test de navegación número 2 se realizó ubicando la plataforma robótica en una zona

rural de la ciudad de Ibagué (Juntas), accedido por el piloto localizado en esta ciudad. El

acceso remoto al sistema se logra más fácilmente que en el test 1 ya que este entorno

cuenta con mejor conectividad a la red. Esto se evidencia mediante una prueba de

Page 96: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

80 García Nickson

Molina Cristian

latencia (ping), la cual demuestra tiempos de respuesta con un promedio de 97.7 ms

como se puede observar en la Figura 3-7. La mejora se hace notable a la hora de

transmitir el vídeo, y con esto se facilita el manejo del vehículo.

Figura 3-7. Prueba de latencia del test 2. Fuente: Autores

En la Figura 3-8 se puede observar la imagen transmitida al piloto desde la cámara

principal. A su vez en 3-9 se evidencia que para esta prueba de acceso remoto se reduce

la distancia robot-piloto a un aproximado de 18 km.

Figura 3-8. Imagen captada por la cámara de navegación en el test 2. Fuente: Autores

Page 97: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 3 81

Proyecto de grado. Ingeniería Electrónica. 2019. 81

Figura 3-9. Distancia en línea recta entre el UGV y el piloto en el test 2. Fuente: Autores

3.3.3 Test 3 de navegación (Campus Unibagué)

Finalmente se realiza una prueba de maniobrabilidad bajo una red local, ubicando tanto

al piloto como al robot móvil en el campus de la Universidad de Ibagué pero en diferentes

salas, con el objetivo de completar una misión consistente en acceder a un laboratorio y

recoger una pequeña caja de herramientas mediante el elemento manipulador de cargas

livianas, y retornar al punto inicial para hacer entrega de dicha carga. Al tratarse de una

prueba local se adquieren los menores tiempos de latencia con un promedio de 14.4 ms

ms (Figura 3-10) consiguiendo una transmisión de datos fluida. En la Figura 3-8 se ilustra

la estimación de la trayectoria recorrida mediante la implementación del Filtro de Kalman

durante esta prueba, desde el punto de inicio hasta la ubicación del objeto a recoger.

Page 98: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

82 García Nickson

Molina Cristian

Figura 3-10. Prueba de latencias del test 3. Fuente: Autores

En la Figura 3-11 se ilustra la estimación de la trayectoria recorrida haciendo uso del

Filtro de Kalman durante esta prueba, desde el punto de inicio hasta la ubicación del

objeto a recoger.

Figura 3-11. Trayectoria recorrida en el test 3. Fuente: Autores

Finalmente en la Figura 3-12 se puede observar la imagen mediante la cual el piloto logra

la manipulación del vehículo.

Page 99: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 3 83

Proyecto de grado. Ingeniería Electrónica. 2019. 83

Figura 3-12. Imagen captada por la cámara de navegación en el test 3. Fuente: Autores

3.4 Resultados del Control de Velocidad

Se hicieron dos pruebas posicionando el robot móvil en una pendiente con un grado de

inclinación de 30°, en una de las pruebas el robot se encuentra sin control de velocidad

(Figura 3-13) con un referencia de velocidad de 0 rad/s y se observa una perturbación,

que en este caso se trata de la inercia de los motores causada por la gravedad, esto

genera una lectura de velocidad en los encoders y un sistema inestable. Sin embargo en

la segunda prueba (Figura 3-14) se realiza el mismo experimento pero con el control de

velocidad activo y la misma referencia de velocidad de 0 rad/s; se observa como el

control del sistema en lazo cerrado busca siempre el estado de salida deseado de forma

automática, por consiguiente el robot se mantiene estático. La acción de control también

se ajusta a la señal de referencia aleatoria que se genera a partir del gamepad, variando

bruscamente dicha referencia para observar su comportamiento y establecimiento

alrededor de la referencia (Figura 3-15). Este sistema se considera robusto debido a que

es estable ante la presencia de un rango establecido de perturbaciones.

Page 100: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

84 García Nickson

Molina Cristian

Figura 3-13. Sin control de velocidad en rampa de 30° de inclinación. Fuente: Autores

Figura 3-14. Control de velocidad en rampa de 30° de inclinación. Fuente: Autores

Page 101: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 3 85

Proyecto de grado. Ingeniería Electrónica. 2019. 85

Figura 3-15. Establecimiento de velocidad de los motores entorno a la señal de referencia

variable. Fuente: Autores

3.5 Resultados de la Estimación de Trayectoria

Como ya se explicó en la sección 2.3.3 el robot explorador cuenta con un algoritmo para

la estimación de su posición, el cual fue sometido a diversas pruebas para determinar su

correcto funcionamiento. La primera prueba realizada consistió en trazar una

circunferencia de 1.5 m de radio sobre la superficie para posteriormente seguirla con el

móvil guardando los datos recibidos por los codificadores incrementales (encoders) y la

IMU en un archivo .bag (sección 2.3.1) de modo que más adelante facilite su simulación y

procesamiento. Como se observa en la estimación obtenida en esta prueba (Figura 3-16)

el algoritmo presenta una desviación de aproximadamente 0.5m al momento de

correlacionar el punto de partida con el punto final de la trayectoria.

Figura 3-16. Trayectoria circular estimada por el EKF. Fuente: Autores

Page 102: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI-AUTÓNOMO CON ACCESO

REMOTO

86 García Nickson

Molina Cristian

Por último se lleva a cabo una prueba en el polideportivo de la Universidad de Ibagué

definiendo una trayectoria con conos dentro de un rectángulo de 18m X 9m ilustrado en

la Figura 3-17 (a). Repitiendo el procedimiento de la prueba anterior, se ingresan los

datos guardados en un archivo bag al algoritmo del EKF y se obtiene una estimación de

trayectoria con un alto grado de precisión, vista en la Figura 3-17 (b).

a) b)

Figura 3-17. Estimación de trayectoria mediante el EKF. Fuente: Autores

Una vez validado el correcto funcionamiento del trazado de trayectoria haciendo uso de

los datos guardados en archivos bag para su posterior procesamiento, se procede a

implementar el software necesario para obtener una visualización en tiempo real a través

de la interfaz de Rviz. En la Figura 3-18 se ilustran dos ejemplos de trayectorias

graficadas mediante dicha interfaz.

Figura 3-18. Gráficas en tiempo real de trayectoria recorrida en el simulador Rviz. Fuente: Autores

Page 103: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 3 87

Proyecto de grado. Ingeniería Electrónica. 2019. 87

Los resultados anteriores se evidencian con mayor claridad en un vídeo demostrativo

adjunto en el repositorio GitHub del proyecto, cuyo enlace se presenta en el siguiente

capítulo de este documento.

Page 104: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Proyecto de grado. Ingeniería Electrónica. 2019. 88

Capítulo 4. Conclusiones y Recomendaciones

El desarrollo del proyecto documenta evidencia el alcance de cada uno de los objetivos

propuestos. Un aporte significativo teniendo en cuenta el alcance de los objetivos y el

estudio de diversas técnicas y contenidos que fueron necesarios para culminar con éxito.

Resaltando apropiaciones en diseño de sistemas mecánicos, diseño electrónico,

programación robusta, control digital, comunicaciones digitales, cada una ellas afrontada

desde la teoría hasta la implementación:

• Se diseñó y fabricó un robot móvil en arquitectura rocker bogie con 6 ruedas y 6

motores. La plataforma mecánica se puso a prueba en diferentes terrenos tanto

regulares como irregulares, obteniendo resultados de navegación y

desplazamiento satisfactorios, incluso ante la presencia de obstáculos e

inclinaciones. Adicionalmente, de la misma manera un sistema de manipulación

de carga fue diseñado, implementado y validado experimentalmente. El

subsistema que tiene la forma de un brazo robótico tiene cinco grados de libertad

permite al piloto manipular cargas simples y pequeñas desde un gamepad.

• Se realizó la integración del hardware y las conexiones necesarias para la

manipulación controlada de un robot móvil, seleccionando e implementando de

manera compatible los siguientes elementos: Nvidia Jetson TK1, Kinect V1, la

IMU Xsens MTi-30 AHRS, el Roboclaw 2X15 Motor Controller o el Logitech

Wireless Gamepad F710. Todos ellos operando conjuntamente para operar sobre

la plataforma mecánica de exploración remota.

• Se desarrolló un sistema de software flexible y robusto compatible con el sistema

empleado profesionalmente para operar robots: Robotic Operating System ROS.

Un logro que, sin duda, tomó más tiempo de lo planeado, pero que a su vez

proporciona a esta una serie de características que simplifican el proceso de

desarrollo de software para el manejo general del robot y mejoran la estabilidad

del software implementado, además de su flexibilidad para migrar su código

fuente a otras áreas de aplicación. Del mismo modo, gracias a la estructuración

del hardware implementado en su estructura modular, resulta más cómodo y

sencillo añadir diferentes sensores a la plataforma, permitiéndole a futuro

incrementar su opción de aplicación. Adicionalmente, cabe destacar la facilidad

de operación que añade el panel de control instalado en la parte trasera del robot

al ofrecer puertos de carga de las baterías sin necesidad de extraerlas, puertos

USB y pantalla LCD para una interfaz amigable con el usuario, interruptores

independientes para las líneas lógica y de potencia, y un botón de “stop” para

casos de emergencia. El instructivo, código fuente y vídeo demostrativo del

sistema puede encontrarse disponible online en el siguiente repositorio:

https://github.com/HaroldMurcia/AlphaROVER

Page 105: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Capítulo 4 89

Proyecto de grado. Ingeniería Electrónica. 2019. 89

• Se diseñó e implemento un control digital de tracción sobre cada conjunto lateral

de ruedas sobre el robot a partir de la lectura de los encoders de las ruedas

traseras, permitiendo generar un modo de operación semi-autónomo, en la que el

robot facilita su manipulación desde un gamepad remoto. Esta función establece

un desplazamiento controlado y constante sin verse afectado por la presencia de

obstáculos menores, irregularidades en el terreno o inclinaciones menores a 30º

aproximadamente, además de sostener su posición en presencia de

perturbaciones. Su validación experimental obtuvo resultados satisfactorios

mejorando la confiabilidad del piloto sobre la manipulación remota.

• Se desarrolló un algoritmo capaz de estimar la trayectoria recorrida del robot, una

de las tareas de mayor complejidad en el proyecto. El algoritmo que calcula una

estimación XY a partir de la información provista por los encoders, la unidad

inercial IMU y los parámetros físicos del Alpha Rover, basa su principio de

operación en la teoría de Kalman implementada con éxito en proyectos anteriores

del semillero SIRUI. Esta función representa un gran potencial para las

aplicaciones a futuro del robot, dado que en combinación con elementos de

percepción permite generar mapas de información, tales como reconstrucción 3D

de entornos.

• Finalmente, la unión de todas estas etapas mencionadas anteriormente, generan

como resultado una plataforma totalmente operativa con la posibilidad de ser

utilizada en misiones de exploración de entornos o como prototipo de

investigación mediante la implementación de los sensores deseados sobre su

estructura modular.

En una mirada hacia el futuro se presentan los siguientes puntos a fin de mejorar la

plataforma y el desempeño de sus posibles aplicaciones. En primer lugar, a lo largo del

desarrollo del proyecto hubo problemas relacionados con la entrega de potencia de los

convertidores DC-DC empleados, de modo que los motores de tracción no ejercían todo

su torque y en ocasiones se presentaban casos de reinicio de la tarjeta de control. Esta

problemática también se vio reflejada en las situaciones de mayor exigencia del brazo

robótico. Para evitar esto se recomienda el uso de reguladores comerciales de mayor

amperaje, y por ende más potentes.

Otra de las principales líneas de mejora son los motores. Se podrían sustituir por unos de

mayor gama, dotando al sistema de un mejor rendimiento en cuanto a torque y con esto

facilitando los giros sobre su propio eje en terrenos con fricciones elevadas.

Page 106: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

90 Título de la tesis o trabajo de investigación

90 García Nickson

Molina Cristian

En cuanto a la navegación, las herramientas que ofrece ROS son muy amplias y

potentes, por lo que en futuros proyectos se aconseja dedicarle especial interés a esta

área, ya que se pueden llegar a conseguir mejores aplicaciones y resultados.

4.1 Aportes

Los resultados destacados de este proyecto son:

• El prototipo del robot explorador (en proceso de registro con la Universidad de

Ibagué).

• El software que permite manipular controladamente el robot en su desplazamiento y

manipulación de carga (en proceso de registro con la Universidad de Ibagué).

• La metodología de diseño presente en este documento.

Adicionalmente, durante el desarrollo del proyecto se realizaron participaciones en

representación del semillero SIRUI dentro de las que se resaltan:

• Torneo Mercury Challenge 2018.

• Muestra de proyectos de Electrónica 208B y 2019A.

• Encuentro Regional de Semilleros de Investigación Red Colsi nodo Tolima en sus

versiones 2018 y 2019.

• Participación en muestras de proyectos de semilleros con el Programa de Electrónica

de la Universidad de Ibagué.

Page 107: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Proyecto de grado. Ingeniería Electrónica. 2019. 91

Referencias Bibliográficas

[1] G. Herrera Ramírez, “Navegación autónoma de un robot móvil,” 2014. [2] P. Long, C. Chevallereau, D. Chablat, and A. Girin, “An industrial security system

for human-robot coexistence,” Ind. Robot An Int. J., vol. 45, no. 2, pp. 220–226, Mar. 2018.

[3] G. S. Argudo and A. D. Arpi, “Diseño y Construccion de un Robot Movil Tele Operado para la Asistencia en Operaciones de Alto Riesgo del Cuerpo de Bomberos,” 2012.

[4] A. Cerón, “Sistemas Robóticos Teleoperados,” 2005. [5] C. A. Quinayás Burgos, M. Muñoz Añasco, Ó. A. Vivas Albán, and C. A. Gaviria

López, “Diseño y construcción de la prótesis robótica de mano UC-1,” 2010. [6] A. Ollero, “Robótica: Manipuladores y Robots Móviles,” 2006. [7] V. González, “Robots móviles,” 2002. [Online]. Available:

http://platea.pntic.mec.es/vgonzale/cyr_0204/cyr_01/robotica/movil.htm. [8] J. Cruz Muñoz, “Aplicación de Control de Movimientos y Recopilación de Datos de

Contexto Para un Robot Móvil,” 2017. [9] M. Gómez, “Ackerman o Tipo Coche,” 2011. . [10] T. Lipták, M. Kelemen, A. Gmiterko, I. Virgala, Ľ. Miková, and D. Hroncová,

“Comparison of Different Approaches of Mathematical Modelling of Ackerman Steered Car-like System,” J. Autom. Control. Vol. 4, 2016, Pages 15-21, vol. 4, no. 2, pp. 15–21, Dec. 2016.

[11] T. Wang, Y. Wu, J. Liang, C. Han, J. Chen, and Q. Zhao, “Analysis and experimental kinematics of a skid-steering wheeled robot based on a laser scanner sensor.,” Sensors (Basel, Switzerland), 24-Apr-2015. [Online]. Available: http://www.ncbi.nlm.nih.gov/pubmed/25919370.

[12] E. Lucet, D. Sall, and P. Bidaud, “Dynamic control of the 6WD skid-steering mobile robot RobuROC6 using sliding mode technique,” Control.

[13] NASA, “PATENT ABSTRACTS BIBLIOGRAPHY A CONTINUING BIBLIOGRAPHY Section 1. Abstracts,” 1990.

[14] G. A. S. López and C. A. S. López, “Análisis y Diseño Mecánico de un Robot de Exploración Rocker-Bogie,” Rev. Teckne, vol. 9, no. 2, Jul. 2016.

[15] F. P. Torres and A. C. López, “Metodología de Cuadricóptero con Control y Estabilidad IMU, Usando Aplicación en Dispositivo Móvil Android,” Ingenio Magno, vol. 8, no. 2, pp. 21–32, 2018.

[16] R. Ibañez, D. Fanaro, and Á. Soria, “Herramienta para facilitar el desarrollo de aplicaciones basadas en Kinect,” 2013.

[17] F. R. Loayza, “Diseño e Implementación de un Seguidor Solar para el Control Electrónico de un Reflector Scheffler,” 2012.

[18] D. Onieva García, “Cámara web de alta definición Logitech Webcam Pro 9000,” 2010. .

[19] E. S. Malpartida and J. C. T. Sotelo, “Sistema de Visión Artificial Para el Reconocimiento y Manipulación de Objetos Utilizando un Brazo Robot,” 2007.

[20] D. Ortego Delgado, “¿Qué es ROS? | OpenWebinars,” 2017. [Online]. Available: https://openwebinars.net/blog/que-es-ros/.

[21] A. Editor, “ROS - ¿Un sistema operativo diseñado para robots? - Autracen,” 2017. [Online]. Available: http://www.autracen.com/ros/.

Page 108: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

92 Título de la tesis o trabajo de investigación

92 García Nickson

Molina Cristian

[22] C. Jiménez Jiménez, “Desarrollo de un sistema de control de un robot móvil,” 2017. .

[23] C. Pardo, “Controlador PID - Control Automático - Picuino,” 2019. . [24] K. Ogata et al., Ingeniería de control moderna www.elsolucionario.net. . [25] A. Pascual, “EKF y UKF: dos extensiones del filtro de Kalman para sistemas no

lineales aplicadas al control de un p´endulo invertido,” 2006. [26] O. Barrero, S. Tilaguy, and Y. Nova, “Outdoors Trajectory Tracking Control for a

Four Wheel Skid-Steering Vehicle,” 2018. [Online]. Available: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=8588153&isnumber=8588111.

[27] I. L. Almeida and J. A. Ochoa, “Diseño y Construcción de un Robot Explorador de Terreno,” 2013.

[28] M. N. Ibarra Bonilla, “Navegación Autónoma de un Robot con Técnicas de Localización y Ruteo,” 2009.

[29] J. A. Tello, “Construcción y Localización en Tiempo Real de un Robot Móvil Vía Odometría en el Seguimiento de Trayectorias Mediante Control Automático,” 2010.

[30] H. R. Systems, “MTi 10-series.” [31] E. R. Reyes Moreno, “Lineamientos para la creación de una VPN (Virtual Private

Network) Red Privada Virtual,” 2005. [Online]. Available: http://tesis.udea.edu.co/bitstream/10495/147/1/LineamientosCreacionVPNRedPrivadaVirtual.pdf.

[32] J. Gutiérrez Pérez, “Introducción a ROS en Raspberry Pi,” 2017. [33] C. Vlasin and R. D. E. Keyser, “Frtool – The User ’ s Guide Design Tool,” Design. [34] O. Barrero Mendoza, H. Murcia, and J. Valenciano Claros, “Modeling and

parameter estimation of a 4-wheel Mobile Robot,” no. October, pp. 3–8, 2016.

Page 109: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Proyecto de grado. Ingeniería Electrónica. 2019. 93

Anexos

A. Diagrama circuital del sistema y tanla de nomenclatura de pines

Figura A-1. Diagrama circuital de la etapa de potencia. Fuente: Autores

Page 110: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

94 Título de la tesis o trabajo de investigación

94 García Nickson

Molina Cristian

Figura A-2. Diagrama circuital de elemento manipulador de carga y el dispositivo Kinect. Fuente:

Autores

Page 111: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Bibliografía 95

Proyecto de grado. Ingeniería Electrónica. 2019. 95

Figura A-3. Diagrama circuital de la tarjeta de control y HUB USB. Fuente: Autores

Page 112: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

96 Título de la tesis o trabajo de investigación

96 García Nickson

Molina Cristian

Figura A-4. Diagrama circuital de conexión de motores. Fuente: Autores

Page 113: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Bibliografía 97

Proyecto de grado. Ingeniería Electrónica. 2019. 97

Figura A-5. Diagrama circuital del módulo de relés. Fuente: Autores

Tabla A-1. Tabla de nomenclatura de pines. Fuente: Autores

ELEMENTO

DESCRIPTION CODIG

O

NUMERO DE

ETIQUETAS POR NODO

UBICACION DE

ETIQUETA

MOTOR

POSICION UBICACIO

N POLARIDA

D

FORWARD [F]

RIGTH

POSITIVE M2A-FR

2 MOTOR -

ROBOCLAW

NEGATIVE M2B-FR

2 MOTOR -

ROBOCLAW

LEFT POSITIVE M1A-FL 2

MOTOR - ROBOCLA

W

NEGATIVE M1B-FL 2 MOTOR -

ROBOCLA

Page 114: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

98 Título de la tesis o trabajo de investigación

98 García Nickson

Molina Cristian

ELEMENTO

DESCRIPTION CODIG

O

NUMERO DE

ETIQUETAS POR NODO

UBICACION DE

ETIQUETA

W

MIDDLE[M]

RIGTH

POSITIVE M2A-MR

2 MOTOR -

ROBOCLAW

NEGATIVE M2B-MR

2 MOTOR -

ROBOCLAW

LEFT

POSITIVE M1A-ML

2 MOTOR -

ROBOCLAW

NEGTIVE M1B-ML

2 MOTOR -

ROBOCLAW

BACKWARD[B]

RIGTH

POSITIVE M2A-BR

2 MOTOR -

ROBOCLAW

NEGTIVE M2B-BR

2 MOTOR -

ROBOCLAW

LEFT

POSITIVE M1A-BL 2 MOTOR -

ROBOCLAW

NEGTIVE M1B-BL 2 MOTOR -

ROBOCLAW

COLOR

ENCODER RIGTH

GREEN GND ENC

1 MOTOR -

ROBOCLAW

BLUE VCC ENC

1 MOTOR -

ROBOCLAW

YELLOW ENC1A 1 MOTOR -

ROBOCLAW

WHITE ENC1B 1 MOTOR -

ROBOCLAW

ENCODER LEFT

GREEN GND ENC

1 MOTOR -

ROBOCLAW

BLUE VCC ENC

1 MOTOR -

ROBOCLAW

YELLOW ENC2A 1 MOTOR -

ROBOCLAW

Page 115: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Bibliografía 99

Proyecto de grado. Ingeniería Electrónica. 2019. 99

ELEMENTO

DESCRIPTION CODIG

O

NUMERO DE

ETIQUETAS POR NODO

UBICACION DE

ETIQUETA

WHITE ENC2B 1 MOTOR -

ROBOCLAW

USB

FUNCION ELEMENTOS

DATOS

IMU IMU 1 IMU - HUB

ROBOCLAW RBW 1 ROBOCLA

W-HUB

WEBCAM CAM 1 WEBCAM -

HUB

KINETC KNT 1 KINETC -

HUB

POLOLU SERVOS PLS 1 POLOLU

SERVOS - HUB

EXTENSION 1 EXT1 2 EXTENSION 1 - HUB

EXTENSION 2 EXT2 2 EXTENSION 2 - HUB

ALIMENTACION

MODEM TP-LINK MDM 1 MODEM -

HUB (12 V)

PANTALLA LCD LCD 1 LCD - HUB

(12 V )

PCB POTENCI

A

OUTPUT VOLTAGE

ELEMENTOS

5 V

POLOLU SERVOS SRV-5 2

PCB POTENCIA

-PCB CONTROL

MODULO RELES RL-5 2

PCB POTENCIA

-PCB CONTROL

12V

HUB HUB-12 2 PCB

POTENCIA -HUB

JETSON JET-12 2 PCB

POTENCIA - JETSON

ROBOCLAW RBW-

12 2

BATERIA 1 - PCB

CONTROL

KINETC KNT-12 2 PCB

POTENCIA -KINECTC

INPUT VOLTAGE

ELEMENTOS

FUNCION

Page 116: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

100 Título de la tesis o trabajo de investigación

100 García Nickson

Molina Cristian

ELEMENTO

DESCRIPTION CODIG

O

NUMERO DE

ETIQUETAS POR NODO

UBICACION DE

ETIQUETA

12 V

BATERIA 1 CONTROL BAT- C 2 BATERIA 1

- PCB POTENCIA

BATERIA 2 POTENCIA BAT- P 2 BATERIA 1

- PCB POTENCIA

B. Tabla de costos Tabla B-1. Tabla de costos del proyecto. Fuente: Autores

Elemento Precio Unitario

USD [$] Cantidad Subtotal

USD [$]

Mecánica

100:1 Metal Gearmotor 37Dx73L mm with 64

CPR Encoder

$39,95 2 $79.9

100:1 Metal Gearmotor 37Dx57L mm $24,95 4

$99.8

Rin fabricado en aluminio $33.33 6

$200

Soporte fabricado para motores $8 6

$48

Buje fabricado para eje 6mm

$8 6 $48

Par de ruedas de goma negra

$42,96 3 $128.9

Piezas 3D Rocker Bogie $90 4

$90

Chasis en aluminio

$10 1

$10

Page 117: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

Bibliografía 101

Proyecto de grado. Ingeniería Electrónica. 2019. 101

Elemento Precio Unitario

USD [$] Cantidad Subtotal

USD [$]

Armazón o carrocería

$35 1

$35

Piezas en metacrilato

$17 7

$119

Amortiguadores a gas

$5 4

$20

Perfil de Aluminio 20X20 mm - 1 Metro

$13 2

$26

Electrónica

Jetson TK1 $199 1

$199

RoboClaw 2X15A $155 1

$155

DROK 90483 DC Buck Converter 8A/100W 12A

Max DC 5-40V to 1.2-36V

$11.8 2

$23.6

HRB

6000mah 3S 50~100C

Lipo Pack

$75 2

$150

IMU Xsens MTI-30 $1500 1

$1500

Kinect Xbox 360 $ 25 1

$25

Cámara Logitech QuickCam Orbit AF

$100 1

$100

Router TP-LINK TL-MR3020

$45 1

$45

Page 118: DESARROLLO DE UN ROBOT MÓVIL TERRESTRE SEMI- …€¦ · Resumen Este documento es el informe final del trabajo de grado correspondiente al desarrollo de un robot explorador terrestre

102 Título de la tesis o trabajo de investigación

102 García Nickson

Molina Cristian

Elemento Precio Unitario

USD [$] Cantidad Subtotal

USD [$]

Control Gamepad Logitech f710

$45 1

$45

Interruptor codo 3P 40 amp

$11.99 1

$11.99

Interruptor de dos posiciones 20 Amp

$3,99 1

$3,99

Conectores Bateria LiPO

$10 1

$10

Botón de paro de emergencia

$10 1

$10

Hub Usb 7 puertos

$30 1

$30

Pantalla Touch 3.5 pulgadas

$26,8 1

$26,8

TOTAL $3329.98