<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">\documentclass[onecolumn,letterpaper,11pt]{article}

%===================================================================
\input{common_latex/common_latex_packages}
\input{common_latex/common_latex_definitions}
\input{common_latex/common_latex_memo_format}
%===================================================================

\begin{document}

\begin{labcover}
\labtitle{Aquaticus Robot Platform - The Heron USV}
\vspace{0.1in}
\labdate{September 2018}
\vspace{0.1in}
\labauth{Michael Benjamin, mikerb@mit.edu}
\labauth{Paul Robinette, paulrobi@mit.edu}
\labauth{Michael Novitzky, novitzky@mit.edu}
\labauth{Caileigh Fitzgerald, caileigh@mit.edu}
\labauth{Department of Mechanical Engineering}
\labauth{MIT, Cambridge MA 02139}
\labtoc{small}
\end{labcover}

\wikidoc{file=Memo.AQHeron}
\wikidoc{auth=mikerb@mit.edu}

%====================================================================
\section{Heron Overview}
%====================================================================

\vspace{0.1in}
\noindent
The robotic platform is a commercially available unmanned surface
vehicle, USV, the Heron M300 made by Clearpath Robotics, shown in
Figure \ref{fig_m300}.  It is augmented with a payload computer
running GNU/Linux and the open source MOOS-IvP autonomy software from
MIT. It is capable of a top speed of 1.8 meters per second (4 miles
per hour). It is equipped with a GPS, compass, and WiFi.

\vspace{0.1in}
\begin{figure}[ht]
  \centering 
  \includegraphics[width=0.6\textwidth]{figures/m300-brd.png}
  \caption{{\bf The Heron M300}: The Heron M300 unmanned surface
    vehicle serves at the robotic teammate.}
\label{fig_m300}
\end{figure}

%====================================================================
\subsection{MIT PavLab Mechanical Modifications to the Robot}

A number of mechanical modifications were made to the MOKAI to better
suit our uses at MIT. The key mechanical modificications:

\begin{packed_itemize}
\item The payload autonomy box and battery 
\item The payload cover and E-Stop button
\item The GPS anntenna location and mount
\item The IMU mount location
\end{packed_itemize}

%--------------------------------------------------------------------
\subsubsection{The Payload Autonomy Box and Battery}

The Herons autonomy system is run from the payload computer,
separate from the main vehicle computer shipped with the Heron.
The payload autonomy computer is situated in a water-tight
box that we call the payload autonony box (PABLO). This box
contains a Raspberry PI computer, with a water tight
Ethernet connector for communications to the Heron main vehicle
computer, and a USB water tight connector for power. The PABLO
is powered by a commercial battery typically used for travel
power for cell phone charging, providing a 5V supply. This battery
resides in its own water tight box with a connector leading
directly to the PABLO computer box. This arrangement is shown
below in Figure \ref{fig_heron_payload}

\vspace{0.1in}
\begin{figure}[ht]
  \centering 
  \includegraphics[width=0.9\textwidth]{figures/heron_pablo_and_batt.jpg}
  \caption{{\bf The Heron Payload Section}: The Heron robot has
    a paylod section where we mount our payload autonomy computer
    and the computer power supply in separate water tight boxes.}
\label{fig_heron_payload}
\end{figure}

\vspace{0.1in}
\noindent
The yellow plate shown in the figure underneath the PABLO and battery
boxes, is a cutout plate to guide the placement of the boxes within
the payload section. The cabling and connector locations of both boxes
was designed to precisely fit the palyoad section in the layout cut
into the bottom plate.

%--------------------------------------------------------------------
\subsubsection{The Payload Cover and E-Stop Button}

The orginal payload shipped to MIT was a simple metal cover with
provisions for mounting the E-Stop button. The E-stop button itself
was a non-standard feature (at least at the time) added for extra
safety. Ultimately we decided to move away from this cover to the
one shown on the right, which is laser cut to accommodate additional
components such as the GPS receiver and the IMU. 

\vspace{0.1in}
\begin{figure}[ht]
  \centering 
  \includegraphics[width=0.9\textwidth]{figures/heron_payload_cover.png}
  \caption{{\bf The Heron Payload Cover}: The original payload cover
    is shown on the left, only having the E-Stop button. The MIT
    modified cover is shown on the right, with the E-Stop button, IMU,
    and GPS receiver. The cover itself is a laser-cut cover with mounting
    holes with more tolerance than the original cover.}
\label{fig_heron_payload_cover}
\end{figure}
\vspace{0.1in}

\noindent
The original cover was also hard to place back onto the vehicle. The
four holes in the cover needed to go over the four posts on the body.
The holes had very little tolerance for a less-than-perfect alignment
of the four posts. 


%--------------------------------------------------------------------
\subsubsection{GPS and IMU Mount}

The orginal Herons were shipped with the GPS receiver mounted inside
the computer box, underneath the battery on the forward part of the
vehicle. This unfortanately provide very poor performance, poor SNR,
and very poor estimation of vehicle heading. Later fixes by Clearpath
moved the GPS receiver to be on the frame of the vehicle between the
battery and the payload cover. Ultimately we decided to build a mount
for the GPS receiver, on the payload cover as shown in Figure
\ref{fig_heron_gps_receiver}. The metal plate also provides a bit of a
backplane for the receiver, as recommended by the GPS
manufacturer. Performance in this mode has been more than sufficient.

