Introduction: Concrete 3D Printer
Structurally robust 3D printed concrete would be a formidable tool for designers and architects. In fall of 2014, my colleague Alan Cation and I created a mobile 3D printer that can print large objects in sawdust as part of our Master of Architecture studies at CCA. We decided that while sawdust was a really great material for testing our technique, we'd really rather be printing concrete. But in order to use our mobile 3D printer with concrete, we first had to understand a few things about how concrete behaves as a powder bed printer material.
Alright, put on your dust mask and boiler suit and calibrate your digital calipers, it's time to get dirty.
What you can expect to get out of this Instructable:
- An introduction with how gcode and CNC technology works
We're going to be creating a CNC machine, but you don't have to deal with any of the hazardous parts of CNC operation (read: no spindle). And since we're using a self built solution for controlling the machine, you get a real up close and personal look at how we turn computer geometry into gcode instructions.
- An in depth introduction into how powder bed printers work
Coming out of this, you'll feel like a 3D printing champ.
You'll get to walk all the way through the powder bed 3D printing process, from understanding the geometric constraints and possibility all the way to how to excavate your print without breaking it.
- The power to 3D print in Concrete!
While we focused on printing sculptural/structural/architectural objects, don't let our architecture bias limit your imagination! You could totally print cool pots and outdoor furniture and sand castles with this
Lastly, a word on our approach to teaching this technique:
While we're going to show you specifically how we got this thing to work, there's many ways to skin this particular cat (not that we condone the skinning of cats). Substitute, experiment and share what you find!
Step 1: CNC Hardware Setup - Items
This is a list of the things that are mostly necessary for the hardware setup:
Gantry - Alas, an important aspect to building a 3d printer is acquiring a gantry! We used a modified shapoko CNC machine in order to gain control. Here is a link on how to assemble the shapoko. We extended the gantry to have 4' x 6' aluminum rails.
Microcontrollers - As a microcontroller, we used arduino uno boards, both for the gantry control, as well as for the pump to deposit binding agent. The programming of the microcontrollers will be included later in the instructable. Shapoko also has information on how to setup the wiring for the motor controls, and it comes with one uno board and a stepper motor shield. The peristaltic pump will need its own uno board and motor shield. We also have a file for our 3d printed motor mounts.
A bunch of wire - Stranded and Solid Core
End Effector - The end effector consists of a peristaltic pump with tubing, a nozzle, a 3' aluminum rail, and a reservoir for holding binding agent. It is possible to motorize the Z axis, however we found that it was faster for us to manually control the Z height in our printing process. We also have attached the .stl files for the 3d printed parts.
Print Bed - The print bed is an optional approach. We built one in order to have some degree of material containment, but it is not necessary to the print process to have one. We CNC milled plywood in order to construct our print bed. Here is what you will need if you decide to build one, otherwise, you can just rest the gantry on posts.
2 sheets 4' x 8' - 1/2" plywood
2 sheets 4' x 8' - 3/4" plywood
Acrylic sheets
Step 2: CNC Hardware Setup - Assembly
The gantry assembly is very well documented in a link found above. As for the print bed, if you so choose to build one, the steps can be found in the drawings here. If not, it is possible to mount the gantry on 4 posts sticking out of the ground. The DXFs for the print bed can be found here. The Posts are the first things to assemble, then the frame, and the posts are added to the frame.
The binding agent reservoir and mount for the peristaltic pump are mounted to the X-axis of the machine, and the arduino boards are mounted to the Y-axis.
Step 3: Materials & Choosing Your Concrete Mix & Binder
You will need a ton of sand (literally) and half as much cement. You can get away with much less of these materials if you print smaller scale things. We used 1,000 lbs of sand and 500 lbs of cement in order to print 3 objects with a 2' x 3' x 1' volume.
We used a 30 grit fine aggregate sand and white cement for the majority of our prints with a 2:1 sand to cement ratio. We used this due to the fine aggregate sand, with a thicker aggregate you could use a 3:1 ratio.
The binding agent that we used was a soil hardener called polypavement, which comes in 5 gallon buckets. The polypavement takes effect with an evaporative process, so the concrete will set initially, and as it excavates, the polypavement makes the material even stronger afterwards.
It is also handy to have a plethora of 5 gallon buckets, as well as a tarp.
Step 4: Software (CNC Control)
Now that you've got your hardware and material requirements out of the way, it's time to make this CNC move.
If you've followed our recommendations so far, you've got a modified and extended Shapeoko 2 CNC machine with a reservoir and peristaltic pump strapped to it and ready to rock. Since we also need to control a peristaltic pump, and manually cut our layer heights for tool paths, we chose to use Rhino, Grasshopper and Firefly to run our machine.
The attached grasshopper script functions as a gcode "translator". It accepts surfaces and solid objects as input and turns them into a series of instructions for the CNC machine to follow. These instructions are simply coordinates and which the g-shield that drives the stepper motor then converts into signals that drive the stepper motors. WHAT A TIME TO BE ALIVE.
Download the attached files and take a look around. It'll be much easier to understand what's going on once we get rolling.
Step 5: Printing Process
So by now, you should have your machine built, materials mixed and software downloaded. Time to start slinging concrete.
The print process can be described as a repetition of the following steps:
0. Bed Setup
Before you get started, you need to take the overall height of the bottom of your bed (in millimeters) and input it into the script in the marked spot. If you want an explanation of why, read step two real quick then come back. Also, create a physical "origin" position to re-calibrate your machine from just in case your computer randomly crashes while you're printing. Trust me, you'll want to do this.
1. Add concrete and level the bed:
The amount of concrete you need to add depends on how big your bed is. We found for a 3'x2' print we were adding around 4 quarts of mixed concrete for a ~6 mm layer. In order get a good bond between layers, keep each layer below 10 mm.
Leveling the bed is a craft within itself. Practice makes perfect here. Just try to get it as close as you can. Smooth even motions work better than short choppy ones. Also, try varying the angle that you're sweeping out material.
We chose to use the angle of repose of concrete to retain our bed. If you're doing this, make sure you sweep material off the side of your bed each time you add more material in order to create more support for the next level of sand.
Set your origin point in grasshopper to a place clear of your print and leave it there until you're ready to do a height check.
2. Read your layer height & input it into the script.
Move the CNC carriage to the middle of your print (height check setting). Then, using a laser ruler (like this one), measure distance between the carriage and the top of your powder bed. Normally, in powder bed printing, the bed is precisely leveled by a machine after each layer, so the layer height is known. This number is then subtracted from the overall bed height and your current height in the model is found.
Since we are working at low resolution and large scale, we don't really need (nor do we actually have) that much control. So instead of matching our bed height to our model, we just match our model to our layer height! Brilliant!
3. Print
Make sure you've got plenty of glue in the reservoir and let her rip. Set the machine to "run" and switch the toggle that stops the counter reset. Now sit back and watch as your machine does all the work for you. I find this is a good time to measure out more material for the next layer, put on new work gloves, make sure your dust mask is in good shape and contemplate the futility of existence.
4. Rinse & Repeat
Send your machine to the origin to get it clear of the bed and level the bed. Nice work! You're 3D printing in concrete!
A few general notes:
- Keep that bed level! Take your time, it'll make your life easier. While this printing technique is pretty forgiving, divots and any other aberration in the bed make the binder pool and spread out instead of penetrating directly down. It'll make your print prettier, I promise. See the video above to see how I did it.
- Make sure your design fits within the angle of repose of your sand. You'll save material and time if you plan ahead here. We've found the mixed sand/cement stands at about a 35-40 degree angle.
- If you mount a work lamp to the side of your bed, the shadows it throws can help you spot uneven spots easier.
Step 6: Excavation
Now that you've completed your print and you've let it cure for about 12 hours, you're ready to excavate it. Starting from the top, slowly scoop off unfixed concrete, carefully feeling for edges of the print. We found that small plastic cups were the best for excavating, as they were both soft enough to not damage a print and held enough concrete to be useful. If you let your print sit even longer it will continue to cure and gain strength. Conventionally mixed concrete generally gains it's full strength after 24 days, but this is far from a conventional mixture, so expect your print to be more like a weak plaster mix initially, gaining strength as the poly-pavement and concrete continues to cure.
If you've made it this far, nice work! Post your results and findings in the comments below and let us know how your print went.
28 Comments
Question 1 year ago
Is any way you can help me with instructions on connecting the uno to a e³ 2.0 bigtreetech board. I early have all materials to build a extra printer that came with a 3d printer. Or can you help me with choosing a board to start from. Because the board goes to the tft70 touchscreen. And I'm no beginner to code. And the software I kinda know is marlin and seen th3d. So just wanna know how to set this up to nearly start from 3d printer not scriklo cnc
1 year ago
Hi ,can we use solidworks instead of rhino?
6 years ago
I'm a little late to the party, so hopefully you're still responding to these comments- I'm curious, how much did your whole setup cost you? Awesome, awesome instructable, by the way!
7 years ago
Awesome. Do you think its possible to print a layer and the object drops down rather than the print head rising?This would be in order to produce long, constant section objects. Similar to self climbing formwork used in highrise? cheers
Reply 7 years ago
I think you've hit on a fairly simple answer to clean level beds. I can picture an inverted box inside the frame with a scissors jack of reasonable travel for the project. The outer frame could serve as the foundation for the leveling tool, while the inner box drops the appropriate distance for the layer thickness. Sure, it's manual, but I'll bet it's a good bit easier to accomplish more uniform results.
7 years ago
Concrete reaches 98% strength in about 28 days, 100% in 28 years.
Reply 7 years ago
That is a myth. Concrete has historically been tested at 1 week and 4 weeks (28 days), but those times are arbitrary. Today, many concrete are tested again at 8 weeks (56 days) or 6 months or longer. Concrete, in theory, NEVER completely cures. Hoover dam concrete, poured in 1931, continues to cure to this day.
Reply 7 years ago
This myth about Hoover dam keeps repeating n repeating.. It is based on a misinterpretation of the engineer's words.. "Bureau of Reclamation engineers calculated that if the dam were built in a single continuous pour, the concrete would have gotten so hot that it would have taken 125 years for the concrete to cool to ambient temperatures. The resulting stresses would have caused the dam to crack and crumble away,"
Reply 7 years ago
Sorry, I disagree. Hoover dam was one of the first projects to use fly ash as a pozzolan. The pozzolanic reactions cause late strength development and continue reactions for an unknown length of time. Though reactions slow to imperceptible rates, they continue for many years. You may see it as a myth based on heat of hydration, but that does not negate the chemistries involved, which we still do not entirely understand. Argue if you will, we will have to agree to disagree. As for me, the facts of chemistry do not a myth make.
Reply 7 years ago
I agree with everything you say. Dont take me wrong, but still, those arguements you use are widely used from the concrete industry people, to promote sellings. I still dont see any fact of chemistry that proves your assumption about the curing state of the Hoover dam. Did any engineers performed tests lets say, 10 years ago and today, did they compared the results and they indeed saw a curing process still going on there? If the concrete deep inside the dam still cures, then it means it produces heat. Then how does this heat escape from inside without causing cracks in the outer surface of the dam? As soon as there are no scientific data, measurments,etc, i cannot assume that it is still curing.
The only reason i still inseast is cause of the dangers involved in such assumptions. Before a month or so, Bento Rodrigues dam in Brasil collapsed, filling with toxic minerals all the way from the dam to the sea.. Everything is destroyed for many years there, including the earth, the sea, the exotic river etc. This could have been avoided if people were doupting about the myths around concrete, instead of exalting them! As you mention before, there are "chemistries involved, which we still do not entirely understand".
The dams are a small problem though. The real problem is that humanity does not have a plan with what will do with all those TONES of toxic concrete waste after all those constructions we are building with various concrete mixtures, reach THE END of their lifespan.. Most of the concrete costructions people make, are of cheap low performance concrete.. which has a life span of average 100 years or so(even less in poor countries)...after that time passes, it is considered dangerous (specially in earthquake prone areas) and should be demolished. Nobody from the concrete fans has an answer about what they gonna do with all this toxic waste from the upcoming demolishions.. There is no plan. We cannot eat it, we cannot place it on earth and grow food on it. Hardly maybe there is a few percentage of it, that is recyclable. Until we find a solution to this problems, i would suggest that we should all doupt a bit more about all those "smart" toxic concrete mixtures..and try to develope earth mortars/concretes with the use of recyclable additives
Reply 7 years ago
I know it's a different mix using volcanic sand but... has the original Roman concrete set yet?
Reply 7 years ago
Of course it's "set". Whether the chemical process is "100%" complete is a matter of conjecture. As concrete sets, the chemical process of hydration continues for years, though at a gradually decreasing rate until it is virtually unmeasurable. We are only in recent years rediscovering the secret of Roman concrete -- in the use of pozzolanic materials and in roller compaction Even so, we still do not have a complete understanding of the details of concrete chemistry -- our own nor Roman concrete. We can produce concrete today that will far outlast Roman concrete. Reactive powder concretes using pozzolans and admixes such as fly ash, metakaolin, and silica fume, along with acrylics and fibers of glass, synthetics and steel can be produced that have life expectancies in thousands of years and qualities, such as ductility and high tensile strength, that were unknown or impossible just a few years ago. The only point I'm making is that there are some people who will nitpick about the use of words like cement, concrete, mortar, grout and the like, when concrete terminology evolves just as the technology itself continues to evolve.
7 years ago
hi can you suggest some alternative to soil hardener that you used, something that is easily available because the one that you suggested isn't available in India
7 years ago
That is pretty cool but in Amsterdam and a couple of other places architects and builders are able to print 3D houses up to 2000 sq. ft in 24 hours move in ready out of concrete.
7 years ago
Can I use lime as binding agent?
7 years ago
I wonder if you could use a shop vac with a cyclonic separator to remove the uncured portions of concrete? Possibly something like this https://www.burnstools.com/w2049-mini-dust-separator?gdftrk=gdfV216797_a_7c4635_a_7c17242_a_7cWOOW2049&gclid=Cj0KEQiAj8uyBRDawI3XhYqOy4gBEiQAl8BJbaLsfk971jfU_TVaVJWLh76o6vq7fRCmV9vhTeJpky8aAqdq8P8HAQ
Not sure if it might pull to much of the Portland cement past the bucket, leaving your ratios off, but some type of separator might work, maybe with a filter of some kind? Just a thought
7 years ago
Very cool concept and execution. Having worked woth SLA (stereolithography or photo solidification, solid free-form fab, etc depending on what system people have used) I really appreciate this idea. Well done in compensating for the layering techniques used in traditional Solid free-form fab. Have you compared final stregth of a printed piece to a traditionally poured piece of similar dimesions made with the same materials? If so how do they compare? Thanks for ths instructable btw.
Reply 7 years ago
Good question. We haven't done a 1:1 comparison to a conventional concrete pour, but we did do a failure test of the shell print (the print you see in the excavation video) and it successfully held a 240 lb dynamic load (read: Alan stood on it).
We were pretty happy with that, considering the feet of the shell weren't even secured to a "footing" of any kind but were simply resting on our plywood print bed. That means the tension performance wasn't too shabby either, with it successfully resisting the force of the legs trying to splay out.
7 years ago
Do you know if it would be possible to use this design to make molds suitable for casting metal objects?
Reply 7 years ago
Totally. That's an awesome idea. We'll have to give this a try.
And Nyxius is right, plaster would be better. Our first test prints were using a plaster/sand mix but we switched to a cement/sand aggregate mix once we scaled out print up, so plaster is a viable print medium.