Professional Documents
Culture Documents
Main Automatic Floor Cleaning Robot
Main Automatic Floor Cleaning Robot
……………….. ………………..
Internal Examiner External Examiner
……………….. ………………..
Mrs. Vaishali Hande Mrs. Rupali Firke
Project Guide Head of the Department
………………..
Dr. Sneha H.Jondhle
Principal
Seal of Institution
2|Page
SHIVAJIRAO S. JONDHLE POLYTHECHNIC, ASANGAON
……………….. ………………..
Internal Examiner External Examiner
……………….. ………………..
Mrs Vaishali Hande Mrs. Rupali Firke
Project Guide Head of the Department
3|Page
………………..
Dr. Sneha H.Jondhle
Principal
Seal of Institution
4|Page
SHIVAJIRAO'S. JONDHLE POLYTHECHNIC, ASANGAON
……………….. ………………..
Internal Examiner External Examiner
……………….. ………………..
Mrs. Vaishali Hande Mrs. Rupali Firke
Project Guide Head of the Department
………………..
Dr. Sneha H. Jondhle
Principal
Seal of Institution
5|Page
ACKNOWLEDGEMENT
It gives us a great pleasure to submit this project report on "Automatics
Floor Cleaning Robot” I express my sincere thanks to my guide PROF.
Vaishali Hande for his guidance and time to time valuable suggestion and
providing constant support throughout this work. I am very thankful to the
staff members of Computer department for their persistent inspection inspiration.
I am also very much thankful to Principal, DR. SNEHA H. JONDHLE who has
been a Constant source of inspiration to complete the work.
Name of Student: -
MR. SANTOSH KUMAR TARKESHWAR PANDIT
.MR.MEDHA PANKAJ MOHAN
MS.SHARMA RAJANI DEVI BHAWANIDI
6|Page
INDEX
8|Page
LIST OF FIGURE
1 Block Diagram 17
2 Schematic Diagram 18
3 Servo Motor 33
4 Ultrasonic Sensor 36
5 Arduino nano 43
7 Dc Motor 50
9|Page
ABSTRACT
10 | P a g e
CHAPTER 1
1.1 PRESENT THEORY AND PRACTICES
Wireless technologies are becoming more prevalent around the world
and the people or users appreciate this wireless technology which gives
them knowledge about different tasks which can be performed through
wireless, reduce human power and time consume and it’s secured one.
In this work, “Mobile aided Arduino nano based floor cleaning robot
using ultrasonic sensor” is designed for floor buildings. Here floor
cleaning robot is proposed that is controlled through android application
and ultrasonic sensor for floor cleaning purpose it can also work
automatically.
The user may sit at a place, start a robot and clean wherever needed. The
system consists of a transmitter and receiver components. The
transmitter part from android mobile application is used by the user to
transmit command based on the desired operation.
9|Page
Based on these commands the transmitter sends the anticipated
commands to Arduino. Then Arduino direct the components to function
based on the incoming signal from the android. The robot consists of
cleaning mop with a water sprayer for efficient cleaning. The robot has
one motorized rotating cleaning brushes for the cleaning part. It is
receiving the movement commands from the android device through
Bluetooth module receiver.
The Arduino on receiving the commands decodes them and thus the
motors operates in order to achieve the desired motion. This makes
floor cleaning a very easy, fast and an effortless process. This thesis is a
combination between software and hardware. The hardware of this robot
consists of the Arduino nano, DC gear motors, motor wheels, motor
driver, Bluetooth serial communication, the power supply and the chassis
for the robot.
The software used in this project is Arduino IDE to write the programming
and simulate the circuit design respectively. 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, storerooms and university. Robotic cleaners are
distinguished on their cleaning expertise like floor mopping, dry vacuum
cleaning etc. Some products 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, while obstacle
avoidance-based robots are relatively time consuming and less energy
efficient due to random cleaning but less costly.
10 | P a g e
Importing them from abroad increases their costs. Several types of android
robots with different dimensions are designed for various robotic
applications. Labor force is used for purpose of cleaning floor. But this is
tedious and laborious. For this reason, mobile aided Arduino nano based
floor cleaning robot using ultrasonic sensor designed for cleaning purpose in
building including industry, office, floor, cafeteria and other buildings floor.
In fact, all peoples are using sweep for cleaning purpose. From time to
time technology come up and need to upgrade for easier human task.
Furthermore, in buildings as well us in living home, industry, cafeterias
and other building floors cleaning process is done by human beings.
This is tedious, takes large time and laborious, difficulties for human
being to clean at a time. Due to this reason, mobile aided Arduino nano
based floor cleaning robot using ultrasonic sensor is proposed to solve
this problem. Therefore, this project is built to be one of the advantages
for human to clean the floor within small period and more effective. In
addition, since it is portable and small user can take it anywhere simply.
1.3 AIM
This project is to design and implement Mobile aided Arduino nano
based floor cleaning robot using ultrasonic sensor for floor buildings by
avoiding human power and wasting of time.
1.4 OBJECTIVES
• To simplify human life
• To avoid time wastage during cleaning.
• To develop an android application that sends a set of instructions from
mobile phone for controlling purpose.
11 | P a g e
• To interface Bluetooth module with Arduino.
• To identify the specifications of each component used while designing.
12 | P a g e
CHAPTER 2 LITERATURE REVIEW
Manreet Kaur and Preeti Abrol, in the paper “Design and development
of floor cleaning robot” have made the cleaning using automatic and
manual modes. They have used RF modules for wireless communication
between remote and robot having range of 50m. In the automatic mode,
robot controls all operations itself and changes the lane in case of hurdle
detection and moves back. In the manual mode keypad is used to
perform the expected task and to operate the robot. [1]
Many more systems were proposed and among that is the system
proposed by J.Y. Sung, R. E. Grinter and H. I. Christensen in
“Housewives domestic robot technology international journal of social
robotics”. In this paper a new type of home intelligent cleaner adopted
13 | P a g e
the ultrasonic and IR sensor array which had the function of real time
environment perception is introduced and the cleaner is driven by step
motor has the ability of autonomous working by itself and the functions
of automatic detection and obstacle avoidance. This paper adopts grid
scan algorithm placed on electric map, realize floor coverage task and
designs synthesis detection system based on sensor array finding method
technology according to – –--algorithm characteristics. However, this
system did not support wet detection and it only performed dry cleaning.
[3]
14 | P a g e
inquiring device to determine and display the nature of the device that
has recognized its signal.
We have contributed to make our project more interested and better than
we saw before. So our contribution is designing Mobile aided Arduino
nano based floor cleaning robot using ultrasonic sensor, a thing which
makes us different from above is we used both android mobile and
ultrasonic sensor at a time.
15 | P a g e
CHAPTER 3 PROJECT METHODOLOGY
16 | P a g e
• Battery
• Some components like point pcb, nut bolts, screws. Wires (jumpers)
etc.
.
Fig.3.1 Block Diagram
17 | P a g e
3.4 SYSTEM CIRCUIT DIAGRAM
18 | P a g e
CHAPTER 4
19 | P a g e
Inexpensive
Arduino boards are relatively inexpensive compared to other
microcontroller platforms.
Cross-platform
The Arduino Software (IDE) runs on Windows, Macintosh OSX, and
Linux operating systems. Most microcontroller systems are limited
to Windows.
Simple, clear programming environment
The Arduino Software (IDE) is easy-to-use for beginners, yet flexible
enough for advanced users to take advantage of as well.
21 | P a g e
Step 6: Open the blink example
Open the LED blink example sketch: File > Open >
Temp_and_humid.inot
22 | P a g e
Step 7: Select your board:
You'll need to select the entry in the Tools > Board menu that
corresponds to your Arduino.
24 | P a g e
Code
#include <Servo.h> //Servo motor library. This is standard
library
#include <NewPing.h> //Ultrasonic sensor function library. You
must install this library
//our L298N control pins
const int LeftMotorForward = 7;
const int LeftMotorBackward = 6;
const int RightMotorForward = 5;
const int RightMotorBackward = 4;
//sensor pins
#define trig_pin A1 //analog input 1
#define echo_pin A2 //analog input 2
servo_motor.write(115);
delay(2000);
distance = readPing();
delay(100);
distance = readPing();
delay(100);
distance = readPing();
delay(100);
distance = readPing();
delay(100);
}
void loop()
{
int distanceRight = 0;
26 | P a g e
int distanceLeft = 0;
delay(50);
if (distance <= 35){
moveStop();
delay(300);
moveBackward();
delay(400);
moveStop();
delay(300);
distanceRight = lookRight();
delay(300);
distanceLeft = lookLeft();
delay(300);
int lookRight(){
servo_motor.write(50);
delay(500);
int distance = readPing();
delay(100);
servo_motor.write(115);
return distance;
}
int lookLeft(){
servo_motor.write(170);
delay(500);
int distance = readPing();
28 | P a g e
delay(100);
servo_motor.write(115);
return distance;
delay(100);
}
int readPing(){
delay(70);
int cm = sonar.ping_cm();
if (cm==0){
cm=250;
}
return cm;
}
void moveStop(){
digitalWrite(RightMotorForward, LOW);
digitalWrite(LeftMotorForward, LOW);
digitalWrite(RightMotorBackward, LOW);
digitalWrite(LeftMotorBackward, LOW);
}
void moveForward(){
29 | P a g e
if(!goesForward){
goesForward=true;
digitalWrite(LeftMotorForward, HIGH);
digitalWrite(RightMotorForward, HIGH);
digitalWrite(LeftMotorBackward, LOW);
digitalWrite(RightMotorBackward, LOW);
}
}
void moveBackward(){
goesForward=false;
digitalWrite(LeftMotorBackward, HIGH);
digitalWrite(RightMotorBackward, HIGH);
digitalWrite(LeftMotorForward, LOW);
digitalWrite(RightMotorForward, LOW);
30 | P a g e
}
void turnRight(){
digitalWrite(LeftMotorForward, HIGH);
digitalWrite(RightMotorBackward, HIGH);
digitalWrite(LeftMotorBackward, LOW);
digitalWrite(RightMotorForward, LOW);
delay(250);
digitalWrite(LeftMotorForward, HIGH);
digitalWrite(RightMotorForward, HIGH);
digitalWrite(LeftMotorBackward, LOW);
digitalWrite(RightMotorBackward, LOW);
void turnLeft(){
31 | P a g e
digitalWrite(LeftMotorBackward, HIGH);
digitalWrite(RightMotorForward, HIGH);
digitalWrite(LeftMotorForward, LOW);
digitalWrite(RightMotorBackward, LOW);
delay(250);
digitalWrite(LeftMotorForward, HIGH);
digitalWrite(RightMotorForward, HIGH);
digitalWrite(LeftMotorBackward, LOW);
digitalWrite(RightMotorBackward, LOW);
}
CHAPTER 5
32 | P a g e
DESIGN AND MAIN COMPONUNTS SERVO MOTORS
A servo motor is a type of motor that can rotate with great precision.
Normally this type of motor consists of a control circuit that provides
feedback on the current position of the motor shaft, this
feedback allows the servo motors to rotate with great precision.
If you want to rotate an object at some specific angles or distance,
then you use a servo motor. It is just made up of a simple motor which
runs through a servo mechanism. If motor is powered by a DC power
supply then it is called DC servo motor, and if it is AC-powered motor
then it is called AC servo motor.
For this project, we will be discussing only about the DC servo motor
working. Apart from these major classifications, there are many other
types of servo motors based on the type of gear arrangement and
operating characteristics.
A servo motor usually comes with a gear arrangement that allows us
to get a very high torque servo motor in small and lightweight
33 | P a g e
packages. Due to these features, they are being used in many
applications like toy car, RC helicopters and planes, Robotics, etc.
This error signal acts as the input for motor and motor starts rotating.
Now motor shaft is connected with the potentiometer and as the motor
rotates so the potentiometer and it will generate a signal. So as the
potentiometer’s angular position changes, its output feedback signal
changes. After sometime the position of potentiometer reaches at a
position that the output of potentiometer is same as external signal
provided.
35 | P a g e
Ultrasonic Sensor
Technical Specifications
Power Supply − +5V DC
Quiescent Current − <2mA
Working Current − 15mA
Effectual Angle − <15°
Ranging Distance − 2cm – 400 cm/1″ – 13ft
Resolution − 0.3 cm
Measuring Angle − 30 degree
36 | P a g e
The HC-SR04 Ultrasonic (US) sensor is a 4 pin module, whose pin
names are Vcc, Trigger, Echo and Ground respectively. This sensor is a
very popular sensor used in many applications where measuring distance
or sensing objects are required. The module has two eyes like projects in
the front which forms the Ultrasonic transmitter and Receiver. The
sensor works with the simple high school formula that
37 | P a g e
Ultrasonic Sensor Pinout Configuration
1 Vcc The Vcc pin powers the sensor, typically with +5V
3 Echo Echo pin is an Output pin. This pin goes high for a
period of time which will be equal to the time taken
for the US wave to return back to the sensor.
40 | P a g e
Applications
Used to avoid and detect obstacles with robots like biped robot,
obstacle avoider robot, path finding robot etc.
Used to measure the distance within a wide range of 2cm to 400cm
Can be used to map the objects surrounding the sensor by rotating it
Depth of certain places like wells, pits etc can be measured since the
waves can penetrate through water
Arduino Micro-controller:
The Arduino nano can be powered via the USB connection or with
an external power supply. The power source is selected automatically.
External (non-USB) power can come either from an AC-to-DC adapter
(wall-wart) or battery. The adapter can be connected by plugging a
2.1mm center-positive plug into the board's power jack. Leads from a
battery can be inserted in the Gnd and Vin pin headers of the POWER
connector. The board can operate on an external supply of 6 to 20 volts.
If supplied with less than 7V, however, the 5V pin may supply less than
five volts and the board may be unstable. If using more than 12V, the
voltage regulator may overheat and damage the board. The
recommended range is 7 to 12 volts.
41 | P a g e
42 | P a g e
Fig.3.5 Arduino nano
43 | P a g e
What Does it Do?
The Arduino hardware and software was designed for artists,
designers, hobbyists, hackers, newbie’s, and anyone interested in
creating interactive objects or environments. Arduino can interact
with buttons, LEDs, motors, speakers, GPS units, cameras, the
internet, and even your smart-phone or your TV! This flexibility
combined with the fact that the Arduino software is free, the
hardware boards are pretty cheap, and both the software and
hardware are easy to learn has led to a large community of users
who have contributed code and released instructions for a huge
variety of Arduino-based projects.
GND (3): Short for „Ground‟. There are several GND pins on the
Arduino, any of which can be used to ground your circuit.
5V (4) & 3.3V (5): As you might guess, the 5V pin supplies 5
volts of power, and the 3.3V pin supplies 3.3 volts of power.
Most of the simple components used with the Arduino run
happily off of 5 or 3.3 volts. Analog
(6): The area of pins under the „Analog In‟ label (A0 through A5
on the UNO) are Analog In pins. These pins can read the signal
from an analog sensor (like a temperature sensor) and convert it
into a digital value that we can read.
Digital (7): Across from the analog pins are the digital pins (0
through 13 on the UNO). These pins can be used for both digital
input (like telling if a button is pushed) and digital output (like
powering an LED).
PWM (8): You may have noticed the tilde (~) next to some of the
digital pins (3, 5, 6, 9, 10, and 11 on the UNO). These pins act as
normal digital pins, but can also be used for something called
Pulse-Width Modulation (PWM). We have a tutorial on PWM,
but for now, think of these pins as being able to simulate analog
output (like fading an LED in and out).
45 | P a g e
AREF (9): Stands for Analog Reference. Most of the time you
can leave this pin alone. It is sometimes used to set an external
reference voltage (between 0 and 5 Volts) as the upper limit for
the analog input pins.
Reset Button
Just like the original Nintendo, the Arduino has a reset button
(10). Pushing it will temporarily connect the reset pin to ground
and restart any code that is loaded on the Arduino. This can be
very useful if your code doesn‟t repeat, but you want to test it
multiple times. Unlike the original Nintendo however, blowing on
the Arduino doesn‟t usually fix any problems.
TX RX LEDs
TX is short for transmit, RX is short for receive. These markings
appear quite a bit in electronics to indicate the pins responsible
for serial communication. In our case, there are two places on the
Arduino UNO where TX and RX appear – once by digital pins 0
and 1, and a second time next to the TX and RX indicator LEDs
(12). These LEDs will give us some nice visual indications
whenever our Arduino is receiving or transmitting data (like when
we‟re loading a new program onto the board).
46 | P a g e
Main IC
The black thing with all the metal legs is an IC, or Integrated
Circuit (13). Think of it as the brains of our Arduino. The main IC
on the Arduino is slightly different from board type to board type,
but is usually from the A Tmega line of IC‟s from the ATMEL
company. This can be important, as you may need to know the IC
type (along with your board type) before loading up a new
program from the Arduino software. This information can usually
be found in writing on the top side of the IC. If you want to know
more about the difference between various IC‟s, reading the
datasheets is often a good idea.
Voltage Regulator
The voltage regulator (14) is not actually something you can (or should)
interact with on the Arduino. But it is potentially useful to know that it is
there and what it‟s for. The voltage regulator does exactly what it says –
it controls the amount of voltage that is let into the Arduino board. Think
of it as a kind of gatekeeper; it will turn away an extra voltage that might
harm the circuit. Of course, it has its limits, so don‟t hook up your
Arduino to anything greater than 20 volts.
47 | P a g e
L298n Motor Driver
L298 motor shield is a dual full bridge driver designed to drive
inductive load i.e.stepper motor, relays & solenoids. It gives you
the control to drive two DC motor witharduino microcontroller
and provide you the royalty to control the direction and speedof
the motor.
48 | P a g e
Fig.5.3 L298n motor driver
49 | P a g e
12V DC MOTOR
Fig.5.4 Dc Motor
50 | P a g e
The most popular L298N H-bridge module with onboard voltage
regulator motor driver can be used with this motor that has a voltage of
between 5 and 35V DC or you can choose the most precise motor diver
module from the wide range available in our Motor divers category as
per your specific requirements.
Nut and threads on the shaft to easily connect and internally threaded
shaft for easily connecting it to the wheel. DC Geared motors with
robust metal gearbox for heavy-duty applications, available in the wide
RPM range and ideally suited for robotics and industrial applications.
Very easy to use and available in standard size. Nut and threads on the
shaft to easily connect and internally threaded shaft for easily connecting
it to the wheel.
51 | P a g e
CHAPTER 6
ACTUAL IMAGE OF THE AUTOMATIC FLOOR CLEANING
ROBOT
52 | P a g e
CHAPTER 7
REFERENCES
[1] Manreet Kaur and Preeti Abrol “Design and development of floor
cleaner robot
(Automatic and manual)”, International Journal of Computer
Application,
published in July 2014.
[2] Jens Steffen Gutmann, Kristen Culp, Mario E. Munich and Paolo
Pirjanian “Social
impact of a systematic floor cleaner” IEEE International Workshop on
Advanced
Robotics and Its Social Impact, published in May 2012.
[4] Ajith Thomas, Rohith M.S, Febin Jolly, Jeeson Cheriyan, Ms.Renu
Mary George, “
AnAdvanced Mobile Robot for Floor Cleaning” , International Journal
of Advanced
Research in Electrical, Electronics and Instrumentation.
53 | P a g e
THANK YOU
54 | P a g e