Intro: CNC Strategies for Machining Helical Shapes
Helical shapes pose a particularly intense challenge for CNC machining. Revolving undercuts and issues fixturing irregular curved volumes test the mettle of even the most experienced of machinists. Small scale CNC machined helical parts are typically fabricated with machines offering a continuously rotating 5th axis as seen here:
The 5 axis machines capable of handling projects larger than a foot or so in any dimension rarely (if ever) offer this type of actuation, requiring different strategies for fabricating these challenging shapes. The following instructable tests 2 strategies for CNC milling helical shapes in wood with a large format 5 axis CNC - from creating stock in such a way to limit waste and machining time, fixturing and registration, to toolpath creation.
A little context...
- This work was complete while I was an artist in residence at the Autodesk Pier 9 work shop
- The project that required these strategies was one exploring entangled volumetric joinery - Ill cover this a bit in the next step
- The machine I'm using is a DMS large format 5 axis overhead gantry CNC with a 5' X 5' Y 3' Z capacity - a real beaut'
- If you're fairly new to the world of CNC fabrication, here is a great crash course:
Step 1: The Prototypes
The need for these strategies came about as the result of the culmination of research I was conducting as an artist in residence at the Autodesk Pier 9 workshop. I began looking for new relationships between parts in assemblies and developed a series of prototype joints. Perhaps the most exciting among these studies was a series of entangled shapes sliced by an auger or helical surface, allowing the resulting parts to essentially be unscrewed from each other.
I set out to produce a version of this idea at a larger scale, roughly the size of the human body, in order to face the challenges that fabrication would pose - specifically limits of material and tooling. Images show the parts, essentially overlapping rounded cone shapes, as they were developed in Fusion 360. This assembly tests a hybrid joining system where the two bodies are sliced by the auger shape and also have geometry for a sort of friction fit 2 way ball joint.
For the large scale prototypes I chose a hybrid of CNC milled MDF for the helical surfaces and aluminum ribs and sheet for the more primitive cone shapes. There is also a bit of steel and rubber for the spherical details. In the plus column, MDF is fairly cheap compared to, say, tooling foam, machines well enough, and is rigid enough to hold together as these shapes often taper from thick to narrow sections. On the down side, MDF is quite porous, heavy, and the dust produced while machining is more like a smoke that gently floats in the air...so dust collection is key. Not to mention the potentially hazardous chemicals, namely formaldehyde, used to bond the wood particles into MDF. Here I was sure to use the 'low formaldehyde' edition.
Step 2: Stock/Roughing Strategy
In order to keep dust, waste, and machine time to a minimum, a clever new strategy for stock creation was used that allowed me to only have to perform a finish pass while machining (no roughing!), as well as hollow the parts to reduce weight. This process is outlined here () by a fellow artist and Ill give a synopsis below.
The goal here is to use 2d CNC tools to create a rough shape out of laminated 3/4" slices requiring only a finishing pass. Typically a rectangular hunk of material would be used as stock requiring a long, dusty roughing operation. These helical shapes have a particularly high surface area to volume ratio, which makes this approach particularly valuable.
The downside is that this process requires a few different pieces of software probably other than that which you have used for design and CAM. Luckily, both of these are free offerings from Autodesk.
Step 1 : Offset and Hollow
- Export geometry as an .stl, import .stl into Meshmixer
- Offset the geometry to ensure that the sliced stock (step 2) totally envelops your shape. I offset by 1/2". This also gives you some small margin of error as you are registering your stock in the machine, although you really shouldn't need it...
- Make Solid
- Hollow. I hollowed with a 1.5" wall thickness so the finished part would be 1" thick
- Export the result as an .stl
Step 2 : Make Slices
- Import hollowed geometry into 123d Make
- Set your sheet size then choose the 'stacked slices' option
- I highly recommend using dowels, this will make assembly a breeze and your stock will be that much stronger
- Export the 2d sheets as well as the .stl of the sliced shape
Step 3 : Import the Sliced model
- Import the sliced model back into your CAM program and use this geometry as your stock in your setup
- In the case of Fusion, convert the mesh to BRep first. If your model was over 10k triangles like mine, import back into Meshmixer and reduce, then try again...
Now, cut your slices using the 2 or 3 axis CNC tool of your choice. I used a 3 axis Shopbot with a 4' x 8' bed and cut the slices out of 3/4" MDF with 1/4" dowels. Also, I used Titebond III wood glue for assembly.
Step 3: Fixturing and Registration
In order to take full advantage of the 5 axis capabilities of the DMS, I built a pedestal to raise the parts off of the bed by a foot. This allowed the tool to turn completely horizontal without the spindle or dust collection shrouds crashing into the bed. I sized the platform to be as long as my longest part in the Y direction as narrow as my narrowest part in the X direction. It is constructed as a 3/4" plywood box on a 3/4" plywood plate that extends toward the threaded fixturing holes in the acrylic bed of the DMS.
The general strategy for registering the stock in the fixture is that a unique rectangular MDF 'plate' generally the extent of the footprint of each part is centered to the box and butted against a registration block at the boxes front edge. This plate is laser etched with the footprint of the stock to be machined as well as a centerline to align with the centerline of the block. The front left corner of this block is used as 0,0 or work home. So with this setup, we can very accurately align the CNC fabricated stock to the plate, and the plate to the fixture with CNC techniques. The same information that you are working with in your CAM software appears on your parts and fixture, so it is just a matter of putting a very simple puzzle together - an incredibly precise set of relationships that is CNC all the way with little opportunity for error.
With this general approach I then proceeded with 2 setup variations to produces these challenging shapes.
Step 4: Tooling
Milling shapes with both convex and concave geometry and deep overhangs is made easier with a long tool (long reach). Long tools want to be thicker in order to remain stiff under high loads, particularly if you are machining hardwood or steel. Luckily, MDF is closer to foam than hardwood so I was able to use a pretty long tool without much worry. Also, since I wasnt doing any roughing operations, I didnt have to deal with any tool changes (except for 1 with the flip milling setup).
I used a 1" diameter ball nose 2 flute end millwith a 6" cutting length in uncoated high speed steel. I ordered these via MSC.
To drill the dowel holes in Setup 2 I used a 1/2" diameter 3" long 3 flute flat end mill
Step 5: Setup Type 1
Setup type 1 attempted to eschew the challenges of flip milling by slicing the parts in half. Even with 5 axis capabilities these quasi-cylindrical/conical, continuously revolving shapes could not be machined completely in 1 pass. Similarly, there are no flat spots on these parts that would allow for easy and stable fixturing to our pedestal. Slicing the parts in half strategically addresses both of these issues, but is not ideal:
- sliced surface provides a flat mounting surface
- slicing in the right location produces parts that can be completely machined without flipping
- slicing produces twice as many parts which means twice as much work preparing stock, and twice as much time developing tool paths
- the process of clamping and gluing the parts back together is an opportunity for losing precision of the parts
Unfortunately, in this workflow I wasnt able to find a way to retain an origin between all the exporting and importing in stock creation. So the first step after preparing your sliced stock and importing its digital version into your CAM software is to locate your stock model in space so that it completely envelops your design model. This is crucial to ensure that there arent any parts of your geometry dangling outside of the stock, therefore not existing in your machined piece. Also, I elevated the stock and model 1.5" off of the plate to allow the tool to cut all the way to the bottom edge without colliding with the fixture.
Next, I generated the registration plate. In Fusion, this means modeling your plate to size and generating a sketch that projects the outline of your stock, the profile of your plate, and a centerline in 2d. I cut my plates out of 3/4" MDF with a track saw, exported the vectors as a .dxf, and laser etched them with a large format laser cutter.
Then, I attached the stock to the plate aligning the stock to the laser etched footprint. You should expect the stock to be slightly wider than the outline as the clamping and thickness of the glue will add up over all of the slices. I used 2 x 4's (actual dimension 1.5" x 3.5") to raise the stock off of the plate to the right dimension. I had some problems anchoring the stock to the plate in a way that was stiff enough to hold up to the lateral forces of the machine. In the end I used 5" lag screws with washers through the bottom of the plate, through the 2 x 4's and into the stock.
Finally, I attached the plate to the platform aligning the etched centerline with the centerline of the registration block.
Step 6: Setup Type 1 Toolpaths and Machining
The images here show the progression of toolpaths I used to carve this part. While the DMS offers 5 axis articulation, my toolpaths were created with a '3+2' axis strategy rather than true 5 axis which allowed me to stay in Fusion (Fusion does not offer 5axis programming yet). For true 5 axis programming, I would have used HSM Pro for Inventor, or FeatureCAM from Delcam. This means that each operation has a fixed z orientation. To reach all of the surfaces and nooks I found it best to break up the pass into quite a few orientations to keep the tool as normal to the surface as possible.
Step 7: Setup Type 2 - Flip Milling!
After struggling with the labor of tracking and assembling all the slices for stock and struggling with gluing and clamping the resulting irregular shapes, and fueled by the confidence of successfully registering and machining the parts, I decided to tackle the challenge of flip milling. The new challenge here is to find a way to fix an irregular stock shape before and after flipping.
For the initial orientation, our sliced stock strategy offers a fairly easy solution. I simply extruded 3 of the slices down and sliced them flat. Now I have 3 fins that I can register to a plate using the same technique in Setup 1 - projecting a sketch in Fusion of the fins and laser etching. I added a tab detail to the fins so that they could easily be removed after flipping the stock. For added rigidity, I made a 4 pronged jig with the shop bot that the fins of the stock can slide and screw into. The jig is aligned to the etch and screws to the plate, the stock screws to the jig, and the plate is again centered to the platform via the registration block..
For the flipped orientation I used 1" wooden dowels to support the irregular shape. In fusion I created a sketch line to serve as the axis of rotation, then duplicated and rotated the geometry. I modeled and located 4 dowels towards the extents of the shape and used combine > cut to subtract the dowel shape about 1/2" deep into the model. I then flipped the model back over along the same axis and created a boring operation as the final step for machining the first orientation creating the dowel holes. Similarly to setup 1, I made a 2d sketch projecting the dowel locations onto the profile of the plate. Now the plate will have laser etched locations for the jig from the first orientation and the posts for flipping the stock. This gave me 4 accurate mounting points in the irregular geometry so that I will know exactly where the stock is in space after flipping. I cut the dowels with a chop saw to the dimensions extracted from Fusion and made some collars with the Shopbot out of 3/4" MDF for added stiffness and screwing real estate.
After machining in the first orientation I removed the stock from the jig and cut the fins off at the tabs with a Sawzall. I then removed the jig from the plate and attached the 4 posts aligning with the dowels. Then it was as simple as aligning the holes with the dowels and seating it with a mallett - ready for round 2!
Step 8: Setup Type 2 Toolpaths and Machining
Same programming strategy as with Setup 1 - While the DMS offers 5 axis articulation, my toolpaths were created with a '3+2' axis strategy rather than true 5 axis which allowed me to stay in Fusion (Fusion does not offer 5axis programming yet). For true 5 axis programming, I would have used HSM Pro for Inventor, or FeatureCAM from Delcam. This means that each operation has a fixed z orientation. To reach all of the surfaces and nooks I found it best to break up the pass into quite a few orientations to keep the tool as normal to the surface as possible.
Step 9: In Conclusion
The images above show my final parts and assembly after finishing, painting, and adding some metal cones and hemispheres to complete the geometry.
Ultimately, the flip strategy did save a lot of time with stock fabrication and setup, and was very a accurate thanks to the workflow of CNC jigs. The only problem was with the rigidity that the dowel fixturing offered. Since my part was generally cylindrical (long and narrow), The dowels weren't able to be spaced far enough from each other in the X axis to provide stiffness (laterally) against the force of the tool while machining the long sides, resulting in a bit of chatter.
I'm by no means a very experienced programmer or machine operator and I learned a few valuable lessons along the way. It would be great if any veteran machinists out there could chime in with some feedback, or even CNC 101 tips that I might be oblivious to. Thanks!