Medianfrequenz aus FFT Spektrum

Signal -erfassung, -verarbeitung und -ausgabe

Medianfrequenz aus FFT Spektrum

Postby dimitri84 on 16 Sep 2009, 10:58

Hallo zusammen!

Mein aktuelles "sub"-Problem befasst sich mit der Berechnung der Medianfrequenz (manche nennen sie auch Mittenfrequenz) aus einem FFT Frequenzspektrum. (Die Medianfrequenz ist genau die Frequenz, die die Fläche unterhalb eines Frequenzspektrums in 2 gleich große Teile teilt.) Mit MatLab (offline) war es kein Problem aber in LV bin ich mir sehr unsicher, weil ich nie sehe/verstehe wie mir die Daten grade zur Verfügung stehen.

Prinzipiell will ich folgendes umsetzten:
1) Signal kommt aus einer Datei (4 Kanäle, Sampling rate 1kHz)
2) FFT
3) Spektrum wird integriert (will ja die Fläche haben)
4) suche nach der Frequenz wo die halbe Fläche des Spektrums liegt

Frage zu:
1) Ich benutze die "Messwerte aus Datei lesen".vi ... wenn ich dort einstelle "Segmente bestimmter Größe abrufen: 512" ... muss ich mir das so vorstellen, dass ich dann fortlaufend Vektoren der Größe 4x512 bekomme ... und alle anschließenden VIs bekommen die Daten dann auch in solchen Paketen?
2) Wie mach ich das für meine Zwecke am besten? Ganz von Hand? Derzeit benutze ich: Signalverarbeitung -> Signalverlaufsmessungen -> Spektrummessung.vi ... muss ich da bei den Einstellungen was bestimmtes beachten?
4) Mache ich das richtig in meiner hochgeladenen mf_sub.vi? (Glaub ich nämlich nicht.)

Beitrag auch im LVF http://www.labviewforum.de/Medianfrequenz-aus-einem-FFT-Spektrum-berechnen-t14141.html

mf.vi
(168 KiB) Downloaded 184 times


mf_sub.vi
(36.99 KiB) Downloaded 154 times


daten.zip
(993.74 KiB) Downloaded 141 times


Danke.
dimitri84
beginner
beginner
 
Posts: 29
Joined: 10 Sep 2009, 10:28
LabVIEW Version: 8.2
Karma: 0

Re: Medianfrequenz aus FFT Spektrum

Postby Eugen Graf on 16 Sep 2009, 13:33

1) Hätte ich auch erwartet, aber es scheint nicht so zu sein. Es liest die ersten 512, danach kommt nichts mehr. Keine Ahnung was man da machen kann. Ich benutze zum Glück keine Express VIs.
2) Ich würde noch die Mittelung ausschalten. Ausserdem musst du wissen, was RMS bedeutet, eventuell noch nachrechnen um auf die richtige Amplitude zu kommen.
3) Scheint Ok zu sein, aber ich vermute es gibt bestimmt schon was fertiges in :labview:
User avatar
Eugen Graf
guru
guru
 
Posts: 6502
Joined: 13 Nov 2007, 02:20
Location: Saarbrücken
Medals: 4
Activity (1) Professionalism (1) Silver (1) Black (1)
LabVIEW Version: 2009
Karma: 303
CLAD I/O VIP bloggers internet

Re: Medianfrequenz aus FFT Spektrum

Postby dimitri84 on 16 Sep 2009, 14:12

Also wenns mal läuft kommen die Daten von "DAQmx lesen" und nicht aus der Express VI. Da lässt sich die number of samples ja eindeutig einstellen und das stimmt dann auch wirklich.

eg wrote:Es liest die ersten 512, danach kommt nichts mehr.


Wie hast du das überprüft? bzw. Wie kann man sich das anzeigen lassen?


ansonsten: balschoja spasiba!
dimitri84
beginner
beginner
 
Posts: 29
Joined: 10 Sep 2009, 10:28
LabVIEW Version: 8.2
Karma: 0

Re: Medianfrequenz aus FFT Spektrum

Postby Eugen Graf on 16 Sep 2009, 14:29

dimitri84 wrote:Wie hast du das überprüft? bzw. Wie kann man sich das anzeigen lassen?


Ich glaube das hast du schon mal gefragt:
viewtopic.php?f=79&t=1422

Ansonsten schalte die gelbe Lampe ein, dann siehst du im Block Diagramm, dass es nur bei der ersten Iteration etwas ausgibt, danach sind die Signale leer.
User avatar
Eugen Graf
guru
guru
 
Posts: 6502
Joined: 13 Nov 2007, 02:20
Location: Saarbrücken
Medals: 4
Activity (1) Professionalism (1) Silver (1) Black (1)
LabVIEW Version: 2009
Karma: 303
CLAD I/O VIP bloggers internet

Re: Medianfrequenz aus FFT Spektrum

Postby dimitri84 on 16 Sep 2009, 17:23

Ja über die Größe des array bekomme ich die 4, weil 4 Kanäle (das habe ich auch schon gefragt, stimmt). Aber keine Ahnung wie ich an die tatsächliche Länge der Segmente (die 512) komme. Würde das auch gerne überprüfen, denn in den Diagrammen siehts so aus als ob immer nur 500 Werte ankommen.

Machstn super job hier eg!
dimitri84
beginner
beginner
 
Posts: 29
Joined: 10 Sep 2009, 10:28
LabVIEW Version: 8.2
Karma: 0

Re: Medianfrequenz aus FFT Spektrum

Postby Eugen Graf on 16 Sep 2009, 17:33

Du bekommst ja vom VI Array Size ein Array. Im ersten Element steht 4 und im zweiten 512.
User avatar
Eugen Graf
guru
guru
 
