You are on page 1of 17

UNIVERSIDAD NACIONAL SAN AGUSTIN

FACULTAD DE INGENIERIA DE PRODUCCION Y SERVICIOS

Escuela Profesional de Ingeniera Electrnica

Diseo electrnico 1

Proyecto final:
Seguidor Maze

Docente: Ing. Gonzales

Alumnos:
- Lipa Hilario, Cristian Albert cui: 20143096
- Martnez Cahua, Axel Diego cui: 20143078

AREQUIPA-2017
Resumen
Consiste en la creacin de un robot autnomo capaz de recorrer un laberinto de lnea
negra sobre un fondo blanco, o viceversa, en el menor tiempo posible. En las
competencias cada robot busca la forma de encontrar la ruta ms rpida desde el
principio hasta el final del recorrido usando algoritmos de mapeo y/o simplificacin.
Para realizar este proyecto es necesario una mediana base de electrnica y
electrotecnia, puesto que se hace uso de componentes de una cierta complejidad para
su comprensin, tales como los sensores tcrt5000 y el mismo arduino.
Introduccin
En cuanto naci la idea de empezar este proyecto uno analiza cmo llevarlo a cabo, de
manera eficiente, rpida y menos costosa en la inversin. Definitivamente tenamos
que buscar asesora de alguna persona que tenga bastante experiencia en el tema, y al
encontrar a esta persona l nos dio su punto de vista, incluyendo sobre los
componentes a usar y el esquema.
Antes del desarrollo de nuestro robot tuvimos que analizar un esquema ideal, un poco
ambiguo, pero cuyo funcionamiento estaba bien definido mediante un premisa bsica
para la construccin de robots: la etapa de control; que vendra a ser la etapa en la que
desarrollamos la estructura a partir del cerebro (puede ser un PIC o un Arduino) y la
etapa de potencia que comprende la parte del puente H y los motores.
Ya durante el desarrollo del proyecto la experiencia fue muy provechosa y gratificante,
desde el estudio y anlisis de los datasheets de los componentes hasta la
programacin misma del cerebro de nuestro robot, en este caso un Arduino nano. El
aprendizaje requiri de conocimientos previos de cursos como Circuitos elctricos,
Dispositivos electrnicos, electrnica digital, electrnica anloga, Diseo electrnico e
Informtica y lenguaje de programacin.
Finalmente para ver el funcionamiento de nuestro robot se decidi que participara en
el Xpotron 2017 que se llev a cabo en la UNSA, sin embargo sufri unos desperfectos
determinantes para que no pudiera competir, estos sern explicados ms adelante en
el desarrollo de este informe.
Para terminar, cabe resaltar que en este informe usted obtendr informacin de cmo
se desarroll el robot seguidor Maze, como se comprob su funcionamiento,
datasheets de los componentes usados y unas breves conclusiones y observaciones
sobre esta experiencia que enriquece de todas formas el conocimiento sobre la
aplicacin de la Ingeniera Electrnica.
Componentes a usar:
- 6 sensores de luz tcrt5000
- 6 resistencias SMD de 200 Ohms
- 6 resistencias SMD de 600 Ohms
- 1 arduino nano
- 2 micromotores
- 1 circuito integrado L298
- 1 batera de Ion Litio (5 v)
- Cautil para soldar de 30 W
- Alambre de estao
- Pasta para soldar
- Placa de baquelita o fibra de vidrio de 10 cm x 10 cm
- Acido para placa
- Lija de agua o viruta

Costos de los componentes a usar:

Componente Cantidad Precio (nuevo sol) Costo total


