Zum Zeitabgleich der Chassis bei aktiven Mehrwegesystemen

Sigi M.
Aktiver Hörer
Beiträge: 454
Registriert: 30.01.2017, 17:54
Wohnort: 69469 Weinheim

Preringing ?

Beitrag von Sigi M. »

Hallo Uli, ich habe da noch Verständnisfragen:

Wir geben mit Hilfe des reversierten Allpasses über die linearphasige Weiche einen linearphasigen Anteil an den minimalphasigen Treiber,
der die spät abgespielten Frequenzen zeitlich nach vorne zieht. Soweit :cheers: btw. Ganz grosse Klasse !!!

Imho erhalten wir eine "echte/optimierte" Reaktion des Treibers, bei dem nun
"alle" Frequenzen tatsächlich zur gleichen Zeit abgespielt werden.

1. In der nun vorliegenden Impulsantwort sollte doch kein (minimalphasig verursachtes) preringing erkennbar sein, es sei denn man hätte überkorrigiert.
Exzessphasenveränderungen finden hier (Allpass) ja NICHT statt. :)
soweit korrekt?

2. Makro 4 korrigiert den Anteil der Exzessphase, wenn der als preringing VOR dem Impuls liegt. Könnte denn ein durch den reversierten Allpass potentiell erzeugtes preringing überhaupt von Makro 4 erfasst werden? Also erfasst Makro 4 denn nicht-Exzessphasen bedingtes preringing? Ich denke nicht, oder?

3. Zusammengefasst: Minmalphasig sollte doch bei korrekter Anwendung (durch die linearphasige Korrektur) kein preringing entstehen und Exzessphasig kann Makro 4 korrigieren.

4. Wäre es möglich / sinnvoll, in Makro 4 eine einstellbare MinPhasenPrering Korrektur zu etablieren, ähnlich der Fensterungsanweisung für die Exzessphase? Oder gibt es einen Weg "zu Fuss?"

5. Findet sich ein Grund für preringing nicht möglicherweise auch in zu steilen/spitzen Korrekturen?
Ich halte vorsichtig für möglich, dass das in diesem Zusammenhang verursachte preringing auch durch zu steile/spitze Korrekturen entsteht.
Wenn bspw. Korrekturen im Prefilter Makro 0 hinzugefügt werden, die nicht mehr von FDW Mechanismen des Makro 4 erfasst werden?
Entsteht dann das hörbare preringing nicht im Convolver, dem die Korrekturen dann zu steilflankig sind?
Dieser Punkt interessiert mich am meisten.
Und glättet Makro 4 tatsächlich die Cor Dateien?

5. Gibt es Möglichkeiten wie bspw. höhere Samplerate oder längere Filter, die das preringing teilweise reduzieren, weil die Genauigkeit der Daten es besser zulässt?

6. Falls es (auch) mit dem Convolver zusammenhängt: Wenn ich es richtig beobachtet habe, glättet Makro 4 die Korrekturanweisung in den Cor Dateien, und der Convolver "erwartet" keine spitzeren/steilflankigeren Korrekturen.
Ist dem so?

7. Wäre hier eine erweiterte Auslegung des Convolvers möglich, oder liegen die Grenzen z.B. im Rahmen der Fouriertransformation?

Ich hoffe, es sind keine "dummen" Fragen dabei, freue mich jedenfalls auf Deine Antwort!!

Viele Grüße

Sigi M.
Bild
uli.brueggemann
Aktiver Hersteller
Beiträge: 4658
Registriert: 23.03.2009, 15:58
Wohnort: 33649
Kontaktdaten:

Beitrag von uli.brueggemann »

Sigi M. hat geschrieben: 12.03.2023, 14:14 Wir geben mit Hilfe des reversierten Allpasses über die linearphasige Weiche einen linearphasigen Anteil an den minimalphasigen Treiber,
der die spät abgespielten Frequenzen zeitlich nach vorne zieht. Soweit :cheers: btw. Ganz grosse Klasse !!!
Hallo Sigi,

