Turtle Robot
While traditionally, most robots have been composed of jointed rigid components; our team of three people, including Samuel Kresch, Grigorgy Babikyan, and Xin Sheng have developed a quadrupedal robot which utilizes pressurized pneumatic tubing to mimic a muscular structure. This system of pneumatic “muscles” allows our robot to achieve locomotion with soft, compressible legs. We have titled this project the “Turtle Robot” as it resembles a turtle in that the robot’s legs are able to compress into its rigid core or “shell.” Each of the Turtle Robot's four legs is composed of three compressible accordion tubes which are connected by air tubing to the pump and valve system which can pressurize or depressurize the individual tubes to achieve walking-like motion.
This sort of robot may prove more viable than traditional robots composed solely of rigid components for certain purposes such as exploration. This is because the Turtle Robot can be programmed to more easily navigate uneven or steep terrain as the soft legs provide a greater range of motion for climbing maneuvers. The soft components of the robot will also allow the robot to endure impacts which could damage a traditional robot’s ability to function such as if a joint became deformed. Additionally, this form of robot is easily portable as its legs, which often make up the majority of a legged-robot's surface area, can be compressed into the central unit.
This project was developed in ten weeks for the University of California, Santa Barbara class Physics CS 15C with Dr. David Patterson.
(Attached below is video of final product)
Downloads
Supplies
Pneumatic Components for Legs:
- Accordion tubes (x12)
- 6V Air Valve with 2-pin (x16)
- 4.5V Air Pump and Vacuum DC Motor 2.5 LPM (x8)
- Silicone Tubing 3mm ID
- AIRTOON PU Tubing 4mm ID
- T-Connector For Silicone Tubing (x8)
- 2-Prong Barbed Fitting Connector (x12)
Control Electronics:
- Arduino Uno Rev3 circuit board
- Solderable breadboards (x2)
- 3V Relays with 4-pin (x8)
- Wires (x50+)
Shell and External Control Box:
- Aluminum container (Any Size)
- 4 in Round PVC Junction Box
- PVC 45 Degree S x S Elbow Fitting (x4)
- Power Supply that can provide 5V
-Optional: External Pump for heat dissipation in control box
MISC:
- Blue Tape
- Epoxy Glue
- Super Glue
- Plastic Food Wrap
- Rug Pad (For friction under "feet")
- Zip Ties
Test a Single Tube
The first step in building the robot was to successfully construct one of the leg “muscles” and make sure we could pressurize and depressurize it as desired.
The biggest issue with this step was in making sure the “muscle” tubes didn’t leak. Finding a strategy for consistently preventing leaks was particularly hard at first when we were trying to use high-pressure compressed air from the lab building’s compressed air system. In the end, we found out that the pressure from the building’s compressed air system was far too high and would rupture our seals.
To resolve this, we ended up not using the compressed air system and instead used the pumps that we got from Adafruit - the maximum stall pressure of which is 55kPa: a safe pressure for the construction model for the leg tubes we landed upon which is detailed below.
To test the efficacy of the tube, we connected the accordion tube with the pneumatic circuit. Our circuit allowed us to inflate and deflate the accordion tube. We were able to check for leaks by submerging the “muscle” in water and seeing if any bubbles came out when we pressurized the tube.
To assemble the tube, use epoxy glue, accordion tube and ½ -inch plastic caps from Home Depot. First, cut the accordion tubes half in size (or whatever size you choose - just make sure to cut them equal in length). Longer legs will make your robot more powerful - because you will be able to make larger steps. However, this will require make pressurization take longer. The accordion tubes should nicely screw in the plastic caps. Use epoxy glue to make a strong seal. In fact, the tubes will be able to endure up to 40 psi.
Downloads
Control a Two-Tube Leg
The next step was to add another degree of movement by connecting two such “muscles” together. We achieved this by wrapping two accordion tubes together with plastic food wrap. We used two pumps, one to inflate and one to deflate each of the tubes and connected them with two valves on each tube. We also used a relay in the circuit and connected it to the Arduino to control the system.
To control the direction of motion in the legs, we first inflate both tubes. In order to bend the leg, we first we tried to over inflate one of the tubes but found that this did not bend the leg as much as desired. Instead, we figured that the best way was to deflate the tube on the side which we wanted the leg to bend. Using this method, we found the leg bent smoothly and quickly.
Downloads
Add the Third "Muscle" to the Leg
Then we have further extended the degrees of freedom to be able to move in any direction in space. To achieve this, we have just added another leg and another valve to the system.
Once this is done successfully, make another three legs to have four in total.
Downloads
Build the Circuit
The circuit above, for simplicity, represents the circuit for each of the legs. The circuit consists of a power supply, 4 relays, 2 pumps. and 4 valves. Arduino controls the relays, thus controlling which pump or relay to turn. One of the pumps, when on, is inflating the system, while the other one is decompressing it. Moreover, due to the clever circuit design, two pumps never work simultaneously. So, for example, to bend the leg toward one of the tubes from the fully extended position - close two other valves, and turn on the decompressing pump - automatically turning off the compressing pump. To bend in a direction of one of the tubes from the fully compressed position - apply the same technique, but turn on the compressing pump.
Furthermore, to achieve simultaneity, and save as many Arduino pins as possible, we were actually connecting active pneumatic elements of two corresponding legs together, in parallel. So whenever you turn one of the legs to the right, the other leg will simultaneously move in a corresponding direction to walk.
Build "Body" and Circuit Container
Our shell is made by a cylindrical PVC four-junction box. Connect four PVC 45 degree elbows into each junction, these will serve as the attachment points for the legs.
We also made an electronics box to keep all the active elements in it. The form of it is not important except that it is clear where everything should be attached. Included above is our specific design. Keep in mind that the pumps can get overheated - it may be useful to include a fan to cool them down for extended use.
Assemble Components and Test
Assemble the components of the robot. We attached the legs to the central unit using hot-glue and tape.
The final robot is shown in the photo above. It has a separate "body" and control system. The body part has four legs, each consisting of three "muscle" tubes. These tubes are connected to the valves and pumps in the control system by silicon tubes. The pumps and valves are controlled by the Arduino.
Of course, you also need to teach the robot to walk. To achieve this, we use the powers of Arduino and our laptop - for convenience reasons: so that we could control the robot “prime time”, rather than have to achieve this by uploading a new code to Arduino every time. So, the logistics of the code are pretty clear: Arduino knows a number of basic commands, to control the legs on a basic level - inflating or deflating certain tubes - while the python code communicates with Arduino through serial port and tells it which commands to perform to do more complicated things, like walking.
Arduino Code attached below as: sketch_apr25b copy.txt
Python Code attached below as: TurtleRobotCode.txt