Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

18
voti

Calcoli circuiti con vettori e matrici di Mathcad Express

Proseguendo nella divulgazione di esempi di calcoli elettrotecnici con la nuova edizione gratuita di Mathcad, si mostrano le possibilità di soluzioni di circuiti mediante matrici.
Mathcad Express è infatti un'edizione ridotta di Mathcad Prime2.0, sufficiente però per molti dei calcoli necessari alla soluzione di circuiti elettrici.

Indice

Cosa sono le matrici e i vettori

La matrice è una tabella di numeri organizzati in righe e colonne (vedi definizione), mentre il vettore è una matrice di una sola riga (o una sola colonna).
Ogni elemento di una matrice è individuato da 2 indici (rispettivamente riga e colonna) che rappresentano la posizione di questo nella matrice. Ovviamente per gli elementi di un vettore vi è un solo indice.
I software matematici che gestiscono matrici, mettono a disposizione speciali funzioni che permettono di intervenire nella loro costruzione ed elaborazione. In particolare Mathcad Express si presenta così:

MCExpr01.GIF

MCExpr01.GIF

con possibilità di dimensionare la matrice (prima icona)e di scegliere poi la funzione desiderata (vedi tendina).La figura mostra alcuni esempi di tali funzioni.

Una delle maggiori utilizzazioni delle matrici è la soluzione di sistemi di equazioni lineari.
Dato infatti un sistema del tipo:
a_{0,0}\cdot x1+a_{0,1}\cdot x2=y1
a_{1,0}\cdot x1+a_{1,1}\cdot x2=y2
Se costruiamo la matrice M dei coefficienti a, possiamo ottenere immediatamente i valori di x1 e x2, dati y1 e y2. Nella notazione matriciale possiamo infatti scrivere:
M\cdot X=Y \qquad . da cui possiamo ricavare .\qquad X=M^{-1}\cdot Y
dove M − 1 rappresenta la matrice inversa dei coefficienti a.

Dopo aver richiamato le principali caratteristiche delle matrici, possiamo ora passare alle loro concrete applicazioni ai circuiti.

Circuiti resistivi

Consideriamo un classico esempio di circuito composto da 5 resistori ed alimentato da 2 sorgenti di tensione:


Le frecce indicano il verso delle singole correnti circolanti in ogni resistenza (I con lo stesso indice), correnti da calcolare in funzione dei valori dei resistori R e dei generatori E.
Applicando Kirchhoff alle singole maglie possiamo allora scrivere:
R1\cdot I1+R2\cdot I2..............................................=E1
...........-R2\cdot I2+R3\cdot I3+R4\cdot I4...............=0
..............................................R4\cdot I4+R5\cdot I5=E2
ed applicandolo ai nodi A e B:
......I1........-I2.......-I3................................=0 \qquad.
.....................................I3..........-I4......+I5=0 \qquad.

Da questo sistema di equazioni possiamo ricavare la matrice M dei coefficienti ed il vettore V (definendo prima i rispettivi valori numerici delle resistenze e delle tensioni in gioco):

Come si vede, i valori delle correnti risultano immediatamente dall'inversione della matrice M, moltiplicata per il vettore V. L'inversione è naturalmente gestita automaticamente da Mathcad
Si noti che gli indici di I iniziano da zero (quindi I0 = I1, ecc.).
Per confronto si riporta la simulazione dello stesso circuito in Microcap:

Circuiti in alternata

Il metodo è ancora più utile quando su tratta di circuiti in alternata, quindi quando si devono utilizzare numeri complessi per le impedenze. Vediamo anche qui un tipico circuito.

con E1 ed E2 generatori in alternata a 50Hz, in fase tra loro. Per il calcolo delle correnti circolanti, dobbiamo trasformare il circuito in impedenze:

Le correnti I hanno il verso delle frecce e l'indice dell'a relativa impedenza.

Si ottengono così i moduli dei valori delle correnti che circolano nelle rispettive impedenze. Per avere anche le fasi, con Mathcad Prime basterebbe la funzione arg(I), che però non è implementa in Express, con cui non è nemmeno possibile separare la parte reale dalla immaginaria di un numero complesso (con le funzioni Re() e Im()).
Esiste però la possibilità di ottenere il coniugato di un numero complesso, ed allora ecco come superare l'ostacolo:


Gli angoli ottenuti direttamente sono in radianti (da 0 a ). Si possono però anche ottenere in gradi (con la funzione °) e compresi fra 0 e 180°e fra 0 e -180°, come mostrato, ma questo comporta l'inversione del senso delle correnti.
Si è infine aggiunta una "prova" con la funzione che dal modulo e l'angolo ricostruisce la notazione complessa delle correnti.

Anche in questo caso viene mostrata la simulazione con MicroCap dello stesso circuito:

Come si vede, i risultati numericamente coincidono.

Conclusioni.

Il confronto con i simulatori fa sorgere un dubbio: perché utilizzare allora le matrici? (per inciso i simulatori adottano il calcolo matriciale per ricavare i loro risultati).
La risposta è che il metodo delle matrici, al contrario dei simulatori, costringe ad "impostare" i calcoli, quindi a comprendere le regole che governano i circuiti stessi. E' appunto questo che è formativo per chi li affronta per studio.
D'altra parte i calcoli di per sè non aggiungono "comprensione" dei circuiti, ma sono un mero esercizio di pazienza ed attenzione, sottraendo però tempo prezioso che potrebbe essere meglio utilizzato ad affrontare un maggior numero di problemi o ad esplorare più alternative di soluzione.
La disponibilità sempre maggiore di potenti mezzi di calcolo permette quindi di liberare lo studente dalla gravosa esecuzione dei "conti".

9

Commenti e note

Inserisci un commento

di ,

Vi ringrazio per le risposte celeri. Admin ha messo il dito nella piaga: avendo adottato la convenzione dell'utilizzatore il prodotto R5*I5 va preso con il segno "+". Ho rifatto i calcoli sia a mano che con Derive5 e tutto torna alla perfezione. Ancora grazie, siete bravi.

Rispondi

di ,

luigi_48, nella tua terza equazione di maglia è errato il segno di R5I5

Rispondi

di ,

luigi_48, è meglio che tu apra un nuovo argomento nel Forum, rappresentando il tuo circuito in FidocadJ ed indicando i versi delle correnti che hai considerato. Comunque 5 equazioni sono ridondanti (ed è più facile sbagliare)...

Rispondi

di ,

Ho provato a risolvere il circuito in cc alla vecchia maniera, cioè a mano. Ho applicato Kirchhoff alle maglie, ne ho individuato tre, e ho scritto queste equazioni:
E1-R1*I1-R2*I2=0
R2*I2-R3*I3-R4*I4=0
R4*I4-R5*I5-E2=0
Ho applicato Kirchhoff ai nodi, ne ho individuati due, e ho scritto queste equazioni:
I1-I2-I3=0
I3-I4+I5=0
Ho impostato un sistema di 5 equazioni con 5 variabili I1,I2,I3,I4.I5 e con il metodo di sostituzione l'ho risolto. Ho ottenuto questi risultati:I1=0, I2=0.3 , I3=-0.3 , I4=0.3 , I5=0.6 che sono ben diversi da quelli che hai ottenuto tu con Mathcad e con la simulazione elettrica. Il bello è che ho provato a risolvere il mio sistema con Derive5 è ho ottenuto gli stessi risultati che ho ottenuto a mano. Mentre con un simulatore elettrico(Tina) ho ottenuto gli stessi tuoi risultati. Perchè?

Rispondi

di ,

Mathcad è davvero intrigante! Grazie Gio!

Rispondi

di ,

Quale programma non trovi? Se hai istallato Mathcad Express e lo mandi in esecuzione, ti ritrovi una pagina vuota con in testa tutte le varie possibilità do programmazione. Il programma lo devi scrivere tu seguendo le indicazioni date nell'articolo. Per altri dettagli è magiùlio sentirci nel Forum.

Rispondi

di ,

Ho seguito il link indicato da te. Ho installato il SW. ma poi non trovo il programma. Sono su Windows 7. come posso fare? grazie.

Rispondi

di ,

Grazie,molto interessante.

Rispondi

di ,

Interessante ed utile

Rispondi

Inserisci un commento

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