public class UGVBody extends DISNetworkedRigidBody
| Modifier and Type | Field and Description |
|---|---|
static int |
DOPPLER_SOGU |
static int |
DOPPLER_SOGV |
static int |
LEFT_TRACK_CMD |
static int |
LEFT_TRACK_SPD |
static int |
REMAINING_BATTERY_POWER |
static int |
RIGHT_TRACK_CMD |
static int |
RIGHT_TRACK_SPD |
APPLICATION_ID, disPdu, ENTITY_ID, MULTICAST_GROUP, MULTICAST_PORT, pduArtParams, SITE_ID, TTL, workbenchCommunicatorBANK, current_time, DISCLIENT, dt, executionSocket, globals, HEAVE, hmatrix, Hprevious, MAXPARAMETERS, new_acceleration, new_velocity, p, p_dot, phi, phi_dot, PITCH, positionVector, psi, psi_dot, q, q_dot, r, r_dot, stateParameters, SURGE, SWAY, theta, theta_dot, u, u_dot, v, v_dot, w, w_dot, world, worldDown, x, x_dot, y, y_dot, YAW, z, z_dot| Constructor and Description |
|---|
UGVBody(DynamicsGlobals globals,
WorkbenchCommunicator communicator,
StateVector state) |
| Modifier and Type | Method and Description |
|---|---|
void |
euler_step(double stepU,
double stepV,
double stepW,
double stepP,
double stepQ,
double stepR,
double altitude,
double timeStep)
Calculates 1 numerical integration step using Euler integration
TODO: Non-physically-based model does not rely on integration of equations
of motion to update posture.
|
protected int |
getNumberStateParameters() |
StateVector |
getState() |
void |
heun_step(double stepU,
double stepV,
double stepW,
double stepP,
double stepQ,
double stepR,
double altitude,
double timeStep)
Calculates 1 numerical integration step using Heun integration
|
void |
initialize()
Reset method for all transform values
|
void |
integrateEquationsOfMotion()
Lots of math done here
|
void |
loadModel(String configFile)
Loads the model coefficients from a file as required
|
void |
rk4_step(double stepU,
double stepV,
double stepW,
double stepP,
double stepQ,
double stepR,
double altitude,
double timeStep)
Calculates 1 numerical integration step using Runge-Kutta Fourth Order (RK4) integration
|
void |
setState(StateVector state) |
deadReckonTestWithExecutionLevel, disNetClose, disNetOpen, disNetWrite, getPduSkipInterval, getTimeOfLastPdu, isDisPortOpen, loopTestWithExecutionLevel, printRigidBody, setGroup, setPduSkipInterval, setPort, setTimeOfLastPdu, setTtlcompute_world_rates, current_time_value, hmatrix_value, integrate_Hmatrix, nonzerosign, p_dot_value, phi_dot_value, phi_value, print_rigidbody, psi_dot_value, psi_value, q_dot_value, r_dot_value, set_accelerations, set_angular_accelerations, set_angular_velocities, set_current_time, set_linear_accelerations, set_linear_velocities, set_time_of_posture, set_velocities, set_world_rates, square, theta_dot_value, theta_value, time_of_posture_value, u_dot_value, update_Hmatrix, update_state_vector, v_dot_value, w_dot_value, x_dot_value, x_value, y_dot_value, y_value, z_dot_value, z_valuepublic static final int LEFT_TRACK_CMD
public static final int RIGHT_TRACK_CMD
public static final int LEFT_TRACK_SPD
public static final int RIGHT_TRACK_SPD
public static final int DOPPLER_SOGU
public static final int DOPPLER_SOGV
public static final int REMAINING_BATTERY_POWER
public UGVBody(DynamicsGlobals globals, WorkbenchCommunicator communicator, StateVector state)
public void initialize()
DISNetworkedRigidBodyinitialize in class DISNetworkedRigidBodypublic final void loadModel(String configFile)
public void integrateEquationsOfMotion()
DISNetworkedRigidBodyintegrateEquationsOfMotion in class DISNetworkedRigidBodypublic void heun_step(double stepU,
double stepV,
double stepW,
double stepP,
double stepQ,
double stepR,
double altitude,
double timeStep)
stepU - longitudinal speed (m/s) at the start of the timestepstepV - lateral speed (m/s) at the start of the timestepstepW - vertical speed (m/s) at the start of the timestepstepP - bank rate (radians/s) at the start of the timestepstepQ - pitch rate (radians/s) at the start of the timestepstepR - yaw rate (radians/s) at the start of the timestepaltitude - mean sea level altitude in meterstimeStep - public void rk4_step(double stepU,
double stepV,
double stepW,
double stepP,
double stepQ,
double stepR,
double altitude,
double timeStep)
stepU - longitudinal speed (m/s) at the start of the timestepstepV - lateral speed (m/s) at the start of the timestepstepW - vertical speed (m/s) at the start of the timestepstepP - bank rate (radians/s) at the start of the timestepstepQ - pitch rate (radians/s) at the start of the timestepstepR - yaw rate (radians/s) at the start of the timestepaltitude - mean sea level altitude in meterstimeStep - public void euler_step(double stepU,
double stepV,
double stepW,
double stepP,
double stepQ,
double stepR,
double altitude,
double timeStep)
stepU - longitudinal speed (m/s) at the start of the timestepstepV - lateral speed (m/s) at the start of the timestepstepW - vertical speed (m/s) at the start of the timestepstepP - bank rate (radians/s) at the start of the timestepstepQ - pitch rate (radians/s) at the start of the timestepstepR - yaw rate (radians/s) at the start of the timestepaltitude - mean sea level altitude in meterstimeStep - protected int getNumberStateParameters()
getNumberStateParameters in class DISNetworkedRigidBodypublic StateVector getState()
public final void setState(StateVector state)
state - the state to set