wenn ich die Fragen so lese, beschleicht mich das Gefühl, dass es anscheinend bequemer ist, einfach loszufragen als nachzudenken (evtl. auch Grundlagen zu lernen). Das geht schon los mit dem ersten Satz. Der reversierte Allpass bedeutet einen maximalphasigen Anteil.
Sigi M. hat geschrieben: 12.03.2023, 14:14 Imho erhalten wir eine "echte/optimierte" Reaktion des Treibers, bei dem nun
"alle" Frequenzen tatsächlich zur gleichen Zeit abgespielt werden.
Der reversierte Allpass ändert nix am Frequenzgang. Er versucht auch nicht alle Frequenzen zu optimieren sondern den Übertragungsbereich des Chassis. Wir erhalten eine verbesserte zeitliche Reaktion, that's it. Perfekt wäre Zufall.
Sigi M. hat geschrieben: 12.03.2023, 14:141. In der nun vorliegenden Impulsantwort sollte doch kein (minimalphasig verursachtes) preringing erkennbar sein, es sei denn man hätte überkorrigiert.
Exzessphasenveränderungen finden hier (Allpass) ja NICHT statt. :)
soweit korrekt?
Es gibt per Definition kein minimalphasiges Preringing, es ist minimalphasig immer ein Postringing. Die Exzessphase entsteht im Zusammenwirken mit anderen Chassis und durch den Raum (Reflexionen & Co.)
Sigi M. hat geschrieben: 12.03.2023, 14:142. Makro 4 korrigiert den Anteil der Exzessphase, wenn der als preringing VOR dem Impuls liegt. Könnte denn ein durch den reversierten Allpass potentiell erzeugtes preringing überhaupt von Makro 4 erfasst werden? Also erfasst Makro 4 denn nicht-Exzessphasen bedingtes preringing? Ich denke nicht, oder?
Makro4 korrigiert den Exzessphasenanteil, nicht den Frequenzgang.
Sigi M. hat geschrieben: 12.03.2023, 14:143. Zusammengefasst: Minmalphasig sollte doch bei korrekter Anwendung (durch die linearphasige Korrektur) kein preringing entstehen und Exzessphasig kann Makro 4 korrigieren.
Es wird nicht linearphasig korrigiert, nur scheinbar linearphasig. Prima ist es wenn die Sprungantwort in Makro5 dem minimalphasigen Ideal entspricht. Und selbst dann: Preringing ist insoweit erlaubt als es nicht beim Hören wahrnehmbar ist.
Sigi M. hat geschrieben: 12.03.2023, 14:144. Wäre es möglich / sinnvoll, in Makro 4 eine einstellbare MinPhasenPrering Korrektur zu etablieren, ähnlich der Fensterungsanweisung für die Exzessphase? Oder gibt es einen Weg "zu Fuss?"
Nein, da Makro4 keine Minimalphase korrigiert gibt es auch keine MinPhasenPrering Korrektur
Sigi M. hat geschrieben: 12.03.2023, 14:145. Findet sich ein Grund für preringing nicht möglicherweise auch in zu steilen/spitzen Korrekturen?
Ich halte vorsichtig für möglich, dass das in diesem Zusammenhang verursachte preringing auch durch zu steile/spitze Korrekturen entsteht.
Wenn bspw. Korrekturen im Prefilter Makro 0 hinzugefügt werden, die nicht mehr von FDW Mechanismen des Makro 4 erfasst werden?
Entsteht dann das hörbare preringing nicht im Convolver, dem die Korrekturen dann zu steilflankig sind?
Dieser Punkt interessiert mich am meisten.
Und glättet Makro 4 tatsächlich die Cor Dateien?
Wie sind steile/spitze Korrekturen definiert? Sie sind mir bisher nirgendwo untergekommen. Hände weg von Makro0, wenn man nicht weiss was es tut und wie man es anwendet. Sinnvollerweise werden dort minimalphasige Filter verwendet, die per Definition kein Preringing verursachen.
Sigi M. hat geschrieben: 12.03.2023, 14:145. Gibt es Möglichkeiten wie bspw. höhere Samplerate oder längere Filter, die das preringing teilweise reduzieren, weil die Genauigkeit der Daten es besser zulässt?
Nein
Sigi M. hat geschrieben: 12.03.2023, 14:146. Falls es (auch) mit dem Convolver zusammenhängt: Wenn ich es richtig beobachtet habe, glättet Makro 4 die Korrekturanweisung in den Cor Dateien, und der Convolver "erwartet" keine spitzeren/steilflankigeren Korrekturen.
Ist dem so?
Die Beobachtung ist falsch, Makro4 glättet keine Korrekturanweisungen in Cor-Dateien. Der Convolver verarbeitet FIR-Filter. Von spitzen/steilflankigen Korrekturen versteht der Convolver nichts (so wie ich).
Sigi M. hat geschrieben: 12.03.2023, 14:147. Wäre hier eine erweiterte Auslegung des Convolvers möglich, oder liegen die Grenzen z.B. im Rahmen der Fouriertransformation?
Wohin erweitern? Und die Fouriertransformation ist nur ein Rechenhilfsmittel um eine Faltung mit langen Filtern zeitlich durch angewandte Mathematik (eben Transformation - Verarbeitung - Rücktransformation) zu beschleunigen.

