Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
MultirotorDynamics Class Referenceabstract

#include <multirotor.hpp>

Inheritance diagram for MultirotorDynamics:
Inheritance graph
[legend]

Public Member Functions

void getIMUMeasurement (Eigen::Vector3d &accOutput, Eigen::Vector3d &gyroOutput) override
 
bool getMotorsRpm (std::vector< double > &motorsRpm) override
 
Eigen::Vector3d getVehicleAirspeed () const override
 
Eigen::Vector3d getVehicleAngularVelocity (void) const override
 
Eigen::Quaterniond getVehicleAttitude () const override
 
Eigen::Vector3d getVehiclePosition () const override
 
Eigen::Vector3d getVehicleVelocity (void) const override
 
int8_t init () override
 Use rosparam here to initialize sim. More...
 
 MultirotorDynamics ()=default
 
void process (double dt_secs, const std::vector< double > &setpoint) override
 
void setInitialPosition (const Eigen::Vector3d &position, const Eigen::Quaterniond &attitude) override
 
 ~MultirotorDynamics ()=default
 
- Public Member Functions inherited from UavDynamicsSimBase
virtual int8_t calibrate (SimMode_t calibrationType)
 
virtual void land ()
 
virtual void setWindParameter (Eigen::Vector3d windMeanVelocityNED, double wind_velocityVariance)
 
 UavDynamicsSimBase ()=default
 
virtual ~UavDynamicsSimBase ()=default
 

Protected Member Functions

virtual void initStaticMotorTransform (double momentArm)=0
 Set motor frames. More...
 
virtual std::vector< double > mapCmdActuator (std::vector< double > cmd) const =0
 Convert actuator indexes from PX4 notation to internal Flightgoggles notation. More...
 

Protected Attributes

std::unique_ptr< MulticopterDynamicsSimmulticopterSim_
 
uint8_t number_of_motors
 

Additional Inherited Members

- Public Types inherited from UavDynamicsSimBase
enum  SimMode_t {
  SimMode_t::NORMAL = 0, SimMode_t::MAG_1_NORMAL = 1, SimMode_t::MAG_2_OVERTURNED = 2, SimMode_t::MAG_3_HEAD_DOWN = 3,
  SimMode_t::MAG_4_HEAD_UP = 4, SimMode_t::MAG_5_TURNED_LEFT = 5, SimMode_t::MAG_6_TURNED_RIGHT = 6, SimMode_t::MAG_7_ARDUPILOT = 7,
  SimMode_t::MAG_8_ARDUPILOT = 8, SimMode_t::MAG_9_ARDUPILOT = 9, SimMode_t::ACC_1_NORMAL = 11, SimMode_t::ACC_2_OVERTURNED = 12,
  SimMode_t::ACC_3_HEAD_DOWN = 13, SimMode_t::ACC_4_HEAD_UP = 14, SimMode_t::ACC_5_TURNED_LEFT = 15, SimMode_t::ACC_6_TURNED_RIGHT = 16,
  SimMode_t::AIRSPEED = 21
}
 

Detailed Description

Definition at line 25 of file multirotor.hpp.

Constructor & Destructor Documentation

◆ MultirotorDynamics()

MultirotorDynamics::MultirotorDynamics ( )
default

◆ ~MultirotorDynamics()

MultirotorDynamics::~MultirotorDynamics ( )
default

Member Function Documentation

◆ getIMUMeasurement()

void MultirotorDynamics::getIMUMeasurement ( Eigen::Vector3d &  accOutput,
Eigen::Vector3d &  gyroOutput 
)
overridevirtual

Implements UavDynamicsSimBase.

Definition at line 140 of file multirotor.cpp.

◆ getMotorsRpm()

bool MultirotorDynamics::getMotorsRpm ( std::vector< double > &  motorsRpm)
overridevirtual

Reimplemented from UavDynamicsSimBase.

Definition at line 145 of file multirotor.cpp.

◆ getVehicleAirspeed()

Eigen::Vector3d MultirotorDynamics::getVehicleAirspeed ( ) const
overridevirtual

Implements UavDynamicsSimBase.

Definition at line 134 of file multirotor.cpp.

◆ getVehicleAngularVelocity()

Eigen::Vector3d MultirotorDynamics::getVehicleAngularVelocity ( void  ) const
overridevirtual

Implements UavDynamicsSimBase.

Definition at line 137 of file multirotor.cpp.

◆ getVehicleAttitude()

Eigen::Quaterniond MultirotorDynamics::getVehicleAttitude ( ) const
overridevirtual

Implements UavDynamicsSimBase.

Definition at line 128 of file multirotor.cpp.

◆ getVehiclePosition()

Eigen::Vector3d MultirotorDynamics::getVehiclePosition ( ) const
overridevirtual

Implements UavDynamicsSimBase.

Definition at line 125 of file multirotor.cpp.

◆ getVehicleVelocity()

Eigen::Vector3d MultirotorDynamics::getVehicleVelocity ( void  ) const
overridevirtual

Implements UavDynamicsSimBase.

Definition at line 131 of file multirotor.cpp.

◆ init()

int8_t MultirotorDynamics::init ( )
overridevirtual

Use rosparam here to initialize sim.

Returns
-1 if error occures and simulation can't start

Implements UavDynamicsSimBase.

Definition at line 42 of file multirotor.cpp.

◆ initStaticMotorTransform()

virtual void MultirotorDynamics::initStaticMotorTransform ( double  momentArm)
protectedpure virtual

Set motor frames.

Implemented in OctocopterDynamics, and QuadcopterDynamics.

◆ mapCmdActuator()

virtual std::vector<double> MultirotorDynamics::mapCmdActuator ( std::vector< double >  cmd) const
protectedpure virtual

Convert actuator indexes from PX4 notation to internal Flightgoggles notation.

Implemented in OctocopterDynamics, and QuadcopterDynamics.

◆ process()

void MultirotorDynamics::process ( double  dt_secs,
const std::vector< double > &  setpoint 
)
overridevirtual

Implements UavDynamicsSimBase.

Definition at line 120 of file multirotor.cpp.

◆ setInitialPosition()

void MultirotorDynamics::setInitialPosition ( const Eigen::Vector3d &  position,
const Eigen::Quaterniond &  attitude 
)
overridevirtual

Implements UavDynamicsSimBase.

Definition at line 115 of file multirotor.cpp.

Member Data Documentation

◆ multicopterSim_

std::unique_ptr<MulticopterDynamicsSim> MultirotorDynamics::multicopterSim_
protected

Definition at line 55 of file multirotor.hpp.

◆ number_of_motors

uint8_t MultirotorDynamics::number_of_motors
protected

Definition at line 56 of file multirotor.hpp.


The documentation for this class was generated from the following files:


inno_vtol_dynamics
Author(s): Roman Fedorenko, Dmitry Ponomarev, Ezra Tal, Winter Guerra
autogenerated on Mon Dec 9 2024 03:13:35