top of page

DIY Arduino Height Measuring Machine

Kids were measuring their height every day

Things used in this project

Hardware components

Arduino Nano R3×1

Ultrasonic Sensor - HC-SR04 (Generic)×1

Alphanumeric LCD, 16 x 2×1

Trimmer Potentiometer, 10 kohm×1



When I noticed that my kids were measuring their height every day, I got the idea to make such a device. To find out your height, all you have to do is stand under the device and activate a sound that indicates that your height has been measured.It is very easy to build and consist only a few components:-Arduino Nano-HC SR04 ultrasonic sensor-LCD display-Buzzer-BatteryNow let's explain how it works:First we need to install the device with the help of double-sided adhesive at a certain height, which is previously defined in the code, and is marked with the letter H on the pictureWhen someone stands under the device, the sensor measures the distance D. Next the code calculates the distance H-D which actually represents the height of the person under the device H1 and displays this value on the LCD. Library "LcdBarGraph" helps draw horizontal bargraph, where the length of the bar is proportional to the values provided. When there is no one under the device, the calculated value is zero because in this case H = D and H-D is zero. The device is mounted in a suitable box with the LCD on the front and the ultrasonic sensor on the bottom.The required libraries, code and schematic are given be

Schematic



Code

// includes the LiquidCrystal Library
#include <LiquidCrystal.h> 

// includes the LcdBarGraph Library
#include <LcdBarGraph.h>

// Maximum distance we want to ping for (in centimeters).
#define max_distance 200

// Creates an LCD object. Parameters: (rs, enable, d4, d5, d6, d7)
LiquidCrystal lcd(12, 11, 5, 4, 3, 2); 

LcdBarGraph lbg(&lcd, 16, 0, 1); // Creates an LCD Bargraph object.

const int trigPin = 9;
const int echoPin = 10;
long duration;
int distance;
int distance1;
int speakerPin = 8;
void setup() 
{
  lcd.begin(16,2); // Initializes the interface to the LCD screen
  
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
}

void loop() 
{
  // Write a pulse to the HC-SR04 Trigger Pin
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);
  
  // Measure the response from the HC-SR04 Echo Pin
  duration = pulseIn(echoPin, HIGH);
  
  // Determine distance from duration
  // Use 343 metres per second as speed of sound
  distance= duration*0.034/2;
  distance1= 180 - distance ;
  // Prints "Distance: <value>" on the first line of the LCD

  if (distance1 > 100) {
   tone (speakerPin, 1000);
  
   } else {
    noTone (speakerPin);

  }
  lcd.setCursor(0,0);
  lcd.print("HEIGHT: ");
  lcd.print(distance1);
  lcd.print("  cm  ");

  // Draws bargraph on the second line of the LCD
  lcd.setCursor(0,1);
  lbg.drawValue(distance1, max_distance);
  delay(500);
}

Power in Numbers

Programs

Locations

Volunteers

Project Gallery

ESRO IT

With our innovative and insightful technology, we strive to enhance our users’ every day experiences. Founded in 2011, our incredible team of engineers, programmers, designers and marketers have worked tirelessly to bring ESRO IT to the forefront of the industry. We will continue to work relentlessly to become the technological standard, providing big picture insights and solutions for companies of all sizes. Get in touch to learn more.

Feedback

Rate Us
PoorFairGoodVery goodExcellent

Thanks for submitting!

Our Working  Location

ESRO IT

 

34, Ram Nagar Lane No.2 Tuljbhavani Mangalm, Shegaon Rahatgaon Road Amravati 444604

Copyright © 2011 - All Rights Reserved - ESRO-IT

bottom of page