The inspiration to embark on the journey of designing and building a custom-built CNC Router was driven by the high cost and long lead times associated with outsourcing machined parts. Faced with these challenges, I recognized the need for an in-house solution that would enable rapid turnaround of components, facilitating swift iterations and empowering me to iterate on my designs more efficiently. While there are budget-friendly off-the-shelf routers available, I couldn't resist the opportunity to push my skills to the limit and prove that I was up to the challenge!
Before beginning any design work it was crucial to establish the key requirements of the CNC Router. The size of the cutting bed, the materials that the CNC machine would be required to cut and how the machine would be controlled were among a few of the requirements I felt were important to determine early on.
Once the requirements had been defined, I began to conduct research on existing CNC router designs and the key components. It became evident that the next critical decisions revolved around the linear motion aspects. Firstly, I had to determine how to mount each of the gantries to allow them to move freely on their respective axis whether that be V-slot wheels, linear rods or linear rails. Although more expensive, linear rails were selected in order to prevent any vibration which may be experienced when using V-slot wheels and due to their increased stiffness compared to linear rods as they are supported along the entirety of the rail. Secondly, I chose ball screws as the preferred method for converting motor rotation into linear motion, prioritizing their low backlash and high accuracy. Alternative options such as lead screws and belt drives were also considered.
For accurate and precise gantry and spindle movement, I selected NEMA23 stepper motors, which offered suitable torque for cutting soft materials like plastic and aluminium. To drive these stepper motors, I utilized DRV8825 stepper motor drivers and controlled them through GRBL software installed on an Arduino Uno. Similarly to 3d printers, GRBL interprets G-Code which can be exported from CAD/CAM software such as Fusion 360 to control the movement of the motors.
Once all the key components were selected, a detailed CAD model of the CNC router was created using SOLIDWORKS. To keep costs low, aluminium extrusion was chosen for the structure and all other components were either 3d printed or laser cut from carbon steel. After the design was finalised, I could finally begin the fabrication of the parts. The laser cut parts were outsourced to a local workshop and the 3D printed components were printed on an Anycubic FDM printer. Lengths of aluminium were ordered and cut to size using a chop saw.
Ease of assembly was a key goal during the design phase and therefore, once all the components had been fabricated, it was fairly painless to put together and allowed me to get cutting material quickly! Although the initial cut was successful, calibration was essential to improve the accuracy of the CNC router. Luckily, GRBL makes this easy by allowing the steps per mm of the stepper motors to be set. Using a dial indicator, I was able tune these values to the point where the dimensions of the cut parts were within 0.3mm of the design intent.
The outcome of this project was the successful creation of a CNC router capable of milling soft materials such as plastic and aluminium. I was able to fulfil my initial objectives of enabling rapid turnaround of prototype parts and avoiding the high costs associated with outsourcing machined parts. While the precision of the in-house machined parts may not match that of outsourcing, with a tolerance within 0.3mm of the design intent, they still serve their purpose for functional assessment during the prototyping phase.
Throughout this project, I was presented with numerous technical challenges which allowed me to develop my skills further. I was able to deepen my understanding of CNC machinery, mechanical design, electronics integration and CAM software.
In video above you can see the CNC router in action, milling a time critical part out of Delrin for a client project at work. The video showcases the full work flow from designing the part in SOLIDWORKS to simulation of the toolpaths and finally to milling the component.
Stay tuned as I already have many upgrades planned such as upgrading the stepper motor drivers to DM556T’s and replacing the current 12V power supply for the stepper motors with a 36V power supply to enhance torque output and overall performance.