Archive for October, 2009

Thing of the Week: Lend Me Your Ears

Another super-productive week on Thingiverse, with spider rings, a new skull, and a scary lasercut skeleton robot in time for halloween, mechanica interfaces and Makerbot upgrades too!

Also there was an awesome Beethoven bust.  This site is amazing.

But I picked out the Ear Cookie Cutter as this week’s winner mostly because of its story: the designer of this part was asked by his wife to make this for her, because she’s a graduating ear doctor.  That kind of story is really what Thingiverse is all about: bringing the making of things forward into the constantly-remixing, hyperconnected and ultra-fast adaptation world that we’re all getting used to in the 2D and 1D art worlds (formerly painting, drawing, music and literature, now an ever-expanding mishmash of ever-expanding possibilities and definitions).

The Ear Cookie Cutter is just the beginning– soon there’ll be many cookie cutters available.  Eventually they’ll be remixing and remashing faster than the holidays can come around.  And that’s just from one couple sharing the benefits of digital fabrication.  Digital sharing is an amplifier for creativity, if you’ll pardon an audio-related joke.

Comments (1)

Thing of the Week: Postato

Tons of great stuff this week, much of which was highly practical design, but I’m going with the Bionic Potato Project for sheer gumption and keen-ness.

This concept does a number of great things, not the least of which is land the opening salvo in a new branch of Spudmodding.  Really loving the waves of creativity that are coming out of Thingiverse lately!

Comments (1)

Parametric Object Party Day 3: Solid Constructive Geometry

thing_fan
Yesterday, I gave my spiel on parametric geometry using GCodes, now it’s Marius’ turn!

Solid Constructive Geometry is a tool that can make many shapes very easy to construct which would be dreadfully difficult in a mesh-based system like Blender or using GCode scripting.  It also shares GCode scripting’s property of being natively parameter-friendly!  Thingiverse users have been doing great things with it already.

From Marius’ notes on CSG:
As opposed to Allan, we’re using parametric modeling techniques which generate 3D models in the STL format. We can then hook up to the normal processing pipeline for STL models, as described by Allan.

One of the obstacles to overcome when modeling for the Makerbot is that the models need to be solid, aka. watertight.
This means that the object must describe a closed volume. Duplicate edges, intersecting meshes, freely floating triangles etc. is a no-go.

We’re using a modeling technique called CSG (Constructive Solid Geometry). This works by starting with two solid primitives and performing one of three basic operations on these primitives, creating a new object. The operations are union, difference and intersection. The resulting objects can then be used as new starting objects and we can thus build more complex solid models. The wikipedia article describes this process quite well.

In addition to typical primitives (spheres, cubes, cylinders, cones), we can also start with a 2D outline (e.g. modeled in a 2D CAD tool like QCAD/AutoCAD) and create a solid object based on that using either linear extrusion or rotation of a curve around some axis.

“Parametrized” in this context means that all parameters used to construct or orient the different primitives can be configured using some kind of light-weight scripting language with visual 3D feedback for each step. Typical programming constructs such as variables, macros/functions and for loops are also supported.

Now, to the actual software:

1) As a start, we developed smth. called “CSG Evaluator”, which is not parametric, but is very helpful building CSG-based models.  This is released and in active use by the RepRap developers:
http://objects.reprap.org/wiki/Builders/Metalab/AoI_CSG_Evaluator
This is a plugin to Art of Illusion, which I assume you’re familiar with already.  Written by Philipp Tiefenbacher and me. We’re both from the Metalab in Vienna and RepRap core developers.

