(continued from part 1)
Time to make some drawings! I took some rough measurements and built a CAD model, to be able to plan out the parts for the conversion:
(Warning: The CAD model is only an approximation, and I did have to do some manual tweaks to my parts to make them fit properly. Use at your own risk – it’s only meant as an inspiration and starting point.)
Based on the CAD, I decided to use 25mm ballscrews with double nut on X and Y, and with a single nut on Z. My thought was that the Z axis is under unidirectional load anyway (head pushing down with 80 kg), so backlash will not be a concern here.
Ordering the parts
For the motors, I decided to go with closed-loop servo drives, in NEMA32 size. They are not that expensive any more (at least the chinese versions), and the work well. Much faster than equivalent steppers, and more reliable. They will not loose steps, and even if they get jammed (e.g. when running into a fixture), there is an overload output signal that can feed into the E-stop of the controller, safely halting the machine.
I picked two 8 Nm motors for X and Y, and a 12 Nm motor for the Z axis, as it has to hold a lot of weight. The head of the MB4 weighs around 80 kg. The motors cost around $200 each, including the matched servo controller (2HSS86H). See the BOM above for details.
I ordered the ballscrews from Noulei (via AliExpress), and had them custom-machined to my specifications. The sellers usually do this happily for a very small fee. Here is the drawing:
The custom parts
Finally the hard part: making it all fit together, or rather, making the connecting pieces that will make it all fit. I tried to avoid modifying the machine as much as possible. It didn’t end up a complete bolt-on kit, but the modifications were fairly minimal. It does require machines to make the parts though – luckily I already had my X2 mini mill (CNC converted) to do that. It struggled a bit, and I thought it would have been a lot nicer to do that on the new OptiMB4, but it wasn’t CNC yet…
I designed four pieces: The X-Axis ball nut block, the Y-Axis ball nut block, the Z-axis top bearing assembly, and a motor mount for the NEMA34 servos. The cad files are in the zip archive linked above.
Note that my initial design of the ball nut blocks didn’t quite fit. I had to trim them down a bit to fit into the available space under the X-axis bed, and into the channel in the base. The cast iron pieces had some tapers that I didn’t quite capture precisely in the CAD. I updated the CAD slightly to reflect this, but I can’t guarantee that these will fit perfectly.
I machined the first three pieces from aluminium. The motor mount is far too big for my little X2 mill, so I 3D-printed it.
When test fitting the ballscrews, I noticed that the channel in the base was a bit too narrow in some spots for the ball nut to fit. It didn’t take much, so I decided to carefully grind off the flange a little until it fit. Similarly, I had to do the same for the X-axis ball nut. This probably could have been avoided by going with 20mm ballscrews, but I think a bit of grinding is fine to get the larger ones (and also, I had already bought them at this point, of course…).
I also had to flip the ball nut on the y axis scew. For this, I made a transfer sleeve on the lathe. Don’t ever pull a ball nut off the screw without it, and make sure it’s a tight fit! I have already botched this one once, on a very nice precision ground screw, and trying to get all the balls back in was not much fun…
Now the same for the X axis:
So now the two ballscrews are mounted, and a lot of the hard part is done. As the ballscrews didn’t quite end up on the same height as the lead screws, I had to modify the original bearing blocks a little bit, to be able to slide them up and down to get proper alignment. I simply turned the screw holes into slots.
Next I made a new top cover plate for the Z axis. The MB4 has a geared crank on the side of the column, which turns the z lead screw. The top cover has a sleeve bearing to hold the lead screw, but it is closed. I had decided to put the Z motor on top of the column, so I needed a new cover with a hole, and a support bearing. I started by turning a new cover plate:
While I had it in the lathe, I already marked out the radius for the bolt holes, by just touching it with a lathe tool and turning the chuck one revolution to make a small scratch. I then marked out the hole positions on that line.
Installing the Z axis ball screw
The difficulty in replacing the Z axis lead screw is that it holds up the heavy head. By locking the gibs, it is however possible to hold the head in place while taking the load off the screw to be able to remove it. I also made a wooden support structure to support the head in the low position, which is not really needed for this part, but comes in handy when removing the head from the Z axis. You can simply lower the head on the support block that rests on the table, then unscrew it from the column and use the Y axis to slowly move it forward.
The Z ballscrew was designed to fit in place of the old lead screw, using the existing bearings and mounts. The block that connects the screw to the head assembly slides out easily (it is just loosely pushed in). I removed it, drilled and tapped holes to bolt the ball nut onto it from underneath. Unfortunately I didn’t take photos of this part.
Once the ballscrew is in place, the top cover can be installed.
Motor mounts for X and Y
The motor mounts for the X and Y axis were quite big, and too much of a job to do on a tiny X2 mini mill. I decided to 3D print them, but was worried about strength. I had an idea to cut on printing time, and get better strength:
I printed the part with zero infill, on a low-cost FDM printer (i3 clone), with a 0.8mm nozzle. Printing with large nozzles dramatically increases the print speed, and I find that the layer adhesion is often better – probably because the larger amount of plastic has more residual heat, which makes it stick better. The part is then of course hollow and not very strong.
As a second step, i drilled some holes into the top, mixed a 2-part polyurethane resin with chopped carbon fibre strands (2mm), and filled the entire part with this resin. After curing, it was really strong, as the infill is all one solid cured block with fibre reinforcing.
The motor mounts are simply clamped onto the existing thrust bearing blocks that came with the machine. So far it has not let me down.
So this is more or less it for the mechanical parts. Next: Wiring it up.