• Non ci sono risultati.

Un esempio di studio di circuito in condizioni variabili

Nel documento Circuiti elettrici in evoluzione dinamica (pagine 41-51)

C) La funzione che descrive la caratteristica statica non esiste, e non può quindi essere rappresentata da alcun grafico

6.6 Un esempio di studio di circuito in condizioni variabili

matematico’ cui abbiamo fatto cenno prima funziona e ci consente di risolvere i circuiti ‘a mano’, da quelli in cui, invece, non avremo altra scelta se non ...

imparare a usare correttamente Spice.

Per quel che riguarda, poi, le tensioni, la LKT, applicata all’unica maglia esistente, è rappresentata dalla seguente equazione (nella quale inseriamo subito la caratteristica del generatore):

E = vI + vR + vL . (6.12)

La caratteristica del resistore richiede che, essendo i = 0, anche vR = R i = 0. Per quel che riguarda, invece, la tensione vL, la caratteristica dell’induttore potrebbe consentire un valore diverso da zero, soltanto a patto che la derivata rispetto a t della corrente i fosse diversa da zero. D’altra parte, però, affinché ciò sia possibile, occorrerebbe che una corrente cominciasse a circolare nell’induttore (e quindi anche negli altri elementi in serie ad esso). E ciò, finché l’interruttore ideale è aperto, non è possibile.

Cosa dobbiamo dunque concludere? Che, fino a quando l’interruttore I è aperto, la LKT, espressa dalla (6.12), si riduce in realtà alle seguenti semplici condizioni:

vR = 0 , vL = 0 , vI = E .

Ciò significa che tutta la tensione del generatore di tensione si ritrova applicata ai morsetti aperti dell’interruttore ideale, e che, inoltre, questa situazione può continuare per tempo indeterminato (e cioè stazionario), fino a quando l’interruttore I non verrà chiuso.

Ammettiamo ora che, a un certo istante, che per comodità indicheremo con t = 0 (l’istante in cui facciamo scattare il nostro cronometro), chiudiamo bruscamente l’interruttore I.

+

+ −

+ +

E L

R vR

vL vI = 0

i I

Figura 6.19: l’interruttore I è chiuso.

Per comprendere cosa succede, cominciamo col rappresentare il circuito nella sua

‘nuova’ condizione, mostrata in Figura 6.19. Questa volta, come si vede, l’interruttore I è in posizione ‘chiuso’, ed equivale dunque a un corto circuito; ne deriva che la tensione vI applicata ai suoi morsetti non può che essere zero!

Inoltre, essendo l’interruttore chiuso, una corrente i diversa da zero può ora circolare nell’intero circuito.

Rispetto alla situazione precedente, è cambiato, per la verità, quasi tutto, e noi ora ci proponiamo di esaminare proprio come cambia la condizione di funzionamento del circuito dall’istante t = 0 in poi, e cioè per t ≥ 0. Proveremo a farlo ‘passo-passo’, e cioè seguendo i cambiamenti che via via intervengono dalla chiusura dell’interruttore in poi.

Per fissare le idee anche da un punto di vista quantitativo, e non soltanto qualitativo, assegniamo dei valori numerici (i primi che ci capitano) ai diversi parametri E, R e L. Scegliamo, ad esempio: E = 100 V, R = 10 Ω, L = 2 H .

Cominciamo ora a scrivere tutte le equazioni che governano il funzionamento del circuito, e cioè le LK nonché le caratteristiche dei bipoli che compongono il circuito stesso.

La LKC ci dice semplicemente (come già più volte sottolineato) che la stessa corrente i (da determinare istante per istante) circola in tutti i bipoli, poiché questi sono in serie fra loro. La LKT, applicata all’unica maglia esistente, è rappresentata ora (per t ≥ 0) dalla seguente equazione (si noti l’assenza del termine vI, che è ora nullo):

E = vR(t) + vL(t) , (6.13)

nella quale abbiamo volutamente sottolineato la dipendenza di vR e di vL dal tempo t, mentre E ne è indipendente.

Non resta, a questo punto, che aggiungere le caratteristiche del resistore e dell’induttore

vR(t) = R i(t) , vL(t) = L d

dt i(t) , (6.14)

e sostituirle nella (6.13), in modo da ricondurci a un’unica equazione nella sola funzione incognita i(t):

E = R i(t) + L d

dt i(t) . (6.15)

