• WANTED: Happy members who like to discuss audio and other topics related to our interest. Desire to learn and share knowledge of science required. There are many reviews of audio hardware and expert members to help answer your questions. Click here to have your audio equipment measured for free!

DIY 3D Speaker Scanner - the Mathematics and Everything Else

NTK

Major Contributor
Forum Donor
Joined
Aug 11, 2019
Messages
3,171
Likes
7,068
Location
US East
Let me get this out of the way first. Yes, my goal is to figure out how to build a 3D speaker scanner similar to Klippel's. Of course the first step is to figure out the theories.

In my post back in August, I wrote that I knew next to nothing about the mathematics of acoustics. I also wrote that reverse engineering Klippel's scanner might be too ambitious. In retrospect I think I should have said that acoustics was not my field. Mathematics is my hobby and this problem seems like a good challenge. I'd like to find out the mathematical theories behind Klippel's scanner.

I began to look for published papers on the web. (I am also aware of the thread “Klippel near field scanner on a shoestring” at DIYAudio forum.) Very soon I discovered that the technology developed for this type of applications (by the naval and noise and vibration people) is called near-field acoustical holography (NAH). A little more reading later I decided to get a copy of Professor Sean Wu's book “The Helmholtz Equation Least Squares Methods” as his method seems most promising.

This is a report of my investigation. I am happy to say that I am revising my assessment from “too ambitious” to “likely doable”. I am including the first 3 parts in this post. They have all the important information and the 4th part is just a supplement. I also include all the Python code I used for my simulations to generate the plots in my report.
[Edit:] Added a 5th part that describes a sound field separation method different from the one described in Part 3.

Here is a summary of the content:

Part 1: The Fundamentals of the Spherical Wave Functions
Part 2: The Helmholtz equation least squares methods
Part 3: Sound field separation
Part 4: Implementation guide (hardware discussions started with post 34)
Part 5: An alternate Sound field separation method
Code: (will come later today or tomorrow) Uploaded

Unfortunately at this moment I am unable to build a prototype robotic scanner to test. I am living in a small apartment. If and when I get to move into a house and has room for DIY projects, I would like to build a small version for testing smaller speakers. But at the meantime, I have to be content with just sharing my report.

Sorry for being long-winded in my report. Comments / critiques / corrections are appreciated. I'll try my best to answer questions. I only started reading up on acoustics a few months ago, and only the stuff that are related to this project. My understanding on this topic is very limited and I will be very surprised if I have not made plenty of noob mistakes.

Thanks.
 

Attachments

  • Part_1.pdf
    325.8 KB · Views: 1,538
  • Part_2.pdf
    10.7 MB · Views: 909
  • Part_3.pdf
    4.4 MB · Views: 748
  • Code (Jupyter notebooks).zip
    27.3 KB · Views: 493
  • Part_4.pdf
    453 KB · Views: 583
  • Part_5.pdf
    974.3 KB · Views: 523
  • Jupyter Notebooks for Part 5 Version Mar-2020.zip
    59.2 KB · Views: 440
Last edited:
As someone who has measured a lot of speakers at home, I can't begin to tell you how encouraging it is that you are attempting to improve access to this technology. Existing measurement methods are arguably good enough but leave a lot to be desired.

Let me know if you would like to discuss barriers to producing a prototype robot - I have no idea what that would look like but I tried to create an automated turntable some time ago for polars and learned a great deal.
 
Nice research, @NTK! Looking forward to digging into this more thoroughly when away from my work desk.

As someone who's background includes (way!) more field theory than I ever use, I was expecting spherical harmonics to make an appearance in the solution (as they must for solutions of the wave equation in spherical coordinates; math here is the same for electron/particle orbitals in quantum mechanics).
 
Just went through the papers (rather quickly). It is fantastic work and a great aid to anyone wanting to replicate 3-D measurements of loudspeakers.
 
I uploaded the code (in Jupyter notebooks) I used to create the graphs. Please see post #1.
 
As someone who has measured a lot of speakers at home, I can't begin to tell you how encouraging it is that you are attempting to improve access to this technology. Existing measurement methods are arguably good enough but leave a lot to be desired.

