################################################################################
#
# PURPOSE: Test operational speed range of the vehicle.
# AUTHOR:  Gashler, McEwen
# DATE:    02/17/2003:
# NOTE:    Sequential behavoirs are bottom-up.  Priorities are top-down.
# MODS:
#
################################################################################

#define MISSION_SPEED      1.0
#defind TRANSIT_SPEED      1.5
#define MISSION_HEADING    270
#define STEP_DURATION      400
#define SHORT_DURATION     200

#
behavior missionTimer
{
  timeOut = 1500;
}
#
# Depth Envelope
#
behavior depthEnvelope
{
  minDepth     = 0;          #Meters
  maxDepth     = 35;         #Meters
  minAltitude  = 5;          #Meters
  abortDepth   = 45;         #Meters
}

behavior getgps
{
  minHits = 10;
  duration = 60;
}

behavior ascend 
{

  duration         = 120;      #Seconds
  horizontalMode   = rudder;   #Mode
  horizontal       = -10;      #Degrees; 
  pitch            = 15;       #Degrees
  speed            = TRANSIT_SPEED;
  endDepth         = 2;	       #Meters
}
#
# Command a constant heading and depth.
#
behavior setpoint
{
  duration     = STEP_DURATION;
  heading      = MISSION_HEADING;
  speed        = MISSION_SPEED;
  verticalMode = depth;
  depth        = 20;           #Meters
}
#
# Command a constant heading and depth.
#
behavior setpoint
{
  duration     = STEP_DURATION;
  heading      = MISSION_HEADING;
  speed        = MISSION_SPEED;
  verticalMode = depth;
  depth        = 30;           #Meters
}
#
# Command a constant heading and depth.
#
behavior setpoint
{
  duration     = SHORT_DURATION;
  heading      = MISSION_HEADING;
  speed        = MISSION_SPEED;
  verticalMode = depth;
  depth        = 20;           #Meters
}
#
# Command a constant heading and depth.
#
behavior setpoint
{
  duration     = SHORT_DURATION;
  heading      = MISSION_HEADING;
  speed        = TRANSIT_SPEED;
  verticalMode = depth;
  depth        = 20;           #Meters
}

# descend behavior for launch

behavior descend 
{
  duration = 90;
  horizontalMode = heading;
  horizontal = MISSION_HEADING;
  pitch = -10;
  speed    = TRANSIT_SPEED;
  maxDepth = 17; 
  minAltitude  = 10;
}

# setpoint on surface to accelerate to speed.

behavior setpoint
{
  duration = 30;
  heading  = MISSION_HEADING;
  speed    = TRANSIT_SPEED;
  verticalMode = pitch;
  pitch = 0;
}

behavior getgps
{
  minHits = 10;
  duration = 60;
  abortOnTimeout = True; 
}