Ein sehr empfehlenswertes Buch zum Thema DSP gibt es auf www.dspguide.com. Ich wäre froh, wenn ich Grundlagen so erklären könnte wie es dort der Fall ist.

Viele Grüsse
Uli
Bild
Sigi M.
Aktiver Hörer
Beiträge: 454
Registriert: 30.01.2017, 17:54
Wohnort: 69469 Weinheim

Beitrag von Sigi M. »

Hallo Uli,

meine Fragen sind beantwortet, Danke sehr.

Sorry, das ich mich laienhaft ausgedrückt habe,
gibt es vielleicht ein Buch auf deutsch, das Du für empfehlenswert hältst?

Viele Grüße

Sigi M.
Bild
schoko-sylt
Aktiver Hörer
Beiträge: 385
Registriert: 10.11.2012, 10:59

Beitrag von schoko-sylt »

Sigi M. hat geschrieben: 12.03.2023, 17:10 Hallo Uli,

Sorry, das ich mich laienhaft ausgedrückt habe,
gibt es vielleicht ein Buch auf deutsch, das Du für empfehlenswert hältst?

Viele Grüße

Sigi M.

Hallo Sigi,

hat Uli doch empfohlen:
uli.brueggemann hat geschrieben: 12.03.2023, 15:18Ein sehr empfehlenswertes Buch zum Thema DSP gibt es auf www.dspguide.com. Ich wäre froh, wenn ich Grundlagen so erklären könnte wie es dort der Fall ist.
Liebe Grüße

Holger
Bild
Sigi M.
Aktiver Hörer
Beiträge: 454
Registriert: 30.01.2017, 17:54
Wohnort: 69469 Weinheim

Beitrag von Sigi M. »

Hallo Holger,
mit Verlaub, ich fragte nach einem deutschen Buch.
So gut ist mein englisch leider nicht.
Viele Grüße
Sigi M.
Bild
schoko-sylt
Aktiver Hörer
Beiträge: 385
Registriert: 10.11.2012, 10:59

Beitrag von schoko-sylt »

Hallo Sigi,

das habe ich total übersehen! Tut mir leid, sorry. Ich dachte, Du hättest Ulis Hinweis übersehen und wollte Dich nur darauf hinweisen. Ich kenne das Buch nicht einmal. Rufe Dich gleich mal an!

Viele Grüße

Holger
Bild
Derda
Aktiver Hörer
Beiträge: 5
Registriert: 28.03.2023, 13:40
Wohnort: Köln

Phasenlaufzeit

Beitrag von Derda »

Hallo zusammen,

der Thread hat mich dazu animiert, mit Acourate ein paar Experimente zum Thema Phasen und Laufzeiten durchzuführen. War für mich ganz erhellend. Ich dachte mir, ich schreib mal drüber, vielleicht interessiert es ja noch jemanden. In diesem Post schaue ich mir die Phasenlaufzeit an, in einem weiteren dann die Gruppenlaufzeit.

Als Testobjekt betrachte ich einen Allpass. Ein Hochpass wäre relevanter für Lautsprecher, aber dann hat man neben den Auswirkungen der frequenzabhängigen Phase auch mit frequenzabhängigen Amplituden zu tun und das macht die Interpretation nicht einfacher. Und ein echter Lautsprecher wäre noch relevanter, aber eben auch noch unübersichtlicher.

Also los geht's mit einem Allpass, Generate -> IIR-Filter -> Allpass Frequenz 100 Hz, Güte Q=5. Die Güte habe ich so hoch gewählt, damit der Effekt der Gruppenlaufzeit deutlich wird. Das Ganze betrachte ich bei drei Frequenzen 10 Hz, 100 Hz und 1000 Hz. Das Ganze sieht dann so aus:

Bild

Dann falte ich den 10 Hz Sinus mit dem Allpass und zoome auf der Zeitleiste in den Bereich um 0,5 s rein:

Bild

Man sieht das Signal nach dem Allpass um 0,65 ms verzögert. Dieser Wert ist die Phasenlaufzeit und hängt mit der abgewickelten Phase im mittleren Panel über die Beziehung Phasenverschiebung = -2 * pi * Frequenz * Phasenlaufzeit (-0,041 = - 2 * 3,14 * 10 Hz * 0,65 ms) zusammen.

Das Spiel können wir jetzt für 100 Hz und 1000 Hz wiederholen.

100 Hz:

Bild

Das Allpass-gefilterte Signal ist nun gegenphasig, also um 180 Grad oder Pi in der Phase verzögert, was einer Phasenlaufzeit von genau 5 ms entspricht. Die Phasenlaufzeit beschreibt das Verhalten der Phase im eingeschwungenen Zustand. Sie ist auch das, was man beim Abgleich der Laufzeiten per Faltung mit einem Sinus nach Ende des Einschwingvorgangs sieht. Wenn man dieses gegenphasige Signal zum Originalsignal dazu addieren würde, käme gerade Null raus (Vorgriff: wie wir später sehen werden, gilt das nicht für zeitlich veränderliche Signale, Stichwort Wellenpaket und Gruppenlaufzeit).

Um die Übung abzuschließen noch 1000 Hz:

Bild

Da könnte man jetzt denken, das gefilterte Signal läuft dem ungefilterten voraus. Ist aber nicht so, es ist jetzt um fast 360 Grad oder 2 Pi verzögert. Entsprechend kann man eine Phasenlaufzeit von etwa 0,995 ms ablesen, was zu der Phase von -6,25 passt.

Die Phasenlaufzeit ist offenbar frequenzabhängig (0,65 -> 5 -> 0,995 ms). Das ist aber relativ langweilig verglichen mit der Gruppenlaufzeit.

TL;DR: Die Phasenlaufzeit beschreibt zeitlich stationäre Signale und ist - Phase/Frequenz.

...Allpass will return in "Gruppenlaufzeit"

Besten Gruß
Bodo
Bild
Derda
Aktiver Hörer
Beiträge: 5
Registriert: 28.03.2023, 13:40
Wohnort: Köln

Gruppenlaufzeit

Beitrag von Derda »

Teil 2 der Übung:

Für die Betrachtung der Gruppenlaufzeit brauchen wir Wellenpakete. Denn die Gruppenlaufzeit beschreibt die Verzögerung der Einhüllenden von Wellenpaketen. Also fenstern wir unsere Sinüsse. Der Mathematiker nimmt da gerne gaussische Fenster, weil Acourate das anbietet, habe ich Cosinus-Fenster genommen mit etwa 10 Schwingungen Breite. Konkret für 10 Hz sieht das so aus:

