BENCH POWER SUPPLY (II): IL MODULO DI CONTROLLO DELLA SAFE OPERATING AREA -SOA-

<<Articolo precedente

Prototipo di parte della scheda per la gestione della SOA
Prototipo di parte della scheda per la gestione della SOA

Come ho voluto ricordare più volte nel precedente articolo, non basta un LDO per realizzare un alimentatore da laboratorio. Nel mio progetto ho utilizzato un LM338K, ma i ragionamenti che seguiranno -fatte le dovute differenze- sono veri per la quasi totalità degli stabilizzatori di tensione monolitici (come la famiglia 78xx, LM317 e affini). La volta scorsa accennavo ad alcune problematiche circuitali che ci pone la SOA (Safe Operating Area), tutto parte da una semplice considerazione: in un qualsiasi circuito, la differenza di tensione fra ingresso e uscita, comporta dissipazione di energia. Nello specifico, se immaginiamo il nostro LM338 posto nella situazione in cui stia erogando 5A a 10V(out), il vero lavoro dell’integrato non sarà tanto erogare i nostri 5A*10V=50Watt quanto, invece, essendo alimentato con circa 36V(in), dissipare “l’eccesso di energia”, ossia  (Vin-Vout)*I = (36-10)*5 = 26*5 = 130Watt … cifra notevole che, infatti, farebbe bruciare il nostro LDO in pochi millisecondi.

La SOA, dunque, altro non è che l’area di lavoro definita dalla differenza di tensioni fra input ed output  (Vin-Vout) in cui l’integrato può funzionare in sicurezza stante l’erogazione della corrente massima per cui è progettato (nel nostro caso, 5 Ampere). Dopo questa piccola introduzione, il grafico qui di seguito (tratto dal datasheet dell’LM338K), sarà senz’altro più chiaro.

SOA

Nel grafico ho evidenziato due aree: in rosso l’area SOA con una Vin-Vout di 15V ed in verde con una Vin-Vout di 10V. L’area in rosso è più ampia come Vin-Vout, ma non potrebbe reggere picchi momentanei di erogazione superiori ai 6A mentre, l’area in verde, ha una zona di funzionamento più ridotta come Vin-Vout (10V), ma consente all’LM338 di sopportare transitori di corrente molto più alti e, in un alimentatore da laboratorio, quest’ultima è una caratteristica importante.

A questo punto, preso atto che per avere un buon alimentatore è necessario poter variare “automaticamente” la Vin sulla base della Vout, ci siamo ritrovati a piedi pari in un sistema retroazionato. Ancora prima di affrontare il lato pratico della questione, dobbiamo quindi valutare quale strada intraprendere negli automatismi di regolazione della Vin:

  1. Una regolazione continua, ossia lineare, che regoli la Vin in modo che sia possibile stabilire uno ed un solo valore per ciascun singolo valore della Vout.
  2. Una regolazione discontinua, ossia non lineare, che regoli la Vin in modo che sia possibile stabilire uno ed un solo valore per più valori della Vout.

La regolazione lineare, che di primo avviso potrebbe sembrare la migliore, presenta però fin da subito un problema di realizzazione (il circuito sarebbe piuttosto complesso) ma, soprattutto, renderebbe critici i tempi d’intervento del sistema. Questo problema è proprio di tutti i sistemi retroazionati tramite feedback che, se da un lato garantiscono robustezza, controllo dei disturbi non misurabili o imprevisti, ha per svantaggio che, essendo in anello chiuso, può introdurre instabilità nella risposta se tarato male. Si rischierebbe cioè di trovarsi fra le mani un circuito potenzialmente auto-oscillante o, comunque, soggetto ad isteresi e fenomeni di ringing/undershoot molto pericolosi per il nostro alimentatore (e quello che alimenteremo!).

La regolazione discontinua, invece, potrebbe riassumersi nel gestire la Vin “per fasce”, ossia giocando su solo 4 valori che coprano l’intero arco di alimentazione garantendo che Vin-Vout sia minore o uguale a 10V. Si potrebbe cioé variare la Vin fissandola preliminarmente a  quattro valori possibili 36, 26, 16 e 6V, i quali, rispettivamente, copriranno i valori di Vout da 36 a 26V, da 26 a 16V, da 16 a 6V e da 6 a 0V. Si tratta di una soluzione apparentemente meno efficace ma che, in realtà, applica “come da manuale” un meccanismo di controllo detto di feedforward. Avendo buona conoscenza dei limiti del nostro sistema, possiamo in sostanza utilizzare quello che viene anche definito “meccanismo predittivo” eliminando così i rischi d’instabilità che avrebbe invece potuto introdurre un feedback con regolazione lineare.

