Fire Suppressor System, To Identify the Fire and To Extinguish It.

Fire accident has become a threat that has destroyed many of precious things which are treasures, investments, valuable properties as well as people’s life destruction.

Main Objective of Our System

To design and implement a simple fire suppressor system that will be able identify the class (A) fire, to extinguish it, and make a call to fire station for any other class of fire.

Specific Objectives of Our System

1. To design a fire detection, classification, fire alarm, fire call, and suppressor module.

2. To implement, fire detection, fire classification, fire alarm, fire call and fire suppressor module.

3. To integrate all modules resulting into a system.


    a. Flame Sensor

The flame sensor is used to detect the fire or other light sources which are in the range of wavelength from 760nm to 1100nm.

The flame sensor module with the following features will be enough for our system:

i. The operating voltage is from 3.3 – 5V.

ii. It gives us both analog and digital output.

iii. It has a led indicator, which indicates that whether the flame is detected or not.

iv. The threshold value can be changes by rotating the top of potentiometer.

v. Flame detection distance, lighter flame test can be triggered within 0.8m, if the intensity of flame is high, the detection distance will be increased.

vi. The detection angle of the flame sensor module is about 60 degrees

   b. Smoke Sensor

The type of smoke sensor we are going to use is MQ2 smoke sensor.

Properties of MQ2 sensor:

i. Sensitive to smoke and to the following flammable gases: - LPG, Butane, Propane, Methane, Alcohol, Hydrogen.

ii. Resistant of the sensor is different depending on the type of the gas

iii. Smoke sensor has built in potentiometer that allow you to adjust the sensor sensitivity according to how accurate you want to detect gas

iv. Output voltage is directly proportional to smoke concentration. When gas concentration increased also the output voltage increased and when gas concentration decrease also the voltage output is decrease.

   c. GSM Module

The COMPIM model is a Physical Interface Model of a serial port. Incoming serial data is buffered and presented to the circuit as a digital signal. The physical COM part also includes virtual COM port over USB and Bluetooth with some work-around.

   d. DC motor

 The system needs the motor to enable mechanical movement in the process of finding and detecting the fire direction. Also the motor will move the nozzle of water pump to the direction of fire in order to put off fire.

The following are properties of DC motor we are going to use in our system;

         Operating range: 3.0 - 12.0 Volts

         Nominal Voltage: 12v

         No Load Speed: 5600 rpm, Max. Efficiency Speed: 4906 rpm

         No Load Current: 0.022 A, Max. Efficiency Current: 0.16 -0.23 A

         Max. Efficiency Torque: 21.1

   e. Arduino Uno

The following are the properties of Arduino Uno used in our system.

          Properties of Arduino

           Microcontroller: AT mega328

           Operating voltage: 5v

           Input voltage (recommended): 7-12v

           Input voltage (limited)6-20v

           Digital I/O pins: 14 (of which 6 provide pulse width modulation output)

           Analog input pins:6

           Dc current per I/O pin :40mA

           Dc current for 3.3v pin:50mA

           Flash memory: 32kB of which 0.5kB used by boot loader.

           Sram:2kB(AT mega 328)

           Eeprom:1KB (AT mega 328)

           Clock speed:16 MHz


  1. Arduino software

The software like Platform IDE used for writing and running (executes) codes during programming of Arduino microcontroller

  1. Proteus

This is used to simulate the circuit so that with the Arduino library in it could give the desired output.

Here the code to use in Arduino software

SoftwareSerial mySerial(9, 10);
char msg;
char call;
//End of Call decralation

int pin_buzzer =7;
int fl_sensor =8;
int gs_sensor = 12;
int dir_motor = 2;
int pump = 4;
int sensorSignal;
int sensorInput;
int gasSensor;
int thres = 300;
char x;
//End of the easy thing

void setup() {
  // put your setup code here, to run once:
  mySerial.begin(9600);   // Setting the baud rate of GSM Module  
  //End of call


void loop() {
  // put your main code here, to run repeatedly:
  sensorSignal = digitalRead(fl_sensor);
  gasSensor = digitalRead(gs_sensor);
  sensorInput  = !sensorSignal;
  Serial.print("Gas value ");
  //End of easy

  /*if(sensorInput == HIGH){
    x = "c";

    if((sensorInput == HIGH)or(gasSensor>=thres)){
      if((gasSensor>=thres and sensorInput == LOW)){
        Serial.println("HELOOW FINDING DIRECTION");
        }else if(sensorInput == HIGH){
          Serial.println("STOP DIR, SUPPRESS FIRE");

if (mySerial.available()>0)

void MakeCall()
  mySerial.println("ATD+255719890681;"); // ATDxxxxxxxxxx; -- watch out here for semicolon at the end!!
  Serial.println("Calling  "); // print response over serial port


Login to comment