Mini CNC Milling Machine: Instructables

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 26

instructables

Mini CNC Milling Machine

by TheMakerMachine

Hi friends! In this Instructables, I’ll show you how I designed, fabricated, assembled, and got running this mini CNC
milling machine. I love fabricating and I wanted to make a (relatively) low cost CNC mill to have at home during the
pandemic. I also want to give a big shout out to the Jacobs Institute for Design Innovation and UMakers Makerspace for
providing me the resources for this project. Additionally, inspiration for this project was drawn from these projects: [1][2]
[3]

Supplies:

Here is a link to a spreadsheet for my bill of materials. It includes the quantity of individual parts in case you already have
access to some, as well as links for some of the parts I bought. The parts for this project cost me approximately $375 not
including my makerspace fee.

Tools:

CNC Router
Hand drill
Drill bits for pilot hole for wood screws
Hacksaw/other type of saw (for possibly cutting the linear rod and lead screws)
Allen keys (listed in the bill of materials)
Very little soldering
Wire cutter/stripper
Multimeter

Mini CNC Milling Machine: Page 1


https://youtu.be/msPBahbc-jM

Step 1: Design

I made this frame using a CNC router with 0.5in (~12mm) Additionally, if you are interested in making
thick plywood. I was able to use the shopbot at my local modi cations to this design, I have attached the
makerspace UMakers in Claremont, CA. This design Solidworks (2020) les and a step le here.
would be di cult to cut with hand tools so if you don’t
have access to one I would suggest trying this design
instead.

Mini CNC Milling Machine: Page 2


Step 2: Fabrication

I made the toolpath using Fusion360 and have attached spoilboard and I put in a lot of tabs. I attached the gcode
a step le of just the frame laid out at as well as the .f3d le for the shopbot but I recommend going into the le
le with the CAM for the tools I used. For this toolpath I and double checking and adjusting the settings to your
used a 1/8in at endmill with a feedrate of preferences. All the les can be found here.
3in/s=180in/min. The parts can be cut out of a
25inx17inx0.5in plywood sheet. It will cut 0.04in into the

Mini CNC Milling Machine: Page 3


Step 3: Assembly - 1

Now the assembly for this design can be a little tricky First assemble the base (without adding the wood
because we want to ensure that there is no binding or screws) and loosely screw in the four x-axis linear rail
extra friction in the moving parts. Because we are using supports with M5x20mm screws and nuts. Then add two
wood screws to assemble the frame, it is harder to 300mm linear rails and tighten the screws. It is
ensure that everything is at 90deg angles. For each axis, important to put in the linear rails before using the
before it is screwed together, we want to put in the wood screws to ensure alignment.
linear rods to make certain that it will align and then add
the wood screws.

Mini CNC Milling Machine: Page 4


Step 4: Assembly - 2

Drill pilot holes (not pictured) and then the wood screws as shown in the photo. If you don’t use pilot holes you run the
risk of splitting the wood.

Mini CNC Milling Machine: Page 5


Step 5: Assembly - 3

Now connect the y-axis pieces (without wood screws) and add the four linear rail supports and two 300mm linear rails.

Mini CNC Milling Machine: Page 6


Step 6: Assembly - 4

Now add pilot holes and the wood screws.

Step 7: Assembly - 5

Add the x-axis nut holder piece, drill pilot holes and then add in the wood screws.

Mini CNC Milling Machine: Page 7


Step 8: Assembly - 6

Screw in the lead screw nut using M3x20mm screws and nuts and the linear bearings using M4x16mm screws.

Step 9: Assembly - 7

Now remove the x-axis linear rails from the base and place the y-axis carriage such that the linear rails can be slid through
the linear bearings and tighten the screws to x the linear rods in place.

Mini CNC Milling Machine: Page 8


Step 10: Assembly - 8

Screw in the pillow bearing block using two M5x16mm lead screw nut and into the shaft coupling. If you’re
screws and nuts as well as the x-axis motor using four having trouble getting it to t you may need to loosen
M3x12mm screws. Then add the motor shaft coupling. the linear rails or the linear rail supports to get it to all
After, slide the lead screw through the bearing end (you line up.
may need to loosen the set screw), thread it through the

Mini CNC Milling Machine: Page 9


Step 11: Assembly - 9

Additionally, you can add the y-axis motor and pillow bearing block.

Mini CNC Milling Machine: Page 10


Step 12: Assembly - 10

Similarly, with the z-axis carriage, assemble the pieces, add the linear rail supports and linear rails before drilling the pilot
holes and adding the wood screws.

Mini CNC Milling Machine: Page 11


