-
        

Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 10 von 21

Thema: R2R-DAC Pegel anpassen

  1. #1
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    26.05.2005
    Ort
    Kaiserslautern
    Beiträge
    794

    R2R-DAC Pegel anpassen

    Anzeige

    Hi,

    ich habe einen einfachen DAC mittels R2R-Netzwerk aufgebaut. Die einzelnen Eingänge betreibe ich mit 5V (nicht zu ändern, sind die Ausgänge eines AVRs).

    Ich habe folglich eine Ausgangsspannung von 0 - 5V. Dieses "Fenster" möchte ich jetzt aber auf 0,33V - 1V "umwandeln".

    Ich vermute, dass ich das mit einem Op-Amp machen kann, weiß aber nicht, wie genau. Auch aus den etlichen Seiten über Op-Amps kann ich mir (noch) kein sinnvollen Schaltplan erdenken.

    edit: Eigentlich müsste das doch mit zwei Widerständen an den beiden Enden des Widerstandsgrabes möglich sein, oder?

    Ich hoffe, ihr könnt mir dabei helfen,
    Viele Gruß,
    CowZ

  2. #2
    Benutzer Stammmitglied
    Registriert seit
    01.04.2005
    Beiträge
    84
    Hallo CowZ,

    mit etwas rechnen (Spannungsteiler + äquiv. Spannungsquellen etc., bei Interesse mehr dazu) geht das mit 2 oder 3 Widerständen und ohne Opamp, selbiger koennte ggf. als Buffer dahinter, wenn die Schaltung zu hochohmig für die Last ist.

    Code:
                +5V
                 |
                 R2
                 |
     0-5V >--R1--+--> 1/3-1V
                 |
                 R3
                 |
                GND
    
    
    R3 = 1/6 * R1
    R2 = 2 * R1
    In R1 ist der Innenwiderstand R_i des R-2R-Netzwerks (R_i = R) schon enthalten, wenn Du also bei den Werten von R2 und R3 in der Formel R1 = R einsetzt, kannst Du die 3 Cent für R1 auch noch sparen . Bitte nochmal nachrechnen/simulieren/testen/von anderen Forenmitgliedern nachrechnen lassen, bevor Du das so baust, keine Gewähr für die sonntagnachmittägliche Rechnung

    Grüße
    ;Matthias

  3. #3
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    26.05.2005
    Ort
    Kaiserslautern
    Beiträge
    794
    Hi,

    wie berechne ich denn R1? Der Wechselt doch mit der angelegten Spannung, oder?

    Das R2R-Netzwerk besteht aus 100k-Ohm Widerständen, also 100k und 50kOhm.

    Meine Alternativ-Idee wäre es jetzt, einen Spannungsteiler hinter nem OpAmp aufzubauen und den zweiten OpAmp im gleichen Gehäuse als Buffer zu benutzen (brauch ich so oder so).

    Gruß, CowZ

  4. #4
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    14.01.2006
    Ort
    Hattingen
    Alter
    52
    Beiträge
    984
    Hi Cowz,
    bei einem so hochohmigen Netzwerk würde ich eh mit einem Impedanzwandler (OP) arbeiten. Wenn du gleich einen CMOS-Doppel-OP nimmst, kannst du OP - Spannungsteiler - OP machen. 0..1V sind so einfach machbar. Die 0,33V kannst du per Software realisieren. Ansonsten Muss der 2. OP als Addierer geschaltet werdenund einfach noch 0,33V hinzuaddieren..

    Sigo

  5. #5
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    26.05.2005
    Ort
    Kaiserslautern
    Beiträge
    794
    Hi,

    wiegesagt, den OpAmp werd ich sowieso benutzen. Die 0,33V per Software gefallen mir nicht, da so die Auflösung des DACs verkürzt werden, aber den zweiten als Addierer zuverschalten sollte ja auch gehen.

    Am besten gefallen würde mir allerdings immer noch die Variante mit dem einen OP von EZ81.
    Wäre cool, wenn du mir das Prinzip dahinter noch mehr erläutern kannst, so dass ich irgendwann die Widerstände für andere Spannungen anpassen kann.

    Gruß, CowZ

  6. #6
    Erfahrener Benutzer Lebende Robotik Legende Avatar von PICture
    Registriert seit
    10.10.2005
    Ort
    Freyung bei Passau in Bayern
    Alter
    66
    Beiträge
    10.970
    Hallo CowZ!

    Am eifachsten ist es tatsächlich den festen Wert für 0,33 V immer softwaremassig zu jedem durch den DAC ausgegebenen Wert zu addieren. Das beeiflusst die Auflösung des DACs nicht.

    Dann brauchst Du nur ein Spannungsteiler (Widerstand) am Ausgang des R-2R Netzwerks um eine maximale Ausgangsspannung auf 1V einzustellen oder die Werte für R-2R ausgegangen von der Last des DACs zu berechnen.

    Wenn Du den DAC für Video anwenden willst, sind 100 k und 50 k wegen Montagekapazitäten zu hoch.

    MfG

  7. #7
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    14.01.2006
    Ort
    Hattingen
    Alter
    52
    Beiträge
    984
    Cowz,

    An der Auflösung verlierst du ja tatsächlich nur 1/3 Bit, da du statt eines Bereichs von 0,67V (0,33..1V) nun 0..1V speisen musst. Die Softwarelösung ist aber viel einfacher.

    Ich habe mir das Netzwerk nochmal angesehen. Es hat nach außen ja immer den gleichen Innenwiderstand, nämlich R. (Ausnahme Bit 0)

    Wenn die Spannungsquelle aber immer den gleichen Widerstand hat, dann kann man mit einem einzigen Widerstand von deinem +Ausgang nach Masse einen Spannungsteiler bilden.

    Dieser Widerstand muss 1/4R betragen. Bei 50kOhm wären das also 12k5.
    Bei 10kOHm, die ich eher nehmen würde, wären es entsprechend 2k5.
    Ein weiterer VOrteil ist, dass dadurch der Innenwiderstand (bzw. Ausgangswiderstand) deiner Analogspannung gleich auf 10kOhm, bzw. 2KOhm sinkt.

    Sonderbetrachtung Bit 0:
    Bit 0 hat einen höheren Ausgangswiderstand, sodass dein Spannungsteiler Bit 0 überproportional abschwächen würde. Das kannst du aber mit 2 zusätzlichen R-Widerständen (in Reihe) von Bit0 gegen Masse kompensieren. Das gesamte Ergebnis rutscht dann um 1/2 LSB nach unten. Aber das kann man erstens besser verkraften als ein zu schwaches Bit0, und außerdem kann man das ja bei der Software berücksichtigen. Da man es ja weiß. Die Auflösung leidet so nicht.

    Sigo

  8. #8
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    26.05.2005
    Ort
    Kaiserslautern
    Beiträge
    794
    Hi,

    ich habe eine Auflösung von 8 Bit. Das entspricht auf 1V also einer Auflösung von:
    1V : 256 Bit = 0.00390625 V/Bit

    0,33V entsprechen also 0,33V / 0,0039 V/Bit = 84 Bit.

    Das ist mir doch bisschen arg an Auflösungsverlust.

    Wie ich den Innenwiderstand meiner Spannungquelle (ADC) berechne, ist mir noch nicht klar. Würde aber gerne dazu lernen.

    Um den Ausgang belastbarer zu machen, wollte ich einen OpAmp dahinter schalten. Wenn ich nun den Innenwiderstand der Spannungsquelle wüsste (und der konstant ist) kann ich doch über eine Verstärkerschaltung zunächst die Spannung (mehr als) fünfteln, und dann mit dem zweiten OpAmp 0,33V aufaddieren, oder?

    Es kommt mir so vor, als würde ich dadurch mehrere Vorteile kombinieren:
    a) ich habe immer noch volle 8bit für 0,33V - 1V
    b) ich habe ein belastbares Ausgangssignal

    Alternativ kann ich natürlich auch zunächst über einen Spannungsteiler die Ausgangsspannung auf 0,67V reduzieren und dann mit nem OpAmp 0,33V aufaddieren. Oder was spricht überhaupt gegen die Addiererschaltung?

    Klärt mich bitte auf Bin ja hier, um zu lernen

    Gruß, CowZ

  9. #9
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    14.01.2006
    Ort
    Hattingen
    Alter
    52
    Beiträge
    984
    Zitat Zitat von CowZ
    Hi,

    ich habe eine Auflösung von 8 Bit. Das entspricht auf 1V also einer Auflösung von:
    1V : 256 Bit = 0.00390625 V/Bit

    0,33V entsprechen also 0,33V / 0,0039 V/Bit = 84 Bit.

    Das ist mir doch bisschen arg an Auflösungsverlust.

    Wie ich den Innenwiderstand meiner Spannungquelle (ADC) berechne, ist mir noch nicht klar. Würde aber gerne dazu lernen.

    Um den Ausgang belastbarer zu machen, wollte ich einen OpAmp dahinter schalten. Wenn ich nun den Innenwiderstand der Spannungsquelle wüsste (und der konstant ist) kann ich doch über eine Verstärkerschaltung zunächst die Spannung (mehr als) fünfteln, und dann mit dem zweiten OpAmp 0,33V aufaddieren, oder?

    Es kommt mir so vor, als würde ich dadurch mehrere Vorteile kombinieren:
    a) ich habe immer noch volle 8bit für 0,33V - 1V
    b) ich habe ein belastbares Ausgangssignal

    Alternativ kann ich natürlich auch zunächst über einen Spannungsteiler die Ausgangsspannung auf 0,67V reduzieren und dann mit nem OpAmp 0,33V aufaddieren. Oder was spricht überhaupt gegen die Addiererschaltung?

    Klärt mich bitte auf Bin ja hier, um zu lernen

    Gruß, CowZ

    Hi Cowz
    0,33 ..1V = 0,67V Spannungshub

    0,67V / 255 = 2,63mV / digit

    1V / 255 = 3,92mV / digit

    sooo groß ist der Verlust doch eher nicht, oder?

    Falls du aber doch lieber die vollen 8 Bit ausschöpfst, kannst du natürlich beiden deiner Lösungen realisieren. Da aber eiN Doppel-OP genau wie die meisten EInfach-OPs in einem DIL8 Gehäuse sitzt, und der erste OP eh keine Beschaltung braucht, kannst du ja ruhig auch die Schaltung mit dem Doppel-OP anweden. Dann hast du den Spannungsteiler fast garnicht belastet und mit dem 2. OP einen sehr soliden Ausgang. Ich würde einen CMOS-OP ala TL072 nehmen.

    Alternativ geht es natürlich auch, den von mir eben vorgeschlagenen Spannungsteiler zu realisieren und nur einen OP in Addierer-Schaltung dahinter hängen.

    Da Addierer in der typischen Schaltung aber einen Eingangsstrom brauchen (Es werden meist 2 Ströme über 2 Eingangswiderstände addiert), belastet der Addierer deinen Spannungsteiler und kann somit sas Ergebnis verfälschen.. Wieviel das ausmacht, musst du selbst durchrechnen. Bei der Schaltung mit CMOS Doppel-OP entfällt dieser Fehler.

    EDIT:
    Wenn du auf die Addition verzichtest, kannst du mit einem Einfach-OP als Impedanzwandler direkt hinter dem Spannungsteiler arbeiten. Dann ist der Eingang hochohmig und belastet den Spannungsteiler nicht. Das dürfte dann auch mit den 50/100kOhm gut gehen.


    Sigo

  10. #10
    Benutzer Stammmitglied
    Registriert seit
    01.04.2005
    Beiträge
    84
    Hallo CowZ

    Innenwiderstand des DAC:

    Die Spannungsquellen (also hier die Ausgaenge des uC) werden dazu immer kurzgeschlossen=auf Masse gelegt.

    Dann von rechts nach links vorgehen:
    Die 2 2R ganz rechts sind parallel und koennen als einfacher R gegen Masse angesehen werden, (X) mit dem R zw. Bit0 und Bit1 in Serie entsprechen die rechten drei Widerstaende dann einem 2R gegen Masse. Der ist parallel mit dem 2R zu Bit1, entspricht also einem R gegen Masse und du kannst bei (X) wieder anfangen zu lesen und die ganze Schaltung SChritt für Schriit weiter vereinfachen, bis du nur noch einen R hast, der dann dein Ausgangswiderstand ist. Dass Bit0 einen anderen Ausgangswiderstand haben soll, kann ich nicht ganz nachvollziehen.

    Wenn die Spannungsquelle aber immer den gleichen Widerstand hat, dann kann man mit einem einzigen Widerstand von deinem +Ausgang nach Masse einen Spannungsteiler bilden.
    Oder man legt den einzigen Widerstand nicht gegen Masse, sondern gegen 5/13 V und hat genau das gewünschte Ergebnis. Die Bierdeckelrechnung dazu habe ich mal angehängt, die Form bitte ich zu entschuldigen .

    Grüße

    PS: Kannst mal nach Thevenin googlen, da ist mehr zu dem Thema zu finden.
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken r2r_spgteiler.png  

Seite 1 von 3 123 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •