~ Computer-Controlled Cutting page.
~ post date: 2017.2.10, recent update: 2017.6.2

Background

Amongst us there exists a typology of machines that can transfer code from a computer, often sent through a standard print dialogue, into a series of two-dimensional cutting pathes for cutting and engraving a number of materials from wood, leather and cardboard to metals, glass and plastics (and the machines precisions are measured in micrometers and do their work fast!). What if you had access to these machines? What would you create? What will I do?

Contents
  • Kerf : what is it? why is it? why care?
  • Darth Cthulhu : Tempting the dark side with lasers.
  • bēstia: A brief vinyl cutting trip
  • A young Grasshopper gets its wings: Parametric modeling
  • wildCardboard : Rabid! Prototyping
  • BioElectronics testing module
  • Jump : Index
  • Project files
  • Download wildCardboard cut files (SVG)
  • Download wildCardboard grasshopper file
  • Download bioElectronics testing module
  • Kerf : what is it? why is it? why care?

    A laser beam is generated in the back of the machine and reflected through a series of mirrors, through a focusing lens then the material. The narrowest part of the beam, around an 0.32mm diameter, is aligned to the material (z-axis). The head of the machine moves along X and Y axes across a cutting bed directing the laser through the designated cuts. The intensity, speed, and pulses per inch (ppi) are user defined variables, in my case defined first by line color in the design software and second via a dialogue in the machine settings. These variables will effect how deeply the laser penetrates the material, if completely, then the amount of edge burn or melt. The resulting gap from a slit is known as the kerf. Kerf width will be effected by the user defined variables and with some careful setup can be minimized. Kerf can be tested and measured then translated into corresponding parametrics in your computer models.

    ♻ SVG kerf test template ♻
    ♻ PDF kerf test template ♻

    One easy way to measure kerf is to use the kerf test file I have provided. Load the file into your laser cutter, and be sure to carefully calibrate the black lines (notes) for engraving and the series of squares to the desired test cut variables. Line width may be dependent on laser cutter model, in my case: 0.01mm (the line width in the image below is adjusted for visibility). The file also includes color calibrated linetypes that can be cloned to lines within any drawing.

    Okay, this part is tough because I cannot read most Chinese pictographs. There are four basic steps.

    1. Press print and then bypass the application specific print dialogue, if existing.
    2. Select the laser cutter and choose settings.
    3. Adjust the user defined variables for each color used in the drawing. Only these exact colors will be recognized by the cutter. In the files I provided, the colors are calibrated. The first setting is power. The second speed. The third PPI.
    4. Notify the cutter which colors will be used for which efforts, the top row is cutting the bottom engraving. Engraving is performed first, cutting second. Within each set of operations, the order of the colors will be the sequence of operation (starting with black and ending with orange). Organize cuts with potential material movement in mind, ie cut from the micro to macro.

    Now turn on the machine and the exhaust fan. Give a couple minutes to warm up the laser. While that is happening, load in the material. Align the material to the X,Y origin of the cutting bed. If there is warping in the material, tape or weight it down to get close to flat. Then position laser head near the center of the planned cutting area and align the bed height to the laser focal point, in our case 6mm. The arrow keys move on the XY plane, holding the fast key speeds up the movement. P1 is the final resting point of the laser head. P2 is near the XY origin. Up and down raise and lower the bed. This can be done with a designated piece of material by carefully raising the bed while constantly checking the gap between the material and laser head. When raising the bed, do not leave the checker under the head because it will not be obvious when the head is touching.

    Now its ready. Select your file from the onboard queue using the next button. Finally, press Run and watch the magic. Do watch the magic. Do not leave the machine while it is cutting or you will burn your lab to the ground. The pause button can buy you time for a biology break and resume button will do what it implies.

    After the template is cut, align all the squares into the mold, push to one side and use calipers to measure the gap. Divide this measurement by 11 (number of vertical cuts) and you will have the average kerf for x material at abc variables.

    I will post links to resources I have found helpful here.

    1. Single-line fonts link repository : Single-line fonts can speed up laser cutting by reducing the number of cuts. Most fonts are made of an outline with a fill. Essentially this is two mostly parallel lines. Single lines are one. Half the time. Magical.

    Darth Cthulhu, laser engraving

    For fun to practice with adjusting and experimenting with settings, I decided to make an engraving on my notebook. I happened to have a Darth Vader - Cthulhu (maybe my two favorite things?) portmanteau on my desktop...

    ⚠ FAB ⚠
    ⚠ Darth Cthulhu ⚠

    In photoshop, I resized the image and converted it to a bitmap. Within the bitmap settings there are a number of different methods, each producing different pixelation effects. I wanted to make something expressive of vertical lines so I used the "Halftone Screen..." and after a few tests, came to 10 Lines/cm, 90 degrees (vertical) angle and the "Line" shape. I also found adjusting brightness and contrast before producing the bitmap to be helpful in effecting the white to black ratio.

    I was able to send the job to the cutter directly through Photoshop's print command. Remember to run through the printer specific preferences. I was only concerned with the settings for the black, 1. After testing a few different combinations, I thought 40 power, 90 speed, and 500 PPI was okay. I do wish the final product had more darkening from burning. Another time, I will test more combinations to try to isolate the variables that encourage burning in etching. On the second tab, I check only etching and the black. On the third tab, within the checked box I can tell the machine where to assume the origin according the position of the laser head at the start of the job. I need to get translations of all the options within the box, this one I know is upper left. Perfect. When using this type of printing, I adjust the bed size to match the image size. Change the 660mm x 495mm to 30mm x 30mm for the test and about 70mm x 120mm for the final.

    Laser etching from a bitmap is a significantly longer process for the cutter. Each of these 3cm x 3cm images took around 5 minutes. Be very careful in removing the excess dust after finished. I used a paint brush very gently.

    After a few tests, I came onto this bitmap as a good balance of white and black. I think the 10 lines/cm in the halftone screen is the highest density replicable by this laser cutter. More lines/cm starts to cut into the white space making the fabbed image appear a little darker than the screen image. Have fun. Fab responsibly. Fab or die. Fab to live. Fabby Fab.

    I will post links to resources I have found helpful here.

    1. Buy a Darth Cthulhu Print : The source image I modified.

    bēstia logo: Vinyl cutting

    To test the vinyl cutter, I prepared a bēstia logo in Adobe Illustrator. I converted the graphic into a composition of vector shapes using the live paint tool. Now: cut time.

    First load the material into the machine. Release the clamp in the back. Align the sheet to the far left, parallel to one of the vertical lines along the front of the machine, and position the wheels to the furthest edges of the paper within the white marked zones. Return the clamp lever to the pressed position and notify the machine material is loaded.

    In this case, I used a piece of scrap material loaded as a sheet designation. The machine automatically scans the sheet and records its dimensions. Do not load an oddly cut piece because this sections of the material may not fall under the wheels.

    I reduced the artboard for the graphic, removing extra space.

    The computer communicates with the device through a standard print dialogue. Within the advanced settings for the vinyl cutter, the size of material can be communicated from the vinyl cutter to the computer.

    My material was not cut cleanly resulting in some sticker on the plastic that contains the blade. I think the gaps between the vector shapes were too tight causing the machine to retrace previous cuts and pull up material. Furthermore, the live paint tool doesn’t merge vectors that share edges which further increases cuts. The tool needs to be used very carefully to ensure zero overlaps. So I can increase the space between vectors, scale up the entire graphic, or reduce the complexity. I do not want this test to be too large, so I opt for the latter.

    With further investigation I find the live paint tool doesn’t merge vectors that share edges which further increases cuts. In this case, for instance, I do not want the diagonal slice through the black fills. Because this is a hidden split between vector fills, the vinyl cutter will cut along this path twice! The tool needs to be used very carefully to ensure zero overlaps.

    These two images compare the reduction in complexity for my second run. Added bonus, I like the graphic more now. Unfortunately, today the lab only has blue and white material in stock. When black arrives, one of these will find its way onto my computer. Before / After

    Somehow the previous file was able to cut directly from Illustrator. This time, not so. There is a plugin in Illustrator to send vectors to Roland CutStudio which is a superior interface for the vinyl cutter. Select the vectors and push the big button to the upper left. Of note, line weight should be 1 pt. Initially I tried .01 pt and the vinyl cutter did not respond.

    Cutstudio opens a shell. From the properties, the import media size setting from above is available. Then the artwork can be dragged and dropped to an uncut portion of the media on the screen. Finally, choose cutting then print/cut.

    This time the cut was clean. Clean say me! The gaps are down to 0.5mm without problem. In acute angles of about 30 degrees and fewer slight pulling up of the sticker occurs.

    I will post links to resources I have found helpful here.

  • bēstia : A wild studio full of walkers.
  • Grasshopper Parametric Modeling

    I decided to try learning the Rhinoceros parametric GUI plugin Grasshopper for the cutting prototype. The Grasshopper project's aim is to make programming easier to understand through an intuitive visualization. The GUI looks similar to Antimony with a model window and a graph window. Scripting nodes in Python, C#.net and VB.net is also possible. Grasshopper is available with Rhinoceros on MacOS and Windows. Launch Rhinoceros. Enter "grasshopper" in the command line. The Grasshopper interface will launch. Across the top are several tabs which contain links to "objects" which are scripts of varying complexity.

    The primary section of the screen is the graph area. Screen navigation mirrors Rhinoceros. Double clicking in the graph area launches a command box, a similar utility to Rhinoceros' command line. Begin typing in a desired command and a list of selectable similar tools will appear.

    Selecting an object from the command line or the tabs will drop it into the graph. The objects inherent stuff from other objects via linking or from assigned things existing in the rhinoceros window, i.e. a point. As the objects are linked together, they make things. This is when the fun happens. Keep in mind, this is not a linear form of modeling. Anything can be changed at any point anywhere within the graph and those changes are instantly propogated throughout the graph.

    Because there are loads of great tutorials online, I will not explain much of the basics. Although, to ensure a baseline understanding of the interface and function, I created this delightful little graph. I think I have seen Professor Gershenfeld make a few of these... A cube is generated on a center point. A pair of cloned spheres are centered on two of the cubes corner points. And ZAP! POW! ZINGER! The spheres are subtracted from the cube. The left most number slider controls the lengths of the cubes segments. The other slider dictates the radius of the spheres. The point object is referencing a point created in Rhinoceros' model space (select the model space thing, right click on the grasshopper object, set one point) If that point moves in model space, this cube thing moves with it. Also, notice that one node can control multiple inputs just as multiple outputs can control a single input. Connect inputs/outputs by dragging a curve from one nipple to the other.

    The dark gray objects are hidden from view in the model window. If I were to show these, we would see the original cube and spheres and the cube corner vertices. As the grasshopper graph fills, following the work in model space can be difficult without adjusting the visual properties of the grasshopper objects. You can show/hide by selecting the object and pressing space bar.

    Finally, from the same menu, selecting the egg icon "bakes" that node. In other words, the grasshopper object will be permanently imported into the Rhinoceros model space. However, changes in the graph will no longer be applied to that object (the grasshopper node will continue to propogate changes and can be baked any number of times throughout your development process). This is useful when something is ready to export from Rhinoceros, such as for rapid prototyping.

    ⚫ DOWNLOAD : cubeMinusSpheres Grasshopper graph ⚫

    There are plenty of free tutorials online. I more or less randomly chose this series. Linked here is the first of fourteen. The online community is strong and googling questions typically yields quick answers. If the information I posted here is not enough to get started, I suggest using as little time as possible with a tutorial before diving into your own creation. I find it much more fulfilling to learn as you create your own thing.

    Here are a couple screenshots from the tutorials. Prepare for that graph to get exponentially more complicated...

    This is an example of the scripting interface. It appears writing on MacOS is as of yet more laborious than Windows because the language does not provide any hints, ala brackets. Python has many syntaxes along with custom Rhinoceros syntaxes and this is where without hints I am thus far lost. Well, that and the fact I wrote my first python script a few days ago.

    I certainly will use scripting in the future to simplify my Grasshopper graphs. This is a simple example of combining two objects into one Python object. The green Division and Subtraction objects are written into a simple formula which handles both operations in the Python object. Now two nodes are replaced by one.

    Now, let us skip closer to the end and then try to work back. This is how my nearly finished graph looked. Side note, I highly recommend live blogging your work, otherwise, like me and this project, you will essentially be doing it twice in decoding the effort.

    I began with some sketches in Maya to generate quick ideas. I can sketch in 3D modeling space almost as quickly, yet way more effectively, than I can on paper. In 3D, I get tons of additional information beyond a sketchbook sketch. I was thinking of things with volume. The spiral idea looked difficult because it involves one directional bending, tricky joint angles and it would probably be much more difficult to model (find the 3 dimensional rotation angles of the modified octahedron / icosahedron, array) . So I selected the spiral thing for further investigation. Why not?

    I start by considering seven basic design variables: Overall size, the size of the opening at the top and bottom, material thickness, laser kerf (related to material type), number of ribbons, the ribbon sweep, and the ribbon height.

    overall size : Radius of an imaginery sphere which contains the thing.
    top/bottom opening size : Radius of the top and bottom openings (opening measured from ends of ribbons, not ring structure)
    ribbon height proportion : This variable is admittedly strange. Ribbon height should have been automatically set as a relationship between the number of ribbons and the sweep angle and this could have been a flex multiplier from that basepoint. I never built that in though, so this number simply operates as a divisor for the overall radius variable. I recommend using the slider visually to ensure the ribbons intersect on the top and bottom for the midway connection which is critical.
    number of ribbons : Total number of ribbons.
    ribbon sweep : Total angle a ribbon sweeps in its journey from the top to the bottom. This number represents how many ribbon starting points the end point moves clockwise. (ex. 360/10x4=134 sweep angle). The variable is set as an integer in this manner to ensure the top and bottom connections align and because... math.
    material thickness : The thickness of the material to be used for the thing.
    laser kerf : Optional setting (if no need, set to zero). Optimize laser cutter settings for the material, measure kerf and enter here for higher precision in the joints.

    Following are the objectives of the grasshopper graph.

    Create a reference sphere for the overall shape.

    Adjust the size of the sphere according to the user variables to compensate for the vertical thickness of the ribbons. If the ribbons are extruded based on a sphere, the result will be an oval object.

    Trim a variable dependant circle from the top and bottom of the sphere.

    Project a line onto the trimmed sphere to create the path for the ribbon.

    Twist the projected line a set angle based on a multiplier of 360 degrees divided by the number of ribbons variable. This way the top and bottom of the ribbon origins align.(Grasshopper operates in radians for which there is a simple conversion object for changing degrees into radians.)

    Offset the twisted line in each direction half of the material thickness optionally accounted for laser kerf. Then Extrude the two lines to the desired height and connect all edges into a solid.

    Offset the circles from number 3 a multiplier of material thickness (for the ribbon overrun) and two additional material thickness to generate three curves for the top and bottom couplings. (I redrew these circles as arcs so they could be unrolled and more accurately reflected the materiality of the finish product. I could also visualize the ends of the surfaces.)

    Extrude the paths the desired height of the couplings and connect all edges into a closed surface. In this case, 70% the height of the ribbons.

    Difference the joints from the ribbon. This is two parts: the couplings and the mid-section, adjacent ribbons. First, move a copy of each pair of couplings half a thickness towards the center of the original sphere (0, 0, 0).

    Rotate a copy of the ribbon in either direction 360 degrees / number of ribbons.

    Difference the reultant 6 objects from the ribbon. Now we have the joints for the ribbon piece.

    Polar array the jointed ribbon: 360 degrees / number of ribbons.

    From an inside coupling (which shares its outer surface with the outside coupling), top or bottom, difference the arrayed jointed ribbons. Now we have all the pieces locked together proportionally and jointing automatically. All the couplings could be differenced from the array for visuals.

    From one of the inside couplings (top or bottom) and the original ribbon, explode these polysurfaces and use the index to reduce the ribbon to the inside face and the inside and outside face of the coupling. Due to what I assume may be some tolerance issues, the intersections on one of the surfaces showed errors. I offset the good surface the material thickness to replace it.

    Unroll these three faces. (I found the unroll surfaces object here. Users can generate and share Grasshopper objects.) In the image, all the objects are pinned to the model origin. Thus the two coupling patterns are aligned.

    Bake.

    Quick review: three components are required for the build. Two components, nearly identical, are installed parallel and make up the coupling at the top and bottom. Regardless of the variables, these always come in two pairs. The open ends of the couplings are rotated 180 degrees so the combination will hold as a circle when connected to the ribbons. The number of ribbons is variable based on preference, overall size, and sweep. The notches at either end lock into the couplings. The notches in the center grab the next ribbon in the seqence at the center of the thing. This is necessary to counter the twisting torque. Check out Wild Cardboard for the build.

    Future objectives for parametrics:

    1. apply the kerf bending pattern in relation to intended surface curvature and component edges
    2. generate user-defined joint types at the grasshopper cut joints
    3. populate a user-defined laser bed as tightly as possible, or restricted to certain preferences such as alignment to material grain or spacing

    Download project files

    I will post links to resources I have found helpful here.

  • Grasshopper Tutorials : Some tutorials I ran through on youtube.
  • Unroll surfaces : Grasshopper object for unrolling surfaces.
  • Python Scripting in Grasshopper : Helpful 5 part introductory series.
  • Wild Cardboard : Fabbing, Branching, Versioning

    Now the real adventure begins. In a perfect world this would fit together on the first cut. I am going to assume it is not a perfect world and rely on the flexibility of my parametric model to adjust to the imperfections. The first big challenge will probably be successfully bending, or maybe not. I do not have prior experience with kerf pattern flexure joints. If I clear the bending hurdle, the center joints along the ribbons will probably be tricky because I am having to make an assumption on how this will behave prior to building the model. Testing it will require at least two ribbons and the four couplings, so I very well may end up with two or more wasted ribbons. Enough speculation. BUILD!

    This is an example of kerf pattern flexure laser cut in 4mm thick wood. The vector file can be found here and an image of the cuts are further down this section. Without that pattern removed, I assure you this wood is stiff.

    I rooted around the material closet and found some flattened cardboard boxes that should be good for prototyping this tricky press-fit kit. The first step is simple: measure for the cardboard thickness. Cardboard is easily smooshed in zones, especially the recycled stuff, so I took several measurements and averaged the thickness to be 3.00mm. This became the thickness variable in my grasshopper model.

    Unfortunately, the materials the lab have on hand are not as big as I was hoping. On one hand, I should have scouted more selectively from the beginning. On the other, I have a parametric model. Last night, I had set the variables to maximize the bed size of the laser cutter: 660mm x 495mm, however the cardboard I am using only measures 330mm x 430mm. I went to adjusting the variables to fit this new size restraint. I need to reduce the ribbons, reduce the overall size, reduce the sweep, and increase the ribbon height. Now I have a piece that fits the reduced outside dimensions of the material. I am concerned whether the bending will be achievable in the reduced radius with cardboard. Starting now, this build uses these variables:

    overall size : 125mm radius
    top/bottom opening size : 35mm radius
    ribbon height proportion : 2.85
    number of ribbons : 10
    ribbon sweep : 4
    material thickness : 3mm
    laser kerf : 0.17mm (more on this next)

    Now I do a kerf test. I found some tests around the lab for 2mm cardboard and 4mm cardboard and I went by feel somewhere between those numbers. 80 Power, 7 Speed, 500 PPI. My results were .17mm kerf on this cardboard. Tight. Moving on. I inputted the laser kerf variable. The model thickness will slightly compensate for the kerfing: 3.00 - 0.17/2 = 2.91mm. Now that all the user values are in grasshopper, it is time to kick out the three components. The Bake command imports components from a grasshopper node into the rhinoceros modeling space, it also breaks the history on that piece, unless it is relinked back into grasshopper. These nodes export polysurfaces. Explode them. Then unroll the inside side face of the polysurface. Extract wireframe. Do some minor CAD adjustments. In the current grasshopper graph, the joint depth is double. I have a way to fix this and it will be in the uploaded model files.

    I have the three components more or less prepared. It is a good time to test the joint sizes grasshopper is outputting. I setup a small test for two joints typologies. One with two arcs and the other simply straight lines. The size is correct, however the straight line joint is loose whereas the double arc joint is very tight. I have some concern with how this joint may work when the material is bending. Although, I am using the inside surfaces to set the curvature, so the joint should open slightly if anything. Right? After the bend test, I will reassess. I will get to that in the next test.

    Testing kerf patterns. Ideally, this would be incorporated into the grasshopper graph. This minute, it is not. Old school, slow school method. I used the flow onto surface command to wrap the kerf patterns to the unrolled ribbons with some careful modifications of scale, spacing and edge conditions around the joints. These modifications should ensure the components are healthy and also made my shy away from spending hours trying to perfect a grasshopper graph to do the job automatically. Not that I mind spending the hours learning because that should save me hours later. This moment time is short. The flow along surface keeps the kerfing perpendicular to the bending direction. I apply the kerf pattern to one of the couplings. If it works on one, it will work on both. I chose two open source patterns for this prototype to get experience and save time: one pattern has many openings and more flexibility, while the other no openings and less flexibility. I hope the latter can achieve the ribbon sweeps. The couplings are mostly hidden, either pattern, if effective, will be sufficient. For prototyping cardboard the kerf pattern flexure is fine. However, if I were to develop this project further, I think I would opt for an opaque material with enough flexibility to achieve my desired bending. That would likely look better in this design. Or, maybe not. Seeing is knowing.

    I had a problem with the flow along surface command. The pattern was not properly intersecting with the boundary curves. Time for a little hacking, I offset the boundary curves on both the source and target surface, re-project the pattern, flow again between the increased-size surfaces, then project the now adequately sized pattern onto the originally intended surface and clean up around the joints.

    Two pairs of pieces are prepared for the bending test. Due to constraints on the cardboard size, I’m testing this cut at an angle not at all related to the corrugation. It may be necessary to bend along the corrugation but I will have to make the already small model, smaller still (the short side is perpindicular to the corrugation). Will the kerf pattern be effective in spite of the corrugation...?

    Shit! The laser cutter and its companion computer stopped communicating with one another. Perfect timing. I reset both systems and checked all the connections. Scrolled through some menus on the Windows machine and the LCD display based settings of the laser cutter and could not solve the lack of communication. That was a question I would have loved to learn tonight, maybe even to finish the model. Alas, I have to wait until tomorrow moring.

    The problem with the laser cutter was user error. User error is the worst kind of problem, especially when it takes almost 18 hours to solve. Eighteen precious hours… In Rhinoceros, when I flowed the kerf pattern onto my component pattern, the vector complexity increased about tenfold. Each vector increased from around 14 to over 150 control points by hundreds of kerf vectors. Illustrator was jamming the laser cut queue trying to communicate the file and I was too impatient. Throwing fuel on the fire, the connected computer’s graphic cards keeps getting overloaded and crashing the system.

    The vectors can be simplified in Illustrator or Rhinoceros. I tried both. I think illustrator does a better job because ux dictates curviness desire whereas the rhinoceros options are more fickle. Really, both work well. I just prefer Illustrator. If the kerf pattern were incorporated in my grasshopper graph, I would probably address the point density problem there instead of Illustrator, for instance. This image shows the power of Illustrator to reduce the points even further than what I managed in Rhinoceros. Keep in mind, the precision of these kerf curves is not critical, as long as the deviation is not great.

    The first bend test was the version with the squiggly holes. The cardboard bends quite easily. In fact, the ribbon is probably too flexible. I do not know if I can achieve much springiness in cardboard with kerf bending. The second pattern does achieve more springiness. I decided to reduce the number of cuts because it is still too flexible and I will get the added bonus of speeding up the job. Another potential problem spot was around each of the two middle joints of the ribbon, the cardboard is too weak and easily folds.

    One other interesting thing started happening where the laser cutter offset paths of different colors in weird ways. After two jobs, it seems to have stopped doing it.

    After I believed I had fixed all the quirks, I prepared to begin cutting the final components of this prototype.

    The kerf adds TIME. And I mean TIME! One sheet: four/ten ribbons, three/four couplings. That requires around 75 minutes of machine time. Fortunately, all the cuts were perfect.

    While the second sheet was cutting I could not wait to start putting together my thing. A tip for the kerf, gently pull apart and bend throughout the length of the surface. That primes the component for curving and minimizes folding quite well. Right away, I was super pleased with how easy all the components lock together. There were some complex relationships in this thing due to its curv-tastic geometry. Yet, thus far, the 3D model and this laser cut version are spot on. I know that sometimes getting something like this to lock stitch together is often one of the toughest parts of the project. So, I would say I am yet cautiously optimistic. One slight problem that I noticed in the three-d model and forgot to change before fabrication is the thickness of the tail end of the ribbons just beyond the slot. That part probably should have been another 4mm plus / minus. Thus far though, with care because the joints are very tight, it has not been a problem and does not appear as if it will snap in this prototype. Assembly is a snap!

    And it comes together! I should have built some scaffolding to hold the upper and lower couplings in spatial relation to one another. Or, had an extra pair of helping hands. It is really tricky to pull the last few pieces togehter because of the torque moving in opposite directions from top to middle to top. Some of the ribbons took damage in that final step. Fortunately, it did not explode, which seemed very likely at one point. I will return here in the next day or two and conclude the lessons and upload working files so... yes you can.

    I came a long way in just a few days. That is what makes these processes special. From a first time build in grasshopper, to rapid prototyping, to holding a working version in my hand (made from cardboard of all materials). Feels fantastic. I will sleep well tonight. Then tomorrow, get started on making an in-circuit programmer by milling the PCB.

    Download project files

    I will post links to resources I have found helpful here.

  • Core77 kerf bending survey : This post gives a good overview of the technique.
  • Aaron Porterfield Instructables beginning kerf bending : This post includes downloadable files and comparisons of different techniques' effectivenss.
  • Aaron Porterfield Instructables advanced kerf bending : Explorations in variable kerf densities through parametric modeling (grasshopper). Variation is set via curvature analysis. Working files posted for free use.
  • Double curvature kerf pattern : A post describing process and downloadable files.
  • Lattice Hinge Design — Minimum Bend Radius : An introduction to the science of kerf bending.
  • Introduction to the curvature of surfaces : Do you know about principal, mean and gaussian curvature? You can..
  • Variation from Uniformity : Perhaps this is a little off course in relation to this post. An introduction to the problem of limiting panel types in construction of doubly curved surfaces.
  • BioElectronics testing module

    We were concerned whether wildCardboard was too wild for the benchmarks of the lesson. Plus, I need testing modules for my electro-moss final project. Two birds with one stone?

    The fabrication demands of this project are far less than other aspects. Keep it simple. Spiral develop. I essentially want an open-faced cube in acrylic. I will develop a grasshopper, parametric model with variables for overall dimensions, finger joint size, laser kerf, bolt and other holes (unrelated to box adhesion). The prototype is based on the work of Paolo Bombelli, et al. This is the desired composition. The pot, plastic fixture and possibly rubber washers will be laser cut.

    And Jakob Skote's Moss Powered Wifi Jammer project. Excellent work. Visit them.

    Fast-forward a little in time and I have a working grasshopper graph.

    This time I setup the file to automatically generate the linework for laser cutting. Next time, I would like to take it a step further and find an easy solution for optimally organizing the pieces. No doubt some clever folks have working solutions available in the web. The controls for most of the variables are in a small cluster.

    Currently, it is optimized for a square bottom although, changing for different X and Y lengths would not be difficult. In fact, the solution to that problem has already been incorporated in the "code" for the sides. I am enjoying learning this application. I know I am still only scratching the surface but with each of these projects I dive a little deeper. One of my weaknesses is working with indices. This for instance is the overwrought solution for the finger joints.

    This grasshopper graph could be ported for a number of uses beyond making boxes as these pieces will connect in different configurations. Plus, by changing a couple numbers, other pieces will be made. I plan to build some boxes tomorrow.

    Okay, back in the lab today and the laser cutter is free. First, I will build a prototype from cardboard. Cardboard cuts fast. Cardboard is cheap. Cardboard is plentiful. While it has more give than acrylic, I will be able to make some accurate predictions of how the acrylic will go together. The first thing I will do is a kerf test.

    Using these settings and this material, I can expect an average of 0.286mm laser kerf. This cardboard is 4.5mm thick and tends to burn. Always keep an eye on it. I return to my grasshopper graph and input the values to adjust my model.

    Moments later, back to the laser cutter to cut my first BPV module in cardboard.

    Then I clean up the material and try to assemble it. Nice tight fit. That might be an issue with acrylic because the cut tapers so I will need to be careful to measure kerf from the bottom side of the test. The bolts and nuts are for conducting cathode and anode, not box joints.

    Update: I am now producing three water-proof boxes from acrylic for planting moss. I found some black 2.8mm thick stock. The laser kerf test with the settings below resulted in 0.0909, repeating of course, mm. I will set these values in Grasshopper and cut the boxes.

    Power: 100
    Speed: 1
    PPI: 1000

    The first module.

    The second module. I was concerned that when filled, the walls may slide apart. So I iterated a bit on the fly.

    The third module. Then, I thought the bottom could be secured better, so I iterated again. By the time I arrived to this third box, it seems very secure. Regardless, I will make use of all three as the testing modules for my final work. What started as a generic press-fit kit could be quickly modified on the fly to address a specific use case.

    Download project files

    Jump : Index

    J.travis Russett © 2017
    Creative Commons License All the work contained within is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) License
    You may remix, tweak, and build upon my work non-commercially, as long as you credit me and license your new creations under the identical terms.