Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

36
voti

Switch mode power supply: riparazione, analisi e modifica

Indice

Abstract

Quello che voglio proporre in queste righe si potrebbe chiamare un case study, la storia di una semplice riparazione che però mi ha portato a modificare lo schema originale dell'apparato allo scopo di migliorarne l'affidabilità. Non è che sia una cosa molto rara, spesso apparati commerciali sono migliorabili con un attento esame del loro funzionamento.

Non dettaglierò di che apparecchio si tratta, non voglio infrangere i legittimi diritti del produttore e comunque la cosa è del tutto irrilevante ai fini di quello che vi racconterò. Per noi è sufficiente dire che si tratta di un alimentatore switch mode fly-back integrato in un sistema che comprende sia logica, un microcontrollore, che varia analogica.

Fig1.Alimentatore flyback

Fig1.Alimentatore flyback

Stiamo parlando di un piccolo alimentatore non isolato con ingresso in alternata 50V nominali a 50-60 Hz, varie uscite tra cui un +5V per della logica ed un +24V per vari servizi ausiliari. La potenza non è nota con precisione, è quella sufficiente ad alimentare il resto della scheda, la stimerei intorno ai 40W.

A dire il vero non è la prima volta che mi capita di ripararne uno ed anche se la frequenza dei guasti nel senso di \frac{\text{guasti/anno}}{\text{apparati installati}} non è poi importante la cosa che mi fa pensare è che invariabilmente il guasto è lo stesso.

Dopo la breve storia sulla riparazione analizzerò il funzionamento del circuito di alimentazione del controller ed infine proporrò alcune semplici modifiche che dimiuiranno la potenza dissipata in questo stadio, quindi anche la temperatura delle parti interessate aumentando in ultima analisi l'affidabilità dell'apparecchio.

La riparazione

Lo schema di massima è riportato in Fig.2, vediamo D1/C1 raddrizzatore e filtro, R1/D2/C2 alimentazione per l'avvio, D3 per l'alimentazione a regime del controller, poi il controller vero e proprio un comunissimo e notissimo current mode, lo switch M1, l'induttanza di fly-back con i suoi avvolgimenti ausiliari per le uscite ed infine raddrizzatori e filtri. Lo schema ricalca l'application note del costruttore ed essendo volutamente omessi vari dettagli come la compensazione, gli snubber ed altri irrelevanti a questa trattazione mi sento tranquillamente di pubblicarlo senza infrangere nessun diritto.

Il guasto riportato è "non si accende", in effetti una volta connesso ed alimentato niente accade. Rapido controllo: una settantina di volt sono presenti su C1 mentre il controller PWM non è alimentato e infatti ho praticamente zero su C2. Disalimento e commuto il tester su "prova diodi": corto circuito netto ai capi di D2. Lo sapevo! sempre lo stesso Zener. Certo potrebbe anche essere qualcos'altro in parallelo ad essere in corto ma scollegato e ri-provato la diagnosi si conferma: Zener in corto.

Sostituisco il defunto e rialimento, l'apparato si accende prontamente ma un allegro fischiettio a tempo con vari LED che si accendono e spengono -instabilità sub-armonica legata anche al carico variabile- mi rivela che c'è un altro problema, inoltre lo Zener 27V-1W appena sostituito ha circa 30V ai suoi capi e naturalmente raggiunge la temperatura del piombo fuso palesando il motivo del guasto originale.

In effetti quello che dovrebbe essere il +5V stabilizzato si mostra sull'oscilloscopio come un percorso da montagne russe e anche se lo stoico uP funziona allegramente fregandosene dell'alimentazione ballerina gli stessi picchi si ripresentano opportunamente scalati anche sulla linea +24V stressando pesantemente Zener e controller.

Una rapida occhiata -era senz'altro meglio se l'avessi data prima- mostra i chiari rigonfiamenti della morte su C4 e C5.

Sostituiti anche i due condensatori e rialimentato pare tutto ok. Anche gli altri test sono regolari e sono propenso a chiudere tutto....Anzi no! Per varie ragioni, tolleranze della rete, lunghezza dei cavi ed altre varie ed eventuali è richiesto che questo alimentatore lavori correttamente con una tensione DC a valle del ponte che varia da 30 V a 80 V.

Allora mi armo di Variac ed inizio i test: sembra tutto regolare, si avvia e regola su tutto il range previsto ed inizio le prove di endurance cioè lasciarlo lavorare a carico ai due estremi della tensione di alimentazione.

La prova a bassa tensione non dà problemi, ma invece dopo averlo lasciato lavorare alla massima tensione per una mezz'ora mi ustiono il pollice nel tentativo di saggiare la temperatura di R1 ed anche lo Zener non è da meno.

Ora è noto che "mi ustiono il pollice" potrebbe tranquillamente essere una temperatura al di sotto (anche molto) di quella massima specificata però la cosa non mi soddisfa, alta temperatura, anche se entro i limiti del costruttore, significa certamente più alta probabilità di guasto.

Indubbiamente la sequenza di eventi che ha portato al guasto è stata: condensatori di filtro C4 e C5 "seccati", quindi loop di regolazione sballato, quindi tensione ausiliaria troppo alta, quindi morte dello Zener.

