The Gavia autonomous vehicle control software is implemented using a 'crewmember' paradigm. This means it is organized using a distributed architecture modeled on the division of responsibilities among the crew of a marine vessel. The Gavia Intelligent Artificial Crew (IAC) comprises a full set of modules responsible for the safe navigation of the vessel together with project modules responsible for meeting the goals of the mission. The Captain has the a set of responsibilities suitable for the role; overseeing the operation of the vessel and deciding on actions in response to exceptional or critical circumstances. With the vehicle Captain handling reaction to exceptional circumstances, the application modules are free to concentrate on the goals of the mission.
There are a number of Pilots on board Gavia and additional specialist Pilots can be easily added and adapted for particular tasks. Each Pilot controls a specific set of behaviours; one will track survey lines despite currents, another takes action to avoid obstacles, and so forth.
The vehicle's Engineer oversees the operation of the hardware, such as power system, motors etc. and reports to the Captain in case there is a need for action. The Navigator maintains a best estimate of the vehicle position at any given time, making use of all available instrumentation.
Intuitive chart-based graphical mission planning is provided by the Gavia Control Centre software that runs under the Microsoft XP operating system on a ruggedized laptop. The Gavia Control Centre supports nautical charts in standard S57 (encrypted and unencrypted) and VPF vector formats that provide increased level of detail over raster charts. Mission plans are defined in terms of waypoints or survey lines, or with predefined patterns, such as lawn-mower, cross-hatch, and sliding box. It is possible to use predefined patterns or alternately individual lines. The search area can be defined graphically on the underlying nautical chart. Once defined, the area can be moved and rotated using the mouse. The map based Control Centre also provides text boxes for precise control over mission parameters, including:
- sonar range
- lane spacing
- lane alternation ratio to ensure greater than 100% coverage
- vehicle speed
- bottom tracking altitude
- minimum and maximum depth
- the set of payload and ancillary modules that are active on each leg
- the settings for each payload module
Oscillating patterns along given lines are possible. Missions can be temporarily halted or aborted and new missions can be uploaded for execution via any of the 3 communication channels (acoustic, Wi-Fi or Iridium). Mission planning is also possible when utilizing the SeeTrack military or Autotracker products, other Third Party Software is also available for mission planning and AUV control.
All sensor data is recorded in native formats to hard drives or flash memory on the Gavia, with ample storage for even the most intense data collection mission. The data storage locations can be individually addressed via the vehicle Ethernet, and the GUI supplied with the Gavia Control Center can be used to download any or all of the data collected on a mission via Wi-Fi or wet-mateable Ethernet cable. Vehicle behavior is also logged on the Control Module PC, and these logs can be downloaded and inspected (both in text format and in graphs) using the Gavia Control Center for additional mission QC. The vehicle logs are all XML-based, so are machine-readable and can be easily parsed in third party software.
Vehicle timing is controlled by a 1PPS synchronization scheme: a single PPS logic line runs throughout the AUV. At the boundary of every second this will carry an edge, and the edge time is given by a ZDA string sent over Ethernet a few 10s of milliseconds later. The edge is generated by the GPS system when the AUV is on the surface, and by a high-accuracy underwater GPS clock when submerged. This enables the relative time-stamping of the various AUV sensors and sonars to be co-ordinated to within a fraction of a millisecond, over the whole AUV mission time.
- Organized using a distributed architecture modeled on the division of responsibilities among the crew of a marine vessel
- Intuitive chart-based graphical mission planning