Archive for the ‘ CG ’ Category

New X-Carve project: Soap Dish

Working with the X-Carve has been a lot of fun.  A while back I 3d printed the “Soap Holder by piuLAB“, and figured something similar would be great to route.

Took some time in Maya generating a pleasing voronoi pattern for the top of my soap dish, which I cut out of alder, and the bottom out of some red oak:

soap_wip

Generated the gcode in MeshCAM, and use Chilipeppr to send it to the X-Carve.  Still a lot of learning:

  • For the top:
    • Used a 1/8″ 1-flute upcut endmill at 120″/min, 1/16″doc, 1/16″ stepover, Dewalt611 at 1.5, based on chipload calculators.  It seemed to cut just fine. but as you can see (if you zoom in) there is vertical banding on the Z.  After posting to the forums, the consensus is I’m cutting too fast.  So… I’ll slow it down next time 😉
    • It didn’t cut all the way though, so I had to use an x-acto to cut out the rest of the pockets.  Either I need to trick it into thinking my material is thicker, or do more tuning on my Z-steps.
  • For the bottom:
    • Used a 1/4″ 1-flute upcut endmill at 120″/min, 1/8″doc, 1/8″ stepover, Dewalt611 at about 2, based on chipload calculators.  It seemed to cut just find as well using a conventional climb cut on the rough pass, but on certain sections I got a lot of chugging.  Again, too fast.  Slower next time.

When it was done I applied some stain to the top, and sealant to both, and came up with this:

soap_final

Not too bad all things considered :)

You can download the STL’s from Thingiverse here for routing, or 3d printing.

Making The OneHundred

I always found it, humorous, when some Instagrammer got ‘X number’ of people and made some crazy post about it:  “LOVE you all, hugs and kisses”, etc.  I recently hit 100, and figured this would give me a good excuse to combine both my 3d-printing and newfound CNC-routing skills:

I’ve been wanting to do a piece that combined both 3d printing and CNC routing, some came up with idea of a routed background, with 3d printed text.  “The OneHundred” was thus created:

beautyShot

Info on the techniques used to make it:

3D Modeling

The model was created in Autodesk Maya:  I wrote a super simple tool to randomize the rotation and position of simple poly cubes that made up the background.  A 3d model of the text was generated, and Booleaned out of the background.  An stl was generated for both the background, and the text.  The piece is 12″ square, by 3/4″ deep.

3D Printing

The text model was sliced using Simplify3D, and printed on my C-Bot directly off the SD card (I recently was printing something via Octoprint, bumped the RaspberryPi, and it lost USB connection half way through a multi-hour print… don’t like that at all).  Settings:

  • Filament: Makergeeks Orange PLA
  • Extruded @ 230deg (hot for PLA, but per manufacturer recommendation), bed @ 60 deg
  • 1.2mm E3D-v6 Volcano nozzle
  • 600 micron layer heights, 1 shell, 20% fast hexagon infill.
  • Print speed is 45 mm/sec : Sounds slow, but that’s a volume of 32.4 mm3/sec extruded.  For those keeping score, a the volume extruded of a .4mm nozzle with 200 micron layer heights at 90mm/sec is 7.2 mm3/sec:  Volcano is printing 4.5x as fast, crazy.
  • Took about 1.5 hours.  (so, based on the above specs, it would have taken 6.75 hours on a ‘normal’ printer).

CNC-Routing

MeshCAM was used to generate the toolpath cut from the MDF background.  The gcode was sent via the Chilipeppr GRBL workspace.  MeshCAM settings:

  • Roughcut:
    • 1/4″ 2 flute upcut endmill
    • DOC: .0625″
    • Stepover: .125″
    • Feedrate: 60″/minute
    • Took about 1.25 hrs
  • Finish Pass:
    • 1/8″ 2 flute upcut ballnose
    • DOC: .0312″
    • Stepover: .025″
    • Feedrate 60″/minute
    • Took about 3.25 hours

The above settings are completely based on previous trial and error, and could be improved no doubt.  Things I noticed while cutting:

  • Got some chatter on the roughcut, even when I turned up my DeWalt 611 speed all the way.  Guess I was cutting to aggressive.
  • The final piece has more scalloping than I’d like:  Think I need to lessen the stepover next time.
  • Having to babysit the machine for 4.5 hours was… not fun.  But I got to read some magazines I needed to catch up on.

Final Thoughts:

Great learning experience, I’m really getting the two-cut process down using my touchplate.  Can’t wait to do more!

Exporting usable CAD data from Maya

It’s that time of year again:  Time to help my father build a new aluminum boat.  It was an enjoyable process last year:  Based on a napkin sketch with some dimensions and angles he gave me, I modeled a boat out of NURBS in Maya, and through a lot of hoop-jumping, got him some useable data:

