Formulae for calculating crossover magnitude and phase based on component values

Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.
WTPro/ST

You might look at the Smith and Larson WTPro/ST measurement/modeling system. It is has a nice tool called the ICD which uses Spice models that include ZMA (impedance/phase) files of the drivers.

I've done all my loudspeaker crossovers with Spice, modeling the drivers with voice coil inductance and resistance and tank circuits for each resonant mode. Many of my models included several resonators to simulate standing waves in a horn, for example. The models were very good. But the S/L system goes one step further, allowing me to measure each device and use a ZMA file for driver impedance.

Here are some links that may be helpful:
 
marchel said:
Considering the math required and not even sure the final result would even be a good sunding speaker, I think I'ts easier to just buy a sound easy or something similar, Or learn how to use speaker workshop.

I use SoundEasy but if you want something free that will provide accurate results (assuming accurate data in) speaker workshop will work, or for something really easy to use check out Jeff Bagby's Passive Crossover Designer which works in Excel.

Regards,

Dennis
 
Right, I'm making progress with this. I have a spreadsheet together which calculates Hh(s) using true complex values for R. Looking good!

However, I now need to apply Hh(s) to the frequency response of the midrange unit I'm using. I have magnitude and phase data for this but looking at the results of Hh(s) I'm unsure of what that really equates to. How do I 'sum' Hh(s) and sensitivity magnitude and phase of the driver to get the output post highpass filter?

Thanks!

Alex
 
Having done some more reading on this I've realised that I hadn't consider the issues of resonance within the electrical circuits, which my spreadsheet couldn't predict. So I've worked out how to build an equivalent circuit for each speaker and then drawn that up in LTspice.

One slight concern - this equivalent circuit doesn't appear to take account of the enclosure. For the midrange sealed box how do I adjust the component values to take account of the raised Fb? Presumably the ported woofer box is more complicated - how do add the port's behaviour to the equivalent circuit?

Thanks again, am learning a lot!

Alex
 
alexclaber said:
Having done some more reading on this I've realised that I hadn't consider the issues of resonance within the electrical circuits, which my spreadsheet couldn't predict. So I've worked out how to build an equivalent circuit for each speaker and then drawn that up in LTspice.

One slight concern - this equivalent circuit doesn't appear to take account of the enclosure. For the midrange sealed box how do I adjust the component values to take account of the raised Fb? Presumably the ported woofer box is more complicated - how do add the port's behaviour to the equivalent circuit?

Thanks again, am learning a lot!

Alex

Hmm I assume you are talking about the equivalent circuit to the loudspeaker impedance?

In the closed box case it is easy, just modify the value of the coil in the parallel circuit so that fs becomes fc.

The vented box is more complicated, you will have to add a series resonace circuit in parallel with the parallel circuit in the equivalent.
 
Svante said:
The vented box is more complicated, you will have to add a series resonace circuit in parallel with the parallel circuit in the equivalent.

(alexclaber) In this case make a second CLR circuit in series with the first with the second fc2 for the box. Is not needed if your xover frequency is not to close to it. That's why people use a closed box for midrange (one of the reasons).
 
Hello,

Excel has everything to calculate complex transfer functions so you can calculate every network using reactive elements.

For a crossover you have first to express the impedance of every component of the crossover (C, L and R) as complex numbers.

In excel the impedance of a capacitor will be:
if pulsation ( = 2 pi.frequency) is in cell A1 (by example)
if capacitor value (in Farad) is in B1
if calculated impedance of the capacitor at the given pulsation should be in cell C1
C1 = complex(0;-1/(B1*A1);"i")

In the same manner the impedance of a self will be:
if pulsation ( = 2 pi.frequency) is in cell A2 (by example)
if self value (in Henry) is in B2
if calculated impedance of the self at the given pulsation should be in cell C2
C2 = complex(0;B2*A2);"i")

and the complex impedanc of a resistor will be:
if self value (in Henry) is in B3
if calculated impedance of the self at the given pulsation should be in cell C3
C3 = complex(B3;0;"i")


Then you can use the Excel complex functions:

complex.sum ; complex.div

to calculate the complex impedance of your crossover network.

As an example here is the copy of one cell of one of my own spreadsheets (this is the impedance of self in series with a parallel RC, French version of excel):

H10 =+COMPLEXE.SOMME(COMPLEXE(0;I$3*D10;"i");COMPLEXE.DIV(1;COMPLEXE.SOMME(COMPLEXE.DIV(1;COMPLEXE(I$5;0;"i"));COMPLEXE.DIV(1;COMPLEXE(0;-1/(I$4*D10);"i")))))

Then you can apply Ohm's law and extract the module and phase using the functions:
complex.module and complex.argument.


(please notice that as I use myself a French version of Excel I am not sure that the name of those functions in the English version are correct. Also, in a simplified installation of Excel the complex functions may not be installed so may be you'll have to install them).

Best regards from Paris, France

Jean-Michel Le Cléac'h


alexclaber said:
I'm looking to build a spreadsheet into which I can enter speaker SPL and phase and then inductor and capacitor values for given crossover networks and get a summed output. To do this I need the formulae for the effects of inductors and capacitors on signals but I can't seem to find this basic stuff. Could anyone point me in the right direction?

Am just looking to do 2nd order 2-way crossovers initially but presumably once you know the sums then one can extrapolate from there.

Thanks!

Alex
 
Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.