Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
Hab wieder mal eine Frage.
Wenn ich denn FFt Baustein Betrag-Phase einsetze erhalte ich ja selbige Informationen.
Jetzt gebe ich ein Signal auf den Baustein. Wenn dieser mir für mein 50HZ Signal nun eine Phase von z.B. 50° anzeigt,
was kann ich dieser Information entnehmen? also ich meine was ist der Bezugspunkt für diese 50°.
Hier mal ein Bild dazu was ich meine..
Ein 150Hz Signal. In meinen FFT Ausgangscluster steht bei df=50 die zugehörige Phase also bei Index 3.
Nun erhalte ich die Anzeige: Phase = 165,9°. Worauf bezieht sich nun diese Gradanzeige.
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
Phase - Bezug?
Hallo,
das gibt Dir das "Phasenspektrum" als Array an.
Gruß Markus
-------------------------------------------------------------------------- Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
20.04.2007, 07:58 (Dieser Beitrag wurde zuletzt bearbeitet: 20.04.2007 08:12 von Lucki.)
Die kannst das Ergebnis der FFT entweder als Betrag und Phase oder als Cosinus- und Sinus- Komponente darstellen. Bei Phasenverschiebung Null hat man nur eine Cosinuskomponente. (Anmerkung: Bei COS/SIN-Darstellung erhält man ein einziges Array mit numerischen Werten vom Format komplex. Realteil ist der COS, Imaginärteil der SIN)
Du mußt Dir also die Komponente als Cosinusfunktion mit 165.9° Phasenverschiebnung vorstellen. Die 165.9° Phase müßte also genau mit dem Schwingungsmaximum zusammenfallen. Das stimmt aber bei Dir nicht genau, woran liegt das?
Für eine Fourieranalysse hast Du zwei Möglichkeiten.
a) Du nimmst als Zeitverlauf genau ein vollständige Periode oder ein Vielfaches davon.
b) Wenn das nicht möglich ist, dann brauchst Du möglichst viele Perioden und mußt mit Windowing (Hamming, Hanning) arbeiten.
Was Du analysierst, ist kein reiner Sinus, sondern ein Funktion mit Sprüngen im Signalverlauf, denn Du hast nicht genau drei Perioden, sondern etwas weniger. Der Sprung entsteht bei der Aneinanderreihung Deines Signalverlaufs-Ausschnittes zu einer unendlich langen Funktion. D.h. Das was man im Graphen sieht, ist nicht identisch mit der 3. Harmonischen, und deshalb die Diskrepanz.
20.04.2007, 09:31 (Dieser Beitrag wurde zuletzt bearbeitet: 20.04.2007 09:37 von Grobi.)
Soo, also das mit der Cosinusschwingung klingt ja schonmal nicht schlecht.
Ich erzähle kurz was zu dem Ablauf wie das ganze bei mir stattfindet.
Ich lese über die Soundkarte über beide Kanäle ein SIgnal ein.
Das 1. Signal ist die Netzspannung, also 50Hz.
Von diesem Signal stelle ich mittels Einzelfrequenzinformationen die Frequenz fest. Oh WUnder, 50Hz
Nun stelle ich den Nulldurchgang der Netzspannung fest.
Von diesem Punkt an, werden beide Signal mit der Länge 1/50Hz ausgeschnitten.
Das heisst, von 50Hz ist genau 1 Periode vorhanden, von 150Hz 3 und 450Hz 9.
Da die FFT, warum auch immer, aber schön dass es so ist, bei diesen 2 Signalausschnitten df genau auf 50Hz setzt,
habe ich nun die Möglichkeit aus meinem Amplituden und Phasenarray was ich erhalte, an den Stellen
1,3 und 9, genau diese Informationen zu den 3 Frequenzen auszulesen.
Du sagst ja es gibt die Möglichkeit der COS oder SIN Darstellung der Phase.
Wie kann ich dieses denn auf Sinus umschalten?
Die Netzspannung dient nur dazu einen Nullpunkt festzustellen an dem der Signalausschnitt beginnt.
Vom 2. SIgnal will ich halt dann die Phasen bestimmen. Mir wäre aber lieber wenn die Phase angezeigt würde
als Bezug zu einem Sinussignal gleicher Frequenz wie die der angezeigten Phase.
P.S. der gelbe Strich da oben im Bild zeigt nicht 165,9° an, sondern war nur ein angelegter Cursor.
Ich glaube das war etwas missverständlich.
EDIT:
Ich habe mal die Phase mit dem Baustein komplex -->Real/Im bearbeitet. Es steht dort allerdings nur etwas im Realteil, also Cosinus, und
im Imaginärteil steht immer 0, dies hätte ich am liebsten genau umgekehrt
' schrieb:Soo, also das mit der Cosinusschwingung klingt ja schonmal nicht schlecht.
Ich erzähle kurz was zu dem Ablauf wie das ganze bei mir stattfindet.
Ich lese über die Soundkarte über beide Kanäle ein SIgnal ein.
Das 1. Signal ist die Netzspannung, also 50Hz.
Von diesem Signal stelle ich mittels Einzelfrequenzinformationen die Frequenz fest. Oh WUnder, 50Hz
Nun stelle ich den Nulldurchgang der Netzspannung fest.
Von diesem Punkt an, werden beide Signal mit der Länge 1/50Hz ausgeschnitten.
Das heisst, von 50Hz ist genau 1 Periode vorhanden, von 150Hz 3 und 450Hz 9.
Da die FFT, warum auch immer, aber schön dass es so ist, bei diesen 2 Signalausschnitten df genau auf 50Hz setzt,
habe ich nun die Möglichkeit aus meinem Amplituden und Phasenarray was ich erhalte, an den Stellen
1,3 und 9, genau diese Informationen zu den 3 Frequenzen auszulesen.
Du sagst ja es gibt die Möglichkeit der COS oder SIN Darstellung der Phase.
Wie kann ich dieses denn auf Sinus umschalten?
sin(x)=cos(x-pi/2)
Zitat:Die Netzspannung dient nur dazu einen Nullpunkt festzustellen an dem der Signalausschnitt beginnt.
Vom 2. SIgnal will ich halt dann die Phasen bestimmen. Mir wäre aber lieber wenn die Phase angezeigt würde
als Bezug zu einem Sinussignal gleicher Frequenz wie die der angezeigten Phase.
(...)
Wie willste denn die Phasendifferenz zweier Signale bestimmen, wenn sie nicht die gleiche Frequenz haben?
Könntest natürlich intern einen Sinus mit 150Hz auf die 50Hz Netzfrequenz syncronisieren und dann mit deinem 2. Eingangssignal vergleichen.
Was machste aber wenn die Netzfrequenz mal schwankt und Du nur 49Hz oder 51Hz bekommst?
Welche Frequenzauflösung hat den Deine FFT?
Gruß, Rob
Bitte Beachten:
Die obenstehenden Texteile können unter Umständen Sarkasmus und Ironie enthalten, für nicht erkannten Sarkasmus oder nicht erkannte Ironie wird keine Haftung übernommen.
N.B.: "Multiple exclamation marks, " he went on, shaking his head, "are a sure sign of a deseased mind." - Terry Pratchett
20.04.2007, 10:46 (Dieser Beitrag wurde zuletzt bearbeitet: 20.04.2007 10:47 von Lucki.)
' schrieb:Nun stelle ich den Nulldurchgang der Netzspannung fest.
Von diesem Punkt an, werden beide Signal mit der Länge 1/50Hz ausgeschnitten.
OK, das gibt einen Sinus, und wenn Du davon FFT machst, dann darfst Du Dich doch nicht wundern, wenn die Harmonischen auch nur Sinuskomponenten enthalten. Das ist doch OK.
Zitat:Du sagst ja es gibt die Möglichkeit der COS oder SIN Darstellung der Phase.
Wie kann ich dieses denn auf Sinus umschalten?
Nein, ich habe gesagt es gibt gibt die Möglichkeit der "Betrag-Phase-Darstellung" und die der "Cos-Sin-Darstellung" (="Real-Imaginär-Darstellung")
Zitat:Die Netzspannung dient nur dazu einen Nullpunkt festzustellen an dem der Signalausschnitt beginnt.
Vom 2. SIgnal will ich halt dann die Phasen bestimmen. Mir wäre aber lieber wenn die Phase angezeigt würde
als Bezug zu einem Sinussignal gleicher Frequenz wie die der angezeigten Phase.
Die Fouriertransformation funktioniert aber nicht so, natürlich geht es, aber da ist Handarbeit angesagt. Ich würde an Deiner Stelle, nachdem ich die Nulldurchgänge festgestellt habt, die Waverform um eine Viertelperiode nach links rotieren, so daß man einen COS hat, und damit die FFT machen. Man hat dann Phasen um Null Grad bzw. Realteile statt Imaginärteile.
Jo, also ich habe glaube ich mein Problem gelöst...
Wenn ich auf den FFT Block ein Signal gebe das vorher ausgeschnitten wurde und die Länge 1/50Hz hat.
So wird das df vom FFT Baustein automatisch auf 50Hz gesetzt.
Die Phase die dann angezeigt wird, bezieht sich auf ein Cosinussignal mit ebenfalls 50Hz.
Schneide ich ein Signal aus das die Länge 1/150Hz hat, so wird mir die Phase angezeigt bezogen auf ein
Cosinussignal von 150Hz.
Es sieht also so aus, dass die Phase angezeigt wird, bezogen auf ein Cosinussignal von df des FFT Bausteines.
Ich mache es jetzt so.
Der Startzeitpunkt für den Signalausschnitt bleibt weiterhin der pos. Nulldurchgang der Netzspannung.
Nun schneide ich 3 Teile aus meinem 2. Signal aus mit jeweils dem gleichen Start, jedoch 3 verschiedenen Dauern.
Und zwar 1/50, 1/150 und 1/450.
Diese 3 Ausschnitte werden jeweils auf einen FFT Baustein gegeben.
df beträgt nun 50, 150 und 450Hz
In jedem Ausgangsarray steht nun an Index 1 die mich interessierende Phase.
Ich rechne dann das ganze auf einen Sinus um bei allen dreien.
Ich lasse mir alle 3 Signalausschnitte in einem Graphen anzeigen, daneben die ermittelte Phase, und siehe
da, es steht immer genau der pos. Nulldurchgang in Grad da.
Das mit der Netzspannung brauche ich für folgendes. Ich glaube das ist noch nicht richtig rübergekommen.
Wenn jetzt alle 3 Phasen 0° anzeigen bedeutet das der Strom ist rein ohmscher Art.
Wenn jetzt alle neg/pos. dabei herauskommen kann ich daraus deuten ob ein kap./ind. Strom vorliegt,
das ist eigentlich der Sinn der Sache..
Aber so funktioniert das eigentlich so wie ich das haben wollte.
P.S. Danke für eure Hilfe, das Forum is echt 1A!
Wenn ich hier mal fertig bin mit meinem Programm werde ich auch
weiterhin mal reinschauen, vielleicht kann ich ja einiges was ich hierbei
gelernt habe auch mal weitergeben.
Leider hab ich nochwas entdeckt was mir nicht einleuchtet..
Ich muss kurz ausholen um das Problem genau zu beschreiben.
Wie ihr ja wisst schneide ich mir ein Signal ab einem Zeitpunkt aus. Jetzt sollen ja 50, 150 und 450Hz Phasen angezeigt werden.
Wie oben beschrieben funktionerte das auch ja ganz gut mit einzelnen Sinussignalen.
Beispiel:
Ich lege ein 50Hz Sinussignal an, es wird mir angezeigt 130°, stimmt genau, dort liegt der pos. Nulldurchgang.
das funktioniert jetzt auch wenn ich ein 150 oder 450Hz Signal anlege.
Jetzt habe ich mir gedacht, ok du möchtest ja Mischsignale behandeln.
Also lege ich eine Rechteckspannung mit 50Hz an.
Das bedeutet ja, das bei 50Hz und den ungeraden Vielfachen jeweils Sinusschwingungen vorhanden sind.
Jetzt erhalte ich eine Menge Phaseninformationen, die sich ohne weiteres ja nicht so zuordnen lassen.
Also habe ich in Excel eine Tabelle gemacht, in der ich mir die einzelnen Frequenzen anzeigen lasse Y=sin(2*Pi*f*t+Phi)
Diese lasse ich jetzt in Diagrammen anzeigen.
Es sind zu sehen 50, 150, 250, 350 und 450Hz.
Wie man sieht sind bis auf die 50Hz alle in Phase, was ja auch korrekt ist, allerdings liegt die 50Hz Phase immer um das STück daneben was dort zu sehen
ist. Jetzt frage ich mich wie das zustande kommt.
Bei Einzelsignalen stimmen alle Phasen, bei einem rechtecksignal alle bis auf die 50Hz. Und bei einem Rechtecksignal müssen! alle in Phase sein...
Ich bin so langsam wirklich am verzweifeln...
Ich hänge auch mal das VI an, ihr werdet es so leider nicht nutzen können, aber grundsätzlich ist so der Aufbau ja zu sehen..
Davor mein Excel Ergebnis, was bis auf 50Hz halt stimmt...