Sunday, April 26, 2015

OX - More clamps and a TinyG firmware issue

I printed some clamps and knobs on my 3D printer:

I put them together like this:

You can find the stl files here, and the original OnShape CAD files here.

I used a cut piece of 1/4"-20 allthread for the stud. I used a punch to damage the bottom thread so the stud would stop at the bottom:

 This shows the stud being stopped. If it works its way through, I just bang on it some more!

4 clamps seems to work quite well for holding sheet stock down.

I started to cut a larger piece and my z-axis wound up dropping as it was cutting. I forgot to take some photos, but this was the aftermath:

After some vacuuming:

This was caused because the z-axis stepper was disabled while it was cutting, and then the cutting forces wound up pulling the head deeper and deeper into the cut.

I was running TinyG firmware version 438.02. I hooked up an LED to the Z-axis enable line on the TinyG board and sure enough, I could see the stepper driver being disabled while X & Y were still moving. I had the power management setting for all 4 motors set to 2, which is supposed to keep the motor enabled while any other axis is moving.

I asked about this over on the ChiliPeppr Google Plus group and it seems it was a firmware issue. So I downloaded the 440.14 firmware, flashed it, and immediately lost all of my settings. Sigh.

That created another diversion, and I went off and wrote a python program for archiving, restoring and viewing configuration files. You can find here. I've only tested it under linux, but it should work under Windows and Mac as well. Let me know if you have any suggestions, comments, issues, etc.

With the new firmware installed and my settings restored, I was able to cut the piece, and the z-axis stepper stayed energized through the entire cut. Here's a short video of the start of the cut:

That was cut with 1.5mm depth of cut 800 mm/sec travel, and max RPM (which I believe is around 12,000 RPM). This was the finished cut.

The flip side was white vinyl, and since I was using an up cut endmill, I put the good side down so it would have a clean edge:

That's all for now.

Saturday, April 11, 2015

Spray Can Tube Clip

I seem to forever lose those little (often red) tubes that come with my spray cans (normally with lubricant os some sort).

I've tried using elastics, but they often seem to disinegrate, so I decided to print something that would hold the little red tube instead:

Just stick the tube in:

and clip it to the can:

I created the file in OpenSCAD, and set it up to that you can easily customize various parameters (most likely can diameter and tube diameter, plus a few more). You can find the files on thingiverse.

Thursday, April 9, 2015

OX Build - Part 6 - Spindle and First Cut

Related: Unboxing, Part 1Part 2, Part 3, Part 4, Part 5Clamps

Since I decided to change my Z-axis bearings to proper thrust bearings, I was concerned about getting dust in the bearings.

Here's a side view of the thrust bearing:

I also noticed that the leadscrew was projecting below the bottom of the z-axis:

I also noticed my TinyG hanging below the cross bar, so I'll need to fix that as well. I wouldn't want that to catch a clamp. I cut the bottom piece off the end of the leadscrew and printed an end cap and some shields for the thrust bearings:

The endcap worked out great, but I had to make a few more refinements to the other 2 pieces in order to have the dust shields not hit the X gantry plate. I forgot to take picttures of the new parts, but you can see the changes in the STL files.

I recessed the screw heads and used button head cap screws, making the dust cap about the same thickness as the low profile screws used to hold the adapter plate:

This shows the thrust bearing inside the dust shield on the lower portion:

And the upper portion:

I printed up a spindle mount:

After installing, I don't like the fact that the mounting screws are hidden once the spindle is installed (but I'll fix that at a later time):

Here it is with the spindle installed:

And a video showing the Z rapids after a bit of tuning.

Ready to start cutting. Well almost. When I turned the spindle on, I totally lost all of my comms with the TinyG board. I verified that the noise was being introduced in the first cable chain. If I plugged the USB into the TinyG directly then it worked fine. I had two unshielded twisted power lines, so my first attempt to fix things was to replace the spindle power with a shielded cable run. That improved things, but not completely. The USB connection would bounce when the spindle was turned on, but would be usable after that.

I then looked closely at the USB cable I was using:

The cable has shielding, but it doesn't seem to be connected to anything. Sure enough, no connectivity from the shield on one end to the other.

I swapped in another USB cable. My multimeter confirmed that the shield was connected through, and everything works.

For my first part, I decided to try and create a T-nut out of some 1/4" hardboard. I first designed the part in OnShape:

I then created a sketch and "Used" (aka projected) all of the features onto it and exported that sketch as a DXF. The orange lines are the projected features:

I then imported the DXF into CamBam. The white lines are the DXF features. I added a pocket operation for the large recess, a pocket for the center hole that goes through all of the way, and finally, added a profile operation for the outline. CamBam supports tabs, so I added a tab on each side. These are small unmachined pieces which are left behind to keep the main part from moving while performing the very final operations. The tabs are represented by the rectangles you can see. If you look at the toolpath (blue and green lines except for the tabs) you can see that Z rises up to leave the tab behind:

I used a 3.175mm endmill for all of the operations, 600 mm/min feedrate, 100 mm/min plunge rate. The recommended depth of cut for MDF is 50% of the tool diameter, so I used numbers around 1.5mm for the depth increment, and for the final profile I used a cut width of 4mm so that the first cut (which is full width of the cutter) wasn't the final cut. The final cut would wind up being 4 - 3.175mm = 0.825mm, which will generally give a better finish than the finish on a full width cut.

I then generated the gcode, and ran it through OpenSCAM to verify that everything looked good:

Here's a video of the first cut:

And a photo of the finished cut:

And the spoiler board (I used some 1/8" hardboard). My total cut depth was 6.85mm for the 6.35mm (1/4") material:

This shows the tabs:

