Pico V2
The Pico V2 is the upgraded version aimed to be (almost) completely printed PCB mill. With a work volume of 100x70mm, the dimensions are optimized so that they fit in a standard Prusa Mk3s 3D printer bed (20x25 Cm). A mostly 3D printable Easy Tool Change spindle is also explored.
Care has been taken to make sure to the BOM of the machine is small and readily available everywhere. Reducing the barrier to entry has been the main goal of this project. Being able to 3D print the whole assembly means all the precision alignment and assembly is largely taken care of and the effort involved in making such machines are lot lower.
It takes about ~35-40 hours to print the whole machine at 10% infill, 0.3mm layer height, and no supports. The frame is printed in two parts to align the layer orientation to give it maximum strength and then assembled using M5 bolts. The X and Y gantries are printed as a single pieces.
Read the previous documentation for build logs and challenges.
Design
Slight update from the previous design with some usability improvements. Plus this has hinged covers that helps keep everything neat.
X and Y axes with countersunk nuts to get improved axis travel distance.
Fabrication
The last machines were built with integrated leadscrew stepper motors, but these are hard to find and they cost a lot I opted to use couplers and regular Nema 17 motors.
I used the Brass anti backlash nuts common available but after making the axis I realized that they were not good at least 0.3 mm backlash was observed.
Tried making my own T8 POM nuts by making a tap using the regular lead screw.
Kind of works, but the nuts are too tight and its very difficult to tap. Only recommended in last resort.
I'm using these small POM lead screw nuts from a brand called TWOTREES, sold as an upgrade for creatlity 3D printers, they are of surprising quality.
From my experience the axially spring loaded anti-backlash nuts are not that great. What you need is the radially spring loaded version like in Nadya's MTM kit, they are awesome, but I couldn't find any like that here.
My solution was to use two lead screws but offset the second one slightly so that they fight against each other and take out the backlash. The inner one is fixed and the outer is free to rotate in a slot.
Solution is not ideal, but its simple to do and works well.
The flexure is made from 10mm Delrin similar design as before with some small dimension modifications. This can be 3D printed with PETG, but Delrin is a more reliable solution.
3D printing the parts takes about 30-35 hours I printed with 10% infill, 3 perimeter lines, 0.3mm layer height using Esun PLA+
The print justs fits the bed, use brim to make sure the parts don't warp. No supports neccesary on the prusa Mk3s.
Rigid motor couplers used to minimize axial backlash from flexible couplers. Ideally we need to prevent over-constraint, but since the length of lead screw is small this should be ok.
Fully assembled Y-axis with the bed.
ETC Spindle
For me the main challenge in spindle design was to get a precision ground shaft that fits the bearings and have minimal runout but this is non trivial.
The Easy tool change spindle is designed to be mostly 3D printed spindle based on a friction drive. It has one precision component that can be easily machined which holds the end mill in place.
The idea is to use the endmill shank as the spindle and make a holder that is small and easy to provide motion to. Hence an aluminum bit holder and a friciton drive to provide the motion.
The bit cartrige will form a kinematic joint with the base of the spindle frame and is held in place with one M3 bolt.
The 3D printed spindle frame that has the kinematic joint to hold the bit cartridge.
The bit holder is made on a lathe from Aluminum rod.
The aluminum is turned to fit the 688 bearing and has a set screw to hold the endmill.
The aluminum bit holder serves 2 functions, it holds the bit and it forms a tight fit with the bearings, minimizing runout.
The bit cartridge with the aluminum bit holder and the 688 Bearings. They form an interchangeable assembly for quick change of end mills.
Note: An easier way to avoid making any precision component is to find bearings that fit the endmill eg-3.175 ID (SR144 dental bearing) and press-fit a plastic depth ring to hold the endmills in place between bearings.
5mm PolyUrethane with a 80 shore A hardness is chosen as the material for the friction drive as it has good friction properties, is wear resistant and, readily available and machinable in a fablab.
We machined the PU sheets on our ZUND, since its a shore 80A its difficult to mill, you need a sharp bit and low feed rate. I took 0.5mm passes at 80mm/s still the heat built up was significant and the dimensional accuracies are less.
The only way to get a good surface finish is to sand the PU wheel.
The fully assembled ETC spindle with the 2216 motor and friction drive.
Testing
The spindle was tested with both 1/64" and 1/32" endmills. The results prove satisfactory. Need to improve methods to reduce vibration.
Heat was the biggest worry with a friction drive, after some dimension optimizations with a 0.5mm preload the drive is stable at a temperature of 60 deg C. I would like to keep it lower than this, but for the time being it should be ok.
The traces come out good and there is less than 0.1mm of backlash in the drives. Overall good results. Will need to cycle-test the design to check the lifespan of the friciton drive and spindle components.
Neoπ Wireless CNC Controller (3-axis)
One of our students Saheen Palayi made an awesome CNC controller board with an ESP32 called the Neoπ.
The board allows the machine to be completely wireless. This board supports both both DRV8825 and SPI TMC 2130 Drivers. Allowing for sensor-less homing.
This is a high performance wireless CNC controller for the same price as a Uno Shield now a days.
You can find the full documentation on github
https://github.com/saheenpalayi/NeoPI_Wireless
BOM
Sl No | Item | Description | Qty |
---|---|---|---|
1 | 688 Bearing | Spindle bearings | 2 |
2 | 6702 bearing | Felxure Bearing | 1 |
3 | 625ZZ | Spindle bearings | 1 |
4 | Sunnysky 2216 | Motor | 1 |
5 | 12A ESC | Motor driver | 1 |
6 | 5mm PU Sheet | Friction drive | 1 |
7 | 8mm Smooth rail 1m | Linear axis | 1 |
8 | 10mm Delrin 30x30cm | Bushings | 1 |
9 | POM Lead screw nuts | Linear axis | 4 |
10 | 8mm Lead screw 500mm | Linear axis | 2 |
11 | Nema 17 | Motor | 3 |
12 | 5-8mm Shaft coupler | Coupler | 2 |
13 | M3 fasteners | Fasteners | 1 |
14 | M3x10 Screw | Fasteners | 50 |
15 | M3x15 Screw | Fasteners | 25 |
16 | M3x25 Screw | Fasteners | 15 |
17 | M4x20 Screw | Fasteners | 10 |
18 | M5 fasteners | Fasteners | 10 |
19 | Makerbase CNC controller | Controller | 1 |
20 | DRV8825 | Stepper Driver | 3 |
21 | 12V 5A Adapter | Power | 1 |
22 | 6mm Acrylic sheet 25x60cm | Base plate | 1 |
23 | 4 core cable | Cable | 2 |
24 | 3.175 60deg Endmill | Endmill | 2 |
25 | 0.8mm Endmill | Endmill | 2 |
26 | 18mm rubber feet x4 | feet | 1 |
27 | Esun PLA+ 1Kg | 3D print material | 1 |