Forum: Mikrocontroller und Digitale Elektronik Arduino Tachosignal Wasserkühlungs-Pumpe


von Sepp (Gast)


Lesenswert?

Hallo zusammen,
ich hoffe es gibt nicht schon zig Threads zu dem Thema, aber die Suche 
nach: Arduino, Tachosignal, Lüfter hat nichts passendes ergeben. 
Allerdings glaube ich auch, dass das Problem nicht unbedingt im Arduino 
liegt, sondernmeine mangelnden Elektronik Kenntnisse.

Aufgabe: Ich hab eine Wasserkühlung im PC, bei dieser gibt es eine 
"intelligente Pumpe", die eine kleine Schaltung implementiert hat 
(Alphacool vpp755). Diese soll am Anfang die Pumpe mit 12V "hochfahren" 
und wechselt dann automatisch in den 4Pin PWM Modus vom Motherboard. Bei 
meinem Board gibt es einen "Pump" Port, der vermutlich identisch zu den 
4Pin Fan Ports ist.
Allerdings funktioniert das hochfahren nicht immer und das System gibt 
dank der WaKü  im normalfall keinen Mucks von sich, sodass man es erst 
merkt, wenn man selbst aktiv drauf guckt oder die Temperaturen 
explodieren.

Was ich mir überlegt hatte:
Ich habe noch einen Arduino Mega R3, Transistoren und Widerstände 
rumliegen - also dachte ich, ich greife das Tachosignal ab (Y-Splitter) 
und starte die Pumpe mittels Transistor neu, wenn RPM unter Schwellwert 
(1000RPM) (15s aus, dann wieder an, habe ich sonst manuell mit "Stecker 
ziehen" gemacht). Der Arduino selbst bekommt Saft vom PC Netzteil, also 
sollten alle das selbe GND haben (glaube/hoffe ich). Eigentlich 
funktioniert auch alles, also das Schalten des Transistors zum Starten 
der Pumpe, Signal LEDs für die verschiedenen Zustände usw. nur die 
Hauptfunktion funktioniert nicht wegen "des Problems".

Problem:
Ich kann nirgends das Tachosignal lesen, sobald der Stecker am Arduino 
(PWM Port12 als INPUT konfiguriert) steckt. Vermutung: "ziehe es wohl 
auf 0" denn auch das MoBo kann es nicht mehr lesen und zeigt 0 RPM, 
obwohl die Pumpe läuft. Sobald ich den Stecker am Arduino Port wieder 
ziehe springt das Signal sofort zurück auf ~2300Rpm.

Was ich gemacht habe, bitte schlagt mich nicht:
1. pulldown mit 10k auf GND
2. pullup mit 10k auf 5v

Beides hilft nicht und mit googeln hab ich nix gefunden, aber weiß auch 
icht wonach ich genau suchen muss. Kann mir irgendwer auf die Schnelle 
helfen, im Sinne eines "Anfängerfehlers" oder so?
Getestet hatte ich vorher die Schaltung und Code mit einem Artic F12 
Lüfter, den ich über ein 12V netzteil mit dem Arudino zusammen betrieben 
hatte. Da war alles ok, daher habe ich die Vermutung, dass es irgendwie 
am Y-Split liegt.
Vielen Dank schon mal und sorry für die Wall of Text, wollte aber das 
Problem möglichst vollständig beschreiben!

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Um zu verhindern, das der Arduino das Tachosignal beeinflusst, kannst du 
es ihm mal über eine Diode einfüttern, jede kleine 1N4148 ist dafür 
geeignet:
1
Mainboard Tacho      K   A          Arduino
2
O---------------------|<|--------------O

Den Arduino Eingang konfigurierst du mit Pullup. Externe Widerstände 
sollten überflüssig sein.

von Oliver S. (oliverso)


Lesenswert?

Da hilft keine Diode, der Eingang ist nomralereise hochohmig geug.

Oliver

: Bearbeitet durch User
von Sepp (Gast)


Lesenswert?

Hallo, danke für eure Antworten:

Ich habe was gefunden, wenn ich "read 12V PWM Arduino" bei google 
eingebe, hatte ich auch vorher schon, die basteln da etweder einen 
Spannungsteiler, Zener- oder Transistor-Schaltung vor.

Kann ich auch machen, für den Spannungsteiler und Transistor habe ich 
zumindest alles da, aber was ich mich dann frage:

Warum hat das denn mit dem F12 Lüfter funktioniert? Der war ja auch über 
12V DC angeklemmt - also ging ich nicht davon aus das "DIE 12V" Kern des 
Problems sind. Sondern eher sich MoBo und Arduino gegenseitig stören, 
was ich nicht verstehe, woran das liegt.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Oliver S. schrieb:
> Da hilft keine Diode, der Eingang ist nomralereise hochohmig geug.

Geht aber bis auf 12V hoch, um vom Mainboard erkannt zu werden. Die 
Diode sorgt dafür das der Eingang des Arduino auch low wird, wenn PWM 
low ist. Wenn PWM auf 12V geht, trennt die Diode dann von den 5V des 
Arduino Pullup. Probiers aus, es wird sicher funktionieren.
Wenn mans nicht kapiert, einfach mal die Signale aufmalen und die Diode 
berücksichtigen.

Sepp schrieb:
> die basteln da etweder einen
> Spannungsteiler, Zener- oder Transistor-Schaltung vor

Wenn mans kompliziert möchte, kann man auch das machen.

: Bearbeitet durch User
von Kilo S. (kilo_s)


Lesenswert?

Nur mal so als Empfehlung: https://aquacomputer.de/aquastream-xt.html

Dann hast du den ganzen Stress nicht mehr! Abgesehen davon bist du nicht 
auf kompatibilität mit dem Mainboard angewiesen (Pumpensteuerung/PWM 
anschluss) sondern kannst ganz beruhigt und vor allem sicher vor dem PC 
sitzen.

Meine Ultra tut es jetzt schon über 10 Jahre klaglos, ist extrem leise 
und hat deutlich bessere und feinere Einstellmöglichkeiten.

: Bearbeitet durch User
von Sepp (Gast)


Lesenswert?

Hi,

ich hab's zuerst mit der Diode probiert und es hat auf Anhieb alles 
funktioniert! Also dann vielen Dank Matthias aber auch dir Oliver für 
die Ideen und Zeit. Hab es jetzt circa 50x getestet und funktioniert 
einwandfrei!

Bzgl. der Pumope: Ja die oder eine von Phobya hatte ich schon im Auge, 
wenn mein "Projektchen" nichts geworden wäre. So habe ich jetzt ein 
hoffentlich Fehlerresistenteres System ;). Danke für den Hinweis.



Beste Grüße und guten Rutsch ;)

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.