This is the T-nut cleaned up a bit:

The metal propel nut didn't want to go in, so I woud up drilling 3 extra holes:

And now the propel nut goes in fine:

So I'll have to modify my model to drill those 3 extra holes. Here's the T-nut in the slot:

I since discovered that you can import STLs into CamBam:

which doesn't look all that impressive. However, if you select the Surface, and then choose Edit->Surface->Edge Detect, and then delete the Surface object, you'll wind up with this much nicer looking wire frame:

And you can click on polylines from the wireframe to perform machining operations with.

I used the 3D printed T-nuts, a few scraps of wood with drilled holes, some all thread and knobs for my first clamps:

I think my next project will be some decent clamps.

3D Printed Parts:

Dust CoverOnShapeSTEP & STL
52mm Spindle MountOnShapeSTEP & STL

Related: Unboxing, Part 1Part 2, Part 3, Part 4, Part 5Clamps

Sunday, March 29, 2015

OX Build - Part 5

Related: Unboxing, Part 1Part 2, Part 3, Part 4Part 6Clamps

I decided to tackle the spoilerboard next. I debated several options and decided to try something call slotwall. I bought a 4x8 sheet of slotwall and some sheets of 1/4" and 1/8" MDF to use as the real spoilerboard.

I've found that the MDF is extremely flat and I'd prefer to ruin small little pieces rather then the slotwall.

This is what the profile of the slotwall looks like:

All of my woodworking jigs use 1/4"-20 hardware, so I decided to use that for my holddowns. I used 3-pronged Propell nuts along with a printed piece to make my T-nuts:

I wound up putting a recess on the bottom and used support:

This was removed quite easily. In hindsight, I probably could have made the T-nut a bit thinner and not needed support.

Here's the propell nut installed:

And how it fits in the slotwall:


Oops. I didn't quite center the slotwall. The left most slot just clears the corner bracket, but the right most slot needed a wee bit of "adjustment", which was done with a file:

The OnShape document can be found here.
The STEP and STL files are here.

Related: Unboxing, Part 1Part 2, Part 3, Part 4Part 6Clamps

OX Build - Part 4

Related: Unboxing, Part 1Part 2, Part 3, Part 5Part 6Clamps

Now that the basic mechanical stuff is done, it's on to the electronics.

I had some surplus cable chains that I salvaged off another machine, so the first order of business was to create mounts for them. Right around this time, I also discovered which is a free online solid modelling CAD site. You need to request a beta invite. This took a day for me, but other people I've talked to have gotten their accounts activated fairly quickly.

In the event that any of the 3 printed parts are useful to someone, I'll be making all of the parts public under OnShape, and will provide URLs to the parts, to STEP files, and to the STL files. I'll put a table with links to all of the 3D printed parts at the end of the post.

This is the lower X cable chain mount. This fits in the V-Slot.

The upper X cable chain mount (goes above the stepper):

Here's the X cable chain mounted:

For the Y cable chain, I wanted something to support the cable chain. I used two pieces of 90 degree trim pieces I found at Home Depot. This is the mount I designed:

This is what the 90 degree angle pieces look like (they're about 3/4" on each side):

The 90's fitted into the mounting piece:

And the Y cable chain support in place:

This is the upper mount for the Y cable chain:

With the cable chain attached:

And the lower mount. Since this is near the middle of the support, it also helps to hold the 90 degree channels together as well.

 Gantry all of the way back:

Gantry all of the way forward:

The cable chain for the Y axis was Igus Zipper chain, so one of the sides is removable, which makes putting the cable in a bit easier:

I printed a temporary mount for the TinyG board (I'll eventually use a metal enclosure). The 4 holes in the middle will mount on the rear of the gantry.

And the upper portion allows for a 12V 80mm cooling fan. The cooling fan should really blow onto the back of the board, and I'll move things around when I build the metal enclosure.

The speed controller had a couple of places that looked like they could be used for mounting holes, so I tapped them for M3:

This is the mount for the speed controller:

I also created some T-nut keepers, so I could put some extra T-nuts in the slots nd not have them make vibration noise:

This shows some of the T-nut keepers in use:

Everything all wired up:

Closeup of the left Y stepper:

And the right Y stepper:

The top of the X cable chain. I left a piece of string in the cable chain since I still have more wires to pull through (this cable chain didn't have the "zipper" feature). I used a zap strap to keep the cable loom from fraying and then wrapped it in heat shrink.

Here are some wire clips I designed. The one on the left is secured to the V-Slot using an M5 screw. The one on the right snaps into the V-Slot:

Here's an example of the screw mounted version:

An the clip on version:

Closeup of the stepper wiring. From left to right is Motor 1 thru 4, X, Y1, Z, and Y2. I wired the NEMA 23 motors (X, Y1, and Y2) all in the same order. For some reason, the NEMA 17 use different colors for the coil pairs, which is why its different.

I designed a pen mount, and this is a photo of the pen mount, along with the output of the first gcode file run:

Video clip showing the first gcode run using ChilPeppr:

I set the rapids to 400 mm/sec (24000 mm/min) and here's a video showing corner to corner moves. That was just my initial guess at a rapid speed, I'll need to play to find out how fast it can actually go.

3D Printed Parts

OX-Cable-Chain-MountsOnShapegithub (STEP & STL)
Spindle-Driver-MountOnShapegithub (STEP & STL)
TinyG-MountOnShapegithub (STEP & STL)
Wire-ClipsOnShapegithub (STEP & STL)
T-Nut-KeeperOnShapegithub (STEP & STL)
Pen-HolderOnShapegithub (STEP & STL)

Related: Unboxing, Part 1Part 2, Part 3, Part 5Part 6Clamps