phase shift

7 visualizaciones (últimos 30 días)
Flavia
Flavia el 17 de Ag. de 2011
I need to simulate a parallel RC circuit with R variable. When I plot it, it seems that are no phase between voltage and current and come Warning: Imaginary parts of complex X and/or Y arguments ignored . and when I calcute this phase (phi), there is something. Can someone help me how to plot with this phase delay? Thanks Flavia Here is my code
f=0.1; %Hz
fs=1000;% Abtastfrequenz in Hz
ta=1/fs;
t=0:ta:100;
T=10;
U=100*sqrt(2)*sin(2*pi*f*t); %V
C=-2*pi*f*1e-6*i; %Kapazität in F
R=15e6*(1+exp(-(t/T+log(5/3))))-14e6; % Widerstand in M Ohm
Y=(1./R)+C;
Z=1./Y;
I=U./Z;
plot(t,I/2e-7,'r',t,U,'g');
grid on
hold on
Im=imag(U./I);
Re=real(U./I);
phi=angle(Im./Re);
figure
plot(t,phi*180/pi);
  1 comentario
Walter Roberson
Walter Roberson el 17 de Ag. de 2011
phi = atan2(Im, Re) might perhaps be clearer.
If Z = 1./Y, and I = U ./ Z, then I = U .* Y. Then U ./I would seem to be U . / (U .* Y) which would be 1 ./ Y which would be the same as Z. Would it then not be more direct to take the real and imag parts of Z rather than of U./I ?

Iniciar sesión para comentar.

Respuesta aceptada

Walter Roberson
Walter Roberson el 17 de Ag. de 2011
C incluedes 1e-6*i so C will normally be complex. Y adds C to a calculation, so Y will normally be complex. Z has 1/Y so Z will normally be complex. I has something ./ Z, so I will normally be complex.
You then plot t vs I, so you are plotting a real value against a (usually) complex value. plot() requires that the coordinates to it be real, with the one exception that if you use plot(P) and P is complex, then real(P) will be plotted against imag(P); this exception never applies if you specify the x (or t) coordinate as you do in this plot() call.
  2 comentarios
Flavia
Flavia el 17 de Ag. de 2011
thanks for your answer, but do you now how can I plot voltage and current at some time?
The problem when I a take real and imag parts of Z is that a can not see this phase delay between voltage and current.
Walter Roberson
Walter Roberson el 17 de Ag. de 2011
Perhaps you should be using U as your first coordinate instead of t ? U is voltage according to your comments.

Iniciar sesión para comentar.

Más respuestas (1)

Flavia
Flavia el 18 de Ag. de 2011
I tried it, aber that did not work like i want. I need in the some graphic both curves (current and voltage), but with phase (phi). At the beginning phi is 80 degree, so the both curves should have the amplitude fast in opposite direction and with the time phase(phi) changed. aber this does not appear with plot()

Categorías

Más información sobre MATLAB en Help Center y File Exchange.

Productos

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by