Berechnung der Phasendifferenz Strom und Spannung

Gast #1208230
Hallo Zusammen,

ich möchte gerne ein kleines Netzanalysegerät in Matlab simulieren und 
gegebenfalls in einen DSP überführen.

Es sollen:

Strom
Spannung
Wirkleistung
Blindleistung
Scheinleistung
Leistungsfaktor
etc. p.p. :)

messen und Berechnen können.

Aber es kommt schon recht schnell zu Fragen.
Wenn ich eine Spannung und einen Strom habe, würde ich gerne die 
Phasendifferenz zwischen Strom und Spannung wissen.

Wie komme ich an diese Phasendifferenz?

Ich könnte natürlich die Zeit zwischen den Null-Durchläufen stoppen und 
pauschal mit der Freq. (50 Hz) verrechnen.

Aber geht es auch Mathematisch; und wenn ja wie ?

Vielen Dank

Gruß

Kamil
Gast #1208709
Hallo Kamil

<<<
Ich könnte natürlich die Zeit zwischen den Null-Durchläufen stoppen und
pauschal mit der Freq. (50 Hz) verrechnen.

Aber geht es auch Mathematisch; und wenn ja wie ?

<<<

Du brauchst wohl beides. Woher soll Matlab wissen, wie gross der versatz 
ist ? Das musst du wohl simulieren. Im uC kannst du dann z.B. den 
Versatz der Nulldurchgänge von Strom und Spannung herausmessen und damit 
dann die Wirkleistung und den Leistungsfaktor berechnen.

Gerhard
Gast #1209623
Mathematisch:

Du erzeugst dir per Software einen Sinus und einen Cosinus mit 50Hz.
Dann Sinus mit dem Spannungssignal multiplizieren und Tiefpassfiltern.
Dann Cosinus mit dem Spannungssignal multiplizieren und Tiefpassfiltern.

Arctangens(Sinusergebnis gefilter/Cosinusergebnis gefiltert) = 
Phasenwinkel zwischen Spannung und dem virtuellen Sinussignal.

Das gleiche mit dem Stromsignal machen. Dann hast Du den Phasenwinkel 
zwischen Strom und virtuellem Sinussignal.

Differenz aus beiden ist Phasenwinkel zwischen Strom und Spannung.

Der Vorteil dieser Methode: Man schaut nicht nur auf die Nulldurchgänge, 
sondern auf den ganzen Verlauf. Deshalb ist die Messung auch bei 
verzerrten Stromsignalen noch richtig.
Gast #1211845
Hallo pq,

Ich habe da ein kleines problem:

strom_messung : zwei perioden mit jeweils 512 werten gesampelt (1024 
werte)
spannung_messung : zwei perioden mit jeweils 512 werten gesampelt(1024 
werte)
sin_wert: zwei perioden mit jeweils 512 stüzpunkten(1024 werte)
cos_wert: zwei perioden mit jeweils 512 stüzpunkten(1024 werte)

dann jeweils (für strom und spannung)[das verstehe ich nicht]:

erg_s[1] = sin_wert[1]*strom_messung[1];
erg_c[1] = cos_wert[1]*strom_messung[1];

phi_1 = arctan(erg_s[1]/erg_c[1]);

?!?!?

Ein weiteres Gedanken-häppchen wäre nett :)

Danke
Gast #1212073
>Im uC kannst du dann z.B. den
>Versatz der Nulldurchgänge von Strom und Spannung herausmessen und damit
>dann die Wirkleistung und den Leistungsfaktor berechnen.

So den Leistungsfaktor zu ermitteln, geht schief, sobald der Strom von 
der Sinusform abweicht!

Besser ist Scheinleistung durch Wirkleistung zu rechnen.
Gast #1212096
<pedantic on>
PF = P / S
<pedantic off>

Ansonsten hat Matthias natürlich recht. Alternativ musst du die oben 
vorgeschlagenen Berechnungen bei nichtlinearen Verbrauchern für 
sämtliche signifikanten Harmonischen einzeln durchführen, also 50 Hz, 
100 Hz, ... 300 Hz usw.
Das dürfte aber die Rechenleistung deines DSP schnell sprengen, wenn du 
die Signale online (ohne Puffer) berechnen möchtest. Da sind etwa 10 kHz 
Samplerate sinnvoll, damit du pro Periode 200 Samples hast.
Für die Offline-Variante (mit Puffern) müsstest du die Puffer evtl. noch 
etwas größer machen, da die Filter etwas Zeit zum Einschwingen brauchen.

