Ups - TTS281
Ups - TTS281
Ups - TTS281
SEDE QUITO
CARRERA:
INGENIERÍA ELECTRÓNICA
INGENIEROS ELECTRÓNICOS
TEMA:
AUTORES:
TUTORA:
Nosotros Clelio Daniel Endara Sumba y Emerson Joao Maigua Yánez, con
documentos de identificación N° 1723598197 y Nº 1717983702 respectivamente,
manifestamos nuestra voluntad y cedemos a la Universidad Politécnica Salesiana la
titularidad sobre los derechos patrimoniales en virtud de que somos autores del trabajo
de titulación intitulado: DESARROLLO DE UN ALGORITMO DE TRAYECTORIA
PARA UN ROBOT SEGUIDOR DE LÍNEA DESTREZA DE COMPETENCIA
MEDIANTE VISIÓN E INTELIGENCIA ARTIFICIAL, mismo que ha sido
desarrollado para optar por el título de: Ingenieros Electrónicos, en la Universidad
Politécnica Salesiana, quedando la Universidad facultada para ejercer plenamente los
derechos cedidos anteriormente.
_________________________ _________________________
Clelio Daniel Endara Sumba Emerson Joao Maigua Yánez
C.I. 1723598197 C.I. 1717983702
i
DECLARATORIA DE COAUTORÍA DE LA DOCENTE TUTORA
_________________________
Carmen Johanna Celi Sánchez
C.I. 1717437808
ii
DEDICATORIA
iii
AGRADECIMIENTO
La vida está llena de retos y gratas experiencias, es por ello que agradezco a la
Universidad Politécnica Salesiana sede Quito campus Sur por brindarme las
herramientas necesarias para mi formación profesional, a todos los docentes que a lo
largo de mi carrera universitaria me han transmitido su sabiduría y conocimiento, en
especial a mi tutora Mgtr. Carmen Johanna Celi Sánchez por su confianza, orientación
y guía puesta en este trabajo de titulación; a la Secretaría Técnica de Ecosistema de
Emprendimiento e Innovación por darme la oportunidad de desarrollar el primer
proyecto de investigación en los laboratorios de fabricación StartLabs, a mis
compañeros universitarios por su amistad brindada en todos aquellos momentos de
jornadas académicas, actividades extracurriculares y de diversión, en especial a la Srta.
Mishel Pazmiño; así como también a mi familia y a todas aquellas personas que
estuvieron en los momentos más adecuados brindándome sus consejos para motivarme
a culminar mi carrera profesional.
iv
ÍNDICE DE CONTENIDO
CAPÍTULO 1 ......................................................................................................... 1
ANTECEDENTES ................................................................................................. 1
CAPÍTULO 2 ......................................................................................................... 4
2.6 Estado del arte de los sistemas de navegación en robots móviles. ................... 9
a) Neuronas .................................................................................................11
v
2.10 Tipos de capas de una red neuronal .............................................................12
CAPÍTULO 3 ........................................................................................................16
a) NRF52-DK..............................................................................................16
3.2 Diseño electrónico del robot móvil seguidor de línea destreza .......................20
vi
b) Sistema de control ...................................................................................21
c) Interfaz ....................................................................................................23
3.3 Diseño estructural del robot móvil seguidor de línea destreza ........................26
3.4 Red Neuronal para el robot móvil seguidor de línea destreza .........................32
3.8 Resultado final del robot móvil seguidor de línea destreza .............................40
CAPÍTULO 4 ........................................................................................................42
vii
CONCLUSIONES ................................................................................................47
RECOMENDACIONES .......................................................................................49
REFERENCIAS ....................................................................................................50
ANEXOS ...............................................................................................................55
viii
ÍNDICE DE FIGURAS
ix
Figura 3.28 Funciones para el procesamiento de imagen de entrada ........................38
Figura 3.29 Programación de la red neuronal en Open MV IDE ..............................39
Figura 3.30 Programación para el control del shield para motores ...........................40
Figura 3.31 Prototipo Implementado .......................................................................40
Figura 4.1 Pistas en escenario controlado ................................................................42
Figura 4.2 Pista con líneas de tendencia ..................................................................46
x
ÍNDICE DE TABLAS
xi
RESUMEN
A través de la creación del prototipo en conjunto con redes neuronales para el control
de la trayectoria mediante visión artificial, se obtuvo como resultado una efectividad
del 100 % en la aplicación de una red neuronal con 12 neuronas en la capa oculta en
un escenario controlado con alto grado de dificultad.
Palabras claves: robot móvil, prototipo, seguidor de línea destreza, visión artificial,
algoritmo inteligente, trayectoria.
xii
ABSTRACT
Through the creation of the prototype in conjunction with neural networks to control
the trajectory through artificial vision, as a result, 100% effectiveness was obtained in
the application of a neural network with 12 neurons in the hidden layer in a controlled
scenario with a high degree of difficulty.
Keywords: mobile robot, prototype, the follower of skill line, artificial vision,
intelligent algorithm, trajectory.
xiii
INTRODUCCIÓN
El presente trabajo de titulación se basó en la aplicación de visión e inteligencia
artificial, y como han ayudado de gran manera a solucionar problemas en diversos
ámbitos; en la actualidad se cuenta con trabajos relacionados a nuestra investigación
como por ejemplo: Obtención de rutas de navegación óptimas, algoritmos de
búsqueda, Aprendizaje del Comportamiento Humano en el Espacio Articular del
Robot con el uso de Redes Neuronales (Hossian, y otros, 2018), (Aguilar Campos &
Sandoval Suquillo, 2018), (Ramírez Díaz, 2019); y aplicación de visión artificial
como: Navegación Autónoma de Robots, Navegación autónoma basada en maniobras
bajo estimación de posturas humanas, Navegación Autónoma de un vehículo Pequeño
en Interiores (Castañeda Bermúdez & Salguero Lozano, 2017), (Barahona Guamani,
2019), (Buendia Ríos, 2017).
xiv
ANTECEDENTES
1.1 Planteamiento del problema
Actualmente la robótica de competencia ha sido de gran acogida a nivel mundial en
diversas categorías, por lo tanto; Ecuador no es la excepción ya que cada año se
realizan torneos de robótica donde los participantes han evolucionado los diseños
mecánicos, electrónicos y software de los prototipos robóticos, en ese sentido los
integrantes del grupo ASU del área académica club de robótica "Robotics UPS UIO”
de la Universidad Politécnica Salesiana sede Quito campus Sur, han desarrollado
prototipos robóticos tradicionales de competencia para diferentes categorías.
Para la categoría Seguidor de Línea Destreza que consiste en seguir un camino con
bifurcaciones desde un punto inicial a un punto final cuyo escenario tiene un fondo
blanco con líneas de color negro, los integrantes del club han desarrollado robots
móviles con un diseño mecánico, electrónico y de control tradicional, haciendo uso de
sensores reflectivos (QTR-8A o su equivalente CNY70) o de sensores infrarrojos
digitales que tienen respuesta inmediata, los mismos que a su vez forman una hilera
de dos o más sensores (uno a cada lado de la línea) por lo general se los instala en el
frente del chasis y paralelamente al piso permitiendo que el robot móvil seguidor de
línea destreza pueda seguir la línea.
1
1.2 Justificación del proyecto
El presente Proyecto se enfocará en el desarrollo de un algoritmo de trayectoria
mediante inteligencia y visión artificial para el aprendizaje de un robot móvil seguidor
de línea en la categoría destreza sobre un escenario controlado, ya que con la visión
artificial se tiene la ventaja de analizar la ruta óptima de navegación en la pista de
competencia mediante adquisición de imágenes reales del entorno, obteniendo
información más relevante para realizar un control más efectivo.
1.3 Objetivos
1.3.1 Objetivo General
Desarrollar un algoritmo de trayectoria para un robot móvil seguidor de línea en la
categoría de destreza mediante visión e inteligencia artificial utilizando software libre.
2
Diseñar el hardware para el robot móvil seguidor de línea destreza utilizando
los lineamientos reglamentarios de dicha categoría.
3
MARCO TEÓRICO
2.1 Introducción
Se presentan las propiedades y características que engloban a un robot móvil seguidor
de línea destreza, partiendo desde sus requerimientos básicos hasta el análisis para la
implementación estructural, electrónica y mecánica; así como también una descripción
general de la reglamentación que regulan los requerimientos técnicos del prototipo, las
especificaciones técnicas de las pistas, el desarrollo de la competencia y la
determinación de los ganadores. Además, se realizó una presentación y estado del arte
del control a través de algoritmos inteligentes mediante la visión e inteligencia
artificial, analizando sus conceptos y principales características que se presentarán a
lo largo del capítulo para llegar al procedimiento de la implementación de estos para
el caso de estudio.
4
Tradicionalmente este tipo de prototipo robótico usa una hilera de al menos dos o más
sensores reflectivos o infrarrojos (uno a cada lado de la línea) que por lo general se los
instala en el frente del chasis y paralelamente al piso permitiendo que el robot móvil
siga la línea. La arquitectura mecánica, electrónica y de control para la fabricación del
robot móvil seguidor de línea destreza es libre de acuerdo con los criterios del
participante (Tapiero Santa, 2019).
Este tipo de robot está presente en los diferentes concursos de robótica de competición
que se organizan anualmente por las instituciones de educación superior en todo el
Ecuador y en ciertos torneos a nivel mundial, donde se fomenta el desarrollo de la
robótica de competencia e innovación para la categoría Seguidor de Línea Destreza
siendo cada vez más competitiva (Robot Games ZL7, 2019).
5
- De principio a fin el robot móvil debe encontrarse dentro del área de pista
cumpliendo la trayectoria marcada.
- Si el prototipo pierde la trayectoria de la pista y retorna al mismo punto no se
finaliza el tiempo.
- Cuando el prototipo pierda la trayectoria parcial, completamente o presenta
inmovilidad durante 5 segundos, finaliza su participación.
- Cuando el prototipo salga de la pista o tome un atajo dentro de la trayectoria
marcada, se declara como intento fallido.
- Cada competidor dispone de 2 participaciones para cumplir la trayectoria de la
pista, tomando como resultado el mejor tiempo obtenido.
- Se determina la etapa final con los 5 mejores tiempos del primer cronometraje.
- Se declara ganador de la competencia al robot móvil que haya completado la
trayectoria en el menor tiempo posible, además de haber cumplido las
reglamentaciones estipuladas.
La reglamentación para la categoría seguidor de línea destreza como para las demás
categorías evolucionan y están sujetas a continuos cambios, debido a que toman como
referencia reglamentos presentados por instituciones de educación superior y
competiciones de robótica (CEDIA, 2019, págs. 1-2).
6
Figura 2.1 Cinemática de un robot móvil con arquitectura diferencial
La disposición del movimiento se realiza modificando la velocidad de las ruedas izquierda y derecha
independientemente, Elaborado por: Clelio Endara y Emerson Maigua.
7
Figura 2.2 Pista de competencia categoría seguidor de línea destreza CER 2013
(A) (B)
(A)Vista superior de la pista categoría seguidor de línea destreza en el concurso CER 2013, (B) Vista
superior de la trayectoria ideal para que el robot seguidor de línea destreza pueda completar el circuito
de prueba de la Figura 2.1 (A), Elaborado por: Clelio Endara y Emerson Maigua.
Los sistemas de visión artificial tienen procesos para el análisis de las imágenes como
son: la capacitación de imágenes, el almacenamiento de la información captada, el
procesamiento de imágenes y la interpretación de los resultados; estos procesos logran
resultados precisos, confiables y repetibles.
8
2.6 Estado del arte de los sistemas de navegación en robots móviles.
El problema de la navegación de robots móviles en diferentes entornos ha sido un tema
de interés para los investigadores en las dos últimas décadas. Sin embargo, el desafío
actual es la navegación autónoma en ambientes que contienen obstáculos estáticos y
móviles, especialmente cuando los objetos que ocupan el entorno tienen una posición
y movimiento desconocido (Suárez Romero & del Pozo Quintero, 2016).
El área de utilización de los robots móviles es cada vez más amplia, debido a que la
tarea de navegación cobra mayor importancia en aplicación de áreas como la industria,
exploración espacial, educación, entretenimiento, asistencia médica, seguridad, entre
otras (Suárez Romero & del Pozo Quintero, 2016).
Una de las soluciones que ha tenido mayor acogida es el área de la visión artificial que
en conjunto con un algoritmo inteligente han dado mitigación a un sin número de
problemas como por ejemplo: Deep Learning para la detección de peatones y
automóviles, Desarrollo de algoritmos para la exploración submarina mediante
vehículos autónomos con visión artificial monocular, Vehículo autónomo con visión
artificial utilizando OpenCV, Sistema de detección y conteo de vehículos utilizando
visión artificial (Vizcaya Cárdenas, 2018), (Trabes, 2018), (Peña Merino, 2017),
(Benavent Pla, 2017).
9
La gran cantidad de problemáticas resueltas en la navegación de robots móviles es
gracias al uso de diferentes tipos de control como son: PID, lógica difusa, sistemas
embebidos, redes neuronales, entre otros; por esta razón se orientó el tema de
investigación hacia las redes neuronales debido a su gran impacto en el uso de la visión
artificial en la generación de nuevos conocimientos para generaciones posteriores.
a) Neuronas
El componente mínimo presente en la red neuronal se llama neurona o también
elemento de procesamiento, cada una de estas neuronas presentes en la red neuronal
tienen una capacidad limitada de cómputo o procesamiento restringidas por un
conjunto de instrucciones, además posee una pequeña memoria para almacenar pesos
y activaciones (Matich, 2001). Para simplificar el funcionamiento general de una
neurona se puede verlo a través de la Figura 2.3 donde se puede apreciar que una
neurona se reduce finalmente a un sumador, que tiene sus propias entradas, pesos y
funciones de activación que se van interrelacionando con otras neuronas a través de la
arquitectura de la red neuronal.
Ilustración didáctica de una neurona, Elaborado por: Clelio Endara y Emerson Maigua.
a) Arquitectura MobileNet
Es una nueva arquitectura de red neuronal que está específicamente diseñada para
entornos móviles y con recursos limitados, mejora el rendimiento de vanguardia de los
modelos móviles en múltiples tareas y puntos de referencia, así como en un espectro
de diferentes tamaños de modelos. Las MobileNets se basan en una arquitectura
optimizada que utiliza convoluciones separables en profundidad para construir redes
neuronales profundas y ligeras (Sadler, Howard, Zhu, Zhmogimov, & Chen, 2019).
Entre las variantes de esta arquitectura existe la versión 2 con base de un
Backpropagation por medio de Deep Learning haciendo uso del método de aprendizaje
supervisado, este tipo de arquitectura logra un equilibrio óptimo entre precisión y
rendimiento.
Correlación entre capa y capa presentes en una red neuronal, Fuente: (Torres, 2018).
12
a) Capa de entrada
Depende de los datos o variables que genere el problema a resolver ya que con estos
se puede definir el número y tipo de neuronas que la constituyen.
b) Capas intermedias
Depende de la complejidad del problema que la red va a resolver, por esta razón se
puede necesitar más de una capa. En un análisis y tratamiento de estas capas se pueden
obtener propiedades interesantes para la red neuronal como son generalización,
extracción de características, adaptabilidad, etc.
c) Capa de salida
Dependiendo del formato de nuestra arquitectura y la aplicación que tendrá la red
neuronal se va colocando el número de neuronas de salida.
Construcción y manejo de una red neuronal, Elaborado por: Clelio Endara y Emerson Maigua.
a) Fase de conceptualización
Se estudia y analiza un modelo de red neuronal que se ajuste al problema a resolver,
partiendo de una observación caracterizada del problema.
b) Fase de diseño
En esta parte se determina la estructura que tendrá la red, el tipo de elemento de
procesamiento y el algoritmo de aprendizaje que utilizará la misma.
13
c) Fase de implementación
Para que la red neuronal logre resolver un problema, esta deberá ser entrenada para su
correcta ejecución; este proceso se denomina entrenamiento que es una configuración
óptima realizada mediante la introducción de ejemplos.
d) Fase de mantenimiento
En esta parte se realiza un seguimiento del funcionamiento de la red neuronal mediante
el monitoreo y adquisición de datos para tener nuevos aprendizajes o descartar otros
ejemplos obsoletos (Matich, 2001).
Mediante el uso de redes neuronales se realiza el aprendizaje profundo, donde los datos
reconocen sus respectivas relaciones y patrones complejos que se van organizando en
capas. Es necesario una gran capacidad de procesamiento y enormes conjuntos de
información para su aplicación (Rouhiainen, 2018).
2.13 Backpropagation
Es una red neuronal, parte del aprendizaje supervisado y actualmente la más popular
para aplicaciones de visión artificial, posee un conjunto definido de entradas y salidas,
el cual emplea solo entrenamientos supervisados donde los ejemplos de la red neuronal
de entrada – salida correctos deben ser abundantes. “No existe una ley matemática que
permita calcular cuantos ejemplos deben ser utilizados para el entrenamiento de la red
neuronal, solo se posee reglas empíricas o experimentales sujetas al problema donde
se estiman la cantidad de ejemplos” (San Juan, Jamett, Kaschel, & Sánchez, 2015).
14
2.14 Aprendizaje de una red neuronal
Esta es la característica más importante en una red neuronal, debido a que esta parte
es un factor que permite determinar las ventajas y también los inconvenientes de
nuestro sistema; para casos sencillos, los pesos o entradas se pueden agregar o asignar
de una manera manual, pero para casos más complejos es necesario utilizar algún
algoritmo para llevar a cabo el proceso de entrenamiento.
a) Aprendizaje Supervisado
En este método de manera general se presenta los vectores de entrada y salida deseada.
La salida que es manejada por la red neuronal se compara con la salida deseada, y para
reducir el error cometido se van modificando los pesos de la red, motivo por el cual se
repite de forma iterada hasta que este error tenga un porcentaje de confiabilidad
aceptable.
b) Aprendizaje no supervisado
Este método es uno de los más cercanos al sistema biológico de aprendizaje, no se
tiene como en el anterior método mencionado el vector de la salida esperada, el único
vector que continua es la entrada en el conjunto de entrenamiento. El algoritmo hace
que las salidas sean consistentes modificando los pesos, es decir que a entradas muy
similares la red neuronal compute la misma salida. Las salidas se asocian a las entradas
acorde al proceso de entrenamiento.
a) NRF52-DK
La placa desarrollada por Nordic Semiconductor (Figura 3.1), posee un solo núcleo
32-bit ARM Cortex M4F con una memoria de programa de 512 kB (flash con cache)
y una memoria RAM de 64kB, ventajas como compactibilidad con Arduino en uso de
módulos a través de sus periféricos, comunicación UART para conexión a una cámara
con un software libre; su costo es de 40 USD disponible en el mercado ecuatoriano
(Nordic Semiconductor, 2017).
16
b) Tarjeta Raspberry Pi 3
Raspberry es una tarjeta electrónica (Figura 3.2), orientada al desarrollo que posee un
núcleo ARM, tiene un procesador Cortex de 1.2 GHz, además de una memoria RAM
de 1 GB, trabaja con el sistema operativo Linux, disponibilidad de conexión con
dispositivos externos y su costo ronda en los 90 $ (Raspberry Pi, 2015).
c) Tarjeta DECA
La placa DECA (Figura 3.3), por su arquitectura se la clasifica en el grupo de FPGA,
posee un núcleo Nios II Gen2, tipo RISC de 32 bits, una memoria RAM de 512MB,
dispone de conectividad USB y ethernet, posee periféricos de entrada y salida, además
trabaja en sistema operativo Windows 7 en adelante, esta tarjeta ronda un costo de 240
USD en el mercado estadounidense, no se encuentra disponible en el mercado
ecuatoriano actualmente (Arrow Development Tools, 2015).
17
d) Tarjeta OpenMV
La placa OpenMV de la Figura 3.4, posee un núcleo STM32H743VI ARM Cortex M7,
una memoria SRAM de 1 MB y 2 MB de flash, extensible hasta 32 GB (dependiendo
el modelo), dispone de conectividad USB, I2C y SPI, posee periféricos de entrada y
salida, además trabaja con software libre, esta tarjeta ronda un costo de 65 USD en el
mercado estadounidense, no se encuentra disponible en el mercado ecuatoriano
actualmente (Agyeman & Abdelkader, OpenMV, 2018).
e) Placa TMDSDC3359
La TMDSDC3359 (Figura 3.5), de la familia A8 Sitara AM335x, tiene un núcleo ARM
Cortex y un coprocesador NEON SIMD, memoria RAM de 512 MB, comunicación
ethernet, etherCAT, Profibus, Profinet y más, además de poseer periféricos de entrada
y salida, trabaja con software desarrollado por Texas Instruments (pagado), el costo de
la tarjeta ronda los 740 USD en Estados Unidos, actualmente se encuentran disponibles
en el mercado ecuatoriano (Texas Instruments, 2011).
18
Para realizar una correcta selección de la tarjeta de desarrollo se dispuso de la
realización de un esquema de proceso destacado con el objetivo de clasificar las
tarjetas dependiendo de las necesidades requeridas por el robot móvil; la tarjeta debe
ser capaz de conectarse a una cámara, tener la capacidad de manejar redes neuronales,
controlar módulos externos y cumplir un espacio máximo de 10 cm x 10 cm por
razones de estética del hardware.
Esquema de proceso destacado para la selección de la tarjeta de desarrollo para el robot móvil,
Elaborado por: Clelio Endara y Emerson Maigua.
Resumen característico de las tarjetas electrónicas, Elaborado por: Clelio Endara y Emerson Maigua.
Cámara Cam H7 conectada a tarjeta OpenMV, Fuente: (Agyeman & Abdelkader, OpenMV, 2018).
b) Sistema de control
Para el control de la trayectoria y de la programación del algoritmo inteligente
mediante la visión artificial con la tarjeta OpenMV, se detalla a continuación las
características destacadas de la tarjeta OpenMV Cam H7 (Agyeman & Abdelkader,
OpenMV, 2018).
Controlador TB6612.
Controla hasta 2 motores de CC.
Circuito de apagado térmico incorporado.
Circuito detector de baja tensión.
Modos de función CW / CCW / freno corto / parada.
Corriente de espera baja.
Rango de voltaje de suministro operativo de 6 V a 9 V.
La gran ventaja de este shield es su fácil conexión con la tarjeta Open MV, ofrece una
estética compacta e ideal para el diseño estructural del robot en la Figura 3.8 se puede
observar la conexión entre la tarjeta y el shield, además el esquema electrónico se
adjunta en el Anexo 1.
22
Figura 3.8 Tarjeta OpenMV conectada con shield para motores
Shield para motores conectado a tarjeta OpenMV con cámara CAM H7, Fuente (Agyeman &
Abdelkader, OpenMV, 2018).
c) Interfaz
Para la adquisición de datos que se implementan en el algoritmo de navegación
inteligente de la red neuronal, los ejemplos de entrenamiento necesitan ser visualizados
en tiempo real para una correcta adquisición de datos, por lo que se hace uso de una
pantalla LCD que es otro módulo que amplía la funcionalidad con una conectividad
directa de conexión simple a los periféricos de la tarjeta OpenMV como se puede ver
en la Figura 3.9, además el esquema electrónico se adjunta en el Anexo 1.
Conexión Pantalla LCD con Tarjeta OpenMV, Fuente: (Agyeman & Abdelkader, OpenMV, 2016).
23
Entre las principales características de esta pantalla están:
Controlador ST7735R LCD.
Una dimensión de 1.8 x 1.49 pulgadas.
Resolución de 128x160 pixeles, Color 16-bit.
Pin control de luz de fondo.
d) Micromotores y ruedas
Para la selección de los micromotores hay que tener en cuenta parámetros como la
velocidad y torque; debido a que la categoría seguidor de línea destreza opera con una
velocidad baja y un torque intermedio en los prototipos de competencia, esto para
evitar efectos de derrape o deslizamiento especialmente al momento de seguir una
trayectoria con curva muy cerrada.
En función de los datos anteriormente mencionados; se optó por los micromotores del
fabricante Pololu debido a su alto torque y baja velocidad, de la misma manera la
elección de las ruedas de goma del fabricante Pololu 42 x 19 mm con un orificio tipo
D que se acopla al eje de los micromotores, además posee un labrado de caucho como
se puede observar en la Figura 3.10, ideal para evitar derrapes, deslizamientos y
brindar una tracción eficiente asegurando un agarre al momento en que el robot
seguidor de línea destreza se moviliza en la pista de competencia brindando estabilidad
al robot.
24
Figura 3.10 Rueda Pololu Tipo D
Rueda Pololu 42 x 19mm tipo D con motor, Fuente: (Pololu Robotics & Electronics, 2018).
e) Fuente de alimentación
Para la alimentación del robot se utilizó una batería tipo Lipo (Figura 3.11), de dos
celdas es decir 7,4 V DC con capacidad de 800mAh (miliamperios hora); batería la
cual el fabricante (HobbyKing, 2020) informa que se tiene una autonomía de
aproximadamente 2 horas de uso continuo en altas condiciones.
Para tener una idea general del funcionamiento de la alimentación del robot en la
Figura 3.12 se observa el esquema de conexiones y la regulación de voltaje que se da
a través de los dispositivos.
25
Figura 3.12 Esquema de alimentación
micromotores
a 7,4 V
Batería Lipo Shiel para
7,4 V DC micromotores
Regulación a Tarjeta
Cámara H7
5V OpenMV
Esquema de alimentación del robot, Elaborador por: Clelio Endara y Emerson Maigua.
Diagrama de conexión entre el módulo de arranque y tarjeta open MV, Elaborado por: Clelio Endara y
Emerson Maigua.
El diseño estructural del robot seguidor de línea destreza cuenta con 8 piezas como se
observa en la Figura 3.14; en la Figura 3.15 se observa el ensamblaje de dichas piezas
además de la ubicación de la cámara CAM H7 (OV7725) se tuvo en cuenta factores
como la luminosidad, altura de la cámara respecto a la pista, el ángulo de enfoque y el
tamaño de imagen. Se escogió un diseño articulable como se observa en la Figura 3.15,
para que la cámara tenga libertad de movimiento en encontrar un ángulo de inclinación
ideal que oscila en un rango de 0° a 90° grados con respecto a la unión del chasis con
el brazo articulable y una altura entre 56.4 mm a 122.9 mm con respecto al piso.
(A) Estuche de la cámara, (B) Soporte de cámara, (C) Tapa de la cámara, (D) Chasis, (E) Soporte
micromotor 1, (F) Soporte micromotor 2, (G) Tapa de la rueda Loca, (H) Tapa del Chasis, Elaborado
por: Clelio Endara y Emerson Maigua.
27
Figura 3.15 Vistas del prototipo ensamblado
Robot móvil seguidor de línea de tipo diferencial diseñado en SolidWorks; (A) Vista frontal, (B) Vista
trasera, (C) Vista superior, (D) Vista inferior, (E) Vista lateral izquierdo, (F) Vista lateral derecho, (G)
Vista isométrica, Elaborado por: Clelio Endara y Emerson Maigua.
Configuración de parámetros de impresión 3D para las piezas que conforman el robot móvil seguidor
de línea destreza en el software Objet Studio, Elaborado por: Clelio Endara y Emerson Maigua.
28
c) Impresión 3D del subconjunto de piezas
Para fabricar el prototipo se utilizó una impresora 3D Stratasys Objet 30 Pro que
pertenece a los laboratorios de fabricación StartLabs de la Universidad Politécnica
Salesiana sede Quito. StartLabs, es un espacio colaborativo que promueve el desarrollo
de proyectos a través de la fabricación e implementación de prototipos rápidos con
fines investigativos, innovación tecnológica y de emprendimiento (Salesiana, 2020).
En la Figura 3.17 se observa las ocho piezas impresas dentro del área de impresión, el
material modelo utilizado fue de 220 gramos y el material soporte 235 gramos,
empleando un tiempo de 28 horas de impresión 3D con tecnología SLA.
Impresión 3D con tecnología SLA del subconjunto de piezas que conforman el robot móvil seguidor
de línea destreza, Elaborado por: Clelio Endara y Emerson Maigua.
29
d) Post Procesado del subconjunto de piezas
En esta etapa se procede a la eliminación del material soporte que se encuentra
adherido a las paredes de cada una de las piezas impresas, dicho material tiene la
ventaja de que es soluble en una solución de metasilicato de sodio con agua. Las piezas
estarán inmersas en esta solución entre 6 a 8 horas para eliminar el material de soporte,
por lo que se recomienda utilizar un cepillo con cerdas suaves para eliminar los restos
del material soporte que aún pueden permanecer entre los espacios de las piezas;
finalmente se enjuaga con agua limpia y se la deja secar las piezas al aire libre como
se observa en la Figura 3.18.
Eliminación del material de soporte de las piezas impresas en 3D, Elaborado por: Clelio Endara y
Emerson Maigua.
Ensamblaje de la parte electrónica, electromecánica y móvil del robot seguidor de línea, Elaborado
por: Clelio Endara y Emerson Maigua.
Robot móvil seguidor de línea de tipo diferencial; (A) Vista frontal, (B) Vista trasera, (C) Vista lateral
derecho, (D) Vista lateral izquierdo, Elaborado por: Clelio Endara y Emerson Maigua.
31
3.4 Red Neuronal para el robot móvil seguidor de línea destreza
Para el desarrollo e implementación de la red, dispone de tres bloques para su
funcionamiento, En la Figura 3.21 de manera general se puede observar el
funcionamiento de esta arquitectura de red, donde la entrada del sistema será una
matriz imagen que pasará a través de una capa oculta para posteriormente obtener en
nuestro caso cinco salidas.
Salida del
Capa sistema
Entrada Oculta
del
sistema
Diagrama de bloques general de la arquitectura para la red neuronal, Elaborado por: Clelio Endara y
Emerson Maigua.
b) Capa Oculta
Para la capa oculta se tiene la arquitectura MobileNet, en donde se realizan
comparaciones profundas con los ejemplos previamente entrenados para obtener una
respuesta a la salida.
32
3.5 Entrenamiento para la red neuronal
Para el entrenamiento de la red neuronal, se utiliza una plataforma de desarrollo on-
line, líder para el aprendizaje automático que es completamente gratuita para los
desarrolladores de software, ingenieros y expertos en dominios para resolver
problemas reales utilizando el aprendizaje automático en dispositivos como son Edge
Impulse y Keras (EdgeImpulse, 2020), los cuales a través de su interfaz de subida de
datos de los ejemplos previamente almacenados en un formato admisible para el
software como se mostrará más adelante en el procesamiento y adquisición de imagen;
son seleccionados como se muestra en la Figura 3.22 (A), donde se almacenan los
datos de imagen de entrada con su respectiva salida mediante una etiqueta como se
puede ver en la Figura 3.22 (B), posteriormente el software muestra un mensaje de
completado el trabajo de subida mostrado en la Figura 3.22 (C).
(A) Selección de los ejemplos para la red neuronal, (B) Asignación de nombre para la etiqueta de
salida de los ejemplos correspondientes, (C) Mensaje de subida de datos completa, Elaborado por:
Clelio Endara y Emerson Maigua.
33
a) Configuración y entrenamiento de la Red Neuronal
Para el entrenamiento y configuración de las características de la red neuronal, la
interfaz de Edge Impulse permite configurar mediante el lenguaje de Keras
directamente aplicando la arquitectura de red neuronal como se muestra en la Figura
3.23 (A).
34
Figura 3.24 Interfaz Edge Impulse de la salida del entrenamiento
Archivos generados, etiquetas en archivo de texto y la red neuronal en formato Tensor Flow Lite,
Elaborado por: Clelio Endara y Emerson Maigua.
35
b) Algoritmo del robot móvil
En la Figura 3.26 se describe el diagrama de flujo del algoritmo que ejecutará la tarjeta
programada en el software libre OpenMV IDE, en el inicio de este se realiza la
importación de librerías tanto para el funcionamiento como la comunicación con la
cámara y el módulo para motores, además de la declaración de las variables necesarias
para: el arranque del robot, funcionamiento de la red neuronal y el control de la
locomoción del robot. En condiciones iniciales la cámara y motores están apagados a
la espera de la inicialización del módulo de arranque donde una vez seteada la variable
asignada para el control del arranque, empieza la inicialización de la cámara y con ello
la captura de imagen.
Diagrama de flujo del algoritmo implementado en la tarjeta de desarrollo OpenMV., Elaborado por:
Clelio Endara y Emerson Maigua.
36
Las imágenes pasan por un procesamiento donde se adecúa para ser enviada como una
matriz imagen a la red neuronal en donde se tiene presente la capa oculta en el que
empieza a realizar una comparación entre los datos de entrada y los datos entrenados
para que después la red neuronal envía una de las cinco salidas previamente asignadas
en la arquitectura de la red neuronal que se detallan a continuación: adelante, giro sobre
su propio eje a la derecha, giro sobre su propio eje a la izquierda, giro con radio a la
izquierda y giro con radio a la derecha; con esta variable de salida ejercer el
accionamiento y control para los motores dependiendo del caso brindado por la salida
de la red neuronal en un número infinito de iteraciones hasta que el robot reciba la
señal de paro o cero lógico por parte del módulo de arranque para detener los
micromotores del robot móvil seguidor de línea destreza.
c) Adquisición de imagen
Para la adquisición de datos se utiliza el procesamiento explicado en el tema anterior
con el cual se realizan capturas directamente en el software OpenMV IDE con su
herramienta de guardar imagen; cada ejemplo se almacenará en una carpeta para al
momento de su subida a la red neuronal se puedan etiquetar los ejemplos necesarios
para el caso correspondiente, como se puede ver en la Figura 3.27 se organiza los
ejemplos con la finalidad de ingresar las imágenes tomadas con su respectiva etiqueta.
Imágenes adquiridas con su respectiva etiqueta, Elaborado por: Clelio Endara y Emerson Maigua.
37
d) Procesamiento de imagen
Se deben tomar en cuenta cuatro aspectos importantes que se requieren de manera
obligatoria tanto la entrada como los ejemplos de entrenamiento de la red neuronal,
los cuales se especifican a continuación:
(A) Código del dimensionamiento de la imagen, (B) Código de función salida tipo formato de píxeles
en escala de grises, (C) Código de conversión binaria de la imagen, (D) Código para dibujar líneas
virtuales en la imagen, Elaborado por: Clelio Endara y Emerson Maigua.
38
3.6 Funcionamiento de la red neuronal
Para la programación en el OpenMV IDE se hace uso de sus funciones propias como
son crear un bucle “for” para que tenga infinitas iteraciones como se aprecia en la
Figura 3.29 (A) donde se indica que tf.classify es una función que relaciona la red
neuronal con la imagen de entrada captada por la cámara haciendo que cada imagen
captada entre en la red neuronal, donde se hace uso de los archivos generados en el
entrenamiento de la red, en el que una variable llamada predictions_list tendrá el dato
de la salida de la red neuronal como se ve en la Figura 3.29 (B), a continuación de esto
se tendrá un “for” anidado el cual tiene la función de crear iteraciones infinitas para
la asignación continua de la nueva variable de salida enviada por la red neuronal
apreciado en la Figura 3.29 (C).
(A) Función de relación entre imagen de entrada y red neuronal, (B) Almacenaje de la variable de
salida de la red neuronal, (C) Iteraciones para actualizar el valor de la salida almacenada, Elaborado
por: Clelio Endara y Emerson Maigua.
Con una función motor.set_speed se controla el sentido de los motores y para el PWM
se tiene un valor mínimo para moverse al cual se multiplica por una variable global
velocidad de forma experimental hallar la velocidad más alta con la que pueda
39
movilizarse correctamente el robot móvil, esto se puede apreciar en las líneas de
código de la Figura 3.30 (B) donde se aprecia el control de ambos motores.
(A) Sentencia if para la verificación de etiquetas, (B) Sentencia de activación motor 1 y motor 2,
Elaborado por: Clelio Endara y Emerson Maigua.
Prototipo implementado en pista de competencia con un escenario controlado, Elaborado por: Clelio
Endara y Emerson Maigua.
40
3.9 Resumen de costos
Una vez realizado todo el dimensionamiento tanto en hardware y software, se detalla
en la Tabla 3.3 todos los costos requeridos para la fabricación e implementación del
robot móvil seguidor de línea destreza.
Tabla de costos detallada para la fabricación e implementación del robot móvil seguidor de línea
destreza, Elaborado por: Clelio Endara y Emerson Maigua.
41
PRUEBAS – RESULTADOS
Para realizar la validación del sistema, tanto en su parte de hardware como software se
realizaron pruebas en un escenario controlado, con el objetivo de encontrar
experimentalmente fallas o mejoras durante el desarrollo de estas, analizando su
comportamiento en la pista mediante; mediciones de tiempo, acompañados del
porcentaje de avance de pista realizado, para calcular la efectividad del sistema
implementado.
Teniendo en cuenta que el robot tendrá una velocidad general que está presente en
todas las pruebas como de igual forma el ángulo de posición de la cámara que de
manera experimental se obtuvo tanto la altura de 8 cm de alto, como la inclinación de
la cámara aproximadamente 60°.
Pista de prueba en un escenario controlado para el robot móvil seguidor de línea destreza, Elaborado
por: Clelio Endara y Emerson Maigua.
42
A través de la experimentación, los resultados obtenidos se visualizan en las siguientes
tablas de las pruebas en sentido horario de la pista en función del número de neuronas
en la capa oculta.
Tabla 4.1 Resultados en la pista, red neuronal con 5 neuronas en la capa oculta
De los resultados obtenidos en Tabla 4.1, se pude determinar que el robot no tiene
perdida de trayectoria alguna con la red neuronal de 5 neuronas en la capa oculta, el
cual brinda un porcentaje de pista recorrida del 100%, y un promedio de tiempo de
64,897 s.
Tabla 4.2 Resultados en la pista, red neuronal con 10 neuronas en la capa oculta
43
De la Tabla 4.2 se muestra un porcentaje de pista recorrida del 100% de la red neuronal
con 10 neuronas y un promedio de tiempo de 59,042 s.
Tabla 4.3 Resultados en la pista, red neuronal con 12 neuronas en la capa oculta
En la Tabla 4.3 muestra que la red neuronal con 12 neuronas tiene un porcentaje de
pista recorrida del 100% y un promedio de tiempo de 54,851 s.
Tabla 4.4 Resultados en la pista, red neuronal con 15 neuronas en la capa oculta
De los resultados obtenidos en Tabla 4.4, se tiene un porcentaje de pista recorrida del
100% de la red neuronal con 15 neuronas y un promedio de tiempo de 55,748 s.
44
Tabla 4.5 Resultados en la pista, red neuronal con 20 neuronas en la capa oculta
La Tabla 4.5 muestra que la red neuronal con 20 neuronas tiene un porcentaje de pista
recorrida del 88% y un promedio de tiempo de 56,854 s.
Además, con todas las pruebas se comprobó la trayectoria de tendencia del robot,
donde la tendencia de la Figura 4.2 (A) tiene mayor probabilidad de cumplirse, seguido
de la tendencia mostrada en la Figura 4.2 (B).
45
Figura 4.2 Pista con líneas de tendencia
Detalle de pista de prueba con líneas de tendencia, Elaborado por: Clelio Endara y Emerson Maigua.
46
CONCLUSIONES
Se logró implementar un algoritmo de trayectoria para un robot seguidor de línea
destreza de competencia mediante la selección de la tarjeta controladora OpenMV con
uso de visión artificial acompañado de redes neuronales, que a través del software
OpenMV IDE se pudo programar una red neuronal con la cual el robot móvil presenta
una buena eficiencia en la aplicación de la misma, software que no necesita pago de
licencias, por lo que es una gran ventaja frente a otros y permite que el robot diseñado
con una arquitectura diferencial pueda seguir una trayectoria en línea blanca con
superficie negra o línea negra con superficie blanca; el sistema se validó con métodos
experimentales a partir de pruebas de campo en un escenario controlado con un diseño
de una pista de alta complejidad, obteniendo como resultados el 100% de efectividad,
pudiendo validar que la red neuronal con visión artificial controlan la trayectoria del
robot móvil seguidor de línea destreza satisfactoriamente.
Se identificó a través del estado del arte que los sistemas de navegación para robots
móviles mediante algoritmos inteligentes aplicados a la visión artificial, obtuvieron los
mejores resultados con la arquitectura MobileNet, además de un buen procesamiento
con un formato de píxeles en negativo con los cuales permite al robot controlar su
trayectoria con mayor rapidez y fluidez reduciendo tiempo de procesamiento y espacio
de memoria, dado que esta arquitectura reduce el espacio de memoria RAM de búfer
de cuadros requerida debido a que la tarjeta de desarrollo OpenMV tiene
aproximadamente 31 MB de RAM de búfer de cuadros. Dicho esto, ejecutar un modelo
en cualquier lugar cercano a ese tamaño será extremadamente lento.
47
red neuronal por su número de neuronas presente en la capa oculta, error que se
rectificó mediante el uso de la arquitectura MobileNet en su segunda versión; de
manera que al subsanar estos problemas se logra una estabilidad y confiabilidad alta,
donde las pruebas mostraron un rango de porcentaje del 100% de efectividad.
48
RECOMENDACIONES
Con el fin de garantizar un entrenamiento eficaz, en la toma de ejemplos para la red
neuronal, se debe contemplar la modalidad del reglamento dado es el caso ante
bifurcaciones el reglamento obliga una decisión de trayectoria al robot, con esto tener
un algoritmo que evite problemas de conflicto en su salida, también el tamaño de
imagen el software Edge Impulse trabaja con imágenes cuadradas por tanto se debe
recortar las imágenes para el ingreso de los datos, caso contrario la red neuronal
mostrará errores al momento de compilar el programa.
La red neuronal debe ser entrenada en un proceso off line con un número mínimo de
200 ejemplos, dicho valor se obtuvo de manera experimental para garantizar un buen
funcionamiento, caso contrario el robot móvil seguidor de línea destreza tiende a tomar
decisiones erróneas afectando su trayectoria. Una opción para solventar los problemas
a nivel de software que se presentó en este trabajo de titulación, se recomienda el uso
de una tarjeta de desarrollo con mejores características, como por ejemplo la tarjeta de
desarrollo Jetson Xavier NX la cual está diseñada específicamente para aplicaciones
de inteligencia artificial hacia la creación de proyectos innovadores.
49
REFERENCIAS
Aguilar Campos, J. P., & Sandoval Suquillo, H. I. (2018). Desarrollo de un robot móvil
diferencial controlado mediante un algoritmo de búsqueda con redes
neuronales. Quito: Universidad Politécnica Salesiana - Carrera de Ingeniería
Electrónica.
Agyeman, K., & Abdelkader, I. (02 de Noviembre de 2016). OpenMV. Obtenido de
OpenMV: https://openmv.io/collections/shields/products/proto-shield
Agyeman, K., & Abdelkader, I. (20 de Agosto de 2018). OpenMV. Obtenido de
OpenMV: https://cdn.shopify.com/s/files/1/0803/9211/files/OpenMV-
H7.pdf?10726770933929369108
Agyeman, K., & Abdelkader, I. (20 de Agosto de 2018). OpenMV. Obtenido de
OpenMV:
https://cdn.shopify.com/s/files/1/0803/9211/files/OpenMV_Motor_Shield.pdf
?10726770933929369108
Aldaz Andrade, L. A., & Orellana Torres, R. D. (2017). Desarrollo de un prototipo de
robot móvil de competencia multi-categoría. Quito: Universidad Politécnica
Salesiana - Carrera de Ingeniería Electrónica.
Arrow Development Tools. (21 de Mayo de 2015). arrow.com. Obtenido de
arrow.com:
https://static6.arrow.com/aropdfconversion/efb389d1f9c390cf04346a67dbcda
75f31d01f43/deca_user_manual.pdf
Barahona Guamani, E. S. (2019). Navegación autónoma basada en maniobras bajo
estimación de posturas humanas para un robot omnidireccional Kuka YouBot.
Ambato: Universidad Técnica de Ambato, Ingeniería en Sistemas, Electrónica
e Industrial.
Baturone, A. O. (2001). Robótica: Manipuladores y Robots Móviles. Barcelona:
Marcombo BOIXAREU.
Benavent Pla, A. (2017). Vehículo autónomo con visión artificial utilizando OpenCV.
Valencia: Universitat Politècnica de València. Departamento de Ingeniería
Electrónica - Departament d'Enginyeria Electrònica.
Buendia Ríos, A. A. (2017). Navegación Autónoma de un vehículo Pequeño en
Interiores Empleando Visión Artificial y Diferentes Sensores. Texcoco:
Universidad Autónoma del Estado de México.
50
Caballero Barriga, E. R. (2017). Aplicación Práctica de la Visión Artificial para el
Reconocimiento de Rostros en una Imagen, Utilizando Redes Neuronales y
Algoritmos de Reconocimiento de Objetos de la Biblioteca OPENCV. Bogotá:
Universidad Distrital Francisco José de Caldas - Facultad de Ingeniería.
Castañeda Bermúdez, J. S., & Salguero Lozano, Y. A. (2017). Ajuste de Algoritmo de
Identificación Visual para su Uso en Aplicaciones de Navegación Autónoma
de Robots. Bogotá: Universidad Distrital Francisco José de Caldas - Facultad
de tecnología Politécnica.
CEDIA. (28 de Noviembre de 2019). CER 2019. Recuperado el 14 de Enero de 2021,
de Reglamento Seguidor De Linea Destreza:
https://cedia.edu.ec/dmdocuments/CER/2019/Reglamentos/ReglamentoSegui
dorDeLineaDestreza.pdf
Cortéz, F. R. (2011). Robótica Control de Robots Manipuladores . México:
Alfaomega.
Díaz Saravia, M. W., & Trejo Peraza, J. M. (2019). Diseño de Prototipo de Vehículo
Autónomo Utilizando Redes Neuronales. La Libertad: Escuela Especializada
en Ingeniería ITCA-FEPADE.
EdgeImpulse. (6 de Diciembre de 2020). Edge Impulse. Obtenido de EdgeImpulse
Inc.: https://www.edgeimpulse.com/
Fingertech Robotics. (Abril de 2013). fingertechrobotics.com. Obtenido de
fingertechrobotics.com:
https://www.fingertechrobotics.com/prodimages/drivemotors/ss_torque_kg-
cm_table.jpg
García Cedeño, M. G. (2013). Desarrollo de un Kit Educativo de Robótica Basado en
Arduino (Robot de Destreza). Guayaquil: Universidad de Guayaquil. Facultad
de Ciencias Matemáticas y Físicas. Carrera de Ingeniería en Networking y
Telecomunicaciones. Obtenido de
http://repositorio.ug.edu.ec/handle/redug/11472
González Linch, A. J. (2013). Aplicaciones prácticas de microcontroladores a tráves
de la plataforma de programación Matlab. Guayaquil: Carrera de Ingeniería
en Telecomunicaciones, Universidad Católica de Santiago de Guayaquil.
Guerrero Aguirre, Á., & Ramos Giraldo, P. J. (2014). Sistema embebido de bajo costo
para visión artificial. Pereira: Scientia et Technica Año XIX.
51
Hayes, P. (1974). Some Problems and Non-Problems in Representation Theory AISB.
Córdoba: Sussex.
Hernández, A., Rayo, H., & Torres, J. (2011). Prototipo de Montacargas Automático.
Bogotá: Universidad de San Buenaventura. Obtenido de
http://45.5.172.45/bitstream/10819/1294/1/Prototipo_monta_cargas_automati
co_Rayo_2011.pdf
HobbyKing. (Febrero de 2020). hobbyking.com. Obtenido de hobbyking.com:
https://hobbyking.com/es_es/turnigy-800mah-2s-20c-lipo-pack-parkzone-
compatible-pkz1032.html?___store=es_es
Hossian, A., Cejas, L., Carbajal, R., Echeverría, C., Alveal, M., & Olivera, V. (2018).
Obtención de rutas de navegación óptimas de robot móvil mediante la
aplicación de Redes Neuronales Artificiales (RNA) y Algoritmos de Búsqueda
Local (ABL) en entornos estructurados. Tucumán: Grupo de Investigación de
Robótica - Universidad Tecnológica Nacional – Facultad Regional del
Neuquén.
Malásek, J. (11 de Diciembre de 2013). Pololu Robotics & Electronics. Obtenido de
Pololu Robotics & Electronics: https://www.pololu.com/blog/247/powerful-
new-u3v50x-boost-regulators
Matich, D. J. (2001). Redes Neuronales: Conceptos básicos y aplicaciones. Rosario:
Universidad Tecnológica Nacional.
Maxon Group. (Septiembre de 2020). maxongroup.es. Obtenido de maxongroup.es:
https://www.maxongroup.es/medias/sys_master/root/8846330724382/20-ES-
109.pdf
Nordic Semiconductor. (Agosto de 2017). nordicsemi.com. Obtenido de
nordicsemi.com: https://www.nordicsemi.com/-/media/Software-and-other-
downloads/Product-Briefs/nRF52-DK-product-
brief.pdf?la=en&hash=01C23BC9A39B642EF150702065B7673E430EBE05
OpenMV. (Agosto de 2018). openmv.io. Obtenido de openmv.io:
https://cdn.shopify.com/s/files/1/0803/9211/files/OpenMV-
H7.pdf?10726770933929369108
Peña Merino, J. M. (2017). Sistema de detección y conteo de vehículos utilizando
visión artificial. Piura: Universidad Nacional de Piura.
52
Pololu. (Diciembre de 2019). Pololu Robotics & Electronics. Obtenido de Pololu
Robotics & Electronics: https://www.pololu.com/file/0J1487/pololu-micro-
metal-gearmotors-rev-4-2.pdf
Pololu Robotics & Electronics. (Abril de 2018). pololu.com. Obtenido de pololu.com:
https://www.pololu.com/product/1090
Ramírez Díaz, J. A. (2019). Aprendizaje del Comportamiento Humano en el Espacio
Articular del Robot Utilizando Redes Neuronales. Ciudad de México: Centro
de Investigacion y Estudios Avanzados del Instituto Politecnico Nacional,
Unidad Zacatenco, Departamento de Control Automático.
Raspberry Pi. (Abril de 2015). raspberrypi.org. Obtenido de raspberrypi.org:
https://static.raspberrypi.org/files/product-
briefs/200206+Raspberry+Pi+3+Model+B+plus+Product+Brief+PRINT&DI
GITAL.pdf
Robot Games ZL7. (1 de Junio de 2019). robotgameszerolatitud. Obtenido de
robotgameszerolatitud: https://robotgameszerolatitud.jimdofree.com/
Rouhiainen, L. (2018). Inteligencia artificial. Madrid: Alienta.
Sadler, M., Howard, A., Zhu, M., Zhmogimov, A., & Chen, L.-C. (2019).
MobileNetV2: Inverted Residuals and Linear Bottlenecks. Estados Unidos:
Google.Inc.
Salazar Logroño, F. W., & Pico Aponte, G. M. (2019). Sistema avanzado de asistencia
al conductor empleando visión artificial en vehículos de transporte público.
Ambato: Universidad Técnica de Ambato. Facultad de Ingeniería en Sistemas,
Electrónica e Industrial. Carrera de Ingeniería Electrónica y Comunicaciones.
Salesiana, V. d. (18 de Octubre de 2020). Ecosistema Universidad Politécnica
Salesiana. Obtenido de https://www.investigacion.ups.edu.ec/startlabs/
San Juan, E., Jamett, M., Kaschel, H., & Sánchez, L. (2015). Sistema de
reconocimiento de voz mediante wavelets, predicción lineal y redes
backpropagation. Ingeniare, 11.
Sparrold, S., & Stairiker, M. (07 de Febrero de 2017). Edmund Optics. Obtenido de
Edmund Optics: https://www.edmundoptics.com/document/download/489641
STMicroelectronics . (17 de Abril de 2019). STlife.augmented. Obtenido de
STlife.augmented:
https://www.st.com/resource/en/datasheet/stm32h743vi.pdf
53
Suárez Romero, A., & del Pozo Quintero, A. (2016). Estrategia de navegación para
robots móviles mediante redes neuronales. 1.
Tapiero Santa, Y. D. (2019). Diseño e implementación de un robot seguidor de línea
de competencia para la categoría velocista. Ibagué.
Texas Instruments. (Octubre de 2011). ti.com. Obtenido de ti.com:
https://www.ti.com/lit/ds/symlink/am3359.pdf?ts=1607099653568&ref_url=
https%253A%252F%252Fwww.ti.com%252Fproduct%252FAM3359
Torres, J. (2018). Deep Learnig, Introducción práctica con Keras (PRIMERA
PARTE). Barcelona: Kindle Direct Publishing.
Trabes, E. (2018). Desarrollo de algoritmos para la exploración submarina mediante
vehículos autónomos con visión artificial monocular. Bahía Blanca:
Universidad Nacional del Sur.
Vera Arenas, J. A., & Alejandro Proaño, E. A. (2016). Diseño e implementación de
dos dos robots seguidores de línea modalidad velocista y destreza para
participaciones en concursos de robótica. Guayaquil: Universidad Católica de
Santiago de Guayaquil. Obtenido de
http://repositorio.ucsg.edu.ec/handle/3317/5445
Vizcaya Cárdenas, R. (2018). Deep Learning para la Detección de Peatones y
Vehículos. Ciudad de México: Universidad Autónoma del Estado de México.
54
ANEXOS
Anexo 1 Esquema electrónico de OpenMV Cam H7, Motor Shield & LCD Shield.
Esquema electrónico de OpenMV Cam H7, Fuente: (Agyeman & Abdelkader, OpenMV, 2018).
Esquema electrónico del Motor Shield, Fuente (Agyeman & Abdelkader, OpenMV, 2018).
Esquema electrónico de la LCD Shield, Fuente: (Agyeman & Abdelkader, OpenMV, 2018).
55
Anexo 2 Planos de detalle del subconjunto de piezas que conforma el robot móvil
seguidor de línea destreza.
56
57
58
59
60
61
62
Anexo 3 Ensamblaje del robot móvil seguidor de línea destreza.
63
Anexo 4 Ejemplos relevantes para las entradas de la red neuronal.
64
Ejemplos relevantes caso “Giro a la izquierda”.
65
Ejemplos relevantes caso “Giro con radio a la derecha”.
66