2.4 Robot Control
Controlling software for the minnowrobot is provided
in ROS. In order to ensure the widest possible interop-
erability of the ROS nodes across platforms, wherever
possible the ROS nodes have been implemented in
Python. This choice reduced development time sub-
stantively on the minnow robots as the time required
to compile ROS code on the BeagleBoard is not in-
significant. Note that the other alternative – cross
compiling on a host machine – requires the presence
of an appropriate host machine to be deployed along
with the robot platforms.
2.5 Vehicle Testing
The minnow USV’s performed well in several pool
trials as well as open water trials off the coast of Ho-
letown, Barbados in January 2012. During these trials
several things became apparent. First, the hull was
able to take on the extra payload and run quite effi-
ciently. At 20% throttle the boat was able to navigate
fairly choppy waters and outpace human swimmers.
A straightforward PID controller was constructed in
ROS to provide bearing following. One issue that we
expected to take considerable time during the field tri-
als was tuning this PID controller for the open water
conditions. Surprisingly, the tuning of the PID con-
troller is less critical in open water as opposed to a
pool or pond setting as the rough surface acts to damp
the system making changes in rudder position take
time to accumulate into the overall vehicle trajectory.
In all, the vehicle was successfully tele-operated vi-
sually and commanded to follow a compass heading
during several trials both controlling the rudder posi-
tion directly as well as controlling the compass head-
ing through the PID “Helmsman” controller.
3 DISCUSSION AND FUTURE
WORK
During the trials the need for a heart-beat (still-alive)
signal was made evident. The initial prototype would
maintain it’s last command until completion, received
another command or until it ran out of power. This
command structure would become problematic if the
boat for any reason lost contact with the base station
due to driving too far away from “home” or due to
a wave blocking the signal. This latter problem was
experienced during heavy swells where the minnow
“lost sight” of the 802.11 base station. Modifying
the ROS command structure to require a heart-beat in
the command structure allows for the boat to return to
some default action (i.e. set the throttle to zero) when
communication is lost.
On a more forward-looking theme the use of ROS
as the core software architecture running the boat
makes this project very expandable. We are looking
forward to both leveraging the work of others on this
platform (through the use of ROS nodes) as well as
using multiple vehicles to perform a common task.
In particular, ongoing work is exploring coordinated
operation between a larger surface vehicle Eddy (a
Clearpath King Fisher) and a fleet of minnow-class
robots. Eddy is equipped with a differential GPS sys-
tem as well as a long range radio communications
channel. This would enable the rest of the fleet (com-
prising of the cheaper minnows) to relay communica-
tions through the larger surface vehicle and perform
longer range missions as well as benefit from more
accurate positioning through the larger craft.
It is also anticipated that we will be performing
joint actions with the AUV Kroy (Dudek et al., 2007).
In these experiments we anticipate having one (or
more) surface vehicles performing functions from the
surface (perhaps finding places of interest for environ-
mental modelling or surveying) with the large King-
fisher tracking visual targets on Kroy and command-
ing Kroy’s actions.
REFERENCES
Bertram, V. (2008). Unmanned surface vehicles - a survey.
Technical report, Skibsteknisk Selskab, Copenhagen,
Denmark.
Caccia, M. (2006). Autonomous surface craft: prototypes
and basic research issues. In Control and Automation,
pages 1–6.
Dudek, G., Giguere, P., Prahacs, C., Saunderson, S., Sat-
tar, J., Torres-Mendez, L.-A., Jenkin, M., German, A.,
Hogue, A., Ripsman, A., Zacher, J., Milios, E., Liu,
H., and Zhang, P. (2007). AQUA: An amphibious au-
tonomous robot. IEEE Comptuer, pages 48–53.
Manley, J. E. (2008). Unmanned surface vehicles, 15 years
of development. In Oceans, pages 1–4.
Quigley, M., Gerkey, B., Conley, K., Faust, J., Foote, T.,
Leibs, J., Berger, E., Wheeler, R., and Ng, A. Y.
(2009). ROS: an open-source robot operating system.
In Proc. of the Open-Source Software Workshop at the
International Conference on Robotics and Automation
(ICRA).
Watters, K., Minwalla, C., Liscombe, M., Lio, H., Thomas,
P., Hornsey, R. I., Ellis, K., and Jennings, S. (2011).
Characterization of an optical collision avoidance sen-
sor. In IEEE CCECE.
AutonomousAquaticAgents
375