Arduino with HC-SR04 Ultra Sonic sensor

Working with Arduino is super fun and it becomes more exciting when you use HC-SR04 Ultra Sonic sensor.

The sensor uses non-contact ultrasound sonar to measure the distance of an object, and consists of two ultrasonic transmitters (speakers), a receiver, and a control circuit. It emits ultrasound at 40k Hz which travels through the air and if there is an object or obstacle on its path it will bounce back to the receiver.


I buy all stuff from this site https://bdspeedytech.com/

My breadboard is super simple. I have a LED that will turn HIGH when anything between 30cm to 60cm in the sensor. You can adjust this value as you need.

Download the sketch file



#define DIG_TRIG_PIN 10
#define DIG_ECHO_PIN 11
#define LED_PIN 13

float duration, distanceInCM;

void setup() {
  // put your setup code here, to run once:
  Serial.begin(9600);

  pinMode(DIG_TRIG_PIN, OUTPUT);
  pinMode(DIG_ECHO_PIN, INPUT);
  pinMode(LED_PIN, OUTPUT);
}

void loop() {
  // put your main code here, to run repeatedly:

  digitalWrite(LED_PIN, LOW);
  digitalWrite(DIG_TRIG_PIN, LOW);
  delayMicroseconds(2);
  digitalWrite(DIG_TRIG_PIN, HIGH);
  delayMicroseconds(10);
  digitalWrite(DIG_TRIG_PIN, LOW);
  
  duration = pulseIn(DIG_ECHO_PIN, HIGH);

  // Determine distance from duration
  // Use 343 meters per second as speed of sound
  float speedOfSoundInCM = 0.0343;
  int roundTrip = 2;
  distanceInCM = (duration / roundTrip) * speedOfSoundInCM; 

  Serial.print("Distance = ");
  if (distanceInCM >= 400 || distanceInCM <= 2) {
    Serial.print("Out of range");
  } else if (distanceInCM >= 30 && distanceInCM <= 60) {
    digitalWrite(LED_PIN, HIGH);
  } else {
    Serial.print(distanceInCM);
    Serial.println(" cm ");
    delay(500);
  }


  delay(500);

}

Here is a video clip.

For video editing I use DaVinci Resolve 16

Spread the love