Step 13: Assembly - 11

Next add the y-axis nut holder piece, drill pilot holes and then wood screws. Then add the lead screw nut.

Mini CNC Milling Machine: Page 12


Mini CNC Milling Machine: Page 13
Step 14: Assembly - 12

Now when adding the linear bearings put the linear rails through before tightening the M4x20mm screws to ensure they
are aligned. You may have to loosen and tighten again when they are on the y-axis. Additionally you can add the z-axis
motor and pillow bearing block.

Step 15: Assembly - 13

Next, take the z-axis nut holder and screw in the lead screw nut. Then add that piece to the z-axis carriage. After, drill a
pilot hole then add in the two small wood screws.

Mini CNC Milling Machine: Page 14


Mini CNC Milling Machine: Page 15
Step 16: Assembly - 14

Place the M6 screws in their pockets before putting the linear bearings on top and screwing them in with the M4x20mm
athead screws. Tighten the screws so that they are ush with the wood.

Mini CNC Milling Machine: Page 16


Step 17: Assembly - 15

Screw in the spindle clamp. You may have to tilt the part to ensure the screws will engage with the M6 nuts.

Mini CNC Milling Machine: Page 17


Step 18: Assembly - 16

Now slide the x-axis 150mm linear rods through the linear bearings to connect to the z-carriage. Then slide the 150mm
lead screw through the pillow bearing block and thread it through the nut and into the coupling. This part was the
trickiest for me to get aligned. It may require some loosening or even adding the spindle after the lead screw is threaded
in.

Step 19: Assembly - 17

The last step is to get the z-carriage onto the y-axis so repeat the process again of taking out the y-axis rods and sliding
Mini CNC Milling Machine: Page 18
them through the linear bearings then threading the lead screw through the nut and into the coupling. After everything
is put together ensure that all the screws are tightened very well including the coupling set screws and especially
everything on the z-axis.

Step 20: Assembly - 18

The very last thing you will want to do is slide the spindle up in the spindle clamp so that you have as much z-range as
possible. To do so, loosen the M6 screws (not so much that it completely unthreads from the nut) and use a athead
screwdriver to widen the space in the clamp and slide the spindle up. Then tighten the M6 screws and you’re nished
with the assembly!

Mini CNC Milling Machine: Page 19


Step 21: Electronics

For the microcontroller+breakout board you can go with using the former because it is what I had access to at the
either the Arduino Mega 2560 + Ramps 1.4 or the time (though I would probably go back and change
Arduino UNO + CNC shield expansion board. The latter is that). If you are interested in the latter option, there are
cheaper and perhaps better for this purpose and the many resources for how to use that.
former is more typically used for 3D printers. I will be

Step 22: Electronics - 1

Motor wires the black dupont connectors on the end. The other tricky
thing is checking that the wires are in the correct order.
Firstly you want to ensure that your motor wires are long This depends entirely on the motor so you’ll have to
enough. I chose to keep my microcontroller a little away check. Here is a resource for using a multimeter to check
from the machine so it wouldn’t get so messy so I which wires are part of the same coil. The ones part of
needed long wires. You can extend the wires yourself if the same coil should be next to each other. If your wires
you have some and a soldering iron otherwise you can are wrong, switch them. It doesn’t matter which coil is
buy some long wires. on the left two or right two wires because that will only
change the direction. This can be modi ed in the
Secondly you want to have wires with the correct rmware or by ipping the way the motors are plugged
connectors. The wires linked here work for these motors in.
but if you buy others, you want to ensure that they have

Mini CNC Milling Machine: Page 20


Step 23: Electronics - 2

Spindle wires around the exposed wire (you can also use electrical
tape). You might be able to avoid soldering but really be
The wires connected to the spindle will need to be careful that you don’t let the wires come loose or touch.
extended as well. I used 18 awg wire and soldered it to
the wires coming out of the spindle then heat shrink

Step 24: Electronics - 3

12V power supply wiring

Connect the module plug fuse to the power supply as shown in the picture. Then wire the V+ and V- terminals to the
green phoenix type connector using 18 awg wire. You can also 3D print a housing but make sure it ts your module plug
fuse.

Mini CNC Milling Machine: Page 21


Step 25: Electronics - 4

Spindle power supply

Connect the module plug fuse as shown in the picture. The potentiometer (knob) was already plugged in for me and is
used to change the spindle speed. (I have only been running it at max speed so far) Connect the spindle wires as shown
and don’t mix up the order because then the spindle will spin the opposite way which will cause problems.

Step 26: Electronics - 5

