6 Lüfter über µC tempgeregelt steuern

- OCinside.de PC Forum
https://www.ocinside.de

-- Elektronik
https://www.forum-inside.de/forums.cgi?forum=16

--- 6 Lüfter über µC tempgeregelt steuern
https://www.forum-inside.de/topic.cgi?forum=16&topic=1030

Ein Ausdruck des Beitrags mit 15 Antworten ergibt bei 3 Antworten pro Seite ca. 5 DIN A4 Seiten. Das entspricht bei 80 g/m² ca. 24.95 Gramm Papier.


-- Veröffentlicht durch Ratber am 21:38 am 21. Juli 2003

Also bei 33/4 ist das ein Interner Takt von 8.25 Mhz.

Ich vermute mal das er die meisten befehle in mehr als einem Takt abarbeitet so das si am Ende im Schnitt (Der Taktschnitt lag glaube ich bei 2.5) 8.25/2.5 =3.3 Mips bringt.

Die neueren Modelle bringen da zb. 14 Mips auf die waage (Mega mit 16 Mhz. und nem Schnitt von 1.14 über alle Befehle).

Wenn man nur die gängigen befehle nimmt dann sogar faszt 16 Mips was ,wie ich finde ,ne menge mehr fürs geld ist und man bekommt ne Menge Hardware dazu.


Ich hatte mit dem 68HC05 auch so die Erfahrung.

8 Mhz (Intern nur 4) und die Befehle dauerten ne Ewigkeit.

Meine Busgeschichten erledige ich jetzt knapp 10x schneller (Soweit die Bausteine noch mitkommen) und habe reichlich reserven.

Bei 4x8 Bit Ports kann ich mir den Externen Speicher auch noch selber basteln obwohl das mit 16K nicht wirklich nötig ist.

So,genug geprozt:

Soll nicht heißen das ich die deinen jetzt abspenstig machen will aber ne Überlegung isses wert.


-- Veröffentlicht durch spacebull am 19:51 am 21. Juli 2003

Alle 51er haben die Möglichkeit externes ROM/RAM anzusteuern. Ach die modernsten. ZB. der 80C320. Das ist der schnellste 40 Poler, dens gibt glaub ich. Der teilt intern nicht (wie du richtig sagst machen die das) durch 12 (wie alle anderen) sondern durch 4.
Dadurch erhöht sich die Rechenleistung um das ca. 2,5 fache. er ist mit 33MHz getaktet. Entspricht also in etwa 82MHz eines alten 80C51.
Und auch diese ganz neue kann noch externen Speicher.
Schau bei gelegenheit mal ins Datenblatt, wenn du Zeit hast. Der kann echt viel.

Multiplikation dauert beim 51er übrigens 4 Maschinentakte.

Es gibt auch 51er mit EEPROM, der AT89S8252 hat z.B. 2K und 8K Flashrom.

Aber darüber könnten wir uns jetzt Tage unterhalten, welcher Chip was kann ;-)
Ich nehm erstmal meinen 51er und dann mal sehen.


-- Veröffentlicht durch Ratber am 19:37 am 21. Juli 2003

Aha also noch nen Alter mit Externer Möglichkeit.

Also ich finde immernoch das du mit nem Mega 8 (Schmales 28er Dil Gehäuse) oder 16 (40 Pol) besser bedient bist.

Hast 8 AD-Eingänge

8/16 K Flash
0.5K EEProm
1K Ram
Hardwaremultiplikator (Max 2 Takte)
Und jedemenge anderen kram.(Schau einfach mal in die Datenblätter)

Den 8er bekommste für 3-4€ und der 16er ist mit 6-8€ auch nicht teuer.

Soweit ich weiß wird bei den Älteren 52er Derivaten der Takt intern geteilt.
Trifft das auf deinen auch zu ?


-- Veröffentlicht durch spacebull am 19:27 am 21. Juli 2003