Ma a prescindere da questo guasto specifico non mi pare proprio che una elevata dissipazione sia una cosa ineluttabile, anzi normalmente questo tipo di alimentatori non ha bisogno di sprecare così tanta energia in calore in un circuito "ausiliario" e neanche di uno Zener per avviarsi.

Analisi dell'alimentatore del controller

Diventa allora -per me- indispensabile vederci più chiaro, scoprire quello cosa c'è dietro. Fig.3 riporta il dettaglio della parte in questione, per fare due conti è indispensabile stimare la corrente assorbita dall'integrato.

Un'occhiata al datasheet ci dice che quando il regolatore lavora normalmente il suo assorbimento Icc,o è di circa 11 mA tipici più ovviamente la corrente fornita al gate del MOS.

Per valutare la corrente media fornita al gate è necessario stimare la carica fornita ad ogni ciclo e moltiplicarla per la frequenza di commutazione.


I_\text{cc,G}=Q_\text{G}f_\text{S}\quad\quad\text{(1)}

Il grafico di Fig.4 riportato dal datasheet del IRFP360 mostra la carica totale di gate, vediamo che ovviamente dipende dalla VGS e -un po' meno ovviamente- pure dalla VDS a causa dell'effetto Miller sulla capacità tra gate e drain ed infine -anche se non mostrato nel grafico- anche dalla corrente di drain che cambierà un pochino la tensione del plateau di Miller.

Quella che faremo è appunto una stima: VDS varierà a seconda dell'alimentazione fornita, anche la VGS che sarà, a meno della caduta sul driver, vicina all'alimentazione del controllore che è variabile, ed infine anche la corrente di drain non è nota.

Comunque quello che ha il maggior effetto sulla carica è la VGS, ci serve un numero: a fronte di una alimentazione del controllore di 24 V direi di aspettarsi circa 22 V.

C'è da dire che questo valore supera la VGS,max specificata nel datasheet, certo non mi pare una buona pratica di progetto ma così è, in effetti non mi è noto un caso di guasto del MOS in questo apparecchio, evidentemente il valore è specificato abbastanza conservativamente.

Fig.4 Carica di gate IRFP360

Fig.4 Carica di gate IRFP360

Le altre variabili, VDS e ID non hanno una grande influenza, in breve, ancora riferendosi a Fig.4 direi che si potrebbe estrapolare un valore intorno a QG=240 nC @ VGS=22 V .

Sostituendo nella (1) e considerando che lo switcher lavora a circa fs=30 kHz otteniamo

I_\text{cc,G}=Q_\text{G}f_\text{s}=240\,\text{nC}\times 30\,\text{kHz}\approx 7\,\text{mA}

Tornando allo schema di Fig.4 ci troviamo a dover fare delle ipotesi sullo stato dei due diodi per poter calcolare le grandezze elettriche medie a regime.

Suppongo che il controller venga alimentato via D3 e quindi D3 in conduzione -trascurando anche la sua caduta- in queste condizioni si avrà Vcc=24 V e quindi lo Zener D2 sarà sotto soglia e quindi interdetto, possiamo allora studiare il circuito di Fig.5.

In queste ipotesi si ha:

I_\text{D3}=I_\text{cc,o}+I_\text{cc,G}-\frac{V_\text{DC}-V_\text{cc}}{R1}\quad\quad\text{(2)}

vediamo che sostituendo i valori estremi dell'alimentazione otteniamo

\left.I_\text{D3}\right|_{V_\text{DC}=30\,\text{V}}=18\,\text{mA}-\frac{30\,\text{V}-24\,\text{V}}{2\,\text{k}\Omega}\approx 15\,\text{mA}

cioè una corrente nel verso di conduzione in D3 nel caso del valore minimo di alimentazione, ma invece

\left.I_\text{D3}\right|_{V_\text{DC}=80\,\text{V}}=18\,\text{mA}-\frac{80\,\text{V}-24\,\text{V}}{2\,\text{k}\Omega}\approx -10\,\text{mA}

una corrente inversa con l'alimentazione al suo massimo valore. Questo significa che l'ipotesi prima fatta di conduzione per D3 è in questo caso errata. Il regolatore verrà alimentato con circa 27 V dal gruppo R1/D2 e lo Zener sarà in breakdown.

Per calcolare a quale tensione di alimentazione D3 si interdice è sufficiente uguagliare a zero la (2) prima trovata.

V_\text{DC,th}=V_\text{cc}+R_1\left(I_\text{cc}+I_\text{cc,G}\right)=24\,\text{V}+2\,\text{k}\Omega\times18\,\text{mA}=60\,\text{V}

Da questo valore in poi lo schema cui fare riferimento è quello di Fig.6, un classico stabilizzatore a Zener. Calcoliamo ora la corrente di Zener e la potenza dissipata, si ha semplicemente:

\begin{align}
P_\text{Z}=V_\text{Z}I_\text{Z}&=V_\text{Z}\left(\frac{V_\text{DC}-V_\text{Z}}{R_1}-I_\text{cc,o}-I_\text{cc,G}\right)= \\
&=27\,\text{V}\times\left(\frac{80\,\text{V}-27\,\text{V}}{2\,\text{k}\Omega}-18\,\text{mA}\right)\approx230\,\text{mW}
\end{align}