Let me know if you would like to discuss barriers to producing a prototype robot - I have no idea what that would look like but I tried to create an automated turntable some time ago for polars and learned a great deal.
Thanks for the kind words. I have some preliminary ideas on the robotic scanner. My background is in mechanical engineering and have some experience in motion control. The biggest roadblock for me is that I don't have room to build one as I'm living in a small apartment. I'll include some stick drawings of my concepts in part 4.
 
From a quick read I see I have much learning to do. I'll be much more comfortable with the robotics side.
 
Let me get this out of the ways first. Yes, my goal is to figure out how to build a 3D speaker scanner similar to Klippel's. Of course the first step is to figure out the theories.

In my post back in August, I wrote that I knew next to nothing about the mathematics of acoustics. I also wrote that reverse engineering Klippel's scanner might be too ambitious. In retrospect I think I should have said that acoustics was not my field. Mathematics is my hobby and this problem seems like a good challenge. I'd like to find out the mathematical theories behind Klippel's scanner.

I began to look for published papers on the web. (I am also aware of the thread “Klippel near field scanner on a shoestring” at DIYAudio forum.) Very soon I discovered that the technology developed for this type of applications (by the naval and noise and vibration people) is called near-field acoustical holography (NAH). A little more reading later I decided to get a copy of Professor Sean Wu's book “The Helmholtz Equation Least Squares Methods” as his method seems most promising.

This is a report of my investigation. I am happy to say that I am revising my assessment from “too ambitious” to “likely doable”. I am including the first 3 parts in this post. They have all the important information and the 4th part is just a supplement. I also include all the Python code I used for my simulations to generate the plots in my report.

Here is a summary of the content:

Part 1: The Fundamentals of the Spherical Wave Functions
Part 2: The Helmholtz equation least squares methods
Part 3: Sound field separation
Part 4: (to be completed) Guideline of implementation and a prototype robotic scanner
Code: (will come later today or tomorrow) Uploaded

Unfortunately at this moment I am unable to build a prototype robotic scanner to test. I am living in a small apartment. If and when I get to move into a house and has room for DIY projects, I would like to build a small version for testing smaller speakers. But at the meantime, I have to be content with just sharing my report.

Sorry for being long-winded in my report. Comments / critiques / corrections are appreciated. I'll try my best to answer questions. I only started reading up on acoustics a few months ago, and only the stuff that are related to this project. My understanding on this topic is very limited and I will be very surprised if I have not made plenty of noob mistakes.

Thanks.

Damned impressive...
Thank you for this effort.
 
Thanks for the kind words. I have some preliminary ideas on the robotic scanner. My background is in mechanical engineering and have some experience in motion control. The biggest roadblock for me is that I don't have room to build one as I'm living in a small apartment. I'll include some stick drawings of my concepts in part 4.


Would it be possible to acquire a dataset to test the software with? It seems to me that building the platform would be a difficult and expensive task if you lack assurance that it will produce good results.

How many measurements does the system need? I read the papers but I couldn't figure that out.

It's really an amazingly ingenious method from what little I understand. I think Klippel describes two sets of measurements taken on two slightly offset spherical surfaces to somehow seperate the emitted sound and the room reflections? And their paper indicates better results than an anechoic chamber.

The HiFi speaker industry has always responded to the availability of measuring equipment. Simple frequency sweeps on paper used to cost a fortune. The availability of of based measurement in the 90s was a huge step forward. Free software to view and manipulate polars is another.
 
Should stand that field separation is not particularly needed as you go into the high-frequency zone - gating already does that. Have you tried reconstructing patterns of some well understood sources (e.g. rigid disc on infinite plane) in software?
 
Would it be possible to acquire a dataset to test the software with? It seems to me that building the platform would be a difficult and expensive task if you lack assurance that it will produce good results.

How many measurements does the system need? I read the papers but I couldn't figure that out.
I don't have access to (and don't know where to get) any real measurement data to validate my method. That would be very nice.

Klippel gave some information on the number of measurements points. They are referenced in my reports. Their numbers are 100-200 points for simple speakers at <1 kHz (N<10), and >3000 points (N>30) for complex speakers at >10 kHz.

