Students dive into designing and developing autonomous RoboBoat vehicles
By Sergio Biagioni
For the past year, 13 student teams have been designing and developing autonomous surface vehicles (ASV) to compete against one another in the Association for Unmanned Vehicle Systems International (AUVSI) 7th Annual International RoboBoat Competition held in July in Virginia Beach, Virginia. The student teams showed off their Aquatic Surface Vehicles (ASVs) in an aquatic obstacle course that included navigating buoys, autonomous docking, channel following, and identifying targets visually, thermally, and acoustically. To make things difficult, all of these tasks had to be performed autonomously.
The student teams were given access to MATLAB and Simulink as well as technical support and training prior to the race as part of the MathWorks sponsorship of the AUVSI Foundation competitions. As with other student competitions, a project-based learning initiative like RoboBoat provides a hands-on opportunity for teams to solve real-world engineering problems without a predefined solution.
For the AUVSI Foundation RoboBoat competitions, students are faced with the overarching challenge of finding a solution to run the right algorithms as fast and efficiently as possible without overloading the PC. Since students are balancing their work on the teams with their normal course load, the teams must also be able to design the algorithms as quickly as possible.
As a result, teams are using MATLAB and Simulink to:
- Design algorithms quickly by implementing and testing them in simulation before they program the devices
- Distribute the PC’s computing load across different platforms such as Raspberry Pi boards
- Program the various processors with a common, hardware-independent language
Figure 1: AUVSI’s 7th Annual International RoboBoat Competition course layout.
A Real-World Aquatic Obstacle Course
At the July competition, the teams’ autonomous vehicles had to successfully navigate an aquatic obstacle course while completing realistic missions in a maritime environment, allowing for students to develop skills in a multidisciplinary setting.
The aquatic obstacle course required the teams to perform the following:
1) Start at the dock and identify what color the underwater light source was emitting
2) Race through two sets of large pylons or speed gates as quickly as possible
3) Navigate through an obstacle field of buoys without bumping into them
4) Dock at a particular spot in a pier
5) Determine the location of an underwater acoustic beacon and then return back to the dock
Below is an image of an autonomous robotic system’s layout. In this image, all of the components can be developed and programmed using MATLAB and Simulink. This list of hardware includes low-cost microcontrollers and FPGAs.
Figure 2: Possible layout of Robotic System using MathWorks tools
For more information on how to use MathWorks tools to design and deploy code for use in the RoboBoat competition, see the following;
Cedarville University’s RoboBoat team is using MATLAB on a PC to run their robotic platform.
One of the difficulties of implementing all robotics algorithms on the PC is that it is computationally intensive. One solution is to purchase a more capable computer. Other solutions, which can be implemented with MATLAB and Simulink, are to use a DSP or FPGA, parallelize the algorithm, implement GPU acceleration or distribute the algorithm across low-cost hardware.This final option is an elegant solution which allows the user to obtain higher computational capability with minimal cost. This is the approach that Cedarville University took when they distributed their computer vision algorithm onto a network of Raspberry Pi’s.
One of the interesting features of their Computer Vision System is their unique use of two cameras. One of the cameras looks straight ahead while the other pans to search for items of interest.
The team also used Simulink to design and deploy an acoustic filtering algorithm onto a Raspberry Pi.
Simulink’s ability to simulate the algorithms on the PC enabled a quicker design process for the team’s three applications; distributing the computer vision system, simulating the combination of motor control and computer vision, and designing acoustic filtering.
Figure 3: Action shot of Cedarville University’s RoboBoat Vehicle navigating through Speed Gates
Figure 4: Cedarville University’s Aquatic Vehicle Layout
Stay tuned to see how and why Cedarville University programmed their platform in more detail!