Acoustic Horn Design – The Easy Way (Ath4)

Awesome. That would make it perfect.

I confirm now that thicken issue, it is caused by the throat profile as the the profile starts to intersect on itself. Work around is to do it in smaller segments and use loft / patch to fix the outside edge as needed. Many ways are now available when we can work with few surfaces rather than mesh. Surfaces can be then later combined to single body.

Outside is lofted from bottom ring to top and is thus straight line giving variable thicknes to walls.
 

Attachments

  • Horny horn.jpg
    Horny horn.jpg
    147.3 KB · Views: 538
  • Horn too.jpg
    Horn too.jpg
    39.5 KB · Views: 528
Last edited:
In the meantime, attached is a (relatively) high resolution STL file for the same shape. You can try to compare the two surfaces.

This is the definition file:

ThroatDiameter = 33 ; [mm]
ThroatAngle = 0 ; [deg]
Coverage_Horizontal = 110; [deg]
Depth = 120 ; [mm]
SE_s = 0.7
SE_n = 4.0
SE_q = 0.995
Depth.ConicSectionPart = 1.0
Shape = raw2rect
Shape.FixedPart = 0.01
Shape.CornerRadius = 40 ; [mm]
Shape.StretchExp = 3

ShapeCurve = SF
SF = 1.65,2.3,4,2,5.1,2.9
SF.Rot = 0

Mesh.AngularSegments = 200
Mesh.DepthSegments = 50
Mesh.CornerSegments = 8

Out.DestDir = "D:\Horns"
Out.Write_STL = yes
Out.Write_MSH = no
Out.Write_ABECProject = no
 

Attachments

  • ath4_stl_test.zip
    265.1 KB · Views: 109
Last edited:
Solidworks doesn't want to thicken.
That looks like you have imported the mesh as a surface in solidworks, you have to join all the faces together to get it to thicken. If you merge all those faces together then it changes the geometry. By lofting the splines as shown before you get a single face that can be thickened.

The closest I got with solidworks and a mesh was to get solidworks to slice through the mesh at 5mm increments which gave the same sort of curves as mabat can generate, the problem was they were mesh sketches with a large number of points and it became too unwieldy to use.

The test file mabat posted can be downloaded as igs which should allow you to test it in solidworks.
 
That looks like you have imported the mesh as a surface in solidworks, you have to join all the faces together to get it to thicken. If you merge all those faces together then it changes the geometry. By lofting the splines as shown before you get a single face that can be thickened.

Im could thicken by ticking option in STL import but then when I extrude driver mouting I can't do up to body or surface (thickened mesh).
 
Superimposing the body created with loft with the stl there are no major differences, the spline model is "softer" than the stl due to its triangulation nature. Also when we export it to stl for printing that triangulation will occur again, it will depend on the export parameters to create a surface faithful to the body.
 

Attachments

  • ath4-spline-test2 v1  stl.jpg
    ath4-spline-test2 v1 stl.jpg
    525.8 KB · Views: 414
Thanks! That looks quite good to me.

The surafce loft is very close to the mesh I turned off the hidden edges to show it more clearly. Mesh surface is pink.

attachment.php


Patching the surface to make a solid and cutting it out of a bigger block to represent a baffle gives exactly the same result. So it's only when you thicken that care needs to be taken to make sure the profile matches.

attachment.php
 

Attachments

  • MeshvLoft.jpg
    MeshvLoft.jpg
    83.8 KB · Views: 1,300
  • Mesh vSolid Cut Loft.jpg
    Mesh vSolid Cut Loft.jpg
    91.7 KB · Views: 1,265
Here's another way (not necessarily better) to make a solid waveguide with greater thickness without using the thicken command. Looks like this, pdf guide of the steps attached below

attachment.php


attachment.php
 

Attachments

  • Finished Top.jpg
    Finished Top.jpg
    34.5 KB · Views: 1,682
  • Finished Bottom.jpg
    Finished Bottom.jpg
    26.9 KB · Views: 957
  • Another way to make a solid.pdf
    376.5 KB · Views: 171
Ath 4.4.3 beta

For those impatient, here is a beta version with some quick instructions of how to proceed (see the README file): Ath 4.4.3 beta
It should work. What's still missing is the second surface for adding thickness.

Looking forward to see your renders!

Edit: Oops, the scale of the profiles was still wrong. Please download again, if you already did so.
 
Last edited:
Now I'll tell you a secret.

1) There is a parameter "Mesh.DepthSegments" that is well known. It defines the number of "slices" for the mesh and STL. This is also the number of slices written in the coordinate file.

2) There is a mapping of z coordinates (distances from the throat) for these slices that is controlled by a Bezier cubic. On the graph below you see the default setting. This can be changed by a parameter Mesh.ZMapPoints. For the default values it would be:

Mesh.ZMapPoints = 0.5,0.1,0.5,0.99

The numbers are just the coordinates of the cubic control points (x1,y1,x2,y2), normalized to interval <0, 1>.
You can easily setup you own slice spacing by this interactive graph: Desmos chart - Bezier cubic for Z-Map - slide the middle two orange control points.

I think that in most situations the default values will work just fine. You can change that however and maybe it's good to be aware of.
 

Attachments

  • z-map.png
    z-map.png
    36 KB · Views: 147
Last edited: