Mi­cro­fac­to­ry 01

4:40PMJune 16 2020Daniel Tompkins

Archive

In high school, there was no shop class. Some­times I'd work on a pro­ject in the garage with my dad. Most of his tools are older, corded, and often un­co­op­er­a­tive.

I re­member using saw-horses that wob­bled— and a slightly rusted Skilsaw — to cut down ply for a Boy Scouts derby car. It had a hand-brake and a rope for steering.

My dad seemed to stub his fin­gers and rake all the splin­ters into his hands any­time we worked with wood or tools. There was al­ways a lot of cursing and frus­tra­tion; and some­times I hated being out there with him. Now, more or less, I look on those mem­o­ries fondly...

Wood, Metal and Mod­eling

Even­tu­ally, I left McHenry, Illi­nois to study ar­chi­tec­ture at col­lege. I fi­nally had the op­por­tu­nity to use a full-fledged shop. For the first time, I had ac­cess to the same power-tools pro­fes­sional con­trac­tors might use— saws, drills, welders and more.

Over the summer, I started working at Bridge­water Studio in Chicago. Be­gin­ning mostly as a fin­isher (sanding and painting), and even­tu­ally coming back with more car­pentry and com­puter-aided man­u­fac­turing (CAM) ex­pe­ri­ence.

In my third and fourth years of un­der­grad, I started using mod­eling tools to pro­duce GCODE and other ma­chine-read­able codes. This lan­guage, used for com­puter nu­mer­ical con­trol (CNC) is a stan­dard for 3D printers, laser-cut­ters, and mills.

I also learned to use para­metric mod­eling (also re­ferred to as al­go­rithmic mod­eling) in the pop­ular plug-in, Grasshop­per3D , for Rhi­noc­eros .

Grasshopper is es­sen­tially a vi­sual-pro­gram­ming frame­work that uses graph­ical nodes (com­po­nents) and wires to con­nect vari­ables. It is a pow­erful dig­ital tool and ex­tra­or­di­narily ex­ten­sible.

Screenshot of the Grasshopper3D interface, showing nodes and connecting "wires".
Screenshot of the Grasshopper3D interface, showing nodes and connecting "wires".

In­dus­trial Man­u­fac­turing Ro­botics

Under pro­fessor Jenny Sabin , I used the Grasshopper plug-in, HAL , to model and sim­u­late tool­paths for a pop­ular ABB robot .

To­gether with my partner, Thanh Nyugen , we de­signed a green fa­cade system. The stringy, nest-like struc­ture was achieved by de­positing a starch-based bio-plastic with a custom pneu­matic ex­truder.

Ad­di­tion­ally, in Jen­ny's Dig­ital Ce­ramics elec­tive, I also CNC'd plaster molds for slip­casting high-ac­cu­racy, re­peat­able ce­ramics.

Colorfully glazed "bricks", the folded trapezoid shapes are interlocked in a miniature wall.
Colorfully glazed "bricks", the folded trapezoid shapes are interlocked in a miniature wall.

Con­tin­uing with Dig­ital De­sign & Fab

Now, as a pro­fes­sional de­signer and dig­ital fab­ri­cator at Ion­tank (at the time of writing), I help take models from com­puter screens out into the world.

Image of the hanging dual-helix light sculpture in the atrium of Allegheny General Hospital's new atrium addition, the Academic Cancer Center.
Image of the hanging dual-helix light sculpture in the atrium of Allegheny General Hospital's new atrium addition, the Academic Cancer Center.

In this re­cent pro­ject— a chan­de­lier-like sculp­ture re­siding in a forty-foot-tall hos­pital atrium— I used Grasshopper to array and an­a­lyze each of the 150 in­di­vidual hanging el­e­ments. The para­metric mod­eling plugin al­lowed me to filter, pre­dict, and output the rel­a­tive wire lengths and hanging lo­ca­tion of each part.

The line-work from the 3D model is also used for ex­porting GCODE in RhinoCAM — by far the most user-friendly CAM plugin for Rhi­no3D. The GCODE pro­vides a col­lec­tion of XYZ co­or­di­nates, tool changes, router RPMs, and travel speeds.

De­signing a Mi­cro­fac­tory

As DIY fab­ri­ca­tion tools be­come more af­ford­able and ca­pable, I've be­come en­gaged with the idea of building my own home mi­cro­fac­tory . The con­cept be­hind a mi­cro­fac­tory is that it min­i­mizes the need for holding in­ven­tory.

In­stead of stocking a supply of di­verse prod­ucts— without knowing ex­actly which will be pur­chased— the mi­cro­fac­tory can de­liver a set range of prod­ucts that are rapidly and au­tonomously pro­duced from a stock of raw ma­te­rials (fil­a­ment, sheet goods, etc.).

The suc­cess of a mi­cro­fac­tory there­fore de­pends on op­ti­mizing for the most di­verse and de­sir­able set of prod­ucts from a min­imal amount of raw ma­te­rials and manual labor. The mi­cro­fac­tory it­self is then re-pro­duced at scale, slashing the cost of stocking and de­liv­ering to hard-to-reach lo­cales.

To achieve high de­grees of au­toma­tion, I'm in­ter­ested in de­signing and con­structing a mid-scale 6-axis ro­botic arm. I'd like this ma­chine to be ca­pable of high-de­grees of ma­nip­u­la­tion (pick-and-place) as well as rigid enough to mill hard­woods— po­ten­tially soft metals.

Simulation (built with Grasshopper3D) of a 6-axis robotic arm's range-of-motion
Simulation (built with Grasshopper3D) of a 6-axis robotic arm's range-of-motion

Con­clu­sion

For elec­tronic prod­ucts, it makes sense that I could stock a narrow set of pro­gram­mable com­po­nents (like single-board com­puters, or SBCs). I'll also likely need a high-res­o­lu­tion 3D printer. SLA printers, like those made by Form­labs pro­vide an in­cred­ible finish with little post-pro­cessing.

This will be a slow pro­ject, but I'm op­ti­mistic. The ul­ti­mate goal is to have a few highly ex­ten­sible tools (robot, 3D printer, and a mill), while stock-piling only a few elec­tronics, fil­a­ments, sheet goods, resins, and other "raw" ma­te­rials.