Per la resistenza invece possiamo scrivere


P_\text{R1}=\frac{\left(V_\text{DC}-V_\text{Z}\right)^2}{R_1}=\frac{\left(80\,\text{V}-27\,\text{V}\right)^2}{2\,\text{k}\Omega}\approx 1\text{,}4\,\text{W}

Ora strettamente parlando variando la tensione di alimentazione del regolatore varierà anche la tensione di gate e di conseguenza la corrente media assorbita dal gate, così come anche la tensione di Zener sarà funzione della corrente che lo attraversa. Ma stiamo facendo una serie di conti spannometrici e faremo allegramente finta di nulla.

Valutiamo infine le temperature, per lo Zener stimando la resistenza termica giunzione-ambiente intorno a 150 K/W per il case DO-41, si arriva ad un salto termico di circa

\Delta T_\text{Z}=\Theta_\text{j-a}P_\text{Z}=150\,\text{K/W} \times 230\,\text{mW}\approx 35\,\text{K}

come dire intorna ai 60 °C con 25 °C ambiente alla giunzione, il case un po' più freddo.

Per la resistenza invece, direi che si tratta di una 2 W nominali, stimerei circa 30 K/W e quindi


\Delta T_\text{R1}=\Theta_\text{r-a}P_\text{R}=30\,\text{K/W}\times 1\text{,}4\,\text{W}\approx42\,\text{K}

che con i soliti 25 °C ambiente arrivano quasi a 70 °C.

Ora non saprei quantificare la temperatura "misurata" dal mio pollice ma anche se effettivamente 230 mW su 1000 mW nominali sembrano un ragionevole margine di sicurezza invece 1,4 W su 2 W mi paiono un po' risicati. C'è anche da notare che i due componenti -Zener e resistenza- sono montati fisicamente molto vicini tra loro, paralleli a circa 5 mm di distanza, e non escluderei fenomeni di conduzione/trasmissione termica.

Comunque restano i fatti:

i) al tatto la senzazione è di "molto caldo" e questo non mi piace.

ii) le stime prima fatte sono appunto stime, quindi soggette a variazioni anche importanti.

iii) la temperatura ambiente di 25 °C è una pia illusione.

iv) all in all non c'è veramente nessuna ragione per dissipare inutilmente tutta quella potenza in quel circuito e si può tranquillamente modificare il tutto senza andare a peggiorarne nessun aspetto del funzionamento.

Modifica alimentazione controller

Quindi andiamo a modificare il circuito: l'idea, che è tutto meno che originale dato che praticamente qualsiasi alimentatore la adotta da decenni, è di caricare il condensatore C2 con una "piccola" corrente, il controller si trova in stand-by, superata una soglia di tensione di alimentazione il controller si attiva alimentandosi con la carica immagazzinata nel condensatore, un'uscita dello stesso alimentatore è infine usata per alimentare il controller prima che la tensione sul condensatore diventi insufficiente.

Fortunatamente la gran parte di questa logica è già integrata nel controller, questo infatti si trova in uno stato di stand-by con basso assorbimento (Iq) dall'alimentazione finché non viene superata la soglia Vstart. La disattivazione avviene poi se la tensione di alimentazione scende sotto il valore Vstop<Vstart, da notare che è proprio questa isteresi a permettere il corretto funzionamento.

Naturalmente ci sono un paio di aspetti da tenere in considerazione, la resistenza R1 deve essere "grande" per dissiapare poca potenza ma comunque in grado di portare l'alimentazione al di sopra della soglia di attivazione. La carica immagazzinata in C2 deve poi essere sufficiente ad alimentare il controller fino a quando si innesca il processo rigenerativo di auto-alimentazione.

Noterei anche che, a parte la mancanza dello Zener D2, lo schema è identico a quello originale: quello che cambieranno saranno i valori dei componenti, specialmente R1, e quindi il funzionamento generale.

Con riferimento allo schema di Fig.7 ed al diagramma di Fig.8 andiamo ad analizzare le varie fasi. Trovo inutile e complesso fare i conti esatti nel dominio del tempo, quello che faremo invece è quello che si fa di solito: per le grandezze che variano alla frequenza di switching considereremo la loro media temporale su di un periodo come funzione continua di t.

Qui invece noterei che per esigenze grafiche la scala del tempo non è omogenea, mentre la fase I si svolge nell'ordine delle centinaia di ms le successive saranno molto più rapide, centinaia di us. Per lo stesso motivo anche VGS è ovviamente rappresentata approssimativamente


Fase I

Alimentiamo il circuito, C2 inizierà a caricarsi, il controller assorbe una corrente di stand-by Iq, dato che ci è sufficiente una maggiorazione di questa corrente per essere sicuri di superare la soglia anche nel worst case lasciamo perdere la probabile dipendenza di questa corrente dall'alimentazione effettiva e la modelliamo come costante al suo valore massimo riportato sul data-sheet.

