Introduction: Soft Robotic Jellyfish

This project guide will help you create a simple, soft robotic jellyfish similar to the one discussed in this article! The robot will float in water and move its tentacles, almost mimicking the movements of a real jellyfish!

My project was inspired by Florida Atlantic University’s soft robotic jellyfish. After contacting lead researcher Professor Erik Engberg, I was able to get a lot of their design files! The following documentation is my journey and experience working with and editing their designs, but I attribute the idea entirely to them! Here is their research paper describing their robot.

Supplies

  1. Cotton Fabric
  2. 036 Buna O-Ring
  3. 1/8in Thick Acrylic Plexiglass Circle
  4. Ecoflex 00-30
  5. XTC-30
  6. Ease Release 200
  7. SIL-poxy Rubber Silicone Adhesive
  8. Marine Epoxy
  9. Mini Submersible Water Pump DC 3-6V 120L/H
  10. Teensy 4.0 Development Board
  11. Stepper Motor Driver Board
  12. Nuts, Bolts (#8-32 )
  13. Silicone Wire/Jumper Wires
  14. Tubing
  15. PLA Filament
  16. ABS Filament
  17. Sculpey
  18. Electrical Tape
  19. Breadboard
  20. Protoboard
  21. FTDI Header
  22. Female and Male Pin Headers

Step 1: 3D Print Molds

Access the files labeled “BottomMold.stl,” “MiddleMold(1).stl,” “TopMold.stl,” and “TubeMold.stl.” Download these files and send them to your 3D printer as GCode. Print one of each part, but print two copies of the “TubeMold.stl.” The diameter of the largest piece is approximately 21 cm, so make sure that your printing bed can fit this size of print. Use ABS filament to print these pieces as the material is durable and heat resistant enough to withstand the casting process.

After the pieces are printed, they should look like this. The “TopMold.stl” and the “MiddleMold.stk” connect together to act as a mold for the body of the jellyfish. The “BottomMold.stl” will act as a mold for the base of the jellyfish.

Step 2: Cut Out the Reinforcement for the Jellyfish Base

Access the file labeled “StencilDrawing.pdf.” Print out the stencil file on a computer. Cut out the stencil and laminate/tape it to make it more sturdy.

Use the laminated stencil to cut out the fabric reinforcement. Cut out a couple of extra reinforcements in case you mess up later on in the project. You can use clear tape to secure the stencil to the fabric while you are cutting to make it easier.

You can do this step while your molds are 3D printing to make the most of your time!

Step 3: Prepare Molds for Casting

You will be casting the jellyfish parts directly from the 3D-printed molds. Begin by finishing off the 3D printed parts. Clip off all the loose strands of ABS filament and dust off the inside. I also recommend rinsing the mold out and drying it off thoroughly to ensure there is no dirt in the final product. Spray the insides of each mold with Ease Release 200. Make sure to do this in a well-ventilated area.

After the insides are sprayed, insert the tube molds into the holes of the bottom mold. Tape the connection between these parts or plug the edge gaps with Sculpey. Connect the top and middle molds together and use the nuts and bolts to securely hold them in place. Use Sculpey to plug the edge gaps of these molds as well.

Step 4: Gather Tools/Materials for Casting Process

To cast the jellyfish body, we will use Ecoflex 00-30. Read the datasheet on this material before you begin. The pot life of this material is 45 minutes and the cure time is 4 hours. Mix a 1:1 ratio of Part A to Part B. The mixture should turn out transparent. In my experience, there was not a lot of heat released by the mixture once combined. To figure out how much material you will need, try filling the molds with water before you start to get an estimate of the volume necessary to complete your project.

Once you combine Part A and Part B and mix thoroughly, degas the mixture in your degassing chamber. This step is not necessary but highly recommended as any bubbles that develop in your mold will inhibit the inflation of your robot later. To remove the entrapped air with the degassing chamber, put your Ecoflex mixture into the chamber, turn the machine on, and suck the air out of the container until the mixture rises → breaks → falls. Here is a video from Smooth-On that explains this more clearly. Make sure the lid of the chamber is sealed so the vacuum degassing will work. I had my friend hold the lid down to make sure the seal was strong.

Step 5: Cast the Jellyfish Body

Once your casting material is degassed, you can pour it into your molds. Pour your two-part mold first so you can be sure you have enough Ecoflex. Use a thin stream of the Ecoflex to fill your mold. I found that starting in the corners of the jellyfish legs would ensure the evenest result. When filling the two-part mold, it is better to overfill, but be careful, this mold does not fill to the top. Refer to the two bottom images to see how high to fill the molds. When filling the bottom mold, place the fabric reinforcement down after covering the bottom of the mold with a thin layer of Ecoflex. Then, fill the rest of the mold.

After the cast has set overnight, take them out of the mold. This is what they should look like. Place the bottom piece of the jellyfish body back into its mold to prepare for the next step. Mix another batch of Ecoflex and coat the bottom piece with a thin layer. Place the top piece on the bottom piece, making sure to align the holes with the semicircle areas. Press the two pieces together firmly and allow them to set overnight. The next day, you may have to mix another batch of Ecoflex to seal any gaps that appeared overnight. Here is a video to demonstrate the process more clearly.

Step 6: Prepare Circuitry Container

Download the files labeled “ContainerBody.stl” and “ContainerLid.stl.” Send these files to your 3D printer as GCode. In your GCode converter (I used PrusaSlicer), scale the model down to about 10%. In green is a photo of the model that the FAU researchers used with their dimensions. I did not have any problems fitting the jellyfish body to the container with this scale of the container.

To waterproof the 3D printed container, use XTC-3D. Read the datasheet before handling it. The pot life of this material is about 10 minutes. The cure time is about 3.5 hours. Mix a ratio of 2A:1B. The mixture will be yellowish at first but will dry clear. Make sure the holes for the wires are free of resin before you let it set overnight. Once everything has set, you can try out the acrylic lid to make sure your container is ready for water testing.

Step 7: Prepare Circuitry Components

Start by brushing off your circuitry components to remove any dust or debris. The circuitry components include the Teensy 4.0, Male and Female Pin Headers, FTDI Header, Stepper Motor Driver Board, Silicone Wires, and the Mini Submersible Water Pumps. Prepare the Teensy 4.0 by soldering the male pin headers to the Teensy 4.0. Prep the FTDI header by cutting any residual traces between the right and middle pad (5V connection). Then, solder the left and middle pad together to make the header output 3.3V.

Solder the water pumps to the stepper motor driver board as pictured below. The motors will share a power pin (the top pin) but will be separated by ground pins (the two bottom pins). The pinout on the bottom of the motor driver board will be inverted on the top side where you will plug in the jumper wires. Make sure to thread the pump wires through your container before attaching them to the driver board.

Step 8: Code Teensy 4.0

To program the Teensy 4.0, you first need to download the Teensyduino add-on into the Arduino app. The resources on this site are extremely helpful in setting up your Teeny, and I recommend walking through their tutorial with the Installer. I did not download all the suggested libraries, and I faced no problems.

Once everything is ready, download the Blink code. This is just a rendition of the basic blink code but set up for motors. Select the Teensy 4.0 board and upload your code. You should get a popup that says “press button to activate.” This means that the Teensy 4.0 is communicating with your device. Press the reset button on the Teensy 4.0 while the code is uploading. Once your code has uploaded, you are ready to set up your circuit. Do not run the pumps outside of the water as they can easily break this way.

Step 9: Solder Circuit Together With Protoboard

Below is a schematic of the circuit for the robot. Start by using a breadboard to prototype the circuit as pictured.

Once you have gotten the circuit working on the breadboard, switch to a protoboard. Eventually, this project could be improved by manufacturing your own board instead of the protoboard. For now, solder the female pin headers to the protoboard in the shape of the Teensy 4.0 pinout and solder the jumpers or silicone wire to the protoboard. Use hot-glue to seal all the connections once you are sure the circuit works. There are indicator LEDs on the driver board to show if the code is working or not.

Step 10: Test Circuit

With the working protoboard, you are ready to test. Begin the testing process by filling a container with water. The water level should be above the pump inlet and outlet. Drop the pumps into the water and run the program. Try not to run the pumps outside of the water as they can break this way. Power the system with the FTDI cable

Once you are sure the pumps work with the program, insert the pump outlets into the jellyfish body. Test again in the water to see if the pumps will inflate the body. There may be some leakage during this stage. Make sure your container is a bit bigger than the circumference of the jellyfish body so it is free to contract and expand.

Step 11: SILpoxy Jellyfish Body

Once the testing has been completed, you can begin adhering the jellyfish body to the pumps with SILpoxy. Here is the datasheet for the material. The material will begin to cure in 5 minutes and will be ready to handle in 1 hour. In my experience, the SILpoxy can be handled very carefully after 12 minutes. I waited 24 hours to test the SILpoxy in water. Apply the SILpoxy to the inner circumference of the jellyfish body holes and the outer circumference of the pump outlets. Insert the pumps into the jellyfish body holes. Prop the jellyfish body up with something that will maintain the height required to reach the pumps. I used plastic plates to prop my project up while drying and rubber bands to secure the pumps.

Once the pump SILpoxy is dry, apply the SILpoxy with a toothpick on both the inside circumference of the jellyfish body and the outer circumference of the circuitry container. Make sure the jellyfish body is at a height that will reach the pump outlets as shown below. Remove the rubber bands when completing this stage. Continue to support the jellyfish body while drying with plates of some sort.

Step 12: Epoxy Pumps to Container

Once the jellyfish body is secured to the pumps and container, you can secure the pumps to the container with Loctite marine epoxy. Read the datasheet before handling the material. Mix equal parts of the epoxy together on a scrap piece of cardboard. Apply to the base of the container where the pump concavities are. Lay the pumps in the concavities and let dry overnight.

Once the pumps have dried, adjust the pump wires to the desired length and epoxy the empty space around the wire holes. This will help waterproof the container. Also, plug any other holes in the container with the epoxy during this stage.

Step 13: Fully Waterproof Robot

Once the pumps are secured, you are almost done with the robot. The final step is to fully waterproof the system. Extend the wires connecting the robot to the FTDI cable so that the electronics never touch the water.

Insert the O-ring into the container slot. Place the acrylic circle into the lid and screw the lid onto the container. The wires will be squished a little during this process. In hindsight, it would be smarter to thread these wires through the bottom of the container.

Step 14: Final Test

Once the container is fully waterproofed, do a final test with your robot. The jellyfish tentacles should expand and contract like an actual jellyfish would. The whole system should be buoyant (it should float around the surface of the water). It may be helpful to slightly fill the jellyfish body with water so the contractions and expansions will be more noticeable. Do not allow the FTDI cable to touch the water as I have done in this video. There might still be a little water that gets into the container, so make sure to monitor the situation.

STEM Contest

Runner Up in the
STEM Contest