#define MQ3 0 // Connected to Pin A0
#define Buzzer 7 // Buzzer
#define Red 6 // RGB Led
#define Green 5
float sensorValue;  //variable to store sensor value
bool flag = true; // Control loop 
void setup() 
{
  Serial.begin(9600); // sets the serial port to 9600
  Serial.println("MQ3 warming up!");
  delay(200); // allow the MQ3 to warm up
  pinMode(Red,OUTPUT);
  pinMode(Green,OUTPUT);
  pinMode(Buzzer,OUTPUT);
}

void loop() 
{
  sensorValue = analogRead(MQ3); // read analog input pin A0
  digitalWrite(Red,HIGH);
  digitalWrite(Green,LOW);
  Serial.print("Sensor Value: ");
  Serial.println(sensorValue);
  if(sensorValue > 500)
  {
    if(flag == true)
    {
       for (int i = 0; i <= 8; i++) 
       {
          digitalWrite(Green,HIGH);
          digitalWrite(Red,LOW);
          digitalWrite(Buzzer,HIGH);
          delay(100);        // ...for 1 sec
          digitalWrite(Red,HIGH);
          digitalWrite(Buzzer,LOW);
          delay(100);    
       }
       flag = false;
    }
  }
 else
 {
   flag = true;
 }
}
