In this Arduino Tutorial we will learn how the HC-SR04 Ultrasonic Sensor works and how to use it with Buzzer and LED.
Step 1: Hardware Required
- Arduino Board
- Ultrasonic Sensor HC-SR04
- 220ohm Resistor
- Breadboard and Jump Wires
Step 2: Connections
- The HC-SR04 Ultrasonic Module has 4 pins, Ground, VCC, Trig and Echo.
The Ground and the VCC pins of the module needs to be connected to the Ground and the 5 volts pins on the Arduino Board respectively and the trig and echo pins to any Digital I/O pin on the Arduino Board.
- The HC-SR04 sensor attach to the Breadboard
- The Sensor VCC connect to the Arduino Board +5V
- The Sensor GND connect to the Arduino Board GND
- The Sensor Trig connect to the Arduino Board Digital I/O 9
- The Sensor Echo connect to the Arduino Board Digital I/O 10
Buzzer and LED
- The Buzzer attach to the Breadboard
- The Buzzer long leg (+) connect to the Arduino Board Digital 11
- The Buzzer short leg (-) connect to the Arduino Board GND
- The LED attach to the Breadboard - The Resistor connect to the LED long leg (+)
- The Resistor other leg (from LED's long leg) connect to the Arduino Board Digital 13
- The LED short leg (-) connect to the Arduino Board GND
Step 3: Code
- First you have to define the Trig and Echo pins. In this case they are the pins number 9 and 10 on the Arduino Board and they are named trigPin and echoPin. Then you need a Long variable, named “duration” for the travel time that you will get from the sensor and an integer variable for the distance.
- In the setup you have to define the trigPin as an output and the echoPin as an Input and also start the serial communication for showing the results on the serial monitor.
- If the object is 10 cm away from the sensor, and the speed of the sound is 340 m/s or 0.034 cm/µs the sound wave will need to travel about 294 u seconds. But what you will get from the Echo pin will be double that number because the sound wave needs to travel forward and bounce backward. So in order to get the distance in cm we need to multiply the received travel time value from the echo pin by 0.034 and divide it by 2.