PC-Flüssigkeitskühlung / Lüftersteuerung und Signalauswertung


corvintaurus_pc_tachosignalauswertung_banner
Auswertung des Durchflussmessers der Wasserkühlung im PC // Dezember 2017

zurück zur Vorseite


Hier stelle ich euch nun eines der umfangreichsten Projekte vor, die auf meiner Seite zu finden sind. Umfangreich, weil hier sehr viele Fertigkeiten zusammenlaufen. Einen großen Teil hat ein neuer Freund für mich übernommen.
Meine erste Auswertungseinheit für die Impulse des Durchflussmessers kennt der neugierige Besucher. Doch nun wurde das ganze aufgeblasen und neu durchdacht. Ziel war es eine komplexe Steuerung zu bauen, welche die Geschwindkeiten der Lüfter regeln lässt und zugleich die Impulse der Lüfter und des Durchflussmessers auszuwerten und entsprechend zu intervenieren, sollte einer der genannten ausfallen.
Das Projekt lief über eine längere Zeit und wurde maßgeblich durch Jens umgesetzt. Er hat die entsprechenden Platinen erdacht und erzeugt. Auch die Programmierung hat er übernommen. Für ihn war das recht einfach, für mich hingegen unlösbar. Dafür möchte ich meinen ausdrücklichen Dank an Jens richten.

Etwas weiter unten werden die wesentlichen Leistungsmerkmale beschrieben !

corvintaurus_pc_tachosignalauswertung_01
Das schlussendliche Ziel des ganzen Betreben war dieser PC. Ein umfassendes Kühlsystem, welches überwacht werden sollte um Schäden zu vermeiden, sollte die aktive Kühlung komplett oder teilweise ausfsllen.


corvintaurus_pc_tachosignalauswertung_02
Im Vorfeld habe ich den seriellen RS232 auf die Front des PC Gehäuse gebracht. Das habe ich weniger für die kommende Hardware, als mehr für die kommenden Programmiersachen gebaut. Warscheinlich werde ich das ganze einmal im Jahr nutzen, aber dann hab ich es. Umsonst ist sowas nie.


corvintaurus_pc_tachosignalauswertung_03
Hier sieht man die fertig geschnittenen, geätzten und gebohrten Platinen für die Steuerung. Die entsprechenden Daten liegen in einem zZ Format am Ende der Seite vor.


corvintaurus_pc_tachosignalauswertung_04
Dieses nette Bild zeigt die fertig bestückte Platine im Polygon Raster. Sehr gut kann man auch sehen, welche Anschlüsse für welchen Zweck zu verwenden sind. Wichtig ist hierbei die stabile 12V Spannungsversorgung, welche intern auf der Platine auf eine zusätzliche 5V Spannung reduziert wird. Diese 5V dient der Spannungsversorgung des AVR, der angeschlossenen Anzeige und der Logik. Die 12V hingegen, werden für den eben beschriebenen 5V Schaltregler verwendet, für die Steuerspannung der Relais und für die Betriebsspannung der Lüfter...welche durch Mosfets von 0-100 Prozent einstellbar ist.

Ansonsten wäre da noch der sog. I2C Bus, an welchem der zweite AVR mit der Anzeige angeschlossen wird. Über diesen Datenbus wird ausschließlich die Anzeige mit Daten versorgt. Der auf der Platine verbaute Anschluss, liefert zudem auch die Betriebsspannungen für die Anzeige.

Der 1-Wire Bus ist für die Anbindung von bis zu 8 digitalen Temperatursensoren vom Typ-DS18S20, welche immer einzeln angeschlossen und eingelesen werden müssen um deren ROM Adresse ermitteln zu können. Später werden diese, sollte mehr als einer angeschlossen werden, nacheinander zugeordnet werden. Die Anzeige der Temperatur im Terminalprogramm geschieht ohne Komma, wohl aber mit 3 Stellen. Zum Beispiel 25,3Grad, werden als 253 angezeigt.


corvintaurus_pc_tachosignalauswertung_05
Hier wird sie in 3D animiert. Alles passiert über das kostenlose Platinenprogramm Target3001! Ein tolles Programm für die Herstellung von Platinen. Sehr gut kann man auch die entsprechenden Anschlüsse sehen. Es handelt sich um 2 Lüfter-Kanäle über diese die Lüfter in ihrer Geschwindigkeit regeln können. Für jeden Kanal sind 3 Anschlüsse vorgesehen, welcher einzeln in seiner Drehzahl ausgewertet werden kann. Zusätzlich gibt es einen Eingang der für den Durchflussmesser gedacht ist. Insgesammt stehen also 7 Eingänge zur Auswertung der Drehzahlimpulse vor.


