CNC machines take much of the human error out of machining, which is great for anyone who is more handy with a computer than a hammer.
The OpenBuilds OX CNC design has become a popular platform for DIY CNC machine builders worldwide. The design provides a solid and stable working platform for hobby machinists without an unreasonable cost. But some people like to “super size” their machines, taking the design to its extreme. Martin is one such person who took on the challenge of creating a monster machine. We caught up with him to find out more about it.
What made you want to build your own CNC machine?
I’ve always enjoyed building things, but sadly my ambition was never matched by my skill level. It’s sort of ironic that I then wanted to build my way out of that problem, but I figured it was worth a shot. After all, once I built the machine, I could then very easily do what I know better, and simply tell the computer what I wanted it to make!
There’s something about the human spirit that drives these decisions sometimes, for sure. What made you go so big?
It was really more a case of “why not”? I wanted to create things out of acrylic, and acrylic sheet came in standard 1220 x 2440. I knew I would need to make the cutting bed at least this large, so it saved me having to pre-cut the acrylic sheets. That just seemed like way too much hassle and would increase wastage of acrylic. Plus it’s almost a character flaw of mine: bigger is always better!
I suppose I just figured that if I was going to go to the effort of building one, it might as well be large and useful. Otherwise it doesn’t solve as many problems (such as fitting a full sheet of acrylic). Sounds silly sometimes, I suppose; but that’s my mindset.
For someone who’s not handy, did you have concerns about taking on the challenge of a build like this?
The process is fairly well documented (or so I thought), and the real tricky parts you can buy in a kit. All of the machined aluminium parts, such as the supports for the gantry, the mounts for the spindle, and a few other of the custom parts, I purchased online as an OX CNC kit. There was no stepper hardware or electronics in the kit, that I had to purchase separately.
The one thing that I found was a problem here though, was that while the kit comes complete in terms of parts provided, there were no step-by-step instructions. So I felt a little like I had just purchased a house full of Ikea furniture, but there were no instructions on how to piece it together.
So I learned very quickly about things like tapping metal threads. Did you know that you should use a thread-cutting lubricant (or at least some WD40) when tapping threads? I didn’t. But now I do! While, on the surface, it was “bolt together” convenience, the reality was that there were a few things on the fringe that required additional knowledge to complete successfully.
With the materials used (v-slot, screws, brackets and such), there’s also an enormous amount of tolerance in everything. You can align everything perfectly, but still end up two to three degrees from a perfect right angle. It wasn’t until my second round of “adjustments” that I determined a set-square was critical to ensuring perfect angles, before tightening up each screw.
What challenges did you have super-scaling the original OX CNC design?
More than I anticipated! Although I suspect some of my challenges were a product of the OX design, not just my super sizing of it. Some of the issues I faced were:
MORE WEIGHT: That much metal - even aluminium - is really, really heavy. As it happens, 3m lengths (lengthways) and 1.5m lengths (wide) sag under their own collective weight, even after I doubled the thickness of the v-slot used (the original design used 40mm x 20mm sections, and I used 80mm x 20mm sections). By the time I had finished adding cross-beams and the MDF wasteboard, it was really heavy; exactly how heavy, I don’t really know - but I couldn’t move it, that’s for sure!
BIGGER SPINDLE: The original OX design really only caters for a hobby-sized spindle, such as a 400W or laminate trimmer style spindle. The problem with these is that they only take really small router bits. I don’t know why but I felt the need for a bigger one, because bigger is always better, right? After some research, I settled on a huge 2.2kW water cooled, 22,000 RPM spindle. Initially, it might seem like a few kilograms of spindle isn’t that bad, but when it’s moving around at great speed, that additional weight starts to compound issues.
What I actually ended up doing to combat the problem was doubling-up the gantry entirely. This was the only way I figured I could support the spindle without too many problems. As with most gantry setups, the spindle basically hung off one side. Because mine weighed much more than it was designed to, there was too much flex in the gantry itself. I had increased the size of the beams used in the grantry as well, but not enough.
Basically I married the two gantries together (I literally bought a second gantry kit and installed it mirroring the first one), and this created a gap between the two gantries where I could install the spindle. By supporting it from two sides rather than one, it effectively eliminated the rotational force on the gantry beams from the spindle. Sure, there was still overall weight to consider, but now I had doubled the gantry strength and its ability to carry the heavy spindle.
BELT STRESS: The weight of the new gantry caused substantial stress on the belts. I suspected this would be a problem even before I doubled up the gantry. I tried what I could, installing the “Everman” style belt system. It uses twice the belts, but is designed to reduce stretching and stress on the belts overall. Basically you glue a belt face-up so the it basically mates with itself, only coming away where it goes through the pulleys and such. I’m sure I had less problems with stretching as a result, but the problem didn’t entirely disappear.
SO MANY STEPPER MOTORS WERE REQUIRED: There are four stepper motors that drive the grantry. Two on the X-axis to move the gantry (which due to mounting, move in opposite directions to make the gantry move), one on the Y-axis to move the spindle, and one on the Z-axis to change the height of the spindle. By doubling up the gantry however, I now required eight stepper motors in total. The motors on the X-axis and the Z-axis could use the same stepper controller outputs. However the Y-axis was a mirror on the opposing side of the gantry, so it had to be effectively driven in reverse to go in the same direction.
Fortunately I had purchased a five-axis controller, so I had a spare output that I could configure to drive the opposing Z-axis. But it all meant more steppers, more wiring, more power; although admittedly, once it was all setup it was pretty good!
SO MUCH POWER!: My power requirements went up rapidly. I was using 3A Nema23 stepper motors. On paper, I only needed about 300W of power to run the steppers. In reality, with the weight of the gantry, efficiency overhead with the stepper motor drivers, and other things I probably haven’t thought of, I kept tripping 150W power supplies. I don’t really know much about the specific power demands of stepper motors, but I figure there’s some sort of start-up load when it’s trying to move something at full power, just like a regular motor.
I ended up stacking six of the 150W power supplies together in parallel, just to stop the supplies tripping their own current protection mechanisms. It took me quite a while to figure this out, as the current limiting circuit still provides power, but current limits to barely anything. Unfortunately this meant the lights were all still on and everything appeared to be functioning normally (but the steppers wouldn’t move anywhere).
MDF EXPANDS: One thing I never really considered when installing the wasteboard is the effect of weather on MDF. The wasteboard is there to provide a sort of “soft base” when you’re cutting all the way through, so you don’t damage your cutting bits. When I first got everything running, I took a small layer off the wasteboard to effectively level my cutting bed and take out any tolerances in the system. This worked rather well, but after a while I noticed the cutter head cutting deeper in parts of the bed, and I thought it was a problem with calibration.
It turned out to be moisture being absorbed by the MDF, causing it to expand. Of course, the reason the MDF is chosen much of the time, is because it has no grain, so is quite happy to be bolted down flat and won’t really argue. But I didn’t think about moisture... I suppose the same could be said for any timber wasteboard material, but in hindsight, acrylic of some sort, probably would have made a better wasteboard as it wouldn’t expand or move once it was bolted down.
MODERN COMPUTERS: As strange as it sounds, I never really thought about the fact that most computers and motherboards don’t have a parallel printer port built into them anymore. Since USB has basically taken over everything it does make sense. However, the CNC controller I purchased (and it seems many of the common ones are the same), required a parallel port to run. At first thought this seems easy enough to resolve; USB to parallel converters are cheap and available from everywhere. I purchased one from Jaycar, but no love. Of course I hadn’t seen any action from the controller yet, so I had some trouble debugging whether or not the controller or the computer was the reason for this lack of joy.
As it turns out, the USB to parallel converters aren’t a suitable substitute for hardware level parallel interfacing. I didn’t discover this fact until several hours of forum scouting, reading abandoned threads, posting new questions, and looking at other challenges people had faced. I don’t fully understand what the problem is, but the short answer is they don’t work. Some computers will have the interface itself on the motherboard as a jumper, it’s just not wired to a connector anymore, because they’re not so popular. I wasn’t so lucky with my computer (well, there was nothing detected, and nothing mentioned on the motherboard that I could see either). After many hair pulling hours of zero action from the controller, I located and ordered a PCI parallel interface card. It took a few weeks to arrive, but once it did, it took me all of 10 minutes to install it, the drivers, and get the stepper controller working. Frustrating? You bet! But I was happy to have the problem solved.
NOT ALL STEPPER CONTROLLERS ARE EQUAL: Yes, I know... this is a very obvious fact! But I had HUGE problems with cheap controllers. The controller itself worked fine on its own, however once I had installed and switched on the spindle, it all went haywire.
I think what was happening was the EMF from the spindle was being picked up by the stepper motors. This then created charge and was back-fed into the stepper motor controller, which in turn caused all sorts of noise and problems. The physical result was that anytime the spindle was running, the X/Y/Z-axis would erratically jump around, which created a major headache while I tried to figure out what was going on.
At first, I thought it was a product of using unshielded wire. I hadn’t really considered this being a problem initially, as everything was operating properly (without the spindle running). So I changed everything over to four-core shielded cable to try and resolve the issue. Everything was changed over, but sadly there was no substantial reduction in the interference. I tried powering the spindle from an inverter and battery. Oddly, this did improve the performance, though I can’t really explain whether it was voodoo magic, in my head, or an actual gain.
Finally I tried a new stepper motor controller. It was more expensive, had bigger and better looking hardware, and generally just looked more impressive. This had to mean it was better, right? Well, whatever the fix, this solved my problem. I no longer had stepper motors with a mind of their own, and things started to behave properly, which meant I could finally start trying to calibrate the machine and such. Ultimately I think it’s some kind of back-EMF/current-inducing behaviour from the spindle. But it’s not really my area of expertise so I couldn’t pinpoint it accurately; the problem was solved though, so I moved on.
VIBRATIONS, VIBRATIONS, VIIIBBRRRAAAAATTTIIIOOONNNSSS!: From day one, everything wanted to rattle and loosen! Something you don’t really think about with small stepper motors in a 3D printer or the like, is the vibrations caused by the stepper motors. Sure, it’s all funny music to hear the song of the stepper motors while your 3D printer is running (until about the 11th minute when you just wish it would stop making noise). But with bigger steppers and a whole lot of metal, came a whole new set of problems.
The constant rattling and resonance of stepper motors had a habit of loosening even the most securely-fastened nut; so much so that I’d sometimes hear nuts or bolts hit the deck mid-job. Sure, there were more and it all kept running, but it was a constant battle trying to keep everything in order. I put some of this problem down to the fact that the stepper motors are bolted hard onto the gantry plates in the OX design. This means we’re basically creating a huge resonance machine with every step of the stepper - hence the constant, loud noise.
I tried to buffer things a bit with some rubber and felt bushings, but there was no substantial difference (probably because they were bolted up so tight anyway). This is also a problem that the rack and gear upgrade I planned would have exaggerated, as the rack/gear interfacing would have then resonated too (whereas it was currently absorbed to a degree by the belt drive).
Wow - those are some challenges for sure, and it sounds like some important lessons were learned. Did everything work as planned after that point?
Yes, and no. Overall I am quite happy with the results, and it performs what I asked of it. However, if I had my time again I would have made it based around a CO2 laser instead of spindle. It would have created some new challenges, but would have solved a few problems at the same time too. One of which was holding a job steady. The lateral forces from the cutter head pushing through the acrylic would cause it to move. The obvious solution is to bolt the job down to the work surface, but this isn’t always possible.
Because the laser doesn’t physically touch the work, it’s never going to push the job across the bed. This was a real pain point sometimes, but it wasn’t usually enough of a problem for me to look further for a solution. One solution employed in commercial units is a vacuum bed. Basically the reverse of an air-hockey table. It sucks air through loads of holes to pull the job hard against the work bed. I drew up plans to use thin irrigation hose and fittings, and plumb it into the dust extractor. I bought some fittings and drew up some plans, but never really attempted installation. It’s still on the proverbial to-do list I suppose.
I also purchased a rather expensive diamond polishing bit, which fits the cutter head, but leaves a perfect see-through finish on the acrylic edge just cut. This bit cost AUD1600 and has an actual flat-cut yellow diamond on the head. Pretty cool story, and the bit works well, but in reality, I think my machine had a little too much vibration from the stepper motors to get a pure finish. It was also a major hassle to change the cutter bits each time (something an auto-change head could solve, but the cost and weight was far too great). Laser cutting naturally has a better finish, so it would have solved a few of these problems.
I thought about changing it over to laser, but the cost of the hardware, plus other safety challenges like enclosing the unit to appropriately ventilate fumes, seemed like a mountain I wasn’t ready to climb. So I persisted with the spindle cutter, experimenting with different cutter bits. It turns out you really get what you pay for, and with better fluted cutter bits, the quality of the cuts improved drastically.
What software were you using to drive the system?
I was using Mach3, which is Windows software used for all sorts of CNC work. This wasn’t really a deliberate choice but the software was included with the stepper controller hardware I purchased. It seemed good, was easy enough to understand, and the G-code could be loaded, so I didn’t really look beyond that. It did have some advanced features like tool offsets and such, but I never really investigated that side of things as the work I was doing was fairly simple, and had a high tolerance, so getting things within a few millimetres was okay for my purposes.
As the saying goes, if it ain’t broke... What future upgrades have you planned for the CNC machine?
I had always planned to put hall-effect limit switches in. It allows the system to auto-calibrate and home itself. Embarrassingly I never did this, even though it was fairly straight forward. I think because most of my work had a reasonable fault tolerance and I had setup manual “bump stops” for manual homing, I never really found it a problem.
I have also purchased, but not yet installed, a rack and gear system to replace the ever-stretching belt system (at least, on the X-axis which has the most load on it). There’s no easy way to mount the system using the existing OX gantry plates, so I’ve been procrastinating and putting this off; but I will get to it one day soon.
If you had your time again, what would you do differently with the knowledge you now have?
There are a few things I’d do... and the more I think about it, the more I can come up with! But a few things are:
MAKE IT BIGGER: As silly as it sounds, I would go a fraction bigger. While I had the best intentions of fitting a 1440-wide sheet of acrylic (which does actually fit on the bed), I didn’t account for the width of the Y-axis. This reduced my cutting area by about 100mm and meant i couldn’t quite make use of the full width of the bed. It was pretty close, but an extra 30cm wide (the next standard length in the v-slot) would have meant I could use the full width of the acrylic sheet.
MAKE IT STRONGER: I’m sure many of the tolerance problems I had were due to the weight. Ultimately I think a machine this big is better using different hardware. I think a solid steel I-beam or something would have been better for this sort of span and weight load; of course this creates a cascade of challenges. The gantry mounting plates and wheels wouldn’t be able to take the weight, the beams the gantry run along would then need upgrading, the stepper motors would then need to be bigger, and we’re back to the start again. Ultimately there’s a balance between strength and weight with any machine like this, but I’d basically be finding myself building something from scratch again to move in this direction.
DUST AND CHIP EXTRACTION: I messed around with dust extraction, which worked really well but that was before I’d added the second gantry to support the spindle. Once I had done that, I simply had no room and the fittings I had made to do it didn’t fit any more. I let this go and never really came back to it, but it would have made life easier. Because I was cutting acrylic and not timber, there was no dust per se. I just had loads of acrylic chips and shavings everywhere. But with no dust hazard, solving the problem of extraction took on a low priority. I would simple use a shop-vac when the job had finished to clear out all the acrylic chips before pulling the job up. It worked so well that I gave it little thought. Although it’s important to note, I wasn’t doing much in the way of surface engraving - all my work was 100% through. I think if I was surface engraving (more milling than CNC cutting), then I would have encountered more problems with chips/waste interfering with the cutting head.
SMALLER SPINDLE: In hindsight, I didn’t gain enough benefit for all the hassle the larger spindle created. The main reason I started looking at larger spindles was so I could use larger bits. But in reality I don’t think the gain was there. I would have still obtained the same cutter bits but with a thinner shaft, for use in a smaller spindle. Many of the decisions were made based around the diamond cutting bit. But even if it’s a special order, it’s possible to get these high quality (and high cost) bits in just about any configuration you want. Call it impatience, but I always went for the “in stock” option and built around it. That really wasn’t the smartest or most cost-effective option though; if I had simply settled on being limited to a smaller shaft diameter for my cutting bits, then I probably would have avoided all the weight issues, double gantry, and everything else that came as a result of the larger spindle. Sure, I would have lost some cutting power, but I wasn’t using it near full capacity anyway.
Yes - it can be a little like Pandora’s Box in that scenario, so we understand the hesitation. What tips would you give anyone looking to build their own CNC machine?
I’d say plan well, and stick to the plan. Personally I’m not good at planning. I might have a rough idea in my head of how something will go together, but I often change the design part-way through. Sometimes it’s through necessity, but often just because I didn’t truly think through the original plan (or once seeing the physical parts, I think I can make it better). It usually creates a lot of spare parts, additional expense, and the jury is still out as to whether or not it’s actually a better system as a result.
Making improvements once the first version is complete is a natural part of the process, but changing the strategy before you’ve even completed version one usually isn’t the most efficient process.
Well, it sounds like you’ve learned a lot from this process. We look forward to seeing updates to your CNC down the road!