Problema di stabilità in opAmp a guadagno unitario


12

Come parte di un alimentatore controllato per i test hardware in-loop per un progetto guidato dagli studenti, ho dovuto sviluppare un buffer di corrente (follower di tensione) in grado di generare fino a 1 A.

Ho avuto la (cattiva) idea di provare a implementare questo semplice circuito:

Idea del circuito iniziale

Il PMOS all'interno del circuito di retroazione funge da inverter (più V_gate, meno V_out) ed è per questo che il loop si chiude nel terminale POSITIVO di opAmp anziché in negativo.

In laboratorio ho impostato VREF = 5V e VIN = 7V. Dovrei quindi ottenere 5 V su VOUT, ma ottengo questa uscita fuori controllo VOUT:

Vout

E questo è il segnale di controllo (uscita di opAmp, collegato al gate del MOSFET)

Vg

Trovo comportamenti simili in diversi VREF, VIN e Rloads. Si noti inoltre che l'output di opAmp non è saturo di nessuna delle guide.

La mia ipotesi è che il guadagno del loop sia troppo elevato per mantenere opAmp in stabilità.

Ho un po 'di esperienza in sistemi di controllo e opamp, ma non so come applicarlo per risolvere questa situazione ...

È possibile applicare una rete di spostamento di fase per stabilizzare il circuito?

Gradirei sia "attacchi rapidi" che risposte educative!


1
Quando ero nella fase di breadboard ho raggiunto la stabilità usando un RC parallelo tra l'uscita di opAmp e il gate del mosfet :! [ I.stack.imgur.com/5OJ0W.png] Ha risolto il problema completamente nella breadboard (alla cieca, ho appena visto un circuito di compensazione simile in una nota di applicazione e ha funzionato). Ma ora che mi sono trasferito su PCB, il risultato è piuttosto negativo :!
svilches

2
Vedi la mia risposta, spiega dove hai sbagliato - Le persone buone di tutte le grandi aziende di amplificatori operazionali progettano amplificatori operazionali ragionevolmente stabili con tutti i tipi di regimi di feedback. Ora, hai aggiunto uno stadio di guadagno di tensione di 100s e ti aspetti che l'amplificatore operazionale rimanga stabile quando prendi il punto di feedback dallo scarico e ti aspetti che funzioni senza oscillazione!
Andy aka

Grazie per tutte le informazioni! Ho provato diversi metodi di stabilizzazione che hai proposto senza troppi miglioramenti. Sembra che il MOSFET aggiunga troppo guadagno al loop, rendendo piuttosto difficile la stabilizzazione. Ho provato il circuito da @Andy aka (follower della fonte) ed è completamente stabile nella breadboard. Lo proverò domani su PCB. L'unico inconveniente della configurazione del follower della sorgente è che, per la mia applicazione (6 V, 0,5 A in uscita), ho bisogno di una guida da 12 V (che aumenta la dissipazione del MOSFET)
svilches

Risposte:


11

Questo è davvero semplice: usa un FET del canale N e utilizzalo come follower della sorgente. Puoi persino usare un BJT. Quello sotto ha guadagno grazie al feedback 3k3 e 1k a terra da -Vin. Se non si desidera ottenere il guadagno, collegare l'output direttamente a -Vin e omettere 1k.

inserisci qui la descrizione dell'immagine

Un buffer di guadagno unitario sull'uscita di un amplificatore operazionale è un seguace di emettitore o un seguace di sorgente. Semplice come quello: feedback dall'emettitore / sorgente indietro all'inversione dell'ingresso dell'amplificatore operazionale.

Inoltre, poiché la tensione sorgente / emettitore "segue" il segnale di uscita degli amplificatori operazionali, gli effetti di caricamento gate / base sono minimi, quindi quando si utilizza un MOSFET non è necessario preoccuparsi della capacità del gate.

Pensaci in modo sensato - Analog Devices o TI o MAXIM of LT - il loro team di marketing non si sveglierà una mattina e dirà ai loro progettisti - perché non puoi progettare un amplificatore operazionale che permetta a qualcuno di aggiungere una fase di guadagno su e aspettiamo che sia stabile. Se lo facessero, i progettisti direbbero che dovrebbero ridurre le prestazioni dell'amplificatore operazionale perché sia ​​stabile - proprio come sarebbe quell'amplificatore operazionale competere sul mercato con tutti gli amplificatori operazionali che percorrono la strada ragionevole e continua a costruire ciò in cui sono bravi.


Andy, il circuito che hai pubblicato è abbastanza equivalente al mio ... quindi suppongo che, se usato con un MOSFET, avrà gli stessi problemi, sbaglio?
svilches

2
Non è certamente equivalente - OK il mio circuito usa un BJT ma se invece usasse un FET, sarebbe di tipo N con il drain a + 15V e la sorgente per la resistenza di carico. Il feedback è anche l'input invertito sul mio. Questo circuito FUNZIONA per i motivi della mia risposta. Certo, a prima vista sembra simile ma esaminalo di nuovo e ascolta quello che ho detto per favore.
Andy aka

@Andyaka Il circuito originale ha un piccolo vantaggio, e cioè che per produrre la tensione VREF su R14, l'amplificatore operazionale non deve effettivamente disinserire quella tensione. Deve solo accendere sufficientemente il PMOSFET in modo tale che la tensione venga prodotta su R14. Ma con il tuo emettitore / seguace della sorgente, l'amplificatore operazionale deve sostanzialmente produrre la tensione di uscita.
Kaz,

@Andyaka Ma, naturalmente, poiché il circuito è un guadagno unitario, il vantaggio non è eccezionale perché l'ingresso - è indirizzato a VREF. Ma supponiamo che sia cambiato, quindi c'è guadagno. Quindi possiamo ottenere una tensione di uscita vicina a una guida, senza guidare l'ingresso dell'amplificatore operazionale vicino a una guida o la sua uscita. Solo un pensiero. L'utilizzo di un PMOS o PNP per controllare il lato superiore di un carico non è una cattiva idea.
Kaz,

@Andy aka Ora vedo il tuo punto, scusa! Con il follower della sorgente non c'è aumento del guadagno nel loop. Inoltre, Cgs non ha importanza perché Vgs è piccolo. Avrei dovuto scegliere questa configurazione all'inizio, riparare il PCB per cambiarlo sarà abbastanza orribile
svilches

11

L'amplificatore operazionale oscilla perché il guadagno ad anello aperto è maggiore di 1 a una frequenza con uno sfasamento di 180 °.

L'amplificatore operazionale nel tuo circuito sta guidando un carico quasi interamente capacitivo: il gate del MOSFET.

Esistono molti modi possibili per correggerlo usando solo un resistore o un condensatore ben posizionato. Potrebbe essere meglio usare un resistore serie o uno shunt RC parallelo o una coppia RC di feedback: tutto dipende dal particolare circuito in questione.

inserisci qui la descrizione dell'immagine

Per ulteriori informazioni, consultare questo eccellente articolo di Analog Devices .


In effetti questa è la risposta giusta. E una discussione più approfondita [qui] su electronics.stackexchange.com/questions/146531/…
Fizz

Oh, mucca, sta fornendo un feedback positivo all'opamp. Ovviamente oscillerà qualunque cosa accada. Andy ha ragione. Questo è in realtà un errore da principiante e tutti [gli altri] stavano trattando il problema [molto più] difficile.
Fizz,

Vorresti aggiornare il link "Analog Devices" o fornire una descrizione più dettagliata. Potremmo consultare l'articolo su Google, per favore?
Mehrad,

8

NOTA: questo post è stato ampiamente modificato per aggiungere profondità e chiarezza. Durante la composizione della risposta originale, sono stati considerati molti dettagli che non sono stati inclusi per rendere le cose brevi. Qui la pelle viene strappata dal processo diagnostico e di soluzione per mostrare cosa succede sotto la superficie e aggiungere sostanza. Pensalo come una sorta di diario di analisi. Lascio intatta la risposta originale per modifiche trasparenti, aggiungendo dettagli dentro e dopo il vecchio testo.

Ciss


Commento editoriale sulla diagnostica:

Da dove viene questo polo a 20 kHz?

CgsR14Rg

