Pagina 2 di 3

Re: Circuito RLC sinusoidale

MessaggioInviato: 12 mar 2024, 12:01
da RenzoDF
Madara02 ha scritto:... Ho mantenuto questo schema, ho scelto e4=0 perché è uno dei due nodi che va a toccare il generatore controllato di corrente. ...

Ok, puoi scegliere il nodo di riferimento per i potenziali dove vuoi, ma non capisco la motivazione della scelta.

Madara02 ha scritto:... per t>0 pongo induttore, condensatore e generatore ind. di corrente, rispettivamente come Ils, Vcs, Igs

ho ottenuto queste equazioni:
G1(e1-e3)+G2(e1)+G4(e1-e2)=Ils
G3(e2)+G4(e2-e1)=-Ils
G1(e3-e1)=-Igs

...

Scusa ma non le capisco proprio; per una KCL devi sommare le correnti di tutti i rami che insistono sul nodo e quelle equazioni non mi sembrano rispettare questa regola base.

Vista la presenza del generatore Vcs, e che quindi posso scrivere

e1-e3=Vcs

le KCL le scriverò solo per i nodi 2 e 4

(e2-e1)G_4+Ils+e2 \,G_3+g(e1-e2)=0

Igs+e1G_2+e2G_3+g(e1-e2)=0

Madara02 ha scritto:... In ogni caso ho ottenuto questa matrice:

MC=[G4+G2,-G4,0;
-G4+g, G3+G4-g, 0;
+1,0,-1];
i=[Ils-Igs;0;-Vcs];

PN=MC\i

Non vedo come questa matrice possa discendere da quelle tue tre equazioni.

PS ......

Giusto per non perdere entrambi altro tempo .... prezioso!

... dando una veloce "sistemata" al tuo codice (che senza dubbio potrebbe essere migliorato)

Codice: Seleziona tutto
clear
close all
clc

R1=1;
R2=1;
R3=1;
R4=1;
L=1/5;
C=1/20;
g=2;

G1=1/R1;
G2=1/R2;
G3=1/R3;
G4=1/R4;
w=10;
fase=0;
Ig0=100;
ZL=1j*w*L;
ZC=(-1j)/(w*C);
YL=1/ZL;
YC=1/ZC;

% --- fasoriale t < 0
MZ=[YC+YL+G1+G2+G4,-YL-G4, -YC-G1;
-YL-G4, G3+YL+G4, 0;
-YC-G1, 0, YC+G1 ];
TN=[0; 0; -Ig0];
e=MZ\TN;
Vc0=e(1)-e(3)
Il0=(e(2)-e(1))*YL

V0=real(Vc0);
I0=real(Il0);

%---fasoriale t > 0
MZ=[YC+YL+G1+G2+G4,-YL-G4, -YC-G1;
YL+G4-g, -G3-YL-G4+g, 0;
-YC-G1, 0, YC+G1 ];
TN=[0; 0; -Ig0];
e=MZ\TN;
Vc0=e(1)-e(3)
Il0=(e(2)-e(1))*YL

%---- via CRA ----
syms Vcs Ils Igs

MC=[1,0,-1;
-G4+g,G4-g+G3,0;
g+G2,G3-g,0];
i=[Vcs; -Ils ;-Igs];
PN=MC\i

VR1=PN(1)-PN(3);
VR3=PN(2);
iR1=VR1*G1;

dvCdt=(-iR1+Igs)/C
dvLdt=(PN(2)-PN(1))/L

syms t x1(t) x2(t);
Ig = 100*cos(w*t);
x=[x1(t); x2(t)];
g=[Ig];
A = [-20,0; 0, -10];
B = [20; 5];
Dx = [diff(x1,t)== A(1,:)*x + B(1,:)*g,
diff(x2,t)== A(2,:)*x + B(2,:)*g];

cond_ini = [x1(0)==V0,x2(0)==I0];
S = dsolve(Dx,cond_ini);

vC = simplify(S.x1)
iL = simplify(S.x2)
% ----- The End -----

Re: Circuito RLC sinusoidale