Stepper motor drivers Secondly, it is a good idea to set the current limit. Follow
the instructions at that link. You’ll need a small
Firstly, plug in the little jumpers onto the RAMPS board screwdriver and a multimeter. You can plug the stepper
as shown. These will allow us to microstep (which I won’t drivers into the board and turn on the power source and
explain here but there are many resources on it). With all then set the limit. Make sure you orient them the correct
of them in we will be at 1/16th microstepping mode. way when plugging in.

Mini CNC Milling Machine: Page 22


Step 27: Electronics - 6

Route wires and plug everything in

I used some cable sleeving to route my stepper motor wires and plugged them into the correct pins on my RAMPS
board. The pictures show how I chose the x,y,z directions but you could potentially switch the x and y directions.
Mini CNC Milling Machine: Page 23
Step 28: Firmware

For this project I used the Marlin rmware because that L.746 DEFAULT_MAX_ACCELERATION { 400, 400, 100,
is what I was familiar with but if you were to use the 10000 }
Arduino UNO microcontroller+CNC shield I would use
grbl rmware. First start by downloading the Marlin L.799 DEFAULT_ACCELERATION 400
rmware. You will need either Arduino IDE or VS Code to
edit and upload the rmware. Open the con guration.h L.781 DEFAULT_TRAVEL_ACCELERATION 400
le and make the changes listed below. Notes are listed
in italics. L.793 #de ne DEFAULT_XJERK 3.0

Marlin 2.0.7.2 L.794 #de ne DEFAULT_YJERK 3.0

L.130 BOARD_RAMPS_14_EFB L.795 #de ne DEFAULT_ZJERK 0.2

Choose BOARD_RAMPS_14 the ending doesn’t matter L.828 #de ne S_CURVE_ACCELERATION (uncomment)
because it isn’t a printer
L.1089 #de ne INVERT_X_DIR true
L.144 EXTRUDERS 0
L.1090 #de ne INVERT_Y_DIR false
L.744 DEFAULT_AXIS_STEPS_PER_UNIT { 400, 400, 400,
500 } L.1091 #de ne INVERT_Z_DIR true

https://blog.prusaprinters.org/calculator_3416/ (leadscrew The last 3 lines change the direction of the motors so if you
pitch = 8) These values may need to be tuned. later nd that it is moving the wrong direction, change it
here.
L.751 DEFAULT_MAX_FEEDRATE { 120, 120, 30, 25 }

Mini CNC Milling Machine: Page 24


Step 29: CNC Control Software

To connect my computer to the printer I used and +z,-z directions. Ensure that positive is in the
pronterface. It’s meant for 3D printing but is one of the direction you want it. Remember that since we are not
few interfaces that will connect to the Marlin rmware. using limit switches/endstops the machine has no idea
(If you are using grbl rmware you have more options.) when it will run into a wall so be careful not to move it
Open the application, plug your computer into the outside of its limits. This is especially easy to do by
microcontroller, and connect to the machine. Once accident with the z-axis.
connected, use the buttons to move in the +x -x, +y -y,

Step 30: Post Processor

After making a toolpath in Fusion 360 or some other running into its limits.
CAM software, we need to post process it into gcode
that the machine can understand. This will depend on And always make sure you change your units to mm if
the kind of rmware you use, so we need a custom post that is not the default you are working in! I think you
processor for the Marlin rmware. Download the post have to change it every time you open Fusion360 which
processor here and add it to Fusion 360 according to is inconvenient and I will often forget. If your units are in
these instructions. inches, then your machine will try to move 0.2mm
instead of 0.2in and it will look like it is not doing
Once added to Fusion 360, select the DIYCNC_Marlin20 anything.
post processor and change the settings shown in blue
text in the picture. This will prevent the z-axis from

Step 31: Test Cuts!

Mini CNC Milling Machine: Page 25


Ok nally we can do some cuts! complete the toolpath without hitting the sides. The
post processor will set the starting location as X0,Y0,Z0.
First, make a toolpath and post process it using our new Plug in and turn on the spindle (which is not controlled
custom post processor. After some testing, I have found by your microcontroller) and set it to the highest speed
that a feedrate of about 1in/s=60in/min works ok for this with the potentiometer. Then click the load le button to
machine with softwoods and MDF. upload your gcode and click print to start. Be ready to
quickly turn it o if something goes wrong.
Then, open pronterface and connect to the machine.
Ensure that everything is moving smoothly. Move to the I've attached pictures of my rst successful run with
location you would like to be X0,Y0,Z0 according to your softwood and my rst successful carving out of MDF.
toolpath ensuring that there is enough room to

Thanks for sharing :)

Mini CNC Milling Machine: Page 26

You might also like