Arduino Based Fire Fighting Robot: Submitted by

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 30

0

REPORT NAME: Arduino Based Fire Fighting


Robot

SUBMITTED BY
SUMON SARKAR. (26301616049)
SUMON KUMAR SINGH
(26301616050)
SK. AQUIB. (26301616053).
SAHEB JANA. (26301616059)
PRITAM MALIK. (26301616061)
ARPAN GHOSH. (26301616068)

( B.TECH , 4TH YEAR , ELECTRICAL ENGINEERING )


UNDER GUIDENCE OF “BIDYUT KUMAR
GHOSH”
CONTENTS
SUBMITTED BY.....................................................................0
Acknowledgement.....................................................................2
AIM OF PROJECT ................................................................................3
Material Required...........................................................................................................................................4
Arduino UNO..................................................................................................................................................5

Fire sensor or Flame sensor................................................7


Servo Motor :.........................................................................9
L293D motor Drive module : .............................................10
Working Concept of Fire Fighting Robot:..............................14
Circuit Diagram:.....................................................................................................................................16
Arduino Programming............................................................................................................................18

STEP 1........................................................................................... 18
STEP 2 :............................................................................................. 19
MAIN CODE :......................................................................................................................................................20

Project Aplications................................................................ 26
Conclusion :............................................................................27

PAGE 1
Acknowledgement

Project has an important role in exposing the real life


situation. It is a great experience for us to work on
project "ARUDRINO BASED FIRE FIGHTING
ROBOT" through which we would learn how
to assemble a big think into a small initiative.
Now we would like to express our sincerest
gratitude for the inspiration through the tension of
this project.
We are sincerely grateful to our project
guidance Mr. Bidyut Kumar Ghosh, whose
affectionate guidance has enable us to complete
this project.
We also take help from various
internet platforms like, ' GOOGLE', 'YOU
TUBE'.
AIM OF PROJECT –
According to National Crime Records Bureau
(NCRB), it is estimated that more than 1.2 lakh deaths
have been caused because of fire accidents in India from
2010-2014. Even though there are a lot of precautions
taken for Fire accidents, these natural/man-made
disasters do occur now and then. In the event of a fire
breakout, to rescue people and to put out the fire we are
forced to use human resources which are not safe. With
the advancement of technology especially in Robotics it is
very much possible to replace humans with robots for
fighting the fire. This would improve the efficiency of
firefighters and would also prevent them from risking
human lives. Today we are going to build a Fire Fighting
Robot using Arduino , which will automatically sense
the fire and start the water pump.
Material Required –
 Arduino UNO

 Fire sensor or Flame sensor (3 Nos)

 Servo Motor (SG90)

 L293D motor Driver module

 Small Breadboard

 Robot chassis with motors and wheel (any type)

 A small can

 Connecting wires
Arduino UNO -
The Arduino Uno is an open-source microcontroller board

based on the Microchip ATmega328P microcontroller and


developed by Arduino.cc. The board is equipped with sets
of digital and analog input/output (I/O) pins that may be
interfaced to various expansion boards (shields) and other
circuits.The board has 14 digital I/O pins (six capable
of PWM output), 6 analog I/O pins, and is
programmable with the Arduino IDE cable. It can be
powered by the USB cable or by an external 9-volt
battery, though it accepts voltages between 7 and 20
volts. It is similar to the Arduino Nano and Leonardo.
The hardware reference design is distributed under a
Creative Commons Attribution Share- Alike 2.5 license
and is available on the Arduino website. Layout and
production files for some versions of the hardware
are also available.
Fire sensor or Flame sensor (3 Nos)
A flame detector is a sensor designed to detect and
respond to the presence of a flame or fire. Responses to
a detected flame depend on the installation, but can
include sounding an alarm, deactivating a fuel line
(such as a propane or a natural gas line), and activating
a fire suppression system.

There are different types of flame detection methods.


Some of them are: Ultraviolet detector, near IR array
detector, infrared (IR) detector, Infrared thermal cameras,
UV/IR detector etc.
When fire burns it emits a small amount of Infra-red
light, this light will be received by the Photodiode (IR
receiver) on the sensor module. Then we use an Op-
Amp to check for change in voltage across the IR
Receiver, so that if a fire is detected the output pin
(DO) will give 0V(LOW) and if the is no fire the output
pin will be 5V(HIGH).
Servo Motor-
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. It also
requires a relatively sophisticated controller, often a
dedicated module designed specifically for use with
servomotors.