corvintaurus_pc_tachosignalauswertung_06
Die kleinere Platine ist für den anschluss der optischen und akustischen Signale, sowie für die aufnahme des Tasters. Hier wie schon weiter oben in Form von einzelnen Polygonen. Wie ich finde wirklich sehr nett.


corvintaurus_pc_tachosignalauswertung_07
Auch in Form einer 3D Animation sehr hübsch. Dieses Target3001! macht das wunderbar. Verbunden werden beide über einen sogenannten I2C Bus. Gesprochen Ei Two Square Bus. Das ist ein serieller Bus, welcher für die Geräte interne Kommunikation verwendet wird. Es gibt schlichtweg einen Master, an dem mehere Slaves hängen. Weiterführende Informationen sind reichhalig im Netz zu finden. Es sei auch zu bemerken, das diese Bezeichnung lizenzrechtlich von Philips geschützt ist. Dieser Datenbus nennt sich bei den AVRs TWI-Bus (The 2-wire Serial Interface).


corvintaurus_pc_tachosignalauswertung_08
Als mir Jens dieses Bild zugesandt hat, schlug mein Herzchen direkt schneller. Ich finde diese beiden Platinen irgendwie sexy. Man sieht auf einer klitzekleinen extra Platine den USB zu RS232 Konverter um die Schaltung später auch bequem über USB auslesen zu können. Ich könnte aber genauso gut auch über die RS232 Schnittstelle gehen, die ich zuvor auf die Front gelegt habe.


corvintaurus_pc_tachosignalauswertung_09
Dieses Bild ist eigentlich nicht für die Dokumentation gedacht, aber es zeigt die Rückseite des über ein großes Internetkaufhaus erworbenen USB zu TTL Wandlers.


corvintaurus_pc_tachosignalauswertung_10
Da ich das kleine Teilchen nicht hinten an einen USB Port stöpseln wollte, habe ich es auf die einzige freie Stelle auf der Platine geklebt und fest angelötet. Mit diesem kleinen Trick, kann ich das ganze direkt an eine der freien USB Pins auf dem Motherboard anshcließen.


corvintaurus_pc_tachosignalauswertung_11
Doch wohin mit der Platine? Irgendwo hin hängen oder schrauben? Ne Ne ... Die Platine kommt mit kleinen Abstandshaltern auf die Rückseite einer Slotblende. Das blockiert zwar einen Steckplatz komplett und den darüberliegenden teils...doch dafür ist alles fest an seinen Platz.


corvintaurus_pc_tachosignalauswertung_12
Die gesammte Platine soll mit einer Betriebsspannung von 12 Volt betrieben werden. Soweit, ...kein Problem. Doch beim zweiten hochfahren des PCs blinkten alle LED kurz auf und dann war Ruhe. Beim messen des Betriebsstromes, zeigte sich ein Wert von fast 500mA. Das sind locker 300mA zu viel. Was war geschehen? Erst dachte ich an durchgebrannte Atmegas. Also durchgeatmet und mit Jens alles durchgegangen. Als ich dann auf dei Idee kam, die Logik der ICs mit den nötigen 5V direkt zu versorgen konnte ich auf alles zugreifen. Also war da alles in Ordnung. Die 12V waren eh nur für den Betrieb der Lüfter nötig. Als ich dann ein weiteres mal den Strom gemessen habe, nachdem ich die 12V für die Lüfter und die 5V für die Logik einspeiste, fiel der Strom auf gute 200mA. Nach dieser kleinen Analyse, die locker 3 Stunden dauerte, stellte ich einen defekten Schaltwandler fest. Dieser wurde ausglelötet. Die Spannungen kamen nun direkt aus dem PC-Netzteil und ein neuer Schaltwandler IC wurde bestellt. Auch nach dessen Lieferung blieb er erstmal weg. Never Touch a running System.


corvintaurus_pc_tachosignalauswertung_13
So sieht die Platine nun schlussendlich aus. Ich habe von einem defekten Diskettenlaufwerk den Stecker ausgelötet und an die Platine angelötet. Somit kann ich die ganzen Platinen über den Diskettenanschluss mit den passenden Spannungen versorgen.


