Visit my soft robot Flickr collection for some detailed documentation and more info on the methods behind this latest robot.
Quadrupeds. I’ve been dreaming about quadrupeds. I’ve been hunting for challenges to test my methods and improve the engineering on the whole “print and cast a soft robot” thing (I really need to come up with a name for this… “Borgatronics?”). I started with tentacles because they were easy to design, easy to test, and symmetrical.
They’ve made a lot of progress, but it’s time to turn to other designs. I’ve produced a few prototypes along one main design, and have discovered many things. I’m going to try and explain my logic behind the design and some of the major changes I intend to make in the next version. I’m also going to tell you all the myriad ways I went wrong in this design and the things I’ve done to try and make it right.
This is going to be a pretty dry technical post on the industrial design aspects of the robots I’ve been developing. I promise you entertainment and levity aplenty in the future. For now, we grump about casting flaws, mold design, and process control.
Industrial Design: The art of not to assuming things
One of the problems going into the quadruped robot was automatically assuming some of the same paradigms that went into the tentacles. The tentacles have wide bases, large sprues, and a taper so that the wax cores have a tendency to float towards the center instead of crashing into the walls of the mold. I built the quadruped assuming a similar process: suspending vertical waxes in the mold, aligning it using the sprue geometry, and letting the buoyancy of the wax take care of alignment. This ended up being super problematic, but I believe I’ve got a good direction for the next set of experiments.
So, the problems arise when it comes to aligning a complex wax conduit that meshes, pipe dream-style, with another so that the two never touch. With the tentacles, I could separate things from one another and not worry about the distance between too much, as inflating and warping the tentacle is a kind of linear process. Counting on a lot of pressure and distortion to even the movement out is pretty reasonable in such a simple system. When it comes to a quadruped, things have to be a bit more controlled. Differing wall thicknesses and misaligned internal partitions start playing havoc with the system.
Casting the quadruped vertically, which I chose more out of habit than anything, has also been a bother. Given the small size of the quadruped, it ends up leaving sprues so small as to be almost useless. They are so close together that a blockage in one will quickly flow over to the other and block the system. I’ve been covering for this error by jamming a straw in the sprue as a kind of mold snorkel, but it’s not a very reliable hack.
I’ve been making all of my mold seams perpendicular to the sprue, when they can actually be in a number of configurations I hadn’t even considered. Given how everything’s printed and mating complex shells onto the design (which isn’t very fun in traditional sculpting territory) is actually pretty trivial, it means I can put sprues wherever I please.
Casting vertically means that bubbles collect in the mold seams and, given how viscous the silicones I’m using are, they can pile up into large voids that connect the outside world to the bladders. These can be patched or avoided with vacuum casting, but I hadn’t realized I could flip the casting orientation to better eject bubbles instead of relying on other processes to take care of the problem. I ended up redesigning the mold to have the seams perpendicular to the sprue, with vents to let the mold fill in one even wave, bottom to top. I experimented with a design that thickened the walls around the wax parts that were giving me the biggest problems, but it doesn’t stand much of a chance of performing as well mechanically as the complete redesign. Jim also discovered that Dragon Skin is miscible with Eco Flex, a similarly stretchy but much thinner silicone. A 50/50 mix of the two makes for a very strong stretchy silicone that ejects bubbles quite nicely.
One thing I’ve been noticing is the small sprues (tiny little pencil sized holes left after most of the mold opening’s space is used to align the waxes) are preventing wax from fully filling the mold. On one hand, this has been a frustrating setback. On the other, it’s led to a breakthrough. I’d forgotten how eager silicones are to stick to eachother. This means filling a part with several pours is totally feasible. What I’ve been experimenting with on the heels of this revelation is aligning all the waxes using cast sheets of silicone cut into little spacers and stuck to the parts with Sil-Poxy (which, I have heard, may just be ordinary tub caulk). I’ve also been trying dipping the waxes in silicone to build up a jacket on each before putting them in the mold. It also leads to a simple redesign that could make even more complex designs manageable: multi step castings. I’ve now made a mold that has an alignment jig built into it that holds the waxes. The jig is designed to leave a convenient shape on the part once the silicone has shored up. I can replace that half of the mold with another sans alignment jig and fill the remaining space with more silicone. The materials form a seamless whole and I should have a complete skin without extraordinary manual labor. I just have to make sure not to wait too long before casting the second dose.
It’s also worth noting that if I’d designed with structurally stable waxes in mind, I wouldn’t have to contend with this problem. This might be a solution as well, but I suspect that the kind of rigid shapes you’d need to support the inflating bladders would themselves start to inflate, throwing off the motion of the final robot.
In trying to make this whole ordeal egalitarian and actually worth pursuing to someone interested in playing with soft robots, I’ve tried to trim off extraneous bits of special equipment, rare/expensive/dangerous materials, and excess steps wherever possible. Initially I’d intended the interior waxes for these bots to be injection molded. The molds worked much better than I’d expected (I’ll talk about how they were designed in a sec) but after going through most of the castings the injection shop sent me, I started to wonder how the time lag and expense of professional casting would set me back.
The molds, which I’m calling bathtub molds, work like this:
[code]- Take your model (the core you’d like reproduced in wax) and divide it in half using a plane.
– Bend the plane to roughly split all the features of the model as well. It’s alright if it’s a bit rough, silicone is a really forgiving molding material.
– Add some mold walls and some keys. Do this for both sides of your model, making sure the keys line up.
– Print and cast all of the bathtub molds you’ve made.
– Although I originally intended these to be injection cast, here’s how I modified these molds to work with plain old gravity casting: adding some ventilation holes to the mold using a thin tube sharpened at one end and cutting a new sprue leading into the thickest part of the wax. This could easily be designed into the bathtubs themselves.[/code]
And why do we fall, Bruce?
So, my ethos and philosophy expose me as a pretty non-technical person. I try to find methods that give me results quick and don’t require a universe of modeling to prototype. In many ways these robots are analogue simulations: things I can model and modify reasonably quickly on the computer and run against a very sophisticated physics engine. Granted, that engine happens to be the real world, but given how I don’t know how to use MATlab and want to test my ideas rapidly, I don’t feel very hampered by the lack of digital simulation.
Still, I screw up often. Many of these are irritating technical things, like missing a step in mold finishing or repairing a wax part slightly askew so it intersects a mold wall. Some of these screw ups, however, lead to really cool opportunities for exploration. Yesterday I was making some new parts over at Viridis3d and tried to open up some castings I’d poured the previous night. To my dismay they were completely locked together. I was aiming at casting layers of silicone against one another quickly enough so that I could get them to bond completely. This meant trying to keep the surfaces as clean as possible and not using a parting agent on the mold that could come off on the silicone. I’d been using floor wax as my parting agent, which also did the task of sealing the pores in the powder mold. I discovered that the silicone interpenetrated the mold easily and formed an incredibly strong mechanical lock with the MakerDust. This was a little disappointing, given the lost time and wasted molds, but since the parts are so easy to replicated it was hard to get too irritated. Also, it leads to an interesting idea. I could put MakerDust spines and skeletons in my parts that lock in with the silicone to produce hard structures. I’m picturing all the ways I could multiply the force coming from the inflation by having it restricted by hard structures printed in tandem with the molds. This definitely needs more hacking.
Just like discovering that layers of silicone could stick to each other with quick successive castings, the screw-ups on this project have been sometimes more informative and valuable than the work that went exactly as planned.
Design Factors: Things you might want to keep in mind when designing your own soft robot
EDIT: There used to be a long list of notes on the robotics project below because it got late and I got tired, but I decided to flesh it out into a more legible post.
The texture on printed molds makes ejecting parts harder. Floor wax fills in the details and cracks and it helps eject parts. Since these molds are basically sand and epoxy, they can crack with repeated stress so reducing the strain on the mold will mean a longer life for the tool.
Seamless skins are important. I’ve now seen multiple soft robot designs that rely heavily on the strength of their seams. This is always the weak point and the first thing to pop. Seams need to be eliminated to produce reliable repeatable robots that could have an effect on a large scale.
Small volumes will distort less per psi than larger ones. When a silicone skin is inflated, small channels, small features, and little bubbles will expand much less than larger ones. This effect is modulated by the durometer of the material in a pretty linear way. Small features experience almost no distortion in a hard silicone, and much more as you test softer and softer silicones. There is probably a rule of thumb that can be worked out to describe what size air channels work for feeding inflating volumes without becoming blown up themselves.
CAD is difficult at the best of times. Parametric CAD helps out by allowing rapid iterations and changes in direction. It’s been awesome having models structured so that when I modify an aspect of the core, the whole molding chain modifies itself to reflect the change. However, this is fiddly to set up, and I’ve been dealing with these kinds of assemblies for years. Chances are that eliminating the huge hurdle of intimate CAD would help people get their hands on this technology direclty. Parametric modeling tools like those designed by Nervous System are likely the best way to tackle that.
Colored casting waxes will stain silicone and nothing seems to get it out. The way I’ve been getting the wax out of these parts is boiling the silicone casting in soapy water, squeezing out the liquid wax, and repeating until I have to change the water or all the wax is gone. Many high strength casting waxes are pigmented and this stains the silicone. I’ve tried cleaning them with soap and soaking them with bleach without much success. I’m experimenting with some water soluble waxes and will update with details as soon as I can.
FDM printers, which I’m not regularly fond of, may be suited to producing parts for robot molding. By default FDM isn’t the right technology for this process because of the surface texture and how prone the material is to delaminating. A crack in the volume can mean silicone pouring right out of the mold, and it’s hard to find these in an FDM part before casting. Spackling a print by hand or playing “hunt the hole” aren’t elegant production methods. However, FDM printers are super common and cheap. Acetone smoothing would improve the texture enough to cast clean parts It would also let you inspect for delaminations and cracks easily. This could be another step towards making these methods available to everyone.
Ok. That feels like enough for one post. I’ll do my best to elaborate on some of the more confusing points in here and update more often when I make progress. Also, let me know if you’d like more detail on any steps in the process and I’ll do my best to provide full details wherever possible.