Fp12πR14CgdgfsRg12π(1000)(150pF)(5)(10) ~ 21.2kHz (abbastanza vicino)

CgdgfsR14). Fai una breve somma dello sfasamento del loop per vedere che, nel migliore dei casi, ti aspetteresti 45 gradi di margine di fase lasciato a 20kHz (LM358 -90, IRF9530 -180 -45 = -315 gradi). Già, a 20kHz, il margine di fase è nella migliore delle ipotesi il minimo che vorresti vedere nel tuo loop, essendo 45 gradi ed è probabilmente inferiore. OK, finora questo è un SWAG totale. È scientifico da quando ho usato un calcolatore scientifico per moltiplicare e dividere, ed è un'ipotesi selvaggia poiché non ho ancora guardato il foglio dati per IRF9530 e non ho aggiornato la mia memoria dell'LM358 Zo. Fornisce un rapido indicatore della probabile fonte di problemi per il circuito degli OP.

Alla ricerca delle idee più semplici per migliorare la situazione:

Innanzitutto ho cercato di fornire una soluzione semplice per il circuito originale, risultando nelle due frasi puntate di seguito. Questi sono entrambi approcci di cerotto che non possono essere presi abbastanza lontano da fare una differenza significativa. La lezione qui (che dovrei già sapere) non fornisce mai soluzioni di cerotto, poiché non ne valgono la pena. Esistono ovviamente modi per correggere l'approccio originale, ma sono più fondamentali e complicati.

Vth avvertimento. Mostrerò perché questo è vero nel prossimo commento editoriale dopo lo schema del follower della fonte.

Un paio di note sul circuito che ho suggerito:

  • R1 in serie con il cancello è solo una comodità. È molto comune in circuiti come questo la necessità di isolare il gate per la risoluzione dei problemi o i test. Il richiamo di una resistenza è un'operazione di 5 secondi. Sollevare il piombo di un TO-220 è molto meno conveniente, fallo più di un paio di volte e potresti persino sollevare un pad. Se si utilizza una parte per montaggio superficiale, senza il resistore sarà necessario rimuovere il FET.

  • Mostro una resistenza da 1kOhm per R15. In realtà, considerando l'impedenza di uscita dell'LM358, non userei nulla di meno di 10kOhm ... e potrei addirittura arrivare a 50kOhm.


Puoi provare:

  • Riduzione dell'impedenza di uscita dell'amplificatore (molto) aggiungendo un buffer di follower dell'emettitore all'uscita dell'amplificatore.
  • Ciss

Poiché l'ingresso + dell'amplificatore viene utilizzato come punto di feedback negativo, hai cose complicate. Normalmente si desidera utilizzare OpAmp come integratore con un condensatore di feedback dall'uscita OpAmp all'input. In questo modo è possibile controllare il punto di crossover dell'amplificatore in modo che la perdita di fase causata dalla capacità FET possa essere irrilevante o compensata.

Potresti iniziare con qualcosa del genere:

inserisci qui la descrizione dell'immagine

Scegliere un valore per C10 che induca il guadagno dell'amplificatore a incrociare il guadagno zero a 1kHz o meno per la stabilità. Usando un FET non sarai in grado di ottenere più di circa 3 V con qualsiasi carico in uscita. Nel qual caso dovresti guardare usando un BJT o Vin superiore.


Commento editoriale sulla soluzione follower di origine:

Ecco come ho pensato a una soluzione di progettazione di base.

Cosa sappiamo di ciò che svilches sta cercando di fare con il suo circuito? Bene, vuole usare 7 V per fornire fino a 5 V con un carico fino a 1 A, e vuole che la tensione di uscita tenga traccia di una tensione di controllo (che chiama una tensione di riferimento). Fondamentalmente, vuole un alimentatore regolabile lineare che utilizza un opamp LM358 per la compensazione degli errori di loop e ci sono solo 2 volt di spazio di testa (che sarà un problema per l'LM358).

Non sappiamo quale tipo di modulazione controllerà il riferimento. Sarà una rampa, un seno o forse un impulso o una modulazione a gradino? Il passo è il peggiore, anche se se lo pianifichi non è un grosso problema, quindi immagina che l'input di riferimento si muova in passi.

Co ) nel circuito ... ma lo tratteremo in seguito.