corvintaurus_pc_tachosignalauswertung_14
Alle LEDs und der Taster sind auf eine Laufwerksblende gebracht. Ich habe eine Lochrasterplatine genutzt um die LEDs aufzulöten. Die passenden Löcher in der Blende vorausgesetzt. Die längeren Leitungen sind zum anschluss an die Hauptplatine gedacht. Darüber laufen die 5 Volt und der I2C Bus.


corvintaurus_pc_tachosignalauswertung_15
Hier sieht man die Anordnung der einzelnen Elemente. Eine Beschriftung steht aus.


corvintaurus_pc_tachosignalauswertung_16
Beide Platinen werden über Stiftleisten miteinander verbunden. Zur mechanischen stabilisierung habe ich ein kleines Stück Messing eingebracht.


corvintaurus_pc_tachosignalauswertung_17
Ein erster Funktionstest, mit anstehendem Alarm ist gemeistert. Es geht also an den vollständigen Anschluss aller Lüfter und dem Durchflussmesser um abschließend eine finale Konfiguration der Software vorzunehmen. Diese Konfiguration wird über ein Terminal Programm gemacht und über die USB Schnittstelle gesendet. Die entsprechenden Befehle sind im Anhang zu finden. Als sehr geeignetes Terminalprogramm nutze ich ein von Jens Gürtler geschriebenes Programm für die Open Micro Anwendungen. Dieses Programm ist hinter diesem Link zu finden. Kopiert man den Link und kürzt ihn entsprechend, findet man auch die Quellseite. Das Programm ist unter den dort genannten Konditionen anzuwenden.


corvintaurus_pc_tachosignalauswertung_18
Hier mal ein Bild neben der Reihe.


corvintaurus_pc_tachosignalauswertung_19
Die verbaute Platine sieht sehr gut aus und passt wunderbar in das Gehäuse.


corvintaurus_pc_tachosignalauswertung_20
Schande auf mein Haupt. Diese hässliche Platine beherbergt nur ein 12V Relais um die die Netzspannung der Eheim Pumpe mit dem zuschalten des PC Netzteils zuzuschalten. Diese Platine müsste ich mal ersetzen, um das es etwas sicherer ist. Ich denke da an verkapseln oder eingießen in 2K.


Hier noch ein paar abschließende Worte.
Dieses Projekt stammt zwar aus meiner Idee, wohl aber ist der grösste Teil aller Arbeit von Jens Gürtler geleistet worden. Ich stelle hier alle nötigen Daten zur freien Verfügung. Die Daten dürfen ausschließlich für den privaten, NICHT komerziellen Zweck verwendet werden. Eine private Weitergabe ist erlaubt, und sogar gewünscht. Sollten Verbesserungen vorgenommen werden, würde ich mich wirklich sehr freuen, wenn mich ein Feedback finden würde.

Abschließend kann ich sagen, das dieses Projekt ein absoluter Volltreffer ist. Klar...man könnte eine reine Kaufvariante nutzen, aber irgendwie bleibt der Spaß und der Lerneffekt stark auf der Strecke. Noch zu nennen ist folgendes. Es findet sich auf der Platine auch ein Temperaturfühler wieder. Dieses Detail habe ich bisher in dieser Doku weg gelassen, wohl aber ist es dieses Detail, was aus dieser Platine eine funktionelle Steuerung machen würde. Diesen Temperatursensor möchte ich nicht weiter beschreiben, er taucht aber in den Dateien auf. Auch ohne Sensor ist die Platine voll funktionsfähig. Jens...ich danke dir !!!


Projektdaten ohne Programme Sie ist 7,3 Megabyte groß und ohne Passwort über das kostenlose Programm 7Zip zu öffnen.
Desweiteren werden folgende Programme gebraucht.

--Target 3001! Programm zum erstellen der Platinen : Kostenlos

--AVR-Brenner Programm von Jens Gürtler um den Chip zu programmieren : Kostenlos

--WIN AVR Programm welches für den AVR-Brenner benötigt wird : nicht Kostenlos

--Schritt für Schritt Anleitung Anleitung für das flashen des ATMEGA : kostenlos

--Terminal Programm Programm um die RS232 Schnittstelle auszulesen : kostenlos

--Pony Prog Anleitung für einen billigen Programmer : Nachbau Eigeninitiative

--Pony Prog Nachbau mein Nachbau

--PDF Anleitung mit vielen Hinweisen mein Nachbau

zurück zur Vorseite

Valid XHTML 1.0 Strict