Ad 0-7 bedeutet, dass man damit die Adressenlowbytes ausgeben kann, falls man externen Speicher ansteuern will. Nö, ich finde es sehr vollständig. Man braucht natürlich noch eine komplette SFR referenz. Kann dir gerne mal ein paar pdf's zukommen lassen. Oder du guckst in der BiBo mal nach "Andreas Roth - Das Microcontroller Kochbuch MCS51" Sehr gutes Buch.

Der Controller ist halt ein 80C51 mit integriertem Flash. Damit muss ich net externen ROM ansprechen. Das gibt mir zusätzliche 16 Pins und vereinfacht das Controllerboard-Layout. Hab zwar noch ein selbstgebautes und geäztes 80C31 Board hier rumliegen, aber das braucht halt EPROMs. Und das ständige Löschen, Brennen ist auf die Dauer recht nervig.

Jo, weiss jetzt was du mit dem R-DA-Wandler meinst. Danke.


-- Veröffentlicht durch Ratber am 19:17 am 21. Juli 2003

Ein einfacher R-2R DA Wandler.

Besteht aus widerständen und iat aber auch recht ungenau.


Zum Datenblatt:

Schau mal auf das Pinout und besonders auf Port 0 da ist als Alternativfunktion AD0-7 angegeben.

Aber mir fällt da auf das das Datenblatt irgendwie unvollständig ist.

Warum den eigentlich gerade dieser alte 89er Controller ?


-- Veröffentlicht durch spacebull am 17:55 am 21. Juli 2003

Hallo, äh also hab ich heute Tomatensaft auf der Brille oder wie? Seite 3 im Datenblatt beschreibt P0. "Port 0 is an 8-bit open drain bi-directional I/O port." Aber ich lese da nichts von A-D's. Das währe mir auch neu, dass der die hat. Hab auch schon überlegt, ne tabelle zu machen. Mal schauen, was mir leichter fällt... Tabelle oder Formel.

Mit den Ausgängen werde ich mal verschieden Möglichkeiten testen. Erstmal mit einem Lüfter. Werd mal alle durchprobieren die ich hier so rumliegen hab (größtenteils Sunon und Papst).

Was meinst du mit "Widerstandsparallelwandler"? Ist mir noch net untergekommen der Begriff.


-- Veröffentlicht durch Ratber am 17:35 am 21. Juli 2003

Yo,hab mir mal eben das Dateblattt reingezogen.

Hatse ja doch 8 AD-Wandler (Port  0) so das de nurnoch die Entsprechenden Beschaltung am Eingang brauchst.
Die Temps lassen sich mit Tabelle umsetzen.


Für den Ausgang dann die entsprechende Beschaltung.

Entweder per 6-8-Fach DA anner 3 Drahtschnittstelle oder per Mux ganz Simpel 6 Einfache Widerstandsparallelwandler.
Oder eben Soft-PWM aber da mußte am besten mal Probieren


-- Veröffentlicht durch spacebull am 14:42 am 21. Juli 2003

Ja, das Prinzip der PWM ist mir theoretisch vertraut. Aber trozdem noch mal Danke.
Und da kommt man nicht dran vorbei? Also an den Schwächen, die sich ergeben? Bei einem normalen Ankermotor ist es doch aber nicht so, oder?
Was würdest du statt dessen vorschlagen?
Ich habe sowieso vor, die drei Platinen "Controller", "Analoger Eingang" und "Lüftersteuerung" getrennt aufzubauen. Von daher kann man ja bissle testen. Ne quick'n'dirty-Steuerung auf ner Lochrasterplatte wird wohl das erste werden, damit ich überhaupt n Erfolgserlebnis hab.

Der Analogteil ist auch schon fast fertig layoutet.

MfG


-- Veröffentlicht durch Ratber am 2:14 am 21. Juli 2003

Das Datenblatt lese ich morgen mal gemütlich durch.

Zum Glätten :