Fig.9 riporta il circuito semplificato, facendo l'equivalente di Thevenin della parte sinistra ci accorgiamo che la costante di tempo del processo di carica sarà semplicemente τ = R1C2 mentre il valore asintotico cui tende sarà v_\text{CC}(t\rightarrow\infty)=V_\text{Th}=V_\text{DC}-R_1I_\text{q}. Per assicurarsi di superare la soglia di start in ogni condizione dovrà essere

V_\text{DC,min}-R_1I_\text{q,max}\ge V_\text{start,max}

e quindi


R_1 \le \frac{ V_\text{DC,min} - V_\text{start,max}} {I_\text{q,max}}\quad\quad\text{(3)}


Naturalmente cercheremo di soddisfare questa disequazione con ampio margine, per evitare di avere la soglia troppo vicina al valore asintotico, ritardando troppo o rendendo poco affidabile l'avvio dell'alimentatore.

A tale proposito eguagliando la tensione su C2 alla soglia ci possiamo ricavare il tempo tstart , il ritardo di avvio dell'alimentatore, e si ottiene

t_\text{start}=\tau\ln\frac{V_\text{DC}-R_1I_\text{q,max}}{V_\text{DC}-R_1I_\text{q,max}-V_\text{start}}\quad\quad\text{(4)}

Normalmente un ritardo -ragionevole- all'avvio non è un problema, come vedremo C2 deve essere dimensionato con altre considerazioni, quindi useremo questa relazione solo per verificare il ritardo ottenuto. In questo intervallo il gate non è pilotato e tutto tace sul quel fronte.

Fase II

Il controller si attiva ed inizia ad assorbire la sua corrente di funzionamento più quella fornita al gate, faremo l'ipotesi -conservativa- che da ora in poi il controller sia alimentato soltanto da C2 considerando trascurabile la corrente comunque ancora fornita da R1. Possiamo allora considerare il semplice circuito equivalente di Fig.10, inoltre, ancora nell'idea di fare dei conti worst case considereremo la corrente assorbita costante al suo valore massimo Icc(Vstart) mentre in realta al calare di Vcc diminuirebbe leggermente.

Abbiamo bisogno della corrente assorbita, per la componente propria del controller Icc,o ci è sufficiente il datasheet mentre per la corrente fornita al gate Icc,G ci torna comoda la (1), abbiamo quindi necessità del valore di VGS per trovare la carica di gate QG.

In questo istante la tensione di alimentazione del controller vale Vstart e considerando un paio di volt di caduta sul driver ed andando a leggere il solito grafico di Fig.3 otteniamo QG(Vstart). Siamo quindi in grado di valutare la corrente assorbita come


I_\text{cc}(V_\text{start})=I_\text{cc,o}(V_\text{start})+f_\text{s}Q_\text{G}(V_\text{start})\quad\quad\text{(5)}

e nelle ipotesi di corrente costante prima fatte la tensione di alimentazione vale

v_\text{cc}(t)=V_\text{start}-\frac{I_\text{cc}(V_\text{start})}{C_2}\left(t-t_\text{start}\right)

Questa rampa in discesa, se non intervenisse l'auto alimentazione via D3, potrebbe durare al massimo fino a quando vcc(t) scende al di sotto della soglia di stand by del controllore Vstop, in altre parole il change over deve avvenire ad un tempo tco in cui v_\text{cc}(t_\text{co})\ge V_\text{stop} come dire

V_\text{start}-\frac{I_\text{cc}(V_\text{start})}{C_2}\left(t_\text{co}-t_\text{start}\right)\ge V_\text{stop}

e quindi ricavando la condizione per C2 otteniamo



C_2\ge I_\text{cc}(V_\text{start})\frac{t_\text{co}-t_\text{start}}{V_\text{start}-V_\text{stop}}\quad\quad\text{(6)}


In effetti dovremmo anche accertarci che al calare di vcc neanche la VGS fornita al MOS scenda al di sotto di un valore sufficiente al corretto funzionamento. Qusto valore non è la tensione di soglia -a cui iniza a condurre- ma la tensione del plateau di Miller che è quella necessaria a far scorrere la ID richiesta. Il rispetto di questa condizione dipende tuttavia dalla scelta della coppia controller/MOS con le loro Vstop e VMiller e quindi la assumeremo per già verificata dal progettista.

D'altra parte il tempo tco è quello in cui la tensione all'uscita V2 supera la tensione residua su C2. Abbiamo appena visto che anche quest'ultima dipende dal tempo ma invece "faremo finta di niente", ancora nell'ottica di semplificarci la vita faremo l'assunzione che da questo punto di vista vcc sia costante al suo valore iniziale Vstart. Anche questa è una maggiorazione che ci darà condizioni più restrittive e quindi ci tiene on the safe side.


Resta da valutare la salita di V2 ma la cosa è tutt'altro che semplice. Ci sono vari aspetti da tener di conto, il regolatore si è attivato, certamente con uscite a zero il set point di duty cycle salirà per come gli è permesso dalla componente integrale e proporzionale impostata per poi saturare al suo massimo. Ma entrerà anche in funzione il limite sulla corrente di source di M1 ed il duty cycle sarà limitato per rispettare questa condizione. Quando poi le uscite dell'alimentatore inizieranno a salire i circuiti a valle inizieranno ad assorbire una certa corrente (ignota) a da un certo momento in poi c'è da mettere in conto l'azione dinamica del loop di regolazione.

