Skip to content
Page auto-generated from XML file.

Science/mapPatch.xml

Mission ID: mapPatch

Mission Path: Science/mapPatch.xml

Vehicle yo-yos with patch detect enabled for oil concentration. NOTE: oil concentrations may vary strongly with depth! Suggested settings for simulaton: Config/sim/[username]/Simulator.cfg: oceanModelData = "Resources/BurgerOilfieldSpill.nc:mass_concentration_of_petroleum_hydrocarbons_in_sea_water:kg/m3"; eastCurrent = 0.05 m/s; // vel y wrto LV northCurrent = 0.005 m/s; // vel x wrto LV Config/sim/[username]/workSite.cfg: initLat = 71.2225805280196 arcdeg; // Initial latitude initLon = -163.5093252100575 arcdeg; // Initial longitude Config/sim/[username]/sim.cfg: WetLabsBB2FL.loadAtStartup = 0 bool; WetLabsSeaOWL_UV_A.loadAtStartup = 1 bool; WetLabsSeaOWL_UV_A.simulateSensors = 1 bool; WetLabsSeaOWL_UV_A.serial = "SEAOWLA2K-019"; WetLabsSeaOWL_UV_A.scaleFactor700 = 3.204e-7 1/m/sr/count; WetLabsSeaOWL_UV_A.darkCounts700 = 48 count; WetLabsSeaOWL_UV_A.scaleFactorFDOM = 8.096e-3 ppb/count; WetLabsSeaOWL_UV_A.darkCountsFDOM = 50 count; WetLabsSeaOWL_UV_A.fdomAccuracy = 8.19 ppb; WetLabsSeaOWL_UV_A.scaleFactorChl = 2.170e-3 ug/l/count; WetLabsSeaOWL_UV_A.darkCountsChl = 50 count; WetLabsSeaOWL_UV_A.chlAccuracy = 1.475 ug/l; WetLabsSeaOWL_UV_A.scaleFactorOil = 2.8 ppb/count; WetLabsSeaOWL_UV_A.darkCountsOil = 50 count; WetLabsSeaOWL_UV_A.oilAccuracy = 3.6 ppb; NavChartDb.charts = "US1AK90M,US2AK92M,US5AK9NM,US5AK9OM,US5AK9PM,US5AK9QM,US5AK9RM,US5AK9SM,US5AK9TM,US5AK9UM";

Arguments

MissionTimeout

MissionTimeout = 12 hour

Timeout for the entire mission

Speed

Speed = 1 meter_per_second

Vehicle speed.

CommsAtMissionStart

CommsAtMissionStart = true

Whether to do comms at start of mission.

PeakDetectChl

PeakDetectChl = false

Chlorophyll patch mapping.

PeakDetectSalinity

PeakDetectSalinity = false

Salinity patch mapping.

PeakDetectOil

PeakDetectOil = true

Oil patch mapping.

DetectTheTrough

DetectTheTrough = false

Whether to track a trough. If false, track peak; if true, track trough. Default is false.

MinAltitude

MinAltitude = 5 meter

Minimum altitude for the entire mission.

MaxDepth

MaxDepth = 50 meter

Maximum depth for the entire mission.

MinWaterDepth

MinWaterDepth = 10 meter

Minimum water depth for the entire mission.

MinOffshore

MinOffshore = 2000 meter

Minimum offshore distance for the entire mission.

MinDistFromPolygonSides

MinDistFromPolygonSides = 200 meter

If a operational safety polygon is specified and the vehicle is closer than this minimum distance to the polygon sides, turn back.

NeedCommsTimeInTransit

NeedCommsTimeInTransit = 60 minute

Maximum time between surfacings for communications during transit

NeedCommsTimePatchMapping

NeedCommsTimePatchMapping = 60 minute

Maximum time between surfacings for communications during patch mapping. This is checked only on every NumRoundsBtnCrossLegSurfacings rounds of CrossLeg or every NumRoundsBtnInLegSurfacings InLeg.

ElapsedTimeSinceLastGPSForCheckingOutsidePolygon

ElapsedTimeSinceLastGPSForCheckingOutsidePolygon = 60 minute

Check whether vehicle is outside of polygon only after the elapsed time since last GPS is greater than this parameter.

CheckNaNTimeout

CheckNaNTimeout = 10 minute

If the patch peak value is NaN by this time, stop mission.

TimePastOffPeakThreshold

TimePastOffPeakThreshold = 60 minute

Time to swim past off-peak threshold point, in order to cover low-value regions.

WaitAfterHittingWall

WaitAfterHittingWall = 3 minute

After the vehicle bounces off the boundary (defined by the shortest distance to polygon sides), wait this long before re-checking the distance.

LatPatchMappingStart

LatPatchMappingStart = NaN degree

Latitude of patch mapping start location. If nan, transit is skipped.

LonPatchMappingStart

LonPatchMappingStart = NaN degree

Longitude of patch mapping start location. If nan, transit is skipped.

Repeat

Repeat = 100 count

Maximum number of legs. Set to a large number.

WpMaxDistance

WpMaxDistance = 4000 meter

Maximum length of each mapping leg

WpTimeoutBase

WpTimeoutBase = 4000 second

Maximum duration of each mapping leg

TransitYoYoMinDepth

TransitYoYoMinDepth = 2 meter

Minimum depth while performing the YoYo behavior during transit.

TransitYoYoMaxDepth

TransitYoYoMaxDepth = 30 meter

Maximum depth while performing the YoYo behavior during transit.

PatchMappingYoYoMinDepth

PatchMappingYoYoMinDepth = 0.3 meter

Minimum depth while performing the YoYo behavior during patch mapping.

PatchMappingYoYoMaxDepth

PatchMappingYoYoMaxDepth = 10 meter

Maximum depth while performing the YoYo behavior during patch mapping.

YoYoMinAltitude

YoYoMinAltitude = 9 meter

Minimum altitude while performing the YoYo behavior (for bottom-terminated YoYos).

YoYoUpPitch

YoYoUpPitch = 20 degree

Vehicle up pitch while performing the YoYo behavior.

YoYoDownPitch

YoYoDownPitch = -20 degree

Vehicle down pitch while performing the YoYo behavior.

PeakShallowBnd

PeakShallowBnd = 0.3 meter

Shallow depth bound for detecting peak on each descent or ascent profile.

PeakDeepBnd

PeakDeepBnd = 10 meter

Deep depth bound for detecting peak on each descent or ascent profile.

BeginThresholdChl

BeginThresholdChl = 1.0 microgram_per_liter

If non-NaN, sets chlorophyll threshold for starting horizontal patch detection

BeginThresholdSalt

BeginThresholdSalt = 33.0 psu

If non-NaN, sets salinity threshold for starting horizontal patch detection

BeginThresholdOil

BeginThresholdOil = 0.1 kilogram_per_cubic_meter

If non-NaN, sets threshold for starting horizontal patch detection

Side0InwardDirection

Side0InwardDirection = 180 degree

Inward direction of polygon side 0.

Side1InwardDirection

Side1InwardDirection = 270 degree

Inward direction of polygon side 1.

Side2InwardDirection

Side2InwardDirection = 0 degree

Inward direction of polygon side 2.

Side3InwardDirection

Side3InwardDirection = 90 degree

Inward direction of polygon side 3.

Side4InwardDirection

Side4InwardDirection = NaN degree

Inward direction of polygon side 4.

Side5InwardDirection

Side5InwardDirection = NaN degree

Inward direction of polygon side 5.

Side6InwardDirection

Side6InwardDirection = NaN degree

Inward direction of polygon side 6.

Side7InwardDirection

Side7InwardDirection = NaN degree

Inward direction of polygon side 7.

WpBearing

WpBearing = 30 degree

Bearing being followed in the current leg. Set this to initialize start direction of patch mapping.

OffPeakFraction

OffPeakFraction = 10 percent

When filtered horizontal value is this fraction of the peak, consider it outside the patch.

DetectionTimeout

DetectionTimeout = 30 minute

Look for signal for this long. If none found within this timeout, switch to the next leg.

TimeWindowPeakRpt

TimeWindowPeakRpt = NaN minute

If greater than zero, report a peak every such time window has elapsed. If NaN or zero, this variable is ignored.

LowPassWindowLen

LowPassWindowLen = 20 count

Low-pass window length (based on depth sensor sampling interval 0.4 second) for low-pass filtering.

MedianFilterLength

MedianFilterLength = 5 count

Median filter length (only for chlorophyll fluorescence which tends to have spikes). The median-filtered signal enters the succeeding low-pass filter. If set to 1, then no median filtering, i.e., the raw fluorescence signal directly enters the low-pass filter.

NumOfProfilesSlidingwindow

NumOfProfilesSlidingwindow = 50 count

Length of horizontal sliding window. The highest per-yoyo peak (after low-pass filtering by a filter of length FilterWidthHorizontal) is picked out within this window.

FilterWidthHorizontal

FilterWidthHorizontal = 4 count

Width of boxcar filter used in horizontal patch detection

DepChangeThreshAttitudeFlip

DepChangeThreshAttitudeFlip = 2.0 meter

Depth change threshold for determining vehicle attitude flip.

WaterFrame

WaterFrame = true

Set WaterFrame true to drive towards waypoints in the water frame of reference

PatchMode

PatchMode = false

If true, use center of "in peak" range as the turn-around point. If false use maximum horizontal peak location as the turn-around point.

TurnAngleBase

TurnAngleBase = 120 degree

Zigzag turn angle.

Reverse

Reverse = 180 degree

Change in bearing which reverses vehicle direction

MassDefault

MassDefault = Control:VerticalControl.massDefault

