Components and supplies
Arduino UNO
9V battery (generic)
9V Battery Clip
Dual H-Bridge motor drivers L298
Ultrasonic Sensor - HC-SR04 (Generic)
Toggle Switch, Toggle
Tools and machines
Premium Male/Male Jumper Wires, 40 x 3" (75mm)
Premium Female/Male Extension Jumper Wires, 40 x 6" (150mm)
Apps and platforms
Arduino IDE
Project description
Code
Obstacle_avoiding.ino
arduino
1int trigPin = 9; // trig pin of HC-SR04 2int echoPin = 10; // Echo pin of HC-SR04 3 4int revleft4 = 4; //REVerse motion of Left motor 5int fwdleft5 = 5; //ForWarD motion of Left motor 6int revright6 = 6; //REVerse motion of Right motor 7int fwdright7 = 7; //ForWarD motion of Right motor 8 9long duration, distance; 10 11void setup() { 12 13 delay(random(500,2000)); // delay for random time 14 Serial.begin(9600); 15 pinMode(revleft4, OUTPUT); // set Motor pins as output 16 pinMode(fwdleft5, OUTPUT); 17 pinMode(revright6, OUTPUT); 18 pinMode(fwdright7, OUTPUT); 19 20 pinMode(trigPin, OUTPUT); // set trig pin as output 21 pinMode(echoPin, INPUT); //set echo pin as input to capture reflected waves 22} 23 24void loop() { 25 26 digitalWrite(trigPin, LOW); 27 delayMicroseconds(2); 28 digitalWrite(trigPin, HIGH); // send waves for 10 us 29 delayMicroseconds(10); 30 duration = pulseIn(echoPin, HIGH); // receive reflected waves 31 distance = duration / 58.2; // convert to distance 32 delay(10); 33 // If you dont get proper movements of your robot then alter the pin numbers 34 if (distance > 19) 35 { 36 digitalWrite(fwdright7, HIGH); // move forward 37 digitalWrite(revright6, LOW); 38 digitalWrite(fwdleft5, HIGH); 39 digitalWrite(revleft4, LOW); 40 } 41 42 if (distance < 18) 43 { 44 digitalWrite(fwdright7, LOW); //Stop 45 digitalWrite(revright6, LOW); 46 digitalWrite(fwdleft5, LOW); 47 digitalWrite(revleft4, LOW); 48 delay(500); 49 digitalWrite(fwdright7, LOW); //movebackword 50 digitalWrite(revright6, HIGH); 51 digitalWrite(fwdleft5, LOW); 52 digitalWrite(revleft4, HIGH); 53 delay(500); 54 digitalWrite(fwdright7, LOW); //Stop 55 digitalWrite(revright6, LOW); 56 digitalWrite(fwdleft5, LOW); 57 digitalWrite(revleft4, LOW); 58 delay(100); 59 digitalWrite(fwdright7, HIGH); 60 digitalWrite(revright6, LOW); 61 digitalWrite(revleft4, LOW); 62 digitalWrite(fwdleft5, LOW); 63 delay(500); 64 } 65 66} 67
Obstacle_avoiding.ino
arduino
1int trigPin = 9; // trig pin of HC-SR04 2int echoPin = 10; // Echo pin of HC-SR04 3 4int revleft4 = 4; //REVerse motion of Left motor 5int fwdleft5 = 5; //ForWarD motion of Left motor 6int revright6 = 6; //REVerse motion of Right motor 7int fwdright7 = 7; //ForWarD motion of Right motor 8 9long duration, distance; 10 11void setup() { 12 13 delay(random(500,2000)); // delay for random time 14 Serial.begin(9600); 15 pinMode(revleft4, OUTPUT); // set Motor pins as output 16 pinMode(fwdleft5, OUTPUT); 17 pinMode(revright6, OUTPUT); 18 pinMode(fwdright7, OUTPUT); 19 20 pinMode(trigPin, OUTPUT); // set trig pin as output 21 pinMode(echoPin, INPUT); //set echo pin as input to capture reflected waves 22} 23 24void loop() { 25 26 digitalWrite(trigPin, LOW); 27 delayMicroseconds(2); 28 digitalWrite(trigPin, HIGH); // send waves for 10 us 29 delayMicroseconds(10); 30 duration = pulseIn(echoPin, HIGH); // receive reflected waves 31 distance = duration / 58.2; // convert to distance 32 delay(10); 33 // If you dont get proper movements of your robot then alter the pin numbers 34 if (distance > 19) 35 { 36 digitalWrite(fwdright7, HIGH); // move forward 37 digitalWrite(revright6, LOW); 38 digitalWrite(fwdleft5, HIGH); 39 digitalWrite(revleft4, LOW); 40 } 41 42 if (distance < 18) 43 { 44 digitalWrite(fwdright7, LOW); //Stop 45 digitalWrite(revright6, LOW); 46 digitalWrite(fwdleft5, LOW); 47 digitalWrite(revleft4, LOW); 48 delay(500); 49 digitalWrite(fwdright7, LOW); //movebackword 50 digitalWrite(revright6, HIGH); 51 digitalWrite(fwdleft5, LOW); 52 digitalWrite(revleft4, HIGH); 53 delay(500); 54 digitalWrite(fwdright7, LOW); //Stop 55 digitalWrite(revright6, LOW); 56 digitalWrite(fwdleft5, LOW); 57 digitalWrite(revleft4, LOW); 58 delay(100); 59 digitalWrite(fwdright7, HIGH); 60 digitalWrite(revright6, LOW); 61 digitalWrite(revleft4, LOW); 62 digitalWrite(fwdleft5, LOW); 63 delay(500); 64 } 65 66} 67
Downloadable files
Connections
Connections
Connections
Connections
Documentation
Components Required
Components Required
Comments
Only logged in users can leave comments
Fouad_Roboticist
0 Followers
•0 Projects
Table of contents
Intro
0
0