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

Practical 8

Uploaded by

KK GAMERS
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)
15 views4 pages

Practical 8

Uploaded by

KK GAMERS
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

ET22BTIT061 – Malav Radia

Practical 8
AIM: Design Obstacle avoidance robot using ultrasonic sensor.
Apparatus: Arduino UNO, Ultrasonic Sensor, Motors, L293D Motor Driver, Virtual
Terminal, Resistors, Supply, Ground.
Tools: Arduino IDA, Proteus
Circuit:

Code:
#define IN1 13
#define IN2 12
#define IN3 7
#define IN4 6
#define EN1 5
#define EN2 4
ET22BTIT061 – Malav Radia

#define trigPin 9 // Ultrasonic sensor trigger pin


#define echoPin 10 // Ultrasonic sensor echo pin
long duration;
int distance;
void setup() {
pinMode(EN1, OUTPUT);
pinMode(EN2, OUTPUT);
pinMode(IN1, OUTPUT);
pinMode(IN2, OUTPUT);
pinMode(IN3, OUTPUT);
pinMode(IN4, OUTPUT);
pinMode(trigPin, OUTPUT); // Trigger pin as output
pinMode(echoPin, INPUT); // Echo pin as input
[Link](9600); // For serial monitor debugging
}
void loop() {
// Ultrasonic sensor distance measurement
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
distance = duration * 0.034 / 2; // Calculating distance in cm
[Link]("Distance: ");
[Link](distance); // Debugging the distance
if (distance < 20) { // If an obstacle is within 20 cm
stop();
delay(500);
ET22BTIT061 – Malav Radia

turnRight(); // Turn to avoid obstacle


delay(500);
} else {
moveForward(); // No obstacle, move forward
}}
void moveForward() {
digitalWrite(EN1, HIGH);
digitalWrite(EN2, HIGH);
digitalWrite(IN1, HIGH);
digitalWrite(IN2, LOW);
digitalWrite(IN3, HIGH);
digitalWrite(IN4, LOW);
}
void turnRight() {
digitalWrite(EN1, HIGH);
digitalWrite(EN2, HIGH);
digitalWrite(IN1, HIGH);
digitalWrite(IN2, LOW);
digitalWrite(IN3, LOW);
digitalWrite(IN4, HIGH);
}
void turnLeft() {
digitalWrite(EN1, HIGH);
digitalWrite(EN2, HIGH);
digitalWrite(IN1, LOW);
digitalWrite(IN2, HIGH);
digitalWrite(IN3, HIGH);
digitalWrite(IN4, LOW);
}
ET22BTIT061 – Malav Radia

void stop() {
digitalWrite(EN1, LOW);
digitalWrite(EN2, LOW);
digitalWrite(IN1, LOW);
digitalWrite(IN2, LOW);
digitalWrite(IN3, LOW);
digitalWrite(IN4, LOW);
}
Conclusion:
We conclude that the design and implementation of an obstacle avoidance robot using an
ultrasonic sensor, allowing the robot to autonomously detect and avoid obstacles in its
path, enhancing navigation and collision prevention.

You might also like