🎯 Cel projektu:
Stworzymy inteligentny system wentylacji warsztatowej, który automatycznie włącza wentylator w sytuacji zadymienia, obecności oparów lub zwiększonego stężenia szkodliwych gazów. Dzięki AI, system potrafi odróżnić np. parę wodną od groźnych oparów.
🧰 Poziom trudności:
🔧 Początkujący – średnio zaawansowany
⏱️ Czas wykonania:
1–2 godziny (montaż + testy)
💡 Zastosowania:
- Warsztat z lutownicą
- Pracownia chemiczna
- Pomieszczenia bez wentylacji
- Praca z klejami lub farbami
🛠️ Lista potrzebnych komponentów:
Komponent | Opis | Koszt szacunkowy |
---|---|---|
ESP32 | Mikrokontroler z WiFi i ADC | 20–30 zł |
Czujnik gazu MQ-2 lub MQ-135 | Wykrywa dym, propan, butan, opary | 5–10 zł |
Przekaźnik 5V | Steruje wentylatorem | 10 zł |
Wentylator 12V lub 230V | Zależnie od dostępnego zasilania | 20–50 zł |
Zasilacz 12V/5V | Zależnie od wentylatora i ESP32 | 15–30 zł |
Przewody, płytka stykowa | Do połączeń | 5–10 zł |
(opcjonalnie) obudowa na projekt | Chroni układ przed kurzem | 10–20 zł |
📷 Schemat połączeń:
- MQ-2/MQ-135 → ESP32:
- VCC → 3.3V
- GND → GND
- AOUT → GPIO 34 (analogowy odczyt)
- Przekaźnik → ESP32:
- IN → GPIO 27
- VCC → 5V
- GND → GND
- Wentylator → Przekaźnik → Zasilanie
🧪 Krok 1: Podłączenie i test czujnika
- Wgraj ten kod do Arduino IDE:
cppKopiujEdytujint czujnik = 34;
void setup() {
Serial.begin(115200);
}
void loop() {
int odczyt = analogRead(czujnik);
Serial.println(odczyt);
delay(500);
}
- Obserwuj wartości w monitorze portu szeregowego:
- Wartości < 200 = czyste powietrze
- Wartości > 300 = lekki dym
- Wartości > 500 = silny dym / opary
- Zanotuj typowe zakresy w Twoim pomieszczeniu.
🧠 Krok 2: Trening AI (opcjonalnie, ale zalecany)
- Przejdź na Edge Impulse.
- Utwórz darmowe konto i nowy projekt.
- Zbieraj dane w 3 klasach:
- normalne powietrze
- opary bezpieczne (np. para z czajnika)
- dym / niebezpieczne opary
- Wgraj dane z ESP32 przez UART lub CSV.
- Wygeneruj model klasyfikacyjny.
- Pobrany model zintegrowany z Arduino lub MicroPython.
🔁 Krok 3: Reakcja – automatyczne sterowanie przekaźnikiem
Przykładowy kod:
cppKopiujEdytujint czujnik = 34;
int przekaźnik = 27;
void setup() {
pinMode(przekaźnik, OUTPUT);
Serial.begin(115200);
}
void loop() {
int odczyt = analogRead(czujnik);
if (odczyt > 400) {
digitalWrite(przekaźnik, HIGH); // Włącz wentylator
} else {
digitalWrite(przekaźnik, LOW); // Wyłącz
}
delay(500);
}
Jeśli korzystasz z modelu AI, zamiast progu liczbowego użyj klasyfikacji:
cppKopiujEdytujif (output == "dym" || output == "zagrożenie") {
digitalWrite(przekaźnik, HIGH);
}
🔧 Krok 4: Zasilanie i montaż
- Cały układ możesz zasilić z jednego zasilacza (np. 12V z przetwornicą step-down dla ESP32).
- Warto zastosować zabezpieczenie (bezpiecznik, dioda) na linii wentylatora.
- Umieść czujnik w miejscu, gdzie gromadzą się opary.
- ESP i przekaźnik zamknij w obudowie z otworami wentylacyjnymi.
📲 Krok 5: Powiadomienia (opcjonalnie)
Możesz dodać powiadomienie przez IFTTT:
- Wejdź na ifttt.com/maker_webhooks
- Stwórz zdarzenie „dym_warsztat”
- ESP wyśle zapytanie HTTP:
cppKopiujEdytujhttp.begin("http://maker.ifttt.com/trigger/dym_warsztat/with/key/TWÓJ_KLUCZ");
http.GET();
✅ Efekt końcowy:
- System działa autonomicznie.
- Włącza wentylator tylko w odpowiednich warunkach.
- AI zmniejsza ilość fałszywych alarmów.
- Możesz zdalnie otrzymać alert.
- Rozszerzalne o automatyczne zamykanie drzwi, odcięcie zasilania itp.
📘 Ten projekt to świetna podstawa do zautomatyzowania całego warsztatu.
Bezpieczeństwo i komfort pracy w jednym – teraz naprawdę można powiedzieć, że „warsztat myśli sam”.