INFORME ROBOT SEGUIDOR DE LIENA

COLEGIO DE BACHILLERATO “EL ORO” INTEGRANTES: DAYANA NICOLE CEDILLO LALANGUI. NAYELY MARIA JIMENEZ CORDERO. ARELYS MAYT

Views 43 Downloads 0 File size 1MB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

COLEGIO DE BACHILLERATO “EL ORO”

INTEGRANTES: DAYANA NICOLE CEDILLO LALANGUI. NAYELY MARIA JIMENEZ CORDERO. ARELYS MAYTE MONTESDEOCA CASTAÑEDA. NEY DAVID OYOLA CABRERA. MONICA ELIZABETH QUEZADA ESPINOZA.

CURSO: TERCERO

PARALELO: “B”

PROFESORA: ING. ANNABEL MACAS MACAS.

FECHA: 13/11/2019.

TEMA: PROYECTO GRUPAL:

2019 – 2020

OBJETIVOS: Los objetivos de este proyecto se pueden dividir en hitos:  Primero: Ser capaces de adquirir unas señales desde un sensor CCD para poderlas procesar.  Segundo: Captar estas imágenes y tratarlas adecuadamente, para poder extraer el máximo de información posible.  Tercero: Tratar la información que nos proporcionan estas imágenes y extraer todo lo que nos interesa para poder ser capaces de detectar líneas, colores, objetos, etc.  Cuarto: Implementar una plataforma robótica para montar nuestro robot y toda la electrónica necesaria.  Quinto: Añadir el software de captación de imágenes a la plataforma robótica, y desarrollar un sistema de control que haga mover el robot.  Sexto: Realizar distintos escenarios de prueba para verificar el correcto funcionamiento del robot. Los robots seguidores de línea son robots muy sencillos, que cumplen una única misión: seguir una línea marcada en el suelo normalmente de color negro sobre un tablero blanco (normalmente una línea negra sobre un fondo blanco). Son considerados los "Hola mundo" de la robótica.

INTRODUCCION: La robótica es una de las ramas más importantes de la tecnología, se encarga del diseño, construcción, operación y aplicación de los robots, que nos permite realizar trabajos de manera mucho más sencilla y eficaz. A lo largo del tiempo estos mismos han ido evolucionando, dentro de los sistemas mecátronicos más interesantes se encuentra el carro seguidor de línea , un robot que tiene como función desplazarse sobre una línea negra de 1 a 2 centímetros aproximadamente con un fondo blanco, esto gracias a sus sensores infrarrojos CNY70. Existen diversos tipos de robots seguidores de línea tales como los de seguidores de luz, de línea blanca, todos dependen de sus factores materiales, costo y dificultad ya que algunos recorren grandes laberintos y otros solamente una línea, pero todos tienen una función en si. El objetivo y lo que se espera obtener del proyecto carro seguidor de línea es que las personas aprendan a realizarlo, conocer cada una de sus funciones, el beneficio de tener uno de ellos y el gran avance que ha creado.

COMPONENTES: Estos robots pueden variar desde los más básicos (van tras una línea única) hasta los robots que recorren laberintos. Todos ellos, sin embargo, poseen (por lo general) ciertas partes básicas comunes entre todos: Sensores: Un rastreador detecta la línea a seguir por medio de sensores. Hay muchos tipos de sensores que se pueden usar para este fin; sin embargo, por razones de costos y practicidad, los más comunes son los sensores infrarrojos (IR), que normalmente constan de un LED infrarrojo y un fototransistor, la línea a seguir, puede ser de color negro con fondo blanco o línea blanca con fondo negro y dependerá de la configuración electrónica con la cual se arme el circuito de dichos sensores. Motores: El robot se mueve utilizando motores. Dependiendo del tamaño, el peso, la precisión del motor, entre otros factores, éstos pueden ser de varias clases: motores de corriente continua, motores paso a paso o servomotores. Ruedas: Las ruedas del robot son movidas por los motores. Normalmente se usan ruedas de materiales anti-deslizantes para evitar fallas de tracción. Su tamaño es otro factor a tener en cuenta a la hora de armar el robot. Fuente de energía: El robot obtiene la energía que necesita para su funcionamiento de baterías o de una fuente de corriente alterna, siendo esta última menos utilizada debido a que le resta independencia al robot. Tarjeta de control: La toma de decisiones y el control de los motores están generalmente a cargo de un microcontrolador. La tarjeta de control contiene dicho elemento, junto a otros componentes electrónicos básicos que requiere el microcontrolador para funcionar.

