Forum: Mikrocontroller und Digitale Elektronik eigenständige Lüftersteuerung mit LCD bauen


von Stefan Herzig (Gast)


Lesenswert?

Hi @ all!!!

Ich stehe vor einem Projekt, dass mir sehr wichtig ist zu realisieren.
Ich möchte mir nämlich ein PC - Gehäuse aus Holz bauen und dazu eine
Lüftersteuereung bei der man bis zu zwölf Lüfter anschließen kann.
Außerdem möchte ich, dass diese Lüftersteuerung selbstständig ist, d.h.
nicht vom PC angesteuert wird. Das Prinzip ist folgendes: Auf dem
LCDisplay sind meine bis zu zwölf Lüfter aufgelistet. Über zwei Knöpfe
kann ich dann entweder nach oben oder nach unten die einzelnen Lüfter
durchschalten. Regeln will ich diese Lüfter dann über ein (nicht mehr)
Potentiometer wobei an Hand einer LED Reihe angezeigt werden soll mit
wie viel Spannung die einzelnen Lüfter versorgt werden. Außerdem soll
auf dem LCDisplay die Prozessortemperatur, Gehäusetemperatur und die
Umbebungslautstärke angezeigt werden.
Nun wurde mir gesagt ich mache das am Besten mit einem C-Controller.
Da ich aber wenig Ahnung von dieser Art von Programmierung habe, hoffe
ich nun bei euch auf gute Hilfe zu stoßen.
Ich wäre euch zu ziehmlich dankbar wenn ihr mir helfen könntet.
Danke schon mal im voraus.

von Ferrice (Gast)


Lesenswert?

Hmm ich verstehe nicht ganz was du meinst..

willst du die 12 lüfter mit 12 potentiometer steuern oder willst du an
einem potentiometer 12 lüfter hängen haben..??

also wenn du den 2ten fall meinst dann musst du erstmal einen prozessor
finden der 12 pwm ausgänge hat..
naja vieleicht gibt einen i²c pwm controller....

Ich hab mir auch sowas gebaut.. allerdings bin ich noch bei der
entwicklung und habe vorerst nur 1nen lüfter eingebaut..
angezeigt wird an meinem lcd.. die lüfterdrehzahl.. die temperatur..
und die luftfeuchte...

Matthias weißer hat auf seiner hp so eine lüftersteuerung mit einem
lüfter und dazu die drehzahlanzeige..

http://www.matwei.de/ger/index.php?page1=elektronik&page2=drehzahl

also wenn du noch gar keine ahnung von programmieren und µc hast dann
würde ich mal klein anfangen.....

mfg

von Stefan Herzig (Gast)


Lesenswert?

Wie du schon richtig vermutet hast, möchte ich nur 1 Poti benutzen und
an dem die 12 Lüfter steuern. Wo finde ich so eine i*c pwm controller
mit 12 pwm ausgängen? Ich weiß ich sollte klein anfangen, aber das ist
ja im Prinzip ein einmaliges Projekt und das sollte dann schon perfekt
sein.

Bitte helft mir
Danke......

wfG

von Steffen (Gast)


Lesenswert?

Hallo!

Einen Controller mit 12 Hardware PWM Ausgängen zu finden lohnt sich
denke ich nicht. Versuch doch lieber die PWM Ausgänge per Sotware zu
schreiben (benötigt grade mal einen Timer mit Interrupt und 12 I/O und
eben etwas Prozessorleistung). Da nimmst du einefach einen etwas
größeren AtMega mit 16 MHz und das kriegst du geregelt. Auch die
anderen Sachen, die er können muss, könntest du mit einem Mega 16 oder
Mega 32 hinkriegen.


Einen extra I2C PWM Controller würde ich mir da sparen ...

Viele Grüße
Steffen

von Stefan Herzig (Gast)


Lesenswert?

Könntet ihr mir das ein bisschen näher erklären? Ich habe glaube ich
oben schon erwähnt, dass ich nicht besonders viel Ahnung habe. Ich bin
quasi ein völliger Newbe und benötige einige "Unterrichtsstunden" was
die Controller-Programmierung angeht.\:-D

von Stefan Herzig (Gast)


Lesenswert?