Due modi di base per andare:

O compensare la stabilità del circuito di sorgente comune o passare a un circuito di follower di sorgente. La prima opzione ha molti meriti, ma è più complicata e stavo cercando la soluzione più veloce e meno complicata. Seconda opzione, il follower di origine è un design più semplice perché è vincolato. Per vincolo intendo il passaggio da un elemento di passaggio che respinge la corrente e ha un guadagno di tensione a uno che respinge la corrente e ha (salvo circostanze speciali definite da elementi parassiti) un guadagno di tensione unitaria. Il vantaggio del circuito sorgente comune è che si tratta di una soluzione a bassa caduta, che si perde con un amplificatore follower sorgente. Quindi, il semplice punto di partenza è il follower della fonte.

Problemi con l'utilizzo di una fase di alimentazione follower sorgente qui:

  • VthVdsgfsCgd sarà alto.
  • VgsβVcedi 2 V. Lo stadio di potenza del canale P sembra sempre migliore, ma continueremo con il follower della sorgente. Nota a margine sull'LM358: a National Semiconductor è piaciuto abbastanza questo amplificatore da inserirlo in almeno 3 linee di prodotto LM124 (un quad) LM158 (un doppio) e LM611 (un singolo con riferimento). I fogli dati per LM124 e LM158 non sono troppo chiari sulle prestazioni in prossimità del crossover, ma il foglio dati LM611 è ottimo ... vedi in particolare le figure 29, 30, 35 e 36. Oh, e mentre sei nel foglio dati LM611, hai un guarda quei circuiti di esempio che hanno i tappi dell'integratore attorno all'OpAmp.

Vth

VdsgfsCgdCgsCgd

Cgd

Quando il guadagno scende alla fase di 20 dB / decennio è di 90 gradi se il polo semplice più vicino si trova a un decennio di distanza. Un polo semplice provoca uno sfasamento di 90 gradi nell'arco di 2 decenni centrato con uno spostamento di 45 gradi sul polo.

Cgdè di 150pF, che spinge indietro la frequenza dei poli effettiva di circa 1,5 ottave (1,6 ottave in realtà, ma perché cavillare oltre 0,1 ottave). 1,5 ottave vale circa 20 gradi di sfasamento, quindi ora l'amplificatore ha solo 25 gradi di margine di fase. Se 45 gradi di margine di fase si traducono in un superamento di 1,3, quanto ci si aspetterebbe con un margine di fase di 25 gradi?

Ecco un diagramma del superamento del gradino rispetto al margine di fase ad anello aperto per un amplificatore di feedback unità con guadagno unitario.

inserisci qui la descrizione dell'immagine

Individua 25 gradi di margine di fase nella trama e osserva che corrisponde a un superamento di circa 2.3. Per questo circuito di follower della sorgente che utilizza un IRF520, ci si aspetterebbe che un input di passo di 100mV alla tensione di riferimento provochi un superamento di 230mV in aggiunta alla sua risposta di 100mV. Tale superamento si trasformerebbe in uno squillo a circa 500 kHz per un periodo prolungato. Un impulso di corrente sull'uscita avrebbe un effetto simile a un grande overshoot seguito da uno squillo a circa 500kHz. Questa sarebbe una prestazione inaccettabilmente scadente per la maggior parte delle persone.

Come si può ridurre tutto quel suono? Aumenta il margine di fase. Il modo più semplice per aumentare il margine di fase è aggiungere un cappuccio integratore attorno all'amplificatore all'interno del circuito di feedback dell'unità. Il margine di fase superiore a 60 gradi eliminerebbe lo squillo, e puoi ottenerlo riducendo il guadagno di Opamp di circa 6 dB.

Uno scenario probabile

VdsCgs. Il carico capacitivo all'uscita Opamp inizierà ad aumentare da 150pF, spostandosi verso 500pF. Il suono della capacità aggiunta alla sorgente peggiorerà. Non piacerà nemmeno all'utente e proverà ancora più capacità a caricare la sorgente. Quando la capacità della sorgente ha raggiunto 1 uF, il circuito molto probabilmente non squillerà più ... oscillerà.

