Fase 5 - Robot Laberinto

Hernando Garcia LLanos

 Yeison Stiven Henao Ramirez

 Carlos José Mora

 

INTRODUCCIÓN A LA INGENIERÍA ELECTRÓNICA - 3744

 

FASE 5 - ROBOT LABERINTO

INTRODUCCIÓN

En esta fase cinco se presentará: cómo está la base del robot, características de la plataforma, diagrama de bloques que describe en funcionamiento interno del robot, algoritmos implementados para el robot, detalles del funcionamiento del algoritmo final del robot de laberinto; finalmente se presentarán conclusiones sobre la realización de esta fase. Se espera que lo mostrado en esta fase evidencie el funcionamiento de este robot

  

Contenido:

1.   Características de la plataforma

2.   Diagrama de bloques

3.   Algoritmos usados

4.   Conclusiones



1.   Plataforma

El robot completamente ensamblado incorpora: plataforma de madera, rueda giratoria, ruedas fijas con motores, unidad de alimentación, microprocesador Arduino, Driver puente H L298, motorreductor, LEDs, tres sensores ultrasónicos HC-SR04, y las diferentes conexiones en el microcontrolador; la estructura del robot se encuentra resistente y sólida.

IMÁGENES DEL MONTAJE (Resistente, firme, completo)





El robot presenta las mismas características implementadas en la fase cuatro, las cuales son:

     Controlador: L298/ Doble Puente H

     Interfaz de potencia: 7V~46V

     Corriente máxima: 2A por canal

     Voltaje de control: 5V

     Corriente de control: 36mA

     Potencia de salida: 25W

     Luces indicadoras: Encendido, control, dirección

     Voltaje de alimentación:  3 a 9 volts

     Corriente de consumo desde: (100 a 150) mA

     Velocidad sin carga @ 5 volts: 190 RPM

     Relación de transmisión: 50:1

     Torque de salida @ 5 Volts: 0.1715 Nm Aprox

     Diámetro del eje de salida: 5.3 mm aplanado a 3.6 mm

     Temperatura de operación: 10 °C a 50°C

     Peso: 50 gramos

     Color: Amarillo

     Excelente tracción sobre una gran variedad de superficies

     Motorreductor con eje dual

     Dirección del eje: Bidireccional


2. Diagrama de bloques



El anterior diagrama de bloques describe la estructura interna del robot; el sistema se inicia desde una fuente de voltaje de alimentación de 3 a 9 voltios, luego se transmite la energía necesaria para que el Arduino funcione y envíe señales digitales para el funcionamiento de los LEDs, sensores ultrasónicos y al puente H. Finalmente, la señales captadas por el puente H son retransmitidas hacia el motorreductor  para que así se regule el funcionamiento de los motores que permiten el movimiento del robot dentro de un laberinto.


1.   Algoritmos usados

Programaciones locales en el robot:

Algoritmo 1 (DEFINITIVO)





Para solucionar la lógica del robot con respecto al laberinto, se ha incorporado una idea general y es evaluar cada posible situación dentro del laberinto, las cuales están planteadas de la siguiente manera:

Supongamos que, si un sensor detecta pared, esto será igual a (0)

En caso de que el sensor no detecte pared, esto será igual a (1)

Teniendo en cuenta esto y que tenemos 3 sensores, podemos sacar cada caso siendo estos izquierdo-frente-derecho.


De esta manera Priorizamos los giros en este orden respectivamente: izquierda, frente, derecha; incluso si en frente no hay obstáculo, y asimismo se solucionan los posibles bucles en los que pueda entrar el robot y lograr que por lo menos recorra todos los rincones del laberinto, lo cual garantizará su salida del mismo.


En este caso, donde únicamente hay salida hacia la IZQUIERDA, y los demás sensores detectan obstáculo, el robot girará a la IZQUIERDA.





En este caso, hay obstáculos a los lados, por lo que, al tener el FRENTE libre, no girará y seguirá su recorrido hacia ADELANTE.




En este caso hay dos posibles caminos a elegir, pero la programación prioriza el FRENTE antes que la derecha, por lo que el robot no girará y seguirá su recorrido hacia ADELANTE.línea horizontal

En este caso hay dos posibles caminos a elegir, pero la programación prioriza la IZQUIERDA antes que el frente, por lo que el robot girará hacia la izquierda.




Intentos Fallidos: Algoritmo segundo






Programación #1 del algoritmo segundo



En la primera prueba de programación, se pensaron en los aspectos básicos como los giros, las distancias, y los la creación de sus respectivos void: adelante, atrás, derecha, izquierda, parar.


y en cuanto a la programación a base de las situaciones que se puedan presentar en el laberinto, únicamente estaba programado para que girara cuando el sensor frontal captara un obstáculo, también se debe mencionar que estaba programado para que priorizara la derecha y en caso de que no tuviera camino, optaría por la izquierda:


Sin embargo, presentaba un problema de lógica, y es que en el laberinto se pueden presentar diferentes situaciones y algunas de ellas podrían dejar al robot en bucles dentro de un mismo sector de pista, y es que no los laberintos no necesariamente deben tener salidas laterales al final de algún sector, y en caso de que se presentara la situación en la que no hay salida ni a los laterales ni al frente, debería dar un giro de 180°, pero este caso podría presentarse también en la punta opuesta y crear un círculo del cual no podrá salir:




Por tal motivo, esta programación tuvo que ser modificada, en donde se solucionara este problema de lógica y conseguir que el robot no se estancara.


Tercer algoritmo




El hecho por el cual este algoritmo no se usó fue porque no era compatible con el driver usado, este algoritmo fue hecho especialmente para un puente H L293D, mientras que el que se está usando para nuestro robot de laberintos es el puente H L298. Este algoritmo fue consultado por Internet y todos los créditos de su creación va hacia JuniorTronic 2015, cuyo trabajo se puede encontrar en  http://juniortronics.blogspot.mx/.

Conclusión

En esta fase se presentó la estructura final del robot con sus respectivas características donde se evidencia una plataforma sólida y resistente; además de eso, se presentó el diagrama de bloques que describe la estructura interna del robot con todos sus componentes electrónicos ya implementados. Finalmente se presentó un análisis de tres algoritmos utilizados para el funcionamiento del robot donde sólo uno se utilizó para el funcionamiento definitivo. Se espera que para la próxima fase ya se pueda evidenciar el robot en su total función.

 

Aquí se observa el funcionamiento del robot con su algoritmo final: https://drive.google.com/file/d/1RUrYBVwvMa8Mun6Oc4GUaaXvnhHCmEK2/view?usp=sharing


Comentarios

Entradas más populares de este blog

Seguidor de Línea

SENKU: El robot que resuelve laberintos (Fase 4)

SENKU: El robot que resuelve laberintos (Fase 2)