const int gasSensorA1Pin = A0; // Analog input pin for sensor A1
const int gasSensorA2Pin = A1; // Analog input pin for sensor A2
const int heaterH1Pin = 2; // Digital pin for heater H1
const int heaterH2Pin = 3; // Digital pin for heater H2
const int buzzerPin = 4; // Digital pin for the buzzer
const int ledA1Pin = 5; // Digital pin for LED corresponding to sensor A1
const int ledA2Pin = 6; // Digital pin for LED corresponding to sensor A2
int threshold = 1022; // Adjust this threshold value based on your sensor and gas type
void setup() {
pinMode(heaterH1Pin, OUTPUT);
pinMode(heaterH2Pin, OUTPUT);
pinMode(buzzerPin, OUTPUT);
pinMode(ledA1Pin, OUTPUT);
pinMode(ledA2Pin, OUTPUT);
Serial.begin(9600); // Initialize serial communication for debugging (optional)
}
void loop() {
// Turn on heater for sensor A1
digitalWrite(heaterH1Pin, HIGH);
delay(3000); // Allow time for the sensor to stabilize (adjust as needed)
int gasValueA1 = analogRead(gasSensorA1Pin); // Read sensor A1
Serial.print("Gas Value A1: ");
Serial.println(gasValueA1);
// Turn on heater for sensor A2
digitalWrite(heaterH2Pin, HIGH);
delay(3000); // Allow time for the sensor to stabilize (adjust as needed)
int gasValueA2 = analogRead(gasSensorA2Pin); // Read sensor A2
Serial.print("Gas Value A2: ");
Serial.println(gasValueA2);
// Turn off heaters
digitalWrite(heaterH1Pin, LOW);
digitalWrite(heaterH2Pin, LOW);
if (gasValueA1 > threshold || gasValueA2 > threshold) {
// Gas detected, trigger the buzzer and turn on LEDs
digitalWrite(buzzerPin, HIGH);
digitalWrite(ledA1Pin, HIGH); // Turn on LED for sensor A1
digitalWrite(ledA2Pin, HIGH); // Turn on LED for sensor A2
Serial.println("Gas detected! Alarm activated");
delay(10000); // Buzzer activates for 1 second
digitalWrite(buzzerPin, LOW);
digitalWrite(ledA1Pin, LOW); // Turn off LED for sensor A1
digitalWrite(ledA2Pin, LOW); // Turn off LED for sensor A2
delay(2000); // Wait for a moment before checking again
} else {
// No gas detected, turn off the buzzer and LEDs
digitalWrite(buzzerPin, LOW);
digitalWrite(ledA1Pin, LOW); // Turn off LED for sensor A1
digitalWrite(ledA2Pin, LOW); // Turn off LED for sensor A2
delay(2000); // Wait for a moment before checking again
}
}