Bild

Mit dem Ergebnis:

Bild

wobei ich die Einhüllende, das Cosinusfenster, noch eingemalt habe und statt der Phase des Allpasses die Gruppenlaufzeit zum Vergleich darstelle.

Jetzt schicke ich das Wellenpaket durch den Allpass (TD-Functions -> Convolution) und stelle das gefilterte Wellenpaket zusätzlich da:

Bild

Da muss man schon mit der Lupe hinschauen, um zu sehen, dass das zwei Kurven sind. Und eine Verschiebung der Einhüllenden sieht man überhaupt nicht. Der Grund ist natürlich, dass das Wellenpaket 1000 ms breit ist, die Gruppenlaufzeit bei 10 Hz aber nur 0,65 ms beträgt.

Im Sinne eines Spannungsbogen schauen wir mal nach, wie das bei 1000 Hz aussieht. Das Fenster habe ich jetzt 100mal schmaler gemacht, damit weiterhin 10 Schwingungen im Wellenpaket sind.

Bild

Bild

Und man sieht wieder nichts, denn das Wellenpaket ist jetzt 10 ms breit, die Gruppenlaufzeit bei 1000 Hz aber nur 0,0065 ms.

Na, vielleicht wird es bei 100 Hz spannender. Wieder ein 10 Schwingungen breites Wellenpaket erzeugt:

Bild

und durch den Allpass geschickt:

Bild

Na endlich, wurde aber auch Zeit. Spannend finde ich:
  • Das Wellenpaket ist deutlich verzögert.
  • Trotzdem beginnt das System sofort zu reagieren (Einschwingvorgang).
  • Für die Phasenlage ist die Phasenlaufzeit relevant (gegenphasig s.o.).
Um die Gruppenlaufzeit abzulesen, muss man schauen wie weit die Einhüllende verschoben ist. Also habe ich diese kopiert und per Augenmaß um 1200 Samples nach rechts rotiert.

Bild

1200 Samples entsprechen einer Gruppenlaufzeit von 1200/48000 s = 25 ms. Der Peak der Gruppenlaufzeitkurzve ist bei etwa 32 ms. Man muss aber bedenken, dass das Wellenpaket eine endliche Breite im Frequenzraum hat (oberes Panel) und daher auch eher ein Mittelwert im Bereich 80 bis 120 Hz zu erwarten ist, was dann ganz gut mit den 25 ms zusammen passt.

Spaßeshalber habe ich mal noch die Wellenpakete mit 100 Hz und 1000 Hz addiert und dann durch den Allpass geschickt.

Vorher:

Bild

Nachher:

Bild

Zeigt finde ich anschaulich, wie frequenzabhängige Gruppenlaufzeiten Impulse doch verändern können.

TL;DR: Die Gruppenlaufzeit beschreibt die Verzögerung der Einhüllenden von Wellenpaketen. Einschwingvorgänge können die Interpretation einzelner Messungen jedoch erschweren.

Mir hat die Übung großen Spaß gemacht. Acourate ist ein super Werkzeug, um solche Experimente durchzuspielen. Ich hoffe, ich habe mit den beiden langen Posts dem ein oder anderen Spaß gemacht und nicht gegen irgendwelche Forumsetiquette verstoßen. Falls doch, einfach melden, ich bin neu hier.

Besten Gruß
Bodo
Bild
uli.brueggemann
Aktiver Hersteller
Beiträge: 4658
Registriert: 23.03.2009, 15:58
Wohnort: 33649
Kontaktdaten:

Beitrag von uli.brueggemann »

Hallo Bodo,

prima. Weitermachen :mrgreen:

