You are on page 1of 7

LINE FOLLOWER ROBOT MECHANICAL STRUCTURE OF THE ROBOT 1.MOTORS 2.SENSORS 3.DRIVERS 4.MICROCONTROLER 5.

BATTERY

MOTORS : DC MOTOR 3V,CCW , WITH GEAR, 60 RPM

SENSORS: RF TRANSMITTER AND RECEIVER

3. MOTOR DRIVER L293D IS A FOUR CHANNEL DC MOTOR DRIVER WHICH IS USED TO DRIVE THE DC MOTOR

4. MICROCONTROLLER AT89C2051 IS A MICRO CONTROLLER USED FOR CONTROLLING THE ROBOT

5.BATTERY 9V ,RECHARABLE BATTERY

WORKING PRINCIPLE: IR Transmitter emits IR rays which are reflected by the white surface and absorbed by the black surface Thus the robot tracks the black line from which the rays is not reflected.

CIRCUIT DIAGRAM:

SENSOR CONNECTION:

CODING:

#include <REG51.H> extern register unsigned char speedleft,speedright; register unsigned char high,low,flag,time; main() { P1=0x40; P3=0xff; high = 80; low = 30; flag = 0; time = 50; Start(); while(1) { P3|= 0x0f; Run(); } } Start() { char exit,key; exit =1; while(exit) { key = P1; if((key & 0x40)==0) exit=0; } } Run() { char sensors; sensors = (P3 &=0x0f); if((sensors & 0x01)==0) { TurnRight(); flag = 1; } else if((sensors & 0x08)==0) { TurnLeft(); flag = 2; } if(sensors == 0x09) { Forward(high); flag = 0; } if(((sensors==0x0b)||(sensors==0x0d))&&(flag==0)) Forward(low);

else

else

Forward(char speed) { P1=0x64; speedright = speed+10; speedleft = speed; delay(time); } TurnRight() { P1=0x68; speedright = low+5; speedleft = low; delay(time); } TurnLeft() { P1=0x54; speedright = low+5; speedleft = low; delay(time); } Reverse(char speed) { P1=0x58; speedright = speed; speedleft = speed+5; delay(time); }

You might also like