Ci sono veramente troppe variabili incognite e comportamenti non lineari, scioglieremo questo nodo gordiano alla maniera di Alessandro Magno...

i) Il controller comanderà lo switch M1 per fornire la massima potenza permessa immediatamente a tstart.

ii) La tensione di change over (circa 8V) è piuttosto minore del valore a regime di V2 (circa 24V) e a causa della cross regulation anche tutte le altre uscite saranno circa nello stesso rapporto con i loro valori finali.

iii) visto il punto (ii) il controller continuerà a fornire la massima potenza permessa almeno fino al tempo tco.

iv) I carichi saranno tipicamente non lineari, potremmo aspettarci che molto sottoalimentati assorbano meno di quanto linearmente interpolabile. E.g. della logica CMOS sarà probabilmente sotto-soglia e comunque il supply surveillance asserirà la linea di reset azzerando la corrente dinamica dei gate.

v) Visto il punto (iv) diciamo che -per ora- praticamente non c'è assorbimento alle uscite dell'alimentatore.

Possiamo allora impostare la semplice equivalenza tra l'energia fornita dall'alimentatore e quella immagazzinata nei condensatori di filtro presenti sulle varie uscite come delineato in Fig.11. Supponendo dunque di avere N uscite possiamo scrivere

\int_{t_\text{start}}^{t_\text{co}}p(t)\,\text{d}t=\sum_{k=1}^{N}U_k(t_\text{co})

Esplicitiamo i vari termini di questa relazione, abbiamo già deciso di considerare costante p(t) ma che valore mettiamo? Le approssimazioni che stiamo facendo ora non sono più tutte conservative, dobbiamo valutare attentamente cosa inserire per evitare di sopravvalutare la pendenza della salita delle tensioni. Direi che piuttosto che calcolare la massima potenza effettivamente fornibile dall'alimentatore sia più saggio sommare le potenze nominali contemporanee delle varie uscite che saranno comunque inferiori alla massima a causa di un certo margine per variazioni e transitori. Quindi si arriva a

\left(\sum_{k=1}^{N}V_{k\text{,nom}}I_{k\text{,nom}}\right)\left(t_\text{co}-t_\text{start}\right)=\sum_{k=1}^{N}U_k(t_\text{co})\quad\quad\text{(7)}

Vediamo ora il termine destro, al tempo tco ciascun condensatore Ck sarà carico ad una tensione che, considerando una cross regulation perfetta, sarà nello stesso rapporto con il suo valore nominale come Vstart/V2 come definite sopra, in math words

v_{k}(t_\text{co})=\frac{V_\text{start}} {V_{2\text{,nom}}} \,V_{k\text{,nom}} che definendo \rho=\frac{V_\text{start}} {V_{2\text{,nom}}} diventa \,\!v_{k}(t_\text{co})=\rho\, V_{k\text{,nom}}

ora è immediato scrivere le energie nei condensatori come

U_k(t_\text{co})=\frac{1}{2}C_k\,v_k^2(t_\text{co})=\frac{1}{2}C_k\rho^2V_{k\text{,nom}}^2

queste, date in pasto alla (7) portano a ricavare

t_\text{co}-t_\text{start}=\frac{\rho^2}{2}\frac{\sum_{k=1}^{N}C_k V_{k\text{,nom}}^2}{\sum_{k=1}^{N}V_{k\text{,nom}}I_{k\text{,nom}} }\quad\quad\text{(8)}

Questa è, finalmente, l'espressione che ci permette di stimare l'istante in cui l'alimentazione al controller viene fornita da D3, la fine della seconda fase.

Qui vorrei notare che, per quanto matematicamente ineccepibile, non è ingegneristicamente sensato isolare la variabile tco ma si deve invece trattare come risultato della relazione la differenza tco-tstart. La prima è infatti un paio di ordini di grandezza più grande della seconda e le sue incertezze anche relativamente piccole mascherebbero la seconda.

Fase III

Le uscite dell'alimentatore raggiungono i loro valori nominali, la salita lineare rappresentata potrebbe non essere una buona approssimazione. I circuiti alimentati inizieranno ad assorbire una corrente non trascurabile e tempo dipendente, il loop di regolazione di tensione inizierà a fare il suo lavoro variando il duty cycle, tutto questo porterà ad un transitorio difficilmente prevedibile.

La buona notizia invece è che in questa sede non è che interessi molto di come e in quanto tempo si raggiungono i valori nominali.

L'unica cosa che si potrebbe/dovrebbe analizzare è che in effetti si inneschi e mantenga il processo rigenerativo ma direi che su questo fronte possiamo stare tranquilli. Il controller PWM rappresenta un carico aggiuntivo all'alimentatore, ma in effetti si tratta di alcune centinaia di mW a fronte di una potenza totale nell'ordine delle decine di W, possiamo quindi escludere qualsiasi influenza significativa sul transitorio di accensione che "continuerà per la sua strada". D'altra parte il MOS "apre" l'anello di reazione nel senso che finchè è pilotato con una tensione sufficiente -i.e.superiore al plateau di Miller- il valore della tensione di pilotaggio non ha nessun effetto sull'uscita.