Sostituendo, poi, i valori numerici scelti per E, R e L, la (6.15) diventa in definitiva:

100 = 10 i(t) + 2 d

dt i(t) , (6.16)

la quale deve essere verificata in ogni istante successivo alla commutazione dell’interruttore, cioè per t ≥ 0.

Siamo giunti così al punto centrale dell’intera questione: risolvere l’equazione (6.16) vuol dire riuscire a trovare una particolare funzione la quale, una volta sostituita al posto di i(t), sia nel termine 10 i(t) che nel termine 2 di(t)/dt, verifichi l’equazione stessa in ogni istante t ≥ 0. Come si vede, il problema che ci si pone è completamente diverso da quelli ai quali siamo abituati quando affrontiamo un’equazione algebrica del tipo a x + b = c, con x incognita, e a, b, c parametri noti. Come già detto in precedenza, equazioni come la (6.16), nelle quali, cioè, compaiono, come incognite, funzioni di t, (e non semplici numeri costanti), e inoltre figura pure la derivata rispetto a t della funzione incognita, vanno sotto il nome di equazioni differenziali, e costituiscono, di per sé, uno dei settori più vasti e importanti di tutta la Matematica!

Non vi spaventate, quindi, se non avete (e non potete ancora avere) i mezzi per risolverle. Ne faremo a meno, aiutandoci con Spice, che, invece, le sa risolvere egregiamente! Per non lasciarvi, però, a ... bocca asciutta, vogliamo provare, prima di concludere questo paragrafo, a spiegarvi come è possibile risolvere un’equazione di questo tipo in maniera non rigorosa, ma almeno approssimata (che è, poi, per la verità, proprio quello che fa Spice). Il trucco è semplice, ed è fatto di tanti ‘passi’ successivi che noi seguiremo uno a uno, cominciando dal primo, per indicare poi la strada che potrà essere seguita poi per quanti ‘passi’ si vuole, ...

senza limiti.

• Il primo passo da fare è ricavare il termine contenente la derivata della funzione incognita i(t) dall’equazione, riscrivendo la (6.16) nella forma:

d

dt i(t) = 50 - 10 i(t) . (6.17)

• Il secondo passo è ricavare il valore di di/dt all’istante t = 0, sapendo che, per ipotesi, la corrente i è nulla, all’istante t = 0. Si ha, così:

ddt i(t)

t = 0

= 50 - 10 i(0) = 50 ,

dove abbiamo voluto indicare con il simbolo ddt i(t)

t = 0

proprio il valore della derivata di i(t), calcolata all’istante t = 0.

• Il terzo passo richiede innanzitutto di ricordare (paragrafo 1.5) che la derivata di una qualsiasi funzione i(t) può essere calcolata, almeno in modo approssimato, utilizzando l’espressione generale

ddt i(t)

t = t1

≅ i(t2) - i(t1)

t2 - t1 , (6.18)

purché i due istanti di tempo t1 e t2 siano abbastanza vicini l’uno all’altro (quanto più lo sono, tanto più preciso è il valore che si ottiene per la derivata: ricordate?).

Notate che, nella (6.18), non abbiamo usato il simbolo di uguaglianza ma quello (≅) di approssimativamente uguale. L’espressione (6.18) può allora essere riscritta in modo da poter calcolare il valore di i(t2), quando si sia già calcolato il valore della derivata all’istante t1:

i(t2) ≅ i(t1) + d dt i(t)

t = t1

(t2 - t1) . (6.19)

Questa espressione è la vera formula magica che ci fornisce la soluzione approssimata dell’equazione differenziale, a patto di ripetere a volontà i seguenti due passi:

a) si ricava dalla (6.17) il valore della derivata prima all’istante t = t1, cioè ddt i(t)

t = t1

;

b) si sostituisce questo valore nella (6.19), e si calcola i(t2), partendo dalla conoscenza di i(t1).

Applichiamo il metodo al nostro esempio, partendo con t1 = 0 e t2 = 0.001 ,

continuando, poi, con

t1 = 0.001 e t2 = 0.002 , e ancora

t1 = 0.002 e t2 = 0.003 ,

e così via. Otteniamo allora (utilizzando una semplice macchinetta calcolatrice soltanto per fare i conti) che, per t1 = 0 e t2 = 0.001, risulta:

i(0.001) ≅ i(0) + d dt i(t)

t = 0

(0.001 - 0) = 0 + 50 ⋅ 0.001 = 0.05 .

