Hardware Overview

This diagram displays the essential sensors and computers used on the boat.

Main Hardware for sensors and controls

NVIDIA Jetson Tx2

This is our main computer. It is an embedded GPU module. We use it to run all of our startup scripts, run the ROS code, perform logging, and for on-shore communication. The LiDAR and camera plug into the Jetson.

Pixhawk

This is our flight controller. We have flashed the Pixhawk with the ArduPilot firmware (Px4 is the other common option). The GPS, IMU, and RC receiver plug into the Pixhawl. The Jetson Tx2 sends the Pixhawk commands for sending the boat to a specific GPS waypoint or sets a specific velocity, and the Pixhawk handles the motor mixing to send the boat to the specified waypoint or sets it to the desired velocity by sending a signal to the ESCs. We have to configure the Piwhawk ourselves but do not have to handle the low-level motor mixing ourselves.

Electronic Speed Controller (ESC)

These convert a signal from the Pixhawk to a PWM signal used by the thrusters to control the boat's movement. They are also used to power the thrusters. We use two Blue Robotics T200 thrusters in a stationary orientation and steer with differential thrust.

RC Receiver

The RC receiver picks up the signal from our remote control, allowing us to manually steer the boat from shore.

GPS

The GPS receiver provides the Pixhawk with positional data. This allows the Pixhawk to know where the boat is and know when it has reached a target waypoint. The GPS does not work very well indoors, if at all.

Inertial Measurement Unit (IMU)

The IMU provides positional data similar to a GPS. It also provides 9 degrees of motion, giving us yaw, pitch, and roll, and a compass. There is an IMU built into the Pixhawk, and we also have a higher-quality external one that plugs into the Pixhawk. The IMU is used in addition to the GPS because it's much faster than the GPS. However, it becomes inaccurate after a while, so the GPS continually corrects it. For example, we could get a GPS reading once every 10 seconds and 5 IMU readings every second. The IMU fills in the gaps between GPS readings, and as it's corrected by the GPS every 10 seconds, there is not enough time for any significant inaccuracies to occur.

LiDAR - Light Detection and Ranging

A LiDAR is a distance scanner. Ours is 2D, meaning it measures distances in a horizontal plane. It has a range of 30 m in 270°. It could take 1081 measurements within a single scan and performs so many scans per second. It provides an array of distances for each scan. If the LiDAR picks up no obstacle within the 30 m range, the distance is "inf". We can use the data to determine how close objects are and where they are relative to the boat.

LiDAR scan example

Intel RealSense Depth Camera D435

The RealSense Depth Camera provides us with a video feed and depth maps. The depth sensor in the camera does not work very well outdoors because it uses an infrared sensor and has a limited range so we are not currently using it. We are just using the regular RGB camera. We run object detection algorithms on camera frames to identify objects and locate the object's location within the frame to determine the general direction that the object lies in.

Last updated