Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

If the Vbit angle is V degrees, and it has a flat of diameter D, then the H offset to apply on Z zero is :

...

Here are a few examples:

  • a 0.02" flat on a 60° vbit will require an offset of 0.0173"

  • a 0.02" flat on a 90° vbit will require an offset of 0.01"

  • a 0.01" flat on a 60° vbit will require an offset of 0.009"

  • a 0.01" flat on a 90° vbit will require an offset of 0.005"

Zero normally (the flat part of the vbit will touch the surface), then back off along Z by that offset and reset Z zero.

...

Roughing vs. finishing toolpaths

For every toolpath there are two conflicting needs: minimizing the total runtime, and getting the best finish quality and dimensional accuracy of the workpiece. Instead of settling for a middle ground that accommodates both constraints, a very common approach is to create two different toolpaths:

  • the first (roughing) toolpath will be optimized to go fast, maximising material removal rate, but will be programmed to leave a little bit of material around the selected geometry. Even if the tool deflects, vibrates, or more generally produces a poor surface finish, this will be taken care of by the next toolpath.

  • the second (finishing) toolpath will be optimized for getting a good surface finish and accuracy: it can be set to go slower, but even if it isn't, the simple fact that it will have very little material left to cut will reduce the efforts on the tool, and produce a cleaner result.

How roughing/finishing is set up depends on the CAD/CAM tool being used:

  • Carbide Create does not support (at the time of writing) any roughing/finishing option explicitly, but:

    • one can manually create additional geometry in the design to do it, as explained above in the alternatives to slotting.

    • or one can define a "fake" roughing tool and declare it to be slightly larger than the tool actually is, and use that tool in the toolpath: this will generate a toolpath that when cut with the real (slightly smaller) tool, will leave a thin layer of material around the shapes. Then, generate toolpaths based on the same geometry, but this time using a tool that is declared to have the true size, and run that: it will act as a finishing toolpath and shave off the excess material from the "roughing" pass.

  • Vectric VCarve has explicit options in its toolpath parameters to create an "allowance offset", basically a margin that will be kept when cutting. One can therefore select a geometry and:

    • create a first toolpath with an allowance offset (of say 0.01'')

    • create a second toolpath with an allowance offset of 0.

    • for profile toolpaths, this is even simpler: there is a "Do Separate Last Pass" option with an allowance offset value, to tell VCarve to use the allowance value for successive passes down the material, but for the last (deepest) pass, discard the allowance: this will result in the endmill taking a single full-depth pass all around the geometry at the end, shaving off the material to get to the final dimensions and finish quality.

  • Fusion360 has a "Stock to leave" option in the toolpaths, which works similarly:

    • create a first toolpath with stock to leave at a small value. Both the radial ("vertical") and axial ("horizontal") stock to leave values can be specified. Here is an example using 0.5mm radial and axial stock to leave in an outside profile toolpath: notice how at the end of this toolpath, there is a small amount of extra stock remaining around the center back square:

...

  • create a second toolpath, identical to the first one except setting radial and axial stock to leave to 0: this will shave off the extra material, to reveal the final walls of the workpiece (in blue) as well as remove the remaining 0.5mm at the bottom:

...

REST machining

A very common scenario is to first use a large tool to remove a lot of material quickly, and then switch to a smaller tool to cut finer details. CAM tools that support REST machining can optimize toolpaths such that the tool only works in the areas where material was not already removed by the previous toolpaths.

Consider the case where a large pocket must be cut, but the pocket has tight corners radius:

  • a large endmill will be more efficient at removing material quickly, but will not be able to reach into the tight corner

  • a small endmill will be able to reach the corner, but would be very inefficient at cutting the whole pocket

In the example below a 6mm (0.24'') square endmill is first used, with aggressive feeds and speeds to clear out a lot of pockets quickly, and with some stock to leave:

...

A second toolpath using an 1/8'' endmill and REST machining option, with no stock to leave, takes care of cutting (only) the tight corners as well as removing the remaining stock on the pocket walls (i.e. finishing)

...

