Group: Core Autonomy


Total Lines of Code: 63,007

Total Files of Code: 467

Total Work Years: 13.74


Group Description: (38 modules)

The Core autonomy codebase primarily consists of the helm and core libraries comprising the helm. This includes the geometry and behavior libraries. Also included in this group the COLREGS behavior which includes several supporting libraries. The obstacle manager and contact manager are also in this group.

Documentation:

Distribution:

  • moos-ivp.org

Modules:

  • pBasicContactMgr: Manages known contacts and generates alerts consumed by the helm.
  • pContactMgrV20: Manages known contacts and generates alerts consumed by the helm.
  • pDeadManPost: Enable configured postings to be staged in the absence of other events.
  • pHelmIvP: A behavior-based helm with multi-objective optimization based (IvP) action selection.
  • pMarinePID: Simple PID controller for heading, speed and depth.
  • pNodeReporter: Gather vehicle navigation info into single published node report.
  • pObstacleMgr: Manages known contacts and generates alerts consumed by the helm.
  • uTimerScript: An app for generating scripted pokes to the MOOSDB.
  • BHV_AvdColregs: A behavior for avoiding collision based on CPA and COLREGS considerations.
  • BHV_AvoidCollision: A behavior for avoiding collision based primarily on CPA considerations.
  • BHV_ConstantDepth: A behavior for specifying the desired depth of the vehicle.
  • BHV_ConstantHeading: A behavior for specifying the desired heading of the vehicle.
  • BHV_ConstantSpeed: A behavior for specifying the desired speed of the vehicle.
  • BHV_CutRange: A behavior intercepting, closing range, to another moving vessel.
  • BHV_GoToDepth: A behavior for specifying a sequence of desired depths of the vehicle.
  • BHV_Loiter: A behavior for repeatedly traversing a given convex polygon of waypoints.
  • BHV_MaxDepth: A behavior to influence the vehicle to go no deeper than a given depth.
  • BHV_MemoryTurnLimit: A behavior preventing quick wrap-around turns, especiall with towed sensor.
  • BHV_OpRegion: A behavior monitoring vehicle position to remain within a convex polygon region.
  • BHV_PeriodicSpeed: A behavior for periodically influencing the vehicle speed.
  • BHV_PeriodicSurface: A behavior for periodically influencing the vehicle to surface.
  • BHV_Shadow: A behavior matching the heading and speed of a contact vehicle.
  • BHV_StationKeep: A behavior for holding a vehicle at a given position.
  • BHV_TestFailure: A behavior designed to fail, to test the helm's handling of a behavior failure.
  • BHV_Timer: A behavior for posting to the MOOSDB based on other events or timing.
  • BHV_Trail: A behavior for maneuvering ownship at a relative bearing and range to a contact.
  • BHV_Waypoint: A behavior for traversing a given set of waypoints.

  • lib_behaviors-colregs: A library holding the COLREGS collision avoidance behavior implementation.
  • lib_behaviors-marine: A library holding most of the IvP behaviors of MOOS-IvP.
  • lib_behaviors: A library containing superclass code for all IvP behaviors.
  • lib_bhvutil: A library holding several utility classes used by behaviors.
  • lib_contacts: A library implementing the node report message structure.
  • lib_geometry: Core geometry libraries for autonomy behaviors and GUIs. Includes CPAEngine.
  • lib_helmivp: A library holding most non-MOOS specific code of the IvP Helm.
  • lib_ivpbuild: A library with utilities for build IvP Functions.
  • lib_ivpcore: A library with core classes for representing IvP Functions and IvP Domains.
  • lib_ivpsolve: A library for representing and solving IvP Problems.
  • lib_logic: A library for implementing simple Boolean logic in applications.