Creating prototypes is nothing new. For centuries, inventors have created mock-ups in myriad ways ranging from wood carving to custom machining. The Wright Brothers created prototypes as did Thomas Edison. Producing those prototypes required not just vision but also significant fabrication skills.
Modern prototyping has changed. Designs are created in computer-based design software and then sent directly to tools that directly produce the objects. What’s more, tools like 3d printers and computer controlled routers have become more affordable. And makerspaces in hundreds of communities around the country and the world now make these tools accessible to inventors of limited means.
But how hard is it, really, for someone with a vision and limited resources to design and create a prototype? Is this a realistic goal? And what are the advantages and disadvantages of 3d printers and CNC routers?
Wanting an answer to these questions, I joined a makerspace, the Columbus Idea Foundry in Ohio. With no experience in 3D design or 3D printing, I decided to create and produce a prototype on their 2 types of 3D printer and on their CNC router.
Start with a Vision
Some months earlier, I’d read about Maurice Ribble’s brilliant Camera Axe. I’d been looking for a way to photograph water droplet splashes. At the time the Camera Axe was available either in a completed unit in a case or as a kit with a circuit board and all the necessary components. Being frugal I chose the $85 kit instead of the $300 completed unit. Within a few hours I had a fully functional Camera Axe and was taking pictures.
But wouldn’t be nice… I did regret not having a case for my kit board. And that notion gave me the perfect opportunity to experiment. How hard would it be to create a prototype case on the Idea Foundry’s equipment? The kit version of the Camera Axe was perfect for this experiment precisely because it wouldn’t be easy. The board included 9 switches, 2 LED indicator lights, and a small LED display. The board itself was small, roughly 4” x 3.25” but it mounted on a separate Arduino board. What’s more, this version hadn’t been designed to place in a box. Components of varying height were mounted next to one another. A short switch might be within a quarter inch of a much taller transistor. This was going to be a challenge.
The first step, of course, was selecting a 3d computer aided design application to draw the box for this circuit board. Learning to use 3d CAD software was the single biggest challenge I faced. There are dozens of powerful alternatives such as SketchUp, SolidWorks and Blender. After hours of research I settled on Autodesk’s Fusion 360. It is enormously powerful and, remarkably, free to use for hobbyists and enthusiasts. Cloud based, Fusion 360 is constantly evolving and improving.
Having made that decision, I quickly discovered that learning any 3D CAD package is a real challenge. I spent more hours than I’d like to admit drawing cubes, cutting test holes, adjusting wall thicknesses. This was tough going. As a point of comparison, I use the full version of PhotoShop for image editing. Becoming comfortable with Fusion 360 was a challenge on the level of learning to use PhotoShop, a notoriously difficult program to master.
It was difficult but the payoff has been enormous. Once you’ve mastered even the basics you can produce designs that can be printed and used. Ultimately the myriad YouTube videos, some by AutoDesk, some by end users, got me started.
Do your research and find a design product that meets your needs. Some are better and mechanical objects for example. Others are more appropriate for sculpting.
If you can find a local instructor teaching a 3D CAD class, sign up. A good class will save you a great deal of time.
If your component needs to mate with other objects as mine did with the circuit board, buy a good set of digital calipers and keep them at hand. There’s nothing more frustrating than guessing at dimensions.
Accept that your first designs when printed, won’t be perfect. That’s prototyping. Expect that this is an iterative process with many dead ends.
Particularly with Fusion 360, start in sketch mode and draw what you want to produce accurately. The 3d modeling tools might tempt you to draw a cube and then start digitally whacking away at it. But good design starts with a good sketch.
Interestingly, with each of the Idea Foundry’s 3D technologies, the 2 3D printers and the CNC router, the workflow is similar:
Design the object in a 3D CAD program and export in STL format.
Import the STL file into the tool’s pre-processor.
Use the pre-processor to create supports, orient the design, and in the case of the CNC router, create the “toolpaths” that the router will follow.
Export the resulting configuration in G-Code format. G-Code is a universal language for controlling the position and movement of computer controlled tools.
Using the printer or router’s control software, load and execute the G-Code.
Upon completion of the run, remove the component and finish as desired.
From design to production and back again
The Idea Foundry offered 3 tools that seemed ideal for prototyping, two types of 3D printers and a computer numeric controlled (CNC) router. One of the 3D printers, a Lulzbot Taz 5, extruded plastic filament to make an object. The other, a Formlabs Form1+, used liquid resin and stereolithography (SLA) technology.
After completing classes on the two printers, I chose the filament printer to begin my work. Over time I learned that this was the right choice. For those of us who are not perfect, prototyping is a design/produce/assess/repeat process. I found myself repeatedly printing a component, adjusting the design and printing again. Printing with filament was relatively inexpensive. What’s more, particularly when producing a test of the top or bottom of my box, I could set the print quality low and get a usable result in about 4 hours. Setting the printer to the highest quality completed the same component in a bit more than 8 hours.
What I learned along the way
The Lulzbot printer is shipped with a version of Cura, its pre-processor. Though Cura includes dozens of parameters that can be adjusted, using the default profiles consistently produced good results. But orienting my component involved many choices. Since the top of my box included recessed areas, for example, I needed to use supports. I could have printed the lid either upright or inverted. Neither was a wrong choice. After trying both in prototypes, I ultimately settled on printing the box with the interior facing upward and automatically generated supports filling in the exterior recessed areas.
I also came to realize that while supports were needed for my design, they made finishing more difficult. They broke away easily enough but left irregularities in the surface that were difficult to sand away, particularly in recessed areas. Ultimately I spent several hours sanding the upper and lower halves of my case to remove filament lines and make the exterior smooth. I worked with sandpapers from medium grit to ultra-fine 2000 grit wet/dry paper. Once smooth, I finished the case with a couple of coats of spray acrylic.
My first prints bulged in the middle so that the center of each side stood taller than the corners. Sanding this flat to mate with the other half was a significant headache. I’d selected ABS plastic for my first tests since it is tough and durable. It turns out it is also quite prone to warping. For my subsequent tests, I chose a product called nGen from ColorFabb. This warped much less and produced a consistent, stable and (with finishing) attractive product.
I also learned that filament printers typically print with a lattice infill rather than solid plastic. This saves plastic and print time without a drastic loss of strength. But this made screwing the top and bottom of my case more difficult. The internal lattice doesn’t support threads very well. The solution was threaded heat-set brass inserts from McMaster-Carr. Using a soldering iron, these slipped neatly into printed holes and melted solidly in place.
Moving on to SLA
Much as Lulzbot includes Cura with the Taz printers, Formlabs includes PreForm with the Form 1+ with their resin/stereolithography printer. The process is nearly identical. Import the component as an STL file, specify a resin type and quality level, configure any needed supports and generate the G-Code file that will be sent to the printer. However, PreForm assumes that the Formlabs printer is directly connected to the PC. When the configuration is set, you simply click a menu option to send the commands to the printer.
But before I could print my case, I needed to make a small adjustment to the design. Where I could use threaded heat-set inserts with the filament plastics, those inserts don’t work with resin-based SLA prints. Instead Formlabs recommends creating pockets into which a nut will slide horizontally. The nut can be glued in place and then the screw is inserted through a hole from above. This sounds difficult but ultimately it was quite easy to do this in Fusion 360. What’s more, I was genuinely awed by the quality of the holes and pockets in the final print. They were perfectly shaped and sized. In fact, the overall quality of the Formlabs prints was simply amazing. The sides and edges were sharp, clearly defined and strong. SLA prints are hard to beat.
But there are caveats. SLA resin is expensive; a liter of standard white resin costs $149. And printing is slow. Each side of my case took about 9 hours to print at medium quality. At highest quality, the print time was estimated at 15 hours! Finally, particularly with the Form 1+, this is a very messy process. The newer Form 2 uses resin cartridges which reduces some of the mess. The resin is sticky and can cause skin irritation so gloves are recommended. Parts come out of the printer coated with residual resin and this must be removed, typically with several baths in alcohol. Finally, the prints are quite soft out of the printer, and must be cured in UV light. I cured the bottom of my case under a UV lamp designed for curing nail polish. That took about an hour. The placed the top half in a covered clear glass container full of water. Placed in sunlight the part cured in 15 minutes. Apparently, submerging the part in water for curing speeds the process.
In the end, I was grateful I’d decided to start with the filament printer. While resin prints are gorgeous, the time and mess involved would be very frustrating when narrowing in on a final design.
On to the ShopBot
Realizing that the next version of my case would be printed in wood, I made a adjusted the design in Fusion 360. I was concerned about the ability of wood to hold up to a router bit spinning at 12,000 rpm so I doubled the thickness of the case walls, going from 3mm to 6.
After saving the CAD file in STL format, I then fired up vCarve Pro, the ShopBot pre-processor. Learning to use Cura for the Lulzbot Taz and PreForm for the Form 1+ had been relatively simple. Not so with vCarve. One begins by defining the dimensions of the stock from which a component will be created. To hold costs down I cut a 2×6” into 6” sections and used that for my early experiments.
The greatest challenge in vCarve lies in creating “toolpaths.” Once an object is imported, it can be broken into individual vectors and then those vectors can be used to define what the bits do. A design must be defined in terms of specific tasks. For each task one must choose an appropriate bit and then identify the route that bit will follow through the wood. Toolpath tasks include roughing out the interior, fine tuning the interior, cutting out the external profile and drilling appropriate holes, etc. Ultimately I used 3 router bits (1/4” end mill, 1/8” end mill, 1/8” ball end) and 2 drill bits (1/8” and 1/16”). Adding to the complexity, there are choices for each bit. How fast will it spin, how fast will it move through the wood, how much will one cut overlap with the previous one, etc. Fortunately, the vCarve defaults worked very well for me in this regard.
Thankfully, vCarve Pro also does a great job of visualizing what each cut will do. The movement of each bit is animated on the screen. After considerable trial and error, it began to make sense. I cut my first experimental pieces in pine and was pleasantly surprised at their quality despite pine’s softwood characteristics. When I moved on to a final print in cherry, I was amazed by the clean, well-defined shapes in a very complex object. I realized too that I’d been excessively conservative in redesigning the wall thickness. Perhaps not in pine, but in hardwood the results would have been fine with 3mm walls.
Just What is 2.5D
The Lulzbot and FormLabs printers, like their competitors are 3D devices. But most descriptions of CNC routers describe them as 2.5D. It took a while to track down what that means but in the end, it makes a difference. It helps to think of a topographic map of a landscape. A 2.5D device only allows one Z point at any XY coordinate. In other words, there’s no way to depict or produce a cave or cliff overhang in a 2.5D world. 3D printers solve this problem with supports and bridging.
My case design broke this rule in two ways. Those recesses I’d created for nuts with the SLA printer are like caves. There’s just no way to do that on a CNC router. Fortunately, wood screws were a great solution. But the top of the lid had those depressions where the switches stick through the lid. I was using the router to clear the interior of the case but I couldn’t machine the depressions in the top of the lid. But there is a crafty solution to this problem: inverting the stock with careful registration of the XY axes.
Thinking about how to do this made my head hurt for a while but in the end, it was pretty easy. In vCarve Pro I drew 2 circles, each 9.5mm in diameter and precisely positioned on the centerline of the box. These were just the right size for a 3/16” dowel rod. My first toolpath carved the depressions in the top. Then I routed out these holes, going about 5mm into the “spoil board,” the work surface of the ShopBot. With the upper surface of the lid complete, I flipped the stock and tapped dowel rod through the holes in my stock and down into the spoil board. My lid was now precisely positioned for machining the interior.
While the quality of the print is much lower, the filament printer could punch out a test prototype far faster. That is a tremendous advantage. In a perfect world one would use a printer like the Taz for prototyping tests and then produce the final component using a SLA printer or a CNC router.
ShopBot: 8 hours
Once I knew what I was doing in vCarve Pro, how long did it take to produce an attractive finished version of just the top of my circuit board case? On the ShopBot it took about 8 ½ hours.
2 hours for setup in vCarve Pro
1 hour to prepare stock and mount it to the ShopBot
4 attended hours to machine both sides
1 ½ hours to sand the part on a belt sander, touch up by hand, and finish with wood oil.
How does this compare to the 3D printers? Once I was familiar with the Cura pre-processor, on the Lulzbot Taz filament printer the task took 9 1/2 hours:
LulzBot Taz: 9 ½ hours
½ hour for setup in Cura
6 unattended hours to print at medium quality
3 hours to remove supports, hand sand the exterior and spray with clear acrylic.
And finally, on the Form 1+ SLA printer. Once I was comfortable with the PreForm, pre-processor it took 13 hours:
Form 1+: 9 hours
1 hour for setup in PreForm and adding resin to the printer
9 unattended hours to print at medium quality
½ hours to remove the component from the printer and remove the supports
1 ½ hours to clean up the printer and cure the printed part
1 hour to complete touch-up sanding and spray with clear acrylic
It seems that the ShopBot is the clear winner. But that’s for a final print. What about producing a rough prototype in an iterative design process. Parts can be printed at low quality and the finishing steps are eliminated:
Let’s start with the astonishing fact that you can create a design once in a CAD program and then use it to produce a prototype or a finished sample using 3 very different processes. Becoming comfortable with a 3D CAD program takes time and considerable effort but the payoff is fantastic. If you can find local hands-on CAD training, take advantage of it.
Let’s also acknowledge that materials do matter. Some objects just seem right in plastic. Others in wood. Beyond that, while plastic is modern, wood has some great characteristics like impact resistance and remarkable strength. Don’t write off wood just because it seems old-fashioned. Besides, each of these technologies produces parts that can be painted any color of the rainbow.
Then there’s the fun factor. While the Form1+ produced parts of the highest quality and greatest dimensional accuracy, the process of handling resin and curing the parts is, to use the technical term, “icky.” I had a hard time warming up to that. Formlabs Form2 printer uses resin cartridges which would make a difference but that just helps in loading resin into the printer. Post-print cleanup would be largely the same. The ShopBot is great fun to work with but a real challenge. I wasn’t comfortable leaving it unattended, though. Besides, none of the machining steps took more than 45 minutes so it didn’t make sense to walk away. I can say, though, that watching it work is fascinating in a meditative kind of way. Using a filament printer is magic as well, but in a different way. It is nice to start a print, monitor it off and on to completion and go about other tasks.
Ultimately I purchased a filament printer. Maybe if I were a better prototype designer, I could get a complex part right the first or second time. But I’m not. The Columbus Idea Foundry is a 30-minute drive from my home. It was just too inconvenient to print a part, realize I’d made a bonehead error or two, redesign at home and go back to print it again.
But for my final print, the one I will use, I chose the SLA printer. It produces a beautiful result and minimizes my need to spend time sanding. A bit of touch-up sanding and a couple of coats of UV resistant acrylic (to prevent the resin becoming brittle) and I was on my way. Having said that, the case printed in cherry is the one I’m most proud of. I had to overcome significant hurdles to complete it (2.5D being one) and the result in cherry looks and feels great. I do love wood. Call me a prototyper with an old-fashioned sense of beauty!
3D Prototyping. How they compare
|Lulzbot TAZ 6||FormLabs Form1+||ShopBot|
|Technology||Additive “Fused Filament Manufacturing” (FFM) aka “Fused Deposition Modeling” (FDM)||Additive Stereolithography||Subtractive routing|
|Material Options and Limits||****||***||*****|
|Material Types||Dozens of filament types including ABS,Polyethylene. Filaments with embedded metal or wood fiber. Myriad colors||Standard resins in clear, white, grey, black. Specialty resins with various physical characteristics (tough/flexible/high-temp/castable)||Wood, plywood, plastic, aluminum|
|Design Limitation – wall thickness||.5mm. For an external wall, realistically 2mm for strength||.5mm. For an external wall, realistically 2mm for strength||2-3mm|
|Design Limitation – Overhang without support (degrees from level)||45 degrees||19 degrees||Cannot produce overhangs with a 2.5D CNC router like the Shopbot. However, components can be flipped with careful registration to machine the other side.|
|Design Limitation – bridge span length||As much as 35mm||21mm||Cannot produce bridges with a 3-axis CNC router like the Shopbot|
|Minimun hole diameter||Roughly .5mm. Holes must be adjusted in design phase or reamed to obtain accurate size since plastic shrinks as it cools.||.5mm||1.5mm drills (possibly smaller)|
|Component Pre-processor/Gcode Generator||****||*****||**|
|Ease of Leanning||Use provided profile for chosen filament||Very easy. Only challenge is positioning model optimally to manage supports||Learning to define toolpaths and select appropriate bits is a signigicant challenges|
|Ease of Use||Load object. Load profile Select supports if needed. Print||Select resin. Load object. Orient. Specify supports if needed. Print.||Object file doesn’t fully define output. Errors in defining cut depths or stock size will be reflected in the output|
|Operation of printer/router||****||**||**|
|Ease of use|
|Speed to produce component||3-4 hours unattended to produce test component||8 mostly unattended hours to produce test component||3 attended hours to produce test component|
|Post-print cleanup||Removing supports best with wire cutters and then sanding. Filament ridge lines are prominent on sides, top. Significant sanding required for professional looking results. Bead blasting is an alternative if rounded corners are OK.||Removing supports best with wire cutters and then sanding. Parts are sticky out of the printer and must be washed in repeated alcohol baths and then cured in UV light. Care must be taken to clear small holes of resin. “Yellow Magic” is an alternative to alcohol.||Oscilating tool ideal for cutting tabs holding finished part to material block. Quick sanding for cleanup.|
|Post-job workspace cleanup||Relatively easy. Clean print-bed with alcolhol wipe and prepare for next print.||Resins are sticky and messy. Alcohol is helpful for cleaning print surfaces and tools.||Shop vacuum ideal to remove dust and debris.|
|Changing materials||Print head must be heated to remove old filament. New filament is inserted and several centimeters must be run through to clear the old plastic.||Ideally you will need a separate resin tray for each resin type. Remove 1st tray, clean, insert 2nd tray, fill.||Depending on the work bed, new stock can be clamped or screwed in place.|
|Unfinished dimensional accuracy||Very good.||Excellent. May need minor sanding.||Excellent. May need minor sanding.|
|Finished dimensional accuracy||Depends on level of finish desired. Sanding to remove all traces of filament lines will change dimensions significantly.||Minor sanding will change dimensions of part slightly.||Minor sanding will change dimensions of part slightly. Producing a high gloss finish will significantly change dimensions.|
|Additional finish options||Primers and paints. XTC-3D epoxy coating can hide filament lines.||Primers and paints||Primers, paints, wood oils, varnishes, polyurethane.|
|Effort to finish||Significant time-consuming sanding required||Touch-up sanding. Coat with UV resistant finish.||Light sanding required.|
|Material structure||Most FDM prints are completed using a lattice infill. Printing solid is significantly slower but increases strength.|
|Tensile strength||Varies with plastic type. Like wood, somewhat weaker across layers than parallel to layers. Printing solid increases tensile strength by roughly 5%||Varies with resin type. Uniform strength in all dimensions. With extended exposure to UV light, prints can become brittle.||Varies with wood type. Weaker across grain than parallel to grain.|
|Compression||Printing solid increases compressive strength by up to 100%||Prints are solid.||Varies with wood type. More resilient than plastic to repeated compression/release. Will dent.|
|Twisting||Layers can delaminate when twisted sharply. Use of lower % infill does not significantly effect twisting strength.||Uniform strength when twisted. With extended exposure to UV light, prints can become brittle.||Can split at grain under very strong torque|
|Screws||Lattice infill makes direct use of screws in material unreliable. Heat set inserts are a reliable solution||Not well suited to direct use of screws in material. Pockets for nuts are a reliable solution.||Wood screws are a traditional and effective option. Threaded inserts are preferred for repeated refastening|
|Glues||Superglue, Epoxy are effective. Varies with plastic type.||Superglue, Epoxy are effective. Varies with resin type||Wood glues are very effective.|