Motivo per un breve picco nell'uscita dell'amplificatore operazionale quando si attraversano 0 V?


11

Qualcuno riconosce questo picco nell'uscita di un amplificatore operazionale quando il segnale attraversa 0 V? Si alza quando si attraversa su e giù quando si attraversa. In uno dei video EEVBlog, Dave ha indicato qualcosa di esattamente simile sull'oscilloscopio e ha detto (a parte) che potrebbe accadere quando si utilizza un resistore di feedback da 10k o qualcosa del genere. Ma non ricordo quale video fosse. Questa è l'output di un TL071 (in realtà 1/4 di un TL074). È alimentato dall'uscita di altri 2 TL071 tramite resistori da 2,2k e il feedback ha un potenziometro da 10k.

schematico

simula questo circuito - Schema creato usando CircuitLab

Picco a 0 V.

Aggiornamento del 10 marzo

Come menzionato nei commenti seguenti, il circuito è costituito da un processore ATmega328P che guida 8 linee in un DAC R2R. L'uscita del DAC e una tensione di polarizzazione CC destinate a centrare l'uscita del DAC a 0 V si immettono in un amplificatore operazionale TL071 invertente. L'uscita di questo amplificatore operazionale è "OA2OUT" nello schema sopra.

schematico

simula questo circuito

L'uscita di rete R2R ha un'impedenza di 10k, rappresentata da R4. R1 e R2 mi danno una tensione di offset e hanno un'impedenza parallela di 9,5k, che è abbastanza vicina a 10k. Anche il resistore di feedback R3 è 10k. Quindi penso che questo circuito sommerà e invertirà R2R e compensa le tensioni.

Quando controllo l'output della rete R2R nel punto R2ROUT, non vedo il picco.

Nessun picco

Quando controllo l'uscita dell'amplificatore operazionale su VOUT, vedo il picco.

Un picco

Ho provato alcune altre cose. Ho provato a sostituire il resistore di feedback da 10k con un resistore da 2,2k, solo perché era in giro e perché ricordo che Dave menzionava qualcosa su un resistore da 10k nel video EEVBlog. Ciò ha peggiorato il picco.

Un picco più grande

Quindi ho provato a sostituire l'amplificatore operazionale TL074 con un amplificatore operazionale LM6144. Ho usato questo circuito per provare vari amplificatori operazionali e cercare di capire cosa li rende tutti diversi, quindi so che il circuito funziona (in un certo senso) con tutti loro. Questa volta ho avuto punte su ogni transizione.

Picchi di Lotsa

Alla fine ho provato un TLV2374, che è fantastico, ma vedo ancora il picco. È più piccolo ma è ancora lì.

Un ultimo picco

Sto ancora cercando di capire questo. Grazie a tutti per il vostro aiuto finora!

Aggiornamento 13 marzo

Ho provato a misurare l'uscita R2R con un carico R / 10 (1k) come da commento @WhatRoughBeast di seguito. Ora vedo il picco! Sembra anche molto più rumoroso ... il che è qualcosa che ho notato prima e ho tentato di risolvere con condensatori da 10uF attraverso le barre di alimentazione e la terra virtuale. Ha "funzionato" nel senso che ha ridotto il rumore, ma ha anche introdotto l'oscillazione / squillo che ho menzionato quando ho cercato di installare un piccolo cappuccio per smussare l'uscita DAC. Tutte queste cose sono ovviamente correlate, ma non so come.

Picco e rumore

A proposito, ho provato la resistenza da 100 ohm suggerita da @Brian Drummond in precedenza, ma il segnale risultante era così macchiato e rumoroso che non riuscivo a capire cosa stesse succedendo.

Allora, qual è il takeaway qui? Il problema è ovviamente il comportamento di MSB identificato da @WhatRoughBeast. Sembra che il rumore peggiori con più corrente attraverso la rete R2R. Ho pensato, va bene, di bufferizzare il segnale R2R attraverso un amplificatore operazionale non invertente prima di fare qualsiasi altra cosa con esso, ma quando lo faccio, vedo anche il picco. È l'unica soluzione per filtrarlo e non preoccuparti?


Forse il nome dell'effetto che stai cercando è distorsione crossover .
pipe

1
Sebbene la sorgente del segnale sia ovviamente un DAC R-2R, la domanda dovrebbe davvero menzionarlo. (NON è una distorsione crossover) Esegui il test eseguendo il DAC in un resistore di valore basso (100R) invece di un ingresso di terra virtuale sull'opamp. Probabilmente non sarà così lineare, ma vedrai lo stesso passo.
Brian Drummond,