MessaggioInviato: 12 mar 2024, 14:08
da Madara02
RenzoDF ha scritto:Ok, puoi scegliere il nodo di riferimento per i potenziali dove vuoi, ma non capisco la motivazione della scelta

Pensavo che il generatore controllato si gestisse in un'altra maniera, ho preferito annullarlo.
Ho continuato su questa via solo per comprendere meglio i miei errori.

RenzoDF ha scritto:Scusa ma non le capisco proprio; per una KCL devi sommare le correnti di tutti i rami che insistono sul nodo e quelle equazioni non mi sembrano rispettare questa regola base.

RenzoDF ha scritto:Non vedo come questa matrice possa discendere da quelle tue tre equazioni.

Ammetto di non aver capito il mio errore, oltre alla scelta del nodo a potenziale zero, però guardando la correzione della matrice che mi hai fornito in seguito noto che ho ottenuto lo stesso risultato.
Ho scritto le 3 equazioni non tenendo conto della presenza di VCs e del generatore controllato, che avrei inserito in seguito.
Nella scrittura delle equazioni parto spesso da questa forma per poi costruire la matrice "finale", eseguo questi passaggi solo per allenarmi nella scrittura della matrice finale.
RenzoDF ha scritto:PS ......

Giusto per non perdere entrambi altro tempo .... prezioso!

... dando una veloce "sistemata" al tuo codice (che senza dubbio potrebbe essere migliorato)


Ti ringrazio tantissimo per il tuo tempo (che non è scontato) , ma ammetto che questa frase mi ha scoraggiato un po' :lol: (sto scherzando)

Re: Circuito RLC sinusoidale

MessaggioInviato: 12 mar 2024, 19:14
da RenzoDF
Madara02 ha scritto:... Ammetto di non aver capito il mio errore, oltre alla scelta del nodo a potenziale zero, però guardando la correzione della matrice che mi hai fornito in seguito noto che ho ottenuto lo stesso risultato. ...

Come ho già detto, la tua scelta per il nodo a potenziale nullo, non è errata, e non capisco come la tua matrice possa essere stata ottenuta dalle tre equazioni che hai indicato.
Ad ogni modo, non capisco come tu possa con quella matrice aver ottenuto lo stesso risultato in quanto, usando le tue denominazioni per i nodi, la sua terza riga specifica erroneamente che

e1-e3=-Vcs

e non la corretta

e1-e3=+Vcs

Madara02 ha scritto:... ma ammetto che questa frase mi ha scoraggiato un po'...

Intendevo solo dire che, postando il codice completo, si sarebbe risparmiato tempo rispetto ad analizzarlo a pezzi separati. :-)

Perché non fai altrettanto postando il tuo codice completo, così sarò io a capire il perché tu riesca ad ottenere lo stesso risultato?

Re: Circuito RLC sinusoidale

MessaggioInviato: 12 mar 2024, 21:43
da Madara02
RenzoDF ha scritto:Ad ogni modo, non capisco come tu possa con quella matrice aver ottenuto lo stesso risultato


Scusami tanto, inizialmente non ho guardato bene la tua risoluzione e pensavo fosse come il mio secondo calcolo (mi difendo dicendo che dovevo ancora pranzare :lol: ), ci sono delle evidenti differenze e ho delle ipotesi: credo riguardi la gestione del generatore indipendente di corrente.
Ho un solo schema a riguardo (mi riferisco alla foto che ho allegato)