Ripetendo per t1 = 0.001 e t2 = 0.002, possiamo calcolare i(0.002):

i(0.002) ≅ i(0.001) + d dt i(t)

t = 0.001

(0.002 - 0.001) . (6.20)

Ma, per farlo, abbiamo bisogno del valore della derivata di i(t) calcolata non più a t1 = 0, bensì a t1 = 0.001. Come facciamo? Semplice: ritorniamo all’equazione di partenza (6.17), proprio quella, cioè, che dobbiamo risolvere, e applichiamola al

‘nuovo’ istante t1 = 0.001, ottenendo:

ddt i(t)

t1 = 0.001

= 50 - 10 i(0.001) = 50 - 50 (0.05) = 49.75.

Ottenuto così il nuovo valore della derivata, ricaviamo il valore di i(0.002) dalla (6.20):

i(0,002) ≅ i(0.001) + d dt i(t)

t = 0.001

(0.002 - 0.001) = = 0.05 + 49.75 ⋅ 0.001 = 0.09975 .

Volendo continuare, occorre calcolare ddt i(t)

t = 0.002

mediante la (6.17) sostituendo in essa, a secondo membro, il valore di i(0.002) che abbiamo appena trovato, e, poi, ricavare i(0.003) dalla (6.19), partendo dalla conoscenza della corrente e della sua derivata per t = 0.002.

t i(t)

0 0

0.001 0.05000000000000

0.002 0.09975000000000

0.003 0.14925125000000

0.004 0.19850499375000

0.005 0.24751246878125

0.006 0.29627490643734

A questo punto, il metodo per andare avanti ‘passo-passo’ nella soluzione dell’equazione dovrebbe essere chiaro. Potete controllare da soli, se ne avete voglia, che, nel nostro esempio, si ottengono i valori riportati in tabella.

Riportare in una tabella tutti i dati calcolati sarebbe troppo lungo; conviene organizzare i dati in un grafico. Allora, se ripetiamo il calcolo per molti altri punti, otteniamo la soluzione mostrata in Figura 6.20.

0 2 4 6 8 10 12

0 1 2 3 4 5

i(t)

t

Figura 6.20: andamento temporale della corrente i(t).

La soluzione che si ottiene non è quella matematica, rigorosa, ma è comunque sufficiente per molti scopi pratici. D’altra parte, la cosa importante è che, con questo metodo, se si vuole migliorare l’approssimazione con cui si desidera la soluzione, basta avvicinare gli istanti, scegliendo, ad esempio, t1 e t2 che differiscano fra loro di 0.0005 e non di 0.001. Basta, ad esempio, cominciare con t1 = 0, e t2 = 0.0005, e continuare con t1 = 0.0005 e t2 = 0.001, e così via.

Vale la pena di osservare, infine, che l’equazione differenziale (6.16), una volta stabilito che i(0) = 0, cioè che la corrente parte dal valore iniziale zero, ammette una soluzione analitica (che imparerete a trovare nel prosieguo dei vostri studi), che vale:

i(t) = 10 1 - e-5t , per t ≥ 0 , (6.21)

in cui ‘e’ rappresenta la funzione esponenziale introdotta nel Capitolo 1.

Notate come la soluzione (6.21) sia uguale a zero all’istante t = 0 e controllate con cura che il grafico riportato in Figura 6.20 corrisponde proprio alla soluzione riportata.

Facciamo ancora un passo avanti. Scriviamo la soluzione generale del problema differenziale (6.15), soggetto alla condizione iniziale di corrente nulla, può essere scritta nella forma generale

i(t) = E

R 1 - e-t/τ , per t ≥ 0 , (6.22)

in cui la quantità τ, detta costante di tempo del circuito, vale τ = L

R . (6.23)

Osservate come la (6.21) costituisca un caso particolare della (6.22) e come la costante di tempo sia un parametro caratteristico di ogni circuito e che, in qualche misura, determini il tempo di estinzione del transitorio. Per comprenderne sino in fondo quanto andiamo dicendo, riconsiderate la Figura 6.20: essa mostra che la corrente raggiunge il valore finale (si dice più correttamente ‘asintotico’) in due secondi. La costante di tempo regola proprio questo tempo nel senso che, se il valore della costante di tempo è piccolo, il circuito raggiunge la nuova situazione stazionaria in poco tempo, altrimenti, cioè per costanti di tempo elevate, ci vuole più tempo a raggiungere il valore finale. Convenzionalmente si dice che il circuito impiega un tempo pari a 5 costanti di tempo perché il transitorio si estingua.

