10.Ultrasonic Distance Measurement Display Using I2C LCD with Arduino

 Ultrasonic Distance Measurement Display Using I2C LCD with Arduino



Materials Needed:

  • Arduino board (e.g., Uno, Nano)
  • Ultrasonic sensor (HC-SR04)
  • I2C LCD (16x2)
  • Jumper wires
  • Breadboard (optional)

Connections:

  1. Ultrasonic Sensor to Arduino:

    • TRIG pin → Pin 9 on Arduino.
    • ECHO pin → Pin 10 on Arduino.
    • VCC pin → 5V on Arduino.
    • GND pin → GND on Arduino.
  2. I2C LCD to Arduino:

    • SDA → A4 on Arduino (for Uno).
    • SCL → A5 on Arduino (for Uno).
    • VCC → 5V on Arduino.
    • GND → GND on Arduino.

Procedure:

Step 1: Set Up Arduino IDE

  • Make sure the <Adafruit_LiquidCrystal.h> library is installed in your Arduino IDE.

Step 2: Write the Code

  • Copy and paste the following code into the Arduino IDE:

C++ Code:

#include <Wire.h>
#include <Adafruit_LiquidCrystal.h>

// Ultrasonic sensor pins
const int trigPin = 9;
const int echoPin = 10;

// Set up the LCD for I2C communication
Adafruit_LiquidCrystal lcd(0);

void setup() {
  // Initialize serial communication
  Serial.begin(9600);
  
  // Set up ultrasonic sensor pins
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);

  // Initialize the LCD
  lcd.begin(16, 2);
  lcd.setBacklight(1);
  lcd.setCursor(0, 0);
  lcd.print("Distance:");
}

void loop() {
  long duration;
  int distance;

  // Trigger the ultrasonic sensor
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);

  // Measure the duration of the echo pulse
  duration = pulseIn(echoPin, HIGH);

  // Calculate the distance in centimeters
  distance = duration * 0.034 / 2;

  // Print the distance to the serial monitor
  Serial.print("Distance: ");
  Serial.print(distance);
  Serial.println(" cm");

  // Display the distance on the LCD
  lcd.setCursor(0, 1);       // Set cursor to the start of the second row
  lcd.print("                "); // Clear previous value
  lcd.setCursor(0, 1);
  lcd.print(distance);
  lcd.print(" cm");

  delay(500);  // Wait for 500 milliseconds before the next measurement
}


Comments

Popular posts from this blog

Arduino projects

1.Using an LDR (Light Dependent Resistor) with Arduino to Measure Light Intensity