Classes | Public Member Functions | Private Attributes | List of all members
hector_quadrotor_model::QuadrotorPropulsion Class Reference

#include <quadrotor_propulsion.h>

Classes

struct  PropulsionModel
 

Public Member Functions

void addCommandToQueue (const hector_uav_msgs::MotorCommandConstPtr &command)
 
void addPWMToQueue (const hector_uav_msgs::MotorPWMConstPtr &pwm)
 
bool configure (const ros::NodeHandle &param=ros::NodeHandle("~"))
 
void engage ()
 
void f (const double xin[4], const double uin[10], double dt, double y[14], double xpred[4]) const
 
const hector_uav_msgs::MotorStatus & getMotorStatus () const
 
const hector_uav_msgs::Supply & getSupply () const
 
const geometry_msgs::Wrench & getWrench () const
 
bool processQueue (const ros::Time &timestamp, const ros::Duration &tolerance=ros::Duration(), const ros::Duration &delay=ros::Duration(), const ros::WallDuration &wait=ros::WallDuration(), ros::CallbackQueue *callback_queue=0)
 
 QuadrotorPropulsion ()
 
void reset ()
 
void setInitialSupplyVoltage (double voltage)
 
void setTwist (const geometry_msgs::Twist &twist)
 
void setVoltage (const hector_uav_msgs::MotorPWM &command)
 
void shutdown ()
 
void update (double dt)
 
 ~QuadrotorPropulsion ()
 

Private Attributes

boost::condition command_condition_
 
std::queue< hector_uav_msgs::MotorPWMConstPtr > command_queue_
 
boost::mutex command_queue_mutex_
 
double initial_voltage_
 
ros::Time last_command_time_
 
hector_uav_msgs::MotorStatus motor_status_
 
boost::mutex mutex_
 
PropulsionModelpropulsion_model_
 
hector_uav_msgs::Supply supply_
 
geometry_msgs::Wrench wrench_
 

Detailed Description

Definition at line 51 of file quadrotor_propulsion.h.

Constructor & Destructor Documentation

hector_quadrotor_model::QuadrotorPropulsion::QuadrotorPropulsion ( )

Definition at line 83 of file quadrotor_propulsion.cpp.

hector_quadrotor_model::QuadrotorPropulsion::~QuadrotorPropulsion ( )

Definition at line 90 of file quadrotor_propulsion.cpp.

Member Function Documentation

void hector_quadrotor_model::QuadrotorPropulsion::addCommandToQueue ( const hector_uav_msgs::MotorCommandConstPtr &  command)

Definition at line 341 of file quadrotor_propulsion.cpp.

void hector_quadrotor_model::QuadrotorPropulsion::addPWMToQueue ( const hector_uav_msgs::MotorPWMConstPtr &  pwm)

Definition at line 358 of file quadrotor_propulsion.cpp.

bool hector_quadrotor_model::QuadrotorPropulsion::configure ( const ros::NodeHandle param = ros::NodeHandle("~"))

Definition at line 246 of file quadrotor_propulsion.cpp.

void hector_quadrotor_model::QuadrotorPropulsion::engage ( )

Definition at line 478 of file quadrotor_propulsion.cpp.

void hector_quadrotor_model::QuadrotorPropulsion::f ( const double  xin[4],
const double  uin[10],
double  dt,
double  y[14],
double  xpred[4] 
) const
inline

Definition at line 241 of file quadrotor_propulsion.cpp.

const hector_uav_msgs::MotorStatus& hector_quadrotor_model::QuadrotorPropulsion::getMotorStatus ( ) const
inline

Definition at line 69 of file quadrotor_propulsion.h.

const hector_uav_msgs::Supply& hector_quadrotor_model::QuadrotorPropulsion::getSupply ( ) const
inline

Definition at line 68 of file quadrotor_propulsion.h.

const geometry_msgs::Wrench& hector_quadrotor_model::QuadrotorPropulsion::getWrench ( ) const
inline

Definition at line 67 of file quadrotor_propulsion.h.

bool hector_quadrotor_model::QuadrotorPropulsion::processQueue ( const ros::Time timestamp,
const ros::Duration tolerance = ros::Duration(),
const ros::Duration delay = ros::Duration(),
const ros::WallDuration wait = ros::WallDuration(),
ros::CallbackQueue callback_queue = 0 
)

Definition at line 372 of file quadrotor_propulsion.cpp.

void hector_quadrotor_model::QuadrotorPropulsion::reset ( )

Definition at line 283 of file quadrotor_propulsion.cpp.

void hector_quadrotor_model::QuadrotorPropulsion::setInitialSupplyVoltage ( double  voltage)
inline

Definition at line 77 of file quadrotor_propulsion.h.

void hector_quadrotor_model::QuadrotorPropulsion::setTwist ( const geometry_msgs::Twist &  twist)

Definition at line 326 of file quadrotor_propulsion.cpp.

void hector_quadrotor_model::QuadrotorPropulsion::setVoltage ( const hector_uav_msgs::MotorPWM &  command)

Definition at line 308 of file quadrotor_propulsion.cpp.

void hector_quadrotor_model::QuadrotorPropulsion::shutdown ( )

Definition at line 483 of file quadrotor_propulsion.cpp.

void hector_quadrotor_model::QuadrotorPropulsion::update ( double  dt)

Definition at line 433 of file quadrotor_propulsion.cpp.

Member Data Documentation

boost::condition hector_quadrotor_model::QuadrotorPropulsion::command_condition_
private

Definition at line 89 of file quadrotor_propulsion.h.

std::queue<hector_uav_msgs::MotorPWMConstPtr> hector_quadrotor_model::QuadrotorPropulsion::command_queue_
private

Definition at line 87 of file quadrotor_propulsion.h.

boost::mutex hector_quadrotor_model::QuadrotorPropulsion::command_queue_mutex_
private

Definition at line 88 of file quadrotor_propulsion.h.

double hector_quadrotor_model::QuadrotorPropulsion::initial_voltage_
private

Definition at line 85 of file quadrotor_propulsion.h.

ros::Time hector_quadrotor_model::QuadrotorPropulsion::last_command_time_
private

Definition at line 83 of file quadrotor_propulsion.h.

hector_uav_msgs::MotorStatus hector_quadrotor_model::QuadrotorPropulsion::motor_status_
private

Definition at line 82 of file quadrotor_propulsion.h.

boost::mutex hector_quadrotor_model::QuadrotorPropulsion::mutex_
private

Definition at line 91 of file quadrotor_propulsion.h.

PropulsionModel* hector_quadrotor_model::QuadrotorPropulsion::propulsion_model_
private

Definition at line 93 of file quadrotor_propulsion.h.

hector_uav_msgs::Supply hector_quadrotor_model::QuadrotorPropulsion::supply_
private

Definition at line 81 of file quadrotor_propulsion.h.

geometry_msgs::Wrench hector_quadrotor_model::QuadrotorPropulsion::wrench_
private

Definition at line 80 of file quadrotor_propulsion.h.


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


hector_quadrotor_model
Author(s): Johannes Meyer , Alexander Sendobry
autogenerated on Mon Jun 10 2019 13:36:56