io agisco in questo modo:
Riferendomi allo schema in foto, sappiamo che
a=e2
b=e4(nodo zero)
alpha= e1
beta= 2.
quindi, dovrei inserire nella equazione relativa ad e2 "+g(e1-e2)"
e otterrei : G4(e2-e1)+G3(e2)+g(e1-e2)=-Ils
(tra l'altro combacia con quella che hai scritto tu)

secondo questa logica non dovrei riportare il termine g altrove.
Nella tua matrice lo inserisci nella terza riga, e non capisco il motivo.
Inoltre, sembra che nella terza riga della tua matrice, le equazioni del nodo e1( che poi sarebbe e1-e3)
sparisca ed inserisci quella relativa al nodo 4, perché si inserisce se è uguale a zero? e che fine fa e1-e3=Vcs.

Madara02 ha scritto:MC=[G4+G2,-G4,0;
-G4+g, G3+G4-g, 0;
+1,0,-1];
i=[Ils-Igs;0;-Vcs];
PN=MC\i

Nella matrice che ho inviato, la prima riga è composta da e1-e3=-Vcs, che ho corretto in
e1-e3=Vcs
che diventa:
MC=[1,0,-1;
-G4+g, G3+G4-g, 0;
G2+G4,-G4,0];
i=[Vcs;-Ils;-Igs+Ils]; fondamentalmente non cambia nulla

RenzoDF ha scritto:le KCL le scriverò solo per i nodi 2 e 4

Mi riferisco a questo, se ho messo e4=0 perché scrivere l'equazione riferita ad e4? il motivo è per la presenza del generatore controllato e della presenza del termine g?
perché noto che la mia terza riga differisce dalla tua e non capisco cosa sbaglio.

RenzoDF ha scritto:Intendevo solo dire che, postando il codice completo, si sarebbe risparmiato tempo rispetto ad analizzarlo a pezzi separati.

Perché non fai altrettanto postando il tuo codice completo, così sarò io a capire il perché tu riesca ad ottenere lo stesso risultato?


Sì comunque, avevo capito :lol: era una battuta infelice.
Comunque il codice in fondo è lo stesso che ho inviato nel primo messaggio, ma con la matrice di t<0 corretta e basta.

Codice: Seleziona tutto
R1=1;
R2=1;
R3=1;
R4=1;
L=1/5;
C=1/20;
g=2;

%t<0 nodi
G1=1/R1;
G2=1/R2;
G3=1/R3;
G4=1/R4;

%calcolo ig sinusoidale
valore= 100;
w=10;
fase=0;
Ig0=100;
ZL=1j*w*L;
ZC=(-1j)/(w*C);
YL=1/ZL;
YC=1/ZC;
MZ=[YC+YL+G1+G2+G4,-YL-G4, -YC-G1;
    -YL-G4, G3+YL+G4, 0;
    -YC-G1, 0, YC+G1 ];

TN=[0; 0; -Ig0];
e=MZ\TN
Vc0=e(1)-e(3)
Il0=(e(2)-e(1))*YL

Vc0=real(Vc0)
Il0=real(Il0)
%t>0
syms Vcs Ils Igs
MC=[1,0,-1;
    -G4+g, G3+G4-g, 0;
    -G2+G4,-G4,0];
i=[Vcs;-Ils;Igs];
PN=MC\i

VR1=PN(1)-PN(3);
VR3=PN(2);
iR1=VR1*G1;
iR2=-PN(1)*G2;
iR4=(-PN(1)+PN(2))*G4;
%dvCdt=(iR1-iR2-iR4+Ils)/C
dvCdt=(iR1-Igs)/C
dvLdt=(VR1+VR3-Igs)/L

syms t x1(t) x2(t);
Il0=5;
Vc0=80;
Ig = 100*cos(w*t);
x=[x1(t); x2(t)];
g=[Ig];
A = [0,20; 
     0, 5];       
B = [-20;
    -10];
Dx = [diff(x1,t)== A(1,:)*x + B(1,:)*g,
      diff(x2,t)== A(2,:)*x + B(2,:)*g];

cond_ini = [x1(0)==Vc0,
            x2(0)==Il0];
S = dsolve(Dx,cond_ini);

vC = simplify(S.x1)
iL = simplify(S.x2)

Re: Circuito RLC sinusoidale

MessaggioInviato: 12 mar 2024, 23:37
da RenzoDF
Ora non ho tempo per commentare tutto, ma solo quello per provare se il codice da te allegato porta ai risultati corretti ... e devo dire che la prova è stata negativa, in quanto porta a risultati scorretti per iL(t) e vC(t); dovresti essertene accorto, no ?

BTW Non capisco quell'immagine relativa ai generatori controllati? ... a cosa servirebbe ? ... da dove arriva? :-)

Dimenticavo: cosa stai studiando, in che ateneo, con che testo di riferimento?
... sono tre domande quindi spero di ricevere tre risposte. :D

Re: Circuito RLC sinusoidale

MessaggioInviato: 13 mar 2024, 0:24
da Madara02
RenzoDF ha scritto:Ora non ho tempo per commentare tutto, ma solo quello per provare se il codice da te allegato porta ai risultati corretti ... e devo dire che la prova è stata negativa, in quanto porta a risultati scorretti per iL(t) e vC(t); dovresti essertene accorto, no ?


Nessun problema, capisco che non è il momento migliore :-)
Sì comunque, me ne sono accorto.
Ho inviato il codice perché me l'avevi chiesto tu.
E' uguale al codice della mia richiesta iniziale, cambia solo la matrice per t<0 e quel dettaglio nella matrice di t>0.

