#include <diff_drive.hpp>
|
| DiffDrive () |
|
void | getWheelJointStates (double &wheel_left_angle, double &wheel_left_angle_rate, double &wheel_right_angle, double &wheel_right_angle_rate) |
|
const ecl::DifferentialDrive::Kinematics & | kinematics () |
|
std::vector< double > | pointVelocity () const |
|
void | reset () |
|
void | setVelocityCommands (const double &vx, const double &wz) |
|
void | update (const uint16_t &time_stamp, const uint16_t &left_encoder, const uint16_t &right_encoder, ecl::LegacyPose2D< double > &pose_update, ecl::linear_algebra::Vector3d &pose_update_rates) |
| Updates the odometry from firmware stamps and encoders. More...
|
|
std::vector< short > | velocityCommands () |
|
void | velocityCommands (const double &vx, const double &wz) |
|
void | velocityCommands (const short &cmd_speed, const short &cmd_radius) |
|
void | velocityCommands (const std::vector< double > &cmd) |
|
void | velocityCommands (const std::vector< short > &cmd) |
|
double | wheel_bias () const |
|
|
short | bound (const double &value) |
|
Definition at line 44 of file diff_drive.hpp.
◆ DiffDrive()
kobuki::DiffDrive::DiffDrive |
( |
| ) |
|
◆ bound()
short kobuki::DiffDrive::bound |
( |
const double & |
value | ) |
|
|
private |
◆ getWheelJointStates()
void kobuki::DiffDrive::getWheelJointStates |
( |
double & |
wheel_left_angle, |
|
|
double & |
wheel_left_angle_rate, |
|
|
double & |
wheel_right_angle, |
|
|
double & |
wheel_right_angle_rate |
|
) |
| |
◆ kinematics()
◆ pointVelocity()
std::vector< double > kobuki::DiffDrive::pointVelocity |
( |
| ) |
const |
◆ reset()
void kobuki::DiffDrive::reset |
( |
| ) |
|
◆ setVelocityCommands()
void kobuki::DiffDrive::setVelocityCommands |
( |
const double & |
vx, |
|
|
const double & |
wz |
|
) |
| |
◆ update()
Updates the odometry from firmware stamps and encoders.
Really horrible - could do with an overhaul.
- Parameters
-
time_stamp | |
left_encoder | |
right_encoder | |
pose_update | |
pose_update_rates | |
Definition at line 59 of file diff_drive.cpp.
◆ velocityCommands() [1/5]
std::vector< short > kobuki::DiffDrive::velocityCommands |
( |
| ) |
|
◆ velocityCommands() [2/5]
void kobuki::DiffDrive::velocityCommands |
( |
const double & |
vx, |
|
|
const double & |
wz |
|
) |
| |
◆ velocityCommands() [3/5]
void kobuki::DiffDrive::velocityCommands |
( |
const short & |
cmd_speed, |
|
|
const short & |
cmd_radius |
|
) |
| |
◆ velocityCommands() [4/5]
void kobuki::DiffDrive::velocityCommands |
( |
const std::vector< double > & |
cmd | ) |
|
|
inline |
◆ velocityCommands() [5/5]
void kobuki::DiffDrive::velocityCommands |
( |
const std::vector< short > & |
cmd | ) |
|
|
inline |
◆ wheel_bias()
double kobuki::DiffDrive::wheel_bias |
( |
| ) |
const |
|
inline |
◆ bias
double kobuki::DiffDrive::bias |
|
private |
◆ diff_drive_kinematics
◆ imu_heading_offset
int kobuki::DiffDrive::imu_heading_offset |
|
private |
◆ last_diff_time
double kobuki::DiffDrive::last_diff_time |
|
private |
◆ last_rad_left
double kobuki::DiffDrive::last_rad_left |
|
private |
◆ last_rad_right
double kobuki::DiffDrive::last_rad_right |
|
private |
◆ last_tick_left
unsigned short kobuki::DiffDrive::last_tick_left |
|
private |
◆ last_tick_right
unsigned short kobuki::DiffDrive::last_tick_right |
|
private |
◆ last_timestamp
unsigned short kobuki::DiffDrive::last_timestamp |
|
private |
◆ last_velocity_left
double kobuki::DiffDrive::last_velocity_left |
|
private |
◆ last_velocity_right
double kobuki::DiffDrive::last_velocity_right |
|
private |
◆ point_velocity
std::vector<double> kobuki::DiffDrive::point_velocity |
|
private |
◆ radius
double kobuki::DiffDrive::radius |
|
private |
◆ speed
double kobuki::DiffDrive::speed |
|
private |
◆ state_mutex
ecl::Mutex kobuki::DiffDrive::state_mutex |
|
private |
◆ tick_to_rad
const double kobuki::DiffDrive::tick_to_rad |
|
private |
◆ velocity_mutex
ecl::Mutex kobuki::DiffDrive::velocity_mutex |
|
private |
◆ wheel_radius
double kobuki::DiffDrive::wheel_radius |
|
private |
The documentation for this class was generated from the following files: