temperaturabh. digitale Lüftersteuerung, ascii-led Anzeige, USB

keiang

Cadet 2nd Year
Registriert
Mai 2004
Beiträge
17
ich veröffentliche hier mein letztes Projekt:
eine digitale (µC = Cyress "AN2131", temperaturabhängige (Dallas "DS 1820" Sensoren) Lüfterregelung mit Ascii-Led Anzeige (oder LCD "Hitachi 44780" 2/4 -zeilig ), auf der alle Daten ausgegeben werden können (Temperatur, Lüfterdrehzahl...), und einer integrierten USB-Schnittstelle.
Ziel dieses Projektes war es eine Lüftersteuerung zu entwickeln mit es möglich ist alle Lüfter (hier max 3) unabhängig von einander zu regeln, in abhägigkeit von den Temperatursensoren (Dallas "DS 1820", beliebig viele anschliessbar) zu regeln und auch die Daten auf einem Display ausgegeben werden. Ausserdem kann noch ein Chipkartenleser angeschlossen um z.B. einen fremden Zugang zu verhindern.
Für neue Ideen oder Anregungen bin jederzeit offen.Feedback ist erwünscht !

http://www.keiang.de/modules.php?name=PCcool


keiang
 
Zuletzt bearbeitet:
Moin,
wie ich lese hast du ne port problem bei dem AN2131 und bei den wenigen anschlüssen ist das verständlich. Ich persönlich arbeite mit AVRs von der Firma Atmel die gibt es in verschiedensten ausfürungen (z.b. bis zu 53 I/O-Ports) mit verschidensten funktionen. Die USB Ansteuerung hab ich dann in der Art realisiert, dass ich einfach ne USB - RS232 Bridge IC eingebaut hab (PL-2303). Das hat den vorteil das der Programmieraufwand minimal wird, weil ich in windows nur Zeichen an den emulierten seriellen port schicken muss. Aber der größte vorteil im AVR besteht darin, dass man ihn auch mit Hochsprachen programmieren kann. Mit Assembler ne 32kbyte Programm zu schreiben grenzt ja schon an Wahnsinn. Und das gute sind auch die zusätzlichen funktionen. Z.B. hab ich bei meiner lüftersteuerung ne manuellen overwrite eingebaut, so das ich in klassisch mit potis steuern kann *anregungmach*. Da ist der eingebaute AD-Konverter des AVR sehr Hilfreich.
Ansonsten sieht es ganz nett aus. Hat bestimmt spaß gemacht den SMD-Chip drauf zu löten ;) . Ich hab das aufgegeben mit meinem Tatrigen ist das einfach nicht möglich.

Gruß ich
 
das klingt echt interessant hast du irgendwo eine doku über das projekt im Netz oder kannst du mir es per mail zukommen lassen? In welcher Sprache hast du gecodet?
 
Kann es sein, daß da zZ kein einziges Bild geht ? :(
 
sollten eigendlich alle funktionieren, vielleicht war grad der sever überlastet. hab es hier auf 3 Rechner geprüft und hat gefunzt.
 
Hab einen Tip von jemand bekommen (lag net am Server) und den Fehler damit beseitigt, Bilder sollten jetzt also auch von allen anderen browser wie IE geladen werden...
 
Moin,
also wenn ich erlich bin ist mein Projekt nie 100%ig fertig gekommen, weil mir mein Abi dann doch ne bischen wichtiger war. Aber das ist ja jetzt erledigt ... fast.
Aber erstmal zum Projekt an sich. Ich wollte eine Konplette Kontrolleinheit für das Gehäuse bauen mit allem drum und dran: also Lüftersteuerung, Temperaturmessung, Regelung nach Temperatur, Umdrehungszahl des lüfters auslesen. allerlei Lichtspielereien und das ganze autonom ohne Rechneruntersützung über ein LCD mit menü und 4 tasten. Das ganze sollte dann noch eine Simulation eine klassischen Lüftersteuerung können mit Potis und Bargraph und allem. Naja also die Lüftersteuerung funzt super und das LCD mit menü. Die Lichtsteuerung sagen wir mal zu 80% also 80% der funktionen was angeschlossen ist funzt zu 100%. Bei der Simulation der klassischen Lüftersteuerung hapert es an der Frontblende. Hatte keine Lust eine zu machen und auch nicht so richtig Idee wie befestigen. Das mit der Umdrehungszahl auslesen funzt auch super. Die Temperaturauslesen, naja das ist ein bischen strange das funzt manchmal und nach strom aus und wieder an nicht mehr. Aber leider ist das ganze immer schrittweise entstanden. Daher kam es auch das ich irgendwann in meinem zentralen Microprosessor Timingprobleme hatte mal von der Tatsache abgesehen das ich im Quellcode nicht mehr durchgesehen hab. Irgendwann hatte ich dann keine Zeit mehr wegen Abi. Die Sommerferien sind ja auch nicht endlos lang.
Leider sind mir der Zeit irgendwie meine Schaltpläne verschwunden und ich hab nur noch ausgedruckte versionen und ne par fertige Platinen. Daher hab ich jetzt nochmal von grundauf neu angefangen. Diesmal mit Rechnerunterstützung, weil die Lüftersteuerung läuft eh nicht wenn der Rechner aus ist und besser durchdacht das ganze diesmal.
Programmiert hab ich das ganze mit BASCOM, dass wie der name schon andeutet Basic ist. Ich bevorzuge ja sonst c++, aber BASCOM hat den vorteil, dass es sehr viele funktionen eingebaut hat. So musste ich mir z.b. keine gedangen über die ansteuerung des LCDs machen einfach ranlöten, pins im code festlegen print befehl und fertig. Das Programm ist aber für ROM-Images über 2kb nicht kostenlos, aber es ist jeden cent wert. Wüsste nicht was ich ohne machen würde.
Wenn du noch fragen hast kannste mich einfach per ICQ (79215643) oder AIM (ich3k1) anhauen.
Ach was ich noch fragen wollte. Machst du die Platinen selbst und wenn ja wie machst du dass mit den zwei seiten? Hast du die Durchkontaktiert oder wie?
 
ui klingt nach schweren projekt und ner menge arbeit, wie machst du das mit den lüftern? einfach an oder aus oder geregelt in der drehzahl?


also das problem mit 2-seitig ist das belichten, du brauchst deswegen ein 2-seitiges Belichtungsgerät, sonst bekommst probleme mit den 2 layern: sind evtl. zu einander verschoben. die durchkontaktierungen mach ich per hand. also Draht durch und oben und unten verlöten
 
Ne schon drehzahlgeregelt. Ich hab einfach ne normale Lüftersteuerung ohne Spannungsdrop genommen und da das mechanische Poti durch ein digitales ersetzt.
Das Problem mit dem verschiedben beim belichten könnte man ja lösen, indem man schon vorher 4 Löcher in die Platine bohrt und dann guckt das die über einander liegen, wenn man die zweite platinenseite belichtet.
 
update & Anleitung

So es ist nun geschaft, eine erste Version eines HowTo (Anleitung zum Aufbau der Lüfterregelung) zu der Regelung steht nun zum Download bereit. Auch habe ich die Beschreibung auf der Seite etwas ausgebaut und die Firmware verbessert:

DCP_1469.jpg

PIC00269.JPG



hier die Leitungsmerkmale nochmal im Überblick:

- per Mikrocontroller digital geregelte Lüftersteuerung, Regelung arbeitet damit unabhängig vom Betriebssystem
- mit bis zu 4 Sensoren werden die Temperaturen des PC's überwacht und die Geschwindigkeit der Lüfter automatisch angepasst
- sehr genaue Temperatursensoren mit einer Auflösung von 0,1°C (DS1820)
- mehrere Sicherheitsfunktionen schützen vor einem Überhitzen des PC's
- verlustarme Ansteuerung der Lüfter mittels Pulsweitenmodulation (PWM), spart Strom und erzeugt keine zusätzliche Wärme
- die Lüfter können in einen Bereich von 35% bis 100% geregelt werden
- anzeige der Lüfterdrehzahl auch im PWM-Modus, über den ganzen Arbeitsbereich
- USB-Schnittstelle
- Ausgabe aller Werte auf LCD 1*20/2*20/4*20 (Temperaturen, Lüfterdrehzahlen, Alarmstatus...)
- einfachste Bedienung über nur 2 Tasten
- sehr flexible Konfiguration möglich (Alarmtemperaturen, Sensor-Lüfter-Konfig, Hysterese...)
- Sicherung aller Einstellungen im Eeprom

Die Bauteilkosten dürften ungefähr bei 25€ liegen (alle benötigten Bauteile aber ohne Sensoren / LCD / Platine)
Falls nun jemand auf den Geschack gekommen sein sollte und die Regelung nachbauen will, aber es an der Platine scheitert, den kann ich nun auch helfen, schickt einfach kurz ne mail.
 
Re: update & Anleitung

Interessant was Du da so an Sachen gebastelt hast.
Ich bin im Moment dabei nen Kühleraufsatz / anbau samt Steuerung zu bauen.
9 120mm sollen dann parallel von 0 - 12v gesteuert werden. Eventuell mit Kranzleds oder Bargraphen, oder nem LCD was die Lüfterspannung anzeigt. Ich hoff nur das der Mosfet da wegen der enstehenden Wärme keine Probs macht. Die Idee mit dem Kartenleser ist cool. Hab sowas ähnliches schonmal als Bausatz gesehen. Hast Du die Platine(n) selbst geätzt?

Den Radi für den die Kühlung sein soll siehst Du auf dem Bild. Hab mal nen ordentliches ausm Netz gesucht.

grüße
 

Anhänge

  • mini-pc5.jpg
    mini-pc5.jpg
    78 KB · Aufrufe: 227
Bei dem Projekt ---> " digitale Lüfterregelung" <--- hat sich nun wieder mal etwas getan:




Nachdem einige Leute nach mehr Sensoren gefragt haben, habe ich die Firmware "etwas" umgeschrieben, so das jetzt bis zu 8 Sensoren statt 4 Sensoren unterstützt werden.

Zusätzlich gibt es nun auch ein Menue in dem die Regelgeschwindigkeit manuell festgelegt werden kann. Dadurch können die Regeleigenschaften optimal auf das zu kühlende System angepasst werden.

So gab es bisher bei dem einsatz für Wasserkühlungen das Problem das die Regelung zu "schnell" die Drehzahl der Lüfter erhöhte, wobei sich das Wasser gar nicht so schnell abkühlen konnte. Dadurch fand die Regelung nie die richtige Drehzahl der Lüfter, in der die Temperatur stabil bleibt. Mit der Möglichkeit die Regelgeschw. zu beeinflußen ist die Regelung jetzt auch für Wasserkühlungen einsetzbar.

PIC00324.JPG
 
hier mal wieder ein kleines Update des Projektes:

1.) Anstelle eines normalen Text-LCDs (HD44780 etc.) kann nun auch ein Grafik-LCD angeschlossen werden, damit können einiges mehr an Informationen zugleich angezeigt werden. Verwendet habe ich hier ein GLCD mit dem Controller "T6963C" (240 * 64 pixel).

Hier gibt es ein kleines Video: Video vom GLCD
Beschreibung des GLCD: Regelung mit GLCD

PIC01205.JPG





2.) Die Software für Windows ist nun auch fast fertig. Zur Zeit können alle Daten der Regelung angezeigt werden (Temperatur-, Lüfter-, Regelungs-daten sowie alle Konfigurationsdaten: Grenztemperaturen, Sens.Lüfter Konfig, etc.).
Als nächstes kommt hier noch die Möglickeit rein alle Konfigurationen unter Windows anzupassen, sowie eine kleine Schnittstelle für die Software "Samurize" www.samurize.com , damit jeder die Daten Graphisch darstellen kann wie er möchte...

Beschreibung der Windows Software: Windows Software

software_1.0_1.JPG




3.) Um auch "größere" Lüfter ( >2W Leistung ) und mehr wie 3 Lüfter anschliessen zu können habe ich eine kleine Zusatzplatine entworfen, an der bis zu 6 Lüfter mit je Kanal 15 W, angeschlossen werden können.

Beschreibung der Lüfter Erweiterung: Lüfter Erweiterung

PIC01059.jpg
 
Mal wieder ein kleines update des Projektes:

Diesmal wurde die Windows-Software einiges voran gebracht und damit ist es jetzt auch möglich alle Konfigurationen unter Windows zu erledigen. Auf ein LCD könnte also aus Kostengründen verzichtet werden.

software_1.1_1.GIF


Die wichtigste Erweiterung ist aber die Möglichkeit alle Daten in einem Diagramm anzeigen zu lassen, damit bekommt man einen sehr schönen Überblickt über das Regelungsverhalten und damit ob evtl. noch was an den Einstellungen gedreht werden muss.
Das Diagramm kann bei Bedarf mit einem Rechtsklick als Grafikdatei abgespeichert werden.

software_1.1_4_2.GIF


Eine genaue Beschreibung und noch weiter Informationen gibt es wie immer hier: --> Windows Software für Regelung <--


Bei den Platinen hat sich jetzt auch mal was getan, die gibt es jetzt in "etwas" besserer Qualität und sind durch den Lötstoplack sowie den bereits vorhandenen Durchkontacktierungen einiges einfacher zu löten.

PIC01453.JPG

PIC01464.JPG
 
Es gibt mal wieder ein größeres update des Projektes:

- Firmware wird jetzt fest in das Eeprom geflash und Regelung arbeitet damit sofort nach dem einschalten, die USB Unterstützung bleibt natürlich voll erhalten

- neue Erweiterung: "Notabschaltung/Alarmausgänge" , fährt den PC im Alarmfall runter oder schaltet ihn voll ab

- neue Erweiterung: "8 Kanal Lichtmodul" , für dieses Lichtmodul können auch eigene Lichtsequenzen erstellt werden

- weiteres GLCD wird unterstützt: GLCD "SED1565" , dieses GLD gibt es für ca. 9€ bei www.pollin.de
ein kurzes Video mit einer ersten Animation auf diesem GLCD gibt es hier: Animation GLCD "SED1565"

- den Sensoren können eigene Namen gegeben werden, die dann in die Regelung gespeichert und auf dem LCD/GLCD aber auch in der Software angezeigt werden

- update der --> Windows Software V1.5 <--

lightcontrol_software_1.JPG
 
Zuletzt bearbeitet:
Es gibt mal wieder ein kleines Highlight. Nachdem mich jemand nach einen passenden Grafik LCD für den 5,25" Schacht des PC's gefragt hat, habe ich mal eine neue Firmware für ein solches GLCD geschrieben ( "SED1520" Cotroller / 122 * 32 Pixel)


Grafik LCD im laufenden Betrieb ( alle Daten scrollen von unten nach oben durch ):

PIC02310_sm.JPG




Das Setup Menue auf dem GLCD:
PIC02316_sm.JPG


Moduswahl per Tastendruck:

PIC02333_sm.JPG


PIC02336_sm.JPG



Auf diesen Grafik LCD habe ich jetzt auch mal eine Diagrammfunktion getestet :) :

PIC02351_sm.JPG


diagramm_glcd_1_sm.GIF


Link: Grafik LCD mit "SED1520"-Controller an der Lüfterregelung V1.4d
 
Nach etwas längerer Zeit mal wieder ein update des Projektes:

Es gibt eine neue Erweiterung: automatische Pumpen Steuerung für 12V Pumpen z.B: Laing DDC

Funktion:
Nach dem starten der Lüfterregelung / PC wird die angeschlossene Pumpe für ca. 30 Sekunden mit voller Leistung betrieben, anschließend wird die Pumpenspannung automatisch auf den eingestellten Wert abgesenkt. In der Windows Software kann während der Laufzeit die Pumpenspannung geändert und auch in das Eeprom gesichert werden.

bestückte Platine der Erweiterung:
PIC03217.JPG


Windows Software in der die Pumpenspannung angepasst werden kann:
pump_control.JPG


ein Ausführliche Beschreibung gibt es hier: http://www.keiang.de/PCcool-file-laing_ddc.html




Bei der Firmware hat sich auch einiges getan, so wird jetzt ein weiteres GLCD unterstützt: Grafik LCD mit "T6963C" Controller / 128 * 128 dot

PIC03236.jpg


Hier gibt es noch ein Video von dem GLCD zusammen mit der Regelung: http://www.keiang.de/Downloads-d_op-getit-lid-65.html
 
kleines Update des Projektes:

Nach längerer Entwicklungszeit ist nun endlich die neue Firmware V3 fertig, in der einige zusätzliche Funktionen rein gekommen sind:

- Für jeden Lüfterkanal kann ein Anlaufimpuls aktiviert werden, dieser sorgt dafür das träge Lüfter auch bei geringer Spannung sicher anlaufen.

- Für jeden Lüfterkanal kann eine untere "Drehzahlgrenze" festgelegt werden, die verhindert das ein Lüfter im Modus "regulated" zu weit runter geregelt wird.

- das Firmware Konfigurationsmenü wurde übersichtlicher gestaltet und es es sind ein paar Menüpunkte hinzu gekommen:
PIC03435.jpg


PIC03383.jpg


PIC03398.jpg


PIC03417.jpg


PIC03425.jpg


PIC03431.jpg


...

- in der Firmware wurde eine Schnittstelle eingebaut die es erlaubt aus der LCD Software "LCDHype" raus eigene Ausgaben zu machen, d.h. das LCD / GLCD an der Regelung kann genauso verwaltet werden wie ein LCD an dem Druckerport, nur das es eben über USB läuft und damit nicht unnötig CPU-Last erzeugt ( dazu gibt es bald noch mehr Infos )


Die Windows Software zu der Regelung ist im Aussehen auch etwas geändert worden, hier z.B. das Diagramm:
Software_22_6_sm.JPG



Die USB-Schnittstellen sind mittlerweile auch offengelegt und genau dokumentiert: USB Bulk Arrays
 
Zurück
Oben