I was searching for a reusable 3D printed model rocket that could carry a camera to take aerial videos. Unfortunately, I could not find such a design. I, therefore, decided to design my own rocket and share it with the world! A video is available on youtube: https://www.youtube.com/watch?v=YnmFnInn-iI
Several iterations were needed to obtain a model that is stable and that possess a reliable parachute deployment system. I wanted to make something pretty and sometimes good-looking features were privileged over performance.
Bubble possesses several features unavailable on other 3D printed model rocket designs (at the time this article is written):
- The motor is thermally insulated from the 3D printed body of the rocket. PLA is the most common and easiest material to print but it melts at low temperatures (60C). Rocket motors can become quite hot and this thermal insulation allows keeping the 3D printed parts under this value.
- The fins have an airfoil shape. This reduces the rocket drag and improves stability.
- A large payload bay allows the user to attach a camera and/or an altimeter.
In addition, the geometry is optimized for 3D printing. It is easy to print and does not necessitate supports.
Bubble is designed to be flown with an Estes D12-3 motor (packs of two motors available for less than $11) and launched using a 3/16'' rod. The rocket flies successfully and reaches an altitude of approximately 230 meters. It was launched 5ft long rod.
Step 1: 3D Printed Parts Selection
The files are available for download on Thingiverse.com: https://www.thingiverse.com/thing:2969262
To build a rocket, you will need to print at least the following parts:
- Regular fins, quantity: 2, filename: RegularFin.stl. These parts are fins used to stabilize the rocket.
- Fin with launch rod attachment, quantity:1, filename: RodFin.stl. This part is similar to the regular fin except that it has a tube-shaped part to insert on a 3/16'' diameter launch rod.
- Bottom body part: quantity:1, filename: BottomBody.stl or BottomBodyWithHoles.stl. The bottom body part provides attachment to the fins and to the motor holder.
- Middle body part, quantity:1, filename: MiddleBody.stl or MiddleBodyWithHoles.stl. The middle body part connects the nose cone and the bottom body part. It also contains the parachute before deployment. MiddleBodyWithHoles.stl is a version that has holes to attach a string to test the stability before launch.
- Coupler, quantity: 1, filename: Coupler.stl. The coupler is attached to the nose cone on one side and inserted into the rocket body on the other side.
- Nose cone, quantity: 1, filename: NoseNoWindows.stl or NoseWithWindows.stl or NoseOpenWindows.stl. The nose cone is the most forward part of the rocket. You have the choice between 3 different variants, depending on your needs and tools available. NoseNoWindows.stl is a version without windows. It should be selected if you don't intend to use a camera. NoseWithWindows.stl is the model designed to received acrylic windows. For best results, the acrylic windows should be cut using a laser cutter. If you don't have access to this machine, laser cutting services can be ordered online. Alternatively, the windows can be cut using a rotary tool (Dremel). NoseOpenWindows.stl should be selected if you want to use a camera but cannot cut the acrylic windows. Two open holes are symmetrically placed on the nose cone. One allows the camera to see outside and the other is necessary to produce a symmetric drag.
- Motor holder thread, quantity: 1, filename: Thread.stl. Thread needed to attach the motor holder.
- D12 motor template, quantity: 1, filename: D12MotorTemplate.stl. D12 motor template, necessary to glue the motor forward retainer at the correct place.
Step 2: Optional 3D Printed Parts
Additional parts must be printed if you want to attach a camera and/or an altimeter.
- To attach only a camera, you need to print:
- PayloadRing.stl, quantity:1.
- CameraSupport.stl, quantity: 2.
- PayloadRing.stl, quantity:1.
- CameraSupport.stl, quantity: 1.
- CameraAltimSupport.stl, quantity: 1.
Step 3: Additional Non-printed Parts
It is needed to purchase these parts to hold the motor:
In addition, screws are needed to attach the fins:
- M3x5 Socket Hex cap screw, quantity: 6
- M3 nuts, quantity: 6
For the recovery, you will need:
- a 24'' nylon parachute like this one.
- approximately 3ft of kevlar string (because Kevlar is fireproof). I use this 150 lbs Kevlar string.
- a 6''x6'' Nomex chute protector like this one or this one.
If you want to attach a payload, you will need the following fasteners:
- M3x30 Socket Hex cap screw, quantity: 4
- M3x20 Socket Hex cap screw, quantity: 4
M3x10 Socket Hex cap screw, quantity: 1
M3 nuts, quantity: 8
If you printed NoseWithWindows.stl you will need to cut the 6 windows out of a 1/16'' acrylic sheet. The outline of the windows is given in the document Windows.pdf available on Thingiverse: https://www.thingiverse.com/thing:2969262 . This document can be used directly with a laser cutter. If you cannot cut the windows using a laser cutter, you can use a rotary tool (dremel).
Step 4: Print the Parts
All the parts are optimized for 3D printing. They are easy to print and do not necessitate supports.
It is necessary to make the parts as light as possible. As opposed to some other 3D printed model rockets, this design does not have thin walls. Instead, all the parts but the fins must be printed with low infill and with few perimeters shells. Fins must be printed with 100% infill to make them strong.
All the parts can be printed using PLA which is the easiest material to print. PLA melts at low temperature but, in this design, the motor is thermally insulated from the printed parts so it is not a problem.
If the fins are printed using PLA, they will work perfectly. However, one or two fins will break at landing even with the parachute. This is not an issue for me: it cost me $0.1 to build a fin (price for the material and electricity). In addition, it takes me 2 minutes to change a fin. However, some people do not have a 3D printer at home and braking a fin or two at each launch might be an issue. PETG is less brittle than PLA and might be a good option to build more durable fins. This has not been tested.
Here are the printing parameters I use for the fins:
- Layer height: 0.15mm
- Perimeters shell: 3
- Infill: 100%
- Top solid layers: 3
- Bottom solid layers: 3
- Extrusion width: 0.3 mm (Most often 3D printers come with a 0.4mm nozzle, you can use a 0.4 mm nozzle to print with an extrusion width of 0.3 mm, it works perfectly).
- Print speed: 35 mm/s
Here are the printing parameters I use for all the other parts:
- Layer height: 0.15mm
- Perimeters shell: 2
- Infill: 8%
- Top solid layers: 3
- Bottom solid layers: 3
- Extrusion width: 0.22 mm (same comment as previously, you can use a 0.4 mm nozzle to print with an extrusion width of 0.22 mm, it works perfectly).
- Print speed: 35 mm/s
Advanced users of 3D printers can try to print the parts as light as possible while still maintening enought strrengh to withstant the launch mechanical constraints.
Step 5: Build the Motor Holder
To build the motor holder you will need:
First, cut the cardboard tube to a length of approximately 180 mm using a cutter. There is no need for your cut to be very accurate, the design can easily tolerate 5mm of error. However, keep the factory made cut on the other side. The factory cut side corresponds to the bottom of the motor holder, the side where the motor retainer is attached.
The bottom of the tube now needs to be glued to the motor retainer. Mix a little bit of Epoxy glue. Place epoxy glue on the outside of the tube, on a length of 10 mm starting from the bottom. You can use a little brush to help. Place the motor retainer on a table and insert the bottom of the tube. The epoxy should fill the gap between the tube and the retainer. If it is not the case, remove the tube, add more epoxy and, replace it. Let the assembly in a vertical position for curing (if your table is leveled, the assembly should stay vertical by itself).
Next, the 3D printed part Thread.stl must be glued to the other side of the tube. Place some epoxy glue on the inside of the 3D printed part. Place the kevlar string inside the 3D printed part and insert the threading and the string on the top side of the tube. The end of the string is now between the tube and the threading and will be secured when the epoxy is cured. Align the edge of the threading with the edge of the tube. Let the epoxy cure. Make a figure eight loop on the other end of the string (https://en.wikipedia.org/wiki/Figure-eight_loop).
A piece of cardboard needs to be added to prevent the motor from moving forwards. Remove the screw-on part of the motor retainer. Cut a 15 mm long piece of Estes BT50 cardboard tube. Fold the cardboard tube (as shown in the pictures) and place Epoxy resin on its outer side. Insert this piece of cardboard inside the motor holder from the bottom. Insert the D12 rocket motor template and align its edges with the edge of the motor retainer, this will push the piece of cardboard in place. Remove the motor template while making sure not to move the added piece of cardboard. Let the epoxy cure and verify that the piece of cardboard is strongly attached.
Step 6: Attach the Payload (optional)
The Kevlar string that connects the nose cone to the parachute first needs to be installed. Cut a length of 0.5 m of kevlar string. Use the two holes present on the coupler to attach the string to it: insert the string from the bottom to the top in one hole then, from top to bottom in the other hole and make a knot to secure the string. Make a figure eight loop on the other end of the string (https://en.wikipedia.org/wiki/Figure-eight_loop).
It is now time to install the payload:
- If you have a camera only, place it between the two printed supports (CamSupport.stl) and use 4 M3x40 screw and their corresponding nuts to close this assembly.
- If you have a camera and an altimeter, place the camera between the two printed supports (CamSupport.stl and CamAltimSupport.stl) and use 4 M3x30 screw and their corresponding nuts to close this assembly. Use one M3x10 screw and the corresponding nut to attach the altimeter on CamAltimSupport.stl. An additional zip-tie can be added as shown in the picture.
- If you have an altimeter only, proceed the same way as if you have an altimeter and a camera. Simply let the emplacement for the camera empty.
The obtained payload assembly now needs to be attached to the coupler. Insert PayloadRing.stl on the payload assembly, from the top. Place everything on the top of the coupler and use four to eight M3x20 screws to attach everything together. Only four screws are necessary. I think the assembly looks better with eight screws but it is also heavier.
Step 7: Assemble the Rocket
First, the fins need to be attached to the bottom of the rocket (BottomBody.stl). The fin that has the tube for the launch rod (FinRod.stl) produces more drag than the others. To compensate for this additional drag, the two opposite fins have a lower angle between them. The part BottomBody.stl has 3 slots to accommodate the fins. Inside one of this slot, there is a circle indicating where FinRod.stl should be mounted. Use two M3x5 socket head cap screws and two M3 nuts for each fin.
Let's now attach the motor holder. Remove the screw-on part of the motor retainer. Insert the motor holder inside BottomBody.stl (the bottom of the motor holder is inserted first in the top of BottomBody.stl). Replace the screw-on part of the motor retainer from the other side. Take the part MiddleBody.stl and fasten it to the threading of the motor holder (make sure that the Kevlar string is inside the parachute compartment and not tangled in the threading).
Users who have a payload have already attached the Kevlar string to the coupler (done during the optional step 6). If you do not have a payload, you did not perform step 6 and therefore do not have the string attached to the coupler. It is time to do it. Cut a length of 0.5 m of kevlar string. Use the two holes present on the coupler to attach the string to it: insert the string from the bottom to the top in one hole then, from top to bottom in the other hole and make a knot to secure the string. Make a figure eight loop on the other end of the string (https://en.wikipedia.org/wiki/Figure-eight_loop).
If you use ClosedNose.stl or NoseOpenWindows.stl, simply fasten coupler.stl on the nose cone and insert this assembly on the rest of the rocket.
If you use NoseWindows.stl, you first need to install the windows. No fasteners are required. Simply slide the windows inside their slot. Next, fasten coupler.stl and place this assembly on the rest of the rocket.
It is also needed to attach a piece of Kevlar string to the fireproof Nomex fabric. Cut a length of 20 cm of Kevlar string. Attach one end to the Nomex fabric and make a figure eight loop on the other end.
Step 8: Check the Stability
Every printed model will have a different mass and a different center of gravity. You can verify the stability of your model using the method described there: https://www.youtube.com/watch?v=3S7_fg6ZCF4
For this test, the parachute, the motor and the payload need to be in place.
To easily attach a string, you will need to have printed the part MiddleWithHoles.stl. This part contains numerous holes, spaced every 1 mm, on which an M3 screw can be fastened. The holes have a diameter of 2.7 mm and M3 screws are self-tapping inside this holes. You can fasten an m3 screw inside a hole and attach a string and check the balance of the rocket. Search for the hole that will make the rocket hang at a horizontal position. This is the center of gravity of the rocket.
You can now, with the string, make the rocket swing above your head. If the nose cone is pointing forward, your model is stable!
Step 9: Pack Your Parachute, Load the Motor and Launch Your Rocket!
Each subassembly (top part of the rocket, bottom part of the rocket, parachute and Nomex fabric) is attached to a piece of Kevlar string with a loop knot on the end. Use a zip tie to attach all the loops together.
Losen the motor holder and remove the end of the motor retainer. Insert your D12-3 motor, close the motor retainer and fasten the motor holder back by rotating MiddleBody.stl.
Let's now install the parachute. First, fold the parachute as tightly as possible insert the Nomex fabric. Make sure the parachute is not tangled. Insert everything inside the parachute compartment. It should be easy to move the parachute back and forth in its compartment. If not, remove the parachute, fold it tighter and retry. When done, insert the nose cone assembly on the top of the rocket. If the parachute prevents the nose cone from being inserted correctly remove it, fold it tighter and retry.
Your rocket is ready to be placed on the rod and launched!
I would like to thank the NASA Houston Rocket club for organizing model rocket launch meetings. I also want to thank the Robotic Swarm Control Laboratory of the University of Houston for letting me use a laser cutting machine to cut the windows of the model.