Dal punto di vista pratico, la soluzione più semplice per gestire correttamente la SOA del nostro modulo LDO tramite il sistema di cui sopra, è quella di disporre di un trasformatore di alimentazione con più avvolgimenti secondari ognuno dei quali possa fornirci la corretta Vin a seconda dei casi. Ricordando che le tensioni di cui abbiamo parlato poco fa sono sull’LDO e si parla quindi di Volt efficaci (…se ricordate l’LDO è dopo il ponte di diodi e capacità di spianamento), per calcolare le tensioni fornite dal trasformatore dobbiamo tenere a mente questa formula:

valore efficace

Quindi, restando ancora su un piano teorico, il nostro trasformatore ideale dovrebbe avere 4 secondari in grado di fornire rispettivamente una tensione di:

  1. Per i 36V(rms) = circa 25V(ac)
  2. Per i 26V(rms) = circa 18V(ac)
  3. Per i 16V(rms) = circa 11V(ac)
  4. Per i 6V(rms) = circa 4V(ac)

Tuttavia, chi ha un po’ di senso pratico, pur essendo in commercio tanti trasformatori multi-secondario, avrà già intuito che un simile trasformatore con esattamente questi valori di tensione per ogni secondario non esiste (o, se sì, avete avuto parecchio fortuna). E’ inoltre necessario considerare le cadute di tensione dovute al ponte di diodi ed alle resistenze dei secondari del trasformatore che, per l’usuale legge di ohm, generano una caduta di tensione direttamente proporzionale alla corrente erogata (se ci pensate, quest’ultimo fattore può giocare, almeno in parte, a nostro favore visto che riduce la Vin con l’aumentare della corrente!). In buona sostanza, dovrete fare i conti con i trasformatori che riuscirete a reperire ed adeguarvi al caso, per questo ho previsto una soluzione “modificabile” all’abbisogna e che ho diviso in due parti: switch e controllo.

SWITCH

Dei semplici relé andranno più che bene e, i loro tempi di commutazione non sono critici (la capacità di spianamento è in grado di sostenere l’LDO in quella frazione di secondo di momentanea mancanza di alimentazione). Ancorché il circuito sia assolutamente banale e debba essere adattato alla vostra situazione (io ho ipotizzato 4 secondari ma potreste trovarvi a gestirne di più), vi propongo questo schema:

Schema modulo switch
Schema modulo switch

I quattro transistor 2N2222 (o simili), pilotano i relé che eseguono lo switch di selezione dei secondari; i diodi 1N4001 eliminano le sovratensioni introdotte dall’induttore del relé, insomma: nulla d’insolito. Tuttavia, se come vedremo dopo, opterete per un circuito di controllo basato su microcontrollore, per evitare che a causa un qualsivoglia bug del vostro software o delay imprevisto, non possa mai verificarsi che siano attivi due relé contemporaneamente, vi suggerisco di pilotare i transistor con questo  decoder binario che, fra l’altro, vi farà risparmiare due GPIO della vostra MCU:

SWITCH
Decoder 2-bit

Se volete risparmiarvi qualche fatica, potete usare direttamente l’integrato 74LS155 ma come molti TTL, a meno di non volervi avventurare negli SMD, oggi non è sempre facilissimo reperirlo, per questo ho preferito usare delle porte logiche base.

CONTROLLO

Avete a disposizione diverse opzioni, personalmente ho preferito utilizzare alcuni gpio di un microcontrollore (di questo se ne occupa un Arduino Nano con ATMEGA328P); il microcontrollore legge da ADC la tensione Vout e controlla lo switch di conseguenza. Trovo che sia la soluzione più flessibile in assoluto (basta intervenire sul software per aggiustare le soglie d’intervento) ma, di contro, data la delicatezza dell’operazione, è fondamentale che la MCU non possa essere distolta da questo compito ad esempio da interrupt o abbia cicli d’intervento eccessivamente lunghi. Dato anche il costo attuale di un Arduino Nano, vi consiglio caldamente questa soluzione che, peraltro, può essere addirittura più economica che non ricorrere ad un approccio con controllo analogico. L’altra opzione è, appunto, un circuito di controllo in elettronica analogica, basato su quattro comparatori di tensione. Quest’ultimo approccio ha una risposta real-time slegata da qualsiasi limite software o di velocità dell’MCU, tuttavia, ha il difetto di richiedere una taratura manuale che può rivelarsi parecchio delicata (se fosse sbagliata rischiate di bruciare il trasformatore e/o il modulo LDO). Anche se poco flessibile, è indiscutibile che questo sistema sia superiore dal punto di vista dell’efficacia. Questi i pro ed i contro. Ad ogni modo, non avendo utilizzato la “via analogica”, non trovo corretto proporvi circuiti che non ho realizzato e testato personalmente e vi rimando quindi al blog di Kerry D. Wong (sempre molto interessante!) dov’é disponibile una buona base di partenza per realizzarlo -si tratta, tra l’altro, di un bel alimentatore sempre basato su LM338-.

Annunci

2 pensieri su “BENCH POWER SUPPLY (II): IL MODULO DI CONTROLLO DELLA SAFE OPERATING AREA -SOA-”

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...