Hallo, habe nun schon einige der Beiträge bezüglich 4-PIN Lüfter + PWM durch nur konnte ich bislang keine direkte Erläuterungen für meine Fragen finden. Von daher ein separater Beitrag.. Was habe ich vor: Einen fertigen 4-Pin PWM Lüfter per PWM steuern (regeln?). Hintergrund: Ich möchte über einen ESP8266 u.a. einen Lüfter bezüglich seiner Drehzahl steuern, da ich leider keine freien Pins mehr habe und sowieso schon i2c verwende würde sich die Lüftersteuerung über i2c anbieten. Da ich in diesem Bereich blutiger Anfänger bin möchte ich es mir möglichst einfach machen (deshalb ein fertiger 4-Pin PWM Lüfter) und eine einfache "i2c -> pwm" Möglichkeit. Hierzu habe ich z.B. mit https://www.amazon.com/Channel-Driver-interface-PCA9685-arduino-Raspberry/dp/B01D9VNXEQ/ref=sr_1_2?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&keywords=i2c+pwm&qid=1567177237&s=electronics&sr=1-2 einen fertigen Controller mit PWM und i2c gefunden. (So gut wie alles, was ich gefunden habe scheint auf dem PCA9685 zu basieren.) Nun finde ich aber hier im Forum und auch sonst häufiger die Angaben, dass diese 4-PIN PWM Lüfter mit 25kHz angesteuert werden möchten - der fertige Controller liefert aber nur bis (max.) 1,6kHz (mit 12bit Auflösung). --> Nun stellt sich mir die Frage, ob das überhaupt klappen kann? Mein Grundverständnis bezüglich PWM: Bei einer Frequenz von 1.6kHz habe ich eine Periodendauer von 1/1600s = 0,625ms.. also kann ich alle 0,625ms den Pegel "umschalten"? --> Was sagt mir dann die Auflösung von 12-Bit? Im mikrocontroller.net Artikel bezüglich PWM habe ich leider nichts gefunden, was mir den Zusammenhang aus Frequenz und Auflösung erklärt hätte (zumindest nicht für mich verständlich). Vielen Dank schon mal!
Warum sollte ein für 25KHz ausgelegter Lüfter mit nur 1,6KHz funktionieren? Die Auflösung zeigt auf wie fein das PWM Signal zwischen 0 und 100% abgestuft werden kann. 12Bit = 2^12 = 4096 möglicher PWM Muster Und einen direkten Zusammenhang gibt es auch nicht, das eine ist die Auflösung, das andere die PWM Frequenz. Einzig das Produkt könnte man noch in den Raum werfen: Frequenz * Auflösung liefert die minimale Bitlänge.
Wolfgang V. schrieb: > --> Nun stellt sich mir die Frage, ob das überhaupt klappen kann? Ja, aber das Ergebnis wird dir nicht gefallen, der Lüfter wird pfeifen. Nimm doch einfach statt des exotischen PCA9685 einen kleinen µC der als I2C Slave programmiert ist. Passende AppNotes gibts von den Herstellern bestimmt.
Wolfgang V. schrieb: > Nun finde ich aber hier im Forum und auch sonst häufiger die Angaben, > dass diese 4-PIN PWM Lüfter mit 25kHz angesteuert werden möchten Ja. > der > fertige Controller liefert aber nur bis (max.) 1,6kHz (mit 12bit > Auflösung). Also ungeeignet. Zudem völlig überzogene Auflösung, aber egal. > --> Nun stellt sich mir die Frage, ob das überhaupt klappen kann? Du kannst nicht erwarten, dass ein gekaufter Lüfter mit 1.5kHz funktioniert. 1 pin reicht ja auch für PWM. Wenn man noch einen für das Tachosignal braucht wird es eng.
Ich kann dazu beitragen, dass die meisten 4-Pin Lüfter sehr unkritisch in Bezug auf Einhaltung der Frequenz sind. Ob allerdings 1.6kHz reichen müsste man testen. Pfeifen wird da höchstwahrscheinlich nichts, weil diese Frequenz des Steuersignals nichts mit der Motor-PWM zu tun hat.
Harald A. schrieb: > Ich kann dazu beitragen, dass die meisten 4-Pin Lüfter sehr > unkritisch > in Bezug auf Einhaltung der Frequenz sind. Ob allerdings 1.6kHz reichen > müsste man testen. Pfeifen wird da höchstwahrscheinlich nichts, weil > diese Frequenz des Steuersignals nichts mit der Motor-PWM zu tun hat. Du solltest dir mal die Innenschaltung eines solchen Lüfters ansehen.
Hallo Wolfgang V. schrieb: > Hintergrund: > Ich möchte über einen ESP8266 u.a. einen Lüfter bezüglich seiner > Drehzahl steuern, da ich leider keine freien Pins mehr habe und sowieso > schon i2c verwende würde sich die Lüftersteuerung über i2c anbieten. > > Da ich in diesem Bereich blutiger Anfänger bin möchte ich es mir > möglichst einfach machen (deshalb ein fertiger 4-Pin PWM Lüfter) und > eine einfache "i2c -> pwm" Möglichkeit. Dann nimm doch ein Lüftercontroller IC. Mindestens das, was von lm-sensors unterstützt wird, sollte man auch selbst zum Laufen bekommen. Wenn man ein defektes Mainboard rumliegen hat, kann man sich mit etwas Glück sogar dort bedienen. MfG
hinz schrieb: > Harald A. schrieb: >> Ich kann dazu beitragen, dass die meisten 4-Pin Lüfter sehr >> unkritisch >> in Bezug auf Einhaltung der Frequenz sind. Ob allerdings 1.6kHz reichen >> müsste man testen. Pfeifen wird da höchstwahrscheinlich nichts, weil >> diese Frequenz des Steuersignals nichts mit der Motor-PWM zu tun hat. > > Du solltest dir mal die Innenschaltung eines solchen Lüfters ansehen. Hi Hinz, Sehr gerne, habe es bisher noch nicht getan. Hast du zufällig einen Link?
hinz schrieb: > Nimm doch einfach statt des exotischen PCA9685 einen kleinen µC der als > I2C Slave programmiert ist Welcher würde sich da anbieten? Kannst du da was empfehlen?! Da ich, wie schon erwähnt, elektrotechnisch blutiger Anfänger bin, suche ich logischerweise etwas ohne bzw. mit möglichst wenig Außenbeschallung.
Harald A. schrieb: >> Du solltest dir mal die Innenschaltung eines solchen Lüfters ansehen. > Sehr gerne, habe es bisher noch nicht getan. Hast du zufällig einen > Link? https://www.analog.com/en/analog-dialogue/articles/how-to-control-fan-speed.html
MaWin schrieb: > Du kannst nicht erwarten, dass ein gekaufter Lüfter mit 1.5kHz > funktioniert. Erwarte ich ja nicht... aber die Hoffnung ;-) Es liegt schlicht an meinem unzureichendem Verständnis, wie PWM funktioniert. Mal nochmal zu meinem Verständnis: - Wenn ich mit einer PWM Frequenz von 1kHz steuere, dann heißt das maximal 1 "Signalwechsel" pro 1ms - richtig?! (Also Periode von 1ms) - Bei 10kHz wären es somit 10 Wechsel pro 1ms, als eine Periode von 0,1 ms.. Insofern dachte ich, die Signaldauer bei 1kHz ist einfach 10mal so lange, wie es bei 10kHz wäre... entsprechend weniger"agil" wäre die Steuerung aber mehr auch nicht. Wenn das Signal dann zu "kantig" ist, würde hier nicht ein einfacher Kondensator Abhilfe schaffen? Mir ist durchaus klar, dass das jetzt sehr laienhaft klingt - entsprechend suche ich ja nach entsprechender Hilfestellung und bin auch gerne bereit, diese entsprechend zu berücksichtigen. Danke!
Wolfgang V. schrieb: > - Wenn ich mit einer PWM Frequenz von 1kHz steuere, dann heißt das > maximal 1 "Signalwechsel" pro 1ms - richtig?! (Also Periode von 1ms) > - Bei 10kHz wären es somit 10 Wechsel pro 1ms, als eine Periode von 0,1 > ms.. Ja. > Insofern dachte ich, die Signaldauer bei 1kHz ist einfach 10mal so > lange, wie es bei 10kHz wäre... entsprechend weniger"agil" wäre die > Steuerung aber mehr auch nicht. Nein. > Wenn das Signal dann zu "kantig" ist, würde hier nicht ein einfacher > Kondensator Abhilfe schaffen? Nein. Schau dir an wie ein Abwärtsschaltregler funktioniert. http://schmidt-walter-schaltnetzteile.de/smps/abw_hilfe.html
M.M.M schrieb: > Dann nimm doch ein Lüftercontroller IC. Mindestens das, was von > lm-sensors unterstützt wird Hast du hier konkrete Chips schon verwendet, welche gut beschaffbar sind? Und ich meine damit nicht ein altes Mainboard zu schlachten :) Ich hab das bisher einfach mit einem kleinen AVR gelöst. Bisher finde ich entweder nur über Digikey beschaffbare und für mich nicht verarbeitbare Gehäuseformen...
:
Bearbeitet durch User
Also ich hab mir so einen Luefter noch nicht von innen angeschaut, ich koennte mir aber vorstellen das der Luefter aus dem PWM-Signal erstmal wieder eine Gleichspannung macht und dann damit in sein Regel-IC geht. Natuerlich nur 4-Pin Luefter! Wenn man also schon so einen Luefter rumliegen hat dann wuerde ich einfach mal ausprobieren was passiert wenn man eine Gleichspannung von 0 bis 3.3V anlegt. Sollte sich damit auch die Drehzahl einstellen lassen dann reicht einfach ein I2C-DAC und alles ist gut. Olaf
Könnte aber auch sein das mit dem PWM Signal ein Schalttransitor die Leistung auf den Motor schaltet. Dann wäre gleichrichten ziemlich doof.
Olaf schrieb: > Also ich hab mir so einen Luefter noch nicht von innen angeschaut, > ich > koennte mir aber vorstellen das der Luefter aus dem PWM-Signal erstmal > wieder eine Gleichspannung macht und dann damit in sein Regel-IC geht. > Natuerlich nur 4-Pin Luefter! Nochmal: https://www.analog.com/en/analog-dialogue/articles/how-to-control-fan-speed.html
> Nochmal:
Warum verschwendest du unsere Lebenszeit? Da steht doch nix zu 4-Pin
Lueftern.
Und ich glaube auch nicht das die Vorstellungen von Analog zu dem passen
was man in einem beliebigen chinesischen Luefter so vorfinden kann. Ich
denke da muss man einfach probieren oder reinschauen.
Olaf
Olaf schrieb: > Da steht doch nix zu 4-Pin > Lueftern. Da steht genau die Schaltung drin, die man in "allen" Standard-PC-Lüftern findet. Ausgenommen sind die mit Beleuchtung, eigenem Drehzahlsteller und !=3 oder 4 pin. Achja, es gibt welche, in denen der Hallsensor direkt 2 Ausgänge für die Spulen hat. Da stimmt der Schaltplan nicht exakt... Olaf schrieb: > Und ich glaube auch nicht das die Vorstellungen von Analog zu dem passen > was man in einem beliebigen chinesischen Luefter so vorfinden kann. Das ist leider falsch. Alle PC-Lüfter sind zueinander kompatibel, da es da Standards gibt an die sie sich halten müssen. Daher funktionieren auch alle intern gleich, nutzen gleiche Steuerungen, kommen mit gleichen Signalen klar und erzeugen auch alle die gleichen Signale. Olaf schrieb: > Ich > denke da muss man einfach probieren oder reinschauen. Kann man machen. Ändert nichts dran, das die Schaltung genau der von Analog Devices entspricht. Und das es genau so auch funktioniert. Die PWM-Frequenz ist mehr oder weniger egal, aber alles unter der Hörschwelle jault oder knurrt eben. Oder es kommt zu Interferenzen mit der eigenen Schaltfrequenz und damit zu Drehzahlschwankungen.
:
Bearbeitet durch User
Olaf schrieb: >> Nochmal: > > Warum verschwendest du unsere Lebenszeit? Da steht doch nix zu 4-Pin > Lueftern. Ganz speziell für dich der Link auf die Grafik darin: https://www.analog.com/-/media/images/analog-dialogue/en/volume-38/number-1/articles/how-to-control-fan-speed/fan_speed_02.gif?la=en
Okay, vielen Dank für die Hinweise! Dank des Artikels auf analog.com und den anderen Hinweisen hab ich wohl einen Tick besser verstanden wie das Ganze funktionieren sollte. Denke ich zumindest: - Beim 4-Pin hab ich im Gegensatz zum 3-Pin also nur einen zusätzlichen Transistor vor den Spulen... d.h. wäre mir das Tachosignal egal (was es ist). Entsprechend würde ein 3-Pin Lüfter es genauso tun wie einer mit 4 Pins?! - Das "Pfeifen" kommt von den Spulen des Elektro-Motors und liegt weniger in der Schaltung 2-, 3- oder 4-Pin Lüfter sondern einfach nur daran, dass es eben Spulen sind? --> Und wenn ich über 20kHz PWM Frequenz gehe, dann ist es nicht mehr im hörbaren Bereich und alles ist gut?
Wolfgang V. schrieb: > Entsprechend würde ein 3-Pin Lüfter es genauso tun wie einer mit 4 > Pins?! Nein, beim 4-Pin Lüfter bekommt der Hallsensor stets volle Versorgungsspannung, beim 3-Pin wäre das nicht so.
Wolfgang V. schrieb: > Entsprechend würde ein 3-Pin Lüfter es genauso tun wie einer mit 4 > Pins?! Ja, NUR hat es sich hier schon öfter gezeigt, dass das nur mit EINEM Lüfter tut. Mehrere parallel dran gehängt, stören die sich so sehr, das es nicht mehr richtig funktioniert. Dann laufen nicht alle Lüfter o. ähnliches.
Donni D. schrieb: > https://www.microchip.com/wwwproducts/en/EMC2301#additional-features Hübsch! Und wer so Kleinzeug nicht gerne lötet: es gibt auch ein Ev-Board für etwa 10€.
hinz schrieb: > Donni D. schrieb: >> https://www.microchip.com/wwwproducts/en/EMC2301#additional-features > > Hübsch! Und wer so Kleinzeug nicht gerne lötet: es gibt auch ein > Ev-Board für etwa 10€. Ja, sehr hübsch - nur leider SmBus und nicht i2c. Und obwohl es oft heißt dass SmBus eine Untermenge von i2c ist, finde ich hierzu nichts konkretes...
Wolfgang V. schrieb: > hinz schrieb: >> Donni D. schrieb: >>> https://www.microchip.com/wwwproducts/en/EMC2301#additional-features >> >> Hübsch! Und wer so Kleinzeug nicht gerne lötet: es gibt auch ein >> Ev-Board für etwa 10€. > > Ja, sehr hübsch - nur leider SmBus und nicht i2c. Und obwohl es oft > heißt dass SmBus eine Untermenge von i2c ist, finde ich hierzu nichts > konkretes... https://www.maximintegrated.com/en/app-notes/index.mvp/id/476
Danke für den Link auf das Dokument, kannte ich noch nicht. Ich habe jetzt nicht jede Zeile gelesen, aber wir reden von dem Schaltbild, wo der MOSFET oberhalb der Spulen vom Pin 4 gesteuert wird? Wenn das immer so wäre, wie kann es dann sein, dass ich hier 4Pin Lüfter habe, die unterhalb von 20% PWM nicht mehr ihre Drehzahl senken? Und auch bei PWM 0% (aktiv Signal Low) weiterdrehen? Nach der Theorie könnte das nicht sein. Typ A und B auf Seite 12/13 der Intel Spec wären mit der Schaltung auch nicht möglich. https://folk.uio.no/kyrrens/diverse/viftekontroller/developer-specs-REV1_2_Public.pdf
:
Bearbeitet durch User
Vielleicht, weil bei denen der Hallsensor auch zusätzlich die PWM ausliest und die Spulen dementsprechend steuert? Er tut's ja eh, also kann man sich einen Leistungstransistor sparen, und zusätzlich gibt's für'n Appel und'n Ei einen Mindestdrehzahlstopschutz. Der verhindert, das der Lüfter das Pumpen anfängt, das macht ihn also leiser, der Endkunde ist zufriedener und kauft wieder.
Jens M. schrieb: > Vielleicht, weil bei denen der Hallsensor auch zusätzlich die > PWM ausliest und die Spulen dementsprechend steuert? Ausgangslage der Diskussion war ja, dass 1.6kHz auf jeden Fall hörbar sein wird, da das Signal direkt die Spulen ansteuert. Dazu kam dann ja das Schaltbild. Aufgrund des zu beobachtenden Verhaltens und der Intel Spec kann das aber so in der Form nicht ganz stimmen. Höchstens als Prinzipschaltbild. Bleibt also weiterhin die Frage offen, ob man mit 1,6kHz ansteuern kann und ob man es hören wird. Ich werde es mal ausprobieren, wenn ich den Lüfter wiederfinde.
> auch bei PWM 0% (aktiv Signal Low) weiterdrehen? Nach der Theorie könnte > das nicht sein. Theorie ist auch vollkommener Unsinn. Wenn man weiterkommen will dann braucht man den Schaltplan des Luefters den man aktuell auf dem Tisch liegen hat. Alles andere bringt nichts. Wenn ich z.B meine Luefter hier mit den Fingern anhalte dann schalten die einfach den Strom zum Motor ab. Und so alle 2-3s probieren sie dann erneut anzulaufen. Da ist also mindestens eine Statemachine, vielleicht sogar ein kleiner Controller drin. Und das verhalten von PWM zu drehzahl (oder gar Luftdurchsatz), Mindestdrehzahl oder maximalwert ist auch bei jedem Luefter anders. Deshalb passt auch nicht jeder Luefter zu jedem Mainboard. Und weil das ganze in der Praxis total der Horror ist hat mein aktuelles Mainboard sogar eine Funktion drin wo es die Kennlinie des Luefters aufnimmt (siehe Bild) und dann danach regelt. Erstaunlich was da heute fuer ein Aufwand getrieben wird. Olaf
Olaf schrieb: > Wenn ich z.B meine Luefter hier mit den Fingern anhalte dann schalten > die einfach den Strom zum Motor ab. Und so alle 2-3s probieren sie dann > erneut anzulaufen. Da ist also mindestens eine Statemachine, vielleicht > sogar ein kleiner Controller drin. Hat der Lüfter einen Namen?
> Hat der Lüfter einen Namen?
Da steht AMD drauf. Die verdienen mit Lueftern aber nicht genug und
verkaufen den nur zusammen mit einem Teil das 3700X heisst. :-D
Ich hab das aber auch schon bei anderen aelteren Lueftern gesehen. Ich
welche mit Magnetlagern, die verhalten sich auch so. Da bin ich mir aber
nicht sicher ob die jetzt 3-pol oder 4-pol Anschluss haben.
Olaf
Neue Infos, es gibt tatsächlich Lüfter mit speziellem Controller, ganz so einfach wie in dem Prinzipschaltbild ist es also nicht (bzw. nicht immer) http://pavouk.org/hw/fan/en_fan4wire.html Darin enthalten sind diese ICs BD6709 : https://www.components-mart.com/datasheets/6b/BD6718FV-E2.pdf LM324: bekannt Dort im Datenblatt ist dann auch beschrieben, wie man MIN/MAX Drehzahl und (Neu-)anlaufverhalten einstellen kann.
Habe bei LCSC eine etwas modernere Variante gefunden, in diesem Fall für 3-Phase Betrieb. https://lcsc.com/product-detail/Others_ROHM-Semicon_BD67173NUX-E2_ROHM-Semicon-BD67173NUX-E2_C239847.html Datenblatt ist dort verlinkt.
Olaf schrieb: > Und weil das ganze in der Praxis total der Horror ist hat mein aktuelles > Mainboard sogar eine Funktion drin wo es die Kennlinie des Luefters > aufnimmt (siehe Bild) und dann danach regelt. Erstaunlich was da heute > fuer ein Aufwand getrieben wird. > > Olaf Sicher? Bei meinem Mainboard kann ich dort einen Custom Temp/Drehzahlkurve konfigurieren. Anhand von 5..6 Werten kann man sein eigenes Lüfterprofil einstellen. Messen tut das Mainboard da also nix außer die Temperatur. Mein SoundPC soll unter 50° die Lüfter (1.CPU, 2. Case) anhalten, als 0% Nur leider beherschen das nicht alle Lüfter und ich mußte probieren. Sie drehten auch bei 0% mit ca. 800U/min - und flog wieder raus.
> Sicher? Klar glaubst du ich erzaehl dir einen vom Pferd? Wenn du im Bios auf kalibrieren gehst dann faehrt er 2-3min lang den Luefter mit verschiedenen PWM Tastverhaeltnissen durch und misst dabei die Drehzahl und bildet daraus die Kennlinie. Ich war auch sehr erstaunt als ich das gesehen habe. > Messen tut das Mainboard da also nix außer die Temperatur. Tja, wohl zu billig gekauft. .-p > Mein SoundPC soll unter 50° die Lüfter (1.CPU, 2. Case) anhalten, als 0% > Nur leider beherschen das nicht alle Lüfter und ich mußte probieren. Sagte ich ja auch schon. Die Luefter sind alle anders. Man kann sich da nicht auf etwas bestimmtes verlassen. Anderes Beispiel: Ich hab als Grafikkarte eine Sapphire 8GB RX580 Pulse 8G drin. Die habe ich vor allem deshalb gekauft weil dort die Luefter angeblich aus gehen sollen wenn man sie nicht fordert. Bei mir drehen die Luefter leider immer. Zwar nur sehr langsam und nicht hoerbar, aber aus gehen sie nicht. (bei beiden Schalterstellungen an der Karte!) Olaf
NichtWichtig schrieb: > Nur leider beherschen das nicht alle Lüfter und ich mußte probieren. Eigentlich ist das in der Intel-Spezifikation genau definiert als Lüftertyp A. B oder C. Frage ist nur, ob es Lüfter-Hersteller gibt, die den Typ vor dem Kauf im Datenblatt(?) angeben. Siehe Seite 13..15 https://folk.uio.no/kyrrens/diverse/viftekontroller/developer-specs-REV1_2_Public.pdf
@Olaf Ob mein Board das via UEFI kann habe ich weder gesucht noch gefunden, mit einem passendem Windows-Tool vom Boardhersteller geht das aber schon. Aber ich nutze Linux und fehlen tut das nicht. Und billig war es damals auch nicht da ich zwingend die UHD Grafik vom Skylake und den M.2 Steckplatz unten drunter nutzen wollte. @Harald Da schau, der Link liefert coole Hinweise. Gerade mal geschaut: Noctua schreibt es sogar auf die Homepage das die Lüfter bei 0% PWM auch 0 Drehzahl machen :-) Kann ich für den 80mm und 92mm bestätigen!
cool, und dort findet man zu PWM Frequenz: • Target frequency: 25kHz, acceptable range 21kHz to 28kHz
NichtWichtig schrieb: > cool, und dort findet man zu PWM Frequenz: > • Target frequency: 25kHz, acceptable range 21kHz to 28kHz Das ist einfach aus den Intel-Vorgaben kopiert, das ist der Bereich, den die mindestens akzeptieren müssen. Die Frage war ja, ob es auch mit anderer Frequenz läuft. Es wird ja kaum bei 20kHz auf Störung gehen. Das ist so wie ein Netzteil, das mit 90..250VAC 50-60Hz spezifiziert ist aber trotzdem in vielen Fällen auch mit 50V 0Hz funktioniert. Nicht garantiert, schon klar.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.