DUNE: Uniform Navigational Environment  2.5.0
Control::ASV::HeadingAndSpeed::Task Struct Reference

Public Member Functions

 Task (const std::string &name, Tasks::Context &ctx)
 
void reset (void)
 
void onResourceInitialization (void)
 
void consume (const IMC::EstimatedState *msg)
 
void saturationAntiWindup (float thrust_inc, float ki_gain, float *thrust, float *err_integral)
 
void consume (const IMC::DesiredHeading *msg)
 
void consume (const IMC::DesiredSpeed *msg)
 
void consume (const IMC::ControlLoops *msg)
 
void onMain (void)
 

Public Attributes

float m_err_integral
 
float m_err_integralV
 
float m_err_derivative
 
float m_err_derivativeV
 
float m_prev_err_heading
 
float m_prev_err_vel
 
float m_dhead
 
float m_dspeed
 
uint8_t m_speed_units
 
float m_thrust_diff
 
float m_thrust_com
 
Delta m_last_estate
 
IMC::SetThrusterActuation m_motor [2]
 
uint32_t m_scope_ref
 
Arguments m_args
 

Constructor & Destructor Documentation

Member Function Documentation

void Control::ASV::HeadingAndSpeed::Task::consume ( const IMC::DesiredHeading *  msg)
inline

References m_dhead.

void Control::ASV::HeadingAndSpeed::Task::consume ( const IMC::DesiredSpeed *  msg)
inline

References m_dspeed, and m_speed_units.

void Control::ASV::HeadingAndSpeed::Task::consume ( const IMC::ControlLoops *  msg)
inline

References m_scope_ref, and reset().

void Control::ASV::HeadingAndSpeed::Task::onMain ( void  )
inline
void Control::ASV::HeadingAndSpeed::Task::onResourceInitialization ( void  )
inline

References reset().

void Control::ASV::HeadingAndSpeed::Task::reset ( void  )
inline
void Control::ASV::HeadingAndSpeed::Task::saturationAntiWindup ( float  thrust_inc,
float  ki_gain,
float *  thrust,
float *  err_integral 
)
inline

Member Data Documentation

Arguments Control::ASV::HeadingAndSpeed::Task::m_args

Referenced by consume(), saturationAntiWindup(), and Task().

float Control::ASV::HeadingAndSpeed::Task::m_dhead

Referenced by consume().

float Control::ASV::HeadingAndSpeed::Task::m_dspeed

Referenced by consume(), and reset().

float Control::ASV::HeadingAndSpeed::Task::m_err_derivative

Referenced by consume().

float Control::ASV::HeadingAndSpeed::Task::m_err_derivativeV

Referenced by consume().

float Control::ASV::HeadingAndSpeed::Task::m_err_integral

Referenced by consume(), and reset().

float Control::ASV::HeadingAndSpeed::Task::m_err_integralV

Referenced by consume().

Delta Control::ASV::HeadingAndSpeed::Task::m_last_estate

Referenced by consume().

IMC::SetThrusterActuation Control::ASV::HeadingAndSpeed::Task::m_motor[2]

Referenced by consume(), and reset().

float Control::ASV::HeadingAndSpeed::Task::m_prev_err_heading

Referenced by consume(), and reset().

float Control::ASV::HeadingAndSpeed::Task::m_prev_err_vel

Referenced by consume(), and reset().

uint32_t Control::ASV::HeadingAndSpeed::Task::m_scope_ref

Control loops last reference.

Referenced by consume().

uint8_t Control::ASV::HeadingAndSpeed::Task::m_speed_units

Referenced by consume().

float Control::ASV::HeadingAndSpeed::Task::m_thrust_com

Referenced by consume().

float Control::ASV::HeadingAndSpeed::Task::m_thrust_diff

Referenced by consume().

Collaboration diagram for Control::ASV::HeadingAndSpeed::Task:
Collaboration graph