Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
dwb_plugins::KinematicParameters Class Reference

A dynamically reconfigurable class containing one representation of the robot's kinematics. More...

#include <kinematic_parameters.h>

Public Types

using Ptr = std::shared_ptr< KinematicParameters >
 

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. More...
 
 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_
 

Detailed Description

A dynamically reconfigurable class containing one representation of the robot's kinematics.

Definition at line 50 of file kinematic_parameters.h.

Member Typedef Documentation

Definition at line 92 of file kinematic_parameters.h.

Constructor & Destructor Documentation

dwb_plugins::KinematicParameters::KinematicParameters ( )

Definition at line 64 of file kinematic_parameters.cpp.

Member Function Documentation

double dwb_plugins::KinematicParameters::getAccTheta ( )
inline

Definition at line 70 of file kinematic_parameters.h.

double dwb_plugins::KinematicParameters::getAccX ( )
inline

Definition at line 58 of file kinematic_parameters.h.

double dwb_plugins::KinematicParameters::getAccY ( )
inline

Definition at line 63 of file kinematic_parameters.h.

double dwb_plugins::KinematicParameters::getDecelTheta ( )
inline

Definition at line 71 of file kinematic_parameters.h.

double dwb_plugins::KinematicParameters::getDecelX ( )
inline

Definition at line 59 of file kinematic_parameters.h.

double dwb_plugins::KinematicParameters::getDecelY ( )
inline

Definition at line 64 of file kinematic_parameters.h.

double dwb_plugins::KinematicParameters::getMaxTheta ( )
inline

Definition at line 69 of file kinematic_parameters.h.

double dwb_plugins::KinematicParameters::getMaxX ( )
inline

Definition at line 57 of file kinematic_parameters.h.

double dwb_plugins::KinematicParameters::getMaxY ( )
inline

Definition at line 62 of file kinematic_parameters.h.

double dwb_plugins::KinematicParameters::getMinSpeedTheta ( )
inline

Definition at line 72 of file kinematic_parameters.h.

double dwb_plugins::KinematicParameters::getMinSpeedXY ( )
inline

Definition at line 66 of file kinematic_parameters.h.

double dwb_plugins::KinematicParameters::getMinTheta ( )
inline

Definition at line 68 of file kinematic_parameters.h.

double dwb_plugins::KinematicParameters::getMinX ( )
inline

Definition at line 56 of file kinematic_parameters.h.

double dwb_plugins::KinematicParameters::getMinY ( )
inline

Definition at line 61 of file kinematic_parameters.h.

void dwb_plugins::KinematicParameters::initialize ( const ros::NodeHandle nh)

Definition at line 74 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.

Returns
True if the magnitude hypot(x,y) and theta are within the robot's absolute limits

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 116 of file kinematic_parameters.cpp.

void dwb_plugins::KinematicParameters::reconfigureCB ( KinematicParamsConfig &  config,
uint32_t  level 
)
protected

Definition at line 94 of file kinematic_parameters.cpp.

Member Data Documentation

double dwb_plugins::KinematicParameters::acc_lim_theta_
protected

Definition at line 101 of file kinematic_parameters.h.

double dwb_plugins::KinematicParameters::acc_lim_x_
protected

Definition at line 101 of file kinematic_parameters.h.

double dwb_plugins::KinematicParameters::acc_lim_y_
protected

Definition at line 101 of file kinematic_parameters.h.

double dwb_plugins::KinematicParameters::decel_lim_theta_
protected

Definition at line 102 of file kinematic_parameters.h.

double dwb_plugins::KinematicParameters::decel_lim_x_
protected

Definition at line 102 of file kinematic_parameters.h.

double dwb_plugins::KinematicParameters::decel_lim_y_
protected

Definition at line 102 of file kinematic_parameters.h.

std::shared_ptr<dynamic_reconfigure::Server<KinematicParamsConfig> > dwb_plugins::KinematicParameters::dsrv_
protected

Definition at line 108 of file kinematic_parameters.h.

double dwb_plugins::KinematicParameters::max_speed_xy_
protected

Definition at line 98 of file kinematic_parameters.h.

double dwb_plugins::KinematicParameters::max_speed_xy_sq_
protected

Definition at line 105 of file kinematic_parameters.h.

double dwb_plugins::KinematicParameters::max_vel_theta_
protected

Definition at line 96 of file kinematic_parameters.h.

double dwb_plugins::KinematicParameters::max_vel_x_
protected

Definition at line 96 of file kinematic_parameters.h.

double dwb_plugins::KinematicParameters::max_vel_y_
protected

Definition at line 96 of file kinematic_parameters.h.

double dwb_plugins::KinematicParameters::min_speed_theta_
protected

Definition at line 99 of file kinematic_parameters.h.

double dwb_plugins::KinematicParameters::min_speed_xy_
protected

Definition at line 98 of file kinematic_parameters.h.

double dwb_plugins::KinematicParameters::min_speed_xy_sq_
protected

Definition at line 105 of file kinematic_parameters.h.

double dwb_plugins::KinematicParameters::min_vel_x_
protected

Definition at line 95 of file kinematic_parameters.h.

double dwb_plugins::KinematicParameters::min_vel_y_
protected

Definition at line 95 of file kinematic_parameters.h.


The documentation for this class was generated from the following files:


dwb_plugins
Author(s):
autogenerated on Sun Jan 10 2021 04:08:37