Potremmo solo notare come la corrente assorbita dal controller aumenti specialmente a causa della maggior corrente fornita al gate all'aumentare della tensione di alimentazione.

Insomma, dopo il "crostino" della fase II questa è just plain sailing.

Fase IV

Siamo a regime, le tensioni alle uscite si sono stabilizzate ai loro valori nominali, così come il duty cycle sarà quello necessario ad ottenerle. Su questo fronte niente da dire, invece per l'alimentazione del controller dobbiamo assicurarci che la corrente fornita da R1 sia minore di quella assorbita dall'IC.

In altre parole dobbiamo assicurarci che D3 sia effettivamente in conduzione altrimenti Vcc denderebbe a salire oltre il valore richiesto. Con riferimento a Fig.12 possiamo scrivere

\frac{V_\text{DC}-V_\text{cc}}{R_1}\le I_\text{cc}(V_2)

intendendo con V2=Vcc i soliti 24V della auto-alimentazione e calcolando l'assorbimento totale come già fatto con la (5).

Scritta nel worst case e risolta per R1 ci da la seconda condizione per la resistenza di alimentazione

R_1\ge\frac{V_\text{DC,max}-V_\text{2,nom}}{I_\text{cc}(V_\text{2,nom})}\quad\quad\text{(9)}

questa disequazione, insiema alla (3) di "verso" opposto trovata analizzando la fase I, ci permette di fissare un intervallo di valori possibili per R1.

Non ci resta che calcolare la potenza massima dissipata per verificare la riduzione ottenuta rispetto lo schema originale

P_\text{R1,max}=\frac{(V_\text{DC,max}-V_\text{2,nom})^2}{R_1}\quad\quad\text{(10)}

Ora abbiamo tutti gli strumenti che ci permettono di dimensionare e verificare la nostra modifica per il caso specifico.

Dimensionamento

Ora è tempo di un po' di number crunching, iniziamo con la resistenza R1, con la (3), sostituendo specifiche già delineate e valori dal datasheet otteniamo

R_1\le\frac{V_\text{DC,min}-V_\text{start,max}}{I_\text{q,max}}=\frac{30\,\text{V}-9\,\text{V}}{1\text{mA}}=21\,\text{k}\Omega


dobbiamo poi soddisfare anche la (9), per avere un risultato numerico abbiamo bisogno della corrente assorbita dal controller a regime Icc(V2,nom) con V2,nom=24 V, avevamo già stimato la corrente media di gate in queste condizioni in Icc,G=7 mA.

Il datasheet ci da la corrente tipica assorbita dal controller vero e proprio Icc,o per 15V di alimentazione, la condizione più restrittiva in questo caso è quella con corrente minore, per cui useremo quel valore anche se l'alimentazione vale 24V e la corrente sarà probabilmente più elevata.

I_\text{cc}(V_\text{2,nom})=I_\text{cc,o}+I_\text{cc,G}=11\,\text{mA}+7\,\text{mA}=18\,\text{mA}

Quindi

R_1\ge\frac{V_\text{DC,max}-V_\text{2,nom}}{I_\text{cc}(V_\text{2,nom})}=\frac{80\,\text{V}-24\,\text{V}}{18\,\text{mA}}\approx3\text{,}1\,\text{k}\Omega

In definitiva fisserei un valore equidistante dai due estremi R_1=12\,\text{k}\Omega.

Verifichiamo infine la potenza dissipata in questa resistenza con la (10) otteniamo

P_\text{R1,max}=\frac{\left(V_\text{DC,max}-V_\text{2,nom}\right)^2}{R_1}
=\frac{\left(80\,\text{V}-24\,\text{V}\right)^2}{12\,\text{k}\Omega}\approx260\,\text{mW}

con un miglioramento di un fattore circa cinque rispetto lo schema originale, comunque spazio sul PCB non manca, alla fine monterei una resistenza da 1W nominale:

R_1=12\,\text{k}\Omega\qquad1\,\text{W}


Adesso è tempo di pensare al condensatore: necessitiamo di tco ma per utilizzare la (8) dobbiamo conoscere tensioni e correnti nominali di tutte le uscite e le capacità viste, le troviamo stimate in questa tabella

# Vnom Inom Capacità Note
1 5 V 1 A 3000 uF regolata in feed back
2 24 V 0,5 A 500 uF anche auto-alimentazione
3 16,5 V 0,5 A 500 uF
4 -16,5 V 0,2 A 250 uF
5 10 V 1 A 1000 uF
6 15 V 0,2 A 250 uF floating


Inoltre calcoliamo \rho=\frac{ V_\text{start,typ} }{ V_\text{2,nom}}=\frac{8\text{,}4\,\text{V}}{24\,\text{V}}=0\text{,}35

quindi la (8)


t_\text{co}-t_\text{start}=\frac{\rho^2}{2}\frac{ \sum_{k=1}^{N}C_k V_{k\text{,nom}}^2}{\sum_{k=1}^N V_{k\text{,nom}}I_{k\text{,nom}}}=\frac{0\text{,}35^2}{2}\times\frac{723\,\text{mJ}}{41\text{,}5\,\text{W}}\approx1\,\text{ms}