Grazie @Brian Drummond. Non ho menzionato R2R perché mi sono ricordato del video EEVBlog ed ero sicuro che fosse un problema di amplificazione operazionale. Cercare di mantenere la domanda focalizzata, ma in questo caso maggiori informazioni sarebbero state migliori.
Willis Blackburn,

Con lo schema aggiornato, tenere presente che il punto "R2R" è l'ingresso di inversione dell'amplificatore operazionale e verrà mantenuto a una tensione costante. Quindi non dovresti vedere nulla a quel punto. Prova a guidare una resistenza R / 10 a terra.
WhatRoughBeast

Ho disconnesso l'amplificatore operazionale prima di scattare le schermate del 10 marzo.
Willis Blackburn,

Risposte:


21

Quello che vedi è una mancata corrispondenza del tempo di accensione / spegnimento del msb rispetto agli altri bit.

Fingi per un momento che si tratti di un DAC a 8 bit, con il codice 01111111. Se il codice successivo fosse 1000000, avresti ottenuto un passo ben educato. Ma quello che sta succedendo è che internamente il msb risponde un po 'più velocemente degli altri bit. Ciò significa che la transizione è in realtà da 0111111 a 1111111 a 10000000. Il codice 11111111 persiste solo per un tempo molto breve, ma mentre è lì l'output tenta di passare al fondo scala. Poiché il tempo di mancata corrispondenza (chiamato bit skew) dura solo per un tempo molto breve, si ottiene solo un impulso relativamente piccolo (comunemente chiamato glitch). Questo effetto è in realtà abbastanza importante nei DAC video, poiché l'occhio è molto sensibile a questo genere di cose e una caratteristica importante per i DAC video è l'energia glitch totale.


Spiacenti, ti ho contrassegnato correttamente, ma non è stato contrassegnato perché non posso ancora confermare che sia così. Ho bisogno di vedere se il glitch è presente sull'uscita DAC prima che entri nell'amplificatore operazionale. Ha senso però.
Willis Blackburn,

La ragione potrebbe essere che il DAC è in realtà una rete R2R a 8 bit e l'MSB è fisicamente più vicino all'output? Forse il resto del circuito ha una certa capacità e quindi una parte del segnale 01111111 rimane quando gli ingressi passano a 10000000?
Willis Blackburn,

@WillisBlackburn - ci sono molte possibilità. Il fatto che la dimensione del passo sia maggiore per il passo con il glitch indica certamente che c'è qualcosa di diverso nell'unità msb. Tuttavia, data la base relativamente lunga mostrata (20 usec / div), è improbabile che il problema di posizionamento di cui ti preoccupi. Il problema tecnico sembra avere una larghezza compresa tra 10 e 100 sec di nsec, e questo è troppo per essere spiegato dai ritardi di posizionamento. Capacità vagante? Non posso dirlo senza uno schema del DAC.
WhatRoughBeast

1
@WhatRoughBeast Sono perplesso su come sei arrivato a questa risposta dato che la domanda in realtà non menziona un DAC (per quanto posso dire). Esiste chiaramente un DAC come concordato dall'OP, e la risposta sembra giusta, ma hai una sfera di cristallo o qualcosa del genere?
circa

1
È un'unità parallela. Le porte da D0 a D7 su un ATmega328P sono direttamente collegate agli ingressi della rete R2R. Ho usato la porta D perché è l'unica porta con 8 bit che può essere impostata con una singola istruzione. (La porta C ha il bit 6 occupato dal pin di reset e nessun bit 7, mentre i bit 6-7 della porta B sono occupati dal cristallo esterno, e ovviamente non c'è la porta A.) Quindi sono abbastanza sicuro che tutti gli switch siano essere impostati contemporaneamente entro i limiti dell'abilità dei microcontrollori. Stasera vedrò se il glitch appare all'uscita R2R.
Willis Blackburn,

0

Il problema che vedi sembra provenire da OpAmps, come hanno dimostrato i tuoi esperimenti. Prova a mettere un resistore in serie con l'ingresso invertente di OpAmp (ovvero, tra il nodo comune R1 / R2 / R3 / R4 e l'ingresso invertente. Usa circa 10k per iniziare. Puoi aggiungerne un altro all'ingresso non invertente se ti interessa l'offset in uscita.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.