D/A-Wandler / 0-10V

  • Hallo,


    ich suche gerade nach einer Möglichkeit, ältere Geräte mit 0-10V-Steuerspannungseingang über einen Mikrocontroller (ATmega8) zu steuern. Über diesen Controller sollen 8 Steuerspannungen mit einer Auflösung von jeweils 8 bit geregelt werden.


    Dazu bin ich auf folgende Schaltungsidee gekommen:


    Über den Microcontroller (ATmega8) soll ein D/A-Wandler (AD7524) angesteuert werden. Dessen Ausgänge sollen dann auf die Eingänge eines als anolgen Demultiplexer beschalteten 4067er-ICs gelegt werden, dessen Ausgänge der Reihe nach - über den Mikrocontroller gesteuert - durchgeschaltet werden sollten.
    Die Ausgangsspannungen des Demultiplexers werden dann über Kondensatoren gepuffert an die Eingäge eines OP-Amps (LM124) gelegt, welcher dann letztendlich die 0-10V-Steuerspannung zuständig sein soll.


    Da ich das ganze nun aber noch nie in der Praxis getestet habe und auch nicht weiß, ob die Variante mit dem Demultiplexer so optimal ist, frage ich mich, ob eine solche Lösung zu empfehlen ist?


    Was haltet ihr davon?



    Viele Grüße,
    Marcel

  • Hallo, deine Schaltung habe ich schonmal in der Praxis so gesehen.
    Allerdings kannst du sie vereinfachen indem du anstatt eines DA Wandler ICs einen PWM Ausgang mit nachgeschaltetem Tiefpass nimmst.
    Noch weniger Bauteile brauchst du wenn du einen MAX528 (8-fach DA Wandler, kann direkt 0..10V) einsetzt.

    Was sagt der Raver auf der Techno-Party, wenn sein Extasy aufhört zu wirken?


    "Was ist denn das für eine sch... Mucke hier?"

  • Vielen Dank für den Tipp - an die PWM-Kanäle des Mikrocontrollers hatte ich gar nicht gedacht. ;)
    Diese bieten sich natürlich optimal dazu an.


    Um eine bessere stabilität der einzelnen Steuerspannungen zu erreichen sollte es wohl auch das sinnvollste sein, gleich auf alle 3 PWM-Kanäle zurückzugreifen. In dem Fall würde ich das ganze auch etwas umstrukturieren und auf 12 Ausgänge erweitern.


    MfG Marcel

  • Nachdem ich nun etwas Zeit gefunden habe, habe ich einmal einen groben Schaltplan entworfen.
    Ich habe mich dazu entschlossen auf einen ATmega16 zurückzugreifen und bei diesem auch alle 4 PWM-Kanäle auszunutzen, um diese anschließend auf 16 Ausgänge zu verteilen.


    Einen Schaltungsentwurf gibt es hier: *klick*


    Datenblätter zu den verwendeten ICs gibt es hier: *klick*


    Leider ist der Schaltplan etwas unübersichtlich, da ich noch keine Zeit gefunden habe, einen sauberen Plan zu zeichnen.


    Noch einmal kurz zur Schaltungsidee:


    Der Mikrocontroller soll per RS232 angesteuert werden. Die entsprechende "Signalumsetzung" soll dazu der RS232-Transreceiver MAX232 übernehmen.
    Die Anschlüsse ISP- und LCD-Anschlüsse sind für die eigentliche Schaltung erst einmal nicht relevant.


    An den drei PWM-Ausgängen des Mikrocontrollers hängt nun ein RC-Glied als Tiefpass. Dieser führt dann jeweils zu den Eingängen der analogen Demultiplexer. Zwischen deren Ausgänge wird über die Ausgänge PC0 und PC1 des Mikrocontrollers umhergeschaltet.
    Die Ausgänge des Demultiplexers sind dann an ein weiteres RC-Glied angeschlossen, dass dann die entsprechende Ausgangsspannung puffern sollen. Die entsprechende Spannung wird dann jeweils mit einem OP-Amp verstärkt und über einen Widerstand (der zur Begrenzung des Stromes im Kurzschlussfall dienen soll und im Normalbetrieb aufgrund der hochohmigen Einänge der 0-10V-Steuereingänge vernachlässigbar sein sollte) an die einzlnen Ausgänge gelegt.


    Was haltet ihr von dem Schaltungsentwurf?
    Hat zufällig jemand schon Erfahrungswerte, welche Frequenzen, Kondensatoren und Widerstände sich für den Tiefpass an den PWM-Ausgängen für diese Anwendung am besten eignen?
    Ist der 4fach-OP-Amp LM124 für diese Anwendung zu empfehlen oder gibt es da geeignetere ICs?



    Viele Grüße,
    Marcel

  • Hi,


    ich würde einen J-FET Opamp nehmen, da der einen deutlich höheren Eingangswiderstand hat, und damit den Kondensator deutlich weniger belastet.
    Nachteil ist, dass man eine negative Versorgungsspannung braucht.


    Tomy

    SIM II Operator and Dante Level I-II-III (alles sogar zweimal :)
    Jugendschwimmabzeichen, Rettungsschwimmabzeichen in Bronze
    Meine kommerziellen Softwareprodukte SATlive und LevelCheck

  • Danke für den Tip. Die Verwendung eines J-FET-OP-Amps bietet sich natürlich an.
    Dann werde ich die LM124er wohl gegen LF347-ICs ersetzen. Die negative Versorgungsspannung sollte auch kein Problem sein - den geringen Mehraufwand am Netzteil nehme ich gerne in Kauf. ;)


    Für weitere Kritik, Verbesserungsvorschläge und ähnliches bin ich natürlich gerne offen. ;)



    MfG Marcel

  • Hi,


    ich bin mir nicht sicher, ob das mit der PWM und dem Intergrator bei starken Sprüngen so funktioniert.
    Mein Demux hatte damals einen D/A Wandler, einen 4067, 100nF zum Speichern pro Kanal und dahinter jeweils 1/4 TL074


    Tomy

    SIM II Operator and Dante Level I-II-III (alles sogar zweimal :)
    Jugendschwimmabzeichen, Rettungsschwimmabzeichen in Bronze
    Meine kommerziellen Softwareprodukte SATlive und LevelCheck

  • Ich habe so mehrere 3 Kanalige Interfaces gebaut. Als OP kam ein Single Supply Typ rein (ich weiß die Bezeichnung nicht, kann ic aber später nachschauen).
    Die Sprünge sind kein Problem, da ist der Glühfaden langsamer..
    Ich habe allerdings damit RGB Wannen und Nebel angesteuert.

    Was sagt der Raver auf der Techno-Party, wenn sein Extasy aufhört zu wirken?


    "Was ist denn das für eine sch... Mucke hier?"

  • ..Da frage ich mich sowiso warum er das so machen will..
    Ginge es mit einem digitalen (und Gatter?) nicht viel einfacher?


    Nee, ich habe den MC33204 genommen weil der gerade da war...
    Aber der LM324 könnte man genausogut nehmen.

    Was sagt der Raver auf der Techno-Party, wenn sein Extasy aufhört zu wirken?


    "Was ist denn das für eine sch... Mucke hier?"

  • Zitat

    [...] ich bin mir nicht sicher, ob das mit der PWM und dem Intergrator bei starken Sprüngen so funktioniert. [...]


    Ja, diese Befürchtung hatte ich auch schon.


    Bezüglich der OP-Amps werde ich mich dann wohl dir anschließen, der TL074 schaut ja gleich nochmal etwas geeigneter aus. ;)


    Zitat

    [...]Die Sprünge sind kein Problem, da ist der Glühfaden langsamer.. [...]


    Da ich bevorzugt nicht nur Dimmer sondern auch andere Effektgeräte damit ansteuern wollte, wäre eine größere Reaktionszeit u.U. etwas störender.
    Solange sich dies aber in einem geringeren Rahmen halten würde, sollte das aber kein Problem darstellen.


    Zitat

    [...] Das Problem sehe ich, da er ja die PWM -> Analog Wandlung vor dem Multiplexer macht. [...]


    Ja, genau so ist es zumindest auch bisher geplant. Ist es sinnvoller das Signal anstatt über den Tiefpass direkt an unverändert am Demultiplexer anzulegen und erst anschließend entsprechend "aufzubereiten"?
    Ich hatte mich für die andere Lösung entschieden, da mir dies einfacher und sauberer vorkam, als aus den "0/1-Bruchstücken" an den Ausgängen wieder ein sinnvolles Signal zu gewinnen.


    Ich werde mir heute abend wohl einmal einen kleinen 555er-Timer mit variablen Tastverhältnis aufbauen und den Tiefpass- und Multiplexer-Teil der Schaltung einmal mit einem Oszilloskop in der Praxis testen. ;)


    Viele Grüße,
    Marcel

    5 Mal editiert, zuletzt von rcz ()

  • Hi,


    Mein gedankliches Hauptproblem ist die Ausgabe von 0V nach dem der vorherige Kanal auf full on war.
    Was spricht denn gegen irgendeinen 8Bit D-A Wandler?


    Oder bau halt mit ner R/2R Ladder einen diskreten Wandler, 8 Ausgänge hättest du ja noch frei.


    Den Ihibit brauchst du auch noch am MProz, denn sonst gibt's sicher Übersprechen.


    -Mux 'trennen'
    -Mux umschalten
    - Neuen Wert ausgeben
    - Wenn der Wert stabil ist, Mux 'aktivieren'
    - Mux'trennen'
    - etc.


    Tomy

    SIM II Operator and Dante Level I-II-III (alles sogar zweimal :)
    Jugendschwimmabzeichen, Rettungsschwimmabzeichen in Bronze
    Meine kommerziellen Softwareprodukte SATlive und LevelCheck

    Einmal editiert, zuletzt von TomyN ()

  • Zitat von "TomyN"

    [...] Was spricht denn gegen irgendeinen 8Bit D-A Wandler? [...]


    Ansich war dies auch meine Anfangsidee. Allerdings hat mir die Ideevon Sven M mit den PWM-Ausgängen deswegen besser gefallen, da dieser Teil dann komplett hardwareseitig ablaufen würde. Aber eigentlich sollte bei einem ATmega16 auch noch genügend Leistung verfügbar sein, um dies mit einem Timer softwaremäßig zu lösen.


    Eigentlich bin ich aber für jeden Lösungsansatz offen. Ob das ganze nun etwas teurer wird spielt auch keine Rolle, hauptsache am Ende kommt eine brauchbare Lösung raus. ;) Am Programmieren des Microcontrollers sollte es nicht scheitern - das wird unabhängig von der letzlich angestrebten Lösung das kleinste Problem sein.



    MfG Marcel



    //Nachtrag:


    Deine im vorletzten Post beschriebene vorgehensweise mit den Widerständen ist natürlich auch nicht schlecht. Damit wäre zumindest schonmal ein sauberes Analogsignal eingangsseitig sichergestellt.


    Wie ich auf die Idee kam /E direkt auf Masse zu legen weiß ich nicht. Das ist natürlich ungeschickt, da dies ja schon zwangsweise beim umschalten zu Störungen führen würde.

    Einmal editiert, zuletzt von rcz ()

  • So, nun habe ich einmal die ganze Schaltung auf das Prinzip mit dem R2R-Netzwerk umgestaltet: *klick*


    Übersichtliche ist die Schaltung dadurch auf jeden Fall geworden. ;)
    Bei der Variante fällt dann auch gleich schonmal das Problem mit der Beeinträchtigung durch den Wert des vorherigen Kanals weg.



    MfG Marcel

  • :) ich find meine PWM Idee trotzdem toll:-)


    Ein kompletter Umladevorgang braucht bei der von mir gewählten Zeitkonstante etwa 0,05s. Das find ich OK.
    Ich habe 1µF und 1500Ohm. Vollkommen Rippelfrei.


    TL074 würd ich nicht nehmen, das ist kein Rail-toRail Typ.


    Der OP ist aber auch nicht soo kritisch bei dieser Schaltung.

    Was sagt der Raver auf der Techno-Party, wenn sein Extasy aufhört zu wirken?


    "Was ist denn das für eine sch... Mucke hier?"

  • Ah, nochwas. Ich habe immer irgendwie DMX als Eingangssignal im Kopf, aber du willst ja RS232 nehmen..warum?
    Das ist doch auch schon recht langsam...(üblicherweise)

    Was sagt der Raver auf der Techno-Party, wenn sein Extasy aufhört zu wirken?


    "Was ist denn das für eine sch... Mucke hier?"

  • Zitat von "Sven M"

    :) ich find meine PWM Idee trotzdem toll:-)


    Ein kompletter Umladevorgang braucht bei der von mir gewählten Zeitkonstante etwa 0,05s. Das find ich OK.
    Ich habe 1µF und 1500Ohm. Vollkommen Rippelfrei.


    Sofern ich die pasenden Bauteile herumliegen habe, werde ich auf jeden Fall einmal beide Varianten versuchen. Dann wird sich zeigen, welche Lösung in der Praxis geeigneter ist. ;)


    Zitat von "Sven M"

    [...] TL074 würd ich nicht nehmen, das ist kein Rail-toRail Typ.


    Der OP ist aber auch nicht soo kritisch bei dieser Schaltung. [...]


    Da hast du natürlich Recht, an das habe ich überhaupt nicht gedacht. Allerdings wird das aufgrund der Verstärkung und der positiven Versorgungsspannung von 12V weniger kritisch sein.
    Aber was sich umgehen lässt umgeht man natürlich am besten trotzdem. ;)


    Zitat von "Sven M"

    [...] Ah, nochwas. Ich habe immer irgendwie DMX als Eingangssignal im Kopf, aber du willst ja RS232 nehmen..warum?
    Das ist doch auch schon recht langsam...(üblicherweise) [...]


    Das ist eine gute Frage - ansich wäre ein DMX-Eingang natürlich gerechtfertigt, allerdings hat das andere Gründe:
    ICh bevorzuge es konventionelles Licht (und wenn diese Schaltung einmal fertig ist auch 0/10v-Effektgeräte) über den PC zu steuern.
    Dazu schreibe ich schon seit einiger Zeit eine Software.
    DMX kam aus dem Grund nicht in Frage, da ich auf eine Lösung hinaus wollte, die von jedem beliebigen PC ohne jegliche Adapter betreibbar ist und ich mich auch nicht auf irgendein "Einweg-Protokoll" beschränken wollte, wie das bei DMX der Fall ist. Da habe ich es lieber, wenn mein Dimmer mir sagt, wenn irgendwas nicht stimmt. ;)


    Nun natürlich die Frage, warum ausgerechnet das langsame RS232 - das hat folgende Gründe:
    Ursprünglich war eine Realisierung mit der USB-Schnittstelle geplant (irgendwo müsste es hier auch noch einen Thread zum USB-Dimmer geben), allerdings hat sich das als wenig praxistauglich erwiesen, da das ganze durch die Kabellänge zu sehr limitiert ist. Und vom FOH zum Dimmer wird es dann durchaus mit USB problematisch.
    Aus diesem grund habe ich auf die serielle Schnittstelle zurückgegriffen. Da je Schnittstelle nur ein Gerät angesteuert wird, ist die Übertragungsrate vollkommen ausreichend. USB-RS232-Adapter gibt es für ein paar Euro auch überall. Letztendlich vereinfacht die RS232-Schnittstelle im Gegensatz zu anderen Varianten noch erheblich die Kommunikation zwischen den Mikrocontrollern.


    Nachteile gibt es natürlich auch massenweise, aber darauf möchte ich nun einmal nicht eingehen. ;) Wenn alles nur irgendwelche vorkonfektionierten DMX-Lösungen sind ist das ja auch langweilig. ;)



    Viele Grüße,
    Marcel