Course Content
The Arduino UNO
In the following three lessons, you will get to know your microcontroller - the Arduino UNO. You will learn more about its history, its functions, and most importantly: how to power it.
0/3
The Arduino IDE
For beginners, the Arduino IDE (Integrated Development Environment) is usually the first choice – and for good reason. You can program all Arduino boards with it and manage libraries for sensors, displays, etc. It also features the "Serial Monitor," where you can output data and troubleshoot.
0/2
Your first sketch
In the following lessons, you'll get to know the basic structure of an Arduino sketch and write your own programs. Let's get started!
0/2
The Serial Monitor
Now let's turn our attention to the Serial Monitor – a feature of the Arduino IDE that you will use in virtually every one of your projects.
0/2
Variables
No programmer can avoid variables. In the following lessons, you'll learn what types there are and what you can do with them.
0/3
Controlling an LED
Now it's time for more hardware! In the next lessons, you'll connect an LED to your Arduino. You'll first turn it on and off with a button. After that, you'll build a dimmer to control the brightness of the LED.
0/6
Lie Detector
Discover the entertaining side of electronics by building your own simple lie detector with your Arduino. This fun project uses basic components to measure skin resistance changes when someone might be telling a fib, perfect for adding some playful suspense to your next gathering with friends.
0/1
There’s music inside!
Your Arduino can do much more than "just" make LEDs shine at different brightness levels. For example, it can make music. In the following lesson, you'll learn how to use a piezo buzzer and coax some charming tones out of it.
0/3
A Theremin with Ultrasound
Do you want to make a bit more music? In this lesson, you'll build a theremin that you operate with your HC-SR04 ultrasonic sensor. You move your hand toward and away from the sensor - your Arduino calculates the pitch of the tones from the distance, which are then played through your piezo buzzer.
0/5
The Sound Sensor
Ready to explore how your Arduino can respond to sounds? In this lesson, we'll connect a sound sensor to your Arduino and learn how to make it respond to both digital noise detection and analog volume levels.
0/1
Build an Alarm System
In this project, you will build your own alarm system. It consists of three components: the sound sensor, which you have just learned about, the active piezo buzzer, and the RGB LED.
0/2
The DHT11 Temperature Sensor
Let's move on to another component that you'll certainly use in many projects: the temperature sensor. In this case, the popular DHT11, which can measure not only temperature but also humidity.
0/3
Arduino Course for Beginners

Let’s continue with distance measurement. Your HC-SR04 will measure the distance to an object in front of it – e.g., your hand. The distance in centimeters will then appear in your Serial Monitor.

First, define two constants – the Arduino pins to which you’ve connected the TRIG and ECHO pins of the HC-SR04. You define a constant with const, in addition to the type. Unlike a variable, the value stored in it cannot be changed elsewhere in the code.

const int trig = 7;
const int echo = 6;

 

Next, you need two variables. One for the duration between sending and receiving the ultrasonic signal. Your HC-SR04 sends out a signal, which is reflected by an object in front of it and received again by the sensor – you store the elapsed time in the variable duration.

The second variable distance is needed to later calculate the distance to the object from the elapsed time – more on this in a moment.

int duration = 0;
int distance = 0;

___STEADY_PAYWALL___

The Setup Function

The setup in the sketch should hold no surprises for you. Here you simply start the Serial Monitor and define the pinMode for trig and echo. You send the ultrasonic signal out through the trig pin (so OUTPUT) – the echo pin then receives it again (so INPUT).

void setup() {
  Serial.begin (9600);
  pinMode(trig, OUTPUT);
  pinMode(echo, INPUT);
}

 

The Loop

Now it gets exciting. First, you send a signal from the HC-SR04 by setting the trig pin to HIGH for 10ms and then back to LOW.

digitalWrite(trig, HIGH);
delay(10);
digitalWrite(trig, LOW);

 

Then you measure the time it takes for the signal to return to the echo pin. You do this with the pulseIn() function. You store the elapsed time in the variable duration.

duration = pulseIn(echo, HIGH);

 

Now, you don’t actually want to know the time, but the distance of the object from the sensor. For this, you need a small calculation. The signal (or ultrasonic wave) from the sensor travels through the air at the speed of sound. This speed is 343.2 m/s at room temperature.

For the sensor, however, we need this value in centimeters per microsecond. Converted, that’s 0.03432 cm/µs.

One aspect is still missing: we’re not interested in the entire time span, but only the time until the signal reaches the object. Therefore, simply divide the value in the duration variable by 2.

The distance is now calculated as half of the duration * the speed of sound in cm/µs.

distance = (duration / 2) * 0.03432;

 

Finally, output the distance in the Serial Monitor and wait with a small delay until the next measurement:

Serial.print(distance);
Serial.println(" cm");

delay(500);

 

And that’s it. Load the sketch from the Exercise Files for this lesson onto your Arduino and try out your new distance meter right away!

In the next lesson, you’ll install a piezo alongside the sensor and turn it into an ultrasonic theremin with a bit of code.

Exercise Files
measuring_distances.zip
Size: 1.41 KB
We don't track you. Enjoy your cookies while making awesome projects!