Static setting for mass during the mission. Defaults to massDefault setting in the Config/Control.cfg file.

BuoyancyNeutral

BuoyancyNeutral = Control:VerticalControl.buoyancyNeutral

Buoyancy bladder position while performing the YoYo behavior. Defaults to buoyancyNeutral setting in the Config/Control.cfg file.

Output

AngleDifference

AngleDifference = NaN degree

TwoPi

TwoPi = 360 degree

Applied to stop run-up of angles

PeakFoundNotContinuedFlightLowEnabled

PeakFoundNotContinuedFlightLowEnabled = true

Initialized to True.

PeakFoundNotContinuedFlightHighEnabled

PeakFoundNotContinuedFlightHighEnabled = true

Initialized to True.

PeakFoundContinuedFlightLowEnabled

PeakFoundContinuedFlightLowEnabled = true

Initialized to True.

PeakFoundContinuedFlightHighEnabled

PeakFoundContinuedFlightHighEnabled = true

Initialized to True.

LegNotContinuedFlightEnabled

LegNotContinuedFlightEnabled = true

Initialized to True.

LegContinuedFlightLowEnabled

LegContinuedFlightLowEnabled = true

Initialized to True.

LegContinuedFlightHighEnabled

LegContinuedFlightHighEnabled = true

Initialized to True.

PatchDetectOn

PatchDetectOn = true

Mission sets this to true when looking for the patch peak. Initialized to True.

ZigDone

ZigDone = false

Mission sets this to true when the zig transect has been completed. Initialized to False.

LegContinuedFlight

LegContinuedFlight = false

Initialized to False.

MissionStartCommsCompleted

MissionStartCommsCompleted = false

Initialized to False.

Turn

Turn = NaN degree

Initialized to NaN.

WpBearingAfterLastWallHit

WpBearingAfterLastWallHit = NaN degree

Initialized to NaN.

WpTimeout

WpTimeout = NaN second

Initialized to NaN.

SideLastHit

SideLastHit = NaN count

PatchPeakChl

PatchPeakChl = NaN microgram_per_liter

PatchPeakChlPriorToContinuedFlight

PatchPeakChlPriorToContinuedFlight = NaN microgram_per_liter

PatchPeakSalinity

PatchPeakSalinity = NaN psu

PatchPeakSalinityPriorToContinuedFlight

PatchPeakSalinityPriorToContinuedFlight = NaN psu

PatchPeakOil

PatchPeakOil = NaN kilogram_per_cubic_meter

PatchPeakOilPriorToContinuedFlight

PatchPeakOilPriorToContinuedFlight = NaN kilogram_per_cubic_meter

PatchPeakDepth

PatchPeakDepth = NaN meter

PatchPeakLatitude

PatchPeakLatitude = NaN degree

PatchPeakLongitude

PatchPeakLongitude = NaN degree

PatchPeakDistance

PatchPeakDistance = 0 meter

StoppedForNaNPatchPeak

StoppedForNaNPatchPeak = false

Mission stopped because patch peak value is NaN. Initialized to False.

StoppedPolygonNotDefined

StoppedPolygonNotDefined = false

Mission stopped because the bounding polygon is not defined. Initialized to False.

StoppedForBeingOutsideOfPolygon

StoppedForBeingOutsideOfPolygon = false

Mission stopped because the vehicle is outside of the polygon. Initialized to False.

ElapsedSinceStart

ElapsedSinceStart = 0 hour

The mission sets this variable to reset the timer.

ElapsedSinceLastTurn

ElapsedSinceLastTurn = 0 hour

The mission sets this variable to reset the timer.

ElapsedSinceEndOfTransit

ElapsedSinceEndOfTransit = 0 hour

The mission sets this variable to reset the timer.

Inserts

Insert/NeedComms.tl

Insert/Science.tl

redefineArg PeakDetectChlActive = PeakDetectChl
redefineArg PeakDetectSalinityActive = PeakDetectSalinity
redefineArg PeakDetectOilActive = PeakDetectOil
redefineArg DetectTrough = DetectTheTrough
redefineArg TimeWindowPeakReport = TimeWindowPeakRpt
redefineArg LowPassWindowLength = LowPassWindowLen
redefineArg MedianFilterLen = MedianFilterLength
redefineArg PeakShallowBound = PeakShallowBnd
redefineArg PeakDeepBound = PeakDeepBnd
redefineArg DepChangeThreshForAttitudeFlip = DepChangeThreshAttitudeFlip

Invoked Module Behaviors

Guidance:AltitudeEnvelope

Guidance:Buoyancy

Guidance:DepthEnvelope

Guidance:Execute

Guidance:OffshoreEnvelope

Guidance:Pitch

Guidance:SetSpeed

Guidance:Wait

Guidance:WaterDepthEnvelope

Guidance:Waypoint

Guidance:YoYo

Trigger:PeakDetectHorizontal