PWM ist ja wie der Name schon sagt "Puls-Weiten-Modulation"

Dh. Es handelt sich um ein Konstante Rechtecksignal (An-Aus-An-Aus usw.) bei dem nur die Einschaltzeiten Variiert werden.

Nehmen wir mal der einfachheithalber 1Khz.

Ein Zyklus betröägt also 1 µs oder besser 1000ns (Nanaosekunden)

Bei 50% Lesitung ist das Signal auch 50:50 geteilt dh. 500ns ein und 500ns aus.

Bei 10% eben 100ns ein und 900ns aus

Bei 0% eben ganz aus und bei 100% ganz an.

Da die Endstufe ja immer nur sperrt bzw. voll durchsteuert kann auch kaum ne Verlsutleistung anfallen  so das man ohne großen Kühlaufwand größere Ströme scdhalten kann.

Die Elektronik im Lüfter erzeugt ihr eigenenes Drehfeld (Mehrere Spulen) dem der im Propeller eingelassene Magnet folgt.
Die Elektronik hat am Eingang auch nen kleinen Kondensator zur Entkoppelung der Versorgungsspannung.

Wenn ich der Elektronik also regelmäßig den Saft abdrehe dann reicht auch dieser Kondensator irgendwann nicht mehr und die Elektronik kann nicht mehr arbeiten.

Das geschieht gewöhnlich bei zu niedriger oder zu hoher Frequenz.



Beim Schaltregler werden nur Impulse mit Konstanter länge (zb. 1ms) gegeben und die Frequenz geändert.

Der Vorteil ist das die Siebung nur aus nem Kondensator besteht so das man eine relativ glatte Spannung bekommt.(So läuft auch das PC-NT) aber es ist aufwendiger.

Das wars in Chaotischer Kurzform


-- Veröffentlicht durch spacebull am 1:57 am 21. Juli 2003

Hier ist das Datenblatt: http://www.atmel.com/dyn/resources/prod_documents/doc0313.pdf
Also quasi n standartding 40pol (4 x 8Ports) mit 8KB Flash und 256Byte Ram. Nix AD-DA.

Ach, das mit den Lüftern war mir gar nicht bewusst! Das ist ja blöde... Naja gut zu wissen. Vielen Dank für die Info. Bekommt man sowas nicht irgendwie mit nem Elko wechgebügelt? Nur zur Info: hab noch nie ne PWM gebaut ;-)
Naja denn wirds wohl doch in Richtung analoge Heizung gehen. Aber erstmal schauen. Das wird schon irgendwie.

So, nu aber ins Bett...

MfG


-- Veröffentlicht durch Ratber am 1:41 am 21. Juli 2003

Ich kenn den 51er nicht so genau (Naja,eigentlich schon,Sind ja genug verwandte davon unterwegs) deswegen weiß ich nicht genau was er hat und was nicht.

Kannste mir mal die Wesentlichen Daten durchgeben

Also :

Takt
Ports
AD-Ports
DA-Ports
Sonstige
(Was so  vorhanden ist)

Dazu die Organisation des Speichers.
Also wieviel ,Welcher und welcher (bei mehreren) wofür geeignet ist oder ob er Extern versorgt wird usw.

Momentan kann ich mir nix vorstellen.


Zu PWM

Bei PWM wird ja in schneller Abfolge ein und ausgeschaltet wobei sich ja nur das Ein/Ausschalt-Verhältnis ändert.

Da die standardlüfter alle Elektronisch Komutiert sind kommt die Steuerelektronik nicht immer damit klar.

Is die Frequenz niedrig (Nicht zu höhren) dann leidet die Auflösung und isse zu hoch (>15Khz.Auch nicht zu höhren) dann verweigert die Elektronik im Lüfter und nebenbei wird die Entstörung recht umständlich.

Bei 3-6Khz ist die Steuerung zwar meist möglich aber das höhrt man dann auch ganz gut.

