From Mindworks
Jump to navigation Jump to search
Final Robosub design render
Duration Fall 2013 - Summer 2014
Faculty Advisers
  • Matt Kologi
  • Chris Pratt
  • Ingrid Kooda
  • Michelle Spear
  • Kyle Newell
  • Alexander Rowson
  • Tanis Lopez (Fall 2013)
  • Sean Hagerty (Fall 2013)

The RoboSub project has the goal of developing an autonomous underwater vehicle (AUV) for the AUVSI Foundation and ONR's International RoboSub Competition.

Design Task

The RoboSub must be capable of autonomously accomplishing a series of tasks including:

  • Going through a starting gate
  • Navigating from task site to task site on a course using visual and audio cues
  • Dropping markers at specified locations
  • Picking up, carrying, and dropping specified objects
  • Accurately deploying torpedos at targets
  • Completing physical puzzles using a manipulative arm

Accurate completion of each task contributes to the final score.

Our major project goals are:

  • Designing and building a sub frame that is light, maneuverable, durable, and properly bouyant with room for all necessary electrical and mechanical components.
  • Designing and building the mechanical devices necessary for task completion such as grabbing arms and torpedo launchers and integrating them with the electrical system and structural frame.
  • Assisting the WSU team in the design and implementation of the electrical system including power, motors, sensors, and communication.
  • First prize in the final competition!

Detailed Specifications

Design Goals and Deliverables

2014 RoboSub Specs.JPG

1. Statically and dynamically stable in the water.

  • A layout that positions denser components toward the bottom of the sub to keep the center of mass below the center of buoyancy
  • A system that allows for weights to be added at appropriate locations to help balance the sub

2. Positively buoyant by 0.5% of total mass

  • A complete sub that displaces the appropriate amount of water to make it buoyant by 0.5% of its mass
  • A system that allows for adjustments to buoyancy using high or low density additions, e.g. metal weights or foam

3. Parts that can be replaced in a matter of minutes

  • Standard and reusable fasteners instead of adhesives, welds, or other permanent solutions
  • Component layouts that do not block access to important parts

4. Modular sub-systems and components

  • Quick releases, latches, and easy-to-use connectors and mounts between systems and components

5. Easy to transport and store

  • Handles or something similar that is easy to grasp
  • A stand that has been specifically designed to support the sub
  • A container that is built to safely store the sub during transport

6. Safe to operate and work on

  • Thrusters and other electronics that are designed to operate below 30 VDC
  • Shrouds and guards the shield the thruster props
  • Kill switches that are easily operated and highly visible

7. Watertight hull and other housings

  • Accurately manufactured housing components and appropriate use of o-rings and waterproofing techniques

8. Electronics that remain adequately cool

  • A heat mitigation system using liquid and/or air cooling if needed
  • Heat sinks on crucial components

9. Outside dimensions that meet competition requirements

  • Compact construction and packaging of components
  • Accurate measurements of components and overall dimensions of sub

10. Overall weight that is 84 lb or less

  • Lightweight materials for frame, hull, and other components when possible

11. Torpedo launchers that can launch a torpedo into a 12 in target

  • Neutrally buoyant torpedoes that can possibly be adjusted with weights
  • A retention system that prevents torpedoes from launching prematurely
  • Fins or other solution for stabilization
  • Proper barrel porting and size to increase accuracy

12.Marker droppers that can drop a marker within a 6 in radius

  • A retention system that prevents the markers from being dropped prematurely
  • Negatively buoyant markers that readily sink
  • Fins to stabilize markers if needed

13. Complete control over linear movement and yaw

  • Position six thrusters for needed control

14. Minor corrective control over pitch and roll

  • Diving planes, fins, position of thrusters, or inherently stable

15. Corrosion resistant.

  • Corrosion-resistant materials such as stainless steel and plastics

16. Allow the sub to respond to keyboard input

  • Include program that will accept keyboard and act on keyboard input

17. Thrusters will respond to input from the sub

  • Program will activate the thrusters to execute a task

Current Design

2014 robosub Frame Underside.jpg

Sub Frame

2014 robosub Hull.jpg

The frame is constructed principally from extruded aluminum beams to which the various other components will be secured. The battery packs and the control system of the sub will be enclosed respectively in two waterproof cylinders. The external sensors and motors of the sub will be attached to the frame. All connections between power, control, and sensors will be done with cables running through through waterproof ports.


The sub is outfitted with six thrusters which will be able to control all movement in the xyz plane as well as roll (rotating around forward axis) and pitch/yaw (incline from fore to aft). The thrusters will be directly controlled by the microcontrollers based on commands sent from the PC.


The sub is outfitted with numerous sensors including audio (three hydrophones), visual (four cameras), accelerometer, magnetometer (compass), thermometer, depth sensor, gyroscope. All sensors other than visual/audio, which feed directly into the PC, will be polled by a microcontroller at regular intervals. The microcontroller will create a packet with the sensor reading and device information which will be sent to the PC.

