Posts Tagged MPCNC
The overall XY travel is slightly smaller than the initial configuration, because the router sticks out further than the penholder I’d been using. Increasing the
$27 Homing Pulloff distance to 3 mm leaves a comfortable space beyond the limit switches after homing to the positive end:
$13 XY travel distances and switch positions on the other end of the rail leaves a similar comfort zone at the negative end:
Both switches now live on the rear X-axis rail and appear as seen from behind the bench; they just look backwards. The Y-axis switches are on the left rail and look exactly the same.
The XY travel works out to 630 × 460 mm = 24.8 × 18.1 inch, which is Good Enough.
Some fiddling with the Z axis limit switch tape mask produces a nice round 100 mm = 3.9 inch vertical travel. The Z-axis rails just barely clear the table at the lower limit and just barely stay in the bottom bearings at the upper limit, so it’s a near thing. In practical terms, the rails or the tool will smash into the workpiece sitting atop the table before the limit switch trips.
$20=1 Soft Limits and
$21=1 Hard Limits may be excessive, but I vastly prefer having the firmware detect out-of-range moves and the hardware forcibly shut down if the firmware loses track of its position, rather than letting it grind away until I can slap the BRS. The steppers aren’t powerful enough to damage anything, of course, so it’s a matter of principle.
$N0=F150 sets the initial speed, as the default
F0 seems to (sometimes) confuse bCNC’s auto-level grid probing.
$N1=G10L2P1X-633Y-463Z-3 sets the default
G54 coordinate origin to the front-left corner, with
Z=0 at the home position up top, so as to prevent surprises. I expect to use
G55 for most work holder touchoffs, although we’ll see how that plays out.
G30 settings depend on the tool change location and the Z-axis probe location, so they’re still not cast in concrete.
The original camera position put it close to the MPCNC’s DW660 spindle:
Unfortunately, it sat slightly too close to the gantry roller along the X-axis for comfort.
The effort required to pry the mount off its hot-melt glue bed showed it wasn’t ever going to shake loose, so I fired up the glue gun and stuck it to a better spot on the XY assembly:
Seen from the side:
Bonus: it’s now trivially easy to tweak the locking screw!
Realigning the camera and recalibrating its offset proceeded as before.
A snippet of magnetic field visualization film shows a dipole pattern:
Snapping two of them together in line:
… produces a quadrupole:
Now, if only I had some magnetic monopoles, this whole thing would be easier!
Drilling a pair of holes into a length of ground steel shaft turned it into a holder for a Sakura Micron pen:
The aluminum ring epoxied to the top keeps it from falling completely through the linear bearing.
The hole sizes are the nearest inch drills matching the pen’s hard metric sizes:
While I was at the lathe, I turned another layer of epoxy on the printed holder down to a consistent 11.95+ OD. It fits the bearing nearly as well as the steel shaft, although it’s not quite as smooth.
The steel version weighs about 20 g with the pen, so it applies about the same downforce on the pen nib as the HP 7475A plotter. The force varies from about 19 g as the Z axis moves upward to 23 g as it move downward, so the stiction amounts to less than 10% of the weight:
However, the more I ponder this setup, the less I like it.
When the Z-axis moves downward and the nib hits the paper, it must decelerate the weight of the pen + holder + ballast within a fraction of a millimeter, without crushing the nib. If the pen moves downward at 3000 mm/min = 50 mm/s, stopping in 0.3 mm requires an acceleration of 4.2 m/s² and a 20 g = 2/3 oz mass will apply 0.08 N = 0.3 oz to the nib. Seems survivable, but smashing the tip a few hundred times while drawing the legends can’t possibly be good for it.
Also, the tool length probe switch trips at 60 (-ish) g, which means the pen can’t activate the switch. Adding a manual latch seems absurd, but you can get used to anything if you do it enough.
The simplest way to push a pen (or similar thing) downward with constant force may be to hold it in a linear bearing with a weight on it, so I gimmicked up a proof-of-concept. The general idea is to mount the pen so its axis coincides with the DW660 spindle, so as to have the nib trace the same path:
The puck mimics the shape of the DW660 snout closely enough to satisfy the MPCNC’s tool holder:
The pen holder suffers from thin walls constrained by the 10 mm (-ish) pen OD and the 12 mm linear bearing ID, to the extent the slight infill variations produced by the tapered pen outline change the OD. A flock of 16 mm bearings, en route around the planet even as I type, should provide more meat.
In any event, 3D printing isn’t noted for its perfect surface finish, so I applied an epoxy layer and rotated the holder as it cured:
After letting it cure overnight, I ran a lathe tool along the length to knock down the high spots and set the OD to 11.9+ mm. Although the result turns out to be a surprisingly nice fit in the bearing, there’s no way epoxy can sustain the surface load required for the usual precision steel-on-steel fit.
A plastic pen in a plastic holder weighs 8.3 g, which isn’t quite enough to put any force on the paper. Copper weighs 9 g/cm³ = 9 mg/mm³ and 10 AWG wire is 2.54 mm OD = 5 mm², so it’s 45 mg/mm: to get 20 g, chop off 450 mm of wire.
I chopped off a bit more than that, straightened it, annealed it, and wound it around a random contestant from the Bucket o’ Sticks with an OD just over the pen OD:
The helix is 13.5 mm down the middle of the turns and 14 turns long (trimmed of the tail going into the chuck and fudging the tail sticking out as a partial turn), so it’s 593 mm long and should weigh 26.7 g. It actually weighs 27.6 g: close enough.
Which is enough to overcome stiction due to the holder’s surface roughness, but the mediocre epoxy-on-balls fit allows the pen point to wander a bit too much for good results.
The prospect of poking precise holes into 16 mm drill rod seems daunting, but, based on what I see here, it will produce much better results: rapid prototyping FTW!
The OpenSCAD source code as a GitHub Gist:
Adding a lock screw to the camera mount stabilized the camera-to-spindle offset enough to make calibration meaningful. Mark the spot directly under the camera:
Then mark the spot directly under the spindle, perhaps by poking a small cutter into the tape, measure the XY distances between the two center points, and use bCNC’s camera registration process to set the camera offset.
With those numbers in place, switching to the tool view (the green button with the end mill to the right in the ribbon bar) puts the camera at the spindle location:
The view from outside shows the relation between those two pieces of tape:
Now I can align the camera view to a fixture position and be (reasonably) sure the spindle will automagically align to the same XY coordinate when I switch to the “tool” view. Seems to work well in preliminary tests, anyhow.
It turned out the previous version of the USB camera mount lacked sufficient griptivity to hold the ball’s position against even moderate bumps, so the upper “half” is now tall enough to hold a lock screw directly over the ball:
It doesn’t look much different:
A view from the other side:
The previous iterations used Genuine 3M foam tape, which seemed too flexy for comfort. This one sits on a bed of hot melt glue and is absolutely rigid. We’ll see how long it survives.
Tightening the cap screw requires needle-nose pliers, because the whole affair has no room for a hex key.
The OpenSCAD source code as a GitHub Gist: