Lüftersteuerung

Funktionsweise

Über diese Steuerung werden temperaturabhängig zwei Lüfter eines Serverschranks gesteuert. Die aktuellen Informationen (Temperatur, Lüfterleistung und Drehzahl) werden auf einem Display angezeigt. Ebenso sind diese Daten via MQTT verfügbar. Das Display wird mittels eines Bewegungsmelders aktiviert und schaltet sich automatisch nach einer konfigurierbaren Zeit wieder aus. Ebenso ist der Temperaturbereich, in dem die Drehzahl der Lüfter geregelt wird, einstellbar.

Schaltplan

Schaltplan

Hardware

Bei den beiden Lüftern handelt es sich um Modelle von Noctua (NF-A8 PWM) mit 4-poligem PWM-Anschluss. Betrieben werden die Lüfter mit 12V Gleichspannung. Da das PWM-Signal des ESP32 mit einer Spannung in Höhe von 3,3V generiert wird, erfolgt die Anhebung auf 12V mittels eines Level Shifters. Gleiches gilt in umgekehrter Richtung für das Tachosignal des Lüfters, das Informationen über die aktuelle Drehzahl des Lüfters liefert.

Lüfter NF-A8 PWM

Das gesamte System wird mit 12V Gleichspannung versorgt. Mit Hilfe eines DC/DC Konverters (LM2596S) erhält man eine 5V Gleichspannung zur Versorgung des ESP32 und des Bewegungsmelders (PIR). Das Display und der Temperatursensor werden dagegen mit 3,3V versorgt. Zur Messung der Temperatur im Gehäuse wird ein DS18B20 genutzt. Als Bewegungsmelder kommt das Modul HC-SR501 zum Einsatz, bei dem sich die Empfindlichkeit direkt auf dem Board einstellen lässt. Ebenso kann das Triggerverhalten konfiguriert werden.

Als Display kommt die OLED-Variante SSD 1306 zum Einsatz. Die Ansteuerung erfolgt über den I2C-Bus.

OLED Display SSD 1306

Eingebaut sind alle Komponenten in einem Kunststoff-Gehäuse mit transparentem Deckel, so dass das Display gut eingesehen werden kann. Die Netzteil befindet sich außerhalb des Gehäuses.

Vollständige Installation

Software

Die Steuerung ist in MicroPyhton (1.13) implementiert. Die Konfiguration der Zugangsdaten zum WLAN sowie des MQTT-Clients erfolgt im Quellcode. Auf Basis der Temperatur-Informationen wird gemäß des Regelbereichs das entsprechende PWM-Signal für die Lüfter erzeugt. Die Steuerung erfolgt unabhängig von der WLAN bzw. MQTT Verbindung. Die aktuellen Daten werden regelmäßig per MQTT übermittelt. Ebenso ist eine Konfiguration über MQTT möglich. Die letzte Konfiguration wird vom ESP gespeichert und steht nach einem Neustart weiterhin zur Verfügung.

MQTT

Die nachfolgende Tabelle erläutert den Informationsaustausch über MQTT:

tele/<main_topic>/STATE{„temperature“:26.88,
„start“:22,
„end“:30,
„power“:61,
„fan1“:1560,
„fan2“:1530,
„wifi-off“:“22:00″,
„wifi-on“:“7:00″,
„display“:30,
„signal“:-67
„boot“:“26.01.2021 06:30″}
Übertragung aller Status-Informationen im JSON-Format. Der Regelbereich wird über die Parameter „start“ und „end“ definiert. „power“ ist die aktuelle Leistung der Lüfter in Prozent. Die entsprechende Drehzahl wird durch „fan1“ und „fan2“ übermittelt. Das WLAN-Modul kann für eine bestimmte Zeit deaktiviert werden (z.B. nachts). Die Anzeigedauer des Displays in Sekunden wird über „display“ bestimmt. Die Stärke des WLAN-Empfangs wird mittels „signal“ übergeben. Der Parameter „boot“ enthält den Startzeitpunkt des Systems.
cmd/<main_topic>/START20Temperatur, ab der der Lüfter startet und die Regelung beginnt
cmd/<main_topic>/END30Temperatur, ab der der Lüfter zu 100% läuft und die Regelung endet
cmd/<main_topic>/WIFI-OFF22:00Zeitpunkt der Deaktivierung des WLAN
cmd/<main_topic>/WIFI-ON7:00Zeitpunkt der Aktivierung des WLAN
cmd/<main_topic>/DISPLAY30Dauer in Sekunden, wir lange das Display aktiviert bleibt

Download

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.