Computer Numerically Controlled (CNC) machining refers to the process of a machine or tool using numeric data as instructions to control a manufacturing process, such as milling.
CNCs are normally defined by the number of axis they can work in, generally between 2.5 and 6 axis. The axis count relates to how the machine can move in X, Y and Z. 2.5 axis is just X and Y or Z. A 3 axis machine can do X, Y and Z at the same time.
The more axis a machine has the more complex processes that machine can complete. It also get harder to describe how they work – This video does a better job of explaining the differences between machines and the number of axis.
CNC machines can range in size depending on their application. Small hobbyist ones may have a bedsize of only 100x100mm whereas at the other end of the scale are machines the size of rooms. Take a look at this CNC mill producing a 10 ton bevel gear:
The data that controls CNCs is called ‘G code’.
“G-code is a programming language for CNC that instructs machines where and how to move. Most machines speak a different “dialect” of g-code, so the codes vary depending on type, make, and model. Each machine comes with an instruction manual that shows that particular machine’s code for a specific function.
G-code stands for “geometric code,” and follows some variation of the alpha numeric pattern:
N## G## X## Y## Z## F## S## T## M##” – Autodesk, Getting Started With G Code
These are the machines we have at the University of Brighton:
- 3 axis: office (Des): 1610 3-axis router, 160x100x45mm (XYZ)
- 3 axis: E28 (Jon): Imes-Icore M40 3-axis router, 1000x900x250mm (XYZ)
- 4 axis: EM13 (Des/Andrew): Roland MX-50 milling machine, 400x350x150mm (XYZ)
- 5 axis: E19 (Adam Cable): Herco VM10UI 5-axis milling machine, 400x400x400mm (XYZ)
As we currently can’t access the machines at Uni I used the CNC simulation that is built into Fusion 360.
I had varied result and I didn’t get the program to work exactly as I wanted. I’ll certainly be continuing with this as the Fixperts DP403 project will require a CNC’d mould for injection moulding of the product.
The process I wanted to complete was to take a model of a small 100x100mm tile, create and simulate a machining toolpath and generate the code required to make the part.
As my tutor had done an excellent write up and tutorial of the process here I did a recording of myself working through the process:
My process had a couple of variations as the tile is made up of 4 layers and it required a toolpath for each layer.
Here are the files:
I did encounter a couple of issues that I wanted to mention here:
The first issue I had was that I hadn’t appreciated that I needed to adjust the height for the toolpath of each layer:
I also used only facing processes which because of their function created a jagged inside edge between the layers. I realised I needed the internal layers to be cut as pockets.
When I adjusted the process to use pocket cut the simulation detected a number of collisions between the stock and the tool. I tried adjusting the setting to resolve the issue but I’ve not been successful. I will continue trying as this is very useful software that I plan to use in the future so I want to be much more capable with it.