Ciclo de Creatividad acelerada
Detector de calidad del aire con alerta visual y sonora
Ciclo de Creatividad aplicado:
1️⃣ Identificar el Problema:
En muchos ambientes interiores (aulas, oficinas), la calidad del aire puede deteriorarse por CO₂ y otros gases tóxicos, afectando la salud y la concentración. Necesitamos un sistema que avise cuando la calidad del aire es mala.
-
Idea: Sensor MQ-135 + LEDs individuales + buzzer.
-
Prototipo: LEDs normales para cada estado.
Idea: Sensor MQ-135 + LEDs individuales + buzzer.
Prototipo: LEDs normales para cada estado.
🔧 Materiales actualizados:
-
Arduino UNO o Nano.
-
Sensor MQ-135.
-
3 LEDs:
-
1 LED verde.
-
1 LED amarillo.
-
1 LED rojo.
-
Buzzer activo.
-
4 resistencias de 220Ω (una por cada LED y una para el buzzer si quieres limitar la corriente).
-
Protoboard y cables.
Arduino UNO o Nano.
Sensor MQ-135.
3 LEDs:
-
1 LED verde.
-
1 LED amarillo.
-
1 LED rojo.
Buzzer activo.
4 resistencias de 220Ω (una por cada LED y una para el buzzer si quieres limitar la corriente).
Protoboard y cables.
🔌 Esquema de conexiones:
Elemento | Pin Arduino |
---|---|
MQ-135 | A0 (data) |
LED verde | Pin 9 |
LED amarillo | Pin 10 |
LED rojo | Pin 11 |
Buzzer | Pin 8 |
(Las patitas largas de los LEDs al pin digital y la corta a GND con su resistencia.)
💻 Código EN C++: https://app.arduino.cc/sketches/d07b9d6c-d014-4c85-88a2-75ec5e3fcd5d?view-mode=preview
// Pines
const int sensorPin = A0;
const int ledVerde = 9;
const int ledAmarillo = 10;
const int ledRojo = 11;
const int buzzerPin = 8;
void setup() {
pinMode(ledVerde, OUTPUT);
pinMode(ledAmarillo, OUTPUT);
pinMode(ledRojo, OUTPUT);
pinMode(buzzerPin, OUTPUT);
Serial.begin(9600);
}
void loop() {
int airQuality = analogRead(sensorPin);
Serial.println(airQuality);
if (airQuality < 200) { // Buena calidad
digitalWrite(ledVerde, HIGH);
digitalWrite(ledAmarillo, LOW);
digitalWrite(ledRojo, LOW);
digitalWrite(buzzerPin, LOW);
} else if (airQuality >= 200 && airQuality < 400) { // Regular
digitalWrite(ledVerde, LOW);
digitalWrite(ledAmarillo, HIGH);
digitalWrite(ledRojo, LOW);
digitalWrite(buzzerPin, LOW);
} else { // Mala calidad
digitalWrite(ledVerde, LOW);
digitalWrite(ledAmarillo, LOW);
digitalWrite(ledRojo, HIGH);
digitalWrite(buzzerPin, HIGH);
}
delay(1000);
}
// Pines
const int sensorPin = A0;
const int ledVerde = 9;
const int ledAmarillo = 10;
const int ledRojo = 11;
const int buzzerPin = 8;
void setup() {
pinMode(ledVerde, OUTPUT);
pinMode(ledAmarillo, OUTPUT);
pinMode(ledRojo, OUTPUT);
pinMode(buzzerPin, OUTPUT);
Serial.begin(9600);
}
void loop() {
int airQuality = analogRead(sensorPin);
Serial.println(airQuality);
if (airQuality < 200) { // Buena calidad
digitalWrite(ledVerde, HIGH);
digitalWrite(ledAmarillo, LOW);
digitalWrite(ledRojo, LOW);
digitalWrite(buzzerPin, LOW);
} else if (airQuality >= 200 && airQuality < 400) { // Regular
digitalWrite(ledVerde, LOW);
digitalWrite(ledAmarillo, HIGH);
digitalWrite(ledRojo, LOW);
digitalWrite(buzzerPin, LOW);
} else { // Mala calidad
digitalWrite(ledVerde, LOW);
digitalWrite(ledAmarillo, LOW);
digitalWrite(ledRojo, HIGH);
digitalWrite(buzzerPin, HIGH);
}
delay(1000);
}
Comments
Post a Comment