Sie sind auf Seite 1von 40



1.1 Introduction
Moving through an unknown environment becomes a real challenge when we can’t
rely on our own eyes. Since dynamic obstacles usually produce noise while moving,
blind people develop their sense of hearing to localize them. A white cane is the most
common mobility aid for the visually challenged. However, it does not give
information about the obstacles above knee level and those which are at a distance
greater than 1m. Even though guide dogs were the initial companion of the blind, later
on technologies played a vital role. Walking sticks with adjustable length, elbow canes,
were developed in the market to guide the visually challenged. However, these
attempts were not completely successful in assisting the user.
To alleviate these issues the Smart electronic aid is designed in such a way that it
includes an Ultrasonic sensor for Obstacle detection, supported with heat and water
detection. In this system, Vibratory motors are used to inform about the moving
obstacles. The intensity of vibration depends on the speed of the moving obstacles.

1.2 Aim of the Project

The smart walking stick is a very interesting project and ideal for beginners. The
main aim of this stick is to alert the visually impaired about an obstacle in his way.
Whenever the sensor detects any object in a range of 60 cm it triggers the buzzer. This
project can also be used as a distance finder. (by using serial monitor)
This project is designed to guide a visually impaired person to walk and avoid
bumping into obstacles. Low cost ultrasonic rangefinders along with a Arduino is used
to measure the distance to obstacles and if they are close enough provide a feedback
to the user in form of beeps or vibrations.

1.3 Methodology involved for the Project

Based on the block diagram above, as you can see, this is how the connection
between components happen. After these two being power on, the blind people can
start using the Blind Stick Navigator. Based on the observation on the traditional white
cane, the blind people will always swing around the blind stick to get a confirmation
on their surroundings. But, with Blind Stick Navigator, it will help them to get vibrate
notification on the obstacle at the middle and lower sight. The obstacle detected using
ultrasonic sensor HC-SR04.

The components Required

1. Any kind of walking Stick

2. Ultrasonic Sensor
3. Buzzer
4. Arduino (Uno)

5. Laptop or a Computer with Arduino Software
6. Battery pack or Power bank (to power Arduino)
7. Few Jumper wires

1.4 Significance and Applications

Blindness is a state of lacking the visual perception due to physiological or

neurological factors. The partial blindness represents the lack of integration in the growth
of the optic nerve or visual center of the eye, and total blindness is the full absence of the
visual light perception. In this work, a simple, cheap, friendly user, smart blind guidance
system is designed and implemented to improve the mobility of both blind and visually
impaired people in a specific area.

The proposed work includes a mini hand stick to help the blind person to navigate
alone safely and to avoid any obstacles that may be encountered, whether fixed or mobile,
to prevent any possible accident. The main component of this system is the ultrasonic
sensor which is used to predetermine area around blind by emitting-echo waves. The
reflected signals received from the barrier objects are used as inputs to Arduino. The
Arduino is then used to determine the distance of the objects around the blind person. It
also controls the peripheral components that alert the user about obstacle’s. The
implemented system is cheap, fast, and easy to use and an innovative affordable solution
to blind and visually impaired people in third world countries.

1.5 Organization of the Work

Chapter 1: Overview. It signifies the need of Smart walking stick for the Blind Persons.

Chapter 2: Block Diagram and Working. It describes about the working of the project.

Chapter 3: Main Components. It describes the functioning of the components used

(Arduino, LCD & Ultrasonic Sensor Module).

Chapter 4: Main Program. It consists of Interfacing the Ultrasonic sensor with Arduino
Code and LCD Code.

Chapter 5: Applications. It describes the applications and limitations of the project.

Chapter 6: Result analysis and Conclusion. The results obtained in the project are
mentioned in this chapter and its future scope in providing utmost security is explained.



2.1 Introduction

Figure 2.1 Circuit Diagram

Many people suffer from serious visual impairments preventing them from
travelling independently. Accordingly, they need to use a wide range of tools and
techniques to help them in their mobility.

One of these techniques is orientation and mobility specialist who helps the visually
impaired and blind people and trains them to move on their own independently and safely
depending on their other remaining senses. Another method is the guide dogs which are
trained specially to help the blind people on their movement by navigating around the
obstacles to alert the person to change his/her way.

However, this method has some limitations such as difficulty to understand the
complex direction by these dogs, and they are only suitable for about five years. The cost
of these trained dogs is very expensive, also it is difficult for many of blind and visually
impaired persons to provide the necessary care for another living being. There is an
international symbol tool of blind and visually impaired people just like the white cane
with a red tip which is used to enhance the blind movement. Nowadays, different types of
these canes have been used such as the white cane, the smart cane, and the laser cane.
However, this tool has several constraints: long length of the cane, limitations in
recognizing obstacles, and difficulty to keep it in public places. Recently, many techniques
have been developed to enhance the mobility of blind people that rely on signal processing
and sensor technology.

This technology is set to make lives better for the visually impaired human kind.
The smart blind stick is integrated with ultrasonic sensor along with light and water
sensing. Ultrasonic sensors detects the obstacles ahead using ultrasonic waves. The sensor
senses the obstacle and passes this data to microcontroller. The microcontroller then
processes the data and calculates the distance. If the obstacle is far away then the circuit
does nothing. If the obstacle is nearby then microcontroller send a signal to sound a buzzer.
We have two modes for the distance. They are indoor mode and outdoor mode. Indoor
mode, Objects that are 1.8meteres away are detected. Outdoor mode, objects that are
3meters away are detected. If the sensor detects the water then the stick vibrates through
the vibration motor which is linked with arduino. The buzzer and vibration motor is kept
to alert the blind. It also detects the brightness or darkness of light in the room through
light detector. we use RF based remote to help the blind find the stick if they forget where
they kept it.

2.2 Working

Now we have seen the working of Ultrasonic sensor, so we have some idea what
we need to do to get the values from it. First, we need to generate a signal of 10
microseconds and then send it over to trigger pin. After sending the trigger pin we then
need to read the echo pin and wait for it to get HIGH. Once it got HIGH then we need to
count the time for how long it remained HIGH. Based on this time, we are going to
calculate the distance of the object from the ultrasonic sensor.

Figure 2.2 Working

Now if you check in the Sonar Sensor() function, we are generating a pulse of 10
microsecond and sending it to trig Pin, which is the trigger pin of our ultrasonic sensor.

After sending this pulse were using a function pulse In() , its a built-in Arduino
function and is used to check for how long the echo Pin remains HIGH. This value is
further saved in the duration value and after that we have divided this duration by 2 because
the pulse is first sent and then received so in actual it covers double distance, so we need
to divide it by 2 in order to get distance between object and the sensor. Furthermore, it is
again divided by 29.1, which is basically the speed of ultrasonic sound and finally we saved
it in a variable named distance which is now in centimeters.



3.1 List of Components

1. LCD Display
2. Ultrasonic Sensor
3. Buzzer
4. Arduino (Uno)
5. Connecting wires
6. Vibrating motor

3.2 LCD Display

Figure 3.1 LCD Connection to Arduino

We come across LCD displays everywhere around us. Computers, calculators,

television sets, mobile phones, digital watches use some kind of display to display the time.

An LCD is an electronic display module which uses liquid crystal to produce a
visible image. The 16×2 LCD display is a very basic module commonly used in DIYs and
circuits. The 16×2 translates o a display 16 characters per line in 2 such lines. In this LCD
each character is displayed in a 5×7 pixel matrix.

Figure 3.2 LCD Display Pins

RS(Register select)

A 16X2 LCD has two registers, namely, command and data. The register select is used to
switch from one register to other. RS=0 for command register, whereas RS=1 for data

Command Register: The command register stores the command instructions given to the

A command is an instruction given to LCD to do a predefined task like initializing
it, clearing its screen, setting the cursor position, controlling display etc. Processing for
commands happen in the command register.

Data Register: The data register stores the data to be displayed on the LCD. The data is
the ASCII value of the character to be displayed on the LCD. When we send data to LCD
it goes to the data register and is processed there. When RS=1, data register is selected.

Displaying Custom Characters on 16X2 LCD

Generating custom characters on LCD is not very hard. It requires the knowledge
about custom generated random access memory (CG-RAM) of LCD and the
LCD chip controller. Most LCDs contain Hitachi HD4478 controller. CG-RAM is the
main component in making custom characters. It stores the custom characters once
declared in the code. CG-RAM size is 64 byte providing the option of creating eight
characters at a time. Each character is eight byte in size.

CG-RAM address starts from 0x40(Hexadecimal) or 64 in decimal. We can

generate custom characters at these addresses. Once we generate our characters at
these addresses, now we can print them on the LCD at any time by just sending
simple commands to the LCD.


Ultrasonic Definition:
The human ear can hear sound frequency around 20HZ ~ 20KHZ, and ultrasonic
is the sound wave beyond the human ability of 20KHZ .

Ultrasonic Distance Measurement Principle:

Transmitter part of ultrasonic module emits ultrasonic high frequency waves in the
form of of pulses. After collision of these waves with any object, these waves detect by
microphone. Time taken by these waves from transmitter to receiver is used to measure
distance from any object. There are many ultrasonic sensor modules are available in market
but I will be using HC-SR04. This ultrasonic module is initiated with pulse of 10us.

The distance from any object is calculated using following formula:

Distance = speed x time;

We know that the speed of sound in air is 20C which is equal to 344 meter per
second. The time given in above formula should also be divided by two. Because ultrasonic
waves travel from transmitter and then go back to receiver by travelling same distance. So
the formula to calculate distance becomes:

Distance = 344 x time / 2 meter;

Figure 3.1 Measurement Principle of Ultrasonic Sensor

HC-SR04 Specifications:

 Working Voltage: DC 5V
 Working Current: 15mA
 Working Frequency: 40Hz
 Max Range: 4m
 Min Range: 2cm
 Measuring Angle: 15 degree
 Trigger Input Signal: 10µS TTL pulse
 Echo Output Signal Input TTL lever signal and the range in proportion

Wire Connecting Direct is as Follows:
 5V Supply

 Trigger Pulse Input

 Echo Pulse Output

 0V Ground
 VCC: +5VDC

 Trig: Trigger (INPUT)

 Echo: Echo (OUTPUT)

Figure 3.2 Ultrasonic Sensor

3.3.1 How it Works

It emits an ultrasound at 40 000 Hz which travels through the air and if there is an
object or obstacle on its path It will bounce back to the module. Considering the travel time
and the speed of the sound you can calculate the distance.

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

In order to generate the ultrasound, you need to set the Trig on a High State for 10
µs. That will send out an 8-cycle sonic burst which will travel at the speed sound and it
will be received in the Echo pin. The Echo pin will output the time in microseconds the
sound wave traveled.

For example, 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.


Figure 3.3 Buzzer

A buzzer or beeper is audio signaling device, which is
mechanical, electromechanical, or piezoelectric. Typical uses of buzzers and beepers
include alarm devices, timers, and confirmation of user input such as a mouse click or

It requires a DC voltage to operate, it should generally be between 3 V and 28 V,

depending on the model. A buzzer designed to operate at 6 V generally works very well
for any supply voltage between 4 V and 8 V, and a buzzer designed to operate at 12 V can
work perfectly at a voltage between 6 V and 28 V (see characteristics given by the
manufacturer for not making stupidity). There are also buzzers that work directly on the
AC mains 230 V. This type of buzzer is convenient to use, because unlike piezoelectric
buzzers simple (simple piezoelectric transducers without associated electronics), it has no
work, except of course the eventual control stage which will enable it. He provides a simple
DC voltage and presto, it sounds.

It is simply the assembly in a single housing, a piezoelectric transducer and an
electronic control (square-wave signal generator). Everything is then supplied with a
simple DC voltage, usually between 3V and 20V, and requires a current of 10 mA and 30
mA (buzzer consumption depends mainly on the voltage used). The implementation of
such a buzzer becomes as easy as using a electromechanical buzzer. Some beepers
"electronic" with integrated oscillator, producing a continuous sound, while others produce
a sound interrupted (chopped).

3.5 Arduino(UNO)

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 Arduino Uno is a microcontroller board based on
the ATmega328 (datasheet). It has 14 digital input/output pins (of which 6 can be used as
PWM outputs), 6 analog inputs, a 16 MHz crystal oscillator, a USB connection, a power
jack, an ICSP header, and a reset button. It contains everything needed to support the
microcontroller; simply connect it to a computer with a USB cable or power it with a AC-
to-DC adapter or battery to get started. The Uno differs from all preceding boards in that it
does not use the FTDI USB-to-serial driver chip. Instead, it features the Atmega8U2
programmed as a USB-to-serial converter. "Uno" means one in Italian and is named to
mark the upcoming release of Arduino 1.0. The Uno and version 1.0 will be the reference
versions of Arduno, moving forward. The Uno is the latest in a series of USB Arduino
boards, and the reference model for the Arduino platform; for a comparison with previous
versions, see the index of Arduino boards.

The project is based on microcontroller board designs, produced by several

vendors, using various microcontrollers. These systems provide sets of digital and
analog Input/output (I/O) pins that can interface to various expansion boards
(termed shields) and other circuits. The boards feature serial communication interfaces,
including Universal Serial Bus (USB) on some models, for loading programs from personal

For programming the microcontrollers, the Arduino project provides an integrated
development environment (IDE) based on a programming language named Processing,
which also supports the languages C and C++.