Da notare che mentre il numero a denominatore rappresenta effettivamente la potenza nominale dell'alimentatore, l'energia a numeratore non ha significato fisico "diretto", se volete fare ginnastica potete dire che si tratta di due volte l'energia accumulata nei condensatori con tensioni a regime.

Adesso procediamo a ritroso con la (6) per dimensionare C2, ma per farlo dobbiamo stimare la corrente assorbita Icc(Vstart).

Per la componente propria del controller Icc,o,max abbiamo il datasheet, di nuovo da notare che è dato il valore con alimentazione a 15V, intorno agli 8V di Vstart sarà probabilmente inferiore, ma al solito useremo quel valore perchè "più sfavorevole".

Invece per la componente fornita al gate useremo la (1) insieme al solito grafico di Fig.3, con Vstart,typ=8,4V stimiamo una VGS=7V e quindi una carica pari a circa QG=110 nC.

Riassumendo si ha

I_\text{cc}(V_\text{start})=I_\text{cc,o,max}+f_sQ_\text{G}(V_\text{start})=17\,\text{mA}+30\,\text{kHz}\times 110\text{nC}\approx20\,\text{mA}


Siamo ora in grado di ricavare la maggiorazione per C2

C_2\ge I\text{cc}(V_\text{start})\frac{t_\text{co}-t_\text{start}}{V_\text{start}-V_\text{stop}}=
20\,\text{mA}\times\frac{1\,\text{ms}}{8\text{,}4\,\text{V}-7\text{,}6\,\text{V}}=25\,\mu\text{F}

Considerato che l'alimentatore originale monta un condensatore da 220 uF che soddisfa abbondantemente la richiesta, visto che comunque è saggio -se null'altro osta- maggiorare generosamente, e visto soprattuto che sono profondamente pigro sarei fortemente tentato di lasciare C2 originale, ma prima di lasciarmi andare all'ozio voglio verificare il ritardo all'accensione ottenuto.

Usando la (4) otteniamo nel caso più sfavorevole di alimentazione a 30V

\begin{align}
t_\text{start}&=R_1C_2\ln\frac{V_\text{DC}-R_1I_\text{q,max}}{V_\text{DC}-R_1I_\text{q,max}-V_\text{start}}=\\
&=12\,\text{k}\Omega\times220\,\mu\text{F}\times\ln\frac{30\,\text{V}-12\,\text{k}\Omega\times1\,\text{mA}}{30\,\text{V}-12\,\text{k}\Omega\times1\,\text{mA}-9\,\text{V}}\approx1\text{,}8\,\text{s}
\end{align}

un ritardo chiaramente apprezzabile ma che dal punto di vista operativo non è assolutamente fastidioso considerando che ancora con 30V di alimentazione ma i parametri tipici si attesta su 0,9s. Con 70V di alimentazione nominale si arriva invece a circa 0,4s.

In breve decretiamo:

C_2=220\,\mu\text{F}\qquad50\,\text{V}

Realizzazione e verifica

Dunque dopo queste "due righe" siamo giunti alla conclusione: "Cambia R1 con una 12\,\text{k}\Omega\;1\,\text{W}", sì ma lo Zener?

Veramente non sarebbe necessario perchè nel funzionamento normale non entra mai in conduzione e anche perchè ce n'è uno integrato nel controller che -finchè ce la fa- limita l'alimentazione intorno ai 30V.

Ora però ricordando il guasto originale direi che se qualcosa deve funzionare da "fusibile" è senz'altro meglio che sia lo Zener esterno piuttosto che quello nel controller. Inoltre è già montato, perchè "faticare" a toglierlo se comunque non disturba? In breve lo lasceremo al suo posto a protezione di un controller progettato con alimentazione insolitamente elevata.

Veniamo ai test: armato del solito Variac faccio alcune prove e l'alimentatore si avvia regolarmente su tutto l'intervallo di tensioni richiesto, da 30V a 80V, le temperature sono ad un più confortevole tiepido, sembra tutto ok.

Poi inizio delle prove un po' più "cattive": aumento lentamente la tensione da zero, in effetti l'alimentatore si avvia già con VDC intorno a 14V.

Infatti invertendo la (3) e sostituendo i valori tipici -in luogo dei worst case usati per il progetto- si ottiene circa quella tensione.

Con VDC=14V lo switcher non riesce a portare le tensioni di uscita al loro valore nominale, ed infatti il supply surveillance non avvia il microcontrollore, ciò non di meno l'autoalimentazione del controller si innesca correttamente senza fenomeni di hiccup. In fondo per questo è sufficiente arrivare a ρ volte le tensioni nominali e comunque siamo abbondantemente sotto specifiche per la tensione in ingresso.

In ogni caso questa prova è un ottimo test della robustezza del processo rigenerativo di autoalimentazione e garanzia di trouble-free operation. Infine inserisco alcuni ohm di resistenza in serie all'ingresso AC allo scopo di mimare un'installazione con cavi lunghi e sottodimensionati, anche in questo caso il sistema si avvia regolarmente su tutto l'intervallo richiesto.

