LabVIEWForum.de
A-Filter selber programmieren - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Grafik & Sound (/Forum-Grafik-Sound)
+---- Thema: A-Filter selber programmieren (/Thread-A-Filter-selber-programmieren)

Seiten: 1 2 3 4


A-Filter selber programmieren - dbuckl - 01.04.2015 10:42

Hallo Leute,

versuche gerade ein A-Bewertungsfilter selbst zu programmieren da dieses Sound & Vibrations Toolkit einfach zu teuer ist und ich nur dieses eine VI davon bräuchte.

Zur Berechnung habe ich diese Formel HIER (Berechnung der Bewertungsfilter-Kurven) gefunden.

Das ganze habe ich in Labview nachgebaut, doch jetzt weiß ich nicht wie ich das mit meinem Sinussignal bzw. mit meiner Fourier Transformation verknüpfen soll.

Der Gedanke war die einzelnen Frequenzanteile meines Signals das SubVI AFilter.vi durchlaufen zu lassen, quasi Frequenz für Frequenz und die Ergebnisse also die Amplituden wieder in ein Amplitudensprektrum anzeigen zu lassen. Das ganze wollte ich wie bei z.B. Punkt für Punkt mittelung mit einer For-Schleife ablaufen lassen.

Im Anhang findet Ihr ein Bild wie ich mein jetziges Spektrum aus der FFT bekomme und das SubVI

Vill könnt ihr mir einen Tipp geben wie ich eine passende Eingangsgröße für das SubVI "extrahieren" kann Blush ?

Gruß Domi


RE: A-Filter selbser programmieren - GerdW - 01.04.2015 10:51

Hallo Domi,

wenn schon CompoundArithmetik, dann doch komplett:
[attachment=52705]

Zitat:wie ich das mit … meiner Fourier Transformation verknüpfen soll
Du kannst dir doch schon einen kompletten Frequenzgang berechnen, am besten schon mit dem df deiner FFT. Dann kannst du beide Frequenzgänge einfach miteinander verrechnen…


RE: A-Filter selbser programmieren - dbuckl - 01.04.2015 11:03

Ok danke das mit dem CompoundArithmetik für alle "*" schaut echt ordentlicher aus.

Bei dem rest bin ich mir nicht ganz sicher ob ich dich richtig verstehe. Du meinst ich soll aus dem SubVI auch erst mal einen Frequenzgang erzeugen also eine Bewertungskurve die ich dann mit meinem jetzigen Spektrum multipliziere?

Ich verstehe nur nicht ganz was man hier als Eingang nimmt? die Grundfrequenz? die gemessene ist ja wiederum mit einigen anderen Störfreq überlagert.

Oder liege ich ganz falsch Blink ?

EDIT: Aber mit dem jetzigen CompoundArithmetik stimmt die Formel nicht mehr oder täusche ich mich? das "geteilt" ist hier weggefallen


RE: A-Filter selbser programmieren - jg - 01.04.2015 11:26

(01.04.2015 11:03 )dbuckl schrieb:  EDIT: Aber mit dem jetzigen CompoundArithmetik stimmt die Formel nicht mehr oder täusche ich mich? das "geteilt" ist hier weggefallen
Schon die "Invertieren Punkte" am Eingang beachtet?!

Gruß, Jens


RE: A-Filter selber programmieren - GerdW - 01.04.2015 11:33

Hallo domi,

Zitat:Du meinst ich soll aus dem SubVI auch erst mal einen Frequenzgang erzeugen also eine Bewertungskurve die ich dann mit meinem jetzigen Spektrum multipliziere?
Ja. Warum ständig erneut eine Rechnung aufrufen, wenn man den Frequenzgang auch einmalig berechnen kann.
Wichtig dabei nur: bei deiner FFT weißt du ja vorher die Anzahl der Samples und das df. Da wäre es dann sinnvoll, den Frequenzgang genau darauf abzustimmen, das vereinfacht die späteren Berechnungen ungemein…


RE: A-Filter selber programmieren - dbuckl - 01.04.2015 11:49

Danke für die Hilfe, das werde ich gleich mal probieren

Ich wusste gar nicht das es diese "Invertieren" Funktion gibt Angel wieder was gelernt. Super!


RE: A-Filter selber programmieren - GerdW - 01.04.2015 13:58

Hallo domi,

mal ein Vorschlag zur Rumspielen…


RE: A-Filter selber programmieren - Lucki - 01.04.2015 15:29

Die Vorgehensweise ist eigentlich unelegant. Mit den Filterformeln kann man unmittelbar analoge Filter dimensionieren. Für ein digitales Filter müsste man die Koeffizentent umrechnen in z-Koeffizienten. Das kann man von Hand machen (- früher habe ich das mal gekonnt Big Grin -), oder man nimmt ein Programm. In Labview gibt es dafür ein VI - es ist allerdings nur im "Verification Toolkit" drin. Mein Programm, welches ich dafür habe, ist im Moment nicht installiert, sonst hätte ich die Koeffizienten hier gepostet.

Aber so geht es notfalls auch. Allerdings sind mir die von euch verwendeten Formeln suspekt, die Ergebnisse von Gerd weichen dementsprechend ab. Zuverlässig sind hingegen die Polynome von Wikipedia, damit kommen genau die richtigen Kurven heraus. Habs mal gemacht:
[attachment=52709]
[attachment=52716]


RE: A-Filter selber programmieren - dbuckl - 02.04.2015 08:01

Vielen Dank ihr seid die Besten habe gestern noch lange gerätselt wie ich das ganze in einen XY-Graphen bekomme.

@GerdW: Kann dein Beispiel leider nicht öffnen da ich hier nur lv2010 habe Confused. Sry ich hatte im Profil noch 2013 da ich das Zuhause verwende, habs aber jetzt geändert.


RE: A-Filter selber programmieren - GerdW - 02.04.2015 08:04

Hallo domi,

es geht doch nichts über korrekte Profil-Angaben! Smile

Zitat:habe gestern noch lange gerätselt wie ich das ganze in einen XY-Graphen bekomme.
Kontexthilfe zum XY-Graph anschauen: da steht, wie man Plots erstellt…