The power of REST machining lies in the fact that both toolpaths refer to the same geometry (the pocket outlines), there is no need to manually create any additional geometry or contraints to restrict the second toolpath to working on the walls and corners only.

...

Lead-in/Lead-out

Consider the case of a profile cut, where the tool plunges straight down at a point somewhere along the profile. During the plunge, the forces on the endmill are mostly vertical, the tool will not deflect. But once the endmill has reached the DOC and starts moving around the profile, lateral forces on the endmill will cause deflection, and the actual cutting path will deviate from the intended path by a tiny amount (greatly exaggerated on the sketch below). The resulting profile cut may then end up having a (small but) visible notch at the point where the endmill plunged into the material:

...

One way to avoid this is to use a roughing pass with stock to leave: the deflection effect will still happen, but it will happen away from the contour, and a finishing pass (with very little deflection) will then come and shave off this small variation.

Another way to deal with such problems is to use lead-in (respectively lead-out) options if the CAM tool supports it: the toolpath with make the endmill plunge away from the profile, and then lead into (respectively out of) the profile edge:

...

At the time of writing, this feature is not supported in Carbide Create, but one can fallback to manually adding geometry around the piece to achieve similar results.

...

3D toolpaths

The standard version of Carbide Create does not support them, and the topic is too wide and too specific to be covered here properly, but here is a simple example of milling a donut shape in Fusion360:

...

Many of the concepts of 2D toolpaths apply, but the notion of roughing + finishing will be paramount for 3D, to get both a reasonable job time and a smooth finish. Typically, a large diameter square endmill will be used for roughing, and a small diameter ballnose will be used for finishing.

Carbide Create Pro includes support for creating 3D toolpaths from 2D features or from grayscale heightmaps. Since many 3D models lend themselves well to being projected to a heightmap, this opens up the possibility to do very intricate 3D carvings. Here is a simple example of milling a 3D surface in CC Pro, starting with the 3D roughing pass:

...

And then adding 3D finishing passes:

...

Drilling toolpaths

For drilling a hole, a first option is to use an endmill smaller than the hole, and use a circular pocket toolpath. It works fine, but turns out to be inconvenient:

  • if a job that could otherwise be done completely with e.g. a 1/4'' endmill needs 1/4'' holes, a 1/8'' endmill will be required just to mill the hole pockets.

  • small endmills usually have a short length of cut and shank, so cutting a deep 1/8'' hole with a 1/16'' endmill could turn out to be impossible.

A useful alternative is to use specific drilling toolpaths, that just plunge the endmill vertically, so it becomes possible to do a 1/4'' hole with a 1/4'' endmill. However, an endmill is very bad at drilling, it is just not designed for this, so the plunge rate should be limited, and the "peck-drilling" option used: the tool will cut a small DOC, retract to clear out the chips, and then plunge again, repeatedly until the full depth has been cut.

A more efficient alternative is of course to use an actual drill bit instead of an endmill, but it implies an additional tool change. Also, it's important (for safety) to check that the drill bits are rated for the speed the spindle will spin them at.

...

Previewing toolpaths from G-code

Pretty much all CAM tools embed a toolpath visualization feature, however what they display is the toolpath defined in the design, and this is not guaranteed to be 100% what the machine will execute, because of the post-processor step: the generated G-code might be subtly different depending on the selected options.

One way to double-check is to visualize the toolpath from the generated G-code file itself. There are a number of offline and online G-code viewers (CAMotics is a popular open source desktop app, and there are many online G-code viewers too):

...

Toolpath ordering matters

It's easy to understand that the order in which the toolpaths are run (usually) matters, but also quite easy to overlook a wrong ordering when a project involves many toolpaths. On the Shapeoko, toolpaths using different tools will be in different G-code files (since there is no automatic tool changer), so the likelihood of manually executing the files in the wrong order is small. But multiple toolpaths using the same tool will usually be included into a single file, and the ordering will be as declared in the CAM tool, so a user error is more likely!

Info

Toolpath preview, and better yet realtime toolpath simulation (when available), is the best mitigation against this risk