In this final lesson, we will take our first look into the world of 5-axis machining by programming a 5-axis positional, or '3+2' milling part. To program this part, we will utilize both rotational axes to machine normally hard-to-reach areas on our solid model. While this part may seem more complex than parts in previous lessons, we will continue to follow the same workflow to help guide us through the programming of this part.
With a blank milling document open, we can now import our solid model to program features from.
The Import Wizard will help us setup our part, covering our stock step, as well as some of our machining prep.
Now that we have gone through the familiar process off importing and setting up our solid model, let's import a model to be used to define our stock material, as if we are machining a part that has already been through an operation on a lathe.
With our stock solid model imported, we simply need to apply this model to the Stock section of FeaturCAM
Now that we have completely worked through the import wizard, and defined our stock, we have just a few short steps left before we start programming features.
With our part imported, stock setup, and machining details accounted for, we are ready to start programming!
Now that we have setup or model for machining, let's start creating features to machine this 5-axis part! To start, lets recognize the hole feature on the top of the part.
Notice that FeatureCAM did not recognize the holes around the OD of this part. This has to do with us selecting 'Along the setup Z-axis' as opposed to 'Along a specific vector'. This gives us a peek into how FeatureCAM thinks when recognizing multi-axis features. FeatureCAM looks for vectors to define the Z-direction of a given feature. So in the case of that last feature, FeatureCAM only looked for features that were aligned with the Z-direction of Setup1, which we defined earlier.
Now let's create features to machine the remaining holes in this part.
As you probably saw, we had the option to specify a vector to define a new hole feature, but opted to automatically recognize all the remaining holes. We certainly could have specified five separate vectors to help recognize the five remaining holes, but in the interest of time, chose to use FeatureCAM's built-in intelligence to recognize the simple hole features.
Now we can move on to the two remaining features. As we saw with the hole features, we will need to help FeatureCAM recognize our 5-axis features by somehow specifying a vector to look along. The way we do this in FeatureCAM is by creating new setups, where the Z-direction is consistent with how you would like your tool aligned when machining the feature. With all features, with the exception of holes, as we saw, we will need to create additional setups before recognizing the feature.
With our Z-direction defined, we have everything we need to create this feature. The X-direction and setup location do not matter in this case.
As a review, to create all features in a 5-axis (3+2) part, we need to somehow define the vector we would like to machine along for a given feature. For holes, we were able to simply specify, or automatically recognize that vector, but for all of other 2.5D and 3D features, we need to create new setups with the Z-direction defining our tool-axis. With that in mind, we can program the remaining feature on this model
As you can see, Machine Simulations allow us to further visualize the machining of this part, by seeing the machine itself move as the part is machined. 5-axis inherently introduces a lot more moving components, and risk for collision when machining. Machine Simulations in FeatureCAM allows you to specify a ‘Machine Design’ model, and collision check your program before sending it to the machine.
For this part, feel free to make any revisions to the attributes, etc. of this part. Once satisfied, feel free to move on to the next step – NC Code.
With our final simulation run, our NC Code has been generated and is ready to be sent to the machine.
Note: This exercise is for educational purposes. The post-processor used in this exercise is a generic post-processor used for training that will likely not work for your machine. Do not attempt to run any code generated in this exercise.
Share a photo of your finished project with the class!
Nice work! You've completed the class project