public class UsvExecution extends Execution implements Runnable
Date: 11 MAY 2005 Time: 1015:41 Author: Terry D. Norbraten Comments: Modified to handle Forward Error Correction (FEC) encoding of mission data output, $Id: UsvExecution.java 9109 2015-07-29 22:39:46Z brutzman $
Execution.IdleHandler
Modifier and Type | Field and Description |
---|---|
ControlCoefficients |
controlCoefficients
control controlCoefficients to be utilized for physical control of the USV
|
UsvController[] |
controllerArray
array of available controllers
|
ControlHardware |
controls
interface object for control actuator hardware
|
UsvControlParameters |
usvControlParameters |
UsvExecutionParameters |
usvExecutionParameters
usv-specific run-time runtimeFlags
|
currentCommandElement, currentCommandIndex, drivers, dynamics, dynamicsArgs, environmentCustomer, executionKey, firstTime, interVehicleCommunicationsHandler, joystickEventHashMap, KILL_CMD, killRun, mission, MULTIPLELOOPSMISSION_CMD, PAUSE_CMD, REALTIME_CMD, RESUME_CMD, runtimeFlags, stateReportChannel, stateVector, strategicLevel, strategicThread, tacticalConnection, tacticalLevel, tacticalThread, vehicleShortName, virtualWorldConnection, workbenchCommunicator
Constructor and Description |
---|
UsvExecution(String[] args)
Creates a new instance of Execution
|
Modifier and Type | Method and Description |
---|---|
protected void |
act()
computes and applies control settings
|
protected Mission |
buildNewMission(boolean wantResultsOutput) |
protected void |
decide()
determines appropriate action needed to complete current command,
using controller to compute
|
protected ControlParameters |
getControlParameters() |
StateVector |
getState() |
protected long |
getStateReportUpdatePeriod()
Can change period here if desired
|
protected String |
getTabDelimitedFormattedStateFieldNames()
Add usv-specific fields to default state
|
protected String |
getTabDelimitedStateValues()
Add usv-specific fields to default state
|
int |
getVehicleType() |
static void |
main(String[] args)
This is the entry point when Execution is invoked,
either in a separate JVM or a single JVM.
|
protected void |
missionFinished()
Required implementation of abstract method in Execution
|
void |
reset()
Resets all component objects and variables to start over.
|
protected void |
sense()
reads sensors or communicates with the virtual world to orient usv in the world
|
protected void |
setupVirtualWorld(Mission missionObject) |
checkKill, checkMultipleLoopsMission, checkPauseResume, checkPauseSeparateJvm, checkRealtime, cleanUpFollowingMissionLoopCompletion, decideExternal, endPositionReports, endStateReports, getEnvironmentalUpdatePeriodMs, getNextJoystickEvent, getPositionUpdatePeriod, getTacticalConnection, getWorkbenchCommunicator, initializeEnvironmentUpdates, isOneThreadedJvmForAllMissions, isRunning, missionSimulationLoopHouseKeepingFinal, missionSimulationLoopHouseKeepingInitial, missionSimulationLoopsRunFullMission, notifyCommandComplete, receiveJoystickEvent, run, setAgendaLaunchXY, setVehicleCharacteristics, shouldUseSingleJvm, startEnvironmentalUpdates, startPositionReports, startStateReports, stopEnviroUpdates, useMetric, useRadians
public UsvExecutionParameters usvExecutionParameters
public ControlCoefficients controlCoefficients
public ControlHardware controls
public UsvController[] controllerArray
public UsvControlParameters usvControlParameters
public UsvExecution(String[] args)
args
- command line argumentspublic void reset()
Execution
protected ControlParameters getControlParameters()
getControlParameters
in class Execution
protected void setupVirtualWorld(Mission missionObject)
protected Mission buildNewMission(boolean wantResultsOutput)
buildNewMission
in class Execution
wantResultsOutput
- protected void missionFinished()
missionFinished
in class Execution
public static void main(String[] args)
args
- the command line argumentsprotected void sense()
protected void decide()
protected String getTabDelimitedFormattedStateFieldNames()
getTabDelimitedFormattedStateFieldNames
in class Execution
protected String getTabDelimitedStateValues()
getTabDelimitedStateValues
in class Execution
protected long getStateReportUpdatePeriod()
getStateReportUpdatePeriod
in class Execution
public int getVehicleType()
getVehicleType
in class Execution
Dynamics.AGENDA
, Dynamics.UAV
, Dynamics.UGV
, Dynamics.USV
, Dynamics.UUV
, Dynamics.MUNITION
, Dynamics.ROV
public StateVector getState()