Wo bekomme ich denn so einen Controller her?
Wie und mit was programmiere ich den? Brauche ich da irgendwelche
Zusatzgeräte?
Bitte helft mir es ist mir wirklich wichtig!!!!!:-D

von Thomas K (Gast)


Lesenswert?

Für den Anfang kann ich Dir nur
http://www.mikrocontroller.net/tutorial/
empfehlen.

Du musst einfach klein anfangen. Wenn ich Chinesisch lernen will,
dann kann ich nicht gleich damit anfangen indem ich ein chinesisches
Buch schreibe!

Wenn du nicht wirklich in die ganze Materie eindringen willst, dann
empfehle ich dir einen Thread im Bereich "Markt" zu eröffnen.
Vielleicht bastelt Dir ja jemand das Ganze. Allerdings wird dich der
Preis wohl umhauen, denn keiner macht soetwas geschenkt. :)

von Jörn G. aus H. (Gast)


Lesenswert?

Nimm einen kleinen Controller (z.B. attiny12 oder atmega8 für ca.
2,-)und bringe diesem die Lüfterregelung bei, dann anschliessend
vielleicht noch I2C und über diesen Bus hängst du dann anschliessend 12
Controller zusammen.

Wenn du Display und den einen Poti direkt an den AD-Wandler des
Hauptcontrollers hängst und noch ein paar Tasten, dann bist du fast
fertig ;-)
Dieser Hauptcontroller steuert die anderen alle dan über I2C.

Das kostet vielleicht ein bischen mehr, ist dafür aber modular und
relativ simpel, da du alle benötigten Teile fertig im Web (und wohl
auch hier im Forum) finden kannst.
1. LCD-Display
2. Poti an ADC
3. I2C-Master
4. I2C-Slave
5. Lüfter steuern per PWM

Anfangen solltest du wirklich mal mit dem Tutorial, wenn du dass nicht
möchtest, wirst du den Rest wohl auch nicht schaffen.

Erste Schritte wären testweise LED an/aus, mal einen Taster abfragen,
LCD anschliessen, Testtext ausgeben, usw und so fort...

jörn

von Jörn G. aus H. (Gast)


Lesenswert?

Ach ja - noch einfacher wird es, wenn du das recht komplizierte I2C sein
läßt und einfach seriell per UART sendest - ohne MAX oder so. Einfach
das TX vom Master an alle RX der Slaves ran. Und dann eben nur
Kommunikation in eine Richtung, also nur Befehle an die Slaves senden.

Vorher den jeweiligen per "Telefonnummer" (Adresse) anwählen.

Fertig.

Natürlich kannst du das auch alles mit einem einzigen ATmega8 machen,
aber das erfordert meiner Meinung nach mehr eigene Hirnarbeit von dir.

Aber mal vorher gucken - für mich hört sich das nach einem normalen
PC-Pimperprojekt an. Vermutlich findst du sowas komplett fertig
irgendwo.

jörn

von Jörn G. aus H. (Gast)


Lesenswert?

nochmal ich, ;-)

die Idee oben mit en vielen Controllern ist natürlich nur mit einem
Schaltungsdesign "ohne alles" sinnvoll. Also internen Taktgeber
(keinen externen Quarz), nur einen 100nF am Controller und sonst nix.
Also auch Reset vielleicht einfach auf Vcc (5V) legen.
Einen Tiny12 findet man auch schon für unter 1,-, also 12,- + 3,- für
den Hauptcontroller sollte möglich sein.

Also kommt nicht mit "unbezahlbar". ;-)

jörn

von Ferrice (Gast)


Lesenswert?

jörn:

Nimm einen kleinen Controller (z.B. attiny12 oder atmega8 für ca.
2,-)und bringe diesem die Lüfterregelung bei, dann anschliessend
vielleicht noch I2C und über diesen Bus hängst du dann anschliessend
12
Controller zusammen.

für was bitte 12 controller???

atmega48 hat z.b. 6 pwm kanäle
mfg
@steffen
Also softwaremässiges pwm für 12 kanale + temperaturabfrage +
schallmessung + lcd + einstellungen für die lüfter per poti --> kann
ich mir mit einem µc nicht vorstellen..
kann mich aber auch täuschen..

@Stefan Herzig