Was für eine Plattform + Entwicklungsumgebung setzt du ein?
Gast #1212229
Hallo zusammen,

@Alex

ich möchte das ganze erstmal simulieren mit matlab.

Später kann ich mir einen dsPIC o. einen Cortex M3 oder ähnliches 
vorstellen.
Je nachdem wieviele berechnungen durchgeführt werden müssen.


Gruß


Kamil

(heute abend werde ich mich mal anmelden...dann könnten wir emails 
austauschen :), falls jemand mit simulieren möchte)
#1212317
Ich hätte mal ne Idee, die ohne die ganzen Arrays auskommt und 
Frequenzunabhängig ist:

I: aktuelles stromsample
U: aktuelles spannungssample
Integral: Integral über ein bestimmtes Intervall, z.B. eine Sekunde 
(aufsummieren)
SPI: Samples pro Integrationszeitraum


Wirkleistung:
Integral(I*U) durch SPI

EffektivStrom:
sqrt((Integral(U^2) durch SPI)

EffektivSpannung:
sqrt((Integral(I^2) durch SPI)

Scheinleistung=Effektivspannung*Effektivstrom

Leistungsfaktor: Wirkleistung/Scheinleistung

"Aufwendige" Rechnungen Fallen nur einmal pro Intervall an.
Nulldurchganserkennung nicht zwingend notwendig.
Allerdings kann man nicht unterscheiden ob der Verbraucher kapazitiv 
oder induktiv ist.
Das schaft selbst n 8bitter ;-)

Erweiterung für Phasenwinkel:
Man könnte die Methode mit PQs Ansatz kombinieren und hätte den 
Phasenwinkel.
Stromwinkel:
arctan (Integral(Sinus*I)/SPI /Itegral(Cos*I)/SPI)
Spannungswinkel genauso,
Die Differenz ist die Winkelverschiebung zwischen beiden.
Wichtig: Wirkleistung=cos(phi)*Scheinleistung gilt nur wenn keine 
Oberwellen vorhanden sind, also nicht für Schaltnetzteile etc.
#1212737
Ich meinte mit den letzten zwei Zeilen meines Posts:

Blind- und Wirkleistung lassen sich mit der Methode bestimmen, aber die 
Angabe/Berechnung eines Winkels funktioniert nur, wenn die Blindleistung 
ihre Ursache in einer Verschiebung der Grundschwingung hat. 
Blindleistung kann auch durch Oberwellen "generiert" werden.
Mit der Integrationsmethode erhält man die komplette Blind- und 
Wirkleistungleistung unabhängig von der Frequenz, also auch die der 
erfassbaren (Nyquist!) Oberwellen.

Das Herausfiltern der Grundschwingung geschieht durch die Multiplikation 
mit Sinus und Cosinus (=Kreuzkorrelation). Die Oberwellen fallen dadurch 
raus und die Grundwelle bleibt übrig. Anschließen kann die 
Winkeldifferenz zwischen Strom und Spannung berechnet werden.
Gast #1214393
Schau dir mal die Bilder im Anhang an, das Verfahren habe ich bereits 
erfolgreich genutzt.
KI = 2  PI  N * 50 Hz
KP = 0.001 ... 1 (je nach gewünschter Dynamik, kleiner Werte liefern 
bessere Ergebnisse, Lastwechsel werden aber langsamer erkannt)
Angehängte Dateien:
Gast #1214396
Also für jeden interessanten Frequenzanteil einfach "in-phase" und 
"quadrature" Signale erzeugen und mit der Angegebenen Formel Blind- und 
Wirkleistung berechnen.
Gast #1218016
>ich möchte gerne ein kleines Netzanalysegerät in Matlab simulieren und
>gegebenfalls in einen DSP überführen.

>Es sollen:

>Strom
>Spannung
>Wirkleistung
>Blindleistung
>Scheinleistung
>Leistungsfaktor


Aber mal so in den Raum geworfen:

Sowas gibts doch schon fertig als IC.
Gast #1318053
Hallo Kamil,

ich stehe vor einem ähnlichen Problem.
Wie hast du das Ganze nun gelöst?
Ich muss jedoch zunächst nur Wirk / Blind und Scheinleistung aus dem 
Spannungs - und Stromverlauf berechnen....
Da scheint die Methode von Andreas R. recht simpel.
Funktioniert das auf diese Weise?

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.