Interfacing of Flame Sensor With Arduino
Interfacing of Flame Sensor With Arduino
Arduino
Introduction about Flame Sensor
• A flame sensor module that consists of a flame
sensor (IR receiver), resistor, capacitor,
potentiometer, and comparator LM393 in an
integrated circuit. It can detect infrared light with
a wavelength ranging from 700nm to
1000nm.The far-infrared flame probe converts
the light detected in the form of infrared light
into current changes. Sensitivity is adjusted
through the onboard variable resistor with a
detection angle of 60 degrees.
More about Flame Sensor
• 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.
• Working voltage is between
3.3v and 5.2v DC, with a digital
output to indicate the presence
of a signal. Sensing is
conditioned by an LM393
comparator.
Applications of flame sensors
• Hydrogen stations
• Combustion monitors for burners
• Oil and gas pipelines
• Automotive manufacturing facilities
• Nuclear facilities
• Aircraft hangars
• Turbine enclosures
Example
• 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). In this project we are using an IR
based flame sensor. It is based on the YG1006 sensor
which is a high speed and high sensitive NPN silicon
phototransistor. It can detect infrared light with a
wavelength ranging from 700nm to 1000nm and its
detection angle is about 60°.
Connecting your Flame Detector to an
Arduino
Components Required
• int buzzer = 8;
int LED = 7;
int flame_sensor = 4;
int flame_detected;
• void setup()
{
Serial.begin(9600);
pinMode(buzzer, OUTPUT);
pinMode(LED, OUTPUT);
pinMode(flame_sensor, INPUT);
}
• void loop()
{
flame_detected = digitalRead(flame_sensor);
• if (flame_detected == 1)
{
Serial.println("Flame detected...! take action immediately.");
digitalWrite(buzzer, HIGH);
digitalWrite(LED, HIGH);
delay(200);
digitalWrite(LED, LOW);
delay(200);
}
else
{
Serial.println("No flame detected. stay cool");
digitalWrite(buzzer, LOW);
digitalWrite(LED, LOW);
}
delay(1000);
}