12.07.2010, 14:42
(Dieser Beitrag wurde zuletzt bearbeitet: 12.07.2010 14:43 von dimitri84.)
|
dimitri84
Astronaut
Beiträge: 1.496
Registriert seit: Aug 2009
2020 Developer Suite
2009
DE_EN
53562
Deutschland
|
0 Durchgangserkennung (mit Interpolation)
' schrieb:Ja genau. Ich weiß nicht wie das Verfahren genau heißt, aber so wird es (wesentlich komplizierter, da sie schneller reagieren müssen) in Wechselrichtern gemacht.
Du suchst einfach die 0 Durchgänge (interpolierst das Singal am 0-Durchgang) hast damit die Periodendauer und somit deine Frequenz.
Es ist ein relativ simples Verfahren zur Frequenzbestimmung.
Du schreibst aber ein LabVIEW Programm und baust keinen Wechselrichter. Außerdem funktioniert das so nur mit einem monochromen Signal ...
Zitat:Mir ist nicht ganz klar wie ich das mit einer FFT machen soll.
Wie soll ich da mit einer FFT beikommen?
Ist ein tolles Thema zum googeln oder auch für die Forumsuche hier. Was studierst du denn?
Wenn du ein VI samt Fragen hast, immer her damit. Aber wir fangen hier grundsätzlich nicht bei Adam und Eva an!
Gruß dimitri
„Sag nicht alles, was du weißt, aber wisse immer, was du sagst.“ (Matthias Claudius)
|
|
|
13.07.2010, 15:15
(Dieser Beitrag wurde zuletzt bearbeitet: 13.07.2010 15:19 von Lucki.)
|
Lucki
Tech.Exp.2.Klasse
Beiträge: 7.699
Registriert seit: Mar 2006
LV 2016-18 prof.
1995
DE
01108
Deutschland
|
0 Durchgangserkennung (mit Interpolation)
' schrieb:Ja genau. Ich weiß nicht wie das Verfahren genau heißt, aber so wird es (wesentlich komplizierter, da sie schneller reagieren müssen) in Wechselrichtern gemacht.
Du suchst einfach die 0 Durchgänge (interpolierst das Singal am 0-Durchgang) hast damit die Periodendauer und somit deine Frequenz.
Es ist ein relativ simples Verfahren zur Frequenzbestimmung.
Wenn du von jeder einzelnen hinereinanderfolgenden Periode die Dauer wissen willst (- ich weiß zwar nicht, warum Du das so haben willst und was Du mit den unendlich vielen anfallenden Werten machen willst, aber das ist hier nicht mein Problem -), dann geht das mit Fourier natürlich nicht, und Dein eingeschlagener Weg wäre im Prinzip richtig.
Natürlich könnte man durch Interpolation den Fehler von aktuell 0,25Hz entscheidend verringern, nur ist das Programm dann aufwendiger als die folgende supereinfache Methode:
Auf den Array die Funktion "rationales Neuabtasten" anwenden. Bei Upsamling werden Zwischenwerte interpoliert, bei Faktor 100 hätte das Array denn pro Periode 20000 Werte statt 200, der Fehler würde sich um Faktor 100 auf 0.0025 Hz verringern. Das VI bietet übrigens auch die Möglichkeite, Glättungfilter zu verwenden - wichtig bei Messwerten aus der realen Außenwelt.
(Der Memory-Verbrauch ließe sich durch stückweises Analysieren des Arrays beliebig verringern)
|
|
|
14.07.2010, 10:35
|
eMKay
LVF-Grünschnabel
Beiträge: 33
Registriert seit: Jul 2010
8.6 Student
2009
de
Deutschland
|
0 Durchgangserkennung (mit Interpolation)
@dimitri84
Ich studiere Elektrotechnik.
Ich weiß auch wie eine fft funktioniert, aber ich verstehe (immernoch) nicht wie mir das bei meinem speziellen Problem
helfen kann. Die Threads zu Frequenz+FFT hatte ich gelesen, aber mein Problem ist doch etwas anderes und ich konnte nichts aus den VIs für mich verwenden.
Versteh mich nicht falsch, ich will nicht unbedingt an meine 0-Durchgangsmethode festhalten, ich sehe nur nicht wie ich es auf eine andere Art und Weise lösen kann.
@Lucki
Ich brauche die Frequenz für jede gemessene Periode, weil die Din-Norm das für die Berechnung so vorschreibt, das ist nicht auf meinem Mist gewachsen
Ich spiele seit heute morgen etwas mit der "rationales neuabtasten" Vi rum, kann bisher aber noch nicht sagen ob das zum Erfolg führt. Momentan verschiebt er mir erstmal meinen Sinus um .. schwer zu sagen.. Pi/2?
Das Array der "rationales neuabtasten"vi startet also bei knapp -1 anstatt bei 0.
Ich habe derweil auch eine ziehmlich simple lineare Interpolation realisiert (noch mit einigen kleinen Problemen), bin aber von der Genauigkeit nicht ganz überzeugt, vlt schaffe ich es heute mal (wenn ich etwas Luft habe) was hochzuladen.
Ich weiß es ist immer doof sich nur theoretisch über etwas zu unterhalten.
|
|
|
14.07.2010, 10:55
|
dimitri84
Astronaut
Beiträge: 1.496
Registriert seit: Aug 2009
2020 Developer Suite
2009
DE_EN
53562
Deutschland
|
0 Durchgangserkennung (mit Interpolation)
' schrieb:Versteh mich nicht falsch, ich will nicht unbedingt an meine 0-Durchgangsmethode festhalten, ich sehe nur nicht wie ich es auf eine andere Art und Weise lösen kann.
Du willst die 50Hz der Netzspannung darstellen: Ganz einfach, du schickst dein Signal in ein FFT VI, bekommst ein Spektrum und bei 50Hz sollte dann ein Peak sein.
Hab jetzt daheim grad kein Beispielspektrum.
„Sag nicht alles, was du weißt, aber wisse immer, was du sagst.“ (Matthias Claudius)
|
|
|
14.07.2010, 13:44
|
eMKay
LVF-Grünschnabel
Beiträge: 33
Registriert seit: Jul 2010
8.6 Student
2009
de
Deutschland
|
0 Durchgangserkennung (mit Interpolation)
@Dimitri
Ich habe Beispiel VIs dazu gefunden, aber da ist immer ein kontinuierlich anliegendes Signal vorhanden.
In meinem Fall habe ich ja "nur" die gesampelten Werte in einem Array stehen und ich sehe da ein gewisses Problem,
da ich ja nicht genau sagen kann wieviele Werte ich in die FFT schicke um die Frequenz für jede Periode zu bestimmen, wenn ich das wüsste hätte ich die Frequenz ja schon.
|
|
|
14.07.2010, 15:39
|
dimitri84
Astronaut
Beiträge: 1.496
Registriert seit: Aug 2009
2020 Developer Suite
2009
DE_EN
53562
Deutschland
|
0 Durchgangserkennung (mit Interpolation)
Meine Vermutung: Du hast beim Thema FFT gepennt.
Meine Empfehlung: Lese dir die Theorie dazu nochmal durch.
Mein Angebot: Lad' deine Abtastwerte hier hoch (z.B als Standardwerte in einem Control) und ich zeig' dir wie man das Frequenzspektrum dazu berechnet.
Gruß dimitri
PS: Vorausgesetzt ich habe richtig verstanden worauf du hinaus willst.
' schrieb:Ja, aber mich interessiert wie gesagt nur die Grundschwinung, sprich der Netz-sinus.
„Sag nicht alles, was du weißt, aber wisse immer, was du sagst.“ (Matthias Claudius)
|
|
|
14.07.2010, 16:37
|
Lucki
Tech.Exp.2.Klasse
Beiträge: 7.699
Registriert seit: Mar 2006
LV 2016-18 prof.
1995
DE
01108
Deutschland
|
0 Durchgangserkennung (mit Interpolation)
' schrieb:Ich brauche die Frequenz für jede gemessene Periode, weil die Din-Norm das für die Berechnung so vorschreibt, das ist nicht auf meinem Mist gewachsen
Auf welche DIN-Norm beziehst Du dich hier?
Zitat:Ich spiele seit heute morgen etwas mit der "rationales neuabtasten" Vi rum, kann bisher aber noch nicht sagen ob das zum Erfolg führt. Momentan verschiebt er mir erstmal meinen Sinus um .. schwer zu sagen.. Pi/2?
Das Array der "rationales neuabtasten"vi startet also bei knapp -1 anstatt bei 0.
Mitr dieser Beschreibung kann niemand etwas anfangen. Mit eine geposteten VI ließe sich das alles schnell aufklären. Auch in deinem ersten Posting hast Du dem VI "Nullduchgangs Erkennung" Fehler nachgesagt, die sich nicht verifizieren lassen, weil das zugehörige VI fehlt. Die Folge ist, daß Dir auch niemand mit einem beigefügtem VI antwortet. Der Thread wird zwar lang, belibt aber letztlich immer im Umverbindlichen und man ist am Ende so schlau wie zuvor.
|
|
|
15.07.2010, 13:39
(Dieser Beitrag wurde zuletzt bearbeitet: 15.07.2010 13:47 von dimitri84.)
|
|
|
15.07.2010, 14:25
(Dieser Beitrag wurde zuletzt bearbeitet: 15.07.2010 14:27 von Lucki.)
|
Lucki
Tech.Exp.2.Klasse
Beiträge: 7.699
Registriert seit: Mar 2006
LV 2016-18 prof.
1995
DE
01108
Deutschland
|
0 Durchgangserkennung (mit Interpolation)
@Dimitiri
wie schon gesagt, halte ich die FFT-Methode hier nicht für geignet.
Man müßte die FFT über viele Schwingungen machen, denn zwischen Frequenzraster df und Beobachtungszeit T eines Signalabschnittes, über den die FFT gemacht wird, gibt es die Beziehung df = 1/T.
Für eine Genauigkeit des Frequenzrasters von 0.01 Hz braucht man also ein Beobachtungszeit von 100sec = 5000 Schwingungen. Und natürlich ist es damit absolut unmöglich. die Frequenz einer Einzelschwingung zu messen. Das geht nur mit Nullduchgansbestimmung, d.h es gibt keine Alternative zu dem von Emkay bereits vorgezeichneten Weg.
In Deinem Beispiel ist das Frequenzraster df=1 Hz. Die Ausgangsprobelm von Emkay war aber gerade, daß die von ihm erreichte Genauigiet von 0.25Hz nicht genügte, und daß er die umgerechnete Frequenz für jede Einzelperiode innerhalb der Messzeit bestimmen wollte.
Wenn also Emkay wegen diese Vorschlages skeptisch war, dann liegt es nicht daran, daß er bei FFT in der Schule "gepennt" hat (was man aber trotzdem nicht ausschließen kann ), sondern weil diese Skepsis tatsächlich begründet ist
|
|
|
| |