The biggest hurdle was getting him ‘the usable data’. The process of making the boat in Maya is discussed above.  But these were the export steps:

  • Export the mesh from Maya as obj.
  • Use online converter to go from obj -> pdf.
  • Then, my father gave the pdf to a buddy who traced it in CAD, gave it dimensions, then provided that to the plasma-cutter (as a DWG).
  • Ugh.

That process was super clunky.  I’ve been using Maya since… 1998(?) and never once needed to export anything CAD related, so this was all new territory.  To make this work I need a way to generate the CAD data myself, add dimensions to it, and export out as a DWG.  There must be a better way!

Turns out there is (and probably even a super-moar-better way than what I’m about to describe, if you know CAD better than I do, which wouldn’t be much of a stretch).  In the back of my head I remembered that Maya has a DXF exporter.  I don’t think I’ve ever once used it…

Part 1: Get CAD Software & Configure

Since this process is (currently) a once-a-year thing, I didn’t want to drop a bunch of cash (any really) to get some newfangled CAD software.  I’d read a lot about FreeCAD on the interwebs, it was available for Mac, so I installed it.

Fumbling around however, I realized it neither could import DXF, or export DWG, by default.

To get the DXF importer\exporter working, I followed the instructions here.

I never could actually get the DWG export working from the software, even following the instructions here.  However, that links to a standalone “Teigha File Converter” that will batch convert a directory of DXF files to DWG.  Good enough.

Also, this data needed to be in inches, so I changed the FreeCAD prefs as such.

Part 2: Export usable CAD data from Maya

I started by exporting the unrolled mesh as DXF from Maya:  There are zero options available.  But FreeCAD happily imported it.  Immediately, problems:  Missing triangles (you must exported triangulated mesh, can’t have quads\n-gons).  As a check, I exported this same data out as DXF, and reimported it:  Empty.  I don’t think FreeCAD likes to deal with polygonal mesh.

Next, I tried exporting the unrolled NURBS surfaces as DXF:  Those came in as empty groups in FreeCAD…

Finally, I converted the trimmed NURBS to their perimeter curves, and exported the curves:  Success!  This is what is important to know:

Export NURBS Curves from Maya as usable CAD data.

Polygonal Mesh = highly questionable.  NURBS Surfaces = no go.  Note I also tested locators & ‘distanceDimShape’ nodes:  They don’t export at all.

Once I had the boat’s unrolled\flattened curves in FreeCAD, I started adding draft dimensions.  Where I encountered my next problems:

  1. The scale was off by a factor of 10:  Even though Maya was set to inches, and FreeCAD was set to inches, everything was 10x as small in FreeCAD.  I noticed this is the same issue when I 3d print in cm:  Even though I have Maya in cm, and my slicer (Simplify3D) is in cm, they come in 10x smaller.  The fix?  Scale everything up in Maya 10x before export.
  2. From the top view in FreeCAD, all the curves looked just like Maya.  But when I went into a perspective view, the curves were actually going shooting up & down in space quite a bit:  Not on a flat plane.  But they are in a flat plane in Maya.  What’s going on?  Long story short:  In Maya after you do the 10x scale up, be sure to ‘freeze transformations’ on all the curves.  In addition to the scale, I had many other translate and rotate values on the curves to get them flat on the ground plate.  It appears that FreeCAD hates this.  But once everything was frozen, the curves showed up a-ok, from all angles.

Note:  Maya uses the Autodesk ‘DirectConnect’ file translators to export (and import) DXF data.  See the docs on the 2016 version in this pdf.

Part 3 : Add Draft Dimensions

Since I was told that this needed to be provided to the plasma cutter in inches, in FreeCAD’s ‘General -> Units’ prefs, I’d set them to “US customary (in/lb)”.  Next, via FreeCAD’s ‘Draft’ toolbox, I used the ‘Dimension’ tool to provide width & height values for all the curves.  This is where I ran into the next (and as of this authoring, unresolved) issue:  FreeCAD seems to auto-change the what unit is displayed in the dimension based on the length of the part being measured.  For example, I want all the dimensions to be in inches.  But they’d report inches, feet, and yards, depending on the length of the part.  After posting this issue to the forums, I learned that if you switch the units to “Imperial decimal (in\lb)” the dimensions will always be in inch.  Problem solved.  Thanks forum peoples!

Part 4 : Export

From FreeCAD, I export all the curves and dimensions as DXF, then using the Teigha File Converter, convert that to DWG.

And…. done?  Still need confirm from the plasma cutter the DWG is valid (I have no way of testing myself), but overall, a far less clunky data-export-pipeline than last time :)

New 3D Print : Life-Sized Pirate Head