Servomotors are not a specific class of motor,


although the term servomotor is often used to refer to
a motor suitable for use in a closed-loop control
system.
L293D motor Drive module
The Motor Driver is a module for motors that allows
you to control the working speed and direction of two
motors

simultaneously .This Motor Driver is designed and


developed based on L293D IC.
L293D is a 16 Pin Motor Driver IC. This is designed to
provide bidirectional drive currents at voltages from 5 V
to 36 V.
L293D IC Pin Out
The L293D is a 16 pin IC, with eight pins, on each side, to
controlling of two DC motor simultaneously. There are 4
INPUT pins, 4 OUTPUT pins and 2 ENABLE pin for each
motor.

Pin 1: When Enable1/2 is HIGH, Left part of IC will work,


i.e motor connected with pin 3 and pin 6 will rotate.

Pin 2: Input 1, when this pin is HIGH the current will flow
though output 1.

Pin 3: Output 1, this pin is connected with one terminal of


motor.

Pin 4/5: GND pins


Pin 6: Output 2, this pin is connected with one terminal
of motor.

Pin 7: Input 2, when this pin is HIGH the current will


flow though output 2.

Pin 8: VSS, this pin is used to give power supply to


connected motors from 5V to 36V maximum depends on
Motor connected.

Pin 9: When Enable 3/4 is HIGH, Right part of IC will


work, i.e motor connected with pin 11 and pin 14 will
rotate.

Pin 10: Input 4, when this pin is HIGH the current will
flow though output 4.

Pin 11: Output 4, this pin is connected with one terminal


of motor.
Pin 12/13: GND pins

Pin 14: Output 3, this pin is connected with one terminal


of motor.

Pin 15: Input 3, when this pin is HIGH the current will
flow though output 3.

Pin 16: VCC, for supply power to IC i.e 5V.


WORKING CONCEPT OF FIRE
FIGHTING
ROBOT:-

The main brain of this


project is the Arduino,
but in-order to sense fire
we use the Fire sensor
module (flame sensor)
……
As you can see these sensors have an IR Receiver
(Photodiode) which is used to detect the fire. How is
this possible? When fire burns it emits a small amount of
Infra- red light, this light will be received by the IR
receiver on the sensor module. Then we use an Op-Amp
to check for change in voltage across the IR Receiver, so
that if a fire is detected the output pin (DO) will give
0V(LOW) and if the is no fire the output pin will be
5V(HIGH).

So, we place three such sensors in three directions of the


robot to sense on which direction the fire is burning.
We detect the direction of the fire we can use the motors
to move near the fire by driving our motors through
the L293D module. When near a fire we have to put it
out using water. Using a small container we can carry
water, a 5V pump is also placed in the container and the
whole container is placed on top of a servo motor so
that we can control the direction in which the water has
to be sprayed. Let’s proceed with the connections now…..
CIRCUIT DIAGRAM:-
THE COMPLETE CIRCUIT DIAGRAM FOR THIS
FIRE FIGHTING ROBOT IS GIVEN BELOW
You can either connect all the shown connections for
uploading the program to check the working or you
can assemble the bot completely and then proceed
with the connections. Both ways the connections are
very simple and you should be able to get it right.
ARDUINO PROGRAMMING :

if (digitalRead(Left_S) ==1 && digitalRead(Right_S)==1


&& digitalRead(Forward_S) ==1) //If Fire not detected
all sensors are zero
{
//Do not move the robot
digitalWrite(LM1, HIGH);
digitalWrite(LM2, HIGH);
digitalWrite(RM1, HIGH);
digitalWrite(RM2,
HIGH);
}
S TEP 2 INSIDE THE PVT_O2*â"_â"ZAZJ^/WE JUST HAVE
TO STOP THE ROBOTBY MAKING ALL THE PINS
HIGH. THEN TURN 0N THE PUMP TO PUSH WATER
OUTSIDE THE CONTAINER, WHILE THIS IS DONE WE CAN
ALS0 USE THE SERVO MOTOR TO ROTATE THE
CONTAINER S0 THAT THE WATER IS SPLIT ALL OVER
UNIFORMLY.

