Announcement

Collapse
No announcement yet.

Xsim and Phase Questions

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Xsim and Phase Questions

    Hello from Australia

    I use Xsim for mucking around with crossover designs, but am curious about 'phase' and how it's measured, particularly as it's so important in speaker/crossover design. What I've read suggests that you need to use measuring equipment and software to get accurate and useable data.

    Xsim has a check box in which to derive phase from driver frd and zma files when you "Tune" the drivers, but I'm not sure how accurate the phase figure is, given that information about 'acoustic centres' isn't entered.

    Is it possible to measure or assess phase without measuring equipment, to a standard from which you can design a reasonable crossover?

    I have built a speaker using Xsim to design the crossover (with much help from PETT members) but that was an adaptation of an existing commercial DIY design - presumably with correct phase already calculated in the original crossover..

    Your thoughts greatly appreciated!

    Thank you

    Geoff

  • #2
    XSim can derive minimum phase with the Hilbert transform from the frequency response like other programs. What's not accurate would be the frequency response you are deriving the phase from unless you have measured it. The second inaccuracy is the match between the drivers. Unless you measure the frequency of both drivers (in a 2-way) playing at the same time you don't know the delay or offset between the drivers frequency response. The exception would be capturing the frequency response with as measured phase and a 2 channel system (for a t=0 marker).

    John H

    Synergy Horn, SLS-85, BMR-3L, Mini-TL, BR-2, Titan OB, B452, Udique, Vultus, Latus1, Seriatim, Aperivox,Pencil Tower

    Comment


    • #3
      I'm an XSim user and I use raw phase data, as measured by OmniMic, for all of my designs. I build the cabinets, mount the drivers, then take measurements of each driver alone. I also take measurements of all possible driver "paralleled up" combinations. I then load the driver alone FRD's into an XSim model that has no crossover components, just wires connecting the drivers to the amplifier. I then set the "mod delays" by using the 'get file" drop down menu to load one of the "paralleled up" combinations into XSim's FR window. When the "get file" matches the model, the "mod delay" is correct. The "mod delays" in XSim are not x,y,z coordinates placing the drivers on the baffle. They are simply the time delay that is necessary to match the two curves.

      If I want to, I can also click the FRD phase source "derived" button and then run the Hilbert transform to replace my raw phase data with minimum phase data. I have done this a number of times and it seems to produce similar results, but it varies a little bit depending on how I attach the tails. One thing to note, however, is that if I replace my OmniMic raw phase data with minimum phase data, I must use the "get file' procedure again to reset the "mod delays" for the minimum phase data. The mod delays are different because the raw phase data starts at a different point in time compared to minimum phase data. As I understand it, the raw OmniMic phase data consistently starts at the beginning of the impulse response. And because it is consistent from measurement to measurement, you can use it to create an accurate, repeatable model.


      SideTowers: http://techtalk.parts-express.com/fo...corundum-build
      Totally Flat: http://techtalk.parts-express.com/fo...5-totally-flat
      Plumber's Delight: http://techtalk.parts-express.com/fo...notech-winners
      Linehopper: http://techtalk.parts-express.com/sh...Esoteric-build

      Comment


      • #4
        Originally posted by 4thtry View Post
        I'm an XSim user and I use raw phase data, as measured by OmniMic, for all of my designs. I build the cabinets, mount the drivers, then take measurements of each driver alone. I also take measurements of all possible driver "paralleled up" combinations. I then load the driver alone FRD's into an XSim model that has no crossover components, just wires connecting the drivers to the amplifier. I then set the "mod delays" by using the 'get file" drop down menu to load one of the "paralleled up" combinations into XSim's FR window. When the "get file" matches the model, the "mod delay" is correct. The "mod delays" in XSim are not x,y,z coordinates placing the drivers on the baffle. They are simply the time delay that is necessary to match the two curves.

        If I want to, I can also click the FRD phase source "derived" button and then run the Hilbert transform to replace my raw phase data with minimum phase data. I have done this a number of times and it seems to produce similar results, but it varies a little bit depending on how I attach the tails. One thing to note, however, is that if I replace my OmniMic raw phase data with minimum phase data, I must use the "get file' procedure again to reset the "mod delays" for the minimum phase data. The mod delays are different because the raw phase data starts at a different point in time compared to minimum phase data. As I understand it, the raw OmniMic phase data consistently starts at the beginning of the impulse response. And because it is consistent from measurement to measurement, you can use it to create an accurate, repeatable model.

        Thank you all for those responses, very helpful indeed.

        I assume the "Hilbert Transform" is calculated by Xsim when you check the 'derived phase' box, or do you have to calculate it yourself? From what I found when I 'googled' it after reading your advice, it looked like rather complicated maths.

        From the above I think it's clear that I need measuring equipment.

        Thank you again

        Geoff

        Comment


        • #5
          Originally posted by Geoff Millar View Post

          Thank you all for those responses, very helpful indeed.

          I assume the "Hilbert Transform" is calculated by Xsim when you check the 'derived phase' box, or do you have to calculate it yourself? From what I found when I 'googled' it after reading your advice, it looked like rather complicated maths.

          From the above I think it's clear that I need measuring equipment.

          Thank you again

          Geoff
          I need to correct a mistake I made in the previous post. I incorrectly stated that the raw, as measured, OmniMic phase data consistently "starts" at the beginning of the impulse response. This is incorrect. Per OmniMic's help manual, "At zero delay, the time reference is the instant that the peak of the impulse response arrives at the microphone."

          To answer your question, yes, XSim calculates this for you. When you click the "derived" button, XSim brings up dialog box called "define response tails" which then asks you to put "tails" on the upper and lower end of the drivers response curve. You adjust the slope and frequency of the lower tail to "fill in" where you think the driver response would naturally continue below the noise floor. You adjust the slope and frequency of the higher tail to "fill in" where you think the driver response would naturally continue above the 20kHz area. When you hit enter to accept the tails, a small light blue "H" appears next to the driver icon to indicate that this driver is now using "minimum phase data."

          Hope this helps,

          Bill
          SideTowers: http://techtalk.parts-express.com/fo...corundum-build
          Totally Flat: http://techtalk.parts-express.com/fo...5-totally-flat
          Plumber's Delight: http://techtalk.parts-express.com/fo...notech-winners
          Linehopper: http://techtalk.parts-express.com/sh...Esoteric-build

          Comment


          • #6
            Thanks Bill

            Geoff

            Comment


            • #7
              Bill

              Your technique as outlined in post #3 seems very helpful and I'd like to be able to hang onto it and refer to it. Is there a chance you could write out the steps in detail and put that into a sticky?

              Comment


              • #8
                Originally posted by 4thtry View Post

                I need to correct a mistake I made in the previous post. I incorrectly stated that the raw, as measured, OmniMic phase data consistently "starts" at the beginning of the impulse response. This is incorrect. Per OmniMic's help manual, "At zero delay, the time reference is the instant that the peak of the impulse response arrives at the microphone."

                Bill
                Which means you can never get good phase data from Omnimic. If accurate phase is important to you then using something like ARTA in its semi-dual channel configuration or Holm Impulse and its "time lock" function are better ways to go. But most people find the phase data in Omnimic close enough for government work.

                Comment


                • #9
                  Originally posted by Murphy-Pie View Post
                  Which means you can never get good phase data from Omnimic. If accurate phase is important to you then using something like ARTA in its semi-dual channel configuration or Holm Impulse and its "time lock" function are better ways to go. But most people find the phase data in Omnimic close enough for government work.
                  The phase curve does bounce just a little bit during measurements because of this. However, I have found that this slight inaccuracy has had no impact on my models. The variation is extremely small.
                  SideTowers: http://techtalk.parts-express.com/fo...corundum-build
                  Totally Flat: http://techtalk.parts-express.com/fo...5-totally-flat
                  Plumber's Delight: http://techtalk.parts-express.com/fo...notech-winners
                  Linehopper: http://techtalk.parts-express.com/sh...Esoteric-build

                  Comment


                  • #10
                    Originally posted by skatz View Post
                    Bill

                    Your technique as outlined in post #3 seems very helpful and I'd like to be able to hang onto it and refer to it. Is there a chance you could write out the steps in detail and put that into a sticky?
                    I have been asked a number of times for my step-by-step XSim procedures. I have them written out in detail, but the file is on another computer. I will go get them and post tomorrow. The file is quite long and I think it also includes instructions for running horizontal and vertical polar response simulations as well. XSim does not have target curves, but you can use dlr Winfilters program to generate them and import as necessary to check your slopes.
                    SideTowers: http://techtalk.parts-express.com/fo...corundum-build
                    Totally Flat: http://techtalk.parts-express.com/fo...5-totally-flat
                    Plumber's Delight: http://techtalk.parts-express.com/fo...notech-winners
                    Linehopper: http://techtalk.parts-express.com/sh...Esoteric-build

                    Comment


                    • #11
                      Here is the detailed listing (and one attached screen shot). It is fairly long and boring with 35 steps and 7 tips. There are probably several mistakes in this list, so use with caution. Basically, this is my interpretation of how to do things after having read and re-read several PETT threads & white papers over the years. Enjoy!

                      -------------------------------------------------

                      My XSim crossover development procedures:

                      1) I use OmniMic and DATS V2 for all tests.
                      2) I build the speaker box and mount all drivers.
                      3) I drill a small hole in the back of the speaker and run a pair of wires to each driver and out
                      the back. I seal the hole temporarily where the wires come out with a small dab of
                      caulking.
                      4) I set OmniMic up in my great room, which has a sloped ceiling leading to a loft area.
                      All reflective surfaces are at least 5 to 6 feet away from the mic and speaker, except for
                      the floor, which is always much closer.
                      5) I usually position OmniMic 26” to 39” away from the speaker, directly on axis with the
                      tweeter dome. The taller the speaker, the further away I position the mic.
                      6) Sometimes I put the speaker on top of my DIY horizontal polar table (17 inches high) and
                      sometimes I put the speaker on a stand. If a tower speaker, sometimes I place it directly
                      on the floor so that the mic picks up the proper floor boundary gain effect. Remember that
                      the amount of BSC applied is greatly influenced by how high you place the speaker during
                      measurements!!!
                      7) I hook up a good amplifier and CD player and run a pair of wires to the back of the
                      speaker. The amp and CD player tone controls are always defeated or set to "FLAT". I
                      do not use my internal laptop CD player or small digital amp.
                      8) I insert a 33uF or 50uF non-polarized electrolytic protection capacitor in series with the
                      tweeter for all tests.
                      9) I hook the amplifier to the woofer first, carefully observing + and – polarity.
                      10) I insert the OmniMic test CD into my CD player and play track 2, sine sweep.
                      11) I set Omnimic to sine sweep, blended mode, 5ms gate, 1/48th octave smoothing,
                      phase on.
                      12) I adjust the amp volume to a moderate level that seems like it will not damage the
                      drivers, especially the tweeter.
                      13) VERY IMPORTANT: Once I set the testing volume level, I DO NOT change the volume
                      level during any of the tests listed in step 15 below..
                      14) If I do decide to change the volume level for some reason, perhaps because it sounds
                      too loud on the tweeter, then I go back and re-do all step 15 tests from the beginning
                      using the same volume level for all drivers.
                      15) I take a FR measurement, then I pause OmniMic, then I pause the CD player, and then I
                      click 'save curve" as an FRD file for all driver combos as follows:
                      A) Woofer alone.FRD
                      B) Midrange alone.FRD
                      C) Tweeter alone with 33uF series protection cap.FRD
                      D) Woofer+Midrange.FRD (paralleled up connection to amp)
                      E) Woofer+Tweeter with 33uF prot cap.FRD (paralleled up connection to amp)
                      F) Midrange+Tweeter with 33uF prot cap.FRD (paralleled up connection to amp)
                      G) Woofer+Midrange+Tweeter with 33uF prot cap.FRD (paralleled up connection to
                      amp)
                      16) I am very careful to observe polarity + or - for all step 15 tests.
                      17) The number of step 15 tests will be reduced from 7 to 3 for a 2 way build.
                      18) I am also very careful not to move or bump the microphone or speaker during all step 15
                      tests.
                      19) This gives me a complete set of on-axis FRD files that can be used to develop a new
                      crossover.
                      20) Now I need a complete set of ZMA files for each driver measured "in box"
                      21) I use DATS V2 to run an impedance sweep on each driver alone, and then export the
                      curve using a zma extension as follows:
                      A) Woofer in box.ZMA
                      B) Midrange in box.zma
                      C) Tweeter in box.zma (without 33uF protection cap)
                      22) Note: I do not use a series protection cap on the tweeter for the zma test, as this is a
                      very low power, single sweep type test.
                      23) I load the XSim program, and, on the schematic CAD screen, create a 3 way connection
                      of tweeter, midrange, and woofer to the amp with no crossover parts, just hard wire
                      connections between amp and drivers. I do NOT install a 33uF cap in series with the
                      tweeter on this schematic screen. See the attached screen shot example of what this
                      schematic looks like.
                      24) I then click on each driver icon to bring up the driver's input dialog box and enter the
                      appropriate "alone.FRD" and "driver.zma" files for the 3 drivers that I created in step 15.
                      25) Once I start entering the FRD and ZMA files, a strange looking, composite type,
                      frequency response graph starts to show up on the frequency response graph. This
                      looks like a bad response, but this is OK and normal.
                      26) Once this is done, I set the "mod delay" offsets in XSim using the "Get file"
                      procedure as outlined in the next few steps.
                      27) On the top of XSim's frequency response graph, I click curves, then “get file”, then load
                      the Midrange+Tweeter with 33uF prot cap.FRD file in, which then loads this file on top of
                      the modeled graph.
                      28) On the CAD schematic screen, I connect the tweeter and midrange icons, but temporarily
                      disconnect the woofer icon.
                      29) Now the goal is to adjust the "mod delay" of the tweeter until the model and "get file"
                      match as closely as possible. Again, since this is a measurement of the tweeter and
                      midrange alone, I temporarily disconnect the woofer on the schematic CAD screen.
                      30) When the two curves match as closely as possible, the "mod delay" is correct for the
                      tweeter driver dialog box.
                      31) I repeat this same "get file" matching procedure for all combinations of measurements
                      and possible crossover model connection possibilities. When done, I have a "mod
                      delay" setting of some value for the tweeter and woofer, but NO "mod delay" setting for
                      the midrange. The midrange is considered the anchor driver and does not require a
                      "mod delay" adjustment.
                      32) Once I have the "mod delays" set up, I am ready to start developing the crossover.
                      But before starting, I must establish the SPL of the 100-300Hz region so
                      that I can decide on the amount of baffle step compensation (BSC) to apply.
                      This is not an easy thing to do, because the FR measurements below 400Hz are
                      bouncing up and down due to room gain and boundary reflections.
                      33) One method used to establish the 100-300Hz SPL level would be to take near field (NF)
                      frequency response measurements of your midrange and woofer drivers and then merge
                      them with the far field (FF) measurements using the blender program. If I decide to use
                      this procedure, I need to replace all “as measured” phase data in my model with
                      minimum phase data.
                      34) Another method would be to apply 1/3 octave smoothing to all frequencies below 400Hz
                      and then splice this data into the far field curves. With experience in looking at how the
                      response rises or falls from 1000Hz to 100Hz, I have found that I can, with reasonable
                      accuracy, estimate the amount of baffle step needed in this manner. I also adjust the
                      amount of BSC applied based on the amount of floor boundary reinforcement in my
                      measurements, which varies with microphone testing height.
                      35) I then develop my crossover by inserting capacitors, inductors, and resistors in series
                      and/or parallel with my drivers. As I do this, the frequency response and impedance
                      curves change instantly, so I can see if I am moving in the right direction.

                      SideTowers: http://techtalk.parts-express.com/fo...corundum-build
                      Totally Flat: http://techtalk.parts-express.com/fo...5-totally-flat
                      Plumber's Delight: http://techtalk.parts-express.com/fo...notech-winners
                      Linehopper: http://techtalk.parts-express.com/sh...Esoteric-build

                      Comment


                      • #12
                        I tried to post the entire thing, but got a message that my post exceeded 10,000 characters. So I moved the TIPS section to this 2nd post:

                        TIPS:

                        A) Recently, I have begun to use dlr's new winfilters program to generate target curves,
                        importing them into XSim using the FR window's “get file” drop down menu.

                        B) I watch the impedance curve closely as I make changes to make sure the impedance
                        does not drop too low (below 3 ohms or so) with a high negative phase angle. From what
                        I have read in the forums, a high negative phase angle with low impedance is considered
                        to be a very difficult amplifier load.

                        C) As I design, I click on the frequency response curves drop down menu and then load the
                        various drivers with phase curves onto the screen. I turn off the system and woofer phase
                        curves to remove clutter. I watch the phase curves for the tweeter and midrange and try
                        to get the very best "phase tracking" on these drivers. I want the curves to be parallel or
                        overlapping throughout the crossover region. If these curves are non-parallel, then the
                        crossover model will not sum properly.

                        D) If I plan to use the speaker well away from the rear and side walls, then I try to apply the
                        full 6dB of baffle step compensation (BSC). If I plan to put the speaker near a back
                        wall, then I apply much less BSC. Also, if I place the woofer very close to the floor in my
                        design, I have found that much less BSC is needed, due to the floor boundary
                        reinforcement effect.

                        E) I often repeat step 15 measurements above for other microphone positions. This makes
                        it possible to perform horizontal and vertical polar response simulations in addition to
                        on-axis simulations. When I do this, I am careful to use the “get file” procedure again
                        to set “mod delays” for each microphone position. Every time the microphone is moved,
                        the relative distance from mic tip to individual driver VC changes as well.

                        F) I have also changed the FRD phase source from “as measured” to “derived” which brings
                        up a “define response tails” dialog screen. This replaces the “as measured” phase with
                        minimum phase data. I can then export the revised minimum phase FRD files and import
                        them into other modeling software packages, such as PCD or WinPCD. This allows me
                        to run polar response simulations, once I have the x,y,z driver coordinates set up properly.

                        G) I can switch back and forth between “as measured” phase and “derived” phase in XSim,
                        but when I do it is necessary to repeat the “get file” matching process to adjust the “mod
                        delay” settings each time.
                        -----------------------------------------
                        SideTowers: http://techtalk.parts-express.com/fo...corundum-build
                        Totally Flat: http://techtalk.parts-express.com/fo...5-totally-flat
                        Plumber's Delight: http://techtalk.parts-express.com/fo...notech-winners
                        Linehopper: http://techtalk.parts-express.com/sh...Esoteric-build

                        Comment


                        • #13
                          Many thanks, that's great!

                          Geoff

                          Comment


                          • #14
                            4thtry,

                            Your tutorial is most excellent!!! Thank you!!!

                            I've always done 2-way as I've been struggling with how to measure the woofers...

                            Here is another tip... If you Xsim3d which supports active filter you can 'fake' a target curve by setting up idealized dummy drivers in parallel with your real drivers, That idealized driver has flat response @ 80db. Then you can apply the active filter (eg LR24) and compare the response of the filtered idealized driver with our filtered real driver.

                            Thanks,

                            Duc

                            Comment


                            • #15
                              Just remember that the cap with the tweeter shifts the tweeter phase. The as measured phase will be shifted.
                              John H

                              Synergy Horn, SLS-85, BMR-3L, Mini-TL, BR-2, Titan OB, B452, Udique, Vultus, Latus1, Seriatim, Aperivox,Pencil Tower

                              Comment

                              Working...
                              X