DESCRIPCION:

El kit para armar robot seguidor de línea para Arduino + Código es uno de los proyectos más populares entre estudiantes y aficionados a la robótica. Su misión es seguir una línea negra marcada en un fondo blanco. Con la ayuda del tutorial y el código para programarlo podrás ponerlo en marcha en unos minutos.

FUNCIONAMIENTO:

Todos los rastreadores basan su principio en los sensores. Sin embargo, dependiendo de la complejidad del recorrido, el robot debe ser más o menos complejo (y, por ende, utilizar más o menos sensores). Los rastreadores más simples utilizan 2 sensores, ubicados en la parte inferior de la estructura, uno junto al otro. Cuando uno de los dos sensores detecta el color blanco, significa que el robot está saliendo de la línea negra por ese lado. En ese momento, el robot gira hacia el lado contrario hasta que vuelve a estar sobre la línea. Esto en el caso de los seguidores de línea negra, ya que también hay seguidores de línea blanca.

MATERIALES:



1 Kit chasis de carro con tres ruedas



1 Arduino UNO Compatible con Cable USB



1 Cable micro USB



2 Baterías de respaldo Power Bank 5V 2600mAh



1 Puente H (L293D):



O puede ocupar 1 Puente H (L298N)



2 Protoboard 170 Puntos



4 Separadores de Nylon M3x8



7 Separadores de Latón M3x8 mm



3 Tuercas M3



5 Módulos sensor IR (Para mejor funcionamiento solo se usan 4)



8 Cables dupont macho a macho de 10cm



9 Cables dupont macho a macho 20cm



1 Cautín

//pines del L293D int izqA = 5; int izqB = 6; int derA = 9; int derB = 10; //variacion de velocidad desde 0 hasta 255 int vel = 200; //pines de los cuatro sensores infrarrojo int SEN1 = 2; int SEN2 = 3; int SEN3 = 4; int SEN4 = 11; //valores que toman las variables de los sensores volatile int D; volatile int I; volatile int D2; volatile int I2; //valor donde se guarda los valores del los sensores int i =0; void setup() { //declaramos como salidas los pines del L293 pinMode(derA, OUTPUT); pinMode(derB, OUTPUT); pinMode(izqA, OUTPUT); pinMode(izqB, OUTPUT); //declaramos como entradas los pines de los sensores infrarrojo pinMode (SEN1, INPUT); pinMode (SEN2, INPUT); pinMode (SEN3, INPUT); pinMode (SEN4, INPUT);

//interrupcion para cambiar de sentido de giro de Iquierda a derecha attachInterrupt(digitalPinToInterrupt(2), derecha, CHANGE); attachInterrupt(digitalPinToInterrupt(3), izquierda, CHANGE); } ///////Mover hacia delante/////// void adelante() { analogWrite(derA, vel); analogWrite(izqA, vel); analogWrite(derB, 0); analogWrite(izqB, 0); } ///Mover hacia la derecha/////// void derecha() { analogWrite(derB, vel); analogWrite(izqB, 0); analogWrite(izqA, vel); analogWrite(derA, 0); } ///Mover hacia la izquierda/////// void izquierda() { analogWrite(derB, 0); analogWrite(izqB, vel); analogWrite(derA, vel); analogWrite(izqA, 0); } ///Mover hacia la atras/////// void atras() { analogWrite(derB, vel); analogWrite(izqB, vel); analogWrite(derA, 0);

analogWrite(izqA, 0); } ///Función para indicar el sentido/////// void orientacion() { //renombramos las valores de los resultados para hacerlos mas accesibles D= digitalRead(SEN1); //lectura sensor derecho I= digitalRead(SEN2); //lectura sensor izquierdo D2= digitalRead(SEN3); //lectura sensor derecho2 I2= digitalRead(SEN4); //lectura sensor izquierdo2 if(!D2&&!I2)

///si blanco derecho2 - blanco izquierdo2 { adelante(); delay(20); }