Eine weitere Möglichkeit ist an den Ausgängen komplette Schaltregler zu setzen aber das wird schnell Teuer.



Zum Proggen:

Das nimmt einem keiner ab (Leider)


-- Veröffentlicht durch spacebull am 1:12 am 21. Juli 2003

Danke erstmal für deinen Beitrag! Ein AVR möchte ich nicht so gerne. Will mich erstmal auf einen Controller Einschießen und dann weiter sehen.
Das mit den AD-Wandlern hatte ich auch schon gedacht. Aber da müsste ich beim 51er n dicken Klopper nehemn 515 oder so. Und das ist mir zu Fett. Auch mit ext. Rom und so.

Was meinst du mit "Zum einen PWM wobei man dann mit den Schaltfrequenzen und dem Umstand das nicht alle Lüfter das mitmachen leben muß. "?

Ja, Analog ist einfacher das glaube ich auch. Aber ich möchte mit meinem Projekt gerne erreichen, dass ich möglichst viel Digital mache. Damit ich meine Programmierkenntnisse verbessern kann.
Es sollen natürlich noch ein paar Taster ran. Das ist klar. Aber die abzufragen dürfte gehen. Und erstmal sollen die ja auch noch gar nicht benuzt werden.
Zu Anfang werden erstmal die Messergebnisse seriell ausgegeben (damit ich überhaupt sehe, ob die stimmen) und die Lüfter werden 0/1 geschaltet.

Dass das proggen am schlimmsten wird denke ich auch. Aber das soll es ruhig. Wenn in den Ferien nix wird, im Semester hab ich ja auch manchmal lange weile.

Naja, nu erstmal gute Nacht und MfG


-- Veröffentlicht durch Ratber am 0:42 am 21. Juli 2003

@P4

Scherzkeks


@Spacebull

Naja,das geht recht gut aber ich sehe da etwas anderes bei der Hardware.

Ein AVR (Atmel) wäre da ganz gut geeignet.
zb. ein Mega 8 oder 16.

Da haste schonmal 8 10 Bit A/D-Wandler eingebaut und kannst dir es mit den Fühlern etwas leischter machen.

Zur ausgabe wirds dann etwas schwieriger.da es mehrere Ansätze gibt.

Zum einen PWM wobei man dann mit den Schaltfrequenzen und dem Umstand das nicht alle Lüfter das mitmachen leben muß.

Zum Anderen Analog regeln wobei natürlich je nach Leistung der Lüfter relativ viel Abwärme entsteht.

Ist man mit nem Drop von 0.8-1.5V zufreieden dann kann man obige Formen einfach realisieren.

Wenn nicht dann muß bei der Regelstufe etwas mehr aufwand getrieben werden.

Dann vermute ich mal das noch nen LC-Display rein soll und einige Tasten sollten auch nicht fehlen damit der Anwender noch was einstellen kann.

Die Hauptarbeit wird das Programm wo man die freie Auswahl zwischen Assembler,C,Basic,Fortran und was weiß ich noch hat.

Ich hab auch mal damit angefangen aber mangels Zeit steht das Projekt erstmal auf dem Wartegleis.


-- Veröffentlicht durch P4Peiniger am 23:53 am 20. Juli 2003


werten Kollegen P4Peiniger mal auf euer Forum aufmerksam


1. Weil der P4typ meint, "mach mal, dass interessiert die auch


:biglol:   ich sach nix :)

Sounds like a Ratber Fall :)

(Geändert von P4Peiniger um 23:54 am Juli 20, 2003)


-- Veröffentlicht durch spacebull am 23:00 am 20. Juli 2003

Hallo, bin vom werten Kollegen P4Peiniger mal auf euer Forum aufmerksam gemacht worden. Sieht ja recht interessant aus.

