# Copyright (c) 2024 MBARI
# MBARI Proprietary Information. Confidential. All Rights Reserved
# Unauthorized copying or distribution of this file via any medium is strictly
# prohibited.
#
# WARNING - This file contains information whose export is restricted by the
# Export Administration Act of 1979 (Title 50, U.S.C., App. 2401 et seq.), as
# amended. Violations of these export laws are subject to severe civil and/or
# criminal penalties.
mission Default_backseat_phins {
arguments {
ElapsedSinceDefaultStarted = 0 minute
}
behavior Guidance:Wait {
"""
Wait a moment to see if the scheduler starts a new mission before
starting to actually run Default.
"""
run in sequence
set duration = 13 second
}
# Power the backseat computer
insert Insert/BackseatDriver.tl
assign in sequence BackseatDriver:EnableBackseat = true
# Power the PHINS
syslog "Powering up PHINS..."
aggregate PowerUp {
run in sequence
syslog important "Requesting Data"
readDatum {
Sensor:Phins_Multibeam.loadAtStartup
}
}
syslog "PHINS powered."
behavior Guidance:GoToSurface {
run in progression
}
aggregate CheckIn {
run in sequence repeat=288
readDatum id="Read_GPS" {
timeout duration=P5M
Universal:time_fix
}
readDatum id="Read_Iridium" {
timeout duration=P2H {
behavior Guidance:Execute {
run in sequence
set command = "Burn on"
}
syslog critical "Dropped weight due to communications timeout."
}
Universal:platform_communications
}
behavior Guidance:Wait {
run in sequence
set duration = 5 minute
}
assign in sequence ElapsedSinceDefaultStarted = elapsed ( Universal:mission_started )
syslog important "Default Backseat and PHINS mission has been running for "
+ ElapsedSinceDefaultStarted~minute
}
syslog important "Restarting logs and Default Backseat and PHINS mission."
behavior Guidance:Execute {
run in sequence
set command = "restart logs"
}
}