(nuevo sol)
Sensor tcrt5000 6 1.00 6.00
Placa de fibra de vidrio de 10cm x 10cm 1 5.00 5.00
Arduino Nano 1 28.00 28.00
Tira de espadines hembra 1 1.00 1.00
Resistencia SMD (220 Ohm) 6 0.10 0.60
Resistencia SMD (680 Ohm) 6 0.20 1.20
Driver L298 1 6.00 6.00
Socalo para integrado de 16 pines 1 0.50 0.50
Micromotores 2 35.00 70.00
Molex macho 3 0.50 1.50
Molex hembra 2 0.50 1.00
Llantas de jebe 2 2.50 5.00
Soporte de aluminio 2 0.50 1.00
1m de alambre de estao 2 0.50 1.00
LEDs 2 0.50 1.00
TOTAL 128.80
Procedimiento
1. Dibujar el diagrama esquemtico en Eagle del seguidor Maze:
2. Diagrama ruteado en Eagle del seguidor Maze:
3. Quemado de placa. Se utiliza una plancha a una alta temperatura que se aplica
al papel con el circuito impreso sobre la placa de baquelita.
4. Se deja remojando en agua la placa despus de plancharla, esto asegura un
mejor calcado de las pistas sobre la placa.
5. Sin embargo no todas las pistas se llegan a calcar sobre la placa, para ello
entonces se puede repasar con tinta indeleble a las pistas imperfectas, o
inclusive dibujar pistas enteras.

6. Ahora si, despus de que todas las pistas se dibujaron sobre la placa esta lista
para dejarla reposar con cido en un recipiente. El cido se encargara de
retirar el cobre de la placa, pero no el cobre de las pistas, ya que estas estn
protegidas por la tinta de la impresin.
7. Despus de retirar la placa del cido nos quedara solamente las pistas y los
paths, el siguiente paso perforar con un mini taladro sobre los paths, o sea
sobre los circulitos vacos para que entren los respectivos componentes.
8. El siguiente paso consiste en soldar los componentes, en esta fotografa por
ejemplo se est soldando los sensores de utilizando un alambre de cobre y un
cautil.
9. Ahora procederemos a probar con un protoboard y un arduino los sensores,
estos deben botar un valor alto cuando detectan color negro, y valores bajos
cuando detectan color blanco. Lo anterior mencionado conlleva a hacer la
programacin para determinar qu acciones realizara los motores.
Funcionamiento:
Como se mencion en la introduccin el robot consta de dos etapas, una de control y
otra de potencia, ambas son muy importantes, ya que una depende de otra al
momento de poner en funcionamiento el seguidor. As que mencionaremos cada
etapa de manera concisa acerca de su funcionamiento.
En la parte de control, que esta incluye el software, es decir el programa Arduino y su
cdigo, y los componentes que sern los encargados de recibir los datos para luego
introducirlos en el cdigo. Hablando de los componentes entre ellos estn
principalmente los sensores, que sern los ojos del robot, estos constan de un led
que va pegado a un fototransistor, cuando el led emita luz esta ser captada por el
fototransistor y permitir el paso de la corriente emitiendo una seal analgica al
controlador; en este caso el Arduino; pero esta seal debe ser traducida a una seal
digital para que el controlador la procese y envi la orden a los motores. Entonces
existen dos casos en los que el sensor recibe una seal analgica del medio externo,
una cuando est en un ambiente con mucha iluminacin, como el color blanco, y otro
en el que este rodeado por un medio oscuro. Para el primer caso cuando el led emita
luz esta recaer directamente sobre el transistor, y esta emitir una seal analgica
determinada. Y si est en el segundo caso, en un ambiente oscuro, la luz del led ser
absorbida por este color negro, haciendo que el transistor se cierre y enve otra seal
analgica.
En la parte del controlador, el Arduino se encargara de definir el umbral de las seales
analgicas, es decir, poner un parmetro que determina cuando la seal ser
considerada de nivel alto o bajo. Despus de ello, se empezara a desarrollar el cdigo
general para que el seguidor Maze realice determinadas acciones. Este cdigo ser
mostrado ms adelante en este informe.
Ahora nos enfocaremos en la etapa de potencia. Aqu entra el desempeo de nuestros
motores, principalmente de estos. Sus acciones dependern de las rdenes que
reciben del Arduino. Cabe mencionar que estos necesitan un driver; su propio
controlador L298; para que puedan funcionar, tanto para controlar el sentido de giro,
como la velocidad del mismo. Mientras los motores sean buenos, con buena potencia,
entonces las tareas deseadas se realizaran de manera eficiente.
Los motores recibirn seales digitales desde el Arduino. Si el Arduino enva nivel alto
entonces el motor determinara que debe girar en sentido anti horario, y si recibe nivel
bajo, el motor girara en sentido horario. Tambin se puede introducir la magnitud de
la velocidad de los motores.
Para ponerlo a prueba en una pista se debe determinar en el programa que sensores
sern las guas, generalmente son los sensores centrales, y cuando estas estn en nivel
alto o bajo envan seales analgicas, que luego se convierten en digitales para luego
enviar rdenes a los motores.
Cdigo en Arduino:
#include "movbasic.ino"

int analogPin =3; // potentiometer wiper (middle terminal) connected to analog pin
3

// outside leads to ground and +5V


int val = 0; // variable to store the value read

void setup()
{
Serial.begin(9600);

// setup serial
//del motor 1, motor de la derecha
pinMode(9,OUTPUT);
pinMode(12,OUTPUT);
pinMode(11,OUTPUT);
//del motor 2 , motor de la izquierda
pinMode(10,OUTPUT);
pinMode(7,OUTPUT);
pinMode(8,OUTPUT);

//MOTOR1 , derecha
analogWrite(9,100);
digitalWrite(12,LOW);
digitalWrite(11,LOW);

//MOTOR2, izquierda
analogWrite(10,100);
digitalWrite(7,LOW);
digitalWrite(8,LOW);
}

void loop()
{

val = analogRead(3); // read the input pin


Serial.println(val); // debug value

if( val>400){
digitalWrite(12,HIGH);
digitalWrite(11,LOW);
digitalWrite(7,LOW);
digitalWrite(8,HIGH);
}

if(val<400){
digitalWrite(12,LOW);
digitalWrite(11,LOW);

digitalWrite(7,LOW);
digitalWrite(8,LOW);

}
}

void avanzar(){
digitalWrite(12,HIGH);
digitalWrite(11,LOW);
digitalWrite(7,HIGH);
digitalWrite(8,LOW);

}
void retroceder(){
digitalWrite(12,LOW);
digitalWrite(11,HIGH);
digitalWrite(7,LOW);
digitalWrite(8,HIGH);

void derecha(){
digitalWrite(12,LOW);
digitalWrite(11,LOW);
digitalWrite(7,HIGH);
digitalWrite(8,LOW);
}

void izquierda(){
digitalWrite(12,LOW);
digitalWrite(11,HIGH);
digitalWrite(7,LOW);
digitalWrite(8,LOW);
}

void parar(){
digitalWrite(12,LOW);
digitalWrite(11,LOW);
digitalWrite(7,LOW);
digitalWrite(8,LOW);
}

void IZQeje(){
digitalWrite(12,LOW);
digitalWrite(11,HIGH);
digitalWrite(7,HIGH);
digitalWrite(8,LOW);
}

void DEReje(){
digitalWrite(12,HIGH);
digitalWrite(11,LOW);
digitalWrite(7,LOW);
digitalWrite(8,HIGH);
}
Observaciones:

Se debe tener mucho cuidado al momento de polarizar cuando conectemos


la batera al seguidor. Una mala polarizacin puede hacer que se quemen
ciertos componentes, mayormente suelen ser ms vulnerables los sensores
de luz.
Al momento de quemar la placa hay que observar que no exista algn
puente entre pequeas pistas, ya que al momento de poner en
funcionamiento al seguidor puede daar algunos componentes.
La placa de fibra de vidrio es mucho ms resistente que una placa de
baquelita, por eso es recomendable usar estas sobre todo para proyectos
de robtica.
Conclusiones:

Se debe tener en cuenta siempre los datasheets de los componentes ya que


estos nos aportan informacin sobre el funcionamiento de cada componente y
esto nos permite saltear errores que pueden costarnos dinero y tiempo.
Se podra decir que la clave para resolver un circuito de laberinto para la
competencia de seguidores Maze es que el robot siempre elija el camino de la
izquierda, est comprobado que funciona para todos los casos de laberintos
abiertos. Sin embargo este mtodo no es eficiente cuando se plantea un
laberinto con bucle.
Nos damos cuenta que tanto la parte del software como la del hardware son
importantes, quizs en ciertos contextos esto vare por ejemplo a veces se
necesitara que los motores giren ms rpido, otras veces se necesitarn que la
programacin se capaz de descifrar el camino ms rpido de un laberinto, pero
aun as, ambas partes dependen de entre s.