When I started this CNC project, I thought it would be a lot easier than it turned out to be. This is known as the Dunning-Kruger effect. This is a chronic ailment for me – I will head into any subject, no matter how impossible on the basis that it can’t be that hard. By the time I realize that I lack a few skills and knowledge, I am already so far down the road that I may as well acquire the missing knowledge and get on with it.
This CNC project took me back to real world engineering – something I did until money, fame and status lured me to management jobs. Real world engineering is shown below. This is a driver for a stepper motor where I swapped the + and – inadvertently. The 13V 10A had literally a flame coming out of this chip. There is something deeply satisfying in seeing smoke coming from a circuit board: it reminds you that not everything can be undone and that hardware is, well, hardware.
Since my last update I have replaced the Y and Z axis by properly manufactured linear slides and I have also bought a 400W spindle motor that runs at 10’000 rpm. I was using robust drivers that broke. I replaced them by cheap A4988 chips that cost next to nothing and seem to work much more smoothly. Except when they go up in flames due to bad wiring. This is been a bit of a theme with this CNC. I have replaced nearly every piece of the CNC since its first incarnation. More real world engineering.
While I was sorting out the CNC with wires all over the place, I noticed that the motor wires that carry a few amps at a few kHz where potentially a good source of interference and decided to do something I have not seen anywhere: mount the drivers close to the stepper motors. It doesn’t save much on wiring but it just feels right. That is another concept in real world engineering.
Yesterday I passed a great milestone. I managed to get the CNC to carve a design into a piece of would without going up in flames, motors growling, drivers failing or any other mishap. Well, almost. At the very end when it got to the ‘N’ of ‘CNC’, the vertical stepper motor missed a few steps and plunged right through the piece of wood and began to smoke. But, close enough. So here it Genetic CNC Version 0.9 having cut its first fractal. A target fractal that was morphed to an ellipse.
There are still a few adjustments to make. There is still too much wood that doesn’t give it the stiffness that is required. But in theory, I should be able to use this CNC to cut the pieces in aluminium to make it a real pro machine.
Another unexpected thing I ran into was that having a CNC machine is only part of the challenge. You also need software to prepare the GCODE program that drives the CNC controller. This isn’t as straight forward as I expected and I have tried many of the free options and none of them really worked all that well.
For now I have settled on
- GRBL Controller that drives an Arduino Mega 2560 with A4988 drivers. Arduino code here.
- Makercam for converting SVG files to GCODE. It does a very decent job of this. The same can’t be said for jscut.org where I wasted a lot of time -probably doing it all wrong.
But my CNC design future lies unquestionably with Autodesk Fusion 360. This is a very sophisticated pro-tool that seems unique in that combines design, simulation and CAM in a single well designed product. It also has a free licence for makers and startups. But it is so good that I would probably pay for this. Can’t believe I just wrote that!