Introduction: Arduino - Ultrasonic Sensor HC-SR04
In this Arduino Tutorial we will learn how the HC-SR04 Ultrasonic Sensor works and how to use it with the Arduino Board.
Step 1: Hardware Required:
- Arduino Board
- Ultrasonic Sensor HC-SR04
- 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
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.
Get the Code:
Step 4: If It Helps, Please Subscribe
First of all, I would like to thank you for reading this guide ! I hope it helps you.
If you want to support me, you can subscribe my channel and watch my videos.
5 years ago
Is there any specific reason to connect Trig and Echo pins to arduino digital pins 9 and 10 ? Or is it required to connect only to PWM pins ?
Reply 5 years ago
no, select any pin you want