Forum: Digitale Signalverarbeitung / DSP / Machine Learning Leistung im Frequenzbereich


von Joe (Gast)


Lesenswert?

Hallo liebe Signalverarbeiter,

kann man aus dem komplexwertigen Ergebnis einer DFT mit 
sum(real{|X[k]|^2}), den Wirkleistungs Anteil bestimmen?
Ich komme nicht auf das gewünschte Ergebnis:

clear *

dt=0.000001; T = dt
N=1000;
t=[0:dt:(N-1)*dt]';
pi=3.141592654 //wegen Scilab
x1=sin(2*pi*10000*t);

x11=fft(x1)/N;

//Leistung im Zeitbereich P=0.5 ist korrekt, oder halt
//P=((1/sqrt(2)))^2*cos(1)=0.5
y=sum(x1.*x1)/N;

//aber im Frequenzbereich mit den real-Anteilen P=8.397D-18
P_x11=sum(abs(real(x11)).*abs(real(x11)))

//im Frequenbereich richtig gehts mit: P=0.5
P1_x11=sum(abs(x11).*abs(x11))

Warum geht das nicht mit den real-Anteilen?
Viele Grüße

von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?

Joe schrieb:
> kann man aus dem komplexwertigen Ergebnis einer DFT mit
> sum(real{|X[k]|^2}), den Wirkleistungs Anteil bestimmen?

Nein! Real- und Imaginärteil nach der DFT haben nichts mit 
Wirk-/Blindleistung zu tun. Die Wirkleistung kannst du nur bestimmen 
wenn du Messungen von Spannung und Strom hast. Aber dann brauchst du 
auch keine DFT, weil die Berechnung im Zeitbereich genauso einfach geht.

von Joe (Gast)


Lesenswert?

Ok, ich habs mittlerweile selbst rausgefunden. Mir ist bewusst, dass das 
vorstehende Beispiel trivial ist, aber stelle Dir ein FOC-Signal vor, 
also Spannungsverlauf einigermaßen rechteckig, der Strom einigermaßen 
sinusförmig, dann kann man das nicht mehr so einfach im Zeitbereich 
berechnen.
Beide Signale werden abgetastet, Strom über Strom-Spannungswandler. DFT 
von beiden Signalen um die Wirk-Leisting zu bestimmen.
Geht mit: Differenz der Winkel bilden (je komplexen Abtastwert) und die 
Absolutwerte multiplizieren und mal den cosinus des Differenz-Winkels 
nehmen (alles natürlich elementweise multiplizieren.*). Anschließend 
alles aufsummieren, das ergibt dann die Wirkleistung.

Der Anfangs beschriebene Fehler liegt einfach darin, das eine DFT eines 
geraden Signals s(t)=s(-t), spiegel symmetrich zur Ordinaten nur reele 
Anteile erbringt. Bei einer ungeraden Funktion mit s(t)=-s(-t) nur 
imaginäre Anteile. Sinus = ungerade Fuktion = nur imaginäre Anteile aber 
wenn man die jetzt multipliziert und aufsummiert, hat man als Ergebnis 
die Wirkleistung nach den Parsvalschen Theorem.
Viele Grüße
PS.:Wer`s nachschlagen will:
vgl.: Georg O., Elektromagnetische Felder und Netzwerke, Springer 
Verlag, 1999, ISBN 3-540-65587-5, S.453-460

von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?

Joe schrieb:
> also Spannungsverlauf einigermaßen rechteckig, der Strom einigermaßen
> sinusförmig, dann kann man das nicht mehr so einfach im Zeitbereich
> berechnen.

Wieso nicht?

Zeitbereich:
P=sum((u.*i))/length(u);

Wenn du es kompliziert machen willst, dann geht's auch im 
Frequenzbereich:
P=sum(abs(fft(u)).*abs(fft(i)) .* 
cos(angle(fft(u))-angle(fft(i))))/(length(u)^2);

Das Ergebnis ist das gleiche.

von Joe (Gast)


Lesenswert?

Andreas Schwarz schrieb:
> Frequenzbereich:
> P=sum(abs(fft(u)).*abs(fft(i)) .*
> cos(angle(fft(u))-angle(fft(i))))/(length(u)^2);

Hallo,
genau so ist es.
Viele Grüße

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.