Blog
DIY Automatisches Raumlüftungssystem mit Arduino
Das vorliegende Projekt wurde durchgeführt, um ein einfaches, aber weit verbreitetes Innenraumproblem zu lösen: schlechte Luftzirkulation aufgrund hoher Temperatur und Luftfeuchtigkeit. Lüfter in den meisten Räumen, insbesondere in Schlafzimmern, Büros oder kleinen Laboren, werden in der Regel manuell bedient. In der Praxis versäumen es die Menschen oft, sie ein- oder auszuschalten, was zu Unbehagen und Energieverlust führt.
Das Konzept hier war die Entwicklung eines automatischen Raumbelüftungssystems, das auf tatsächliche Umgebungsbedingungen reagiert. Das System überwacht kontinuierlich Temperatur und Luftfeuchtigkeit und schaltet den Lüfter automatisch ein. Arduino wurde gewählt, da es ein schnelles Prototyping und eine zuverlässige Sensorintegration ermöglicht.
Dies war nicht nur eine Demoversion. Das System wurde konstruiert, in einem realen Raum getestet, optimiert und dann über längere Zeiträume betrieben. Die folgende Diskussion spiegelt diese experimentellen Tests und Entwicklungen wider.
Design Thinking und Systemkonzept
Das Problem wurde in kleinere Teilprobleme unterteilt, bevor die Hardwareverdrahtung oder die Programmierung begann.
Das System musste:
- Messen Sie genaue Temperatur- und Luftfeuchtigkeitswerte.
- Bestimmen Sie, wann eine Lüftung erforderlich ist.
- Schalten Sie einen Hochleistungsventilator sicher ein.
- Häufiges Ein- und Ausschalten vermeiden.
Es wurde entschieden, eine einfache regelbasierte Steuerungsstrategie anstelle komplexer Algorithmen zu verwenden. Die Präzisionssteuerung ist weniger wichtig als die Erreichung einer stabilen Belüftung.
Die endgültige Architektur bestand aus:
- Arduino Uno als zentrale Steuereinheit.
- Temperatur- und Feuchtigkeitssensor (DHT11).
- Relaismodul zur Trennung der Niederspannungssteuerung von der Hochlast.
- Ventilator als Ausgabegerät.
- Das getrennte Halten von Sensorik, Steuerungs- und Leistungsschaltung macht das System sicherer und erleichtert die Fehlersuche.
Verwendete Komponenten
Die im Projekt verwendeten Komponenten waren folgende:
- Arduino Uno
- DHT11 Temperatur-Feuchtigkeits-Sensormodul
- 5V Einzelkanal-Relaismodul
- AC-Ventilator über ein Relais gesteuert
- Steckbrett und Jumper-Kabel
- Externes Netzteil (wird verwendet, wenn vom Lüfter benötigt)
Die Komponenten sind alle preiswert und leicht erhältlich, was die Nachahmung dieses Projekts erleichtert.
Hardware-Verbindungen (Schritt für Schritt)
Die Hardwarekonfiguration wurde sehr einfach gehalten, um Verdrahtungsfehler zu minimieren.
Anschluss des DHT11 Sensors:
- VCC – Arduino 5V
- GND – Arduino GND
- DATEN – Digitaler Arduino-Pin 2
Ein Pull-up-Widerstand war bereits im DHT11-Modul vorhanden, daher waren keine zusätzlichen Teile erforderlich.
Anschluss des Relaismoduls:
- VCC – Arduino 5V
- GND – Arduino GND
- IN – Arduino Digitalpin 8
Der stromführende Draht des Lüfters wurde über den Schließerkontakt (NO) des Relais angeschlossen, um sicherzustellen, dass der Lüfter beim Systemstart ausgeschaltet bleibt.
⚠️ Sicherheitsvorkehrung: Die Wechselstromverkabelung wurde sorgfältig ausgeführt und separat getestet, bevor sie an das Arduino-gesteuerte Relais angeschlossen wurde.
Übersicht der Steuerlogik
Die Steuerungslogik folgt einem einfachen Ablauf:
- Temperatur und Luftfeuchtigkeit lesen.
- Vergleichen Sie die Werte mit voreingestellten Schwellenwerten.
- Schalten Sie den Lüfter ein, wenn Grenzwerte überschritten werden.
- Schalten Sie den Lüfter aus, wenn die Messwerte wieder normal sind.
- Bitte warten Sie mit der nächsten Messung.
Diese Logik erwies sich während langfristiger Tests als zuverlässig und erforderte keine unnötigen Relaisumschaltungen.
Arduino-Code (Getestet und funktionsfähig)
#include
#define DHTPIN 2
#define DHTTYPE DHT11
#define RELAY_PIN 8
float tempThreshold = 30.0;
float humidityThreshold = 70.0;
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(9600);
pinMode(RELAY_PIN, OUTPUT);
digitalWrite(RELAY_PIN, HIGH); // Relais AUS (aktiv-LOW)
dht.begin();
Serial.println("Automatisches Belüftungssystem gestartet");
}
void loop() {
float humidity = dht.readHumidity();
float temperature = dht.readTemperature();
if (isnan(humidity) || isnan(temperature)) {
Serial.println("Sensorauslesung fehlgeschlagen");
delay(2000);
return;
}
Serial.print("Temperatur: ");
Serial.print(temperature);
Serial.print(" °C | Luftfeuchtigkeit: ");
Serial.print(humidity);
Serial.println(" %");
if (temperature > tempThreshold || humidity > humidityThreshold) {
digitalWrite(RELAY_PIN, LOW); // Lüfter EIN
Serial.println("Lüfter: EIN");
} else {
digitalWrite(RELAY_PIN, HIGH); // Lüfter AUS
Serial.println("Lüfter: AUS");
}
Serial.println("----------------------");
delay(3000);
}
Wesentliche Implementierungsdetails
Wenige kleine Entscheidungen machten in der tatsächlichen Anwendung einen enormen Unterschied.
Die Schwellenwerte wurden anfänglich auf Basis von Tests gewählt. Niedrigere Temperaturen führten dazu, dass der Lüfter zu häufig ein- und ausgeschaltet wurde, weshalb der Endwert auf 30 °C angepasst wurde.
Zweitens wurde während der Erprobung eine umfangreiche serielle Überwachung durchgeführt. Die Live-Überwachung half, die Genauigkeit der Sensorwerte und das allgemeine Systemverhalten zu bestätigen.
Drittens wurde darauf geachtet, das Verhalten der Relais zu überprüfen. Viele Relaismodule sind aktiv-niedrig, was für Anfänger verwirrend sein kann, wenn es nicht frühzeitig getestet wird.
Praktische Herausforderungen
Eine der größten Herausforderungen war die langsame Reaktion des DHT11-Sensors. Häufige Messungen führten zu doppelten Werten, was durch die Einführung längerer Verzögerungen zwischen den Messungen behoben wurde.
Kurze Feuchtigkeitsschübe, wie z.B. durch Türöffnen oder Kochen in der Nähe, stellten eine weitere Herausforderung dar. Dies wurde durch die Verwendung von Verzögerungen und stabilen Schwellenwerten gemildert.
Anfänglich war ein wahrnehmbares Klicken der Relais zu hören. Die Reduzierung der Schaltfrequenz verringerte nicht nur das Geräusch, sondern verbesserte auch die Lebensdauer der Relais.
Gewonnene Erkenntnisse
Dieses Projekt hat gezeigt, dass einfache Systeme für die grundlegende Automatisierung am effektivsten sind. Komplizierte Logik hat die Leistung nicht verbessert.
Es ist wichtig, die Grenzen von Sensoren zu verstehen. Der DHT11 eignet sich für einfache Überwachungsaufgaben, aber nicht für eine schnelle oder präzise Steuerung.
Vor allem darf die elektrische Sicherheit beim Umgang mit Relais und Wechselstromlasten nicht außer Acht gelassen werden.
Die nächste Phase dieses Projekts kann Folgendes umfassen:
- Ersetzen Sie den DHT11 durch einen DHT22 Sensor
- Ein LCD- oder OLED-Display hinzufügen
- Fernüberwachung mit einem ESP32 ermöglichen
- Wenden Sie Hysterese für eine sanftere Regelung an
Abschließende Gedanken
Dieses automatische Raumbelüftungssystem demonstriert, wie Arduino mit einfacher Logik und Hardware reale Probleme lösen kann. Tests, Anpassungen und die praktische Anwendung halfen dem Projekt, sich von einer Idee zu einem voll funktionsfähigen System zu entwickeln.
Für Anfänger bietet es ein vollständiges Lernerlebnis. Für erfahrenere Benutzer dient es als Erinnerung daran, dass gute Ingenieurskunst manchmal darin besteht, Dinge einfach, stabil und sicher zu halten.
Für diejenigen, die daran interessiert sind, Projekte vom Prototyp bis zur Produktion zu bringen, sei es als Hobbyist oder als Geschäft, PCBCool bietet flexible Leiterplatten- und Leiterplattenbestückungsdienste an. Von schnellen Prototypen über Kleinserien bis hin zur Großserienfertigung – unsere Lösungen machen es einfach, Ideen in echte, funktionierende Elektronik umzusetzen.
Häufig gestellte Fragen (FAQ)
DHT11 ist günstig und leicht erhältlich, ideal für Anfänger und zur einfachen Überwachung. DHT22 hat eine schnellere Reaktionszeit und eine höhere Genauigkeit, geeignet für präzise Steuerungsanwendungen.
Ja, aber AC-Ventilatoren müssen über ein Relais gesteuert werden, um Hochspannungskreise zu isolieren.
Häufiges Schalten erhöht den Verschleiß und reduziert die Lebensdauer von Relais. Das Hinzufügen von Abtastverzögerungen, stabilen Schwellenwerten oder Hysterese kann die Anzahl der Schaltzyklen reduzieren.
Ja, Langzeittests zeigten einen stabilen Betrieb.
Selbstverständlich. Sie können ein LCD oder OLED zur lokalen Überwachung hinzufügen oder ein ESP32/Wi-Fi-Modul zur Fernsteuerung und Überwachung integrieren.
Ja. Raspberry Pi, ESP32 oder STM32 können verwendet werden, allerdings müssen Code und Verkabelung angepasst werden.
Bei Verwendung von Arduino + DHT11 + Relais + Kleinlüfter belaufen sich die Materialkosten in der Regel auf $15–$30 (ohne Leiterplatte/Gehäuse), je nach Wahl der Bauteile.
Ja! Hier kommt PCBCool ins Spiel. Sie können schnell PCB-Prototypen oder Kleinserien-PCBA erstellen und Ihr experimentelles Projekt in ein zuverlässiges, funktionierendes Produkt verwandeln.
Farhan A. ist ein Elektroingenieur, spezialisiert auf PCB-Design, Drohnen, Robotik, eingebettete Systeme und KI-basierte Hardwareentwicklung. Seine Erfahrung in C/C++, Python, KI/ML und Testing hilft ihm bei der Entwicklung praktischer Lösungen für komplexe Elektronikprojekte.