Hallo Labviewforum,
ich brauch mal wieder eure Hilfe.
Im Moment erfasse ich über die RS-232 Schnittstelle kontinuierlich Messwerte von einer Wägezelle. Das funktioniert im Moment alles bestens.
Jetzt gehts aber darum diese Werte auch auszuwerten. Dazu möchte ich jetzt per FFT das Leistungsspektrum einer bestimmten Anzahl an Messwerten durchführen.
Bis jetzt mache ich es so das ich in ein neues Fenster wechsel und mir die letzten 1000 Werte in einem Array speicher und dort dann an das ExpressVI "Spektrum ermitteln" häng.
Nur das Ergebniss sieht nicht wirklich richtig aus.
Leider muss ich sagen das ich mich mit FFT nicht wirklich auskenn und nicht weiß was ich dort beachten muss damit dieser richtig arbeitet.
Deshalb jetzt meine Frage. Kann das überhaupt so gehen? Muss ich nicht eigendlich noch Frequenz und Abtastrate in die FFT-Berechnung einfliesen lassen? Wenn ja wo bekomm ich die den her?
Ich hab noch ein Bild angehängt das zeigt wie ich es gerade habe.
[
attachment=39887]
Danke schon mal für eure Hilfe,
Berdschi
Hallo Berdschi,
Zitat:Im Moment erfasse ich über die RS-232 Schnittstelle kontinuierlich Messwerte von einer Wägezelle.
In welchem Takt?
Zitat:Nur das Ergebniss sieht nicht wirklich richtig aus.
Laut deinem Bild sieht es doch gut aus. Sind aber auch nur die Beispieldaten des ExpressVIs zu sehen...
Zitat:Leider muss ich sagen das ich mich mit FFT nicht wirklich auskenn und nicht weiß was ich dort beachten muss damit dieser richtig arbeitet.
Du willst also mit einer Auswertefunktion arbeiten, ohne zu wissen, was/wie dort gemacht wird??? Lesen bildet...
Zitat:Muss ich nicht eigendlich noch Frequenz und Abtastrate in die FFT-Berechnung einfliesen lassen?
Nun ja, in deinem BD ist ja auch ein roter Punkt beim Signaleingang zu erkennen. Der hat eine Bedeutung!
Das ExpressVI erwartet auch eine Waveform ("Signalverlauf") - siehe da, der hat ja schon Informationen zum Sampling an Bord...
Zitat:Wenn ja wo bekomm ich die den her?
Von deiner Messwerterfassung...
hallo GerdW,
Zitat:In welchem Takt?
Meinst du die Übertragungsgeschwindigkeit? die kann ich selbst festlegen indem ich der Zelle einen Befehl mit der neuen Geschwindigkeit schick. Die sendet mir dann zum Beispiel 5 Werte pro Sek.
Zitat:Laut deinem Bild sieht es doch gut aus. Sind aber auch nur die Beispieldaten des ExpressVIs zu sehen...
jo ok. Hier mal ein Bild wie das Ergebnis aussieht. Das ist immer sehr ähnlich egal was ich für Werte anliegen hab.
[
attachment=39888]
Zitat:Nun ja, in deinem BD ist ja auch ein roter Punkt beim Signaleingang zu erkennen. Der hat eine Bedeutung!
Das ExpressVI erwartet auch eine Waveform ("Signalverlauf") - siehe da, der hat ja schon Informationen zum Sampling an Bord...
Hab das jetzt mal so versucht ändert aber leider auch nicht viel hab dann halt ne anderst skalierte x-Achse.
[
attachment=39890]
Hallo Berdschi,
was erwartest du von einer FFT, wenn du Werte mit 1Hz (wie im Bild) oder mit 5Hz (wie im Text genannt) samplest?
Manchmal hilft es wirklich, sich erst ein paar theoretische Grundlagen anzulesen...
Außerdem:
- Wie soll ich das FFT-Ergebnis bewerten, wenn ich das Ursprungssignal nicht kenne?
- Deine Plot-Einstellung ist eher verwirrend (mMn), kannst du nicht einen Standard-Linienplot einstellen?
Zitat:was erwartest du von einer FFT, wenn du Werte mit 1Hz (wie im Bild) oder mit 5Hz (wie im Text genannt) samplest?
Mhh ok stimmt. Die Werte von mir sind ja auch nicht bei 1Hz. Wie übergeb ich den der FFT-Funktion die Frequenz richtig?
Zitat:Manchmal hilft es wirklich, sich erst ein paar theoretische Grundlagen anzulesen...
ja schon ich hab mich auch in ein Buch eingelesen aber ich hab nicht so richtig verstanden was die mir da sagen wollten als dacht ich ich versuch es einfach mal
Zitat:Außerdem:
- Wie soll ich das FFT-Ergebnis bewerten, wenn ich das Ursprungssignal nicht kenne?
- Deine Plot-Einstellung ist eher verwirrend (mMn), kannst du nicht einen Standard-Linienplot einstellen?
Hab mal des Beispiel-VI drangehängt des machts glaub leichter
Hi Berdschi,
wo ist das VI?
Zitat:Wie übergeb ich den der FFT-Funktion die Frequenz richtig?
Die Frequenz legst du doch in deiner DAQ-Schleife fest? Dann musst du auch den passenden dT-Wert beim Waveform einstellen...
Oh sry vor lauter vergessen
[
attachment=39896]
DAQ-Schleife??
Meinst du damit die Schleife wo ich meine Werte einles.
Das passiert bei mir mittels VISA-Lesen. Les da so schnell es geht oder eben wenn Daten anliegen und die schreib ich dann direkt so in ein Array.
Die gewünschte Sample-Frequenz kannst du laut eigener Aussage deiner Wägezelle senden. Wie schnell du dann die Werte per RS-232 wirklich einliest, hat damit dann nichts mehr zu tun.
Wenn deine Wägezelle mit 1 Hz misst, dann musst du ein bei dt = 1 s einstellen, bei 5 Hz ist dt = 0,2 s. (Merke dt[s] = 1/Frequenz[Hz]).
Gruß, Jens