also erstmal wirst du ein programmierboard brauchen..
weil einfach -- hardware aufbauen und programm schreiben -- wird es
noch nicht spielen denke ich mal..
also schau einfach mal nach einem board.. eventuell mit einem atmel µC

am besten eines wo sämtliche hardware zum lernen schon drauf ist..
taster, lcd, leds, Ports auf klemmen oder leisten ausgeführt..

mfg

ferrice

von Rahul (Gast)


Lesenswert?

Jörn hat schon recht:
das einfachste ist jedem Lüfter seinen eigenen Controller verpassen.
Ein kleinen Protokoll über irgendeine Schnittstelle,
Tastatur, Poti und LCD über einen Master-Controller.
Wenn man das über die USART macht, kann man bis zu 256 Lüfter über
einen Master steuern...
Ziemlich flexibles System...
Vorteil ist: dasselbe Programm auf 12 Controllern.
Es ist relativ einfach zu realisieren, braucht halt etwas mehr Platz
als Hirnschmalz.

Richtig schön wird es, wenn der Master auch noch die Slaves abfragen
könnte...

von Stefan Herzig (Gast)


Lesenswert?

Fettes Merci Leutz!!!

Mit so einer positiven Resonanz habe ich wirklich nicht gerechnet.
@ Jörn G. aus H.
Wenn du es als PC - Pimperprojekt ansiehst, wenn man sich ein eigenes
PC-Gehäuse baut und dazu noch die ganze Elektronik von der (was ich
finde komplizierten) Lüftersteuerung selber macht und sich dazu auch
noch in die ganze Programmiertechnik selbst einarbeiten will, dann weiß
ich auch nicht mehr weiter.
Ich sehe das ganze eher als eine Herausforderung mit der ich mich nur
selbst verwirklichen will. Da kommt der WOW-Effekt nur an zweiter
Stelle. Is klar, dass wenn ich des irgendwie zusammenbringe will ich
auch a bissl angeben! Aber man soll den Tag nicht vor dem Abend
loben!!

@Ferrice
Merci Merci Merci!! Wo bekomm ich denn so ein Programmierboard her?
Das ist glaub ich auch am Besten um in die ganze Programmiererei
reinzukommen.

Also dann werd ich mich mal an das Tutorial machen und mich melden wenn
ich wieder eine Frage habe.

Nochmals FETTES MERCI!!!!!!!!:-D

von Hauke Radtki (Gast)


Lesenswert?

jo nimm doch 2 mega 48 als slaves, und an die möglichst hohen externen
takt, damit die PWM frequenz möglichst hoch ist, damit du die lüfter
nicht pfeifen hörst! und dan z.b. simpel das UART nutzen, und die
beiden controller adressieren. Dann einen Hauptcontroller, der das Poti
das Display und die LEDs steuert (oder wolltest du nur LEDs als
display???)

von Ferrice (Gast)


Lesenswert?

Also schau mal bei ebay.
da gibt es einige recht billige boards mit lcd drauf...

da musst du dich halt reinarbeiten und die pheripherie selbst
dazubauen..

Ein beispiel:
http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&category=10662&item=5779272620&rd=1

mfg

von Hauke Sattler (Gast)


Lesenswert?

Ich muß dem anderen Hauke zustimmen.
Gerade Lüfter brauchen eine hohe PWM Frequenz.
Das wird schwierig sein das als Software PWM hinzubekommen. Alternativ
kann man auch einen Philips TDA8444 hinbekommen.
Das ist ein 8 Kanal DAC mit I2C Schnittstelle.

Weiterhin würde ich UART nur in Zusammenspiel mit Quarzen nehmen. Weil
der UART Asynchron arbeitet ist der viel zu empfindlich gegen
Taktfrequenzschwankungen.

Anstatt von einem Poti würde ich dann einen Drehimpulsgeber mit
Tastfunktion nehmen.
Als uC würd ich nen Mega8 oder Mega16 nehmen.
Die haben genügend Ports für ein HD 44780 Display. Und an der Hardware
I2C Schnittstelle würden dann 1-2 TDA8444 und evt. noch ein paar LM75
Temperatursensoren drantun.

Stefan welche Programmiersprachen beherscht du?