Die letzten beiden Bilder weisen übrigens auf etwas hin was i.a. gerne nicht bemerkt, nicht verstanden oder auch missverstanden wird:
Es werden ja mit einem Allpass Phasen verschoben. Die jeweiligen Amplituden bleiben gleich, der Frequenzgang hat ja bei jeder Frequenz 0 dB = Verstärkung 1. Im Zeitsignal addieren sich aber nun die jeweils unterschiedlich verschobenen Frequenzanteile. Und so variiert die Summe im Zeitbereich, sprich der Signalpegel, abhängig vom jeweiligen Signalinhalt und jeweiliger Verschiebung. Was dazu führen kann, dass ein Signal clippt obwohl es lediglich mit einem Filter bearbeitet ist, das bei jeder Frequenz eben genau die Verstärkung 1 hat.

Viele Grüsse
Uli
Bild
Derda
Aktiver Hörer
Beiträge: 5
Registriert: 28.03.2023, 13:40
Wohnort: Köln

Beitrag von Derda »

Hallo Uli,
uli.brueggemann hat geschrieben: 29.03.2023, 18:53 Hallo Bodo,

prima. Weitermachen :mrgreen:
Danke!
Die letzten beiden Bilder weisen übrigens auf etwas hin was i.a. gerne nicht bemerkt, nicht verstanden oder auch missverstanden wird:
Es werden ja mit einem Allpass Phasen verschoben. Die jeweiligen Amplituden bleiben gleich, der Frequenzgang hat ja bei jeder Frequenz 0 dB = Verstärkung 1. Im Zeitsignal addieren sich aber nun die jeweils unterschiedlich verschobenen Frequenzanteile. Und so variiert die Summe im Zeitbereich, sprich der Signalpegel, abhängig vom jeweiligen Signalinhalt und jeweiliger Verschiebung. Was dazu führen kann, dass ein Signal clippt obwohl es lediglich mit einem Filter bearbeitet ist, das bei jeder Frequenz eben genau die Verstärkung 1 hat.
Deshalb habe ich bei den letzten beiden Bildern die Automatik ausgeschaltet und die y-Skala gleich gehalten. So sieht man, dass in diesem Fall die Maximalamplitude nach dem Allpass abnimmt, weil die Phasen auseinanderlaufen. Kann aber, wie Du sagst, auch anders herum laufen und zu Clipping führen.

Besten Gruß
Bodo
Bild
wgh52
Aktiver Hörer
Beiträge: 5623
Registriert: 25.01.2008, 15:17
Wohnort: Schweitenkirchen
Kontaktdaten:

Beitrag von wgh52 »

Liebe Freunde,

während meiner Recherchen bin ich auf dieses Video gestoßen, das (soweit ich fachlich beschränkterweise verstehe) ermöglichen könnte durch BiQuad IIR Filter FIR Taps "für andere Sachen" zu sparen (wenn man das muß, so wie ich bei 6144 FIR Taps je Stereokanal im openDRC).

Es wäre schön, die Einschätzung der hiesigen DSP Fachkundigengemeinde zu kennen um über die Anwendungsmöglichkeit in meinem 4-Wege-Fall, bei dem die BiQuads in den acht Ausgängen des nanoDIGI laufen würden) entscheiden zu können.

Danke und Ostergrüße,
Winfried5493
Bild
uli.brueggemann
Aktiver Hersteller
Beiträge: 4658
Registriert: 23.03.2009, 15:58
Wohnort: 33649
Kontaktdaten:

Beitrag von uli.brueggemann »

Hallo Winfried,

mich erinnert das Video an "die Ziege wollte auch ein langes Schwänzchewn und hat keins gekriegt".
Generell gilt: alles was einfach ist ist bereits erfunden und wird vielfach genutzt.
Und so frag ich mich, wie das denn mit dem zeitreversierten Allpass klappt, der da so locker vorgestellt wird.
Ich hab mir die Mühe gemacht und mal so einen Allpass mit einem Eingangssignal beaufschlagt. Leider ist er nicht numerisch stabil und in kürzester Zeit im Overflow.

Also, Du kannst mit den biquads all die bekannten Filter erzeugen. Und damit z.B. die gewünschten Frequenzweichen erstellen. Ferner kannst Du auch gegebene Frequenzgänge mit IIR-Filtern begradigen. Was sich dann im niederfrequenten Bereich auch empfielht so denn nur kurze FIR-Filter mit damit verbundenener niedriger Frequenzauflösung zur Verfügung stehen.
Was allerdings das Timing betrifft, so wird da nicht wirklich ein Schuh draus. Die Summe von einem minimalphasigen Tief-, Band- und Hochpass erzeugt nun eine Excessphase, die mit den einfachen biquads nicht korrigierbar ist.
Sonst würde man das, wie obereits eingangs gesagt, schon längst überall vorfinden.

Grüsse
Uli
Bild
uli.brueggemann
Aktiver Hersteller
Beiträge: 4658
Registriert: 23.03.2009, 15:58
Wohnort: 33649
Kontaktdaten:

Zum Zeitabgleich der Chassis bei aktiven Mehrwegesystemen

Beitrag von uli.brueggemann »

Phasenabgleich bei Mehrwegesystemen mit linearphasigen Frequenzweichen

Seit längerem gibt es bei Acourate die Methode, die Weichen zeitlich zu justieren, indem man eine Weiche vorrotiert (pre-delay) und dann den Abstand zum Hochtonpuls als zeitliche Referenz misst. Wäre der zeitliche Abgleich bereits perfekt, dann müsste man beim Vorrotieren um einen Betrag x eben genau diesen Abstand messen. Falls nicht ergibt die Differenz eben den Wert des anzuwendenden Delays bzw. Pre-Deleays je nach Vorzeichen.

Der Beginn dieses Threads handelt dabei um eine zusätzliche Vorkorrektur mit einem zeitlich reversiertem Allpass um die Genauigkeit der gemessenen Pulse zu verbessern.

Eine weitere Möglichkeit habe ich beschrieben mit der Sinusfaltung und der zeitlichen Ausrichtung der Faltungsergebnisse zueinander. Und zwar so, dass sich die Sinusschwingungen in gleicher Phasenlage bestmöglichst addieren. Als Frequenz nimmt man hierbei die gewünschte Trennfrequenz.
Soweit ok, allerdings hat das Verfahren den Nachteil, dass eben nur eine einzelne Frequenz betrachtet wird.

Insofern habe ich nun in Acourate im Phasendiagramm die Möglichkeit eingebaut, einen Phase-Lag einzugeben.
Das Phasendiagramm einer geladenen Pulsantwort sieht ja in der Darstellung mit gewrappter Phase unverständlich aus (auch wenn es korrekt ist).
Vor allem wenn man es mit üblichen Darstellungen vergleicht, die letztlich immer die Minimalphase zeigen. An dieser Stelle hilft nun das Phase-Lag.

Am besten wird das an einem Beispiel deutlich. Hierzu sind zwei Messungen gegeben, einmal ein Subwoofer und einmal ein Bass. Beide jeweils zusammen mit Hochtöner als Zeitreferenz.

Bild

Der interessierende Bereich ist markiert, die Trennfrequenz ist hier 60 Hz. Beide Weichen sind bereits mit der jeweiligen Pulsrotation gemessen und abgestimmt.

Die Phase sieht wie bereits geschildert unverständlich aus

Bild

Für jeden Puls lässt sich nun ein Phase-Lag eingeben, dazu dient ein SpinEdit-Feld unterhalb des Diagrams. Liegt die Pulsspitze z.B. beim Sample 6000 ist die Phase bereits 6000-fach gewrappt. Gibt man nun 6000 als Phase-Lag ein wird diese Phasenrotation subtrahiert und es ergibt sich eine andere Darstellung:

Bild

