CNC Plotter Literally Out of Trash From a Sketch
by Danylo_Galytskyy in Workshop > CNC
895 Views, 8 Favorites, 0 Comments
CNC Plotter Literally Out of Trash From a Sketch
Hi everyone!
In this instructable I am going to make a CNC plotter out of very easy-to-find materials. It's true that there are some that you would need to buy somewhere(e.g. Motors). But the most, specially the frame, are simple furniture parts. The idea was: make a good project out of parts that you and me can find easily.
Supplies
So, the easy-to-find recyclable parts are:
- Wooden plate, I used a 55*35cm 7mm plywood
- Some plywood to make the box
- 3x drawer slides, 28cm long
- 2x bearings (from fidget spinner, roller skates, etc.)
- Wooden plank, 21*34*325mm8x
- angle brackets
- Screws, really a ton, I couldn't count them, there are lots of sizes etc.
- 2x 6mm long bolts
- 6x 6mm nuts
- 4x 30mm out diameter shims
- 12x 15mm out diameter shims
- 12x 3mm bolts
- 12x 3mm nuts
And now, it comes the other part, bought parts:
- Arduino Uno ~10$
- 2x TB6600 drivers ~15$ each
- 2x Nema 17 motors ~15$ each
- Servomotor SG90 metal gears ~3$
- Teeth pulleys + belt kit like this ~4$
- 12v power supply (the best is from a PC)
Tools:
- Screwdriver
- Wood saw
- Soldering iron
- Drill
- A compuer with: Univesal gcode sender, Arduino IDE and Inkscape
The Base
For the base, we will need a wooden plate. Leave some space on it for electronics while doing the frame.
Take the base, 2 drawer slides, put them as shown on the photo, make holes for screws. Screw everything. Now you should have a base with 2 parallel linear slides. (Photo)
X Axis
We will need our wooden plank, it should be the size as the space between the drawer slides.(photo 1)
Place a drawer slide on it and screw it to the wood.(photo 2)
Now we need to put the stepper on the side, for that I will use angle brackets, I have cut one to fit on the motor. Now, mount the motor using screws for the wood and bolts for the motor. (photo 3)
The Pen Holder
First of all, take a wood plank and make it look like in this drawing which I made in Fusion 360 instrument called drawing.(photo 1)
After that, take a plumbing plug and make a 10 mm hole in the center(photo 2) of it so that the pen you are planning to use will fit. (photo 3)Hot-glue it.
After that use a servomotor to put it like on the image(photo 4)
Place the part on the x axis slider in the construction and pass a pen through the hole. Mark at which point the pen does touch the base. Hot-glue a metallic shim at the marked point.(photo 5)
Now it should move up and down when the motor moves)
Attach to the drawer slide with 2 bolts and put an angle bracket(photos 6 and 7)
Belt System Bearing Support
First of all, we already have the first teeth support on the motor, now, we need to make the second support for the belt. For that, we will need supplies like:
- 1x 6mm long bolt
- 3x 6mm nuts
- 1x Bearing
- 2x big metallic shims
- 2x small metallic shims
- 1x Angle bracket
screw the angle bearing to the end of the x axis wood so you can put the bolt vertically(photo 1), mount the bolt with a nut.
Now, follow this order
- put a nut on the bolt
- small metallic shim
- big metallic shim
- small metallic shim
- bearing
- small metallic shim
- big metallic shim
- small metallic shim
- Another nut
P.S on the photo 2 is the y axis support but it doesn't matter, it's the same
X Axis Belt System
This step is pretty easy, trace a belt on the back so it touches the bearing and the motor rotor.
On the angle bracket of the caret, put 2x 4mm bolts, shifts and nuts, like on the photo 2.
Fix one end of the belt in one bolt, and try to pull as much as possible the second belt, also fix it.
Y Axis
For Y, almost everything is the same, except one, the motor mounting
First of all, move the slides all the way back, the motor should stand just there.
I made a part of wood (drawing made in Fusion 360), so it is a vertical adapter between horizontal motor and horizontal base.
With some bolts, attach angle brackets, everything just like on the photo.
Y Axis Belt System
As I said before, the Y is the same as the X, so, use the same bearing system as before, make a hole, insert the bolt, etc.
But, the caret-belt mount is different, look at the photo.
I took some right metallic parts, drilled them and screwed them. Attention because it should be sufficient space to move things(eg. the slicer of X axis). The first part is an angle plate and the other is just a normal, plain, holed plate.
As in the X axis, put some bolts with shims and nuts to fix the belt.
THE MECHANICAL PART IS READY!!!!
Electronics Box (optional)
This is optional. Everything works just fine without any box, if you have a better form of organizing,
leave a comment.
Out of 5mm plywood and some pins, I made a box for electronics, it has ventilation holes, holes for screws, etc.uploaded it here to Tinkercad.
Stepper Motors Electronics
We will use a software called GRBL, you can read a lot about it, but basically it's an Arduino library, and when you upload it, Arduino can receive .gcode commands. So, we need to connect electronics as the library wants(image 1).
So, as you probably saw in the supplies part, I use an Arduino UNO and TB6600 drivers. Yes, I know that TB6600 aren't the best option, they are big and expensive, but the thing is that I had them.
I will not lie, I found a fantastic scheme to connect my TB6600 drivers in a Youtube video from Indian guys called KALAAKAAR MAKERSPACE, they also have a text tutorial. So, the schematic is not mine, they made it, but it's pretty easy to make. (photo 2) ATTENTION: do not connect the Z axis like on the photo.
You've probably noticed that we don't really have Z axis. That's because we don't need it, our Z axis is just: "pen up" and "pen down", so we can use a servo. But there is a problem: the standard grbl doesn´t allow us to use a servo.
There is an instructable to how to fix it, so, connect the servo to pins: 5V, GND and PIN 11.
In the settings of the driver, put 1/32 so it can do micro step.
Software
How to set up grbl on Arduino:
- download this .zip modified grbl library from GitHub
- In Arduino IDE, go to Sketch>Include libraries>include .zip library
- If it gives no error, go to File>Examples>grbl>grblUpload
- Connect your Arduino to the computer, In Tools select board, port, etc.
- Upload!
Testing
If you have everything connected (data cables, power supply, etc.), we can begin with the testing.
- launch Universal G Code Sender.
- In UGS, select the port on which Arduino is connected and click "connect".
- If the status is "IDLE", follow next step.
- Go to "jog controller" and try to move x, y and z axis. If everything is moving where it should, next step. If the z axis servo is moving too up or too down, go to file Arduino>libraries>grbl>sprindle_control.c and change these values: define PEN_SERVO_DOWN and define PEN_SERVO_UP. If the motors are moving axis in incorrect directions, just flip the connector of the motor.
- download any G Code test file, I used from this web, it's a circle
- In UGS, include the test file.
- Click "launch"
THAT'S ALL
THE END
So, our plotter just works as a normal CNC pen plotter, you can draw things on Inkscape, generate g code and it will draw it on paper.
Also, I've made a custom font with my handwriting, so, now it can do my homework. Soon, i will publish an instructable about how to make that font based on your handwriting scan.
Also, I have video material about how to do it, if you see this, I haven't finished it yet, I'll publish it on YouTube