#include <steering_pid.H>
Public Member Functions | |
virtual void | init () |
steering_pid_v2_t (const conf_t &conf) | |
bool | read_config (const conf_t &conf) |
void | steer (steering_data_t &steering, double steering_position, guide_data_t const &gd, heading_data_t const &heading_data, double speed_, bool forward, bool tight_path) |
Private Attributes | |
interp_table_t | m_kp |
double | m_ki |
interp_table_t | m_kd |
integral | pidIntegral |
double | m_error [2] |
double | m_tstamp [2] |
double | previous_steer |
double | max_turn |
steering_pid_v2_t::steering_pid_v2_t | ( | const conf_t & | conf | ) |
References init(), integral::initializeIntegral(), pidIntegral, and read_config().
virtual void cajun::steering_pid_v2_t::init | ( | ) | [inline, virtual] |
Reimplemented from cajun::base_steering_t.
References m_error, m_tstamp, and previous_steer.
Referenced by steering_pid_v2_t().
bool steering_pid_v2_t::read_config | ( | const conf_t & | conf | ) | [virtual] |
Reimplemented from cajun::base_steering_t.
References m_kd, m_ki, m_kp, max_turn, and cajun::base_steering_t::read_config().
Referenced by steering_pid_v2_t().
void steering_pid_v2_t::steer | ( | steering_data_t & | steering, | |
double | steering_position, | |||
guide_data_t const & | gd, | |||
heading_data_t const & | heading_data, | |||
double | speed_, | |||
bool | forward, | |||
bool | tight_path | |||
) | [virtual] |
Implements cajun::base_steering_t.
References integral::get_total_error(), m_error, m_kd, m_ki, m_kp, m_tstamp, max_turn, pidIntegral, previous_steer, and integral::pushPullValues().
double cajun::steering_pid_v2_t::m_error[2] [private] |
interp_table_t cajun::steering_pid_v2_t::m_kd [private] |
Referenced by read_config(), and steer().
double cajun::steering_pid_v2_t::m_ki [private] |
Referenced by read_config(), and steer().
interp_table_t cajun::steering_pid_v2_t::m_kp [private] |
Referenced by read_config(), and steer().
double cajun::steering_pid_v2_t::m_tstamp[2] [private] |
double cajun::steering_pid_v2_t::max_turn [private] |
Referenced by read_config(), and steer().
Referenced by steer(), and steering_pid_v2_t().
double cajun::steering_pid_v2_t::previous_steer [private] |