Sonar Radar System Using Arduino, Servo & Ultrasonic (HC-SR04)




Although they rely on two fundamentally different types of wave transmission, Radio Detection and Ranging (RADAR) and Sound Navigation and Ranging (SONAR) both are remote sensingsystems with important military, scientific and commercial applications. RADAR sends out electromagnetic waves, while active SONAR transmits acoustic (i.e., sound) waves. In both systems, these waves return echoes from certain features or targets that allow the determination of important properties and attributes of the target (i.e., shape, size, speed, distance, etc.). Because electromagnetic waves are strongly attenuated (diminished) in water , RADAR signals are mostly used for ground or atmospheric observations. Because SONAR signals easily penetrate water, they are ideal for navigation and measurement under water.

ULTRASONIC (HC-SR04): The HC-SR04 Ultrasonic Sensor is a very affordable proximity/distance sensor that has been used mainly for object avoidance in various robotics projects . It essentially gives your Arduino eyes / spacial awareness and can prevent your robot from crashing or falling off a table. It has also been used in turret applications, water level sensing, and even as a parking sensor. This simple project will use the HC-SR04 sensor with an Arduino and a Processing sketch to provide a neat little interactive display on your computer screen.

SERVO: A servomotor is a rotary actuator or linear actuator that allows for precise control of angular or linear position, velocity and acceleration. It consists of a suitable motor coupled to a sensor for position feedback.

ARDUINO: Arduino is a computer hardware and software company, project, and user community that designs and manufactures microcontroller kits for building digital devices and interactive objects that can sense and control objects in the physical world.

Teacher Notes

Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.





Connecting wires.


Step 3: IMAGES

Step 4: Code:

  Sonar Radar System
  By nonstopengineering
  Using Arduino,Ultrasonic and Servo
#include  //Servo Library
const int trigPin = 9; //Initializing trigger pin
const int echoPin = 8; //Initializing echo pin
long duration;        
int distance;
Servo myServo; // Creating a servo object for controlling the servo motor
void setup() {
  pinMode(trigPin, OUTPUT); // Sets the trigPin as an Output
  pinMode(echoPin, INPUT); // Sets the echoPin as an Input
  Serial.begin(9600);     //Sets Baud rate for Serial communication
  myServo.attach(10); // Defines on which pin is the servo motor attached
void loop() {
  for(int a=0;a<=180;a++) // rotates the servo motor from 0 to 180 degrees
  myServo.write(a); //Sending stes to servo which servo should move
  distance = Distance(); // Calls a function for calculating the distance measured by the Ultrasonic sensor for each degree
  Serial.print(a); // Sends the current degree into the Serial Port
  Serial.print(","); // Sends addition character right next to the previous value needed later in the Processing IDE for indexing
  Serial.println(distance); // Sends the distance value into the Serial Port
  for(int b=180;b>0;b--) //   Rversing rotation from 180 to 0 degrees
  distance = Distance();
int Distance() // Function for calculating the distance measured by the Ultrasonic sensor
  digitalWrite(trigPin, LOW);  // Sets the trigPin on LOW state for 2 micro seconds
  digitalWrite(trigPin, HIGH); // Sets the trigPin on HIGH state for 10 micro seconds
  digitalWrite(9, LOW);
  duration = pulseIn(echoPin, HIGH); // Reads the echoPin, returns the sound wave travel time in microseconds
  distance= duration*0.034/200; //Converting distance into meters
  return distance;


Step 6: WORKING:

Arduino Contest 2016

Participated in the
Arduino Contest 2016

First Time Authors Contest 2016

Participated in the
First Time Authors Contest 2016

Be the First to Share


    • Made with Math Contest

      Made with Math Contest
    • Multi-Discipline Contest

      Multi-Discipline Contest
    • Robotics Contest

      Robotics Contest

    7 Discussions


    2 years ago

    i made it all working except i cant get the radar program on the pc can you help please

    1 reply

    2 years ago

    dont suppose youve tried this underwater?


    2 years ago

    Looking at your code, I don't see how this is an effective radar of sorts but
    rather just seems to be a sweeping measurement/ranging system. For a
    "Radar" of sorts don't you need to essentially map out ranges/sounding
    for each arc of rotation? Wouldn't you need to then compare the active/recent
    sweeps of the ultrasonic against the saved sweep map/data to determine the
    location of a new object or the movement of an object?

    1 reply

    Reply 2 years ago

    Dude you are wrong a little bit. The above code with give you angle and distance, which we can you in many ways.

    This is just one step from me. Now its depends on you how you use.


    2 years ago

    Thanks for sharing :)