Distance Measurement using Ultrasonic Sensor and Arduino

0
577
distance measurement

Ultrasonic sensors are used to measure distance or detect objects without any physical contact. The ultrasonic sensor work on the principle of ECHO.

Please click here to download Proteus simulation

Working and Explanation

Sound waves from the sensor travel in an environment when striking with any object it came back to the origin. As the speed of the sound is known we have to calculate the outgoing and incoming time of the wave. These calculations are done through the Arduino program.

This has many applications like mini radar, in parking to avoid accidents, etc.

what is an ultrasonic sensor?

  • Operating voltage: +5V
  • Theoretical  Measuring Distance: 2cm to 450cm
  • Practical Measuring Distance: 2cm to 80cm
  • Accuracy: 3mm
  • Measuring angle covered: <15°
  • Operating Current: <15mA
  • Operating Frequency: 40Hz

Distance =1/2* (Speed × Time)

Components Used

  • Arduino Uno
  • 16×2 LCD
  • Ultrasonic sensor Module
  • battery source
  • Connecting wires
  • variable resistor

Circuit Diagram

Distance Measurement using Ultrasonic Sensor and Arduino
Circuit Diagram

At pin no 1 and 2, the virtual terminal to display data is connected. At pin numbers, 3 to 7 LCD is conned. At pin numbers 11 and 12 echo and trig pin of the ultrasonic sensor are connected.

Coding (Distance Measurement using Ultrasonic Sensor and Arduino):

#include<LiquidCrystal.h>

LiquidCrystal lcd(2, 3, 4, 5, 6, 7);

const int trigPin = 12;
const int echoPin = 11;
void setup()
{
Serial.begin(9600);

lcd.begin(16,2);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
lcd.setCursor(0,0);
lcd.print(” Distance “);
Serial.print(” Distance “);
lcd.setCursor(0,1);
lcd.print(” Measurement “);
Serial.print(” Measurement “);
delay(1000);
lcd.clear();
lcd.setCursor(0,0);
lcd.print(“Geeky Engineers: “);
delay(1000);
Serial.print(“:”);
lcd.setCursor(0,0);
Serial.print(” www.geekyengineers.com”);
delay(2000);
lcd.clear();

}

void loop()
{
long duration, inches, cm;
pinMode(trigPin, OUTPUT);
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);

pinMode(echoPin, INPUT);
duration = pulseIn(echoPin, HIGH);
inches = microsecondsToInches(duration);
cm = microsecondsToCentimeters(duration);

Serial.print(“Distance:”);
Serial.print(cm);
Serial.print(“cm”);
delay(100);
Serial.println();
lcd.setCursor(0,0);
lcd.print(“”);
delay(10);
lcd.setCursor(0,1);
lcd.print(“Distance:”);
lcd.print(cm);
lcd.print(“cm”);
delay(100);

}

long microsecondsToInches(long microseconds)
{
return microseconds / 74 / 2;
}

long microsecondsToCentimeters(long microseconds)
{
return microseconds / 29 / 2;
}

Leave a Reply