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 1 $10 $10
ruedas
Arduino UNO Compatible 1 $16 $16
con Cable USB
Rueda loca 1 $1.50 $1.50
Cable micro USB 1 $1.50 $1.50
Baterías de respaldo Power 2 $8 $16
Bank 5V 2600mAh
Puente H (L293D): 2 $1.65 $3.30
Protoboard 170 Puntos 2 $1 $2
Separadores de Nylon M3x8 4 $0.25 $1
Separadores de Latón M3x8 7 $0.30 $2.10
mm
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 [Link] 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.
INFORME DE LA PRACTICA CALIF.
INDICADOR ESCALA PUNTAJE
PUNTUALIDAD 2
GRAFICOS 2
OBSERVACIONES 2
INFORME DE CONCLUSIONES Y RECOMENDACIONES 2.5
LA PRACTICA PRESENTACION Y CUIDADO 1.5
TOTAL 10 P