RenzoDF ha scritto:BTW Non capisco quell'immagine relativa ai generatori controllati? ... a cosa servirebbe ? ... da dove arriva?


Spiegando in breve: é la procedura per la gestione del generatore di corrente controllato nel metodo dei potenziali nodali nella matrice, proviene dagli appunti del professore. Sono state raccolte tutte queste procedure e inserite in un unico pdf per un fattore di comodità.

RenzoDF ha scritto:cosa stai studiando, in che ateneo, con che testo di riferimento?

studio elettrotecnica facoltà di ingegneria informatica, Catania, nessun testo di riferimento, solo slides del professore

Re: Circuito RLC sinusoidale

MessaggioInviato: 13 mar 2024, 10:33
da RenzoDF
Certo ragazzi che ve ne fanno fare di confusione questi "professori". :mrgreen:

Re: Circuito RLC sinusoidale

MessaggioInviato: 13 mar 2024, 12:47
da Madara02
Eh, purtroppo non so cosa dirti :?
Siamo un bel po' di colleghi in questa situazione "confusa".
Almeno ho scoperto questo forum in cui ho fatto chiarezza su molti argomenti :-)

Re: Circuito RLC sinusoidale

MessaggioInviato: 13 mar 2024, 18:54
da RenzoDF
Madara02 ha scritto:... Sì comunque, me ne sono accorto.
Ho inviato il codice perché me l'avevi chiesto tu. ...

Te lo avevo chiesto perché avevo inteso che portasse al risultato corretto e non errato. :-)

Madara02 ha scritto:... é la procedura per la gestione del generatore di corrente controllato nel metodo dei potenziali nodali nella matrice, proviene dagli appunti del professore. ...

Incredibile, trovo assurdo quelle procedure a regolette e tabelle che non fanno altro che complicare il discorso.

Detto in sintesi, nel metodo dei potenziali nodali, si vanno ad usare le KCL ma, in presenza di generatori di tensione (come nel caso in oggetto Vcs nel CRA) il generatore va ad imporre la differenza di potenziale fra due punti della rete, in questo caso fra il nodo 1 e il nodo 3 (con le tue scelte di denominazione); il problema è che, non essendo nota la corrente nel ramo del GIT, non potremo usare le KCL a quei due nodi se non aggiungendola come ulteriore incognita.
Ne segue che in questo caso potremo scrivere le KCL solo al nodo 2 e al nodo 0, ma potremo però usare la tensione del GIT per la relazione mancante al sistema con le tre incognite, ovvero e1-e3=Vcs.

Scritte queste tre equazioni nelle incognite e1,e2 ed e3, potrai o risolvere il sistema in modo manuale (o via software) oppure scrivere la "matrice delle conduttanze" (anche se non si potrebbe più chiamare in questo modo) e andare ad usarla per risolvere in Matlab come sei abituato a fare.

Fino a qui, mi segui? :-)

Re: Circuito RLC sinusoidale

MessaggioInviato: 13 mar 2024, 21:39
da Madara02
Cerco di unire le informazioni ma penso di esserci