4-Axis CNC Hot-wire Foam Cutter (Arduino+Ramps1.4)

A CNC Hot-wire cutter is an awesome tool to have when you are building aeroplanes out of foam. It allows the ability to cut out any aerofoil shape from a CAD design accurately. A properly configured machine can save you a lot of effort and produce a smooth finish.
The machine has a Nichrome wire stretched between two towers. The wire is heated by passing current through it and the towers move relative to each other to define the shape of the cut. The 2D CAD design to be cut out is turned into G-code and fed to the machine, which moves in four independent axes to create complex contours like tapered wings.
The motion of each axis can be achieved by any means such as linear bearings on smooth rods or by using drawer slides of various sizes. Each axis is driven by a stepper motor through a Leadscrew, a GT2 belt and pulley can also be used depending on the size of the machine. The cutting forces involved is minimal and the construction only needs to be rigid enough to withstand the tension of the wire stretched between the towers.
This is a true 4-axis machine capable of cutting different shapes on both sides simultaneously, the problem then becomes, how to control 4 independent axes at the same time. Many tutorials focus on 3-axis machines like 3D printers but there does not seem to be enough documentation on building a 4-axis machine using easily available parts and open source software. We found a few people who had done similar projects using Arduino and Grbl and decided to make a CNC hot wire cutter of our own.
The build log and documentation can be found on Github”