Vous êtes sur la page 1sur 25

Instituto Tecnolgico de

Chihuahua

REPORTE FINAL
ROBOT SEGUIDOR DE LINEA

SISTEMAS INTELIGENTES

Leonardo Saldivar Pion

CHIHUAHUA, CHIH.

06061085

13 DE DICIEMBRE DE 2010

INDICE
I. Introduccin

II. Diseo de Plataforma de Hardware

1. Mecnica
2. Electrnica

5
7

III. Diseo del Control Bsico

IV. Diseo y Programacin del Control Difuso

11

V. Resultado de Pruebas y Anlisis

23

VI. Observaciones y Conclusiones

24

VII. Referencias

25

I.

INTRODUCCION

La robtica es una de las aplicaciones ms apasionantes de la electrnica. Un robot


seguidor de lnea se clasifica en el campo de la robtica mvil un grupo de la rama de
robtica. La tarea fundamental de un robot mvil es el desplazamiento en un entorno
conocido o desconocido, por tanto es necesario que posea tres funciones fundamentales, la
locomocin (nivel fsico), la percepcin (nivel sensorial) y la decisin (nivel de control).
Entre las aplicaciones de robots mviles se encuentra el transporte de carga en la industria,
robots desactivadores de explosivos, exploracin de terrenos no aptos para el hombre.
Un seguidor de lnea es un robot el cual es capaz de seguir una lnea sobre un fondo
contratante, puede ser una lnea blanca en un fondo negro o vice-versa. Todos los
seguidores basan su funcionamiento en los sensores. Sin embargo, dependiendo de la
complejidad del recorrido, el robot debe ser ms o menos complejo (y, por ende, utilizar
ms o menos sensores).
Los seguidores ms simples utilizan 2 sensores, ubicados en la parte inferior de la
estructura, uno junto al otro. Cuando uno de los 2 sensores detecta el color blanco, significa
que el robot est saliendo de la lnea negra por ese lado. En ese momento, el robot gira
hacia el lado contrario hasta que vuelve a estar sobre la lnea. Esto en el caso de los
seguidores de lnea negra, ya que tambin hay seguidores de lnea blanca.
Las 2 maneras ms comunes de armar los rastreadores son: OPAMPS (Amplificadores
Operacionales), o con simples transistores trabajados en su zona de saturacin. Esto
dependiendo de la complejidad con la que se quiera armar el circuito. Podemos utilizar un
micro controlador para realizar las funciones de control o guardar en l la forma del
recorrido por una pista.
Estos robots pueden variar desde los ms bsicos (van tras una lnea nica) hasta los robots
que recorren laberintos. Todos ellos, sin embargo, poseen (por lo general) ciertas partes
bsicas comunes entre todos:
Sensores: Un seguidor detecta la lnea 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 ms comunes son los sensores infrarrojos (IR), que normalmente constan de
un LED infrarrojo y un fototransistor.
Motores: El robot se mueve utilizando motores. Dependiendo del tamao, el peso, la
precisin 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 traccin. Su tamao es otro factor a tener
en cuenta a la hora de armar el robot.
Fuente de energa: El robot obtiene la energa que necesita para su funcionamiento de
bateras 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 estn generalmente a
cargo de un micro controlador. La tarjeta de control contiene dicho elemento, junto a otros
componentes electrnicos bsicos que requiere el micro controlador para funcionar.

II.

DISEO DE PLATAFORMA DE HARDWARE

El diseo de la plataforma de hardware se puede dividir en dos partes, mecnica y


electrnica, las cuales se explican ms adelante por separado.
1. Mecnica
Para la hacer la estructura donde se van a montar los sensores, tablillas y motores se utilizo
una pieza de acrlico transparente de 3mm de espesor como se muestra a continuacin

11 cm

MOTOR
DERECHO

MOTOR
IZQUIERDO

TARJETA DE
DESARROLLO
ARDUINO
DUEMILANOVE

ORIFICIOS
PARA
ESTRUCTURA
DE PILAS

TABLILLA DE
COMPARADOR
Y DE POTENCIA

16 cm

TABLILLA DE
SENSORES

LLANTA LOCA

Sobre esta estructura est montada otra en la cual se colocaron las 6 pilas que utiliza el
robot seguidor y se utilizaron tornillos de 4cm de largo para unir las dos estructuras.
11 cm

Los motores utilizados son motores de DC con sus correspondientes reductores metlicos y
unas llantas de un dimetro de 6.5 cm.
El resultado final de la estructura se muestra en las siguientes fotografa.

ESTRUCTURA
DE PILAS

LLANTA LOCA
ESTRUCTURA
PRINCIPAL

La parte mecnica es la misma para los dos tipos de control.


2. Electrnica
La parte electrnica esta formada por 4 bloques los cuales son:
Sensores
Acondicionamiento de la seal
Etapa de potencia
Control
Motor 1
Sensores

Acondicionamiento
de la seal

Control

Etapa de
potencia

Motor 2

Estas etapas son diferentes para el control ON-OFF y para el control difuso ya que el
control ON-OFF es un control ms sencillo y requiere menos elementos que el control
difuso. A continuacin se muestran los circuitos electrnicos, el diseo y la programacin
para cada uno de estos controles.

SENSORES
El seguidor de lneas est basado en un fototransistor y un diodo emisor infrarrojo o en el
conocido opto acoplador QRD1114 como sensores de reflejo de luz.
En el sensor vienen solo el led y el fototransistor con el objeto de poder aadir
externamente sus resistencias de led y de colector respectivas de acuerdo a la alimentacin
que usaremos , si no tenemos este opto acoplador igual podemos usar un led separado del
fototransistor que consigamos , como las corrientes a manejar son pequeas los valores no
son crticos mientras no se excedan los 20 mA para el led y un mnimo de 1k ( 5k por
seguridad ) para el resistor de colector del fototransistor , sin embargo a mayor resistencia
de emisor se consigue mayor ganancia , de como es censado el piso.

ACONDICIONAMIENTO DE SEAL
En el acondicionamiento de la seal se trata de digitalizar la seal anloga de los sensores. L a forma
ms sencilla es usar comparadores para obtener una salida digital que determine un "blanco" o un "negro".
Como regla general y debido a que los voltajes estn referidos a tierra observemos que el comparador tiene
dos entradas: una positiva y otra negativa, la regla prctica fuera de frmulas es muy sencilla: Cuando el
voltaje en el terminal positivo es mayor que el voltaje en el terminal negativa la salida del comparador es
ALTA. Cuando el voltaje en el terminal positiva en MENOR que el voltaje en el terminal negativa la salida
del comparador es BAJA.
De esta manera es muy sencillo tener una seal que nos indique cuando el sensor se encuentra en la lnea
blanca o en el fondo negro.
CONTROL
La etapa de control puede ser diseada de diferentes maneras y utilizar diferentes mtodos.
El mtodo ms comn utilizado en los robots seguidores de lnea es el control ON-OFF el cual se basa en dos
sensores infrarrojos y dos amplificadores operacionales para realizar el control que es analgico.

Otro tipo de control utilizado es el control difuso el cual est basado en 2 o mas sensores para
detectar la lnea y se incluye un micro controlador al cual se le va a implementar el control, por lo
general con este tipo de control el seguidor de lnea tiene menos oscilaciones al momento de
avanzar sobre la lnea por lo que en teora debera de reducir el tiempo del recorrido de la pista.
ETAPA DE POTENCIA
La etapa de potencia se basa en el funcionamiento del transistor en corte y saturacin, de esta
manera cuando el amplificador operacional o un micro controlador le inyecta una seal alta a la
base del transistor entra en saturacin proporcionando una gran potencia a los motores.
Los transistores utilizados son el TIP 41 y pueden utilizarse con un PWM para controlar la
velocidad del motor.

III.

DISEO Y PROGRAMACION DEL CONTROL ON-OFF

Este tipo de control es muy sencillo ya que no requiere un procesamiento digital, el control
se realiza de manera anloga.
Se utilizaron 2 sensores QRD1114, cada salida de los sensores est conectada a un
comparador el cual no proporcionara los estados encendido y apagado para controlar los
motores.
El diagrama del circuito electrnico se muestra a continuacin:

La resistencia del fotodiodo del sensor fue determinada para que hubiera la mayor
diferencia de voltaje a la salida entre la lnea blanca de la pista y el fondo negro, as como
tambin se tomo en cuenta la distancia a la que se encontraban los sensores de la pista. La
9

resistencia del fototransistor es la ideal para que circule la corriente necesaria y a la salida
se obtenga el voltaje justo que es necesario en la entrada del comparador. El potencimetro
de 10k proporciona un voltaje de referencia y determina el umbral entre la lnea blanca y el
fondo negro, se coloco un potencimetro para tener la capacidad de adaptarse a otras pistas
que posiblemente estn construidas de un material diferente a la pista donde fueron
realizadas las pruebas. El AMP-OP tiene una salida de 6v cuando el sensor detecta el fondo
negro de la pista y una salida de 0v cuando detecta la lnea blanca, la salida del AMP-OP es
transmitida a la base del transistor TIP 41 el cual est trabajando en saturacin y corte para
poder transmitirle la mayor potencia posible a los motores.

Si visualizamos el circuito anterior en forma de bloques podemos ver como se estructura el


circuito anterior.

Control y
Acondicionamiento

Etapa de
potencia
Sensor

En la siguiente figura se muestra el arreglo de los dos sensores hecho para este tipo de
control.
10

2 cm

1.5 cm

La lnea blanca tiene un ancho de 1.5 cm por lo cual para reducir un poco las oscilaciones
del robot, la distancia entre los sensores es de 2 cm. Cuando los sensores se encuentran
sobre el fondo negro (como se muestra en la figura anterior) los motores giran a la mxima
velocidad, cuando uno de los sensores detecta la lnea blanca el motor de su lado se detiene
para corregir el curso del robot y de esta manera funciona el robot seguidor de lnea con un
control ON-OFF

IV.

DISEO Y PROGRAMACION DEL CONTROL DIFUZO

La lgica difusa es una metodologa de manera simple y elegante de obtener una conclusin
a partir de informacin de entrada, ambigua, imprecisa o incompleta, en general la lgica
difusa modela como una persona toma decisiones basada en informacin con las
caractersticas mencionadas, en esto se diferencia la lgica difusa de la convencional, que
trabaja con informacin bien definida y precisa.
En las tcnicas tradicionales se obliga a que las representaciones del mundo real que se
realizan encajen dentro de modelos muy precisos, tomando la imprecisin como un factor
de distorsin.
En este tipo de control se utilizo un arreglo de 4 sensores, cuatro amplificadores
operacionales, una tarjeta de desarrollo Arduino Duemilanove, dos TIP 41 y dos motores.
En la siguiente imagen se puede observar el circuito electrnico implementado para este
tipo de control.

11

12

La configuracin de los sensores y del amplificador operacional es la misma que para el


control ON-OFF, la diferencia es que ahora se tienen 4 sensores en lugar de 2. La etapa de
potencia es igual, implementada con dos TIP41 solo que ahora la seal que reciben a la
base es un PWM generado por el micro controlador. Se utilizo un micro controlador
Atmega328p en cual se programo un control difuso.
En las siguientes imgenes se muestran las tablillas del arreglo de los sensores, la etapa de
potencia y acondicionamiento de seal as como la tablilla de desarrollo Arduino.
Sensores
Sensores

Sensores

Entrada de
Seales de
los sensores

Lm324

Entrada de
PWM

TIP 41
Salidas al
Arduino

Etapa de potencia y acondicionamiento

Arduino Duemilanove

13

6v 9v GND M1 M2
Respectivamente

Se utilizo un arreglo de sensores como el que se muestra a continuacin:

Vista frontal
0.6cm
S1

S2

S3

S4

1.5 cm

Vista superior

Este arreglo de sensores proporciona 5 posiciones del robot que se muestran a


continuacin:

S1
S2
S3
S4

IZQUIERDA IZQCENTRO
0
0
0
0
0
1
1
1

CENTRO
0
1
1
0

DERCNTRO
1
1
0
0

DERECHA
1
0
0
0

Para la implementacin del control difuso se realizo con una entrada la cual es la posicin
del robot con respecto la lnea y dos salidas las cuales corresponden a los motores
utilizados.

14

La entrada consta de 5 funciones de membreca dos trapezoidales y tres triangulares como


se muestra en la siguiente figura, las cuales corresponden a las 5 diferentes posiciones que
el arreglo de sensores pueden proporcionar.

Variable de entrada Posicin

Las variables de salida contienen 3 funciones de membreca del tipo trapezoidal las cuales
corresponden a las diferentes velocidades que los motores del robot que se utilizaran para
controlar el robot.
Las funciones de membreca son las mismas para las salidas del control motor 1 y motor2.

Variable de salida Velocidad Motor 1

15

Variable de salida Velocidad Motor 2

Ya que se tienen las funciones de membreca se procedi a realizar las reglas que con las
cuales funcionara el control difuso. Se definieron 5 reglas una para cada posicin del
vehculo.
Las reglas son las siguientes:
1.- S (Posicin es centro) entonces (Velocidad Motor 1 es Alta) y (Velocidad motor 2 es
Alta)
2.- S (Posicin es Izq-centro) entonces (Velocidad Motor 1 es Alta) y (Velocidad motor 2
es Media)
3.- S (Posicin es Der-centro) entonces (Velocidad Motor 1 es Media) y (Velocidad motor
2 es Alta)
4.- S (Posicin es Izquierda) entonces (Velocidad Motor 1 es Alta) y (Velocidad motor 2 es
Baja)
5.- S (Posicin es Derecha) entonces (Velocidad Motor 1 es Baja) y (Velocidad motor 2 es
Alta)

16

Regla 1:

Regla 2:

17

Regla 3:

Regla 4:

18

Regla 5:

A continuacin se muestra las respuestas de las salidas con respecto a la entrada por medio
de graficas.

Despus de disear el control difuso se procedi a pasarlo al hardware (Atmega 328)


buscando la manera de que el procesamiento en el micro controlador no fuera demasiado
para que no afectara al desempeo del robot en cuestin de tiempo de respuesta.

19

Para implementar el control difuso se vieron varias tcnicas: Definir las funciones de
membreca, implementar las reglas o definir una tabla con todos los valores posibles de
entradas y salidas del control difuso.
La primera tcnica mencionada no se aplico porque el procesamiento es demasiado y el
robot no respondera rpidamente a los cambios en los estados de los sensores.
La tcnica que se decidi a usar fue la de implementar las reglas ya que para este caso los
sensores solo proporcionaran dos valores cada uno lo que nos indica blanco o negro, no hay
valores intermedios, el valor de las salidas fue tomado de acuerdo al diseo antes
mencionado del control difuso.
Cdigo:
const int sensor1 = 2; //declaracion de constantes para
const int sensor2 = 3; //asignar el numero de pines de salidas
const int sensor3 = 4; //y entradas
const int sensor4 = 5;
const int motor1 = 9;
const int motor2= 10;
boolean s1; //declaracion de variables para la
boolean s2; //lectura de las entradas
boolean s3;
boolean s4;
//estructura de configuracion de entradas y salidas
void setup() {
pinMode(motor1, OUTPUT);
pinMode(motor2, OUTPUT);
pinMode(sensor1, INPUT);
pinMode(sensor2, INPUT);
pinMode(sensor3, INPUT);
pinMode(sensor4, INPUT);
}
void loop() { //programa principal
//lectura de sensores
s1= digitalRead(sensor1);
s2= digitalRead(sensor2);
s3= digitalRead(sensor3);
s4= digitalRead(sensor4);
//Regla 1
if (s1 == LOW && s2 == HIGH && s3 == HIGH && s4 == LOW) {
analogWrite(motor1,255);
analogWrite(motor2,255);
20

}
else {
//Regla 2
if (s1 == HIGH && s2 == HIGH && s3 == LOW && s4 == LOW) {
analogWrite(motor1,255);
analogWrite(motor2,117);
}
else {
//Regla 4
if (s1 == HIGH && s2 == LOW && s3 == LOW && s4 == LOW) {
analogWrite(motor1,255);
analogWrite(motor2,39);
}
else {
//Regla 3
if (s1 == LOW && s2 == LOW && s3 == HIGH && s4 == HIGH) {
analogWrite(motor1,117);
analogWrite(motor2,255);
}
else {
//Regla 5
if (s1 == LOW && s2 == LOW && s3 == LOW && s4 == HIGH) {
analogWrite(motor1,39);
analogWrite(motor2,255);
}
}
}
}
}
}

21

A continuacin se muestran algunas imgenes del resultado final del robot seguidor de lnea.

22

V.

RESULTADOS DE PRUEBAS Y ANALISIS

Control ON-OFF

El control ON-OFF cumpli con el objetivo de completar la pista varias veces, el tiempo
promedio del recorrido de la pista fue de 32 segundos, teniendo una gran cantidad de
oscilaciones sobre la lnea, las oscilaciones se pudieron reducir disminuyendo la distancia
entre los sensores y la pista para que la lnea fuera detectada de una mejor manera.
El funcionamiento de los circuitos implementados fue el esperado.
Control difuso
El control difuso fue el que mejor funciono ya que el tiempo promedio se reducio de 32
segundos a 28 segundos. Las oscilaciones que se presentaron en el control anterior fueron
reducidas a una cantidad muy pequea, en las curvas se presentaban un promedio de 1 a 2
oscilaciones.
El robot seguidor se mejoro aumentando el voltaje en la etapa de potencia, de 6v a 9v y
colocando los sensores mas cercas de las ruedas.
Anlisis Comparativo
En cuestin de tiempo el control difuso tuvo el mejor desempeo con un promedio de 28
segundos por vuelta, 4 segundos de diferencia con el control ON-OFF.
La implementacin de un control difuso tiene un grado de complejidad mayor que el
control difuso, con el cual se tienen que tener ciertas consideraciones a la hora de
programarlo ya que se puede perder la rapidez de respuesta del robot. El control ON-OFF
se realiza de manera analgica por lo que es ms fcil su implementacin.
En el aspecto econmico, el control difuso es el que requiere de una menor inversin que el
control ON-OFF ya que el implementar un micro controlador representa una inversin
mayor.

23

VI.

OBSERVACIONES Y CONCLUSIONES

Los dos controles implementados funcionaron satisfactoriamente, el difuso mejor que el


ON-OFF, y estos dos controles tendran mejores resultados si se cambiaran los motores por
otros que tengan una menor reduccin de velocidad y cambiando el arreglo de sensores por
uno que tenga una mejor resolucin de la lnea.
En conclusin, el control difuso tuvo un mejor desempeo ya que poda seguir la lnea ms
suavemente, con menos oscilaciones, que el control ON-OFF que es til cuando no
importan las oscilaciones que se tengan cuando trata de seguir la lnea.

24

VII. REFERENCIAS

1.
2.
3.
4.
5.

www.wikipedia.com
http://www.scribd.com/doc/490126/Seguidor-de-linea-negra
http://www.scribd.com/doc/17461903/Robot-Seguidor-de-Linea
Matlab

http://www.grsbahiablanca.com.ar/ARCHIVOS%20ACTIVOS/Informes%20Y%20docs/ro
bot_paper.pdf
6. http://www.arduino.cc/es/Main/ArduinoBoardDuemilanove
7. http://www.scribd.com/doc/4250236/robotseguidorlinea#

25