"Crush" is a littoral-class autonomous underwater vehicle designed to compete in the 18th annual AUVSI/ONR RoboSub Competition . With no assistance from a human operator, the vehicle must complete a variety of complex underwater tasks including maneuvering around obstacles, identifying colored buoys, dropping markers in a bin, firing torpedoes at a target, finding a sonar pinger, and manipulating objects.
Crush's mechanical design centers around a main pressure hull, which houses all of the onboard electronics. Attached to the pressure hull are six brushless VideoRay thrusters, a sensor module in the front, battery pods on the bottom, and a pneumatic system in the back. Pneumatic actuators allow the robot to drop markers, fire torpedoes, and actuate a single DoF gripper. (more)
Custom PCBs distribute power and communicatiosn through two isolated circuits: one for the motors and actuators, and another for the computer and sensors. Crush is powered by two 6s LiPo batteries, runs the thrusters through six Hobbywing EZRun brushless ESCs, and uses and intel NUC i5 processor for onboard computation. (more)
Crush runs C++ on an ubuntu environment, using a custom-built interprocess communication library. The mobility controller uses a model of the vehicle's weight, buoyancy, inertia, and thruster locations to provide excellent stability in the water. Images from the on-board cameras are processed with OpenCV, allowing for effective stereoscopic object detection and identification. (more)