Should stand that field separation is not particularly needed as you go into the high-frequency zone - gating already does that. Have you tried reconstructing patterns of some well understood sources (e.g. rigid disc on infinite plane) in software?
SFS and time gated impulse measurements complement each other very well. One works well at low frequencies, and the other works well at high frequencies. Klippel recommends a dividing line of 2-3 kHz.

On your second question, I am still a newbie to acoustics, and am not familiar with any of these analytical solutions. Professor Wu had collaborated with Harman on speaker measurements too. He and Don Keele coauthored a paper. May be I should try to replicate their results of the rectangular plate. That's going to take time and there is a high probability that I'll not get anywhere :D

https://www.xlrtechs.com/dbkeele.co...ull Sphere Measurements Using HELS Method.pdf
 
@NTK, as the person who started that thread over at DIYAudio, I would like to give you an enormous thank you for this!

Unfortunately at this moment I am unable to build a prototype robotic scanner to test. I am living in a small apartment. If and when I get to move into a house and has room for DIY projects, I would like to build a small version for testing smaller speakers. But at the meantime, I have to be content with just sharing my report.
I have a workshop and some time that I would be happy to donate to building a prototype. Feel free to PM me.
 
In order to test the software, I would:
- look at a 1d then 2d then 3D problem
- use known source (theoretical)
- varied the conditions (size of the room, take a rectangular one, change lxLxh and see if you can reconstruct the original signal)

just guessing but the optimisation problem is likely illposed and you are likely to have numerical stabilities issues too. so checking for numerical errors could help too.
I would like to help but I am unlikely to have time. I will load the notebook and play with it.

good job Btw.
 
How would you even build something like this? 80/20 extrusions?
 
How would you even build something like this? 80/20 extrusions?

In the DIY audio thread I made a few proposals that would not be too hard to build.
They are easy to find, in the first 20 or so posts, but I can link to them if you are interested.
Basically simple rods on pivots that could be manually moved for a prototype, enhanced to a stepper motor for a CNC automated scan.
Carbon fibre would be nice, stiff and low inertia to permit rapid movement by the steppers.
Could be made thin to minimise reflections/acoustic field disturbance and wouldn't even be too expensive for a couple of pieces.
The Klippel mechanics seem clumsy and expensive to me.

Best wishes
David
 
In the DIY audio thread I made a few proposals that would not be too hard to build.
They are easy to find, in the first 20 or so posts, but I can link to them if you are interested.
Basically simple rods on pivots that could be manually moved for a prototype, enhanced to a stepper motor for a CNC automated scan.
Carbon fibre would be nice, stiff and low inertia to permit rapid movement by the steppers.
Could be made thin to minimise reflections/acoustic field disturbance and wouldn't even be too expensive for a couple of pieces.
The Klippel mechanics seem clumsy and expensive to me.

Best wishes
David

How would you control the steppers? Arduino?
 
How would you control the steppers? Arduino?

Depending on requirements of course, the entire system could be hosted on the ubiquitous PC platform (Win or preferably Linux): control, data acquisition, data analysis and visualization.

My day-job is control and data acquisition system software for particle accelerators and x-ray beamlines. I may be able to contribute.
 
How would you control the steppers? Arduino?
Overall control is from the computer with the acoustic measurement software.
Make a measurement with, say REW, step the microphone position, next measurement.
Probably USB to the stepper controller.
A quick search shows these are a standard item but I am not current with this hardware.
Should be no problem however.

Best wishes
David

Cross posted with dc65....1
 
Last edited:
I'd like to find out the mathematical theories behind Klippel's scanner.
... Comments / critiques / corrections are appreciated. I'll try my best to answer questions

I finally had the time to look over your reports with the attention they deserve.
My sincere compliments, really impressive work.
You have worked out as far or further as I had reached in the DIYaudio thread.
So all I can do is ask questions to clarify issues in my own mind and hope that the discussion helps you too.
I am interested to have your ideas on the Klippel patent, have you read it yet?
If you haven't then I posted its link in the DIYaudio thread, I found it well worth a read.

Best wishes
David
 
Last edited:
Back
Top Bottom