Also ich hab folgendes vor: Da mir meine Kiste zu laut ist, will ich die Lüfter temperaturabhängig regeln. Und zwar nicht einfach "Poti (für RPM-min), TempSensor, Transe, Lüfter" sondern etwas ausgefeilter. Das will ich nicht machen, weil mir die Potistrategie nicht sicher genug ist, sondern einfach, weil ich mal ne Herrausforderung suche.
Und zwar soll das ganze in etwa so ablaufen:
- KTY 81 220 soll temp messen
- VCO (XR4151) macht mir 'ne Frequenz zw. 1kHz für 10°C und 10kHz für 100°C. Das sollte der VCO schaffen und der µC sollte sich beim Zählen noch nicht verhaspeln.
- Die 6 VCO Ausgänge werden über Dioden voneinander entkoppelt und dann zusammen an einen Interrupt am µC gelegt. Chipselect (also der VCOs) geschieht über einen PNP, der jeweils vom µC-Port gesteuert wird.
- Der µC zählt die f vom ausgewählten VCO in einem Timer (8Bit reichen ja, es soll eh nur auf ein Grad genau werden)
- Programm rechnet nach ner Formel, die ich noch finden muss, wenn ich den Analogteil soweit fertig hab aus, wieviel Grad die gezählte f entsprechen.
- Wenn T_Ist > T_Soll wird in einer Tabelle nachgeguckt, wo drinne steht zb.: 0,0; 1,1; 2,1; 3,1; 4,2; 5,2;... was bedeutet: Ist zb. Delta_T gleich 2, initialisiere PWM mit 10% (Die PWM wird das schlimmste glaub ich...)
- Die einzelnen Kanäle sollen in meiner ersten Ausbaustufe mit festen T_Soll programmiert werden. Und das PWM kommt als zweites. Später soll noch ein Display (4x20) folgen, auf dem die 6 T_Ist / T_Soll stehen. Und wenn die Semesterferien lang genug sind, wird das ganze auch noch mal einstellbar gemacht.

Zur Info: Gebastelt ist noch nix, nur im Kopp bis jezt alles. Auch Eagle hab ich noch net doll bemüht.
Ich will das ganze mit nem 89C52 machen, damit ich das Display später noch anschließen kann. Andere Controller (also als 51er) kommen nicht erstmal nicht in Frage, da ich nur n Brenner für die hab und mich auch mit denen schon bissle eingeschossen hab (aber was Konkretes noch nie gemacht hab)

So, nu das wichtigste - weil da werden wohl die meisten drüber stolpern - Motivation: Oder "Warum von hinten durch die Brust in's Auge, kauf dir ne Lüftersteuerung"
Also, 1. Ist das mein Hobby, 2. Will ich 51er lernen und das kann ich am besten, wenn ich n mir selbst gestelltes Probelem löse. Hoffe, ihr versteht mich.
Das ganze passiert übrigens vor dem Hintergrund, dass der ganze Tower in den SemFerien ruhig gestellt werden soll. Festplatten kommen in nen Käfig aus alten Förderbändern (also schönes schweres Gummi) und der Rest wird auch noch bissle optimiert.

Also und nun noch, warum ich das hier überhaupt poste.
1. Weil der P4typ meint, "mach mal, dass interessiert die auch"
2. Weil mich interessiert, ob schon mal jmd. sowas gebaut hat
3. Weil ich mal wissen will, wie andere auf meine Idee ragieren.

Am meisten bin ich für Anregungen dankbar, wie man eine 6 (oder von mir aus auch 8) Kanal PWM baut, die auf jedem Kanal einzeln einzustellen ist. Und dabei dem µC noch genug Luft lässt, um Temp zu checken und Displ. anzusteuern. Das ganze wird wahrscheinlich auf C hinauslaufen. Aber ich werde versuchen soviel wie möglich in Asm zu schreiben. 8 K sind mit C schneller voll, als mir lieb sein wird.

So, das wars erstmal...

MfG


OCinside.de PC Forum
© 2001 - 2021 www.ocinside.de