Fixing Mesh Issues & Layer Gaps in 3D Printing

So today i had an interesting experience. As i have been lately, i sometimes go to the library to print out parts I’ve designed for my custom 3D printer project. While they print i use the time to crunch out upcoming essays for for school.

But this time instead of the printer happily moving along and producing perfect parts i got a rude awakening. The parts that came out looked like picture #3. Instead of my corner pieces being printed with two triangular pyramids and four “arms” they printed with one triangle, a “tail” and two “spaghetti blobs” on the side in a mess. It looked more like a deformed geometric fish instead.

Looking for info online i found helpful information on the Ultimaker Forum. It seems if i go into Layer view beforehand i can see what it will print out like and see any obvious gaps before hand. X-ray mode is even more helpful in a situation like this because if there are any faces or walls that have problems they get highlighted in bright red.

As you can see on mine, the bad models have several red triangular “internal” walls. The models have internal walls because they were created in Solidworks as assemblies from smaller parts and “digitally glued together”. Normally that shouldn’t cause a problem, but for some reason it did.

Currently i’m using Solidworks 2007 to create my 3D models. I wish i could use a good Open Source CAD program that works in Ubuntu Linux, but sadly none really exist. Not to my liking anyway. FreeCad has potential, but has a long way to go. OpenSCAD looks decent, but is for people who have mathematical minds.¬†Sadly i don’t. And Blender has amazing graphics, but is not a CAD program. If someone could combine the beautiful elegance of Blender while stripping out it’s over-complexity and merging it with FreeCAD, and taking the user friendliness of Solidworks it would be perfect. Oh, and it has to be cross-platform (meaning runs on Ubuntu Linux). So until that day i’m forced to use a proprietary CAD program on a otherwise useless proprietary operating system, either on it’s own machine (or run in a virtual machine like Virtualbox). Far from an elegant solution. -End Of Rant. lol.

For me my problem was some sort of issue with the internal walls. Normally this should not be a problem. Since my version of Solidworks does not export whole assemblies as STL files (instead each separate part is exported into STL), I’ve been using 3dContentCentral to convert my CAD files into single STL files. Apparently the issue i ran into arises when i export my assemblies into single part files before converting them to STL. If i instead upload the entire assembly (and dependencies) and convert those to STL files it seems to work fine. Somehow that makes a difference when fixing whatever was wrong with those internal walls/faces. Whatever. At least i’m happy to find a solution.

I wanted to fix my bad CAD models from the beginning, but for example if i had a bad STL file that was not created by me and i still needed to print it, i could turn to Cura’s expert settings. In Cura’s expert settings there are some tools that attempt to “fix horrible” models that would otherwise fail to print correctly. I could have gone that route to print them anyway, but for me the better solution was to fix the source of the problem which was a bad CAD model.

cura_good_model2

So, all in all, check your parts before you print them. Cura’s x-ray mode and layer mode are invaluable tools that can help you avoid problems with your 3D printing endeavors.

This site also gives some good tips on bad edge geometry and bad STL meshes.

Advertisements

DIY 3D Printer progress piece by piece

One of my newly resurrected projects is my ambition to deign and build my own functional 3d printer. Eventually i’d love to just purchase a nice one, but i’d also like to build my own (besides i already have most of the parts and mine would be bigger too). The pre-made model i would buy is the Lulzbot mini. Mainly because they are fantastically built machines, but also because they are produced by a company here in my own town! Plus they have a philosophical commitment to open source which i love.

Anyway, building off of my original post in 2011, I’m designing from scratch a 2ft x 2ft 3d printer. I’ve been steadily making good progress piece by piece, step by step. My main design criteria are: as close to a 2ft x 2ft build area as possible (maximizing build area vs machine footprint), using 1″ 10 series 80/20 t-slot extruded aluminum, minimizing unneeded parts by using t-slot linear bearings (real aluminum ones and 3d printed working replicas), and trying to just have a simple design by default. I’ve had fun these last few weeks by printing out working 80/20 linear bearing CAD models into working plastic prototypes. My next step is to print out some motor mounts. I’ve designed two motor mounts so far. The first one is a snug mount that shapely fits around a motor and has built in t-slot mounts intended for the z axis lead screws. The second is a simple right angle slotted mount for y-axis that has a belt drive. I have them modeled in Solidworks 2007. I just need to print them out to see if they will work.

motor mount 1

20151020_184953
3d printed linear bearing (80/20 t-slot)
20151026_155948
Initial frame of diy 3d printer with 3d printed linear bearings in view (80/20 t-slot)