\vspace{0.1in}
\begin{figure}[ht]
  \centering 
  \includegraphics[width=0.6\textwidth]{figures/gps_receiver.png}
  \caption{{\bf The Heron GPS Receiver}: The GPS receiver has been
    moved on the MIT vehicles to be on a separate mounting bracket
    on the payload cover, which also provides a bit of a backplane
    for better performance.}
\label{fig_heron_gps_receiver}
\end{figure}
\vspace{0.1in}

\noindent
The IMU unit was originally located underneath the Heron. It is
now mounted on top of the payload autonomy cover as shown above
in the figure, between the GPS receiver and the E-Stop button.


\noindent
Both the GPS and IMU are connected directly to the main vehicle
computer of the Heron. The payload autonomy computer receives this
information from the Heron main computer via an NMEA interface.

%====================================================================
\subsection{Information Generated and Logged from the Robots}

The Heron robots typically are running in an autonomous mode using
the MOOS-IvP software running in the payload autonomy computer. They
are typically in regular contact with a shoreside computer, to both
provide regular status updates to operators, and to allow the
operators to alter the robot autonomy mode, e.g., to recall them
home, or put them into temporary station-keeping mode or any other
defined autonomy mode on the robot.
\vspace{0.1in}

\noindent
The Herons will typically run a logger application logging all data
produced in the MOOS-IvP autonomy system. This application is call
\app{pLogger} and produces a time-stamped folder of data. The key file
is called an alog file, as it ends with the suffix \var{.alog}. A few
key components of this file are described below.

%--------------------------------------------------------------------
\subsubsection{Robot Data Logs and Vehicle Track Information}

The robot log files will contain the track information for the robot

\begin{packed_itemize}
\item \var{NAV\_X}, \var{NAV\_Y}: The robot local X-Y position
\item \var{NAV\_HEADING}, \var{NAV\_SPEED}: The robot heading and
  speed information. 
\item \var{NODE\_REPORT}: A string report containing all of the
  above in one single message.
\end{packed_itemize}
\vspace{0.1in}

\noindent
The \var{NODE\_REPORT} variable is {\em shared} from the vehicle
to the shoreside to enable viewing on a command-and-control display.
It also typically shared real-time to other vehicles on the field
to allow vehicles to perform collision avoidance. 

%--------------------------------------------------------------------
\subsubsection{Autonomy Mode Information}

The robot autonomy mode is also logged as the mission progresses.
Typically this is logged simply in the varible \var{MODE}. The set of
modes available for a mission may vary, depending on how the autonomy
designer configured the helm. The set of modes will depend on other
mission variables and commands from the shoreside or other
robots. These variables are also logged and available for later
analysis.

%--------------------------------------------------------------------
\subsubsection{Inter-Vehicle Messaging Information}

In addition to command-and-control messages from the shoreside
operators, robots may also receive messages from other vehicles also
using MOOS. An inter-vehicle message comes in the variable
\var{NODE\_MESSAGE}. A message has two key parts, the name of the
local MOOS variable to be modified, and the value to be applied
to this MOOS variable.


%====================================================================
\subsection{Robot Safety}

During normal operation, several measures are taken to ensure the
robots operate safely in terms of collision with other vessels, the
docks, and remaining in their operation area.

%--------------------------------------------------------------------
\subsubsection{Collision Avoidance}

The robots will often need to perform collision avoidance on the river
with other vehicles, robots or otherwise. Currently the Herons are not
equipped with any sensors for detecting the position, heading or speed
of other vessels. All vessels like the one in the below figure, are
equipped with their own GPS and compass and routinely report their
positions to other nearby vehicles on the test range.

\vspace{0.1in}
\begin{figure}[ht]
  \centering 
  \includegraphics[width=0.8\textwidth]{figures/multi-robots.png}
  \caption{{\bf Collision Avoidance Situations}: The robots will often
    encounter the need to perform collision avoidance on the river.}
\label{fig_multi_bots}
\end{figure}
\vspace{0.1in}

\noindent
Collision avoidance on the robots is accomplished within the IvP
Helm using a collision avoidance behavior based on the COLREGS. More
information on this can be found in the helm documentation. But in
short, vehicles won't simply maneuver to avoid, but will maneuver
in the manner prescribed by the COLREGS. For example, in head-on
situations, both vehicles will turn to the right, passing each other
on their port side.

%--------------------------------------------------------------------
\subsubsection{Operation Area Bounding Box}

Our Robots are also typically operating within a given operation area.
For Aquaticus, this area is described here:

\urlx{http://oceanai.mit.edu/aquaticus/oparea}

\noindent
The operation area will typically have a hard and a soft boundary.
When it goes outside the soft boundary, it has the chance to switch
autonomy modes to recover back into the main operation area. When it
goes outside the hard boundary, the robot will simply shut off its
propulsion. 

%--------------------------------------------------------------------
\subsubsection{Remote Control in an Emergency}





\end{document}



</pre></body></html>