Hallo Leutz,
Ich müsste mir (vorzugsweise an den AT90S4433) 3 DA Wandler dranbauen,
die so wenige Pins wie möglich belegen (am liebsten wäre mir nur einer
;o) ). Und da ich in Sachen AVR's aboluter Newbee bin (Hab ehrlich
gesagt noch nicht mal einen.. geht mir erst mal um die Theorie bevor ich
was kaufe was ich nachher nicht brauch) hab ich keine Ahnung wie ichs
anstellen soll (oder obs überhaupt geht). Das ganze sollte bei 3
Wandlern nicht über 10 gehen. Danke im Vorraus für jede Anregeung.
TheCrasher
Hallo,
weißt du eigentlich, dass die meisten AVR's einen eigenen AD Wandler
intern habe - mit 10bit Auflösung?????
Du benötigst vermutlich nur 3 Eingänge und nicht 3 A/D Wandler oder???
Such mal auf der homepage von www.maxim-ic.com - da ibts auch 1-wire
Bus A/D Wandler - die verbrauchen tatsähclich nur einen einzigen Pin von
deinem MC!!!
Beschrieb' das mal etwas genauer was du machen willst und wo dein
PRoblem ist....
mfg
Christinan
mist - schon wieder nicht aufgepasst.......
Da gibts mit Sicherheit bei maxim trotzdem 1-wire Lösungen dazu. Und für
DA Wandler gibts mit Sicherheit auch Multiplexer ????
mfg
Christian
Hi,
Thx erst mal das die Antworten so prompt kamen... also von diesem PWM
(was auch immer es sein mag) Hab ich auch schon gehört. Aber 1. Hab ich
kein Plan was das genau ist. und 2. Brauche ich dann nicht für jedes
Teil das ich ansteuern will (2xVentilatoren(12v),1xPumpe(12V)) einen
Kanal? Der AT90S4433 hat nämlich nur einen und die Dinger mit 3 Stück
sind mir etwas zu teuer. Was ich genau machen will:
MC gesteuerter Wasserkühlungscontroller. Es wird gemessen:
1x Wassertemperatur
1x CPU Temperatur
1x Gehäusetemperatur
Mit diesen Werten wird die Drehzahl folgender Dinge geregelt:
1x Radiatorlüfter (12v)
1x Pumpe (12v)
1x Gehäuselüfter (12v)
Dann gibts noch ein bisschen Displaykram aber da weiß ich ziemlich genau
wie ich das anstellen soll. Joa das ists eigentlich.
TheCrasher
P.S. kann mir einer nen Tip geben welchen Temp. Fühler ich für sowas am
besten benutzen soll??
Hallo
Ich habe da einen DA-Wandler von MAXIM gefunden.
Das ist der MAX512CPD. Der hat Drei Analog Ausgänge
und braucht auch nur Drei Pins zum ansteuern.
Das beste ist, er kostet nur etwa 3-4 Euro.
Leider weiß ich nicht wo man das IC bestellen kann.
Vielleicht direkt bei MAXIM, als Muster?
mfg WMenken
> Ich habe da einen DA-Wandler von MAXIM gefunden.
Dann hat er zwar einen Analogwert, kann damit aber immernoch nichts
anfangen. SoftwarePWM ist um einiges billiger als irgendwelche
Maxim-Spezial-ICs und damit läßt sich direkt ein MotortreiberIC (L293D
und wie sie alle heißen) für die Lüfter ansteuern, aber das wissen die
Roboterbauer besser.
Schmittchen.
Hallihallo!
@TheCrasher:
PWM bedeutet "PulsWeitenModulation". Kling kompliziert, ists es aber
nicht. So in etwa funktionierts:
Du schaltest eine digitale Spannung immer ein und aus. Die Frequenz
(Zeitdauer ein kompletten Ein-Aus-Periode) bleibt dabei immer gleich.
Das, was sich ändert, ist das Verhältnis zwischen Einschaltdauer und
Ausschaltdauer (=Tastverhältnis). Filterst Du das Ausgangssignal über
einen Tiefpaß, erhältst Du eine Gleichspannung, die je nach
Tastverhältnis höher oder niedriger ist.
Eine niedrige Ausgangsspannung erhältst Du, wenn Du eine lange Auszeit
und nur eine kurze Einzeit in Deinem Digitalsignal erzeugst, eine hohe
Ausgangspannung hast Du folglich bei kurzer Auszeit und lange Einzeit.
_________-_________-_________-_________- = niedrige Ausgangsspannung
_____-----_____-----_____-----_____----- = mittlere Ausgangsspannung
---------_---------_---------_---------_ = hohe Ausgangsspannung
Solche Signale lassen sich problemlos per Software erzeugen. Also
brauchst Du außer je einem Tiefpaßfilter pro DA-Wandler keine externe
Hardware. Höchstens noch eine Transistorstufe oder einen OPAMP zur
Verstärkung. Je nachdem, was Du mit der Analogen Spannung steuern
willst.
ciao,
Andi
Hi Andreas,
Thx erst mal für die Antwort und vor allem auch für die sehr
anschauliche Darstellung! Hab jetzt kapiert denke ich (oder hoffe ich
;o) ). Das heißt also ich bräuchte Pro DA Wandler auch nur 1 Pin und die
nötige Software? Das wäre wirklich klasse. Ich hab nämlich mit dem
AT90S4433 ein paar Pin probleme... es sind ein paar zu wenig ;o). Wenn
noch das Display drankommt und verschiedene Taster zur Bedienung. Hat
zufällig noch einer von euch ein Softwarebeispiel zur Hand? Das würde
mir sehr helfen... ach und was für nen Tiefpassfilter empfielst du mir
(Was für Kriterien gibts da denn Ich brauche eine Spannung zwischen
5-12V)?
Danke noch mal!
TheCrasher
Für die PWM-Reglung brauchst du keinen Tiefpass... das Beispiel sollte
nur die Sittuation verdeutlichen. Den Motor steuerst du dann mit nem
schnellen und leistungsfähigen FET an, da ist fast jedes Model richtig.
Ich kenn den 4433er nicht, aber ich glaube er besitzt eh nur einen
PWM-Output... die restlichen Dinge lassen sich aber auch sehr schonend
aufbauen.
Die Matrixtastatur kannst du mit einem Wiederstandsnetzwerk (musste mal
nen bisschen rechnen) verschalten und dann mit nur einem (!!) AD-Pin an
den µC anschließen.
Viele Dotmatrixtastaturen gibt es in einer Version die mit SPI
angesteuert werden, somit braucht es auch nur die gewissen drei
Leitungen am µC. Nicht dass damit etwas blockiert ist... SPI ist
schließlich ein Bus.
Was suchst du denn jetzt noch für Sourcecode? Musste wenigstens mal
sagen welchen Compiler und welche Sprache du benutzt...
Hier nochmal ein kleiner Trick mit dem sich in windeseile digitale,
einstellbare Spannungen mir richtig Saft erzeugen lassen. Man nehme
einen Festspannungswandler und setze dessen GND auf einen DA-Port. Ich
hab das mal mit nem netten LM*** gemacht und es hat prima geklappt.
@ andreas (beide, den H. und den webmaster): macht doch mal bitte ne
erklärung zu PWM ins tutorial. das wird jede woche gefragt, was den pwm
ist, und die meisten leute können die suchfunktion des forums wohl nicht
bedienen oder wissen gar nicht, dass es eine gibt... wär glaub ich nicht
schlecht, wenn das im tutorial stünde.
@Retro:
Mit Software meinte ich lediglich ein Assemblerbeispiel zu Software PWM.
Und da Andreas ja sagte: "Also brauchst Du außer je einem Tiefpaßfilter
pro DA-Wandler keine externe Hardware" dachte ich logischerweise ich
brauche so nen Tiefpassfilter. Das der AT90S4433 nur einen PWM Ausgang
hat weiß ich. Weshalb ich ja auch auf Software PWM setzen wollte. Hab
aber jetzt gehört das PWM bei Lüftern (und auch bei Pumpen?) nen
ziemlichen Lärm verursacht! Und das wäre ja dann auch nicht das was ich
will. Ich bau mir die Wasserkühlung um dem Lüfterlärm zu engehen...
nicht um ihn zu fördern ;o). Matrixtastatur brauch ich keine... hab eh
nur 3 Taster... die brauchen ja dann auch nur 3 Pin.
Hallo,
ein Biespiel zur Software PWM habe ich leider nicht. Ich kenne Deine
Anwendung jetzt nicht näher, daß einzige Problem was ich sonst noch
sehe, ist, daß das PWM Signal ja die ganze Zeit erzeugt werden muß und
Dein uC nicht mehr sooo viel Zeit hat, noch andere Dinge zu erledigen.
Zur Not könntest Du aber noch einen 2. AVR nehmen, der nix anderes zu
tun hat, als das PWM zu erzeugen. Damit bist Du dann jedenfalls
innerhalb Deiner 10€-Grenze und obendrein noch recht flexibel.
Da Du ja aber "nur" Motoren damit ansteuern willst, sollte auch eine
relativ geringe Frequenz ausreichend sein, so daß Du mit Deinem uC noch
genügend Zeit für anderes hast. Kommt halt ganz darauf an, was Du noch
so alles mit dem Ding machen willst. :)
Ein extra Tiefpaßfilter brauchst Du natürlich dann, wenn Du tatsächlich
auch eine Gleichspannung haben möchstest, die Du irgendwie weiter
verarbeiten willst. Im Falle Deiner Motoren (Pumpe und Ventilatoren) ist
das wohl aber gar nicht notwendig, da diese ja recht träge sind und
somit den Tiefpaßfilter überflüssig machen.
Das läuft dann so ab, als wenn Du den Motor ständig ein und
ausschaltest. Schaltest Du ihn ein, läuft er an. Bevor er jedoch seine
Höchstdrehzahl erreichen kann, wird er schonwieder abgeschaltet. Er wird
wieder langsamer. Doch bevor er stehen bleibt, wird er schonwieder
eingeschaltet. Und so weiter. Je nach Ein- und Ausschaltdauer pendelt
sich die Drehzahl irgendwo in der Mitte ein. Soll er sich schneller
drehen, wird er einfach etwas länger ein und dafür etwas kürzer
ausgeschaltet.
Ich denke mal, daß ließe sich mit dem AVR recht elegant per Timer mit
seinem dazugehörigen Interrupt lösen.
Ob der Lüfter mehr Krach macht, wenn man ihn per PWM ansteuert, weiß ich
nicht, hab ich noch nie ausprobiert. Ich kanns mir aber irgendwie nicht
vorstellen. Sonst müßtest Du halt doch nen Tiefpaß nehmen und vielleicht
wie von Retro vorgeschlagen nen Festspannungsregler als Treiberstufe
"Mißbrauchen" Die Idee ist nicht schlecht, müßte 1a funktionieren. :)
ich nehme mal an, Du willst das ganze für Deinen Rechner basteln,
stimmts? Hoffnungslos übertakteter und wassergekühlter Prozessor, oder?
:)
ciao,
Andi
Hi Leutz,
erst mal wieder Thx für the answer ;o). Das Ding ist in der Tat für
meinen Rechner gedacht. Übertaktet ist meine CPU (Celeron II 700Mhz)
NOCH nicht.. aber ich gedenke es in der Tat zu tun wenn das Ding eine
ordentliche Kühlleistung zustande bringt ;o). Außer der Reglung der 2
Lüfter und der Pumpe, wird noch ein Menü zur Verfügung gestellt über das
die gewünschte Temperatur eingestellt werden kann. Ein Display zeigt die
aktuellen Temperaturwerte an und 2 LED's zeigen zusätlich noch
Statusinformationen an. Joa das ist's eigentlich.. ahso ein Piezosummer
gibt noch Alarm wenn eine Grenz überschritten wird und gibt Rückmeldung
beim drücken einer Taste. Und vielleicht mach ich noch einen
Wasserstandssensor der mich warnt wenn zu wenig Wasser drin ist. Schafft
ein MC das überhaupt alles?? ;o)
TheCrasher
Hi!
Wenn das alles ist, was Dein uC machen soll, dann kann er ja
zwischenduch noch Kaffeepausen machen ;) Wieviel Temperatursensoren
willst Du verwenden?
Ach übrigens: Denk daran, daß das Wasser auch irgendwie gekühlt werden
muß...
ciao,
Andi
Hi!
Weis das das Wasser gekühlt werden muß. Diese Aufgabe übernimmt mein
selbstgebastelter Radiator. 3 Sensoren überwachen die Temperatur von:
CPU
Wasser
Gehäuse
Demnach wird geregelt:
Pumpe
Radiatorlüfter
Gehäuselüfter
Das garantiert mir ein leisen Betrieb bei optimalter Kühlung (Meine
Pumpe macht bei maximallast (12v) nämlich einen ziemlichen Krach ...
könnte aber damit auch den halben Atlantik in 2 Minuten von einer zur
anderen Stelle verlegen so stark ist die dann ;o) ). Und den Uart
verbinde ich im PC intern mit meinem internen Com2 Anschluß. Da drüber
kann ich dann noch (über ne selbstgeschriebene Software) Temperatur und
Lüfter/Pumpenwerte auslesen.. und die Max/Min Werte verändern.
Ziemliches Projekt nur für ne Wasserkühlung, aber ich will erstens
sicher gehen das sie immer Fehlerfrei läuft und zweitens das sie nicht
mehr Leistung verbrät als nötig ist.
TheCrasher
Für die Steuerung eines Motors ein DA-IC zu verwenden finde ich ein
wenig übertrieben, ein paar Rs (und/oder Ds) tun da gleiche Dienste.
Mal was grundsätzliches: PWM ist nicht gleich PWM.
1. Möglichkeit: ich erzeuge über einen Filter (z.B. RC) (annähernd) eine
Gleichspannung, die ich dann geeignet verstärke und an den Verbraucher
schicke.
Vorteil: kein Summen bei Motoren ...
Nachteil: Verlustleistung im Verstärker, da Analog!
2. Möglichkeit: ich versorge den Verbraucher direkt mit der gepulsten
Spannung (digital).
Vorteil: wenig Verlustleistung im Verstärker.
Nachteil: Motoren (sogar Glühbirnen) summen evtl. .
Und die Schaltung will wohl überlegt sein (eine Freilaufdiode (je nach
Leistung Schottky) ist bei induktiven Lasten unentbehrlich, weil sie den
Strom "glättet".
Im Idealfall quietscht auch hier nichts, wenn die Frequenz hoch genug
ist, wird annähernd Gleichstrom fließen (trotz gepulster Spannung - die
Induktivität "überbrückt" in der spannungslosen Zeit den Strom!).
Schnelle Schalter (MOSFETs sind hier angesagt, da beim Ein- und
Ausschalten die meiste Verlustleistung entsteht, und die wollen richtig
angesteuert werden (nicht unbedingt trivial, ICL7667 ist ein geeignetes
IC).
Eine Möglichkeit für einen DA-Wandler ist noch nicht genannt worden
(oder ich habs übersehen).
Wie wäre es mit einem TDA8444. Das ist ein DA-Wandler mit I2C
Schnittstelle. Kann man relativ einfach per Software nachbilden und
benötigt nur 2 Pins am Controller. Der Wandler bietet 8 Kanäle, hat aber
leider nur eine Auflösung von 6 Bit.
Gruß
Markus
http://www.elektronik-projekt.de/
Hi Leutz,
Das mit PWM ist eigentlich schon total ok. Nur leider halt dieses Summen
ist schei**. Ich hab nicht sonderlich viel Ahnung von Elektronik.. aber
wenn ich irgend nen Filter dazwischen klemme (weiß der Teufel was für
einen), könnte das das summen unterbinden?? (Vielleicht ist die Frage ja
schon beantwortet worden.. aber wie gesagt hab ich nicht sehr viel
Ahnung.). Danke schonmal.
TheCrasher
Hallöchen!
Mit PWM hab ich selbst zwar (praktisch) noch nichts gemacht, aber wenn
man sich das ganze (theoretisch) überlegt: Ja. Mit einem "Filter" muß
das weg zu bekommen sein.
Wenn Du das PWM-Signal, bevor Du es an den Motor legst, noch glättest,
dürfte es keine Probleme mehr geben, da Du ja quasi eine echte
Gleichspannung hast. Nur leider, wie von direx ja schon erwähnt, hast Du
dann eine höhere Verlustleistung, da Du analog und nicht mehr digital
arbeitest. Der Ausgangstransistor arbeitet nicht mehr als Schalter im
Sättigungsbereich, sondern als Stromverstärker. (Sofern man halt mit
einem Transistor arbeitet...) Das setzt u.U. einen größer
dimensionierten Kühlkörper für den Transistor und evtl. einen
Leistungsstärkeren Typ vorraus.
Die einfachste Methode, aus dem PWM-Signal eine Gleichspannung zu
machen, wäre IMHO einen einfachen Wiederstand am Ausgangspin gefolgt von
einem Kondensator gegen Masse. Das wäre dann ein stinknormaler
Tiefpaßfilter. Das stromschwache Ausgangssignal wird dann auf eine
Transistorstufe (evtl auch Darlingtonstufe) gegeben, und damit betreibst
Du dann Deinen Verbraucher.
Aber vorsicht: Verlustleistung am Transistor beachten und einen
geeigneten Typ auswählen!
ciao,
Andi
Hi,
Ja.. das könnte klappen. Wie finde ich raus wie stark der Kondensator
sein muß (hängt doch sicher von der Spannung ab oder?). Brauche also
dann nur PWM zu benutzen... 3 Widerstände , 3 Transistoren und 3
Kondensatoren für die ganze Schaltung?? Das wäre echt perfekt! Welche
Transistoren brauch ich dann für 3 12V 2-3A Lüfter/Pumpe?? Danke nochmal
;o)
TheCrasher