P16029: Robofish 3.2 - Object Retrieval

Customer Handoff & Final Project Documentation

Table of Contents

Team Vision for Final Demo and Handoff

Our goal for this phase was to get the Robofish to a point where it could be demonstrated at Imagine RIT and to continue working on system integration and optimization.

A lot of work was done on the swimming algorithm, and for Imagine RIT we were able to demonstrate forward motion, buoyancy changes, and turning. The systems integration is not complete enough for the Robofish to be completely autonomous, but each subsystem is functional.

Presentation Materials

Home Location Calculations

public/Customer Handoff Documents/Ted Code 1.png

This code processes "received signal strength indication" (RSSI) from each nearby beacon and distinguishes each RSSI by known serial numbers. This is then run through the "calculateDistance" function in order to convert the RSSI value to an actual distance.

public/Customer Handoff Documents/Ted Code 2.png

In this code:

txPower = the transmitter power of beacon.

Using the above equations, the real distance can be found. This data can be stored in matrix in order to calculate the angle to each of the beacons.

public/Customer Handoff Documents/Ted Code 3.png

In this figure:

alpha = (Compass value + 90) at the shortest distance to home(beacon) location

90 – alpha = (Compass value + 90) at the starting location to home(beacon) angle

d1 = distance to home(beacon) location when fish is at the shortest distance to the home location.

d2 = distance to home(beacon) location when fish is at the starting location

Using the above equations, the angle (beta) from the Robofish to the home beacon location can be found.

public/Customer Handoff Documents/Ted Code 4.png

Test Results Summary

Our Joint Testing document can be downloaded here.

The final handoff document is available here.

Risk Management

Our Risk Management document can be downloaded here.

Problem Tracking


Overheating Pump

During our demonstration at Imagine RIT, we noticed that the pump became extremely hot after several hours of constant operation. We worked around this issue by opening up the pump case occasionally and resting a bag of ice on the pump. Operating the Robofish in colder water (the pool at Imagine RIT was quite warm) may help the pump dissipate heat faster. Alternatively, a method of conducting heat from the pump to the surrounding aluminum case may be needed

Leaking in Pump Case

We also noticed water accumulating in the pump case during Imagine RIT. We believe a leak may have opened up where the elbow adapters are attached to the pump. Because the pump is water-resistant, this should not be an immediate issue if the pump case is drained on occasion.

Muscle Ends Popping Out

On two occasions the end of a McKibben muscle popped out from where they are secured by ring-clamps. In both cases the fitting that came out was a 3/16" barb to 1/4" NPT thread fitting. Most of the muscles are made with 3/16" barb to 1/8" barb fittings. Switching them all to these fittings should solve the issue.



Foam pieces were added to the top of the Robofish to offset the excess weight. A large piece was also added to the side of the electronics case to offset the weight of the batteries on the same side. A small piece was also added to the tail to improve its balance.

Tail Algorithm

During testing it was discovered that leaving a valve open and continuously filling the muscle would eventually cause it to break. This was a problem for the turning algorithm, which pulled the front section of the tail to one side while the back section flapped. Therefore the turning algorithm was changed to not leave the front muscle on constantly. However, this is not an ideal solution, and more durable muscles may be needed.

Ballast Tank not Draining

We noticed that occasionally water was not being expelled from the ballast tank. We determined the problem was caused by the inflated bike tube in the ballast tank being in a position where it covered the water inlet/outlet. The pressure of the water entering would push it out of the way, but it would cover the hole while draining. To solve this we glued our extra filter over the hole on the inside of the PVC cap.

Final Project Documentation

Technical Paper

The technical paper can be downloaded here.

Imagine RIT Poster

The poster can be downloaded here.

public/Customer Handoff Documents/P16029 Poster Final.png

CAD Design

The final CAD design can be downloaded here. (May need to be downloaded directly through Tortoise SVN)

public/Customer Handoff Documents/CAD Image.png

Bill of Materials

The BOM can be downloaded here.


Pre-charging the Ballast Tank

For the buoyancy control of the Robofish to work properly, the ballast tank's air bladder should be "pre-charged" to around 10 psi. This increases the rate at which water will be expelled, and therefore increases the speed at which the Robofish surfaces. This can be done with either a bike pump or the compressed air available in the lab. The pressure can be checked using a tire pressure gauge and a Presta-to-Schrader adapter.

Adjusting the Claw

The rotation of the claw prongs is locked by 3 modified shaft collars that slide partially into each prong. Loosening the set screws on these will allow the prongs to be rotated freely and re-centered if they become displaced or are disassembled.

Priming the Muscles

The muscles will not work properly if there is air trapped in them. Most of the air can forced out by squeezing the muscles when they are submerged, or they can be disconnected on the valve end and allowed to fill with water.


Image Processing code

Home Location code (right click, save link as...)

Conclusions and Recommendations for Future Work

Video Demonstrations

Jaw actuation with air

Tail signals changing based on camera input

Imagine RIT

Plans for Wrap-up

The final week will be used to finish up documentation of our project.

Home | Planning & Execution | Imagine RIT

Problem Definition | Systems Design | Subsystem Design | Preliminary Detailed Design | Detailed Design

Build & Test Prep | Subsystem Build & Test | Integrated System Build & Test | Integrated System Build & Test with Customer Demo | Customer Handoff & Final Project Documentation