2) Based on CSG Evaluator, we then wrote another Art of Illusion plugin: MetaCAD (http://metacad.org).  This is also written by Philipp and me.MetaCAD is a parametric modeler using Art of Illusion for rendering and geometry evaluation.  It’s downloadable and useful, but unfortunately not yet released.  This is due to some ugly bugs in Art of Illusionwhich makes the application freeze when the model becomes too complex.  Nevertheless, the plugin is quite useful, but we lost some momentum and motivation due to the outstanding bugs in Art of Illusion :(

3) The future solution: OpenSCAD (http://openscad.org).  This is written by Clifford Wolf, another friend of ours from
the Metalab.  He wrote this to decouple the MetaCAD idea from Art of Illusion to avoid being bound by bugs as mentioned above.

OpenSCAD is very similar to MetaCAD, maybe more targeted towards programmers than modelers.  It uses a scripting language to build CSG objects.  It has a built-in 3D preview enabling inspection of both the final object and intermediate objects.

Earlier problems with long evaluation times for CSG objects has been solved using 3D-accelerated real-time preview.
OpenSCAD is currently under development but it’s pretty stable and runs under Windows and Linux.  A port for Mac OS X is upcoming.

Comments (5)

Parametric Object Party Part 2: Straight to GCode

Here’s how parametric objects can be made by directly creating GCodes:

For scripted objects, I use Python.  Originally I did this because I wanted to eventually start raiding the Skeinforge toolkit for commands, but the language has a lot of other benefits, such as ease of use and nice modularity support.

Every object any MakerBot prints can be expressed as a set of parametric equations.  These have the form:

X = f1(t)
Y = f2(t)
Z = f3(t)
E = f4(t)

Where X, Y and Z are the coordinates of the stepper motors, and E is the extruder speed.  Designing a scripted object is just a matter of writing these equations down for a desired object.  Now, ALL objects that are printable can be expressed this way, but only a certain class of them are particularly *useful* to do this way.

For example, a whole class of objects, the ones that are radially symmetrical can be expressed as a collection of circles, which are easy to code.  This leaves only the profile to design and (potentially) hard-code.  Using this, I’ve designed goblets, parabolic dishes, and a few other geegaws.

Another class of objects, prisms, are also prime candidates for script-based design, since the cross-section can simply be repeated over and over again for additional height.  This class includes things like gears, spiral springs, and things traditionally made on a laser cutter.  Prisms can be readily skewed, twisted, or scaled to create a collection of shapes impossible with laser cutters, such as beveled gears.

However, with all scripted objects, mathematically simple shapes are easier to make than mathematically complex ones.  This is where other CAD tools start to win out over scripting.  What makes something mathematically complex isn’t the same as what makes something /intricate/, however.  A key example here is fractal geometry, which can be specified very simply despite being tremendously intricate.  I’ve printed a few lovely koch snowflakes generated by what turned out to be a very simple Python script.

Fractal geometries are an area I’m really interested in for this exact reason.  Biology gets tons of mileage out of fractal geometry: simple code can design complex objects, which is how something as complicated as a human can be described by less data than would fill a DVD rom.  By scripting in fractals, we may be able to create a whole new world of things, without even needing to fully understand what it is we’re making.

Comments (2)

Parametric Object Party Day 1: The Power of Standard-Custom

Thingiverse is full of objects that users can download, print, and even remix and manipulate into new things.  But what about things that are already designed, but which are pre-designed for particular sets of manipulations?  Something like a measruing spoon is handy, but what if you could ask a program for a particular measuring spoon and have it engrave the exact volume on the model as well?  What if you could request a compact xylophone with exactly the notes you want?  This is the world of parametric objects, and tomorrow and Wednesday we’re going to look at two approaches to this field that have their own advantages, complete with links to great starting points for each!

Tomorrow, we’ll look at direct object scripting, which lets you apply your inner math geek directly to solid modeling and getting 3D prints.  On Wednesday we’ll look at solid constructive geometry and how advances in the state of open-source CSG are making it possible to add control variables to the benefits of CSG for high-custom but pre-designed solutions!

Leave a Comment

Thing of the Week: Page Opener

This week’s thing of the week is just a nifty bit of design.  E-books may be the future, but it’s going to be a number of years yet before we all transition over and even longer before our beloved old copies of The Golden Compass and The HitchHiker’s Guide to the Galaxy become too fragile to keep thumbing through.

Vik in New Zealand gives us a great little tool for reading one handed.  Neat!

Comments (2)

Thing of the Week: The MakerBeam

The MakerBeam isn’t the first building toy to show up on Thingiverse, but it is the first one to come with its own attached business plan!  3D printed entrepeneurship is a great thing to see, and I hope we see lots more where this came from!

The MakerBeam team is looking to manufacture these the old fashioned way, with capital investment in tooling and extrusion, presumably for reasons of cost and surface finish.  But by uploading designs to thingiverse, and by actively engaging the MakerBot community, they just may create a user base dedicated to making better designs, more connectors, and smarter ideas the norm.

In the years between completely democritized manufacture and the old days of brick and mortar factories, I think we’re going to see a lot of hybrid approaches, some of which will be really successful!  Best of luck to the MakerBeam Team!

Comments (2)

Thingularity

singularity

With tons of upgrades to the printing infrastructure showing up, Thingiverse user Zingnig enthuses:

I’m glad to see that the thingiverse has reached the point where large upgrades and replacements of entire subsystems for a machine that can make more things.

Singularity here we come.

And he’s right.  Perhaps what’s coming isn’t The Singularity as Kurzweil puts it, where the first made intelligence is smarter than those that made it, thus allowing it to make even smarter ones and so on, but an equivalent in the making sphere: designs for new automated fabrication systems that are open source and makeable on existing fabrication systems, allowing anyone with the most basic system to bootstrap themselves to the state of the art, may not be that far off at all.

There need to be upgrades to the basic system in a few places: without certain machining capabilities none of these systems are fully self-propagating.  They can’t make their own circuit boards yet, either, and we certainly won’t see semiconductors printing on MakerBots any time soon.

But the Fabricator Singularity that’s happening right now is already a huge deal: if there are mechanical modifications and improvements that can be made to personal fabrication systems using those fabrication systems, they happen, and minutes later everyone has access.  This is a recipe for a self-boosting infrastructure that finds optima with a speed that no centralized manufacturer could ever dream of.

Comments (3)

Thingiverse Goes Mobile


The advent of mobile computing has brought us many things: the sum of human knowledge at your fingertips wherever you are, instant map capabilities, and the ability to wax poetic on the go 140 characters at a time. Well, now you can carry a universe of things in your pocket. Provided your pocket has an iPhone, of course. :)

The iPhone site is the product of about 4 days of feverish hacking and refactoring of the existing Thingiverse code. It’s pretty much read only, but if you need to do any heavy lifting you can easily switch back to the standard HTML view. The idea is to create a site that is interesting and helpful if you want to kill some time and see whats going on in the ‘verse.


Of course, there is an ulterior motive: I wanted to be able to access the inventory system on my iphone. I’ll admit that I’m a selfish bastard, but also a thorough one. When I launched the parts and inventory systems I was really happy. Especially when I realized that I could skip the whole barcode reader step and just put QR codes with the part url on all of our parts. (Notice we auto-generate QR codes for all parts and things on thingiverse…)

Well, unfortunately I soon realized that the computer-monitor optimized Thingiverse did not make managing the inventory via iPhone very easy. So, instead of simply converting that single page into one that works well with the iPhone, I converted the whole site! Now that its done… its really awesome! All of our boxes at MakerBot are covered in QR code stickers. I just scan one of those stickers with QuickMark and it takes me to the Thingiverse page for that part. From there I can add or subtract from our inventory nice and easy. No more lugging a heavy box to the barcode scanner station just so I can add or subtract one bolt. I can just grab a bolt, scan the code and go!

Ah the joy of 4 days work to save 5 minutes work. :)

Leave a Comment

TMBG and CAD

They Might Be Giants have been, since I was maybe twelve, one of my all-time favorite bands ever, so naturally I was pretty elated when I found this video where TMBG sings the praises of CAD, and by extension digital manufacture.  This process of, as TMBG puts it, turning “a thought into an object,” is really pivotal to the future, and I am pretty much tickled pink that they’re using part of their album Here Comes Science to introduce young people to CAD.

Also the song is really fun.

Comments (1)