edge lab LIVE! starts Tuesday in Munich. Grab a workshop seat and take home the board you build on. Code FRIEND-HACKSTER saves 20%. () Learn more!
Tatul Yeghiazaryan
Published © GPL3+

Object Distance Sensing and Warning

Distance sensing with an Ultrasonic Sensor and warning by passive buzzer and RGB LED.

BeginnerWork in progress1 hour737
Object Distance Sensing and Warning

Things used in this project

Hardware components

SparkFun Electronics Arduino UNO
×1
Ultrasonic Sensor - HC-SR04
SparkFun Electronics Ultrasonic Sensor - HC-SR04
×1
SparkFun Electronics Passive Buzzer
×1
SparkFun Electronics Resistor 300ohm
×1
SparkFun Electronics Jumper Wires
×1
USB-A to B Cable
USB-A to B Cable
×1
SparkFun Electronics Breadboard
×1

Software apps and online services

Arduino IDE
Arduino IDE

Story

Read more

Schematics

Object Sensing Project Diagram

Code

Object sensing code

Arduino
int trigPin=3;
int echoPin=7;
int buzzPin=9;
int redPin=13;
int greenPin=2;
int bluePin=4;
int duration, cm;

void setup() {
  Serial.begin(9600);
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
  pinMode(buzzPin, OUTPUT); 
  pinMode(redPin, OUTPUT);
  pinMode(greenPin, OUTPUT);
  pinMode(bluePin, OUTPUT);
}

void loop() {
  digitalWrite(trigPin, LOW);
  delayMicroseconds(5);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);

  duration=pulseIn(echoPin, HIGH);
  cm=(duration/2)/29.1;
  Serial.print("distance in centimeters: ");
  Serial.println(cm);

  if(cm>30 || cm<0){
    digitalWrite(bluePin, LOW);
    digitalWrite(redPin, LOW);
    digitalWrite(greenPin, HIGH);
    delay(500);
    }  
  if(cm>=20 && cm<=30){
      digitalWrite(redPin, LOW);
      digitalWrite(greenPin, LOW);
      digitalWrite(bluePin, HIGH);
      delay(500);
    }
  if(cm<20 && cm>0){
    digitalWrite(greenPin, LOW);
    digitalWrite(bluePin, LOW);
    digitalWrite(redPin, HIGH);
    tone(buzzPin, 2000, 500);
    delay(1000);
    noTone(buzzPin);
    }
 
}

Credits

Tatul Yeghiazaryan
1 project • 1 follower

Comments