Ankündigung

Einklappen
Keine Ankündigung bisher.

Aus Boxsim-Datei Impulsantwort für Wasserfalldiagramm berechnen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • ChPuls
    Registrierter Benutzer
    • 17.01.2002
    • 736

    Aus Boxsim-Datei Impulsantwort für Wasserfalldiagramm berechnen

    Hallo,

    Ich habe folgendes Problem:
    Ich möchte aus einer Boxsim-Datei bestehend aus Amplitude und Phase die Impulsantwort berechnen.
    Ich brauche die Impulsantwort für die Erstellung eines Wasserfalldiagramms.

    Ich weiß, man braucht dafür eine inverse Fourier-Transformation.
    Ebenso weiß ich, die Amplitude müsste delogarithmiert werden.

    Ist die Amplitude der reale und die Phase der imaginäre Teil?
    Muss nicht die Phase auch noch aufbereitet werden?
    Wie baut man die Frequenzpunkte bzw. Auflösung der Abtastung mit ein?
    Was ist der Faktor "j" in der gängigen Formel?

    Kann mir jemand helfen?
    Ich kenne mich damit überhaupt nicht aus.
    Zuletzt geändert von ChPuls; 09.06.2013, 07:06.
    Christian Puls
  • Violoncello
    Registrierter Benutzer
    • 11.07.2010
    • 641

    #2
    Was du vorhast geht natürlich, auch wenn sich mir der Sinn nicht ganz erschließt.

    Wie du richtig vermutet hast, benötigst du die inverse Fourier-Transformaton, genauer ausgedrückt die IDFT.

    http://de.wikipedia.org/wiki/Diskret...mplexen_Vektor

    Die Zweite Formel.

    Zu der Wikipedia-Notation, mit der ich nicht ganz glücklich bin:
    N ist die Anzahl der Stützstellen (im Zeit- und Frequenzbereich identisch). Die Wahl von N bestimmt also deine zeitliche Auflösung.
    i ist die imaginäre Einheit
    j ist (in diesem Fall!!, normalerweise wird das j in der Signalverarbeitung als imaginäre Einheit verwendet) der Zählindex im Frequenzbereich
    k ist der Zählindex im Zeitbereich
    a_k sind deine zeitlichen Stützstellen
    a_j sind deine Frequenz-Abtastpunkte

    Zunächst musst du dir eine gewissen Anzahl an äquidistanten Frequenzstützstellen aus deinem Spektrum heraussuchen. Der Frequenzabstand dieser Stützstellen bestimmt dabei umgekehrt proportional die Länge der resultierenden Impulsantwort.
    Beispiel: Frequenzabstand 100 hz -> Impulsantwort ist 1 ms lang.

    Das Spektrum kannst du der Einfachheit halber auf 0 dB normieren, macht die Zahlen die dabei rauskommen schöner.
    Jede deiner Stützstellen musst du in komplexer Form darstellen. Am einfachsten geht das über die Polarform. Dabei ist r die Amplitude, i wieder die imaginäre Einheit und \phi der Phasenwinkel, in Radians.

    Wie du siehst, werden das schnell sehr viele Stützstellen, insbesondere wenn du eine anständige zeitliche Auflösung erhalten willst. Für jede dieser Stützstellen musst du die IDFT-Summe auswerten und erhälst in der Folge einen Vektor mit deinen zeitlichen Stützstellen. Von Hand ist das, wie du dir wohl denken kannst, kaum machbar. Von daher ist der Beitrag bis zu diesem Punkt rein zum Verständnis da.

    Wenn du das wirklich ernsthaft machen willst, dann arbeite dich in Matlab oder die kostenlose Alternative Octave ein, das hat alles was du brauchst fertig eingebaut. (ifft mal als Stichwort). Das geht allemal schneller, als die Summen manuell auszuwerten .

    Kommentar

    • ChPuls
      Registrierter Benutzer
      • 17.01.2002
      • 736

      #3
      Danke, Violoncello,
      Zitat von Violoncello Beitrag anzeigen
      Was du vorhast geht natürlich, auch wenn sich mir der Sinn nicht ganz erschließt.
      Ich habe schon oben erwähnt, dass ich die Impulsantwort brauche, um in Arta
      das Auschwingverhalten einer Box als Wasserfalldiagramm zu berechnen.

      Zitat von Violoncello Beitrag anzeigen
      Wenn du das wirklich ernsthaft machen willst, dann arbeite dich in Matlab oder die kostenlose Alternative Octave ein, das hat alles was du brauchst fertig eingebaut. (ifft mal als Stichwort). Das geht allemal schneller, als die Summen manuell auszuwerten .
      Du hast Recht.
      Ich habe mir schon Octave angeschaut.

      Der Befehl IFFT gibt mir aber noch Rätsel auf:

      http://octave.sourceforge.net/commun...tion/ifft.html

      Was soll "dim" sein?
      Und wie baut man jetzt wieder die Frequenzpunkte bzw. die Abtastung mit ein?

      Violoncello,
      Kannst Du mir noch weiter helfen?
      Christian Puls

      Kommentar

      • Violoncello
        Registrierter Benutzer
        • 11.07.2010
        • 641

        #4
        Die Funktion ifft ist erstmal kein Problem. Die braucht nur einen Parameter, n und dim sind optional. Du musst also wirklich nur einen Vektor mit allen Frequenzabtastpunkten übergeben.

        Die korrekte Erzeugung desselben ist die eigentliche Herausforderung, sollte aber mit genügend Zeit und dem Internet zu machen sein.
        Du müsstest deine Frequenzgänge aus Boxsim exportieren, dann in Octave einlesen, parsen (textread), bearbeiten (z.b. Betrag&Phase -> komplexer Frequenzabtastpunkt) und äquidistant interpolieren. Möglicherweise (vermutlich) gibts für Letzteres sogar eine Funktion in Octave, die ich aber nicht kenne.

        Dann das Ergebnis korrekt interpretieren, indem du eine äquidistante Zeitskala über die Werte legst, wobei die Gesamtdauer der Antort 1/[Frequenzabstand bei der spektralen Abtastung] entspricht.

        Ich möchte nachschieben, dass ich das alles selbst nie probiert habe und selber gerade erst im Rahmen der Uni Octave lerne. Alles was ich von mir gebe daher ohne Garantie auf Erfolg .

        Kommentar

        • fabi
          Registrierter Benutzer
          • 05.01.2008
          • 1472

          #5
          ja, geht aber nicht trivial, wenn man sowas noch nie gemacht hat. Nutze nicht Octave, das ist ein Albtraum. Freemat ist viel freundlicher und kann alles was du brauchst.

          http://freemat.sourceforge.net/help/...nterplin1.html

          Für wavwrite gibt es diesen bugfix...

          http://sourceforge.net/p/freemat/bugs/453/

          Viele Grüße!

          Kommentar

          • Fosti
            Registrierter Benutzer
            • 18.01.2005
            • 3175

            #6
            ich kenne freemat nicht aber das hier ist super.....die haben inzwischen auch eine Simulink-Oberfläche geklont: www.scilab.org
            Ich stimme ansonsten dafür, deinen Nick in "Cato" zu ändern; derjenige, der im Senat immer mit "...im übrigen bin ich der Meinung, dass MEG gehört werden muss!" geschlossen hat . (copyright by mechanic)

            Kommentar

            • ChPuls
              Registrierter Benutzer
              • 17.01.2002
              • 736

              #7
              Zitat von fabi Beitrag anzeigen
              ja, geht aber nicht trivial, wenn man sowas noch nie gemacht hat. Nutze nicht Octave, das ist ein Albtraum. Freemat ist viel freundlicher und kann alles was du brauchst.

              http://freemat.sourceforge.net/help/...nterplin1.html

              Für wavwrite gibt es diesen bugfix...

              http://sourceforge.net/p/freemat/bugs/453/
              Der Bugfix für wavwrite ist für die Erzeugung einer PCM Wave Datei.

              Daher erzeugt es eine äquidistante Zeitskala ?

              Die Samplefrequenz sollte man doch auf 20kHz stellen?
              Wie hoch sollte die Bitrate sprich Amplituden Abtastung sein?

              Und mit der erzeugten PCM Wave-Datei kann man eine IFFT durchführen?

              Ich bitte um Entschuldigung,
              Ich habe sowas noch nie gemacht.
              Christian Puls

              Kommentar

              • fabi
                Registrierter Benutzer
                • 05.01.2008
                • 1472

                #8
                Die Samplerate legst du selbst fest. Fuer den Anwendungsfall wuerde ich 44.1kHz vorschlagen, das reicht, FFT Fenster sollte lange sein, ich wuerde mit wenigstens 2048 Punkten im Frequenzbereich bis fs/2 anfangen.

                Du erzeugst den Frequenzvektor in Freemat entsprechend der Abtastrate und der gewuenschten FFT Laenge, dann transformierst du in den Zeitbereich. Die Anzahl der Punkte bleibt die gleiche, bedenke aber, dass du im Frequenzbereich auch die konjugiert komplexen Aliasfrequenzen zwischen fs/2 und fs erzeugen musst, sonst bekommst du ungueltige, komplexe Werte im Zeitbereich. Am Ende solltest du eine reale Impulsantwort mit 4096 Punktekn haben, der Peak wird aber bei 0s sein und das Einschwingen am Ende, das kommt durch die Periodizitaet der FFT, du musst also das Fenster dann noch verschieben um das Ergebis kausal zu machen.

                Den Zeitvektor mit der Impulsantwort kannst du unter Angabe der Samplingrate dann in eine .wav datei speichern und in ARTA importieren. Wie gesagt, es ist nicht trivial. Wenn dir die Erklaerung nicht ausreicht, wird es den Rahmen eines Foreneintrags wohl sprengen, sorry.

                Kommentar

                • ChPuls
                  Registrierter Benutzer
                  • 17.01.2002
                  • 736

                  #9
                  Zitat von fabi Beitrag anzeigen
                  Die Samplerate legst du selbst fest. Fuer den Anwendungsfall wuerde ich 44.1kHz vorschlagen, das reicht, ...
                  Stimmt ja, 44,1 kHz. Stichwort Nyquist-Shannon-Abstasttherom. Man braucht die
                  doppelte Abstastfrequenz um ein Signal zu rekonstruieren.

                  Zitat von fabi Beitrag anzeigen
                  Wie gesagt, es ist nicht trivial. Wenn dir die Erklaerung nicht ausreicht, wird es den Rahmen eines Foreneintrags wohl sprengen, sorry.
                  Ich steig da nicht voll durch und Du hast recht, trivial ist es nicht.

                  Ich wollte eigentlich nur das Ausschwingverhalten folgender Billig-Box als Boxsim-Datei mit dem W170 (ohne S!) und dem
                  FRWS 5 als Hochtöner simulieren. Der W170 hat laut Hobby-Hifi bei ca. 1,3 kHz eine größere Resonanz.

                  http://www.visaton.de/vb/attachment....1&d=1370979819

                  Vielleicht hat jemand Lust das alles zu machen und
                  das Ausschwingverhalten zu zeigen.
                  Angehängte Dateien
                  Christian Puls

                  Kommentar

                  • fabi
                    Registrierter Benutzer
                    • 05.01.2008
                    • 1472

                    #10
                    Ausschwingverhalten ist sehr schwierig zu interpretieren, es gibt praktisch keine Maßstäbe. Die Diagramme in den Zeitschriften werden oft kommentiert mit "leicht verzögertes Nachschwingen" oder "sichtbare Resonanz" aber wie schlimm ist das beim Musikhören?
                    Wenn ich dir jetzt sage, der Pegelabfall auf -20dB bei 1.3kHz dauert 60ms. Ist das jetzt viel oder wenig?

                    Es gibt kaum eine Möglichkeit das zu objektiv zu beurteilen, weil man in ein Chassis nicht mal eben 20% mehr oder weniger Nachschwingen "einbauen" kann um Hörversuche zu machen. Für den Chassishersteller ist das Ausschwingverhalten eine von vielen Möglichkeiten zu sehen, dass bei einer Frequenz etwas nicht stimmt, oft sieht man das in unterschiedlichen Messungen: Impedanzkurve, Frequenzgänge auch unter anderen Winkeln als auf Achse, etc. Mit einem Laserscanner kann man sich die Membranbewegung anschauen, den Grund herausfinden (so etwas auf der Membran verantwortlich ist) und die Resonanz abschwächen oder ganz eliminieren.

                    Schwach gedämpfte Resonanzen machen sich klanglich ganz anders bemerkbar als etwa ein unebener Frequenzgang. Eine Frequenzgangüberhöhung kann man meist ziemlich genau identifizieren, mit einem Equalizer abschwächen und es klingt tatsächlich sofort besser. Eine Resonanz geht oft mit einer Pegeländerung einher, entweder man hat ein Loch oder auch eine Spitze, selbst wenn man mit dem Equalizer ausgleicht, klingt es nicht sauber.

                    Vielleicht kennst du den Effekt: Billige Boxen klingen immer "zu laut", ganz egal wie leise man macht. Es klingt unsauber und rau, nervt sofort, klassisches Beispiel sind die billigen Partyboxen mit Piezohochtönern.

                    Lange Rede kurzer Sinn: Ja, das ist genau einer der Grunde warum Boxen billig klingen, wenn du schon Messungen hast, die zeigen, dass etwas "komisch ist", würde ich das Chassis eher nicht einsetzen.

                    Grüße!

                    Kommentar

                    • ChPuls
                      Registrierter Benutzer
                      • 17.01.2002
                      • 736

                      #11
                      Zitat von fabi Beitrag anzeigen
                      Ausschwingverhalten ist sehr schwierig zu interpretieren, es gibt praktisch keine Maßstäbe. Die Diagramme in den Zeitschriften werden oft kommentiert mit "leicht verzögertes Nachschwingen" oder "sichtbare Resonanz" aber wie schlimm ist das beim Musikhören?
                      Wenn ich dir jetzt sage, der Pegelabfall auf -20dB bei 1.3kHz dauert 60ms. Ist das jetzt viel oder wenig?
                      Danke Fabi,

                      Ich möchte Dir widersprechen. Erstmal der W170 hat bei 1,5 kHz eine Resonanz, dass habe ich oben falsch geschrieben.

                      Das Ausschwingen ist schon interpretierbar. Wenn z.B. eine Resonanz unter -24 dB unterhalb des Bezugspegels / Wirkungsgrades liegt, ist sie bestimmt nicht mehr wahrnehmbar. Wenn die betreffende Resonanz "lauter" ist sollte sie nicht sehr lange nachschwingen.
                      Es gibt z.B. (weiche) Kunststoffmembranen, die am Ende des Übertragugnsspektrums kaum lang ausschwingende Resonanzen aufweisen, aber insgesamt relativ langsam ausschwingen. Das wird nicht nervig klingen, aber nicht so aufgelöst wie z.B. eine Hartmembran wie z.B. der TI100. (nur mit gutem Filter)

                      Beim TI100 muss ja darauf geachtet werden, dass die Resonanz am oberen Übertragungsende durch die Frequenzweiche ausgeblendet, wie oben geschrieben, ausreichend gedämpft wird.

                      PS: Ich würde gerne das Ausschwingverhalten der Box mit W170 + FRWS 5 sehen. Ich weiß so, ob die Weiche die Resonanz des W170 gut filtert.

                      Viele Grüße!
                      Zuletzt geändert von ChPuls; 13.06.2013, 01:29.
                      Christian Puls

                      Kommentar

                      • fabi
                        Registrierter Benutzer
                        • 05.01.2008
                        • 1472

                        #12
                        Wasserfalldiagramme sind noch schwieriger als Klirrdiagramme zu interpretieren. Das Ausschwingverhalten wird fast nie auf den eingeschwungenen Zustand normiert, die Frequenzauflösung leidet bei üblicher Darstellung unter der Zeitauflösung. Fast nie sieht man Periodenskalierung und Zeitskalierung nebeneinander. Bei Zeitskalierung hat man im Hochtonbereich keinerlei Auflösung, will man im Bassbereich irgendetwas erkennen, Periodenbasiert ist ebenfalls kritisch, im Hochtonbereich bräuchte man sehr feine Zeitauflösung, die nie dargestellt wird.

                        Würde man wenigstens den Frequenzgang geradeziehen, würde sich so manche "fiese Resonanz" in Luft auflösen, das Chassis ist da einfach lauter.

                        Du stichst da ein wenig in ein Wespennest, ich hab einige Zeit vor Matlab verbracht um selbst sinnvolle Diagramme zu erstellen, die irgendwie mit dem Höreindruck korrelieren.

                        Ich verstehe ja, dass du das Diagramm trotzdem gerne sehen würdest.

                        Grüße!

                        Kommentar

                        • ChPuls
                          Registrierter Benutzer
                          • 17.01.2002
                          • 736

                          #13
                          Zitat von fabi Beitrag anzeigen
                          Das Ausschwingverhalten wird fast nie auf den eingeschwungenen Zustand normiert, die Frequenzauflösung leidet bei üblicher Darstellung unter der Zeitauflösung. Fast nie sieht man Periodenskalierung und Zeitskalierung nebeneinander. Bei Zeitskalierung hat man im Hochtonbereich keinerlei Auflösung, will man im Bassbereich irgendetwas erkennen, Periodenbasiert ist ebenfalls kritisch, im Hochtonbereich bräuchte man sehr feine Zeitauflösung, die nie dargestellt wird.
                          Das ist mir auch schon alles aufgefallen. Ich kann aber im Tief- und Mittelton von der Zeitskalierung auf die Periode im Kopf umrechnen und Schlüße daraus ziehen. Für den Hochton ist die Zeitskalierung nicht fein genug. Jedoch ist das Ohr auch nicht so schnell, so daß nur wirklich stark hervortretende Resonanzen klangrelevant sind.

                          Zitat von fabi Beitrag anzeigen
                          Würde man wenigstens den Frequenzgang geradeziehen, würde sich so manche "fiese Resonanz" in Luft auflösen, das Chassis ist da einfach lauter.
                          Meiner Meinung nach ist ein Geradeziehen des Frequenzganges nicht unbedingt nötig. Gibt es eine Resonanz, schaue ich wie laut sie in Bezug auf den zeitlich ersten Schallpegel des Chassis ist. Wenn die Resonanz z.B. unter -24 dB des Chassispegels gleicher Frequenz liegt, ist sie nicht klangrelevant. Man muss bei den Wasserfalldiagrammen, die in 3D natürlich auch schräg nach hinten fluchten, sich alles vorstellen können.

                          PS:
                          Ach Mist, warum gibt es kein Programm für die Umrechnung in ein Wasserfalldiagramm.
                          Christian Puls

                          Kommentar

                          • Frank
                            Registrierter Benutzer
                            • 05.03.2005
                            • 1387

                            #14
                            Zitat von fabi Beitrag anzeigen
                            Wasserfalldiagramme sind noch schwieriger als Klirrdiagramme zu interpretieren.
                            Wenn man in der Hobby Hifi nur Klirr und Wasserfall von GF200 und W200 ansieht, könnte man zu dem Schluß kommen, der W200 wäre das bessere Chassis
                            Oscar Wilde: "My taste is very simple, I am always satisfied with the best."

                            Kommentar

                            • fabi
                              Registrierter Benutzer
                              • 05.01.2008
                              • 1472

                              #15
                              Hehe, genau. Man muss sich immer den kompletten Datensatz eines Lautsprechers ansehen um sich ein Bild zu machen. Idealerweise kennt man bei Lautsprecherboxen wenigstens vom Tieftöner auch das nichtlineare Verhalten für größere Auslenkungen.

                              ChPuls, schick mir doch mal eine PN mit drei Spalten: Frequenz, Pegel und Phasengang. Vielleicht habe ich am Wochenende Zeit eine paar Zeilen alten Code rauszukramen und es mir anzusehen. Jetzt würde es mich ja schon selbst interessieren.
                              BoxSim hab ich nicht und werd ich hier auch nicht installieren.

                              Viele Grüße!

                              Kommentar

                              Lädt...
                              X