13 #ifndef KOBUKI_DIFF_DRIVE_HPP_ 14 #define KOBUKI_DIFF_DRIVE_HPP_ 26 #include "../macros.hpp" 42 void update(
const uint16_t &time_stamp,
43 const uint16_t &left_encoder,
44 const uint16_t &right_encoder,
46 ecl::linear_algebra::Vector3d &pose_update_rates);
48 void getWheelJointStates(
double &wheel_left_angle,
double &wheel_left_angle_rate,
49 double &wheel_right_angle,
double &wheel_right_angle_rate);
50 void setVelocityCommands(
const double &vx,
const double &wz);
51 void velocityCommands(
const double &vx,
const double &wz);
52 void velocityCommands(
const short &cmd_speed,
const short &cmd_radius);
59 std::vector<short> velocityCommands();
60 std::vector<double> pointVelocity()
const;
88 short bound(
const double &value);
ecl::Mutex velocity_mutex
void velocityCommands(const std::vector< short > &cmd)
std::vector< double > point_velocity
void velocityCommands(const std::vector< double > &cmd)
double wheel_bias() const
mobile_robot::DifferentialDriveKinematics Kinematics
ecl::DifferentialDrive::Kinematics diff_drive_kinematics
const ecl::DifferentialDrive::Kinematics & kinematics()
unsigned short last_timestamp
unsigned short last_tick_right
double last_velocity_right