Forum: Projekte & Code AVR Lüftersteuerung: 3 Versionen


von Ingo B. (tueddler)


Angehängte Dateien:

Lesenswert?

Moin,

ja ich weiß, Lüftersteuerungen haben 'nen Bart wie Methusalem. Trotzdem 
hier mal drei Varianten, die bei mir alle im Betrieb waren (die zweite 
allerdings nur auf dem Streckbrett). Wen das nicht interessiert möge 
diesen Beitrag bitte ignorieren.

Benötigt habe ich eine Lüftersteuerung für einen kompakten 
Audio-Verstärker, dessen passive Kühlung aus Platzgründen begrenzt ist. 
Der soll natürlich nur dann aktiv gekühlt werden, wenn es absolut 
notwendig ist. Da in solch einem Fall die Lautsprecher die 
Geräuschkulisse dominieren sollten, ist das Lüftergeräusch dann nicht 
wahrnehmbar. Eigentlich gibt es für soetwas Schaltungen wie Sand am 
Meer, aber folgende Bedingungen waren hier wichtig, die die Auswahl 
stark zusammenschrumpfen lassen: Der Lüfter muss absolut unhörbar sein, 
wenn der Verstärker auf niedriger Leistung läuft; wenn es wärmer wird, 
sollte die Drehzahl gleichmäßig erhöht werden (also nicht einfach per 
Schmitt-Trigger entweder an oder aus); und die Kennlinie (d.h. 
Ausgangsspannung als Funktion der Temperatur) muss präzise justierbar 
sein.

In allen drei hier betrachteten Fällen wird die Temperatur per NTC 
direkt an den Audi-ICs gemessen (2 x TDA7294) und als Lüfter wird ein 
einfacher dc-Lüfter verwendet (größere Auswahl als bei PC-Lüftern mit 
PWM Eingang). Version eins (FanControl_Analog_schematics.pdf) ist eine 
einfache lineare Schaltung, bei der die Lüfterspannung  proportional zur 
Differenz zwischen dem Spannungabfall am NTC und einer einstellbaren 
Schwellenspannung ansteigt. Dies wird über einen Doppel-OPV realisiert, 
und als Leistungstreiber wird ein Spannungsregler (LM317) verwendet. Das 
funktioniert im Prinzip ganz gut, aber die Poti-Einstellung ist nervig 
und unintuitiv, und die Kennlinie kann nicht flexibel angepasst werden. 
Außerdem ist die Dropout-Spannung des LM317 recht hoch, so dass die 
Spannungsversorgung deutlich höher sein muss als die maximale 
Lüfterspannung.

Mit einem Mikrocontroller ist man deutlich flexibler und kann im Prinzip 
jede Kennlinie einprogrammieren. Hier im Forum gibt es dazu ja einige 
Ansätze, aber leider arbeiten die allermeisten mit einem PWM-Signal 
direkt am Lüfter. Dies ist für Audio-Anwendungen tödlich, da man die 
Geräuschentwicklung auch bei niedrigen Drehzahlen nicht wirklich in den 
Griff bekommt. Eigene Versuche mit Frequenzen zwischen 5Hz und 20kHz 
brachten keine zufriedenstellende Lösung. Bei der zweiten Version 
(FanControl_AVR_schematics.pdf) wird daher das PWM-Ausgangssignal eines 
Attiny25 geglättet und das resultierende dc-Ausgangssignal über einen 
billigen Leistungs-OPV (L272) verstärkt. Der kommt fast bis an die Rails 
dran, so dass die Versorgung mit der maximalen Lüfterspannung (z.B. 12V) 
erfolgen kann. Leider wird ziemlich viel Leistung verbraten, daher 
sollte man dem L272 einen Kühlkörper gönnen. Für größere Lüfter wird das 
dann u.U. zum ernsthaften Problem.

Version drei (FanControl_AVR_Regul_schematics.pdf) umgeht diesen 
Nachteil, indem eine Art Schaltregler verwendet wird, der eine geringe 
Verlustleistung hat. Problem hierbei war, dass die Ausgangsspannung 
nicht wirklich linear zum Tastverhältnis des PWM-Signals ist (der Lüfter 
ist eben kein ohmscher Widerstand). Also wird die Ausgangsspannung 
gemessen und per Software-Regelschleife auf den durch die Kennlinie 
vorgegebenen Wert geregelt. Dies ist zwar recht langsam (bei einem 
normalen Schaltnetzteil würde man das sicher nicht so machen), aber 
besonders fix reagiert der Lüfter ja ohnehin nicht. Diese Version ist 
nun ein paar Wochen im Einsatz und mein persönlicher Favorit. Die 
Komponenten sind ziemlich unkritisch, ich habe z.B. für die Transistoren 
und den MOSFET einfach das Billigste genommen, was ich vorrätig hatte. 
Natürlich liegt es nah, die Schaltung um zusätzliche Funktionalität zu 
erweitern: Kennlinieneinstellung und Regelparameter per Taster (die Pins 
werden allerdings beim Tiny dann knapp), Warnleuchte bei Übertemperatur, 
etc.

Die angehängten Dateien enthalten dann noch die Quellcodes (asm) und das 
Layout (KiCad) der dritten Version.

Ich möchte betonen, dass viele der eingeflossenen Ideen nicht auf meinem 
Mist gewachsen sind, sondern bereits hier im Forum diskutiert wurden. 
Leider gibt es nur ganz wenige konkrete Projekte, und da ich mir zu 
Beginn dieser Basteleien soetwas gewünscht hätte, hoffe ich, dass dieses 
Projekt vielleicht für irgendjemanden nützlich sein könnte.

Schöne Grüße,
Ingo.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.