User Tools

Site Tools


CNC machining, CAM and G-Code


You might be sitting in front of a cnc machine at Generator feeling quite intimidated by the amount of learning involved in order to get to make a single part. Not to worry, there is a way forward and this guide will help you get there. To start out there are 3 main subjects that need to be addressed in order to gain competency in CNC (computer numerically controlled) machine operation.

The CNC machine

Every machine that is computer controlled is set up just a little bit differently from the next one. Furthermore, cnc machines on their own can develop their own “ticks” so to speak. Getting comfortable with the machine you are trying to operate can often times come with very specific historic knowledge about the brand, the configuration, the components used and even the service that has been done to the machine over time



CAD (computer aided design / drawing / drafting) and CAM(computer aided manufacturing / machining) - In short, CAD is 2 or 3 dimensional modeling software, such as fusion 360, blender, Soldworks Inventor autocad or even adobe illustrator. These programs allow for one to model out a part or assembly of parts that they would like to make. Its extremely helpful for predicting how parts will work together in real life or even simply to dream up parts and then generate plans for those parts in a savable sharable digital format. After modeling in CAM you would then turn to a CAM program such as Vcarve, laserworks, HSM, or even Epilogs printer drivers (arguably the easiest version of CAM). You would then use CAM to turn CAD into G-Code.

Before CAM existed, machine operators would program G-Code by writing it out which was hugely labor intensive and often rather limiting. The programs that that are developed through the CAM process today are roughly 100x longer and 10x more complex than they were 20 years ago when CAM programs first became popular in heavy manufacturing. Traditionally CAM programs are very expensive; however the price keeps dropping every year.



(Geometric code) - Is a procedural programming language originally developed by the MIT Servomechanisms Laboratory in the late 1950s. The code was then adopted by AIN in 1960, and by ISO as well as NIST in 1980. Over that time and onto today it is the standard language that all computer controlled machines use to control motion. G-code is usually opened on a machine controller (which is a computer with an operating system-of some variation, attached to motor controllers) and the code is then executed by the controller line by line in a vertical sequence downward until the last line, or a program pause or stop command. More complex variations of G-code are able to preform logic functions and loops, so this code is not executed linearly. However at this current time hobbies level controllers and entry level machine controllers generally can not deal with the more complex / logic oriented variations of G-code. It is important to know what G-Code characters your system is capable of processing as well as having a CAM - post processor, that matches the controller on the machine you're using.


cnc_cam_and_gcode.txt · Last modified: 2019/02/14 06:50 by mattf