Fix Your Furniture With Customizable 3D Printed Furniture Leg Extenders.
by paramate in Workshop > 3D Printing
979 Views, 7 Favorites, 0 Comments
Fix Your Furniture With Customizable 3D Printed Furniture Leg Extenders.
If your vacuum robot keeps getting stuck under your furniture, you have a baby bed that is not quite level with your own bed or you live in an old building and nothing is quite straight, furniture leg extenders can be a solution. In this tutorial we will be making customizable furniture leg extenders.
This is a simple and practical example of an object for mass customization in 3d printing. Mass customization and design automation will be big trends in the near future of 3d printing. I will leave it up to the interested reader to do their own research as these topics are beyond the scope of this instructable.
The software we will be using for this is trCAD by trinckle. There is a free version that can be used without a login on https://trcad.trinckle.com/playground/ there are also free non-commercial licenses available if you send them an email. It is a scripted CAD software in a C-like language. People with JavaScript experience will find a thing or two familiar. But if you have no coding experience, this tutorial will be simple enough to follow along.
Note that the Playground version it there to try out the software and does not have the capability to save your progress. It is a good idea to save your progress in a separate text file in your favorite text editor.
For people that want to try to make their own objects after this tutorial, the documentation on https://docs.trcad.trinckle.com/trcad_manual/ will be a useful resource.
Supplies
- 3d printer or 3d printing service
- Ruler/Calipers
Opening up https://trcad.trinckle.com/playground/ you will find several examples and at the bottom an ‘empty code’. Since we will be making our customizer from scratch, we’ll want to open ‘empty code’.
Opening the ‘empty code’ will look like this:
On the left side we can type our code. On the right side we will see the 3D result of our code. We will be using the box primitive solid in this tutorial. They can be defined like this: box(width, depth, height )
Type in:
make box( 50, 60, 70 )
and press the ‘run script’ button. On the right side you will see a 3D box appear that you can turn by clicking and holding.
Because we will be working with multiple boxes in this tutorial, we want to give the boxes names. Delete the previous code and type in:
solid sleeve = box(50, 60, 70) make sleeve
Currently, we could change the parameters in the code, but it is easier to use parameters that will appear on the right, so we do not have to change the code. For this we’ll introduce open parameters. They can be defined as follows, type in:
open float width{ name = "width" descr = "The width of the box" value = 50 }
and change the 50 with width.
solid sleeve = box(width, 60, 70)
You will see the open parameter show up on the right and you can change it, without changing the code.
We will need four more open parameters, one for the depth and height of the leg, the ‘extension’ and a wall thickness that we will be using a bit later on. Above our box code, type in:
open float width{ name = "width" descr = "The width of the sleeve" value = 50 } open float depth{ name = "depth" descr = "The depth of the sleeve" value = 60 } open float height{ name = "height" descr = "The height of the sleeve" value = 70 } open float thickness{ name = "wall thickness" descr = "The wall thickness" value = 8 } open float extension{ name = "leg extension" descr = "the leg extension" value = 80 }
Because we haven’t used the open parameters yet in our box, they don’t show up on the right, yet. Let’s change that. Change:
solid sleeve = box(width, 60, 70)
to:
solid sleeve = box(width, depth, height)
Before we subtract the ‘hole’ we need to add a wall thickness to our sleeve. Add ‘thickness’ to the width and depth in the sleeve:
solid sleeve = box(width+thickness, depth+thickness, height)
We are ready to subtract another solid to make a hole. We will define another box solid that we can subtract, leaving the hole. Here we will define the box solid slightly different, because we need to modify the starting position of the box. This can be done by adding a vector position at the end of the definition. Below the solid sleeve, add:
solid hole = box(width, depth, height, <[ thickness/2, thickness/2 ]>)
and subtract the hole solid from the sleeve solid:
make sleeve-hole
Now that the hard work is done, all we need to add is the extension to our leg extender. Add +extension to height in the solid sleeve:
solid sleeve = box(width+thickness, depth+thickness, height+extension)
You will find that the hole is now at the bottom of the object. This is not a big problem for the function of the leg extender, but I prefer to have it on top. For this we will have to edit the starting point of the hole solid. Add extension to the vector position of the hole solid:
solid hole = box(width, depth, height, <[ thickness/2, thickness/2, extension ]>)
You have a customizable furniture leg extender that can be customized using the open parameters on the right. Congratulations!
Customize the leg extender as you like and download the stl. Make sure you add some clearance to your measurements, I like to add 0,2 mm to the depth and width of the leg to make sure it fits, but this is highly dependent on the 3d printer that you are using. If the leg extender is too tight and you used PLA to print, you could heat up the part in boiled water to make the plastic soft and fit it around the leg. Now slice the stl in your favorite slicer and print it yourself, or have it printed by a third party.
If you have any questions or remarks, get in the comments! I’d love to hear from you.