DUNE: Uniform Navigational Environment
2.4.0
|
Classes | |
class | Error |
Public Member Functions | |
UAVSimulation (void) | |
UAVSimulation (const UAVSimulation &simul) | |
UAVSimulation (const double &alt_time_cst) | |
UAVSimulation (const double &bank_time_cst, const double &speed_time_cst) | |
UAVSimulation (const double &bank_time_cst, const double &speed_time_cst, const double &alt_time_cst) | |
UAVSimulation (const DUNE::Math::Matrix &vel) | |
UAVSimulation (const DUNE::Math::Matrix &vel, const double &alt_time_cst) | |
UAVSimulation (const DUNE::Math::Matrix &vel, const double &bank_time_cst, const double &speed_time_cst) | |
UAVSimulation (const DUNE::Math::Matrix &vel, const double &bank_time_cst, const double &speed_time_cst, const double &alt_time_cst) | |
UAVSimulation (const DUNE::Math::Matrix &vel, const double &bank_time_cst, const double &speed_time_cst, const double &airspeed_cmd, const double &bank_cmd) | |
UAVSimulation (const DUNE::Math::Matrix &pos, const DUNE::Math::Matrix &vel) | |
UAVSimulation (const DUNE::Math::Matrix &pos, const DUNE::Math::Matrix &vel, const double &alt_time_cst) | |
UAVSimulation (const DUNE::Math::Matrix &pos, const DUNE::Math::Matrix &vel, const double &bank_time_cst, const double &speed_time_cst) | |
UAVSimulation (const DUNE::Math::Matrix &pos, const DUNE::Math::Matrix &vel, const double &bank_time_cst, const double &speed_time_cst, const double &alt_time_cst) | |
UAVSimulation (const DUNE::Math::Matrix &pos, const DUNE::Math::Matrix &vel, const double &bank_time_cst, const double &speed_time_cst, const double &airspeed_cmd, const double &bank_cmd) | |
UAVSimulation (const DUNE::Math::Matrix &pos, const DUNE::Math::Matrix &vel, const double &bank_time_cst, const double &speed_time_cst, const double &alt_time_cst, const double &airspeed_cmd, const double &bank_cmd, const double &altitude_cmd) | |
void | resetModel (void) |
UAVSimulation | update (const double ×tep) |
UAVSimulation | update (const double ×tep, const double &bank_cmd) |
UAVSimulation | update (const double ×tep, const double &bank_cmd, const double &airspeed_cmd) |
UAVSimulation | update (const double ×tep, const double &bank_cmd, const double &airspeed_cmd, const double &altitude_cmd) |
void | setCtrl (const double &bank_time_cst, const double &speed_time_cst) |
void | setCtrl (const double &bank_time_cst, const double &speed_time_cst, const double &alt_time_cst) |
void | setBankRateLim (const double &bank_rate_lim) |
void | setAccelLim (const double &lon_accel_lim) |
void | setVertSlopeLim (const double &vert_slope_lim) |
DUNE::Math::Matrix | getPosition (void) |
DUNE::Math::Matrix | getVelocity (void) |
double | getAirspeed (void) |
void | setPosition (const DUNE::Math::Matrix &pos) |
void | setVelocity (const DUNE::Math::Matrix &vel) |
void | command (const double &bank_cmd) |
void | command (const double &bank_cmd, const double &airspeed_cmd) |
void | command (const double &bank_cmd, const double &airspeed_cmd, const double &altitude_cmd) |
Public Attributes | |
std::string | m_sim_type |
double | m_bank_cmd |
double | m_airspeed_cmd |
double | m_altitude_cmd |
DUNE::Math::Matrix | m_wind |
double | m_g |
DUNE::Simulation::UAVSimulation::UAVSimulation | ( | void | ) |
Constructor.
Create a simulation model with null initial state. 3 DOF simulation.
References resetModel().
DUNE::Simulation::UAVSimulation::UAVSimulation | ( | const UAVSimulation & | simul | ) |
Constructor.
Create a simulation model as a copy of another
[in] | simul | - simulation model to be replicated |
References m_airspeed_cmd, m_altitude_cmd, m_bank_cmd, m_g, m_sim_type, and m_wind.
DUNE::Simulation::UAVSimulation::UAVSimulation | ( | const double & | alt_time_cst | ) |
Constructor.
Create a simulation model with null initial state and the vehicle model parameters. 4 DOF simulation with altitude dynamics.
[in] | alt_time_cst | - altitude time constant |
References resetModel().
DUNE::Simulation::UAVSimulation::UAVSimulation | ( | const double & | bank_time_cst, |
const double & | speed_time_cst | ||
) |
Constructor.
Create a simulation model with null initial state and the vehicle model parameters. 4 DOF simulation with bank and speed dynamics.
[in] | bank_time_cst | - bank angle time constant |
[in] | speed_time_cst | - airspeed time constant |
References resetModel().
DUNE::Simulation::UAVSimulation::UAVSimulation | ( | const double & | bank_time_cst, |
const double & | speed_time_cst, | ||
const double & | alt_time_cst | ||
) |
Constructor.
Create a simulation model with null initial state and the vehicle model parameters. 5 DOF simulation with bank, speed, and altitude dynamics.
[in] | bank_time_cst | - bank angle time constant |
[in] | speed_time_cst | - airspeed time constant |
[in] | alt_time_cst | - altitude time constant |
References resetModel().
DUNE::Simulation::UAVSimulation::UAVSimulation | ( | const DUNE::Math::Matrix & | vel | ) |
Constructor.
Create a simulation model based on the initial velocity state. 3 DOF simulation.
[in] | vel | - initial velocity vector |
References resetModel(), and setVelocity().
DUNE::Simulation::UAVSimulation::UAVSimulation | ( | const DUNE::Math::Matrix & | vel, |
const double & | alt_time_cst | ||
) |
Constructor.
Create a simulation model based on the initial velocity state and the vehicle model parameters. 4 DOF simulation with altitude dynamics.
[in] | vel | - initial velocity vector |
[in] | alt_time_cst | - altitude time constant |
References resetModel(), and setVelocity().
DUNE::Simulation::UAVSimulation::UAVSimulation | ( | const DUNE::Math::Matrix & | vel, |
const double & | bank_time_cst, | ||
const double & | speed_time_cst | ||
) |
Constructor.
Create a simulation model based on the initial velocity state and the vehicle model parameters. 4 DOF simulation with bank and speed dynamics.
[in] | vel | - initial velocity vector |
[in] | bank_time_cst | - bank angle time constant |
[in] | speed_time_cst | - airspeed time constant |
References resetModel(), and setVelocity().
DUNE::Simulation::UAVSimulation::UAVSimulation | ( | const DUNE::Math::Matrix & | vel, |
const double & | bank_time_cst, | ||
const double & | speed_time_cst, | ||
const double & | alt_time_cst | ||
) |
Constructor.
Create a simulation model based on the initial velocity state and the vehicle model parameters. 5 DOF simulation with bank, speed, and altitude dynamics.
[in] | vel | - initial velocity vector |
[in] | bank_time_cst | - bank angle time constant |
[in] | speed_time_cst | - airspeed time constant |
[in] | alt_time_cst | - altitude time constant |
References resetModel(), and setVelocity().
DUNE::Simulation::UAVSimulation::UAVSimulation | ( | const DUNE::Math::Matrix & | vel, |
const double & | bank_time_cst, | ||
const double & | speed_time_cst, | ||
const double & | airspeed_cmd, | ||
const double & | bank_cmd | ||
) |
Constructor.
Create a simulation model based on the initial velocity state, the vehicle model parameters, and initial commands. 4 DOF simulation with bank and speed dynamics.
[in] | vel | - initial velocity vector |
[in] | bank_time_cst | - bank angle time constant |
[in] | speed_time_cst | - airspeed time constant |
[in] | airspeed_cmd | - applied airspeed command |
[in] | bank_cmd | - applied bank command |
References m_airspeed_cmd, m_bank_cmd, resetModel(), and setVelocity().
DUNE::Simulation::UAVSimulation::UAVSimulation | ( | const DUNE::Math::Matrix & | pos, |
const DUNE::Math::Matrix & | vel | ||
) |
Constructor.
Create a simulation model based on the initial state. 3 DOF simulation.
[in] | pos | - initial position vector |
[in] | vel | - initial velocity vector |
References resetModel(), setPosition(), and setVelocity().
DUNE::Simulation::UAVSimulation::UAVSimulation | ( | const DUNE::Math::Matrix & | pos, |
const DUNE::Math::Matrix & | vel, | ||
const double & | alt_time_cst | ||
) |
Constructor.
Create a simulation model based on the initial state and the vehicle model parameters. 4 DOF simulation with altitude dynamics.
[in] | pos | - initial position vector |
[in] | vel | - initial velocity vector |
[in] | alt_time_cst | - altitude time constant |
References resetModel(), setPosition(), and setVelocity().
DUNE::Simulation::UAVSimulation::UAVSimulation | ( | const DUNE::Math::Matrix & | pos, |
const DUNE::Math::Matrix & | vel, | ||
const double & | bank_time_cst, | ||
const double & | speed_time_cst | ||
) |
Constructor.
Create a simulation model based on the initial state and the vehicle model parameters. 4 DOF simulation with bank and speed dynamics.
[in] | pos | - initial position vector |
[in] | vel | - initial velocity vector |
[in] | bank_time_cst | - bank angle time constant |
[in] | speed_time_cst | - airspeed time constant |
References resetModel(), setPosition(), and setVelocity().
DUNE::Simulation::UAVSimulation::UAVSimulation | ( | const DUNE::Math::Matrix & | pos, |
const DUNE::Math::Matrix & | vel, | ||
const double & | bank_time_cst, | ||
const double & | speed_time_cst, | ||
const double & | alt_time_cst | ||
) |
Constructor.
Create a simulation model based on the initial state and the vehicle model parameters. 5 DOF simulation with bank, speed, and altitude dynamics.
[in] | pos | - initial position vector |
[in] | vel | - initial velocity vector |
[in] | bank_time_cst | - bank angle time constant |
[in] | speed_time_cst | - airspeed time constant |
[in] | alt_time_cst | - altitude time constant |
References resetModel(), setPosition(), and setVelocity().
DUNE::Simulation::UAVSimulation::UAVSimulation | ( | const DUNE::Math::Matrix & | pos, |
const DUNE::Math::Matrix & | vel, | ||
const double & | bank_time_cst, | ||
const double & | speed_time_cst, | ||
const double & | airspeed_cmd, | ||
const double & | bank_cmd | ||
) |
Constructor.
Create a simulation model based on the initial state, the vehicle model parameters, and initial commands. 4 DOF simulation with bank and speed dynamics.
[in] | pos | - initial position vector |
[in] | vel | - initial velocity vector |
[in] | bank_time_cst | - bank angle time constant |
[in] | speed_time_cst | - airspeed time constant |
[in] | airspeed_cmd | - applied airspeed command |
[in] | bank_cmd | - applied bank command |
References m_airspeed_cmd, m_bank_cmd, resetModel(), setPosition(), and setVelocity().
DUNE::Simulation::UAVSimulation::UAVSimulation | ( | const DUNE::Math::Matrix & | pos, |
const DUNE::Math::Matrix & | vel, | ||
const double & | bank_time_cst, | ||
const double & | speed_time_cst, | ||
const double & | alt_time_cst, | ||
const double & | airspeed_cmd, | ||
const double & | bank_cmd, | ||
const double & | altitude_cmd | ||
) |
Constructor.
Create a simulation model based on the initial state, the vehicle model parameters, and initial commands. 5 DOF simulation with bank, speed, and altitude dynamics.
[in] | pos | - initial position vector |
[in] | vel | - initial velocity vector |
[in] | bank_time_cst | - bank angle time constant |
[in] | speed_time_cst | - airspeed time constant |
[in] | alt_time_cst | - altitude time constant |
[in] | airspeed_cmd | - applied airspeed command |
[in] | bank_cmd | - applied bank command |
[in] | altitude_cmd | - applied altitude command |
References m_airspeed_cmd, m_altitude_cmd, m_bank_cmd, resetModel(), setPosition(), and setVelocity().
void DUNE::Simulation::UAVSimulation::command | ( | const double & | bank_cmd | ) |
This method sets the vehicle control commands.
[in] | bank_cmd | - applied bank command |
References m_bank_cmd.
Referenced by Maneuver::VehicleFormation::FormCollAvoid::Task::consume(), Simulators::UAV::Task::onResourceAcquisition(), Maneuver::VehicleFormation::FormCollAvoid::Task::onResourceAcquisition(), and Maneuver::VehicleFormation::FormCollAvoid::Task::teamPeriodicUpdate().
void DUNE::Simulation::UAVSimulation::command | ( | const double & | bank_cmd, |
const double & | airspeed_cmd | ||
) |
This method sets the vehicle control commands.
[in] | bank_cmd | - applied bank command |
[in] | airspeed_cmd | - applied airspeed command |
References m_airspeed_cmd, and m_bank_cmd.
void DUNE::Simulation::UAVSimulation::command | ( | const double & | bank_cmd, |
const double & | airspeed_cmd, | ||
const double & | altitude_cmd | ||
) |
This method sets the vehicle control commands.
[in] | bank_cmd | - applied bank command |
[in] | airspeed_cmd | - applied airspeed command |
[in] | altitude_cmd | - applied altitude command |
References m_airspeed_cmd, m_altitude_cmd, and m_bank_cmd.
double DUNE::Simulation::UAVSimulation::getAirspeed | ( | void | ) |
This method gets the vehicle state.
DUNE::Math::Matrix DUNE::Simulation::UAVSimulation::getPosition | ( | void | ) |
This method gets the vehicle state.
Referenced by Maneuver::VehicleFormation::FormCollAvoid::Task::setLeaderState(), Simulators::UAV::Task::task(), Maneuver::VehicleFormation::FormCollAvoid::Task::task(), and Maneuver::VehicleFormation::FormCollAvoid::Task::teamUnevenUpdate().
DUNE::Math::Matrix DUNE::Simulation::UAVSimulation::getVelocity | ( | void | ) |
This method gets the vehicle state.
Referenced by Simulators::UAV::Task::task(), Maneuver::VehicleFormation::FormCollAvoid::Task::task(), and Maneuver::VehicleFormation::FormCollAvoid::Task::teamUnevenUpdate().
void DUNE::Simulation::UAVSimulation::resetModel | ( | void | ) |
This method resets all the vehicle model variables.
References m_airspeed_cmd, m_altitude_cmd, m_bank_cmd, m_g, m_wind, and DUNE::Math::Matrix.
Referenced by UAVSimulation().
void DUNE::Simulation::UAVSimulation::setAccelLim | ( | const double & | lon_accel_lim | ) |
This method sets the vehicle model longitudinal acceleration operation constraint.
[in] | lon_accel_lim | - longitudinal acceleration limit |
Referenced by Simulators::UAV::Task::onResourceAcquisition().
void DUNE::Simulation::UAVSimulation::setBankRateLim | ( | const double & | bank_rate_lim | ) |
This method sets the vehicle model bank rate operation constraint.
[in] | bank_rate_lim | - bank rate limit |
Referenced by Simulators::UAV::Task::onResourceAcquisition().
void DUNE::Simulation::UAVSimulation::setCtrl | ( | const double & | bank_time_cst, |
const double & | speed_time_cst | ||
) |
This method sets the vehicle model control parameters.
[in] | bank_time_cst | - bank angle time constant |
[in] | speed_time_cst | - airspeed time constant |
void DUNE::Simulation::UAVSimulation::setCtrl | ( | const double & | bank_time_cst, |
const double & | speed_time_cst, | ||
const double & | alt_time_cst | ||
) |
This method sets the vehicle model control parameters.
[in] | bank_time_cst | - bank angle time constant |
[in] | speed_time_cst | - airspeed time constant |
[in] | alt_time_cst | - altitude time constant |
void DUNE::Simulation::UAVSimulation::setPosition | ( | const DUNE::Math::Matrix & | pos | ) |
This method sets the vehicle state.
[in] | pos | - new position vector |
References DUNE::Math::Matrix::rows(), and DUNE::Math::Matrix::set().
Referenced by Simulators::UAV::Task::consume(), Maneuver::VehicleFormation::FormCollAvoid::Task::consume(), Maneuver::VehicleFormation::FormCollAvoid::Task::setLeaderState(), and UAVSimulation().
void DUNE::Simulation::UAVSimulation::setVelocity | ( | const DUNE::Math::Matrix & | vel | ) |
This method sets the vehicle state.
[in] | vel | - new velocity vector |
References DUNE::Math::Matrix::rows(), and DUNE::Math::Matrix::set().
Referenced by Maneuver::VehicleFormation::FormCollAvoid::Task::consume(), Maneuver::VehicleFormation::FormCollAvoid::Task::setLeaderState(), and UAVSimulation().
void DUNE::Simulation::UAVSimulation::setVertSlopeLim | ( | const double & | vert_slope_lim | ) |
This method sets the vehicle model vertical slope operation constraint.
[in] | vert_slope_lim | - vertical slope limit |
Referenced by Simulators::UAV::Task::onResourceAcquisition().
UAVSimulation DUNE::Simulation::UAVSimulation::update | ( | const double & | timestep | ) |
This method updates the simulated state with the defined time step.
[in] | timestep | - time step for the update |
References m_sim_type.
Referenced by Simulators::UAV::Task::task(), Maneuver::VehicleFormation::FormCollAvoid::Task::task(), Maneuver::VehicleFormation::FormCollAvoid::Task::teamPeriodicUpdate(), Maneuver::VehicleFormation::FormCollAvoid::Task::teamUnevenUpdate(), and update().
UAVSimulation DUNE::Simulation::UAVSimulation::update | ( | const double & | timestep, |
const double & | bank_cmd | ||
) |
This method updates the simulated state with the defined time step and controls.
[in] | timestep | - time step for the update |
[in] | bank_cmd | - applied bank command |
References m_bank_cmd, and update().
UAVSimulation DUNE::Simulation::UAVSimulation::update | ( | const double & | timestep, |
const double & | bank_cmd, | ||
const double & | airspeed_cmd | ||
) |
This method updates the simulated state with the defined time step and controls.
[in] | timestep | - time step for the update |
[in] | bank_cmd | - applied bank command |
[in] | airspeed_cmd | - applied airspeed command |
References m_airspeed_cmd, m_bank_cmd, and update().
UAVSimulation DUNE::Simulation::UAVSimulation::update | ( | const double & | timestep, |
const double & | bank_cmd, | ||
const double & | airspeed_cmd, | ||
const double & | altitude_cmd | ||
) |
This method updates the simulated state with the defined time step and controls.
[in] | timestep | - time step for the update |
[in] | bank_cmd | - applied bank command |
[in] | airspeed_cmd | - applied airspeed command |
[in] | altitude_cmd | - applied altitude command |
References m_airspeed_cmd, m_altitude_cmd, m_bank_cmd, and update().
double DUNE::Simulation::UAVSimulation::m_airspeed_cmd |
Referenced by command(), Simulators::UAV::Task::consume(), Maneuver::VehicleFormation::FormCollAvoid::Task::consume(), resetModel(), UAVSimulation(), and update().
double DUNE::Simulation::UAVSimulation::m_altitude_cmd |
Referenced by command(), Simulators::UAV::Task::consume(), resetModel(), UAVSimulation(), and update().
double DUNE::Simulation::UAVSimulation::m_bank_cmd |
Control commands.
Referenced by command(), Simulators::UAV::Task::consume(), Maneuver::VehicleFormation::FormCollAvoid::Task::consume(), resetModel(), UAVSimulation(), and update().
double DUNE::Simulation::UAVSimulation::m_g |
Gravity acceleration.
Referenced by resetModel(), and UAVSimulation().
std::string DUNE::Simulation::UAVSimulation::m_sim_type |
DUNE::Math::Matrix DUNE::Simulation::UAVSimulation::m_wind |
Wind state vector.
Referenced by resetModel(), Maneuver::VehicleFormation::FormCollAvoid::Task::setLeaderState(), Simulators::UAV::Task::task(), Maneuver::VehicleFormation::FormCollAvoid::Task::task(), and UAVSimulation().