1. 11111111111111111
Instituto Tecnológico de Tuxtla Gutiérrez
Ciencia y Tecnologia con sentido Humano
Ingeniería en Sistemas Computacionales
ROBOT DE PERSECUSIÓN
Camacho Núñez, Juan Carlos; Culebro Esquinca, Carlos Alberto; Guzmán Sánchez, Néstor;
López Gómez, Juan Carlos.
Lenguajes de Interfaz.
Instituto Tecnológico de Tuxtla Gutiérrez, Carretera Panamericana Km. 1080, C.P. 29050,
Apartado Postal: 599, Tuxtla Gutiérrez, Chiapas.
juanns12@gmail.com.com
Resumen—Los robots de persecución o seguidores de linea tienen diversas aplicaciones
en la industria, por lo tanto es importante que los estudiantes y las personas comprendan
su funcionamiento más básico. El modelo más rudimentario de un seguidor de línea
consta de un Arduino, un par de motorreductores, un puente H y una buena programación.
El último punto es la parte más importante y la clave que permite a estos robots llegar a
tener diversidades de aplicaciones.
Palabras clave: Arduino,Motorreductores,programación.
Abstract— Robots persecution or line followers have various applications in industry,
therefore it is important that students and people understand its basic operation. The
most rudimentary of a line follower model consists of an Arduino , a pair of wheels and
engines with good programming . The last point is the most important and the key that
allows these robots get to have diversity of applications.
Keywords:Arduino,gearmotors,programming.
Introducción
En este documento se presentará el proceso
que se llevó a cabo para realizar el robot de
persecución que participaría en el concurso
de robótica del Instituto Tecnológico de
Tuxtla Gutiérrez.
Se presentaran los componentes utilizados
y una breve explicación sobre el
funcionamiento de el mismo, las
aplicaciones que se le puede dar en la vida
real a un robot seguidor de línea y así como
el código que se le fue implementado al
robot para que este fuera capaz de cumplir
con las reglas del concurso.
Materiales y Métodos
ARDUINO UNO
Como se puede ver en la figura 1, se ha
utilizado un Arduino en el cual se
programaron las instrucciones de moverse a
la izquierda o derecha, retroceder o avanzar
dependiendo de los valores que detectaran
los sensores ópticos conectados a los pines
analógicos de la placa.
Figura 1.Arduino uno usado en la práctica
2. 11111111111111112
Instituto Tecnológico de Tuxtla Gutiérrez
Ciencia y Tecnologia con sentido Humano
Ingeniería en Sistemas Computacionales
Puente H y Motorreductores
Se hicieron uso de cuatro motorreductores
para la elaboración del robot, un par de ellos
fueron conectados en paralelo a una entrada
del puente H y el otro par fue conectado de
la misma manera en otra entrada del puente
H.
Figura 2. Motorreductores empleados
Figura 3. Puente H
Figura 4. Conexión de los motorreductores al puente
H
En este caso el puente H iba conectado a
dos pines digitales del arduino que permite
tener el manejo de las velocidades y el
sentido en el cual girarán las llantas.
Sensores Ópticos
Se hicieron uso de cinco sensores ópticos,
que fueron conectado cada uno a los pines
analógicos del arduino debido a que se
debía saber los valores que generaban los
colores negro y blanco de la pista del
concurso.
Figura 5. Sensores ópticos utilizados en la práctica
Resultados y Discusión
A continuación se muestra el diagrama
resultado de las conexiones. Y el seguidor
de líneas terminado.
Figura 6. Diagrama de conexiones del seguidor de
líneas en la cual se puede apreciar las conexiones
paralelas de los motores asi como el de las baterías
a)
3. 11111111111111113
Instituto Tecnológico de Tuxtla Gutiérrez
Ciencia y Tecnologia con sentido Humano
Ingeniería en Sistemas Computacionales
b)
c)
Figura 7. Estructura del circuito sobre la base del
seguidor de líneas. A) vista desde la parte superior. B)
vista lateral. C) vista desde enfrente.
A continuación se muestra el código
utilizado para el robot seguidor de líneas
int s[6]; //Arreglo para guardar los valores
de los sensores s[0],s[1] - Sensor Derecho
// s[2] Sensor Central // s[3],s[4] - Sensor
Izquierdo // s[5] - Variable de control de no.
de vueltas
int izq=0;
int der=0;
void setup() {
for (int i=2;i<=7;i++){ //Inicializamos los
pines 2 al 5 como salida para los motores
pinMode(i,OUTPUT);
}
Serial.begin(9600);
}
void accion(int ma1,int ma2,int mb1,int
mb2, int va, int vb){ //Acción a realizar con
los motores
//2 y 3 Motor Derecho - 4 y 5 Motor
Izquierdo
digitalWrite(2,ma1); //2-HIGH 3-LOW --->
Avanzar
digitalWrite(3,ma2); //2-LOW 3-HIGH -->
Retroceder
analogWrite(6,va);
digitalWrite(4,mb1); //3-LOW 4-HIGH --->
Avanzar
digitalWrite(5,mb2); //3-HIGH 4-LOW -->
Retroceder
analogWrite(7,vb);
}
void loop(){
for(int i=0;i<=4;i++){//Lectura de
sensores
s[i] = analogRead(i+1);
}
if(s[5]<=10){ //Control de numero de
vueltas, al haber 2 líneas de salida el valor
de control debe ser el doble
if(s[2]>=100){ //Linea negra en
sensor central
accion(HIGH,LOW,LOW,HIGH,1023,1023);
//Avanzar
}
else if(s[3]>=100||s[4]>=100){
//Linea negra en sensores izquierdos
if(s[4]>=100){
accion(HIGH,LOW,HIGH,LOW,1023,500);
izq=1;
der=0;
}
else{
accion(HIGH,LOW,LOW,LOW,1023,0);
//Girar a la derecha
}
}
else if(s[0]>=100||s[1]>=100){
//Linea negra en sensores derechos
if(s[0]>=100){
accion(LOW,HIGH,LOW,HIGH,500,1023);
der=1;
izq=0;
}
else{
accion(LOW,LOW,LOW,HIGH,0,1023);
//Girar a la izquierda
}
}
else{ //No hay linea negra
4. 11111111111111114
Instituto Tecnológico de Tuxtla Gutiérrez
Ciencia y Tecnologia con sentido Humano
Ingeniería en Sistemas Computacionales
//No hay line blanca ni negra,
girar hasta encontrar la línea
if(izq==1){
accion(HIGH,LOW,LOW,LOW,1023,0);
//Girar a la derecha
}
else if (der==1){
accion(LOW,LOW,LOW,HIGH,0,1023);
}
else{
accion(HIGH,LOW,LOW,HIGH,1023,1023);
}
}
}
}
Conclusiones
El funcionamiento de un seguidor de líneas
puede ser utilizado para realizar tareas en
donde se requiera de una mayor precisión
que la mano de obra humana, aparte de que
es automatizada es usada en varias partes
de la industria, como industrias
automotrices, en la agricultura incluso en las
empresas para trasportar paquetes de un
lugar a otro sin la intervención humana. Las
funcionalidades son varias dependiendo del
campo en donde se aplique.
Un seguidor de líneas es un robot básico al
cual se le pueden agregar más
funcionalidades y el cual puede ser más
complejo en cuanto a cómo detectar los
colores o líneas a seguir.
Dentro del tiempo de desarrollo del proyecto
logramos centrarnos en objetivos puntuales
como es la elaboración de la Etapa de
Potencia como punto fundamental y
consecuente de la producción del proyecto
ya que esta hace parte del diseño y la
aplicación que se encuentra entre la
estructura funcional del sistema.
Referencias/Bibliografía
Reportes Técnicos:
1. Contreras Arredondo Luis Gerardo, “Diseño y
construcción de robot seguidor de línea”.
Consultada por internet el dia 5 de abril del 2016.
http://www.uteq.edu.mx/tesis/AU/0354.pdf
2. Sebástian Agudelo, “Seguidor de
línea(profesional)”.Consultado el dia 20 de mayo
del 2016.
http://aprender.tdrobotica.co/seguidor-de-
lineaprofesional/
3. Wikipedia la enciclopedia libre, puente h
(electronica).
https://es.wikipedia.org/wiki/Puente_H_%28electr
%C3%B3nica%29
4. Eduardo J. Carletti, “control de motores de cc
puente h”. http://robots-
argentina.com.ar/MotorCC_PuenteH.htm
Autores:
Juan Carlos Camacho Núñez,
Carlos Alberto Culebro Esquinca
Néstor Guzmán Sánchez
Juan Carlos López Gómez
Estudiantes del Instituto Tecnológico de
Tuxtla Gutiérrez, Cursando el 6° semestre
de la carrera Ingeniería en Sistemas
Computacionales.
“Es una gran experiencia participar en el
concurso de robótica, ya que no habíamos
participado antes, por lo cual fue
emocionante y a la vez un pocos de
nerviosismo, aunque no logramos el
resultado esperado fue una experiencias
que nos motiva a quizá a participar el
próximo año”
Observaciones generales:
Los sensores ópticos son sensibles a la luz,
por lo cual es recomendado para este tipo
robots seguidores de líneas, es que deben
de tener un entorno luminoso controlado
para tener resultados óptimos ya que de lo
contrario pueden obtenerse resultados no
muy favorables.
En un robot seguidor de líneas se debe de
tener en cuenta que entre más veloz sea,
puede tener problemas en cuanto a
procesar la información dependiendo de la
programación que se haga sobre este.