I was recently approached by one of my co-workers, Diego Teran, if I could 3d print a zbrush sculpt he’d done of a pirate head.  Looking at it, I realized it’d be a perfect candidate to print life-sized on the C-Bot.  I’ve done a number of large format prints now (most recent), and am getting comfortable with letting the C-Bot run for extended periods of time.

To start, I did a number of 100mm high versions of the head, and had a back and forth dialog with Diego having him adjust the pose on the head from straight-on to “chin slightly lifted”, so that the only support needed was under the ear-lobes.  Happy with the tiny version, I fired off the “big head print” Friday night. On Sunday morning, it had finished:

Print Stats:

  • 280mm / 11″ tall
  • 683g of “Royal Pruple” Gizmodorks PLA, extruded at 225 degs on a woodglue-slurry-coated glass build plate (unheated).  Works out to be $17 in material.
  • 31 hours, 32 minutes total print time (lol, the print estimate was 24 hours).
  • Sliced in Simplify3D, the .gcode came to 69.6 megs.
  • 2 shells, 5% ‘fast hexagon’ infill, no raft, supports under the ears only.
  • 90mm/sec print speed.
  • .6 mm E3d-v6 Volcano nozzle with 150 micron layer heights.

Overall I’m really happy with the results!

New 3D Print: Mini-Me

Or “Really Big Me” depending on how you look at it:

A few months ago I stopped by the “Artec3D Scanning Service and Showroom” in Palo Alto (CA) to check out their scanner tech.  While there, they offered to do a full-body 3D scan of me in their “Artec Shapify Booth” : Only takes 12 seconds, so why not?  Later that day there was a web-link to my scan, which I downloaded (for $40).

I’ve been wanting to throw something really big and complex at my C-Bot 3d printer, and this seemed like the perfect thing.  After cleaning it up a bit and making a base in Meshmixer, it printed without any (major) issues:

Lucky bonus: It was on one of two days in the whole year I had my “sexy-trucker” ‘stache still firmly in place.

Print Stats:

  • 500mm / 19.7″ tall
  • 663g of eSun gray PLA (the last of an old spool I had, purchased from ToyBuild Labs) extruded at 210 degs on a woodglue-slurry-coated glass build plate (unheated).  Only had about 5 turns left on the spool when complete, close one!
  • 35 hours, 39 minutes total print time (lol, the print estimate was 24 hours).
  • Sliced in Simplify3D, the .gcode came to 161 megs.
  • 3 shells, 5% infill, no raft, no supports : The 3 shells was to help with all the overhangs since I printed no supports, may have been able to get away with 2.
  • 90mm/sec print speed.
  • .6 mm E3d-v6 Volcano nozzle with 150 micron layer heights.

Overall, I’m really happy with it.  But, there are a few things that struck me a strange, and I believe they’re both related to the slicer, Simplify3D.

Wobbles in the infill

While it was printing, I noticed wobbles showing up in the “triangular” infill:

slice_wobble_web

Watching the print, I figured out what is going on:  When Simplify3D prints its infill, when any of the lines cross, they don’t do anything to pause the print.  So in this case, since three lines are crossing, 3x the filament starts to form at the vertex.  Over time, this builds up, and the nozzle physically ‘bumps’ over it.  When it bumps, it shakes the whole machine, and those wobbles start to show up in the infill.  This is never seen since its on the interior of the print, but I don’t like that it’s happening.  Sometimes I could really hear the hot-end ‘thunk’ the vertex and shake the whole thing :(

High-res, low-quality

I’ve been seeing this in my prints recently, but haven’t yet had a good enough test case to show the issue, until now.  I’ve noticed that when I print “really high-res” mesh in Simplify3D, it tends to make the surface quality a bit like a bowl of oatmeal.  My low-res prints are nice and clean, but high-res:  Quaker Oats.  In the below images, you can clearly see what’s happening:

Click on the images to zoom in, but you can clearly see a print quality change as soon as the dense mesh layer is hit.

I’ve had this feeling that S3D is trying to print ‘all’ the detail, even though some is smaller than the diameter of the toolhead itself.  And because of this, there’s a lot of shaking going on.  I know from my years using Makerware that it specifically would ‘smooth out’ this high-frequency detail, and I noticed a major difference printing the same ‘high res’ mesh in Makerware, and S3D:  The Makerware print would look\sound nice and smooth during print, while the S3D one would try to shake the machine apart.  It looks like this is still happening, and at least I have a test case that exposes it.  If this is the issue indeed.  I’ll ping the S3D support an see what they say.

I have a few next steps to troubleshoot this:

  • Make a test print that varies from low to high-res.
  • Print this in S3D, and contrast that print in other slicers (like Makerware, Cura, Slic3r), and see what sort of behavioral differences show up.