Qauid-i-Azam University Islamabad
Department Electronics
ELE-397 Microprocessor Based LAB
“Radar System”
Report
Names of student ID
NASEEB ULLAH 04101613044
BABAR ALI 04101613035
ABDUL QADEER KHAN 04101613018
Submitted to
Sir . Adil
Radar System
“Rangefinder”
Abstract:
A rangefinder is a device that measures the distance from the target to the
observer, for the purposes of surveying, determining focus in photography, or
accurately aiming a weapon . In this technical project, we make a simple radar
using the ultrasonic sensor, this radar works by measuring a range from 3cm to 40
cm as non-contact distance, with angle range between 15˚ and 165˚.The
movement of the sensor is controlled by using a small servo motor. Information
received from the sensor will be used by “Processing Development Environment”
software to illustrate the result on a PC screen.
1- Introduction:
Radar is an object detection system that uses electromagnetic waves to identify
range, altitude, direction, or speed of both moving and fixed objects such as
aircraft, ships, vehicles, weather formations, and terrain. When we use ultrasonic
waves instead of electromagnetic waves, we call it ultrasonic radar .
The main components in any ultrasonic radar are the ultrasonic Sensors.
Ultrasonic sensors work on a principle similar to radar or sonar which evaluates
attributes of a target by interpreting the echoes from radio or sound waves
respectively.
Radar’s information will appear in different ways. Basic and old radar station
used sound alarm or LED, modern radar uses LCD display to show detailed
information of the targeted object. We use Computer screen to show the
information (distance and angle).
Fig(1).Google auto-drive car
2- Tools:
2-1 Arduino Board UNO Model:
Arduino is a hardware and software company, project, and user community
that designs and manufactures computer open-source hardware, open-source
software, and microcontroller-based kits for building digital devices and
interactive objects that can sense and control physical devices.
The project is based on microcontroller board designs. The board provides
sets of digital and analog Input/output (I/O) pins that can interface to various
expansion boards (termed shields) and other circuits Fig (2-1). The boards feature
serial communication interfaces, including Universal Serial Bus (USB) on UNO
model, for loading programs from personal computers .
For programming the microcontrollers, the Arduino project provides an
integrated development environment (IDE) makes it easy to write code and
upload it to the board. It runs on Windows, Mac OS X, and Linux. The
environment is written in Java and based on Processing and other open-source
software. This software can be used with any Arduino board Fig (2-2).
Fig(2-1).Arduino UNO
Fig(2-2). IDE Software.
2-2 Processing:
Processing is an open source computer programming language and integrated
development environment (IDE) built for the electronic arts, new media art, and
visual design communities with the purpose of teaching the fundamentals of
computer programming in a visual context Fig (3).
Specifications
Free to download and open source
Interactive programs with 2D, 3D or PDF output
OpenGL integration for accelerated 2D and 3D
For GNU/Linux, Mac OS X, and Windows
Over 100 libraries extend the core software
Well documented, with many books available
Fig(3). Software and processing
2-3 Ultrasonic sensors HC- SR04:
Ultrasonic ranging module HC - SR04 provides 2cm - 400cm non-contact
measurement function, the ranging accuracy can reach to 3mm. The modules
include ultrasonic transmitters, receiver, and control circuit, within measuring
angle 15 degrees Fig (4).
The basic principle of work. Fig (4-2).
(1) Using IO trigger for at least 10us high-level signal,
(2) The Module automatically sends eight 40 kHz and detect whether there is a
pulse signal back.
(3) IF the signal back, through high level, time of high output IO duration is
the time from sending ultrasonic to returning.
Test distance = (high level time × velocity of sound (340M/S) / 2.
Wire connecting directly as following:
5V Supply
Trigger Pulse Input
Echo Pulse Output
0V Ground
Fig(4-1). Ultrasonic. HC- SR04
Fig(4-2). Work principle.
2-4 Servo Motor tower pro micro servo 9g:
Tiny and lightweight with high output power. The servo can rotate
approximately 180 degrees (90 in each direction), and works just like the standard
kinds but smaller Fig (5). You can use any servo code, hardware or library to
control these servos.
Specifications
Weight: 9 g
Dimension: 22.2 x 11.8 x 31 mm approx.
Stall torque: 1.8 kg f cm
Operating speed: 0.1 s/60 degree
Operating voltage: 4.8 V (~5V)
Temperature range: 0 ºC – 55 ºC
Fig(5).ServoMotor
Tower Pro Micro Servo 9g
Fig(6).[Link] code
2-5 Breadboards:
A breadboard is a construction base for prototyping of electronics. Originally it
was literally a bread board, a polished piece of wood used for slicing bread. In the
1970s the solderless breadboard (AKA plug board, a terminal array board)
became available and nowadays the term "breadboard" is commonly used to refer
to these. "Breadboard" is also a synonym for "prototype".[6]Fig (7).
Fig(7).Breadboard
3- Work procedure:
Components needed for this Project
Arduino Board UNO Model.
Processing software.
Ultrasonic sensor HC- SR04.
Servo Motor tower pro micro servo 9g.
Breadboard and Jump Wires.
3-1 Circuit Diagram
We connected the Ultrasonic Sensor HC-SR04 to the pins number 10 and 11
on the Arduino Board.
TrigPin = 10.
EchoPin = 11.
And the servo motor to the pin number 12 on the Arduino Board. Fig (8)
shows circuit structure for the project.
MyServo = 13.
Fig(8). Circuit Diagram
We made a base form plastic box for servo motor and ultrasonic that allows
to move within 180˚. Fig(9) shows the ultrasonic base of our
servo motor
project
Fig(9).Ultrasonic Base
Here’s the final appearance of the project:
Fig(10).Final appearance
3-2 Write and upload sketch to Arduino
We wrote a sketch in IDE, for this project we need to include some
libraries. We use (Serial.h) built-in library for transfer data through the
serial
port with processing software. Therefore, we add the last library for servo
motor (Servo.h) and added NewPing library which includes the last update
functions and features for the ultrasonic sensor. Fig (11).
Fig(11).Add library to IDE
Then, we make a code and upload it to the Arduinoboard to enable the interaction
between the Arduino and the Processing IDE Fig(12).
Fig(12).Project Code
3-3 Write and upload sketch to Processing
The values for the angle and the distance measured by the sensor will be
read from the Arduino board by the Processing IDE using the SerialEvent()
function which reads the data from the Serial Port. Thesevalues will be used
for drawing the lines, the detected objects and some texts.
For drawing the radar display we make this function drawRadar() which consist of
arc() and line() functions Fig(13).
Fig(13). The radar workspace
Fig(14). Radar lines
For drawing the moving lines we make this function drawLine(). Its center
of rotation is set with the translate() function and using the line() function in
which the iAngle variable is used to redraw the line for each degree. Fig (14).
Fig(15). Radar detected lines
For drawing the detected objects we made the drawObject() function. It
receives the distance from the ultrasonic sensor, transforms it into pixels. Then,
using the angle detected by the sensor it draws the object on the radar screen
Fig
(15).
To illustrate the text on the screen, we make the draw Text() function that
draws texts on some particular locations. All of these functions are called in
the maindraw( ) function which is repeated in each iteration to draw the screen
details.
We are using the fill( ) function with 2 parameters for simulating motion
blur and slow fade of the moving line. Fig (16) shows the final
appearance of the radar screen:
Fig(16). Radar Screen
Conclusion
Radar is normally used to determine velocity, range, and position of an
object. In this technical project, we read the distance and angles of detected
objects in order to convert these data into visual information. The performance of
our project is so good. It works smoothly to detect objects within the designed
range. The screen shows the information clearly with enough delay for the user to
read it. This project could be helpful for object avoidance/ detection applications.
This project could easily be extended and could be used in any systems may need
it.
References
[1] Ultrasonic RADAR/Electronic Design Lab (ELE-397)
Submitted by:Naseebulla Guide: Dr. Adil Khan.
[2] [Link]
[3] [Link]
[4] Servo motor datasheet.
[5] [Link]
[6] [Link]