#include <evarobot_driver.h>
Public Member Functions | |
void | ApplyVel (float f_left_wheel_velocity, float f_right_wheel_velocity) |
void | CallbackWheelVel (const im_msgs::WheelVel::ConstPtr &msg) |
int | CheckError () |
bool | CheckMotorCurrent () |
bool | CheckTimeout () |
void | Disable () |
void | Enable () |
im_msgs::Voltage | GetMotorVoltage () const |
IMDRIVER (double d_limit_voltage, float f_max_lin_vel, float f_max_ang_vel, float f_wheel_separation, float f_wheel_diameter, double d_frequency, unsigned int u_i_counts, double d_duty, int i_mode, boost::shared_ptr< IMGPIO > *m1_in, boost::shared_ptr< IMGPIO > *m2_in, IMGPIO *m1_en, IMGPIO *m2_en, IMADC *adc, ros::ServiceClient &client, double _timeout) | |
void | ProduceDiagnostics (diagnostic_updater::DiagnosticStatusWrapper &stat) |
void | UpdateParams () |
~IMDRIVER () | |
Private Attributes | |
IMADC * | adc |
bool | b_left_motor_error |
bool | b_motor_error |
bool | b_right_motor_error |
bool | b_timeout_err |
ros::ServiceClient | client |
ros::Time | curr_vel_time |
double | d_duty |
double | d_frequency |
double | d_limit_voltage |
double | d_timeout |
float | f_left_motor_voltage |
float | f_max_ang_vel |
float | f_max_lin_vel |
float | f_right_motor_voltage |
float | f_wheel_diameter |
float | f_wheel_separation |
int | i_const_count |
int | i_mode |
IMGPIO * | m1_en |
boost::shared_ptr< IMGPIO > * | m1_in |
IMGPIO * | m2_en |
boost::shared_ptr< IMGPIO > * | m2_in |
IMPWM * | pwm |
unsigned int | u_i_counts |
Definition at line 41 of file evarobot_driver.h.
IMDRIVER::IMDRIVER | ( | double | d_limit_voltage, |
float | f_max_lin_vel, | ||
float | f_max_ang_vel, | ||
float | f_wheel_separation, | ||
float | f_wheel_diameter, | ||
double | d_frequency, | ||
unsigned int | u_i_counts, | ||
double | d_duty, | ||
int | i_mode, | ||
boost::shared_ptr< IMGPIO > * | m1_in, | ||
boost::shared_ptr< IMGPIO > * | m2_in, | ||
IMGPIO * | m1_en, | ||
IMGPIO * | m2_en, | ||
IMADC * | adc, | ||
ros::ServiceClient & | client, | ||
double | _timeout | ||
) |
Definition at line 12 of file evarobot_driver.cpp.
Definition at line 70 of file evarobot_driver.cpp.
void IMDRIVER::ApplyVel | ( | float | f_left_wheel_velocity, |
float | f_right_wheel_velocity | ||
) |
Definition at line 113 of file evarobot_driver.cpp.
void IMDRIVER::CallbackWheelVel | ( | const im_msgs::WheelVel::ConstPtr & | msg | ) |
Definition at line 339 of file evarobot_driver.cpp.
int IMDRIVER::CheckError | ( | ) |
Definition at line 196 of file evarobot_driver.cpp.
bool IMDRIVER::CheckMotorCurrent | ( | ) |
Definition at line 228 of file evarobot_driver.cpp.
bool IMDRIVER::CheckTimeout | ( | ) |
Definition at line 311 of file evarobot_driver.cpp.
void IMDRIVER::Disable | ( | ) |
Definition at line 186 of file evarobot_driver.cpp.
void IMDRIVER::Enable | ( | ) |
Definition at line 174 of file evarobot_driver.cpp.
im_msgs::Voltage IMDRIVER::GetMotorVoltage | ( | ) | const |
Definition at line 219 of file evarobot_driver.cpp.
Definition at line 295 of file evarobot_driver.cpp.
void IMDRIVER::UpdateParams | ( | ) |
Definition at line 96 of file evarobot_driver.cpp.
IMADC* IMDRIVER::adc [private] |
Definition at line 84 of file evarobot_driver.h.
bool IMDRIVER::b_left_motor_error [private] |
Definition at line 101 of file evarobot_driver.h.
bool IMDRIVER::b_motor_error [private] |
Definition at line 101 of file evarobot_driver.h.
bool IMDRIVER::b_right_motor_error [private] |
Definition at line 101 of file evarobot_driver.h.
bool IMDRIVER::b_timeout_err [private] |
Definition at line 102 of file evarobot_driver.h.
ros::ServiceClient IMDRIVER::client [private] |
Definition at line 85 of file evarobot_driver.h.
ros::Time IMDRIVER::curr_vel_time [private] |
Definition at line 108 of file evarobot_driver.h.
double IMDRIVER::d_duty [private] |
Definition at line 96 of file evarobot_driver.h.
double IMDRIVER::d_frequency [private] |
Definition at line 95 of file evarobot_driver.h.
double IMDRIVER::d_limit_voltage [private] |
Definition at line 97 of file evarobot_driver.h.
double IMDRIVER::d_timeout [private] |
Definition at line 99 of file evarobot_driver.h.
float IMDRIVER::f_left_motor_voltage [private] |
Definition at line 92 of file evarobot_driver.h.
float IMDRIVER::f_max_ang_vel [private] |
Definition at line 88 of file evarobot_driver.h.
float IMDRIVER::f_max_lin_vel [private] |
Definition at line 87 of file evarobot_driver.h.
float IMDRIVER::f_right_motor_voltage [private] |
Definition at line 93 of file evarobot_driver.h.
float IMDRIVER::f_wheel_diameter [private] |
Definition at line 90 of file evarobot_driver.h.
float IMDRIVER::f_wheel_separation [private] |
Definition at line 89 of file evarobot_driver.h.
int IMDRIVER::i_const_count [private] |
Definition at line 106 of file evarobot_driver.h.
int IMDRIVER::i_mode [private] |
Definition at line 105 of file evarobot_driver.h.
IMGPIO* IMDRIVER::m1_en [private] |
Definition at line 81 of file evarobot_driver.h.
boost::shared_ptr< IMGPIO >* IMDRIVER::m1_in [private] |
Definition at line 79 of file evarobot_driver.h.
IMGPIO* IMDRIVER::m2_en [private] |
Definition at line 82 of file evarobot_driver.h.
boost::shared_ptr< IMGPIO >* IMDRIVER::m2_in [private] |
Definition at line 80 of file evarobot_driver.h.
IMPWM* IMDRIVER::pwm [private] |
Definition at line 78 of file evarobot_driver.h.
unsigned int IMDRIVER::u_i_counts [private] |
Definition at line 104 of file evarobot_driver.h.