Poiché mi aspetto che la capacità venga aggiunta all'uscita del circuito, dimensionerei il cappuccio dell'integratore per ridurre il guadagno del loop di circa 20 dB.


-1 per suggerire che il problema ha ancora a che fare con la capacità del gate. Leggi la mia risposta Il circuito che proponi è quello che suggerisco, ma poiché è un seguace della sorgente la sorgente segue il gate e quindi la capacità del gate non è più un problema. Poiché un follower della sorgente è guadagno unitario e aggiunge pochissimo sfasamento, funziona quindi l'aggiunta del cappuccio di integrazione e R1 è inutile. Inoltre, oscilla più vicino a 60kHz.
Andy aka

1
@Andyaka, non ero contento della mia risposta, avendo lasciato fuori i dettagli che hanno portato al mio circuito di punto di partenza suggerito. Quindi, ho apportato modifiche, aggiungendo dettagli per chiarire le cose. È stata colpa mia se non hai potuto seguire ciò che stavo cercando di trasmettere. Sembra che tu abbia 4 punti o preoccupazioni che sono: 1) Il mio circuito del punto di partenza è uguale a quello che suggerisci. 2) Le parti aggiuntive nel mio circuito (vale a dire il cappuccio dell'integratore) sono inutili. 3) FET Ciss non è un problema poiché l'elemento pass è un follower sorgente. 4) Il circuito sorgente comune degli OP oscillava a ~ 60kHz.
gsills,

2
Continua: una breve risposta, i punti 1) e 2) sono contraddittori, è lo stesso circuito o è un circuito simile ma diverso dal momento che ha roba extra (cappuccio integratore) in esso. Direi che è un circuito diverso con cose extra che è cruciale per una buona prestazione. Ovviamente, ciò dipende dal punto 3) che è sbagliato, che è (vedi modifiche). Circa il punto 4), OK, esattamente ... un polo a 20kHz dovrebbe influenzare la stabilità a ~ 60kHz dato il tasso di perdita di fase.
gsills,

@gsills Ho creato un circuito simile (follower sorgente) che ha un PM molto basso, squilla senza interruzione. Ho fatto un risarcimento come il tuo, suggerito altrove. Posso chiederti se è corretto dire che il crossover è ridotto a 1 / (2pi * C10 * (R15 + R14))? Se ho capito bene e lo xover è giusto, l'idea è di avere il BW più basso della frequenza di oscillazione. Inoltre, suppongo che xover sia il BW. Dovrei quindi analizzare i superamenti e i tempi di salita per vedere l'effettivo BW raggiunto.
thexeno,

3

Supponendo che il problema sia il carico capacitivo (gate del MOSFET) alcune idee sono:

  1. Negli amplificatori audio, l'approccio classico per difendersi dai carichi capacitivi è l'inclusione di un induttore di uscita, spesso in serie con un resistore. Solo un'idea da tenere a mente: non dimenticare gli induttori come un modo per isolare dalle capacità.

  2. Hai mai notato come le schede tecniche dei regolatori di tensione lineari raccomandano sempre un condensatore di bypass sull'uscita? Questo aiuta con un carico capacitivo. Sebbene sembri un paradosso, il ragionamento è che il condensatore deliberatamente impiantato ha una capacità superiore che inonda la piccola capacità del carico, creando così un polo dominante a una frequenza inferiore. Prova un condensatore dall'uscita dell'op-amp a terra, da 0,1 uF a 1 uF.

  3. Dato che stai usando l'ingresso + per feedback negativo, c'è una grande opportunità in questo circuito di aggiungere la compensazione di Miller sotto forma di un circuito di feedback negativo più locale: un condensatore collegato dall'uscita dell'amplificatore operazionale all'ingresso -, invece di terra.

  4. Il tuo stadio di uscita è di origine comune e quindi ha un guadagno! L'amplificatore operazionale ha già dei guadagni ad anello aperto e ne stai aggiungendo altri nel loop. Prendi in considerazione uno stadio di uscita che non aggiunge più guadagno: vedi la risposta di Andy Aka.


2