VOID PUT_0FF_FIRE()

delay (500);
digitalWrite(LM1, HIGH);
digitalWrite(LM2, HIGH);
digitalWrite(RM1,
HIGH);
digitalWrite(RM2,
HIGH);
digitalWrite(pump, HIGH); delay(500);
for (pos = 50; pos <= 130; pos += 1) (
myservo.write(pos);
delay(10);

for (pos = 130; pos >= 50; pos 1) {


myservo.write(pos);
delay(10);

digitalWrite(pump,LOW);
myservo.write(90);
fire=false;}
MAIN CODE : –
/*------ Arduino Fire Fighting Robot Code- - -*/
#include <Servo.h>
Servo myservo;
int pos = 0;
boolean fire =
false;
/*-------defining Inputs-----*/
#define Left_S 9 // left sensor
#define Right_S 10 // right sensor
#define Forward_S 8 //forward sensor
/*-------defining Outputs-----*/
#define LM1 2 // left motor
#define LM2 3 // left motor
#define RM1 4 // right motor
#define RM2 5 // right motor
#define pump 6
void setup()
{
pinMode(Left_S, INPUT);
pinMode(Right_S, INPUT);
pinMode(Forward_S, INPUT);
pinMode(LM1, OUTPUT);
pinMode(LM2, OUTPUT);
pinMode(RM1, OUTPUT);
pinMode(RM2, OUTPUT);
pinMode(pump, OUTPUT);
myservo.attach(11);
myservo.write(90);
}
void put_off_fire()
{
delay (500);
digitalWrite(LM1, HIGH);
digitalWrite(LM2, HIGH);
digitalWrite(RM1, HIGH);
digitalWrite(RM2, HIGH);
digitalWrite(pump, HIGH); delay(500);
for (pos = 50; pos <= 130; pos += 1) {
myservo.write(pos);
delay(10);
}
for (pos = 130; pos >= 50; pos -= 1) {
myservo.write(pos);
delay(10);
}
digitalWrite(pump,LOW);
myservo.write(90);
fire=false;
}
void loop()
{
myservo.write(90); //Sweep_Servo();
if (digitalRead(Left_S) ==1 && digitalRead(Right_S)==1
&& digitalRead(Forward_S) ==1) //If Fire not detected all
sensors are zero
{
//Do not move the robot
digitalWrite(LM1, HIGH);
digitalWrite(LM2, HIGH);
digitalWrite(RM1, HIGH);
digitalWrite(RM2, HIGH);
}
else if (digitalRead(Forward_S) ==0) //If Fire is
straight ahead
{
//Move the robot forward
digitalWrite(LM1, HIGH);
digitalWrite(LM2, LOW);
digitalWrite(RM1, HIGH);
digitalWrite(RM2, LOW);
fire = true;
}
else if (digitalRead(Left_S) ==0) //If Fire is to the left
{
//Move the robot left
digitalWrite(LM1, HIGH);
digitalWrite(LM2, LOW);
digitalWrite(RM1, HIGH);
digitalWrite(RM2, HIGH);
}
else if (digitalRead(Right_S) ==0) //If Fire is to the right
{
//Move the robot right
digitalWrite(LM1, HIGH);
digitalWrite(LM2, HIGH);
digitalWrite(RM1, HIGH);
digitalWrite(RM2, LOW);
}
delay(300); //Slow down the speed of robot
while (fire == true)
{
put_off_fire();
}
}
PROJECT APLICATIONS :

The main application of this Robot is to detect fire


and extinguisher it automatically.
Conclusion :

From this project We present our big thought into a


small initiative. This Robot will help to detect and
extinguish fire firstly and automatically with the
help of it's own programming system.
And we know that it is a primary step. We gain a
little bit of knowledge about the arduino, sensor, and
others electronic components.
But truly this is not enough to use it industry.
Actually this is a model or small version of this
Robot. We should need to study and keeping
experiment on it to publish it on a modified and
smart version.

You might also like