13 #ifndef XBOT_DIFF_DRIVE_HPP_ 14 #define XBOT_DIFF_DRIVE_HPP_ 23 #include <ecl/mobile_robot.hpp> 24 #include <ecl/threads/mutex.hpp> 25 #include "../macros.hpp" 41 void update(
const unsigned int &time_stamp,
42 const uint16_t &left_encoder,
43 const uint16_t &right_encoder,
45 ecl::linear_algebra::Vector3d &pose_update_rates);
47 void getWheelJointStates(
float &wheel_left_angle,
float &wheel_left_angle_rate,
48 float &wheel_right_angle,
float &wheel_right_angle_rate);
49 void setVelocityCommands(
const float &vx,
const float &wz);
50 void velocityCommands(
const float &vx,
const float &wz);
56 std::vector<float> velocityCommands();
57 std::vector<float> pointVelocity()
const;
85 short bound(
const float &value);
std::vector< float > point_velocity
unsigned int last_timestamp
unsigned short last_tick_right
ecl::DifferentialDrive::Kinematics diff_drive_kinematics
mobile_robot::DifferentialDriveKinematics Kinematics
void velocityCommands(const std::vector< float > &cmd)
float last_velocity_right
ecl::Mutex velocity_mutex
const ecl::DifferentialDrive::Kinematics & kinematics()