Nota: il paragrafo seguente è in qualche modo errato, nel senso che la tua idea potrebbe (e funziona) con alcune modifiche e in molti prodotti, in particolare gli LDO PMOS; vedere il materiale successivo. Lascio qui questo paragrafo perché LvW gli ha risposto.

Bene, il carico capacitivo è un problema difficile da affrontare anche in un circuito correttamente impostato, ma nel tuo circuito [come disegnato] stai fornendo un feedback positivo all'opamp! Questo oscillerà come un matto anche in simulazione ... con lo stesso 5Vpp previsto. Sì, la forma di oscillazione è leggermente diversa nella simulazione, ma cosa ti aspetti ... nessun parassita e LM358 ha un modello SPICE piuttosto semplice.

inserisci qui la descrizione dell'immagine


@LvW: ho bisogno di pensare un po 'di più a quello che succede esattamente, ma vedo anche il grafico aggiornato con Vgate tracciato. Chiaramente non raggiunge mai i 5 V, quindi l'opamp non vede mai un feedback negativo reale come presumibilmente fa questo progetto. Quindi l'opamp funziona sostanzialmente come un comparatore. C'è anche uno spostamento di fase tra questi due segnali, ma non sono convinto che sia la causa dell'oscillazione, piuttosto penso che sia "in base alla progettazione". Ho provato ad aggiungere un grande resistore (1K, anche 10K) sul gate, e oscilla ancora lo stesso.

inserisci qui la descrizione dell'immagine


Fondamentalmente quello che stai cercando di fare è progettare un LDO PMOS ! Ma lo stai facendo abbastanza male. È necessario compensarlo con un cappuccio di bypass della dimensione destra e ESR! Inoltre, un LDO PMOS prenderebbe il feedback attraverso un divisore di tensione. Ecco il mio disegno amatoriale LDO:

inserisci qui la descrizione dell'immagine

Come al solito con gli LDO PMOS, il limite di uscita ESR è fondamentale e deve trovarsi in una determinata banda. Guarda cosa succede se lo abbasso, per esempio; inizia a oscillare:

inserisci qui la descrizione dell'immagine

Se ESR è troppo alto, sei di nuovo nei guai; bene per questo carico deve alzarsi piuttosto in alto prima di oscillare dall'altra parte della banda sicura:

inserisci qui la descrizione dell'immagine

In realtà, l'unico elemento critico lì dentro è quel limite di compensazione. Un 10uF con 0,1ohm ESR sembra funzionare per un intervallo di carico abbastanza ampio da 1K fino a 5 ohm (che ti darebbe l'uscita 1A che desideri):

inserisci qui la descrizione dell'immagine

Ovviamente otterresti un limite alla larghezza di banda da questo limite.


Riscontro positivo? Penso che il FET si comporti come uno stadio sorgente comune con caratteristiche di inversione, no?
LvW,

@LvW: vedi grafico aggiornato e paragrafo aggiunto.
Fizz,

@LvW: l'ho capito. Non è stata un'idea terribile, ma stava reinventando una certa ruota LDOS PMOS e non lo stava facendo molto bene.
Fizz,

1

Il tuo opamp non è stabile probabilmente perché stai guidando un carico capacitivo (capacità del gate). Rimuovi C10 e abbassa il valore di R15 a decine di ohm. Puoi anche provare a usare un opamp diverso. Il foglio dati di LM358 dice:

I carichi capacitivi che vengono applicati direttamente all'uscita dell'amplificatore riducono il margine di stabilità del loop. I valori di 50 pF possono essere adattati usando la connessione del guadagno unitario non inversa nel caso peggiore. Se l'amplificatore deve pilotare una maggiore capacità di carico, è necessario utilizzare ampi guadagni ad anello chiuso o isolamento resistivo.

La capacità di ingresso di IRF9530 è di 500pF, quindi è necessario inserire una piccola resistenza tra l'uscita di opamp e il gate del MOSFET.


Presumibilmente, con l'aumento della resistenza tra l'uscita dell'opamp e il mosfet, il sistema diventa più stabile, giusto? Ho provato con diversi valori di R15 (fino a 500K) senza un buon risultato ...
svilches

C'è un altro modo per stabilizzare il circuito? Forse sto posizionando il resistore nella parte sbagliata del loop ...
svilches
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.