if(!D&&!I)

///si blanco derecho - blanco izquierdo { adelante(); delay(20); }

if(!D2&&I2)

///si blanco derecho2 - negro izquierdo2 { derecha(); delay(40); }

if(!D&&I)

///si blanco derecho - negro izquierdo { derecha(); delay(40); }

if(D2&&!I2)

///si negro derecho2 - blanco izquierdo2 { izquierda(); delay(40); }

if(D&&!I)

///si negro derecho - blanco izquierdo { izquierda(); delay(40); }

if(D2&&I2)

///si negro derecho2 - negro izquierdo2 { adelante(); delay(20); }

if(D&&I)

///si negro derecho - negro izquierdo { adelante(); delay(20); }

} void loop() { //el bucle while trabaja con la funcion orientacion la cual es la orientacion de los motores esta esta en la parte superior while(1) { orientacion(); } }

Kit chasis de carro con dos ruedas Arduino UNO Compatible con Cable USB Rueda loca

1

$10

$10

1

$16

$16

1

$1.50

$1.50

Cable micro USB

1

$1.50

$1.50

Baterías de respaldo Power Bank 5V 2600mAh Puente H (L293D):

2

$8

$16

2

$1.65

$3.30

Protoboard 170 Puntos

2

$1

$2

Separadores de Nylon M3x8

4

$0.25

$1

Separadores de Latón M3x8 mm

7

$0.30

$2.10

 Retira la protección de las piezas de acrílico.

 Solda los cables a los polos de los motores. Es importante soldar de la misma manera que se muestra en la imagen, de lo contrario los motores podrían girar hacia el sentido opuesto.



Coloca los soportes de acrílico al chasis.



Coloca motores y tornillos en los soportes.



Coloca las ruedas y los encoders en los motores.



Coloca los separadores de 25mm a la rueda loca.Coloca los separadores de 25mm a la rueda loca.



Monta el Arduino UNO al chasis.



Coloca el protoboard



Conecta el puente H tal como se muestra en el diagrama



Atornilla los sensores a la pieza de acrílico.



Atornilla la segunda pieza de acrílico como se muestra en la imagen.

CONCLUSION: Para concluir se puede decir que el carro seguidor de línea es uno de los robots más importantes ya que ha creado un gran impacto en la robótica e incluso ayudan a ejecutar cierto tipo de instrucciones de una manera más rápida, este proyecto me aportó bastante ya que aprendí la función de cada uno de los materiales, a armar circuitos, pensar de una manera mucho más abierta, incluso aprendí equivocarme porque el circuito no siempre prende ni funciona a la primera, pero es todo un proceso para que este mismo pueda funcionar. Dentro de las mejoras que se podrían realizar están las siguientes:  Añadir un control mejor y más estable, de manera que se pueda acelerar la velocidad.  Intentar utilizar unos motores mejores, ya que los que se utilizaron eran muy lento, y su respuesta no era muy buena.  Mejorar la comunicación entre tarjetas, utilizando, por ejemplo, el cable USB que se utiliza para alimentar el Arduino, o quizás un SPI, que puede ser más rápido que un bus I2C.  Implementar funciones de detección de patrones, para poder indicar al robot los sitios a los que se puede mover, que hacer en cada sitio, etc.  Añadir funcionalidades de machine learning, para que el robot sea capaz de detectar objetos, y sepa reaccionar. Por ejemplo, se pueden añadir Stops, semáforos, etc, y que el robot sepa que hacer dependiendo de la señal, o del color del semáforo. Así que como se puede ver, hay muchas cosas para poder integrar en el robot. La detección de la línea no deja de ser la punta del iceberg de todo lo que puede hacer un robot con un módulo de visión artificial y los sensores adecuados. Realmente este proyecto no deja de ser una base de partida para poder llegar a realizar un robot autónomo, que funcione de manera similar a otros vehículos autónomos.

INDICADOR

INFORME DE LA PRACTICA ESCALA PUNTUALIDAD GRAFICOS OBSERVACIONES

CALIF. PUNTAJE

2 2 2

INFORME DE LA PRACTICA

CONCLUSIONES Y RECOMENDACIONES PRESENTACION Y CUIDADO TOTAL

2.5 1.5 10 P