Riporto di seguito alcune forme d'onda ottenute durante i test

Fig.14a mostra l'alimentazione del controller Vcc applicando VDC=30V, si nota la salita esponenziale (Fase I) ed il gradino all'innesco della rigenerazione (Fase III) e la fase a regime. Il ritardo all'accensione è perfettamente in accordo con le previsioni.

Invece Fig.14b mostra il dettaglio del gradino non visibile sopra a causa della scala dei tempi troppo compressa insieme alla VGS. Si nota la fine della Fase I quando il controller si attiva e Vcc inizia a diminuire, poi dopo circa 1,7 ms di fase II subentra l'auto-alimentazione e si vede la salita di Vcc che è l'inizio della fase III. Anche in questo caso, considerati tutti i dati "inventati" che abbiamo usato nei calcoli, direi che la durata della fase II è in sostanziale accordo alle previsioni.

Tra le critiche che mi viene di fare al metodo usato nel calcolo metterei il fatto di non avere considerato una protezione fold-back che in effetti diminuisce il limite di corrente finchè le tensioni non sono praticamente a regime. Così come anche il non avere considerato che, avendo appunto un limite di corrente, la massima potenza fornibile dipenderà anche dalla tensione di alimentazione. In effetti alimentando, più vicini alle specifiche, con VDC=50V...70V questo transitorio diventa più rapido avvicinandosi molto ai risultati numerici prima trovati.

Infine Fig.14c riporta ancora lo stesso transitorio con una scala temporale diversa, conferma che all in all nella fase III la salita lineare delle tensioni non è poi un'approssiamazione così pessima come potrebbe sembrare di primo acchito.

Mi sarebbe piaciuto avere il tempo e l'attrezzatura per dei test in varie condizioni climatiche, ma vabbè sono abbastanza convinto del buon funzionamento della modifica.

Conclusioni

Come al solito più che il risultato piuttosto banale -cambiamo una resistenza- mi preme porre l'attenzione sul metodo, sull'approccio ingegnerestico che mira ad ottenere un risultato, magari approssimato, ma comunque ragionevole, ragionato e giustificato ad un problema con dati incompleti.

E' noto che i bei problemini "chiusi" si trovano esclusivamente nelle aule, nella vita invece ci si trova spesso davanti al classico foglio bianco o magari, forse peggio, davanti al foglio pieno di "geroglifici" scritti da qualcun altro.

Diventa allora indispensabile saper fare ragionevoli ipotesi, fissare specifiche mancanti e quant'altro necessario per andare ad integrare e rendere produttive analisi e sperimentazione.

Alla fine si arriva allora, in una sorta di circolo logico, ad un punto di partenza ma con degli strumenti di sintesi ed analisi che insieme al lavoro sperimentale ci permettono di criticare e migliorare quanto fatto ed ottenere un progetto funzionante nel senso più ampio del termine.


Riferimenti

Data sheet UC1843

Data sheet IRFP360

Data sheet Zener 1N4750A 27V-1W

88x31.png

Quest' opera è distribuita con licenza Creative Commons licenza Creative Commons Attribuzione - Non commerciale - Condividi allo stesso modo 3.0

13

Commenti e note

Inserisci un commento

di ,

Complimenti Carlo, L'articolo è interessante, molto ben dettagliato e chiaro.

Rispondi

di ,

Letto ora questo bellissimo articolo, complimenti Carloc.

Rispondi

di ,

Eccezionale articolo,sotto tutti i punti di vista.

Rispondi

di ,

Complimentoni, davvero un bell'articolo.

Rispondi

di ,

L'avevo già scritto da qualche altra parte, ma ad una nuova rilettura vorrei scriverlo anche qui: complimenti! Davvero un articolo che vale la lettura per imparare un po' di progettazione.

Rispondi

di ,

Il nuovo episodio della serie L'incredibile CarloC prodotto da Electroyou! ;)

Rispondi

di ,

Sono arrivato neanche a metà... [ho la pizza in forno], ma già mi entusiasma, se l' inizio è eccellente, figuriamoci la fine! Complimenti, dopo me lo leggo con l' attenzione che merita!

Rispondi

di ,

Bravo Carlo! Al solito ti dimostri un maestro imbattibile nell'analisi dei circuiti, quelli veri ;-)

Rispondi

di ,

Che bello svegliarsi la domenica mattina e trovare un articolo di Carloc. La prima cosa che ho pensato e` stata: "chissa` che cosa imparero` di nuovo oggi?". E Carlo mantiene sempre la sua fama di trivellatore di circuiti :)

Rispondi

di ,

bellissimo articolo complimenti per tutto!!

Rispondi

di ,

Secondo me dovresti metterti a studiare anche medicina e diventare chirurgo: con questo tuo approccio ai problemi, sai quante vite salveresti? Complimenti davvero!

Rispondi

di ,

Bellissimo articolo carloc. Certo non vorrei essere nei panni del tuo meccanico di fiducia il giorno che ti si guastasse l'automobile ... :-)

Rispondi

di ,

Complimenti carloc eccellente lavoro.

Rispondi

Inserisci un commento

Per inserire commenti è necessario iscriversi ad ElectroYou. Se sei già iscritto, effettua il login.