Вы находитесь на странице: 1из 18

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA

Escuela de ciencias bsicas, tecnologa e Ingeniera


MICROPROCESADORES Y MICROCONTROLADORES
309696_40

DISEO DE UN SISTEMA DE ROBOT SEGUIDOR DE LNEA


Javier Cadena Gonzalez
Mike Nelson Peralta
Hader Alexander Marin Bejarano

Resumen
Con el desarrollo de este proyecto se busca aplicar los conceptos y conocimientos adquiridos
durante el estudio del curso Microprocesadores y Microcontroladores, mediante del diseo de
un sistema robtico con la capacidad de seguir una lnea con una trayectoria definida, y que
adems posea la habilidad de evitar obstculos interpuestos en su camino y volver a la ruta
definida anteriormente. Para este diseo, se utilizarn componentes electrnicos elementales
teniendo en cuenta principalmente su funcionalidad y operatividad sobre su apariencia.

Abstract
This project seeks to apply the concepts and knowledge acquired in the course
Microprocessors and Microcontrollers, by designing a robotic system with the ability to follow a
line with a defined path, and also has the ability to avoid obstacles placed in their way and
return to the path previously defined. For this design, basic electronic components are used
considering their functionality primarily about their appearance.

Palabras Clave
Microprocesador, microcontrolador, electrnica, robtica, sensor, programa

Introduccin

Actualmente se pueden observar muchos dispositivos que funcionan con la aplicacin de la


robtica que facilitan nuestras actividades rutinarias, los robots han dejado de ser parte de la
ciencia y poco a poco se han convertido en parte de nuestra realidad. As tambin han
avanzado los microprocesadores siendo cada vez ms poderosos en su funcionamiento pero
ms accesibles en costos permitiendo una mayor expansin de sus aplicaciones ya que
incluso, muchos de estos, pueden ser reprogramados utilizando software especfico en un
computador.
El microprocesador es el cerebro del robot. El sistema de entrada podr detectar las seales
correspondientes, pero el microprocesador ser quien decida el paso siguiente de acuerdo a
las instrucciones programadas en el, sin este dispositivo el robot seguidor de lnea no tendr
utilidad.

Planteamiento del problema

Por medio de este proyecto, se busca que con la aplicacin y conocimientos adquiridos en el
campo de los microcontroladores, logremos controlar diferentes estados y censados, sobre
componentes mecnicos y electronicos. Como parte de la prctica buscamos poder lograr
que un robot pueda mantener un trayecto y en el momento de intento de salir rectifique y
tome nuevamente su rumbo. Se utilizar para la solucin del problema la programacin de
PIC y conocimientos anteriormente adquiridos de electrnica.

Justificacin

El proyecto esta enfocado en buscar la mejor manera de control de censado y estados sobre
componentes mecanicos y electronicos, ya en circuitos digitales vimos como por medio de
compuertas lgicas e integrados con funciones especficas se puede controlar movimientos y
corregir trayectrias, ahora buscamos que por medio de los conocimiento que vamos
adquiriendo de el curso podamos realizar estos controles por medio de la programacin de
PICS. Ya tenemos concocimiento sobre componentes bases y como las competencias que
vamos adquiriendo podremos realizar este proyecto.

Objetivos

Afianzar

aplicar

los

conocimientos

adquiridos

en

el

cursos

de

microprocesadores y microcontroladores.

Conocer y estudiar el lenguaje utilizado para la programacion de PICS, para


que realicen una tarea especifica.

Investigar y posteriormente disear el robot para que cumpla con la solucion


del problema expuesto.

Marco Referencial
Dentro de lo que hemos estudiado ya tenemos la claridad de que componentes tenemos
involucrados en el proyecto como son:
1. Microcontrolador PIC16F88 de la marca MICROCHIPS.
2. Sensor optico CNY70.
3. Sensor de distancia GP2D120
4. Motor DC bidireccional.
5. Puente H
Estos son los componentes primarios para la construccion del carro por medio de estos
podremos controlar y sensar cada uno de los escenarios en el cual el carro no este siguiendo
la linea ya sea por un obstaculo o porque perdi la trayectoria de la misma.
Para seguir con el estudio debemos conocer cada una de estas partes:
Sensor ptico CNY70
Descripcin:
Es un pequeo dispositivo con forma de cubo y cuatro patas que aloja en su interior un diodo
emisor de infrarrojos que trabaja a una longitud de onda de 950 nm y un fototransistor
(recetor) estando ambos dispuestos en paralelo y apuntando ambos en la misma direccin, la
distancia entre emisor y receptor es de 2.8 mm y estn separados del frontal del encapsulado
por 1 mm.

Funcionamiento:
El fototransistor conducir mas, contra mas luz reflejada del emisor capte por su base. La
salida de este dispositivo es analgica y viene determinada por la cantidad de luz reflejada,
as pues para tener una salida digital se podra poner un disparador Trigger Schmitt y as
obtener la salida digital pero esto tiene un problema, y es que no es ajustable la sensibilidad
del dispositivo y los puntos de activacin de histerisis distan algunos milivoltios uno del otro
(ver explicacin en el esquema de la LDR ).
Para solventar este problema se muestra en el siguiente circuito basado en un amplificador
operacional configurado en modo comparador, en la salida del circuito obtendremos una
seal cuadrada lista para su interconexin con la entrada de cualquier Controlador.

La sensibilidad del circuito es ajustable mediante la resistencia variable de 10k. Para


comprobar y visualizar la seal de salida es posible montar un diodo led en la salida con su
resistencia de polarizacin a masa, si as lo hacemos veremos que cuando el sensor detecta
una superficie blanca o reflectante el led se ilumina ya que la salida del LM358 pasa a nivel
alto y por lo tanto alimenta al led que tiene su nodo conectado directamente.
La salida del LM358 varia de 0V para nivel lgico 0 a unos 3,3V para nivel lgico 1, con lo
que puede ser llevada directamente a un disparador trigger schmitt (p.ej. 74LS14) para
conformar pulsos de niveles TTL de 0 a 5V si fuese necesario.

Sensor de distancia GP2D120


Caractersticas principales
Salida analgica (Vo)
Alimentacin a +5v
Rango efectivo de medida de 4 a 40 cm
Tiempo tpico de respuesta 39ms
Retardo tpico de comienzo 44ms
Consumo medio 33Ma
Fabricante: Sharp
Descripcin
Este sensor anlogo de distancia corta del fabricante japons Sharp, tiene un alcance de
deteccin de 3cm a 40cm. Un rango corto que proporciona una mayor resolucin de las
mediciones, y la distancia de deteccin mnima ms baja hace de este sensor ideal para
detectar objetos muy cercanos. La distancia se indica mediante una seal analgica de voltaje
por lo que este sensor es muy fcil de usar. En 4cm la salida de voltaje es de 3.1V y en 40cm la
salida es de 0.3 V.

Funcionamiento
El sensor calcula la distancia midiendo el ngulo de reflexin recibido:

La respuesta NO es lineal
Es necesario utilizar algn mtodo de interpolacin
El sensor NO da lecturas fiables por debajo de 4cm.

PIC16F88

El PIC16F88 es un microcontrolador de la familia PIC, fabricada por la empresa Microchip.


Estructura
Se trata de uno de los microcontroladores que puede reemplazar al ms popular del mercado
PIC16F84, ideal para principiantes, debido a su arquitectura de 8 bits, 18 pines, y un set de
instrucciones RISC muy amigable para memorizar y fcil de entender, internamente consta
de:
Memoria Flash de programa (4K x 14).
Memoria EEPROM de datos (256 x 8).
Memoria RAM (368 registros x 8).
Oscilador interno de 8MHz.
Modulacin por ancho de pulso (PWM) de 10Bits,
Comunicacin asincrnica USART en SPI 3 Hilos o I2C en 2 hilos
Conversor de Analgico a Digital de 7 canales
Un temporizador/contador (timer de 8 bits).
Un divisor de frecuencia.
Varios puertos de entrada-salida (16 pines en dos puertos, 8 pines el puerto A y 8 pines
el puerto B).

Otras caractersticas son:


Manejo de interrupciones (de 4 fuentes).
Perro guardin (watchdog).
Bajo consumo.
Frecuencia de reloj externa mxima 20MHz. La frecuencia de reloj interna es un cuarto de la
externa, lo que significa que con un reloj de 20Mhz, el reloj interno sera de 5Mhz y as pues
se ejecutan 5 Millones de Instrucciones por Segundo (5 MIPS)
Pipe-line de 2 etapas, 1 para bsqueda de instruccin y otra para la ejecucin de la
instruccin (los saltos ocupan un ciclo ms).
Repertorio de instrucciones reducido (RISC), con tan solo 35 instrucciones distintas.
4 tipos distintos de instrucciones, orientadas a byte, orientadas a bit, operacin entre
registros, de salto.

Montaje y diseo del Carro


Para poder seguir con el proyecto, debemos conocer como estan involucrados estos
componentes y sobre los diferentes estados como son, fuera de linea, en la linea o con un
obstaculo, el deber cumplir unas funciones para seguir en funcionamiento y cumplir el
objetivo. La forma de poder empezar a llegar a esto es por medio de el diagrama de bloques
y el algoritmo.

Diagrama de bloques:

Sensor ptico Derecho

Sensor ptico Izquierdo

Rectificador operacional

Motor derecho

Seal motor derecho


Puente H
L293D

Rectificador operacional

Entrada
Digital

Microprocesador
PIC16F88
Seal motor i zquierdo
Motor i zquierdo

Sensor de
obstculo

Entrada
Digital

Entrada
Anloga

Algoritmo

Inici

Leer datos
Leer datos

SI y SD no
estn sobre
la lnea?

S
i

Avanza el Robot hacia


adelante (MI y MD

S
i

Robot gira a la izquierda


(MI detenido, MD

S
i

Robot gira a la derecha


(MI avanza, MD

S
i

Avanza el Robot hacia


adelante (MI y MD

N
o
SI sobre
la lnea y

N
o
SD
sobre la

N
o
SI y SD
estn

N
o

Esquema Electronico por segmentos segn su construccion


Este es el segmento de cmo ultilizaramos para lo sensores que sensaran la linea negra.

Aqu tenemos el sensor y de distancia y el pic a utilizar:

Ya como ultimo tenemos el circuito completo y ya la simulacin funcionando correctamente.

Para finalizar la actividad este fue el cdigo que utilizamos para que el carro cambiara el
sentido del motor en el momento que se encontrara con un obstaculo.
#include
#define LED PIN_B0
#define MotorDer PIN_B1
#define MotorIzq PIN_B2
#define SensorDer PIN_A1
#define SensorIzq PIN_A2

int16 valor_leido;
float voltios;

void main()
{

//setup_adc_ports(sAN0|sAN1|sAN2|sAN3|VSS_VDD);
setup_adc_ports(sAN0|VSS_VDD);
setup_adc(ADC_CLOCK_INTERNAL);
setup_spi(SPI_SS_DISABLED);
setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
setup_timer_1(T1_DISABLED);
setup_timer_2(T2_DISABLED,0,1);
setup_comparator(NC_NC_NC_NC);
setup_vref(FALSE);
//Setup_Oscillator parameter not selected from Intr Oscillotar Config tab
set_adc_channel(0);
delay_us(20);
while(true)
{
output_high(MotorIzq);
output_high(MotorDer);
output_low(LED);

while(input(SensorIzq)==1){
output_low(MotorDer);
delay_ms(50);
}

while(input(SensorDer)==1){
output_low(MotorIzq);
delay_ms(50);
}

valor_leido=read_adc();

voltios=5.0 * valor_leido/1024.0;

while(voltios >= 2.00){


output_high(LED);

output_low(MotorDer);
output_high(MotorIzq);
delay_ms(2000);

output_low(MotorIzq);
output_high(MotorDer);
delay_ms(2000);

valor_leido=read_adc();
voltios=5.0 * valor_leido/1024.0;
}
}
}

Este es el cuadro del sistema descrito en sus entradas y salidas:

Referencias
M.T. Edward, Robot Seguidor de Linea [on line]. Mangua: Universidad Nacional de Ingenieria.
Disponible en: http://www.academia.edu/4117023/ROBOT_SEGUIDOR_DE_LINEA
F. Nestor; P. Xavier; J. Juan, Microcontroladores en Robtica Mvil. Robot Seguidor de Linea
[on

line].

Barcelona:

Universitat

Politecnica

de

Catalunya.

http://ocw.upc.edu/sites/default/files/materials/15012628/40184-3452.pdf

Disponible

en:

Вам также может понравиться