+

+ − +

E L

R

i(t) vR(t)

vL(t) t > 0

1 2

0

Figura 6.21: carica del circuito RL.

Dopo un tempo sufficientemente lungo la corrente che percorre il circuito in esame è, dunque, di nuovo costante e vale

i(t) = E

R , dopo un certo tempo. (6.24)

Ciò vuol dire che, dopo questo tempo, l’induttanza si comporta come un corto circuito e, pertanto, vale la (6.24). Alle stesse conclusioni si può giungere adoperando Spice. Vediamo, allora, di capire come si simuli una rete le cui grandezze variano nel tempo, partendo da questo semplice esempio. Nei paragrafi successivi discuteremo altri esempi.

Come al solito, numeriamo (0, 1, 2) i tre nodi della rete, ridisegnata in Figura 6.21 per t > 0, dopo che l’interruttore ha chiuso la maglia e, pertanto, il generatore eroga la tensione continua E. Il listato che segue può essere utilizzato per simulare la rete.

Esempio 2

*Carica del circuito RL

VE 1 0 100

R0 1 2 10

L0 2 0 2 IC=0

.TRAN 0.02 2 UIC

.PROBE .END

La terza, la quarta e la quinta riga introducono, rispettivamente il generatore di tensione, il resistore e l’induttore. La quinta, in particolare,

L0 2 0 2

IC=0

che descrive l’induttore, posto tra i nodi 2 e 0, di valore 2 H, è completata con l’indicazione ‘IC=0’. Essa sottolinea il fatto che l’induttore, quando l’interruttore commuta, non è attraversato da corrente e, quindi, la condizione iniziale di funzionamento (Initial Condition, in inglese) è nulla. Se, come vedremo nei paragrafi successivi, l’induttore, all’istante iniziale, fosse stato interessato da una corrente di 2 mA, avremmo dovuto scrivere ‘IC=2m’.

La sesta riga avverte il simulatore che è nostra intenzione eseguire un’analisi dinamica della rete, chiedendo di risolverla con un passo di 0.02 s e fino a 2 s.

Questo passo è stato scelto basandoci sul valore della costante di tempo pari a τ = L

R = 2

10 s = 0.2 s .

Un semplice criterio che consenta all’elaboratore di non svolgere troppi calcoli ma, al tempo stesso, di fornire risultati attendibili, è di scegliere il passo utile per la soluzione pari a un decimo della costante di tempo. È evidente che quanto più piccolo viene scelto questo passo, tanto più accurata è la soluzione. Tuttavia un passo eccessivamente piccolo potrebbe rappresentare una scelta troppo onerosa da calcolare. Un buon compromesso è quello che abbiamo indicato.

Il comando ‘.TRAN’ nella sua versione più completa è

.TRAN TSTEP TSTOP TSTART TMAX UIC

in cui TSTEP è il passo con cui vengono visualizzati i dati calcolati, TSTOP l’istante di arresto in cui va terminato il calcolo, TSTART è l’istante iniziale che, se non esplicitamente indicato, viene assunto pari a zero, TMAX è il più grande passo di elaborazione dei risultati che, se non indicato, è assunto pari a TSTEP, UIC impone al simulatore di usare le condizioni iniziali riportate nel file (Utilize Initial Conditions).

La penultima riga contiene il comando ‘.PROBE’ che richiede a Spice di creare, in uscita, un nuovo file, individuato con l’estensione ‘.DAT’, che contiene tutti i dati delle elaborazioni effettuate. Questo nuovo file può essere letto dal post-processore grafico PROBE che è in grado di produrre grafici di alta qualità sulla base dei dati

forniti. Solo un po’ di pratica vi aiuterà a rendervi conto di quanto sia più ...

semplice usare questo processore grafico, piuttosto che descrivere come si adoperi.

In definitiva, come avete potuto constatare, l’analisi di una rete che lavori in condizioni dinamiche non è molto più complicata di quella di una rete che operi in regime stazionario; basta ricordare il comando ‘.TRAN’ e imparare ad usare il post-processore PROBE.

6.7 Classificazione dei tipi fondamentali di funzionamento variabile

Nel documento Circuiti elettrici in evoluzione dinamica (pagine 41-51)