trabajo colaborativo1 micros

3
ROBOT SEGUIDOR DE LINEA Johnatan Castro Hernandez Código: 80115721 [email protected] RESUMEN: se realizara el diseño e implementación de un robot seguidor de línea. El cual además deberá estar en capacidad de esquivar obstáculos y retomar su camino. INTRODUCCION Con la utilización de microcontroladores se puedes plantear la solución a un problema planteado previamente. PLANTEAMIENTO DEL PROBLEMA Implementar un vehículo seguidor de línea que a su vez detecte un objeto y lo esquive de ser necesario. JUSTIFICACION La aplicación de los conocimientos adquiridos en el curso de microprocesadores y microcontroladores. OBJETIVOS Diseñar un vehiculo capaz de seguir una línea Implementar la capacidad de esquivar obstáculos. Aplicar los conocimientos adquiridos Programar un microcontrolador para cumplir con el problema establecido. MARCO REFERENCIAL Programa para robot que consiste en seguir una línea negra sobre un fondo blanco Consta de 4 detectores, (entrada por Rb0),(entrada por RBI) son los sensores que van al centro juntos RB2, RB3 son sensores que van a los dos extremos(todos los sensores van en línea recta) El pin RA0 y RA1 van al L293 El pin RA2 Y RA3 van al L 293 nota: personalmente no recomiendo el l293 por que pierde potencia tus motores recomiendo el puente h con transistores que te sale mas barato uno 2.50 soles quisiera mandarles el diagrama y muchas cosas mas pero no pudo hacerlo ayudenme con eso y les doy toda la informacion desde como programar y hacer todo lo que tu quieras con el pic 16f877a ,18fxx y otras cosas mas LENGUAJE DE PROGRAMACIÓN PARA EL MICROCONTROLADOR PIC 16F84A

Upload: johnatan-castro

Post on 19-Dec-2015

4 views

Category:

Documents


1 download

DESCRIPTION

Trabajo Colaborativo Microprocesadores

TRANSCRIPT

ROBOT SEGUIDOR DE LINEA

Johnatan Castro HernandezCdigo: [email protected]

RESUMEN: se realizara el diseo e implementacin de un robot seguidor de lnea. El cual adems deber estar en capacidad de esquivar obstculos y retomar su camino.

INTRODUCCIONCon la utilizacin de microcontroladores se puedes plantear la solucin a un problema planteado previamente.PLANTEAMIENTO DEL PROBLEMA Implementar un vehculo seguidor de lnea que a su vez detecte un objeto y lo esquive de ser necesario.JUSTIFICACION La aplicacin de los conocimientos adquiridos en el curso de microprocesadores y microcontroladores.OBJETIVOS Disear un vehiculo capaz de seguir una lnea Implementar la capacidad de esquivar obstculos. Aplicar los conocimientos adquiridos Programar un microcontrolador para cumplir con el problema establecido.

MARCO REFERENCIAL Programa para robot que consiste en seguir una lnea negra sobre un fondo blanco Consta de 4 detectores, (entrada por Rb0),(entrada por RBI) son los sensores que van al centro juntos RB2, RB3 son sensores que van a los dos extremos(todos los sensores van en lnea recta) El pin RA0 y RA1 van al L293 El pin RA2 Y RA3 van al L 293nota: personalmente no recomiendo el l293 por que pierde potencia tus motores recomiendo el puente h con transistores que te sale mas barato uno 2.50 soles quisiera mandarles el diagrama y muchas cosas mas pero no pudo hacerlo ayudenme con eso y les doy toda la informacion desde como programar y hacer todo lo que tu quieras con el pic 16f877a ,18fxx y otras cosas mas

LENGUAJE DE PROGRAMACIN PARA EL MICROCONTROLADOR PIC 16F84A

CODIGO DE PROGRAMA EN LENGUAJE Cnota: utilizar el compilador pcw para generar el archivo hex para luego grabar en el pic 16f84a con el programa winpic800 que lo puedes descargar gratuitamente.

para los que son como yo que no piensan mucho, para grabar el pic 16f84 u otro necesitamos un grabador de pics fisico hatware y conectarlo a la pc por el puerto serial,en caso de tener laptop utilizar programador por puerto usb, copiar y pegar en el compilador pcw y pulsar compilar y listo ya tienes el hex listo.

//SEGUIDOR DE LINEAS "BAIRON BOT"//REALIZADO POR WILBER BAILON FLORES#include #FUSES NOWDT, XT, NOPUT, NOPROTECT#use delay(clock=4000000)/*#use standard_io(B)#use standard_io(A)#byte puerto_b = 06#byte puerto_a = 05 */

int secuencia1, secuencia2,secuencia;short int S0,S1,S2,S3;short int estadoM1, estadoM2;

void MOTOR1_ADELANTE (void){secuencia1 = 0x02;secuencia= (secuencia1 + secuencia2);output_a(secuencia);}void MOTOR1_RETRO (void){secuencia1 = 0x01;secuencia= (secuencia1 + secuencia2);output_a(secuencia);}void MOTOR2_ADELANTE (void){secuencia2 = 0x04;secuencia= (secuencia1 + secuencia2);output_a(secuencia);}void MOTOR2_RETRO (void){secuencia2 =0x08;secuencia= (secuencia1 + secuencia2);output_a(secuencia);}void main( void ){set_tris_a( 0x00 ); /* puerto B como salida */set_tris_b( 0x0f ); /* puerto A como entrada*/do{S0=input(PIN_B0);S1=input(PIN_B1);S2=input(PIN_B2);S3=input(PIN_B3);

estadoM1 = ((S0&~S1)|(S0& ~S2&S1)|(~S0&~S1&~S2&~S3));estadoM2 = ((~S0&S1)|(S0& ~S3&S1)|(~S0&~S1&~S2&~S3));if (estadoM1==1)MOTOR1_ADELANTE();elseMOTOR1_RETRO();if (estadoM2==1)MOTOR2_ADELANTE();elseMOTOR2_RETRO();} while( TRUE ); /* Repetir siempre */}

http://www.taringa.net/posts/ciencia-educacion/8394067/Microbot-rastreador-de-lineas-negras-con-pic-16f84a-en-c.html