A dynamically reconfigurable class containing one representation of the robot's kinematics. More...
#include <kinematic_parameters.h>
Public Member Functions | |
double | getAccTheta () |
double | getAccX () |
double | getAccY () |
double | getDecelTheta () |
double | getDecelX () |
double | getDecelY () |
double | getMaxTheta () |
double | getMaxX () |
double | getMaxY () |
double | getMinSpeedTheta () |
double | getMinSpeedXY () |
double | getMinTheta () |
double | getMinX () |
double | getMinY () |
void | initialize (const ros::NodeHandle &nh) |
bool | isValidSpeed (double x, double y, double theta) |
Check to see whether the combined x/y/theta velocities are valid. | |
KinematicParameters () | |
Protected Member Functions | |
void | reconfigureCB (KinematicParamsConfig &config, uint32_t level) |
Protected Attributes | |
double | acc_lim_theta_ |
double | acc_lim_x_ |
double | acc_lim_y_ |
double | decel_lim_theta_ |
double | decel_lim_x_ |
double | decel_lim_y_ |
std::shared_ptr < dynamic_reconfigure::Server < KinematicParamsConfig > > | dsrv_ |
double | max_speed_xy_ |
double | max_speed_xy_sq_ |
double | max_vel_theta_ |
double | max_vel_x_ |
double | max_vel_y_ |
double | min_speed_theta_ |
double | min_speed_xy_ |
double | min_speed_xy_sq_ |
double | min_vel_x_ |
double | min_vel_y_ |
A dynamically reconfigurable class containing one representation of the robot's kinematics.
Definition at line 49 of file kinematic_parameters.h.
Definition at line 63 of file kinematic_parameters.cpp.
double dwb_plugins::KinematicParameters::getAccTheta | ( | ) | [inline] |
Definition at line 69 of file kinematic_parameters.h.
double dwb_plugins::KinematicParameters::getAccX | ( | ) | [inline] |
Definition at line 57 of file kinematic_parameters.h.
double dwb_plugins::KinematicParameters::getAccY | ( | ) | [inline] |
Definition at line 62 of file kinematic_parameters.h.
double dwb_plugins::KinematicParameters::getDecelTheta | ( | ) | [inline] |
Definition at line 70 of file kinematic_parameters.h.
double dwb_plugins::KinematicParameters::getDecelX | ( | ) | [inline] |
Definition at line 58 of file kinematic_parameters.h.
double dwb_plugins::KinematicParameters::getDecelY | ( | ) | [inline] |
Definition at line 63 of file kinematic_parameters.h.
double dwb_plugins::KinematicParameters::getMaxTheta | ( | ) | [inline] |
Definition at line 68 of file kinematic_parameters.h.
double dwb_plugins::KinematicParameters::getMaxX | ( | ) | [inline] |
Definition at line 56 of file kinematic_parameters.h.
double dwb_plugins::KinematicParameters::getMaxY | ( | ) | [inline] |
Definition at line 61 of file kinematic_parameters.h.
double dwb_plugins::KinematicParameters::getMinSpeedTheta | ( | ) | [inline] |
Definition at line 71 of file kinematic_parameters.h.
double dwb_plugins::KinematicParameters::getMinSpeedXY | ( | ) | [inline] |
Definition at line 65 of file kinematic_parameters.h.
double dwb_plugins::KinematicParameters::getMinTheta | ( | ) | [inline] |
Definition at line 67 of file kinematic_parameters.h.
double dwb_plugins::KinematicParameters::getMinX | ( | ) | [inline] |
Definition at line 55 of file kinematic_parameters.h.
double dwb_plugins::KinematicParameters::getMinY | ( | ) | [inline] |
Definition at line 60 of file kinematic_parameters.h.
void dwb_plugins::KinematicParameters::initialize | ( | const ros::NodeHandle & | nh | ) |
Definition at line 73 of file kinematic_parameters.cpp.
bool dwb_plugins::KinematicParameters::isValidSpeed | ( | double | x, |
double | y, | ||
double | theta | ||
) |
Check to see whether the combined x/y/theta velocities are valid.
This is based on three parameters: min_speed_xy, max_speed_xy and min_speed_theta. The speed is valid if 1) The combined magnitude hypot(x,y) is less than max_speed_xy (or max_speed_xy is negative) AND 2) min_speed_xy is negative or min_speed_theta is negative or hypot(x,y) is greater than min_speed_xy or fabs(theta) is greater than min_speed_theta.
In English, it makes sure the diagonal motion is not too fast, and that the velocity is moving in some meaningful direction.
In Latin, quod si motus sit signum quaerit et movere ieiunium et significantissime comprehendite.
Definition at line 115 of file kinematic_parameters.cpp.
void dwb_plugins::KinematicParameters::reconfigureCB | ( | KinematicParamsConfig & | config, |
uint32_t | level | ||
) | [protected] |
Definition at line 93 of file kinematic_parameters.cpp.
double dwb_plugins::KinematicParameters::acc_lim_theta_ [protected] |
Definition at line 100 of file kinematic_parameters.h.
double dwb_plugins::KinematicParameters::acc_lim_x_ [protected] |
Definition at line 100 of file kinematic_parameters.h.
double dwb_plugins::KinematicParameters::acc_lim_y_ [protected] |
Definition at line 100 of file kinematic_parameters.h.
double dwb_plugins::KinematicParameters::decel_lim_theta_ [protected] |
Definition at line 101 of file kinematic_parameters.h.
double dwb_plugins::KinematicParameters::decel_lim_x_ [protected] |
Definition at line 101 of file kinematic_parameters.h.
double dwb_plugins::KinematicParameters::decel_lim_y_ [protected] |
Definition at line 101 of file kinematic_parameters.h.
std::shared_ptr<dynamic_reconfigure::Server<KinematicParamsConfig> > dwb_plugins::KinematicParameters::dsrv_ [protected] |
Definition at line 107 of file kinematic_parameters.h.
double dwb_plugins::KinematicParameters::max_speed_xy_ [protected] |
Definition at line 97 of file kinematic_parameters.h.
double dwb_plugins::KinematicParameters::max_speed_xy_sq_ [protected] |
Definition at line 104 of file kinematic_parameters.h.
double dwb_plugins::KinematicParameters::max_vel_theta_ [protected] |
Definition at line 95 of file kinematic_parameters.h.
double dwb_plugins::KinematicParameters::max_vel_x_ [protected] |
Definition at line 95 of file kinematic_parameters.h.
double dwb_plugins::KinematicParameters::max_vel_y_ [protected] |
Definition at line 95 of file kinematic_parameters.h.
double dwb_plugins::KinematicParameters::min_speed_theta_ [protected] |
Definition at line 98 of file kinematic_parameters.h.
double dwb_plugins::KinematicParameters::min_speed_xy_ [protected] |
Definition at line 97 of file kinematic_parameters.h.
double dwb_plugins::KinematicParameters::min_speed_xy_sq_ [protected] |
Definition at line 104 of file kinematic_parameters.h.
double dwb_plugins::KinematicParameters::min_vel_x_ [protected] |
Definition at line 94 of file kinematic_parameters.h.
double dwb_plugins::KinematicParameters::min_vel_y_ [protected] |
Definition at line 94 of file kinematic_parameters.h.