ARDUINO BASED HOMEMADE VACUUM CLEANER ROBOT
Alexander A. Plaza
BACHELOR OF SCIENCE OF ELECTRICAL ENGINEERING
INTRODUCTION
In recent years, robotic cleaners have taken major attention in
robotics research due to their effectiveness in assisting humans in
floor cleaning applications at homes, hotels, restaurants, offices,
hospitals, workshops, warehouses and universities etc. Basically,
robotic cleaners are distinguished on their cleaning expertise like floor
mopping, dry vacuum cleaning etc. Some products are based on
simple obstacle avoidance using infrared sensors while some utilize
laser mapping technique. Each cleaning and operating mechanism of
robotic floor cleaners has its own advantages and disadvantages. For
example, robots utilizing laser mapping are relatively faster, less time
consuming and energy efficient but costly, while obstacle avoidance
based robots are relatively time consuming and less energy efficient
due to random cleaning but less costly. Countries like Pakistan are
way back in manufacturing robotic cleaners. Importing them from
abroad increases their costs.
STATEMENT OF THE PROBLEM
This study aims to design and construct a vacuum cleaner robot
and answer the following questions:
• How to design an Arduino based homemade vacuum cleaner robot?
• How important is the Arduino Based Vacuum Cleaner Robot?
• Is the Arduino Based Vacuum Cleaner Robot help reduced human
labor?
OBJECTIVE OF THE STUDY
The main objective of this study are:
• To design an arduino based homemade vacuum cleaner robot.
• To provide a substantial solution to the problem of manufacturing
robotic cleaner utilizing local resources while keeping it low costs.
• Identify the importance of Arduino Based Vacuum Cleaner Robot.
Expected output
This study was expected to help reduced human labor using
Arduino Based Vacuum Cleaner Robot.
REVIEW OF RELATED LITERATURE
1.1 Microcontroller: Arduino Mega 2560
The Arduino Mega is a microcontroller board based on the
ATmega1280 (datasheet). It has 54 digital input/output pins (of which
14 can be used as PWM outputs), 16 analog inputs, 4 UARTs
(hardware serial ports), 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.
1.2 Motor Driving IC L239D
A very easy and safe is to use popular L293D chip. It is a
16- pin chip. The pin configuration of a L293D along with the
behaviours of motor for different input conditions is given in fig. 4. The
L293D is designed to provide bidirectional drive currents of up to 600-
mA at voltages from 4.5 V to 36 V. When an enable input is high,
the associated drivers are enabled. Also their outputs are active and
in phase with their inputs. When the enable input is low, those
drivers are disabled, and their outputs are off and in the high-
impedance state. With the proper data inputs, each pair of drivers
forms a full-H (or bridge) reversible drive suitable for solenoid or
motor applications.
Figure 1.2.1: (A) Pin configuration of L293D
1.43 DC Motor.
Almost every mechanical movement that we see around us is
accomplished by an electric motor. Electric machines are means of
converting conventional energy. Motors take electrical energy and
produce mechanical energy. Electric motor is used to power
hundreds of devices we use in everyday life. An example of motor
used in day to day life is automobiles, food blenders and so is vacuum
cleaner.
1.4 Bluetooth (HC - 06).
For the communication of the robot with the cell phone or a
mobile we are using the Bluetooth device. The Bluetooth device (HC-
06) is attached to the robot that receives the data from the mobile
and also it can transmit the data. It is used for converting serial port
to Bluetooth. It has two modes: Master and Slave. Bluetooth is a
wireless communication protocol running at the speed of 2.4 GHz
with the architecture of client-server and which is suitable for forming
personal area networks. It is designed for devices such as mobile
phones (low power). Bluetooth protocol uses the MAC address of
the device. Bluetooth gives the connectivity between two devices using
their MAC address.
1.5 IR
Sensor.
The sensor consists of two eyes. One eye sends the infrared
light and the other eye sees the reflection of that infrared light and
measures the distance which is then sent to the Arduino through
analog input to perform further operations based on the distance.
There are three wires coming from the sensor .i.e. Red, Black and
White or it can be Red, Brown and Yellow. Red is connected to 5V
of Arduino. Black or brown to Ground of Arduino. White or yellow to
analog input pin of Arduino i.e. in this case to analog pin 0.
1.6 LDR Sensor.
The light dependant resistor is an electronic component whose
resistance decreases with increasing light intensity. It is also called
as “Photo Resistor” or “Photo conductor”. The light dependant
resistor uses high resistance semiconductor material. When light falls
on such a semiconductor the bound electrons [i.e., Valence electrons]
get the light energy from the incident photos. Due to this additional
energy, these electrons become free and jump in to the conduction
band. The electron –hole pairs are generated. Due to these charge
carriers, the conductivity of the device increases, decreasing its
resistivity.
1.7 Ultrasonic Sensor.
This sensor is a high performance ultrasonic range finder. It
is compact and measures an amazingly wide range from 2cm to 4m.
This ranger is a perfect for any robotic application, or any other
projects requiring accurate ranging information. This sensor can be
connected directly to the digital I/O lines of your microcontroller and
distance can be measured in time required for travelling of sound
signal using simple formula as below. Distance = (Echo pulse width
high time * Sound Velocity (340M/S)/2) or Distance in cm = (Echo
pulse width high time (in us)*0.017) The module works on 5VDC
input and also gives an output signal directly for detection of any
obstacle up to 4M.Power up the sensor by 5VDC using pins “VCC”
and “GND”. First of all a 10us trigger input has to be given to the
pin named “Trig” on the sensor. This starts one cycle of range
conversion and sends 8 bursts of sound waves from the transmitter.
As soon as the signals are transmitted the “Echo” pin goes to high
level and remains in high level until the same sound waves are
received by the receiver. If the received sound waves are same as
what the same sensor transmitted then the Echo pin goes to low
level. If no object is detected within 5M after 30ms the Echo signal
will automatically go to low level. automatically go to low level.
1.8 Real Time Clock.
A real-time clock (RTC) is a computer clock (most often in
the form of an integrated circuit) that keeps track current time.
Although the term often refers to the devices in personal computers,
servers and embedded systems, RTCs are present in almost any
electronic device which needs to keep accurate time. Although keeping
time can be done without an RTC, using one has benefits: Low
power consumption (important when running from alternate power)
Frees the main system for time-critical tasks Sometimes more accurate
than other methods 2.9 LCD 20X4 Module A liquid crystal display (LCD)
is a flat panel display, electronic visual display, or video display that
uses the light modulating properties of liquid crystals. Liquid crystals
do not emit light directly. 20x4 means that 20 characters can be
displayed in each of the 4 rows of the 20x4 LCD, thus a total of
80 characters can be displayed at any instance of time.
METHODOLOGY
A number of software and hardware implementation techniques
were used to design and develop the system. Fig. 1 shows the block
diagram of system. We used a 12VDC motor, L293D IC, Different
Sensors, Real Time Clock, Vacuum mechanism and Arduino to develop
our system. The operation of the robotic vacuum is going to be
based on retrieving data from an array of inputs that will tell the
condition of the floor space around the vacuum. These inputs
include sonar, touch sensors, and a digital compass. Each of these
parts will be described in further detail further on later in the
documentation. The data from these inputs will be fed into the
chip(s) which through its software program will decide which direction
the vacuum should move by sending the control signals out to the drive
motors.
References
1. L293D datasheet. Website (www.ti.com)
2. S.Muruganandhan, G.Jayabaskaran, P.Bharathi, “LabVIEW-NI
ELVIS II based Speed Control of DC Motor,” International Journal of
Engineering Trends and Technology (IJETT) Volume 4 Issue 4, April
2013
3. A Technical Analysis of Autonomous Floor Cleaning Robots Based
on US Granted Patents, European International Journal of Science
and Technology Vol. 2 No. 7 September 2013. Liu, Kuotsan1, Wang,
Chulun
4.
http://web.stevens.edu/ses/me/fileadmin/me/senior_design/2007/group01/
DesignFinal.pdf
5.
http://eng.najah.edu/sites/eng.najah.edu/files/robotic_vacuum_pre_1.pptx
6.http://www.ecs.umass.edu/ece/sdp/sdp05/preston/sdp_data/Draft
%20System%20Specification.doc
7. http://letsmakerobots.com/node/40288
8.http://www.intorobotics.com/build-diy-roomba-style-robot-vacuum-
cleaner/
9. http://www.irobot.com/For-the-Home/Vacuum-Cleaning/Roomba.aspx
10.http://eprints2.utem.edu.my/4710/1/Design_And_Implementation_Of_V
acuum_Robot_-_24_pages.pdf
11. http://www.instructables.com/id/Floor-vacuum-cleaner-robot-
controlled-by-Arduino-w/
12. http://www.scribd.com/doc/231094704/Automatic-vacuum-cleaner-
project#scribd