In den Frequenzbereichen mit "Nutz-Information" (siehe Frequenzgang) erkennt man nun die jeweilige Phasenlage. Uns interessiert nun der markierte Übergangsbereich zwischen Subwoofer und Bass, also zoomen wir da mal rein

Bild

Willkommen in der Realität. Die sieht nämlich alles andere als lehrbuchmäßig aus. Die Phasen liegen nicht zusammen, es gibt hier z.B. auch einen Phasensprung bei 70 Hz durch irgendein Reflexionsverhalten. Dabei sind die Weichen ja schon zeitlich entsprechend der Peaks der Pulsantworten zueinander ausgerichtet. Das ist aber zumindest verständlich, bestehen ja die Pulsantworten aus einem gemischtphasigen System aus linearphasiger Weiche, reversiertem Allpass (maximalphasig) und minimalphasigem (kausalem) Verhalten des Chassis.

Nun, es lässt sich nachbessern. Da in diesem Fall der Subwoofer zum Bass ausgerichtet werden soll wird nun die Pulsantwort einfach passend rotiert (TD-Functions - Rotation bzw. F11-Taste). Hierbei wandert die Phase im Diagramm rauf oder runter, je nachdem ob man rückwärts oder vorwärts rotiert. Das Ergebnis im Beispiel mit einer Rotation um -80 Samples (der Sub soll also früher spielen) sieht dann so aus:

Bild

Man sieht, dass nun bei der Markierung 60 Hz die Phase zusammenpasst. Man erkennt aber auch, dass das bei den Frequenzen daneben mehr aber auch weniger passt. Die Aufgabe ist es dabei also, die Rotation = zetiliche Anpassung so zu bestimmen, dass das Auge (sprich der geneigte Hörer) mit dem Ergebnis zufrieden ist. Eine genaue mathematische Ableitung, z.B. Summe kleinste Fehlerquadrate, kann man sich zwar ausdenken, muss aber wiederum nicht wirklich hörbar sein. Idealerweise passt es möglichst um die Trannfrequenz herum, weiter entfernt davon übernimmt dann ja ein Chassis die wesentliche Arbeit, das andere spielt nur noch mit geringem Pegel mit. Bei niedrigeren Frequenzen gilt also eher die rote Kurve, bei höheren Frequenzen die grüne Kurve.

Ob nun diese Optimierung hörbar ist muss jeder fürs sich selbst herausfinden. Auf jeden Fall gibt es diese Möglichkeit der Perfektionierung, übrigens für alle Chassis (sinnvollerweise beginnend von oben). Man hat ja sonst nix zu tun :mrgreen:

ff - viel Vergnügen
Uli
Bild
wgh52
Aktiver Hörer
Beiträge: 5623
Registriert: 25.01.2008, 15:17
Wohnort: Schweitenkirchen
Kontaktdaten:

Beitrag von wgh52 »

Hallo Uli,

Danke für Deine Einschätzung! Ich komme dann zu gegebener Zeit in meinem Projekt darauf zurück. Die entstehende Exzessphase könnte ja evtl. mit den FIR Filtern im (dem nanoDIGI vorgeschalteten) openDRC behandelt werden, aber das ist hier off-topic.

Grüße,
Winfried5494
Bild
Hornguru
Aktiver Hörer
Beiträge: 1451
Registriert: 08.02.2016, 13:13
Wohnort: Trier

Beitrag von Hornguru »

Hallo Uli

Ich bin sehr begeistert von dem neuen Feature :cheers:
Endlich nicht mehr von Hand rotieren.

Vielleicht wäre ja neben dem SpinEdit-Feld unterhalb des Diagrams, noch Platz für einen Button (Mit einer Lupe drauf). "Find Peak". Und wenn man den drückt, wird gleich der Wert eingetragen, vom gefundenen Peak. Die Peaks werden ja auch gefunden/vorgeschlagen in den FDW-Dialogen. Könntest ja den gleichen Code dafür nutzen?

viele Grüße
Josh
Bild
Antworten