Lüfter und Pumpe steuern

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo Raspberry Community,

    ich möchte gerne sechs Lüfter in Parallelschaltung an einem 12 V Netzteil betreiben und mittels Raspberry steuern. Es gibt 120 mm Lüfter aus dem Computerbereich, die sich über ein PWM Signal-Kabel steuern lassen (Lüfter mit PWM). Vielleicht weiß jemand ob der 3,3 V Peak den der Raspberry Pi auf den GPIOs liefert hierfür ausreichend ist? Kann ich alle PWM Signal-Kabel mit einem PWM-Signal des selben Ports speisen? Kann ich die Lüfter vollständig mit der PWM des Raspberrys ausschalten, wenn z.B. 0 Hz anliegen?

    Zusätzlich zu den Lüftern würde ich gern eine Wasserpumpe betreiben. Hier ebenfalls wieder eine Pumpe, die sich über ein seperates Kabel über PWM steuern lässt (Pumpe mit PWM). Reicht hier der Peak ebenfalls? Kann ich die Pumpe vollständig ausschalten mittels PWM?

    Vielleicht hat ja jemand hier schon Erfahrung.

    Viele Grüße

  • schau in das Datenblatt deiner konktreten Lüfter

    üblicherweise arbeiten die PWM Steuerungen mit OC und hier vermutlich! an 12V

    nicht direkt vom PI zu steuern, du brauchst einen Inverter Treiber und einen OC Treiber oder lass den Inverter weg und invertiere deine PWM

    genaueres wenn du das Datenblatt DEINER Lüfter gefunden hast und einen Plan hast wie du das ansteuern willst!

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • schau in das Datenblatt deiner konktreten Lüfter

    üblicherweise arbeiten die PWM Steuerungen mit OC und hier vermutlich! an 12V

    nicht direkt vom PI zu steuern, du brauchst einen Inverter Treiber und einen OC Treiber oder lass den Inverter weg und invertiere deine PWM

    genaueres wenn du das Datenblatt DEINER Lüfter gefunden hast und einen Plan hast wie du das ansteuern willst!

    Hallo jar, danke für deine Hilfe. Kannst du kurz erkären was du mit OC meinst? Hab grad mal gegoogelt aber nichts passendes dazu gefunden.

  • komisch bei mir war es der erste Eintrag, wonach hast du geschaut?

    https://de.wikipedia.org/wiki/OC

    O.C. (Rapper), wc wohl caum

    O.C., California, vermutlich auch nicht, worum gehts hier eigentlich?

    ........

    ........

    ........

    dann kommt

    Open Collector in der Elektronik

    könnte das evtl. gemeint sein?

    etwas mehr Arbeit könnte man sich schon machen, hier ist ja kein Kindergarten!

    https://de.wikipedia.org/wiki/Open-Collector-Ausgang

    das führt einen dann auf eine sehr gute Seite

    https://www.elektronik-kompendium.de/sites/slt/1206121.htm

    wo man noch mehr lernen kann

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • Und ich bin da ständig auf der OC California Wikipedia Seite unterwegs und wunder mich, dass ich nichts brauchbares finde, verdammt. Übrigens ne absolute Girlie Serie. Spaß beiseite. In Kombination mit "PWM" liefert Google nur Schund. Danke für deine Hilfe ;)

  • Kann ich die Lüfter vollständig mit der PWM des Raspberrys ausschalten, wenn z.B. 0 Hz anliegen?

    Hätte gerade nach einem Datenblatt auf der Herstellerseite gesucht, kann aber bis auf Photos nichts finden bei denen - somit würd ich gleich mal nach einer anderen Marke ausschau halten ;)

    Erfahrungsgemäß laufen die PWM Lüfter die ich kenne auf Minimallast weiter wenn man das PWM auf 0 stellt.

    EDIT: Pauleheisster hat übrigends hier einen schönen Einstiegsthread zum Gesamtprojekt erstellt: RE: Sammelthread: "Ist mein Projekt machbar?"

  • Wahrscheinlich tut es auch ein normaler Lüfter mit nur zwei Leitungen an einem ULN2803 (siehe Open Collector). Nachdem man die Viskosität der Luft wohl als konstant annehmen darf, ließe sich die Drehzahlsteuerung dann über "einfaches" Ein- und Ausschalten erreichen (notfalls mit Stützwerttabelle für mehrere Drehzahlen, um den quadratisch ansteigenden Strömungswiderstand auszugleichen - so daß überhaupt notwendig ist).

    Echtes PWM im höheren (1kHz) Frequenzbereich bedarf es bei so einer unkritischen Anwendung vermutlich nicht. Falls doch, dann würde ich auf einen Arduino ausweichen. Der kann PWM besser...

  • Ich danke für eure Hilfe. Ich mach mich mal schlau bei den Herstellern. Vielleicht kann ich denen mal ein paar mehr Informationen entlocken.

    Wahrscheinlich tut es auch ein normaler Lüfter mit nur zwei Leitungen an einem ULN2803 (siehe Open Collector). Nachdem man die Viskosität der Luft wohl als konstant annehmen darf, ließe sich die Drehzahlsteuerung dann über "einfaches" Ein- und Ausschalten erreichen (notfalls mit Stützwerttabelle für mehrere Drehzahlen, um den quadratisch ansteigenden Strömungswiderstand auszugleichen - so daß überhaupt notwendig ist).

    Echtes PWM im höheren (1kHz) Frequenzbereich bedarf es bei so einer unkritischen Anwendung vermutlich nicht. Falls doch, dann würde ich auf einen Arduino ausweichen. Der kann PWM besser...

    Auch eine gute Möglichkeit. Werde ich auch in Betracht ziehen. Damit könnte ich die Lüfter dann ja sogar komplett ausschalten.

    Oder halt doch einfach mittels Mosfet, der am Gate vom Raspberry mittels PWM gespeist wird?

  • Wahrscheinlich tut es auch ein normaler Lüfter mit nur zwei Leitungen an einem ULN2803 (siehe Open Collector).

    da würde ich lieber einen mit Tachoausgang nehmen, dann sehe ich ob er mit der PWM noch dreht als Rückmeldung.

    Sonst hast du lieber dag recht, simple an/aus PWM reicht, dazu braucht er keine PWM Steuerung am Lüfter, aber vom PI dürfte die sehr unruhig laufen wegen OS, hardware PWM hat der PI zwar aber nicht genug Kanäle denke ich, die Programmierung stelle ich mir auch nicht einfach vor, müssten ja erst mal alle default Einstellungen abgeschaltet werden, analog out an der Klinke z.B. bevor die frei werden.

    Ich mag da eher Arduino oder neu ESP32 mit Hardware PWM wahlweise auf jeden Pin konfigurierbar und mit 3,3V PI GPIO kompatibel oder per wlan koppelbar.

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • Hallo Pauleheister, Hallo Jar,

    der Tachoausgang erlaubte die Implementierung einer Regelung. Schaden würde diese sicherlich nicht (wenn die Regelparameter richtig gewählt werden), ob man sie allerdings bei einer Lüftersteuerung benötigt, ist eine andere Sache. Mit Tachogenerator hätte man jedoch zumindest die Möglichkeit - selbst im Falle einer späteren reinen Steuerung - die Stützwerttabelle der An-Aus-Zeiten für die verschiedenen Geschwindigkeiten zu erstellen.

    Allerdings bergen Tachogenerator/Regelung wieder ein Problem, nämlich das verlustfreie Signalabtasten des Tachos. Und da ist das OS des Raspi wirklich hinderlich, so es sich beim Sensor um einen impulsgebenden (z.B. Hallsensor) handelt. Auch ein Spannungsausgang am Tacho würde wieder zusätzliche Beschaltung erforderlich machen. Im Gleichspannungsfall einen AD-Wandler, im Wechselspannungsfall vermutlich wieder eine Impulszählung des Nulldurchgang. Aber solche Tachos findet man eher bei größeren AC-Motoren.

    Im Falle einer reinen Steuerung würde ich im OS Jitter des Schedulers kein allzugroßes Problem vermuten. Der Jitter der Desktopkernel liegt bei unausgelastetem OS in der Größenordnung einer ms oder sogar darunter. wenn man also Konstrukte in der Größenordnung "usleep(50)" zusammenbaut, dann ist der Fehler für einen in (dämpfender) Luft laufenden Lüfter recht gering. Man vergegenwärtige sich zum Vergleich die geregelten 230V Standlüfter, die z.T. mit Phasenanschittsteuerungen betrieben werden. Auch hier liegt die steuernde (geregelt wird da auch nicht) Phase bei 50Hz, also 20ms.

    Klopfende Geräusche aufgrund axialen Spiels der Welle würde ich ebenso nicht erwarten, da das Propellerblatt die Achse zwingend auf das Axiallager drückt.

    Und falls tatsächlich irgendwelches steuerungsbedingtes Brummen zu hören wäre, dann bestünde immer noch der Weg der Glättung der Pulse über einen Kondensator parallel am Motor. Letztendlich ist es eine Frage der Spannung, wie schnell Lüfter dieser Bauart drehen...

    Schöne Grüße

    schnasseldag

  • So genau muss das alles garnicht sein. Das reicht schon wenn der Lüfter in 10% Schritten zwischen 0 - 100 % gesteuert werden kann. Eine reine Steuerung ist völlig ausreichend. Falls ich später noch Zeit habe kann ich das Tachosignal auch noch nutzen und eine Regelung einprogrammieren.

    Hab hier noch eine mögliche Lösungen gefunden: Leistungsregler M171

    Wenn ich das richtig verstehe könnte ich das so fast direkt in Kombination mit dem Pi verwenden? Allerdings verwendet der Leistungsregler eine Steuerspannung von 5 V. Jetzt muss ich nur noch klären ob es überhaupt beim Pi bleibt. Jar hat in einem anderen Thread, in dem ich mein Gesamtprojekt vorgestellt habe, darauf hingewiesen, dass ein Arduino für mein Projekt vermutlich die bessere Wahl wäre. Hier

    Hier auch noch was interessantes: Link

    Steuerung eines Lüfters mittels Mosfet.

  • Na mit Kanonen (Dein Leistungsregler) mußt Du ja nicht auf Spatzen schießen. Ein ULN2803 an den GPIO's reicht für Deine 12V Lüfter vollkommen. Der Ausgang des ULN ist als offener Kollektor (OC) ausgeführt und erlaubt Schaltspannungen >24V (zumindest bei den paar mW Deines Lüfters). Zu diesem Thema gibt's hier gefühlt 3623 Threads. Der Arduino ist dann besser, wenn es um echtes (will heißen hardwaregetaktetes) PWM geht. Wäre mechanik im Spiel, die verlorene Meßimpulse eines Tachos oder Windupeffekte eines Reglers mit Knirschen, Brummen und Stößen beantwortet, dann würde ich hinsichtlich der Steller und vor allem der Impulserfassung auch zu einer Hardwarelösung (sprich Arduino) greifen. Für "lastlose" und dabei gedämpfte Lüfter muß das m.E. nicht sein. Wenn, dann würde ich am ehesten bei der Pumpensteuerung vermuten, daß man da etwas hört.

    Noch ein Hinweis. Wenn Dein Boss unbedingt einen Pi sehen will, dann fange halt mal mit dem Pi an und schau, ob das Konzept paßt. Wenn nicht, dann kannst Du zur Steuerung immer noch einen Arduino zwischen den Pi und die Lüfter setzen.

  • Wenn nicht, dann kannst Du zur Steuerung immer noch einen Arduino zwischen den Pi und die Lüfter setzen.

    oder ESP32 mit 3,3V Kompatibilität zum PI GPIO Anbindung und mehr hardware PWM wahlweise auf JEDEN Pin

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • Hallo Pauleheister,

    nachdem der Lüfter-Steuerungsteil Deines Projektes in die Ecke "das stecken wir mal fix zusammen" fällt, habe ich das kurzerhand getan. Siehe Bild:

    Bei den Lüftern handelt es sich um einen ohne Tachogenerator (der große, gerade in Betrieb befindliche links; 12V) und um einen mit Tachogenerator und PWM-Eingang (rechts; 24V), welche aber beide unbenutzt blieben. Gesteuert wurde per An-Aus-Paketfolgen mit Taktungen im 10ms Bereich. Zwar sitzt zwischen den GPIO's des Raspi und dem ULN2803 noch ein MCP23017 IO-Expander, der tut hier aber nix zur Sache, außer, daß er eher die Taktung begrenzen würde. Die Drehzahlen ließen sich durch unterschiedliche Paketfolgen recht gut steuern. Hier das Programm dazu.

    Die WAIT_TIME definiert die Aktualisierungsgeschwindigkeit der An-Aus-Pakete. Die Cycletime von 5ms definiert die Aktualisierungsgeschwindigkeit der IO's, da per Set_DO_Channel zunächst nur in einen Puffer geschrieben wird. Aber das sind Interna meine Lib, die hier unerheblich sind. Die while-Schleife ist eigentlich selbstredend. Die CPU Last liegt bei einem Raspi 2B bei <=2,7%.

    Fazit - fang' mal frohen Mutes mit einem Raspi und einem ULN2803 an. Wenn Probleme auftauchen, dann eher bei der Ansteuerung der Pumpe. Aber wir haben ja auch noch einen Kondensator in der Hinterhand... :)

    Schöne Grüße

    schnasseldag


    @Mods: Warum werden meine ganzen Quellcode-Kommentare aus dem Codebeispiel gestripped? Da Funzt etwas nicht?!

  • Moin Schnasseldag,

    @Mods: Warum werden meine ganzen Quellcode-Kommentare aus dem Codebeispiel gestripped? Da Funzt etwas nicht?!

    Das solltest du nochmal

    Update auf 3.1 RC3

    schreiben. Ich denke hier wird es eher überlesen.

    Gruss Bernd

    Ich habe KEINE Ahnung und davon GANZ VIEL!!
    Bei einer Lösung freue ich mich über ein ":thumbup:"
    Vielleicht trifft man sich in der RPi-Plauderecke.
    Linux ist zum Lernen da, je mehr man lernt um so besser versteht man es.

  • Schnasseldag,

    Vielen Dank für deine Mühe! Freut einen immer wenn einem mit so einem Elan geholfen wird.

    Klappt das ganze auch bei sechs Lüftern in Parallelschaltung? Wenn man jetzt mal von einem Lüfter ausgeht, der von 250 - 500 U/min bis 2000 - 2500 U/min drehen kann (Hier). Dieser nimmt ein Strom von 0,219A auf. Also bei sechs Lüftern in Summe immerhin ein Strom von 1,314A bei Volllast. Das entspricht einer Leistung von 15,768W. Laut Datenblatt kann der ULN2803 nur 500mA pro Ausgang. Vielleicht interpretier ich jetzt auch deine Schaltung falsch. Aber bei 6 Lüftern würden wir ja den Ausgangsstrom überschreiten.

    Pauleheisster

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!