The first Arduino was introduced in 2005, aiming to provide a low cost, easy way
for novices and professionals to create devices that interact with their environment
using sensors and actuators. Common examples of such devices intended for beginner
hobbyists include simple robots, thermostats, and motion detectors.Arduino boards are
available commercially in preassembled form, or as do-it-yourself kits. The hardware
design specifications are openly available, allowing the Arduino boards to be produced by
anyone. estimated in mid-2011 that over 300,000 official Arduinos had been commercially
produced, and in 2013 that 700,000 official boards were in users' hands. An Arduino board
historically consists of an Atmel 8-, 16- or 32-bit AVR microcontroller (although since
2015 other makers' microcontrollers have been used) with complementary components that
facilitate programming and incorporation into other circuits. An important aspect of the
Arduino is its standard connectors, which let users connect the CPU board to a variety of
interchangeable add- on modules termed shields. Some shields communicate with the
Arduino board directly over various pins, but many shields are individually addressable via
an I²C serial bus many shields can be stacked and used in parallel. Before 2015, Official
Arduinos had used the Atmel megabars series of chips, specifically
the ATmega8, ATmega168, ATmega328, ATmega1280, and ATmega2560. In 2015, units
by other producers were added. A handful of other processors have also been used by
Arduino compatible devices. Most boards include a 5 V linear regulator and a
16 MHz crystal oscillator (or ceramic resonator in some variants), although some designs
such as the LilyPad run at 8 MHz and dispense with the onboard voltage regulator due to
specific form-factor restrictions. An Arduino's microcontroller is also pre-programmed
with a boot loader that simplifies uploading of programs to the on-chip flash memory,
compared with other devices that typically need an external programmer.

This makes using an Arduino more straightforward by allowing the use of an
ordinary computer as the programmer. Currently, optiboot bootloader is the default
bootloader installed on Arduino UNO.

At a conceptual level, when using the Arduino integrated development

environment, all boards are programmed over a serial connection. Its implementation
varies with the hardware version. Some serial Arduino boards contain a level shifter circuit
to convert between RS-232logic levels and transistor–transistor logic (TTL) level signals.
Current Arduino boards are programmed via Universal Serial Bus (USB), implemented
using USB-to-serial adapter chips such as the FTDI FT232. Some boards, such as later-
model Uno boards, substitute the FTDI chip with a separate AVR chip containing USB-to-
serial firmware, which is reprogrammable via its own ICSP header. Other variants, such as
the Arduino Mini and the unofficial Boarduino, use a detachable USB-to-serial adapter
board or cable,Bluetooth or other methods, when used with traditional microcontroller
tools instead of the Arduino IDE, standard AVR in-system programming (ISP)
programming is used.

The Arduino board exposes most of the microcontroller's I/O pins for use by other
circuits. The Decimal, Duemilanove, and currentUno]provide 14 digital I/O pins, six of
which can

produce pulse-width modulated signals, and six analog inputs, which can also be
used as six digital I/O pins. These pins are on the top of the board, via female 0.1-inch
(2.54 mm) headers. Several plug-in application shields are also commercially available.

The Arduino Nano, and Arduino-compatible Bare Bones Boardand
Boarduinoboards may provide male header pins on the underside of the board that can plug
into solderless breadboards.

The Arduino project provides the Arduino integrated development

environment (IDE), which is a cross-platform application written in the programming
language Java.It originated from the IDE for the languages Processing and Wiring. It is
designed to introduce programming to artists and other newcomers unfamiliar with
software development. It includes a code editor with features such assyntax
highlighting, brace matching, and automatic indentation, and provides simple one-click
mechanism to compile and load programs to an Arduino board. A program written with
the IDE for Arduino is called a "sketch".The Arduino project provides the
Arduino integrated development environment (IDE), which is a cross-platform application
written in the programming language Java. It originated from the IDE for the
languages Processing and Wiring. It includes a code editor with features such as text
cutting and pasting, searching and replacing text, automatic indenting, brace matching,
and syntax highlighting, and provides simple one-click mechanisms to compile and upload
programs to an Arduino board. It also contains a message area, a text console, a toolbar
with buttons for common functions and a hierarchy of operation menus.

The Arduino IDE supports the languages C and C++ using special rules of code
structuring. The Arduino IDE supplies asoftware library from the Wiring project, which
provides many common input and output procedures. User-written code only requires two
basic functions, for starting the sketch and the main program loop, that are compiled and
linked with a program stub main () into an executable cyclic executive program with
the GNU toolchain, also included with the IDE distribution. The Arduino IDE employs the
program avrdude to convert the executable code into a text file in hexadecimal encoding
that is loaded into the Arduino board by a loader program in the board's firmware.


Looking at the board from the top down, this is an outline of what you will see (parts of
the board you might interact with during normal use are highlighted):

Starting clockwise from the top center:

 Analog Reference pin (orange)

 Digital Ground (light green)
 Digital Pins 2-13 (green)
 Digital Pins 0-1/Serial In/Out - TX/RX (dark green) - These pins cannot be used for digital
i/o (digitalRead and digitalWrite) if you are also using serial communication (e.g. Serial.
 Reset Button - S1 (dark blue)
 In-circuit Serial Programmer (blue-green)
 Analog In Pins 0-5 (light blue)
 Power and Ground Pins (power: orange, grounds: light orange)
 External Power Supply In (9-12VDC) - X1 (pink)

 Toggles External Power and USB Power (place jumper on two pins closest to desired
supply) - SV1 (purple)
 USB (used for uploading sketches to the board and for serial communication between the
board and the computer; can be used to power the board).


In addition to the specific functions listed below, the digital pins on an Arduino board can
be used for general purpose input and output via the pinMode(), digitalRead(),
and digitalWrite() commands. Each pin has an internal pull-up resistor which can be turned
on and off using digitalWrite() (w/ a value of HIGH or LOW, respectively) when the pin
is configured as an input. The maximum current per pin is 40 mA.

 Serial: 0 (RX) and 1 (TX). Used to receive (RX) and transmit (TX) TTL serial data. On
the Arduino Diecimila, these pins are connected to the corresponding pins of the FTDI
USB-to-TTL Serial chip. On the Arduino BT, they are connected to the corresponding pins
of the WT11 Bluetooth module. On the Arduino, Mini and LilyPad Arduino, they are
intended for use with an external TTL serial module (e.g. the Mini-USB Adapter).
 External Interrupts: 2 and 3. These pins can be configured to trigger an interrupt on a
low value, a rising or falling edge, or a change in value. See the attachInterrupt() function
for details.
 PWM: 3, 5, 6, 9, 10, and 11. Provide 8-bit PWM output with the analogWrite() function.
On boards with an ATmega8, PWM output is available only on pins 9, 10, and 11.
 BT Reset: 7. (Arduino BT-only) Connected to the reset line of the bluetooth module.
 SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). These pins support SPI communication,
which, although provided by the underlying hardware, is not currently included in the
Arduino language.
 LED: 13. On the Diecimila and LilyPad, there is a built-in LED connected to digital pin
13. When the pin is HIGH value, the LED is on, when the pin is LOW, it's off.

Analog Pins

In addition to the specific functions listed below, the analog input pins support 10-bit
analog-to-digital conversion (ADC) using the analogRead() function. Most of the analog
inputs can also be used as digital pins: analog input 0 as digital pin 14 through analog input
5 as digital pin 19. Analog inputs 6 and 7 (present on the Mini and BT) cannot be used as
digital pins.

 I2C: 4 (SDA) and 5 (SCL). Support I2C (TWI) communication using the Wire
library (documentation on the Wiring website).

Power Pins

 Vin (sometimes labelled "9V"): The input voltage to the Arduino board when it's using
an external power source (as opposed to 5 volts from the USB connection or other regulated
power source). You can supply voltage through this pin, or, if supplying voltage via the
power jack, access it through this pin. Note that different boards accept different input
voltages ranges, please see the documentation for your board. Also note that
the LilyPad has no VIN pin and accepts only a regulated input.
 5V: The regulated power supply used to power the microcontroller and other components
on the board. This can come either from VIN via an on-board regulator, or be supplied by
USB or another regulated 5V supply.
 3.3V: (Diecimila-only) A 3.3-volt supply generated by the on-board FTDI chip.
 GND: Ground pins.

Other Pins

 AREF: Reference voltage for the analog inputs. Used with analogReference().
 Reset: Bring this line LOW to reset the microcontroller. Typically used to add a reset
button to shields which block the one on the board.

The Arduino IDE supports the languages C and C++ using special rules to organize
code. The Arduino IDE supplies a software library called Wiring from the Wiring project,
which provides many common input and output procedures. A typical Arduino C/C++
sketch consist of two functions that are compiled and linked with a program
stub main() into an executable cyclic executive program:

 Setup (): a function that runs once at the start of a program and that can initialize
 Loop (): a function called repeatedly until the board powers off.

setup ()

The setup () function is called when a sketch starts. Use it to initialize variables, pin
modes, start using libraries, etc. The setup Example

int buttonPin = 3;

void setup ()


pinMode(buttonPin, INPUT);

void loop ()

// ...

 Function will only run once, after each powerup or reset of the Arduino board.

loop ()
After creating a setup () function, which initializes and sets the initial values, the loop()
function does precisely what its name suggests, and loops consecutively, allowing your
program to change and respond. Use it to actively control the Arduino board.


const int buttonPin = 3;

void setup ()


pinMode(buttonPin, INPUT);

// loop checks the button pin each time,

// and will send serial if it is pressed

void loop ()

if (digitalRead(buttonPin) == HIGH)




delay (1000);


1- Ready to Use: The biggest advantage of Arduino is its ready to use structure. As
Arduino comes in a complete package form which includes the 5V regulator, a burner, an
oscillator, a micro-controller, serial communication interface, LED and headers for the
connections. You don't have to think about programmer connections for programming or
any other interface. Just plug it into USB port of your computer and that's it. Your
revolutionary idea is going to change the world after just few words of coding.

2- Examples of codes: Another big advantage of Arduino is its library of examples present
inside the software of Arduino. I'll explain this advantage using an example of voltage. For
example, if you want to measure voltage using ATmega8 micro-controller and want
to display the output on computer screen then you must go through the entire process. The
process will start from learning the ADC's of micro-controller for measurement, went
through the learning of serial communication for display and will end at USB - Serial

3- Effortless functions: During coding of Arduino, you will notice some functions which
make the life so easy. Another advantage of Arduino is its automatic unit conversion
capability. You can say that during debugging you don't have to worry about the unit’s
conversions. Just use your all force on the main parts of your projects. You don't have to
worry about side problems.

4- Large community: There are many forums present on the internet in which people are
talking about the Arduino. Engineers, hobbyists and professionals are making their projects
through Arduino. You can easily find help about everything. Moreover, the Arduino
website itself explains each function of Arduino.

So, we should conclude the advantage of Arduino by saying that during
working on different projects you just must worry about your innovative idea. The
remaining will handle by Arduino itself.

Real-Time Applications of Arduino Uno Board

1. Arduino Based Home Automation System
The project is designed by using Arduino uno board for the development of
home automation system with Bluetooth which is remotely controlled and operated by an
Android OS smart phone. Houses are becoming smarter and well developed by using such
kind of advanced technologies. Modern houses are gradually increasing the way of design
by shifting to centralized control system with remote controlled switches instead of
conventional switches.
2.Arduino based Auto Intensity Control of Street Lights
As the intensity is cannot be controlled by using High Intensity Discharge (HID) lamps
power saving is not possible in street lights with these lamps as the density on roads is
decreasing from peak hours of nights to early morning.
3. Arduino Based Solar Streetlight
This project is designed to control the intensity of a LED based street light powerder by
the solar power from a photo voltaic cell using Arduino.
4.The Obstacle Avoidance Robot Operated with Arduino
The main concept of this project is to design a robot using ultrasonic sensors to avoid the
obstacle. A robot is a machine and it is a combination of programs instructions and motors.
It can perform some task with some guidance or automatically.


A wire is a single, usually cylindrical, flexible strand or rod of metal. Wires are
used to bear mechanical loads and to carry electricity and telecommunications signals.
Wire is commonly formed by drawing the metal through a hole in a die or draw plate.
Standard sizes are determined by various wire gauges.

The term wire is also used more loosely to refer to a bundle of such strands, as in
'multi-stranded wire', which is more correctly termed a wire rope in mechanics, or a cable
in electricity.

Figure 3.4 Connecting Wires

3.7 Vibrating Motor

Figure 3.5 Vibrating Motor

There are two basic types of vibration motor. An eccentric rotating mass
vibration motor (ERM) uses a small unbalanced mass on a DC motor.

when it rotates it creates a force that translates to vibrations. A linear resonant
actuator (LRA) contains a small internal mass attached to a spring, which creates a force
when driven.

As specialists in the supply and design of vibration motors, you can find our stocked
motors in our product catalogue. If you can't find exactly what you need, or would like to
discuss a project, please do not hesitate to contact our engineers here. If you prefer to read
online, you will find lots of additional information and guides to help you understand how
vibration motors work.

Small vibration motors have been around since the 1960s. Initially they were
developed for massaging products, but their development took a new turn in the 90's when
consumers required vibra-call on their mobile / cell phones. Today, designers and users
alike have learned from two decades of mobile phones, that vibration alerting is an
excellent way to alert operators to an event.

These days miniature vibrating motors are used in a wide range of products, such
as tools, scanners, medical instruments, GPS trackers, and control sticks. Vibrator motors
are also the main actuators for haptic feedback which is an inexpensive way to increase a
product's value, and differentiate it from competition.

So, if you landed here because you want to make something vibrate, you're in good
company. Precision Microdrives is the leading supplier of sub Ø60 mm vibrating motors.
We carry the widest range of stock and we offer unrivaled application support and on-hand
technical expertise.

Common Vibration Motor Applications and Examples

Our customers are always coming up with ever more inventive uses for vibration
motors, so it is difficult for us to list them all here! To help, we have discussed some of our
most popular categories over the years below.

Haptic Feedback and Vibration Alerting are not necessarily applications

themselves, but they are different methods of implementing vibrations within applications.

Haptic Feedback uses advanced vibration patterns and effects to convey
complicated information to users. Vibration Alerting tends to be a simple on / off alert,
perhaps with a ramp effect. A good example is a mobile phone, which in the early days
would simply vibrate to notify the user of a call / text. Later, they would play SMS in morse
code, now they have a range of effects for games and applications. Over time, they have
progressed from Vibration Alerting to Haptic Feedback.

Vibration motors are a popular method for moving materials and produce that can
become stuck in chutes or hoppers without the need for human intervention. These
applications typically employ some of our larger motors, however emulsifiers or scientific
experiments sometimes make use of smaller vibration motors that meet their specific
requirements. Conversly, medical applications will often use the smaller devices as within
handheld equipment. These devices often have tight requirements for their suppliers,
including factory audits, which we are more than happy to help with at Precision

Light, portable devices that need to alert users are perfect for miniature vibration
motors - especially when they are powered by batteries. Our wide range of stocked motors
helps you select a vibration motor that fits your device's form factor - not the other way
around. Cars are using more and more sensors to assist drivers, unfortunately these are
accompanied with annoying beeps and tones. Vibration motors help give silent information
to the driver, or augment the audio only warnings.

Different Vibration Motor Form Factors

Whilst the end goal of vibration motors is to produce a force, there are many ways
of achieving it. There is a wide range of physical forms, both internal and external, to help
you achieve this. To guide you, the articles below help describe the main characteristics of
each type. You will notice that some motors may belong to multiple categories, for example
our encapsulated motors are based on ERMs, so you may want to look at several different
types for additional information.

Our most popular form factor is the ERM or 'pager' motor. This is because there
are lots of DC motors available in this cylindrical form, where the eccentric mass helps
create an unbalanced force. They are also the most versatile - they can be mounted on
PCBs, encapsulated, use a variety of power connections, and even be based on brushless
motors. However, coin or 'pancake' motors use the same operating principle - but their
eccentric mass is kept in their small circular body (which is where they get their names
from). They are restricted in amplitude because of their size, but have extremely low
profiles (only a few mm!) which make them popular in applications which space is

Encapsulation is the process of sealing an ERM into a plastic housing. These units
are popular for applications where the motor is housed with injection moulding or ones that
require waterproof vibration motors. Motors that are mounted to PCBs have several
connection types, including SMD vibration motors, through-hole chassis, or spring pad
terminals. Some even use leaded power connections and a specialised mounting technique
(like adhesives) so that PCB tracks do not need to reach the motor itself.

Linear Resonant Actuators (LRA) are the most unique devices in our collection of
vibration motors. Although they sometimes look like coin motors, they do not use an
eccentric mass to create force. Instead, they have a magnetic mass attached to a spring and
driven by a voice coil - a similar design to loudspeakers. This means they are very efficient,
have excellent response, and need different drivers compared to a DC vibration motor.
Similarly, brushless vibration motors also have different driving requirements. Without
wearing the brushes of the commutator, they last for a very long time but (unless the
vibration motor has an internal driver IC) are slightly more complicated to operate.


Main Program