cu
Hauke

von Stefan Herzig (Gast)


Lesenswert?

@Hauke Radtki
Nein ich will ein nur ein normales LC Display benutzen keine LED als
"Display"

@Hauke Sattler
Ich beherrsche Visual Basic (auch Quick Basic) und a bissl Pascal und
Delphi, außerdem noch HTML (aber des is ja ned so interessant in dem
Fall;-D)

mfG

von Hauke Sattler (Gast)


Lesenswert?

@Stefan Herzig
OK
Da ich jetzt keine Pascal und Delphi Kompiler für AVR kenne, würde ich
Basic vorschlagen.

Von Bascom gibt es einen netten Basic Kompiler für AVR. Als uC würde
ich nen Mega8 oder Mega16 nehmen.

Alternativ kann man auch eine C-Control 1 von Conrad nehmen.
Die uC Puristen werden zwar jetzt aufschreien, aber als absolute
neueinsteiger Plattform geht die OK.

cu
Hauke

von Hauke Radtki (Gast)


Lesenswert?

Naja also die C-Control hab ich mir auch am anfang geholt, hab sie aber
eigendlich nur ma eben um sehr simple sachen zu testen, weil man da
z.b. den ADC wie nen normalen port verwenden kann etc, so kann man mal
eben schnell was testen
dafür ist sie sehr lahm, und die PWM frequenz ist total beschissen, und
nciht veränderbar

von Hauke Sattler (Gast)


Lesenswert?

Ja sie ist sehr lahm, da gebe ich dir recht.
Aber ich habe ja auch schon gesagt das man die Lüfteransteuerung besser
mit einem TDA8444 macht.
Die C-Control sollte nur zur Steuerung von Display und externem DAC
sein. Und dafür hat sie ausreichend Power.
Und sie hat alles drauf (man mus nicht groß rumlöten).
Und da es anscheinend nen Einzelprojekt bleiben soll, macht es keinen
Sinn nen STK500 zum Programmieren zu kaufen.

cu
Hauke

von Erik H. (agutanus)


Lesenswert?

Hallo,
bin an einem ähnlichen Projekt interessiert.

Allerdings werde ich vermutlich 4 polige Lüfter benutzen, die also 
bereits einen PWM-Eingang besitzen.

allerdings hätte ich dazu einige Fragen:
 - Auf welcher Frequenz sollte die PWM mindestens laufen?
 - hat jemand Erfahrungen mit solchen 4 pol. Lüftern? (speziell die aus 
Apple-Computern)
 - kennt jemand einen geeigneten I²C pwm controller?

Sollte ich keinen I²C pwm-controller finden werde ich wohl einen ATmega8 
über I²C ansteuern und per Software-pwm die Lüfter steuern.


Und zum TDA8444 noch eine Frage:
Laut Datenblatt verträgt der maximal 10 mA je Pin.
Damit kann man ja noch keine Lüfter steuern... Womit kann ich also den 
Ausgangsstrom verstärken?

-> Nachtrag: ich sehe gerade, dass der letzte Beitrag bereits 5 Jahre 
alt ist...

von gjkgtjkgt (Gast)


Lesenswert?

Erik Her schrieb:
> Womit kann ich also den
> Ausgangsstrom verstärken?

Transistor

von Erik H. (agutanus)


Lesenswert?

mit einer Emitterfolgerschaltung?
( http://www.elektronik-kompendium.de/sites/slt/0204133.htm )

Damit würde am Emitter immer Ue = Ub - Ube anliegen
(also Spannungsverstärkung ~0,9 und Stromverstärkung >10 )

Das ganze hat den großen Nachteil, dass am Transistor bei halber 
Emitterspannung eine recht große Verlustleistung entsteht!


Sinnvoller fände ich diese Schaltung:
http://www.joretronik.de/Web_NT_Buch/Kap6/Kapitel6.html

Damit würde die Verlustleistung minimiert werden! Leider benötigt man 
damit für jeden Lüfter eine:
 - Induktivität
 - Kapazität
 - Leistungstreiber (gibts auch als IS's mit 8 Treiberstufen für 0,20 €)
 - PWM - Treiber-Baustein (über I²C ansteuern? eventuell eigenständiger 
Controller)

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.