Grabbing Arms

2014 robosub Marker Dropper.jpg

The sub has two grabbing arms, each of which is controlled with a stepper motor; one in front and one on the bottom. The front claw also functions as the marker dropper. As the marker dropper tasks will be completed before the grabbing tasks, the arm will being at fully open and then as it closes will drop the first and then the second marker before closing fully. By telling the arm to close only a certain amount the dropping of the first and second markers can be controlled.

Torpedo Launchers

2014 robosub Pneumatic System.jpg

The sub has two pneumatically controlled torpedo launchers pointing forward. They are actuated by signals from one of the microcontrollers. The compressed air canister that powers the launchers is situated so that it can be quickly and easily replaced.

Control System

All sensor and motor functions within the sub are managed by PIC32 microcontrollers, with the exception of the visual and audio sensors which are fed directly to the PC. The PIC32 polls each sensor in series at times based on timer interrupts, packages the data with an identifying header and sends it to the PC through an I2C connection. The PC processes the data and the AI software identifies which motor commands are required. The command packet is sent to the PIC32s over in I2C bus. The packet contains a header specifying the target devices so that the microcontroller will know where to send it.

Movement Module Prototype

The movement module prototype is required to do the following to be useful to the system that was previously described:

  • Gather key events from a keyboard, including single key events, or a polling event in the case of a continuously held key.
  • Regulate the amount of events processed and data broadcasted as to not overload the socket communication module with too many requests. This feature is required to share the broadcaster and socket communication with the other parallel executing modules.
  • Evaluate the appropriate movement logic to execute a maneuver effectively.
  • Produce the required data to be broadcasted back to the micro-controller which will control the thrusters by providing a values to activate each thruster and the its power level.

User Input Movement Module: Tested

The user input movement module has been rewritten to integrate with the other python modules and the updated architecture.

  • Movement is now handled as X,Y,Z values over three fields: location, orientation, and velocity
  • The updated architecture has removed the broadcaster and now relies on inter-module communication handled by 0MQ and

a message process called the "grapevine" which communicates messages to the new logging module and others.

  • The new X,Y,Z values are contained within Python dictionaries with the intent of being more friendly to future implementation of automated movement and AI integration.

Team Members

Picture Bio Discipline
2014 RoboSub Christopher Pratt.JPG
Chris Pratt:
    I'm a senior undergraduate and am dual majoring in mechanical engineering and math.
 I'm looking to go into graduate school to get a masters in robotics after I graduate.
 I have done robotics competitions in the past and have had a decent amount
of experience with both programming and designing.
2014 RoboSub Ingrid Kooda.JPG
Ingrid Kooda:
I’m a senior mechanical engineering student at the University of Idaho. I’ve had
four previous internships: two at the Idaho National laboratory, one at the NASA
Ames research center, and last summer I worked at BP Alaska. I’m fairly involved
on campus working as a senior resident assistant in the residence halls. I serve
as a senior rep for the Idaho branch of the American Society of Mechanical
Engineers, the flight systems engineer for the Vandal Atmospheric Science Team, and
the vice president of the Society of Women Engineers. I enjoy showing my dogs, skiing,
fishing, and adventures.
2014 RoboSub Kyle Newell.JPG
Kyle Newell:
I am a senior at the University of Idaho working toward my Bachelor of Science in
Mechanical Engineering and will graduate in the Spring of 2014. I chose the field of
mechanical engineering because I really enjoyed my math and physics classes in high school,
and I wanted to further that knowledge and apply it to design projects. In my free time I
enjoy biking, photography, listening to music, and cooking.
2014 RoboSub Michelle Spear.JPG
Michelle Spear:
I'm a senior studying mechanical engineering at the University of Idaho. I've had two
internships previously. The first was two summers ago where I was a production control intern
for B/E Aerospace in Marysville, Washington. My second internship was last summer where I was
an intern in the process and process safety group for BP in Anchorage, Alaska. Some of my hobbies
include skiing, hunting, and flying airplanes.
2014 RoboSub Alex Rowson.JPG
Alex Rowson:
I am a senior pursuing a B.S. in Electrical Engineering at the University of Idaho. For the past two
years, I have been an intern with Avista Utilities working on a wide variety of tasks including GIS
mapping, field work, and coding. I chose this project due to a personal interest in robotics. Most of
my free time is spent playing music including classical guitar and electronic music production.
2014 RoboSub Sean Heagerty.JPG
Sean Heagerty:
I am a senior at the University of Idaho. I am expecting to graduate in May of 2014 with a computer science
degree. I am originally from Kent, Washington, and my interests include videogames, studying history, watching
movies/TV shows, and socializing.
2014 robosub Tanis Lopez.JPG
Tanis Lopez:
I am a computer science senior at the University of Idaho. I have previous experience on projects using
software engineering and multiple computing languages. I hope to learn more about working with hardware
while on the RoboSub team as well as be part of a team producing a better performing sub.


Glossary of terms

Design Documents


External Links