Murphy Fase V

 

Introducción a la Ingeniería Electrónica - 710100M

Facultad de Ingeniería

Universidad del Valle

 

Integrantes

 

Sergio Becerra Sánchez - 2125142

Alejandro Muñoz Gutiérrez - 2123843

 

Robot seguidor de línea (Murphy) Fase V


Debido a problemas con la alimentación, se realizaron cambios en el sistema de alimentación y en el driver que se

describirán a continuación:

Sistema de Alimentación

Para alimentar a nuestro robot seguidor de línea, se utilizarán 6 pilas AA alcalinas LR6 de aproximadamente 2000 mah, estas pilas de 1.5V se conectaran en serie para aumentar el voltaje de alimentación a 9 voltios y obtener el voltaje necesario para el funcionamiento de cada uno de los componentes del robot. Para la elección de este tipo de alimentación se ha tenido en cuenta lo siguiente:

  • Consumos de corriente de los componentes:


A continuación se presentara una tabla con los consumos aproximados de cada uno de los componentes que

hacen parte del robot:

Componente

Cantidad

Consumo de corriente (mA)

Consumo total de corriente (mA)

Arduino Nano

1

19

19

Driver L298N

1

36

36

Sensores QTR8A

1

100

100

Motorreductores

2

277

554

Total (aproximado)

709

Tabla 2. Consumos de Corriente


Para el caso de el Arduino Nano, Driver y los sensores QTR8A los valores de consumo de corriente se tomaron de las tablas de especificaciones según sus respectivos fabricantes, para los motorreductores, los valores se tomaron por medio de una simulación en Tinkercad.

Teniendo en cuenta el consumo total del robot, podemos calcular la autonomía de este de la siguiente manera:


Capacidad de las pilas (I) = 2000 mAh

Consumo total de corriente = 709 mAh




El robot tiene aproximadamente 2 horas y 57 minutos de autonomía.


  • Voltaje de alimentación necesarios para cada componente:


El arduino nano va a ser alimentado con una tensión de 9 voltios aproximadamente, los cuales serán reducirán a 5 voltios debido al regulador de voltaje con el que cuenta este arduino, con estos 5 voltios regulados, alimentaremos el módulo QTR8A y el driver, de igual manera, el driver irá conectado directamente a los 9 voltios para suministrar la corriente necesaria para los motores. Los motores son alimentados a través de una señal PWM controlada por el Arduino.


Componente

Voltaje de Entrada recomendada (V)

Arduino Nano

6V - 12V

Driver L298N

5-36V

Sensores QTR8A

5V

Motorreductores

3V- 12V

 Tabla 3. Voltajes de Operación


Driver

El driver L298N es un dispositivo que puede controlar el sentido de funcionamiento de motores a una corriente de salida por canal de hasta 2A. Este driver cuenta con un disipador de calor acorde a las características excepcional, puede trabajar hasta con un nivel de tensión de entrada de 46V, por seguridad se recomienda usar niveles de tensión algo por debajo de este valor límite. Puede llegar a manejar un motor paso a paso de dos fases y cuatro fases, o dos motores de corriente continua. Este driver incluye un regulador de voltaje 78M05 de 5V que se debe utilizar para regular un voltaje de entrada de hasta 12V, para voltajes de entrada superior a 12V se recomienda deshabilitar el jumper regulador y alimentar la parte lógica del módulo con una fuente externa de 5V. Este driver tiene gran capacidad de filtrado de ruido, cuenta con un diodo de protección ante corriente inversa, haciendo que su funcionamiento sea más estable y segura.

Características:

Controlador L298N/ Doble Puente H.

Voltaje de alimentación: 5V~46V.

Corriente máxima: 2A por canal.

Voltaje de control de motores (salida con regulador activado):  5V.

Nivel de entrada de señal de control:

  • Nivel alto 2.3V <= Vin <= Vss

  • Nivel bajo: -0.3V <= Vin <= 1.5 V

Consumo de corriente (lógico): 0 a 36 mA.

Potencia de salida: 25W.

Luces indicadoras Encendido, control, dirección.

Temperatura de operación -25°C~+135°C.

Diagrama de conexión

Diagramas de flujo y de bloques







Funcionamiento del robot

Para iniciar hablando del funcionamiento, vamos a hablar de cómo se convierte la señal de los sensores de analogía a digital.
int Min[] = {0,0,0,0,0,0,0,0,0};
          //Capta los valores puros mínimos de los
sensores           

int Max[] = {0,0,0,0,0,0,0,0,0};
        //Capta los valores puros máximos de los
sensores   

int Dif[] = {0,0,0,0,0,0,0,0,0};
    //Arregló para calibrar los
sensores       

int Corte[] =
{0,0,0,0,0,0,0,0,0};//Este arreglo almacena el valor de corte para la
conversión

int SenDig[SensorCount];  
      //Este arreglo almacena el valor de 1 o 0 de los
sensores 
El número de elementos está
dado por la cantidad de sensores usados para el proyecto, dicho esto, al
momento de iniciar

al robot, hay una fase de
calibración, en esta fase se tomarán los valores máximos y  mínimos de
cada uno de los sensores

y esos máximos y mínimos son
almacenados en sus arreglos respectivamente.
Corte[i] = map( Dif[i] * 0.88 , 0, Dif[i] , 0 , 1000 );      

Una vez calculado los valores máximos y mínimos de cada sensor, se hace una conversión de los valores puros a valores
entre 0 y 1000, esto con el objetivo de trabajar a los sensores en igualdad de condiciones, luego establecerá un valor de
corte que nos permita transformar los valores obtenidos de análogo a digital. 
Para obtener los valores en 0 y 1, se utiliza el arreglo SenDig[], el cual almacena los valores digitales para cada uno
de los sensores, cuando los valores convertidos superan el valor de corte creado anteriormente, el valor lógico es 1 y si no
supera el valor de corte es 0. De esta forma se convierten los valores analógicos a valores digitales. 
También se calcula si todos los sensores están midiendo blanco o negro.
Dependiendo de la lectura de los sensores, se han establecido las siguientes configuraciones:

Primero, se crean 5 arreglos que van a contener los valores necesarios para realizar la conversión, dichos arreglos son:


Sensores

Configuración

S1

S2

S3

S4

S5

S6

S7

S8

1

0

0

0

0

0

0

0

Corrección fuerte hacia la derecha

1

1

0

0

0

0

0

0

Corrección alta hacia la derecha

0

1

1

0

0

0

0

0

Corrección media hacia la derecha

0

0

1

1

0

0

0

0

Corrección baja hacia la derecha

0

0

0

1

1

0

0

0

Movimiento en línea recta

0

0

0

0

1

1

0

0

Corrección baja hacia la izquierda

0

0

0

0

0

1

1

0

Corrección media hacia la izquierda

0

0

0

0

0

0

1

1

Corrección alta hacia la izquierda

0

0

0

0

0

0

0

1

Corrección fuerte hacia la izquierda

0

0

0

0

0

0

0

0

Reversa

1

1

1

1

1

1

1

1

Con estas configuraciones, se ha establecido el comportamiento del robot.



Imágenes del montaje del Robot




Conclusión

Para finalizar este proyecto, podemos observar cómo a lo largo de las fases de desarrollo del robot ha ido evolucionando y transformándose en lo que es hasta el día de hoy, desde la planeación de la estructura hasta la programación y finalización del robot para que este pudiera cumplir con los objetivos planteados a inicio del curso.




Lista de materiales

Descripción

Cantidad

Valor unitario

Valor total

Motorreductor

2

$10000

$20000

Rueda Loca

1

$4000

$4000

Estructura

1

$30000

$30000

Driver L298N

1

$10000

$10000

Sensor QTR8A

1

$25000

$25000

Pilas AAx2 alcalinas

3

$3000

$9000

Portapilas AAx2

1

$900

$900

Arduino Nano

1

$15000

$15000

Led rojo

8

$200

$1600

Pulsador

2

$200

$400

Jumper M-M

20

$100

$2000

Jumper M-H

20

$100

$2000

Fusible

1

$100

$100

Portafusible

1

$1000

$1000

Protoboard pequeño

2

$5000

$10000

Interruptor

1

$2000

$2000

Total

$133000

















Comentarios

Entradas populares de este blog

Robot laberinto Kastelean

Fase 4 Robot seguidor de linea

FASE 2 ROBOT SEGUIDOR DE LINEA