Posts: 6502
Joined: 13 Nov 2007, 02:20
Location: Saarbrücken
Medals: 4
Activity (1) Professionalism (1) Silver (1) Black (1)
LabVIEW Version: 2009
Karma: 303
CLAD I/O VIP bloggers internet

Re: Medianfrequenz aus FFT Spektrum

Postby dimitri84 on 29 Sep 2009, 11:11

Hallo Eugen,

ich würde gerne mit einer senkrechten Linie die Medianfrequenz im Spektrum markieren. Muss ich mir dazu selbst nen entsprechenden Vektor bauen und den dann mit dem Spektrum zusammen in den Graphen schicken oder gibts da was fertiges? Habe dazu nix in der Hilfe gefunden ...

Gruß dimitri
dimitri84
beginner
beginner
 
Posts: 29
Joined: 10 Sep 2009, 10:28
LabVIEW Version: 8.2
Karma: 0

Re: Medianfrequenz aus FFT Spektrum

Postby Eugen Graf on 29 Sep 2009, 11:15

Du kannst einen Cursor benutzen (einstellbar in den Eigenschaften des Plots).
User avatar
Eugen Graf
guru
guru
 
Posts: 6502
Joined: 13 Nov 2007, 02:20
Location: Saarbrücken
Medals: 4
Activity (1) Professionalism (1) Silver (1) Black (1)
LabVIEW Version: 2009
Karma: 303
CLAD I/O VIP bloggers internet

Re: Medianfrequenz aus FFT Spektrum

Postby dimitri84 on 30 Sep 2009, 15:30

Ich finde das nicht was du meinst. Also ich will programmatisch Linien (bis zu 4 Stück) in einen Signalverlaufsgraph zeichnen. Höhe und Dicke am besten einstellbar. Ich habe das gesamte Kontextmenue der Eigenschaftsknoten durchsucht aber da ist nix mit Cursorn.

eknoten.png


Wo sind da die Eigenschaften des plots?
dimitri84
beginner
beginner
 
Posts: 29
Joined: 10 Sep 2009, 10:28
LabVIEW Version: 8.2
Karma: 0

Re: Medianfrequenz aus FFT Spektrum

Postby Eugen Graf on 30 Sep 2009, 15:39

Hier
Attachments
eknoten.png
User avatar
Eugen Graf
guru
guru
 
Posts: 6502
Joined: 13 Nov 2007, 02:20
Location: Saarbrücken
Medals: 4
Activity (1) Professionalism (1) Silver (1) Black (1)
LabVIEW Version: 2009
Karma: 303
CLAD I/O VIP bloggers internet

Re: Medianfrequenz aus FFT Spektrum

Postby dimitri84 on 30 Sep 2009, 15:57

Meinst du da jetzt die Graphen Palette oder Achsenlegende? Damit kann ich dann zwar selber im Graphen rumzoomen usw. aber ich will ja, dass das Programm die errechneten Medianfrequenzen einzeichnet. Diese Balken sollen dann in Echtzeit während des Sichverlaufs aktualisiert werden.

spek.png
dimitri84
beginner
beginner
 
Posts: 29
Joined: 10 Sep 2009, 10:28
LabVIEW Version: 8.2
Karma: 0

Re: Medianfrequenz aus FFT Spektrum

Postby Eugen Graf on 30 Sep 2009, 16:03

Welche Art des Plots benutzt du?
Chart, Graph oder Plot?
User avatar
Eugen Graf
guru
guru
 
Posts: 6502
Joined: 13 Nov 2007, 02:20
Location: Saarbrücken
Medals: 4
Activity (1) Professionalism (1) Silver (1) Black (1)
LabVIEW Version: 2009
Karma: 303
CLAD I/O VIP bloggers internet

Re: Medianfrequenz aus FFT Spektrum

Postby dimitri84 on 30 Sep 2009, 16:05

in der deutschen Version heißt es "Signalverlaufsgraph"

mein Betreuer hier hat es damals so gemacht, dass es sich nen Vektor gebastelt hat mit: 000000000000000000000110000000000000000000
und diesen Vektor dann mit dem Spektrum in der Graph gejagt hat. Hat aber nicht so super funktioniert, weil 3 von 4 Kanälen da auf der Strecke geblieben sind.
Last edited by dimitri84 on 30 Sep 2009, 16:09, edited 1 time in total.
dimitri84
beginner
beginner
 
Posts: 29
Joined: 10 Sep 2009, 10:28
LabVIEW Version: 8.2
Karma: 0

Re: Medianfrequenz aus FFT Spektrum

Postby Eugen Graf on 30 Sep 2009, 16:08

Ok, erstens musst du zwei Cursors erstellen. Danach kannst du im Programm die Positionen der Cursors beliebig setzen.
Attachments
Cursors.png
User avatar
Eugen Graf
guru
guru
 
Posts: 6502
Joined: 13 Nov 2007, 02:20
Location: Saarbrücken
Medals: 4
Activity (1) Professionalism (1) Silver (1) Black (1)
LabVIEW Version: 2009
Karma: 303
CLAD I/O VIP bloggers internet

Re: Medianfrequenz aus FFT Spektrum

Postby dimitri84 on 30 Sep 2009, 16:14

den Reiter Cursors hab ich leider nicht ... LV8.2

eigenschaften.png


nach Skalierung kommt noch Dokumentation und Datenbindung
dimitri84
beginner
beginner
 
Posts: 29
Joined: 10 Sep 2009, 10:28
LabVIEW Version: 8.2
Karma: 0

Next

Return to Signalverarbeitung

Who is online

Users browsing this forum: No registered users and 1 guest

cron