void loop () {

long duration, distance;

digitalWrite(trigPin, LOW);


digitalWrite(trigPin, HIGH);


digitalWrite(trigPin, LOW);

duration = pulseIn(echoPin, HIGH);

distance = (duration/2) / 29.1;


LCD.print(" ");


LCD.print("Range ");




LCD.print(" `");










Using this Arduino Smart Cane, a visually impaired person can walk without
anyone’s help. The cane can automatically detect the obstacle in front of the person and
give them a feedback response by vibrating the walking stick and giving a warning sound.
Through this tool, the blind person thus be aware of the obstacles in front of them. I used
an Ultrasonic sensor with an Arduino for detecting the obstacles.

We are in the age of science and technology which have made our daily life more
easier and comfortable.We have got smartphones, smart watches, smart home appliances
and this trend of smart world is ever growing.So using such smart technology we aim to
help visually impaired people for nagivation.Blindness is not just a medical condition but
possesses the larger dimensions of social exclusion, stigma and neglect.Blind people are
often taken by surprise by over-hanging branches, protruding air-conditioners and parked
vehicles while navigating through unfamiliar terrain.According to the World Health
Organisation, there are 285 million people estimated to be visually impaired worldwide
and 90% of them live in developing countries.The main objective is to offer blind and
visually impaired communities a smart device that gives them independent personal
mobility outside the home.Smart blind stick is an innovative high-tech stick that will help
visually impaired people to detect obstacles near them and nagivate their way.This
technology is set to make lives better for the visually impaired human kind. The smart blind
stick is integrated with ultrasonic sensor along with light and water sensing.This smart
technology sends out ultrasound waves via a device attached to a standard white stick & it
detects them on their return, and uses vibrations to inform users of any obstacles in their

This technology is set to make lives better for the visually impaired human kind.
The smart blind stick is integrated with ultrasonic sensor along with light and water
sensing. Ultrasonic sensors detects the obstacles ahead using ultrasonic waves.
The sensor senses the obstacle and passes this data to microcontroller. The
microcontroller then processes the data and calculates the distance. If the obstacle is far
away then the circuit does nothing. If the obstacle is nearby then microcontroller send a
signal to sound a buzzer. We have two modes for the distance. They are indoor mode and
outdoor mode. Indoor mode, Objects that are 1.8meteres away are detected. Outdoor mode,
objects that are 3meters away are detected. If the sensor detects the water then the stick
vibrates through the vibration motor which is linked with arduino.

5.2 Limitations

1.Ultrasonic sensors must view a surface (especially a hard, flat surface) squarely
(perpendicularly) to receive ample sound echo. Also, reliable sensing requires a minimum
target surface area, which is specified for each sensor type.

2.While ultrasonic exhibit good immunity to background noise, these sensors are still likely
to falsely respond to some loud noises, like the “hissing” sound produced by air hoses and
relief valves.

3.Proximity style ultrasonic sensors require time for the transducer to stop ringing after
each transmission burst before they are ready to receive returned echoes. As a result, sensor
response times are typically slower than other technologies at about 0.1 second. This is
generally not a disadvantage in most level sensing and distance measurement applications.
Extended response times are even advantageous in some applications. Transmitted beam
style ultrasonic sensors are much faster with response times on the order of 0.002 or 0.003

4.Ultrasonic sensors have a minimum sensing distance.

5.Changes in the environment, such as temperature, pressure, humidity, air turbulence, and
airborne particles affect ultrasonic response.

6.Targets of low density, like foam and cloth, tend to absorb sound energy; these materials
may be difficult to sense at long range.

7.Smooth surfaces reflect sound energy more efficiently than rough surfaces; however, the
sensing angle to a smooth surface is generally more critical than to a rough surface.



6.1 Result

In this project, we have used an ultrasonic sensor to determine the distance of an

obstacle from the sensor. The basic principle of ultrasonic measurement is based on ECHO
signal. When sound waves are transmitted in environment, then waves are returned to
origin as Echo after striking on the obstacle. So, we programmed the Arduino to calculate
the Travelling time of both sounds means outgoing and returning time to origin after
striking the obstacle. Thus, the distance of the obstacle from the sensor is simply calculated
by the formula given as

Distance = (Time x Speed) / 2

Figure 6.1 Timing Diagram

The overall developed circuit looks as shown In the below figure 6.2

Figure 6.2 Picture of Final Developed Circuit

The output in the below LCD represents the Range Measured between the
obstacle and sensor

Figure 6.3 Output displayed on LCD screen

Figure 6.4 Working of finally built circuit

6.2 Conclusion

A simple, cheap, configurable, easy to handle electronic guidance system is

proposed to provide constructive assistant and support for blind and visually impaired
persons. The system is designed, implemented, tested, and verified. The real-time results
of the system are encouraging; it revealed an accuracy of 93% in detecting different shapes,
materials, and distances. The results indicate that the system is efficient and unique in its
capability in specifying the source and distance of the objects that may encounter the blind.
It is able to scan areas left, right, and in front of the blind person regardless of its height or
depth. Therefore, it was favoured by those who participated in the test. The IR sensor has
been fully utilized in order to advance the mobility of the blind and visual impaired people
in safe and independent way. This system does not require a huge device to be hold for a
long distance, and it also does not require any special training. This system also resolves
limitations that are related to most of the movement problems that may influence the blind
people in their environment.

Future work will be focused on enhancing the performance of the system and
reducing the load on the user by replacing the speaker’s tune by real human sound to guide
the blind exactly. Moreover, shape detection test for objects that move at different
rotational speeds across several distances will further be considered.

6.3 Future Scope

It can be further enhanced by using VLSI technology to design the PCB unit. This
makes the system furthermore compact. The use of active RFID tags will transmit the
location information automatically to the PCB unit, when the intelligent stick is in its range.
The RFID sensor doesn’t have to read it explicitly.


[1]. Chen, H., Chiang, Y. Chang, F., H. Wang, H. (2010). Toward Real-Time Precise Point
Positioning: Differential GPS Based on IGS Ultra Rapid Product, SICE Annual
Conference, The Grand Hotel, Taipei, Taiwan August 18-21.
[2]. Asaad M. J. Al-Hindawi, Ibraheem Talib, “Experimentally Evaluation of GPS/GSM
Based System Design”, Journal of Electronic Systems Volume 2 Number 2 June 2012
[3]. Chen Peijiang, Jiang Xuehua, “Design and Implementation of Remote monitoring
system based on GSM,” vol.42, pp.167-175. 2008.
[4]. V.Ramya, B. Palaniappan, K. Karthick, “Embedded Controller for Vehicle InFront
Obstacle Detection and Cabin Safety Alert System”, International Journal of Computer
Science & Information Technology (IJCSIT) Vol 4, No 2, April 2012.