Autonomous Fire Fighter Robot

80K6497

Intro: Autonomous Fire Fighter Robot

It is a robot that autonomously detect and extinguish fire.It use flame sensor for detection and arduino board for processing.Fire extinguisher along with electronic valve( actuator) is used to extinguish the detected fire.

The robot rotates while actively scanning for fire. This scanning is performed by sensors placed on the sides.When a fire is detected, it moves in the direction of fire an stops 30 cm in front of it and trigger the extinguisher to turn out the fire.


STEP 1: COMPONENTS USED

1X ARDUINO BOARD

3X FLAME SENSOR MODULES

2X DC MOTOR DRIVER

1X ELECTRONIC VALVE(OR LINEAR ACTUATOR)

4X DC GEAR MOTOR

1X FIRE EXTINGUISHER

4X WHEELS

4X MOTOR CLAMPS

SWITCH,WIRE,SCREWS ETC

TOOLS REQUIRED

SOLDERING IRON

MULTIMETER

STEP 2: ARDUINO BOARD

In this project, arduino leonardo board is used. Any arduino board can be selected.

Basic description of the board can be seen in the picture.

STEP 3: FLAME SENSOR

Flame sensor modules do not cost much, and the efficiently detect flame.

Keyes flame sensor module is used for this project which has a sensitivity adjustment pot. It has a positive supply pin, which must be provided with a +5v supply. GND pin must be grounded. This module provides both analog as well as digital outputs. Only digital output is used in this project.

STEP 4: MOTOR DRIVER AND MOTOR

Since the arduino board can supply only 5v which is insufficient for driving motor, motor driver is used.

With the help of motor driver, clockwise and anticlockwise rotation of motor can be easily achieved. Motor driver must be supplied with a supply voltage of 5v -9v. Ground must be connected to the ground pin of arduino board.

Since this robot needs to carry a fire extinguisher, dc gear motor having enough torque must be selected. Here i have used metallic gear motor with 60rpm, having 10-12kg/cm torque.

STEP 5: FIRE EXTINGUISHER AND VALVE

General fire extinguishers are heavier and difficult to be transported or triggered. A spray type one will be most convenient and affordable. In case of general type, an electronic valve should be used to release the gas or foam.

For the spray type, electronic actuator can be used. In this project, i have used spray type extinguisher an instead of actuator, a cam mechanism is used to apply pressure on the nozzle. Cam mechanism consist of a metallic cam

connected to a gear motor. It presses the nozzle knob as it rotates. A separate motor driver is used to drive this motor.

STEP 6: BUILDING THE ROBOT

Choose a board of convenient size and strength to carry the extinguisher. Use either metal plate board or plywood board. Drill out holes for connecting motor clamps.Place the motor to the chassis with the help of clamp and connect wheels. Short the wires of the motor on the same side such that they rotate in the same direction.Connect each motor pair to the motor driver. Place the flame sensors in the front side of chassis 5-6cm apart, such that the sensor in middle is placed at the center of chassis. Sensitivity of sensors on the sides must be adjusted to detect fire far away. Sensitivity of the center sensor is reduced to detect fire 30cm away. Digital outputs of sensors are connected to pin 2,3,4 of the arduino board. Connect an led to pin 10 so that it glows when fire is detected. Inputs to the motors on left side is obtained from pins 5 and 6 and that for motors on right side is obtained from pin 7 and 8. Pin 11 used to trigger the valve or actuator( pin 11 and12 for cam arrangement). Fire extinguisher must be place on the top of the chassis, inclined at an angle so that it release towards fire. Adjust sensitivity of the center sensor and position or angle of the extinguisher to match the triggering.

75 Comments

while(digitalRead(d2)==HIGH)

{

digitalWrite(led,HIGH);

digitalWrite(enable,HIGH);

start();

brake();

delay(5000);

normal();

backward();

delay(700);

forward();

delay(1000);

}

spray_stop();

digitalWrite(led,LOW);

delay(500);

normal();

digitalWrite(enable,LOW);

}









Explain mi this code

Can you plz send me the exact code of this project?

Can you please tell me where can i get the code for this project
How to connect pair of motors to motor driver pls explain should we use arduino

Can you pls tell me where can i find the circuit diagram for this project

please send me details of the project my email.id is sainikesh94@gmail.com

Hey, just want to ask a question,

There are 3 flame sensors and all three would have a Vcc pin. How do u connect all 3 to the voltage pin on an arduino uno board?

can you pls send me all the details and circuit diagram in this account angelogutomanbautista@yahoo.com

What is ckt diagram of this project

can u add the circuit diagram and wiring instructions please .

Very important
No body should go for pre account . Its the same here what u see in steps

please explain details of components ...............

can u plz explain me cam mechanism

from this which motors are a1,a2 and about the sensor d1,d2,d3

plz give me the detail info about this

a1 ,a2=right

d1=left

d2=front

d3=right

int d1 = 2;

int d2 = 3;

int d3 = 4;

int led = 10;

int motora1 = 5;

int motora2 = 6;

int motorb1 = 7;

int motorb2 = 8;

int cam_motor1 = 11;

int cam_motor2 = 12;

int enable = 9;

void setup(){

pinMode(led,OUTPUT);

pinMode(d1,INPUT);

pinMode(d2,INPUT);

pinMode(d3,INPUT);

pinMode(motora1,OUTPUT);

pinMode(motora2,OUTPUT);

pinMode(motorb1,OUTPUT);

pinMode(motorb2,OUTPUT);

pinMode(cam_motor1,OUTPUT);

pinMode(cam_motor2,OUTPUT);

}

void brake()

{ digitalWrite(motora1,LOW);

digitalWrite(motora2,LOW);

digitalWrite(motorb1,LOW);

digitalWrite(motorb2,LOW);

}

void rotate()

{

digitalWrite(motora1,HIGH);

digitalWrite(motora2,LOW);

digitalWrite(motorb2,HIGH);

digitalWrite(motorb1,LOW);

}

void left()

{

digitalWrite(motora2,HIGH);

digitalWrite(motora1,LOW);

digitalWrite(motorb1,HIGH);

digitalWrite(motorb2,LOW);

}

void forward()

{

digitalWrite(motora1,HIGH);

digitalWrite(motora2,LOW);

digitalWrite(motorb1,HIGH);

digitalWrite(motorb2,LOW);

}

void backward()

{

digitalWrite(motora2,HIGH);

digitalWrite(motora1,LOW);

digitalWrite(motorb2,HIGH);

digitalWrite(motorb1,LOW);

}

void start()

{ digitalWrite(cam_motor1,HIGH);

digitalWrite(cam_motor2,LOW);

}

void spray_stop()

{

digitalWrite(cam_motor1,LOW);

digitalWrite(cam_motor2,HIGH);

}

void normal()

{

digitalWrite(cam_motor1,LOW);

digitalWrite(cam_motor2,LOW);

}

void loop(){

rotate();

while(digitalRead(d1)==HIGH&&digitalRead(d3)==HIGH&& digitalRead(d2)==LOW)

{

digitalWrite(led,HIGH);

forward();

}

while(digitalRead(d2)==HIGH)

{

digitalWrite(led,HIGH);

digitalWrite(enable,HIGH);

start();

brake();

delay(5000);

normal();

backward();

delay(700);

forward();

delay(1000);

}

spray_stop();

digitalWrite(led,LOW);

delay(500);

normal();

digitalWrite(enable,LOW);

}

Dear is this code is working or not???? And where we used cam moter2?????
send code to my email Ahmed6450@yahoo.com
More Comments