0% found this document useful (0 votes)
35 views4 pages

Obstacle Robot

Uploaded by

fakhrul helmi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
35 views4 pages

Obstacle Robot

Uploaded by

fakhrul helmi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 4

/* Obstacle Avoiding Robot Using Ultrasonic Sensor and Arduino

* Circuit Digest(www.circuitdigest.com)

*/

int trigPin = 9; // trig pin of HC-SR04

int echoPin = 10; // Echo pin of HC-SR04

int revleft4 = 4; //REVerse motion of Left motor

int fwdleft5 = 5; //ForWarD motion of Left motor

int revright6 = 6; //REVerse motion of Right motor

int fwdright7 = 7; //ForWarD motion of Right motor

long duration, distance;

void setup() {
delay(random(500,2000)); // delay for random time

Serial.begin(9600);

pinMode(revleft4, OUTPUT); // set Motor pins as output

pinMode(fwdleft5, OUTPUT);

pinMode(revright6, OUTPUT);

pinMode(fwdright7, OUTPUT);

pinMode(trigPin, OUTPUT); // set trig pin as output

pinMode(echoPin, INPUT); //set echo pin as input to capture reflected waves

void loop() {

digitalWrite(trigPin, LOW);

delayMicroseconds(2);

digitalWrite(trigPin, HIGH); // send waves for 10 us

delayMicroseconds(10);

duration = pulseIn(echoPin, HIGH); // receive reflected waves

distance = duration / 58.2; // convert to distance

delay(10);

// If you dont get proper movements of your robot then alter the pin numbers

if (distance > 19)

digitalWrite(fwdright7, HIGH); // move forward

digitalWrite(revright6, LOW);

digitalWrite(fwdleft5, HIGH);

digitalWrite(revleft4, LOW);

if (distance < 18)


{

digitalWrite(fwdright7, LOW); //Stop

digitalWrite(revright6, LOW);

digitalWrite(fwdleft5, LOW);

digitalWrite(revleft4, LOW);

delay(500);

digitalWrite(fwdright7, LOW); //movebackword

digitalWrite(revright6, HIGH);

digitalWrite(fwdleft5, LOW);

digitalWrite(revleft4, HIGH);

delay(500);

digitalWrite(fwdright7, LOW); //Stop

digitalWrite(revright6, LOW);

digitalWrite(fwdleft5, LOW);

digitalWrite(revleft4, LOW);

delay(100);

digitalWrite(fwdright7, HIGH);

digitalWrite(revright6, LOW);

digitalWrite(revleft4, LOW);

digitalWrite(fwdleft5, LOW);

delay(500);

You might also like