From Model to Mill (using HSM to Get Your Design From the Computer to the Machine Bed)




Introduction: From Model to Mill (using HSM to Get Your Design From the Computer to the Machine Bed)

Many of you reading this probably have access to and experience with some sort of 3D design software whether it’s professional or free. Out of those people, there are probably fewer who happen to have access to some sort of CNC machine (a ShopBot or other CNC router or mill). Of those, I’d be willing to bet even fewer still who have access to and are proficient at good CAM software. CAM software seems to be the weak link in what could be a fluid streamlined process, but instead can be frustrating and difficult.

Admittedly, I’m no expert in CAM software and until recently, the last time I used CAM for CNC routing some furniture pieces was almost 10 years ago. However, I now have the opportunity to use some great tools and software at Autodesk Pier 9 .

For some of my colleagues here at the Pier as well as for many others, a basic outline for taking designs from the computer to whatever machine you want to use could be a helpful tool in the digital workflow. What follows is just that – a BASIC outline or general how-to for taking your design from any software to CAM and getting it ready for machining!

This instructable assumes you have a design 3D modelled and have received training for a CNC machine of some sort and simply want to know how to go about programming your parts for machining. You should also check out this instructable on learning CNC in general!

As examples, I’ll go through 3 separate projects, created in various 3D modeling programs, brought into Inventor Pro through various means and all programmed in HSM. The first two are containers or jewelry boxes of sorts - part of a series of explorations I’m doing called the ‘Geode’ series which looks at the relationship between interior and exterior, continuous surface and texture. The third is a bike stem that I quickly reverse engineered (and made some modifications to!) from a photo of a super clean stem by LDG that I liked the look of, but isn’t available any longer!

Materials / Machines

6/4 x 8” x 20” (2) pre-surfaced walnut / ShopBot

2” x 6” x 9” 6061 aluminum / HAAS VF-2SS

2” x 2” x 4.75” 6061 aluminum / HAAS VF-2SS


3D modeling software (any)

Inventor HSM


Mesh Enabler for Inventor (optional)

Read on if you would like a quick overview of the processes I went through as well as some handy tips!

Step 1: Wham-Bam Get Some CAM!

Download Inventor HSM. Great news for students and educators – Autodesk software is free for you. Once you have it downloaded and installed, fire it up and peruse the interface. There should be a CAM tab which has everything you’ll need to program your part(s)....that’s the fun part though. First you need the parts!

Step 2: Import Your Part(s) or Model Your Part in Inventor

You can import a number of file types into Inventor - I do a lot of modeling in Rhino and so I was pleasantly surprised that Inventor could open my Rhino file (.3DM format) directly without having to ‘save as’ or export in another file format! (This is how I got both of my Geode projects into Inventor) This holds true as long as your models are made from polysurfaces or NURBS surfaces. If your model is a mesh, then that’s a whole other story. If your mesh isn’t too complex, you can download the Inventor plugin Mesh Enabler and that will convert your mesh into base features (solids) in Inventor. If your mesh is too complex (most likely if you have any sort of complex or organic geometry) then there are some workarounds. A colleague here at the Pier 9 AiR program just published a great instructable on doing just this though….so if your model has too many mesh faces, give it a try!

You can also model your part right in Inventor. For the bike stem I made, I felt I’d need some parametric constraints as I worked through the design, so I took the opportunity to delve into Inventor. It was a different type of modelling than I was used to and so there was a learning curve. I could have modeled the stem in Rhino in about 5 to 10 minutes, but then it would have been difficult to ‘adjust’ and modify it after the fact. After about a day and a half of just playing in the Inventor environment, along with looking at a few basic tutorials on youtube I was comfortable enough to get through the part. While straightforward and orthogonal, the piece had a lot of slots, holes, counterbores, etc. which made each side completely different!

Step 3: Orient Your Parts

Once you have your parts imported into Inventor, give ‘em a spin and make sure everything looks OK. If you need to make any changes to the model, make sure your UCS (user coordinate system) is in a logical place - one that makes sense as it relates to the major axes that your part(s) are in. This can be the same as (or different from) the WCS (work coordinate system) which you’ll set up later…….

Step 4: Stock Up!

Before going through the programming of your part, it’s helpful, if not essential, that you have your stock cut to size. Whether its, wood, aluminum, etc. It doesn’t have to be perfect, but having it fairly square and clean will help in many regards. It should be large enough to accommodate your piece(s) with adequate room for tool clearance and clamping (or other means of securing your work piece) but not so so large that you end up having to machine away loads of excess material! I find it helpful to then take precise measurements of the stock and have the actual piece of stock handy as I program the toolpathing! I even go as far as to marking x, y, and z axes on the stock itself, giving a real orientation to the piece which I can keep track of as I visualise the machining steps.

Step 5: Import Libraries / Create Tools

If a tooling library exists for the machine you’re using, then you are set! In Inventor go to the ‘Tool Library’ under the CAM tab and right click on ‘My Libraries’. ‘Create a New Library’ and then right click again to ‘Import Tools from Library’. Select the tool library to import and you’re good. Name your library whatever you want, though it would make sense to name it after the machine it’s meant for i.e. “P9_HAAS”. For those here at Pier 9 you can download tool libraries for the HAAS Mill, HAAS Lathe, Mori Seiki, and DMS Router HERE.

This makes toolpathing a breeze - it doesn’t however mean that you’ll be selecting the right tool for the job, that part is up to you!

If you’re using a machine without a tool library available, or if you’re creating a custom tool in general, you’ll need to make a ‘New Mill Tool’ and give it a name (remember to give it a number different than one in the existing library!). This is what I did for the Walnut Geode pieces I milled on the ShopBot. It definitely helps to have the tool in hand as you’ll need to enter in critical dimensions and specifications (such as overall length, # flutes, flute length, etc.) to create the tool. If you’re unsure of the tool specs, then consult the manufacturers specs. Onsrud Cutter makes a lot of different types of end mills, so I find that is a great place to start. Their website is a pain to navigate, but I found THIS extensive cutting tool catalog listing all their tools! It doesn’t however give recommended cutting feed and speed rates. You might have to do a bit of chip load calculating for that yourself - some formulas HERE and some more practical calculations HERE.

Step 6: Program Your Part(s)

Rather than try to explain all the steps in programming the toolpaths for your part(s) I’ll make it easy….simply watch this VIDEO!! It’s only 23 minutes long and takes you step-by-step through the setup, machining operations, simulations, and posting of your job!’s that easy. HSM is pretty intuitive and once you figure out the workflow changing operations, tools, etc. it is really quick and easy. I recommend watching the video to get an overview, then having it available to refer to as you program your own part. The video primarily focuses on 2D machining operations, but the same basic principles apply to 3D operations.

<iframe allowfullscreen="" frameborder="0" height="315" src="//" width="560"></iframe><br>

A few things to pay close attention to during this process - (actually that should be everything) but it might be easy to overlook these aspects:

-WCS (work coordinate system) - choose this carefully as it will determine the relative relationship between your part and the tip of the tool. Be especially diligent when placing your WCS if you have multiple sides to machine and your stock is being machined away - you might have to change your WCS multiple times!

-Machining boundary - this will determine the extents to where the tool can reach. You can use this to limit machining to specific areas of your part if you don’t want to machine the entire part with a certain operation. You can use the sketch tool to create these boundaries.

-Machining Heights - similar to the Machining Boundary, but in the Z axis. You can use this to limit the depth of certain operations.

Step 7: Simulate Twice, Machine Once!

Once you have all your toolpaths generated, right click your setup and ‘Simulate (All)’ to see a visual simulation of what should or shouldn’t be happening! It’s important to simulate all in the order in which you intent to machine as you’ll get collision errors, say if you’re trying to simulate a parallel finishing pass without simulating the adaptive clearing roughing pass that should be before it.

If something doesn’t look right then it probably isn’t - go back and check. It’s way easier to make a few quick changes and then regenerate your toolpaths than deal with a broken end mill or collision with your part!

Step 8: Post It

When all your toolpaths are generated and the simulation is looking good, you’re ready to post your job(s). You can either post process (All) or post process your operations separately. This really depends on the parts, the order of operations and the machine. Select the post process configuration i.e. ‘haas.cps’, ‘shopbot.cps’ etc. and post your file.

Step 9: Print It!

Right click on your setup and select ‘Generate Setup Sheet (All) - trust me. This will generate a summary of your entire job with stock dimensions, order of operations, tools used for each operation, cutting feeds, stepdowns, etc. Basically it’s everything you might need to know prior to and during your job! It’s also another chance to verify everything is good to go. You might catch a mistake in your job here. Whether you have it open on your laptop or you print it out to have with you (good to make notes on) while you’re at the machine, it’s a great feature to take advantage of!!!!

Step 10: Machine It!

OK, not exactly….there are several steps still before you load your job and machine your part….such as turning on the machine, homing the axes, loading the tools and so on. This really depends on the particulars of the machine and since I’m not really covering that here, you might have to take a class, read another instructable on the subject, or watch some more videos like this great HAAS series for the machine here at Pier 9!

I hope this has been a helpful OVERVIEW. Please feel free to add any other tips/tricks in the comments!

Formlabs Contest

Participated in the
Formlabs Contest

Be the First to Share


    • Bikes Challenge

      Bikes Challenge
    • Remix Contest

      Remix Contest
    • Make it Move Contest 2020

      Make it Move Contest 2020

    11 Discussions


    5 years ago

    I just drew up a surface and ran it today, used to have a max memory of 56kb, now I have 2 GB so I had some fun with high speed machining in MasterCam, now I need to relearn my speeds and feeds doe the higher RPMs


    Reply 5 years ago on Introduction

    Awesome! I love that machine - can't wait to do more with it!


    5 years ago

    Where did you get the file for the aluminum milled part with the diamond shapes? We just upgraded to a VF2SS and are getting a brand new UMC750 (5axis) so I want something to see the surfacing capabilities, thanks and nice work!


    Reply 5 years ago on Introduction

    Thanks scubaru! - I modeled those pieces in Rhino and Grasshopper (they're great for complex surfaces). The final pass on the HAAS was done with a 1/4" Ball End with about a .010 stepover.


    Reply 5 years ago on Introduction

    You're welcome....and thank you too!