Overview

During the Spring semester of 2021, four mechanical engineering students and I partnered with Blue Robotics , for our capstone project. This project encompassed the development of the first prototype of a seafloor imaging towfish that Blue Robotics has continued developing into a marketable product. Despite logistical complications caused by COVID-19, the team managed to build and test three prototypes in 98 days. The final prototype, the BlueFish, met the client’s requirements, though several areas of improvement and refinement were identified.

Click here to see the full report.

The Problem

Towfish are becoming more common in the hobby, science, and industrial communities and are used for many purposes, including pipeline monitoring, seafloor exploration or mapping, water quality monitoring, national defence, and more. Mounting a camera or imaging sonar to a towfish, as done in this project, improves image quality over a vessel mounted system since towfish are unaffected by waves on the surface. Adding depth and altitude control to the towfish further increases stability and image quality while enabling varying degrees of resolution. Currently, towfish with dynamic depth control do not exist on the market and alternatives are not affordable.

Objectives

Several objectives were identified early in the project and given varying weights of importance after consulting with our client, Blue Robotics. Some of these objectives included:

  • Depth control - ± 0.25 m
  • Response Frequency - < 0.5 Hz
  • Pitch Control - ±3°
  • Roll Control - ±3°
  • Altitude - 1-10 m from the sea/lake floor
  • Depth rating - 100 m
  • Bill of Materials - $320-$400 (USD)

Full requirements and objectives documentation here.

My Role

Throughout the project, major tasks were often split between two members with one member taking primary responsibility for the completion of the task and a second member providing support.

  • Notable Primary Responsibilities:
    • I/O identification and specification
    • Communications between laptop, Raspberry Pi, and Arduino Uno
    • Electrical prototyping (breadboard prototypes, soldering, test jigs, etc.)
    • Electronics packaging
    • Electronics tray design and manufacturing
    • Graphical User Interface (GUI)
  • Notable Secondary Responsibilities:
    • Control system programming and troubleshooting
    • Circuit design and power requirements
    • Engineering drawings
    • Actuator transmission design
    • Final testing and PID tuning

The Designs

Early in the project, one of my primary responsibilities was the specification of the electrical components and their interfaces. It was decided that for the purposes of this project, it would be best to use an Arduino Uno for the control logic of the BlueFish while data logging and communication to the BlueBoat or laptop would be done through a Raspberry Pi 3b+. Several sensors, lights, and actuators were also specified, many of which were designed and made by Blue Robotics. Collectively, this assembly was referred to as the FishGuts

Before designing and manufacturing the electronics tray, several prototype iterations were made to test and troubleshoot the electrical system. This step also allowed me to practice my soldering skills as each prototype iteration progressed.

Next, an electronics tray was designed and manufactured before assembling into the final BlueFish prototype. Several smaller components, such as the voltage converter, were not included in the CAD modal, but were allocated space during the design process, along with wire routing. As can be seen, the final assembly required tight packaging.

Lastly, I designed a GUI with PyQT5 so that users may communicate with the BlueFish and monitor data readings live. This was also made so that our group could quickly modify PID settings when testing and tuning the device. However, time constraints and a limitation of the python plotting library used prevented me from completing a working version of the live plotting feature. Nonetheless, the GUI worked well and allowed us to update the PID settings and retrieve data without having to extract the Blue Fish.

The Results

Throughout the project, several experiments were done to test everything from the hydrodynamic stability to individual sensor validation. For major milestone tests, such as hydrodynamic testing, waterproof validation tests, and depth control tests, we created the test plans and reports found here .

Although we intended to do more testing and PID tuning with the final assembly, logistical problems delayed the completion of the last BlueFish build and the availability of testing equipment. That being said, from preliminary testing, results look promising. The following videos show dry testing of the tilt correction and a wet test of the final BlueFish prototype.


As shown above, final testing unfortunately only took place off of a dock, rather than with a boat. We were thus unable to get the BlueFish into a steady-state mode for extended periods of time. However, the graphs below show that in the brief steady-state conditions that were observable (~7-20 seconds elapsed time), the BlueFish was relatively stable given how little PID tuning done during testing.

Conclusion and Recommendations

Overall, the project was successful in creating a functional BlueFish prototype, along with documentation of its design, analysis, and testing. It was also found that the prototype met the client’s requirements. However, testing showed that there is plenty of room for further refinement of the mechatronic system and mechanical designs. Nonetheless, our team completed an initial prototype that was deemed worthy of continued development towards a marketable product.

Future Work

While early results were promising, much more testing needs to be done on the BlueFish, especially at more representative depths while being towed by a boat. However, several areas of improvement were identified:

Click here to see the full final report on this project, including more details on future work.

featured school programming python design mechatronics C electrical teamwork
Nigel Swab
Mechanical Engineering Graduate

Born and raised in Calgary, Alberta, Nigel learned how to channel his competitive nature from a young age through hockey, an obsession that afforded him the opportunity to play Junior hockey across Western Canada where he learned many valuable lessons on work-ethic, teamwork, and accountability.

Today, Nigel is an outgoing and passionate Mechanical Engineer who’s seeking new challenges after completing his B.Eng in Mechanical Engineering at the University of Victoria. Throughout his degree, he attained 24-months of co-op experience, served as a Vehicle Dynamics Lead and Chief Engineer for a student engineering club, and assisted with outreach programs for women in STEM.

Actively seeking growth, Nigel aspires to use his skills as an engineer to improve the lives of others and drive innovation.