Classes | Public Member Functions | Private Member Functions | Private Attributes | List of all members
trajectory_tracker::TrackerNode Class Reference

Classes

struct  TrackingResult
 

Public Member Functions

void spin ()
 
 TrackerNode ()
 
 ~TrackerNode ()
 

Private Member Functions

void cbOdometry (const nav_msgs::Odometry::ConstPtr &)
 
void cbOdomTimeout (const ros::TimerEvent &)
 
void cbParameter (const TrajectoryTrackerConfig &config, const uint32_t)
 
template<typename MSG_TYPE >
void cbPath (const typename MSG_TYPE::ConstPtr &)
 
void cbSpeed (const std_msgs::Float32::ConstPtr &)
 
void cbTimer (const ros::TimerEvent &)
 
void control (const tf2::Stamped< tf2::Transform > &, const Eigen::Vector3d &, const double)
 
TrackingResult getTrackingResult (const tf2::Stamped< tf2::Transform > &, const Eigen::Vector3d &) const
 

Private Attributes

double acc_ [2]
 
double acc_toc_ [2]
 
bool allow_backward_
 
bool check_old_path_
 
double curv_forward_
 
double d_lim_
 
double d_stop_
 
double epsilon_
 
std::string frame_odom_
 
std::string frame_robot_
 
double gain_at_vel_
 
double goal_tolerance_ang_
 
double goal_tolerance_dist_
 
double hz_
 
bool is_path_updated_
 
double k_ [3]
 
double k_ang_rotation_
 
double k_avel_rotation_
 
bool limit_vel_by_avel_
 
double look_forward_
 
double max_dt_
 
double min_track_path_
 
ros::NodeHandle nh_
 
double no_pos_cntl_dist_
 
double odom_timeout_sec_
 
ros::Timer odom_timeout_timer_
 
dynamic_reconfigure::Server< TrajectoryTrackerConfig > parameter_server_
 
boost::recursive_mutex parameter_server_mutex_
 
trajectory_tracker::Path2D path_
 
std_msgs::Header path_header_
 
int path_step_
 
int path_step_done_
 
ros::NodeHandle pnh_
 
bool predict_odom_
 
ros::Time prev_odom_stamp_
 
ros::Publisher pub_status_
 
ros::Publisher pub_tracking_
 
ros::Publisher pub_vel_
 
double rotate_ang_
 
double stop_tolerance_ang_
 
double stop_tolerance_dist_
 
ros::Subscriber sub_odom_
 
ros::Subscriber sub_path_
 
ros::Subscriber sub_path_velocity_
 
ros::Subscriber sub_vel_
 
tf2_ros::Buffer tfbuf_
 
tf2_ros::TransformListener tfl_
 
double time_optimal_control_future_gain_
 
std::string topic_cmd_vel_
 
std::string topic_path_
 
bool use_odom_
 
bool use_time_optimal_control_
 
trajectory_tracker::VelAccLimitter v_lim_
 
double vel_ [2]
 
trajectory_tracker::VelAccLimitter w_lim_
 

Detailed Description

Definition at line 77 of file trajectory_tracker.cpp.

Constructor & Destructor Documentation

trajectory_tracker::TrackerNode::TrackerNode ( )

Definition at line 191 of file trajectory_tracker.cpp.

trajectory_tracker::TrackerNode::~TrackerNode ( )

Definition at line 268 of file trajectory_tracker.cpp.

Member Function Documentation

void trajectory_tracker::TrackerNode::cbOdometry ( const nav_msgs::Odometry::ConstPtr &  odom)
private

Definition at line 339 of file trajectory_tracker.cpp.

void trajectory_tracker::TrackerNode::cbOdomTimeout ( const ros::TimerEvent event)
private

Definition at line 420 of file trajectory_tracker.cpp.

void trajectory_tracker::TrackerNode::cbParameter ( const TrajectoryTrackerConfig &  config,
const uint32_t   
)
private

Definition at line 233 of file trajectory_tracker.cpp.

template<typename MSG_TYPE >
void trajectory_tracker::TrackerNode::cbPath ( const typename MSG_TYPE::ConstPtr &  msg)
private

Definition at line 294 of file trajectory_tracker.cpp.

void trajectory_tracker::TrackerNode::cbSpeed ( const std_msgs::Float32::ConstPtr &  msg)
private

Definition at line 276 of file trajectory_tracker.cpp.

void trajectory_tracker::TrackerNode::cbTimer ( const ros::TimerEvent event)
private

Definition at line 397 of file trajectory_tracker.cpp.

void trajectory_tracker::TrackerNode::control ( const tf2::Stamped< tf2::Transform > &  robot_to_odom,
const Eigen::Vector3d &  prediction_offset,
const double  dt 
)
private

Definition at line 449 of file trajectory_tracker.cpp.

TrackerNode::TrackingResult trajectory_tracker::TrackerNode::getTrackingResult ( const tf2::Stamped< tf2::Transform > &  robot_to_odom,
const Eigen::Vector3d &  prediction_offset 
) const
private

Definition at line 550 of file trajectory_tracker.cpp.

void trajectory_tracker::TrackerNode::spin ( )

Definition at line 439 of file trajectory_tracker.cpp.

Member Data Documentation

double trajectory_tracker::TrackerNode::acc_[2]
private

Definition at line 97 of file trajectory_tracker.cpp.

double trajectory_tracker::TrackerNode::acc_toc_[2]
private

Definition at line 98 of file trajectory_tracker.cpp.

bool trajectory_tracker::TrackerNode::allow_backward_
private

Definition at line 110 of file trajectory_tracker.cpp.

bool trajectory_tracker::TrackerNode::check_old_path_
private

Definition at line 112 of file trajectory_tracker.cpp.

double trajectory_tracker::TrackerNode::curv_forward_
private

Definition at line 91 of file trajectory_tracker.cpp.

double trajectory_tracker::TrackerNode::d_lim_
private

Definition at line 94 of file trajectory_tracker.cpp.

double trajectory_tracker::TrackerNode::d_stop_
private

Definition at line 95 of file trajectory_tracker.cpp.

double trajectory_tracker::TrackerNode::epsilon_
private

Definition at line 113 of file trajectory_tracker.cpp.

std::string trajectory_tracker::TrackerNode::frame_odom_
private

Definition at line 88 of file trajectory_tracker.cpp.

std::string trajectory_tracker::TrackerNode::frame_robot_
private

Definition at line 87 of file trajectory_tracker.cpp.

double trajectory_tracker::TrackerNode::gain_at_vel_
private

Definition at line 93 of file trajectory_tracker.cpp.

double trajectory_tracker::TrackerNode::goal_tolerance_ang_
private

Definition at line 103 of file trajectory_tracker.cpp.

double trajectory_tracker::TrackerNode::goal_tolerance_dist_
private

Definition at line 102 of file trajectory_tracker.cpp.

double trajectory_tracker::TrackerNode::hz_
private

Definition at line 89 of file trajectory_tracker.cpp.

bool trajectory_tracker::TrackerNode::is_path_updated_
private

Definition at line 136 of file trajectory_tracker.cpp.

double trajectory_tracker::TrackerNode::k_[3]
private

Definition at line 92 of file trajectory_tracker.cpp.

double trajectory_tracker::TrackerNode::k_ang_rotation_
private

Definition at line 117 of file trajectory_tracker.cpp.

double trajectory_tracker::TrackerNode::k_avel_rotation_
private

Definition at line 118 of file trajectory_tracker.cpp.

bool trajectory_tracker::TrackerNode::limit_vel_by_avel_
private

Definition at line 111 of file trajectory_tracker.cpp.

double trajectory_tracker::TrackerNode::look_forward_
private

Definition at line 90 of file trajectory_tracker.cpp.

double trajectory_tracker::TrackerNode::max_dt_
private

Definition at line 114 of file trajectory_tracker.cpp.

double trajectory_tracker::TrackerNode::min_track_path_
private

Definition at line 107 of file trajectory_tracker.cpp.

ros::NodeHandle trajectory_tracker::TrackerNode::nh_
private

Definition at line 127 of file trajectory_tracker.cpp.

double trajectory_tracker::TrackerNode::no_pos_cntl_dist_
private

Definition at line 106 of file trajectory_tracker.cpp.

double trajectory_tracker::TrackerNode::odom_timeout_sec_
private

Definition at line 132 of file trajectory_tracker.cpp.

ros::Timer trajectory_tracker::TrackerNode::odom_timeout_timer_
private

Definition at line 131 of file trajectory_tracker.cpp.

dynamic_reconfigure::Server<TrajectoryTrackerConfig> trajectory_tracker::TrackerNode::parameter_server_
private

Definition at line 139 of file trajectory_tracker.cpp.

boost::recursive_mutex trajectory_tracker::TrackerNode::parameter_server_mutex_
mutableprivate

Definition at line 138 of file trajectory_tracker.cpp.

trajectory_tracker::Path2D trajectory_tracker::TrackerNode::path_
private

Definition at line 134 of file trajectory_tracker.cpp.

std_msgs::Header trajectory_tracker::TrackerNode::path_header_
private

Definition at line 135 of file trajectory_tracker.cpp.

int trajectory_tracker::TrackerNode::path_step_
private

Definition at line 108 of file trajectory_tracker.cpp.

int trajectory_tracker::TrackerNode::path_step_done_
private

Definition at line 109 of file trajectory_tracker.cpp.

ros::NodeHandle trajectory_tracker::TrackerNode::pnh_
private

Definition at line 128 of file trajectory_tracker.cpp.

bool trajectory_tracker::TrackerNode::predict_odom_
private

Definition at line 142 of file trajectory_tracker.cpp.

ros::Time trajectory_tracker::TrackerNode::prev_odom_stamp_
private

Definition at line 143 of file trajectory_tracker.cpp.

ros::Publisher trajectory_tracker::TrackerNode::pub_status_
private

Definition at line 125 of file trajectory_tracker.cpp.

ros::Publisher trajectory_tracker::TrackerNode::pub_tracking_
private

Definition at line 126 of file trajectory_tracker.cpp.

ros::Publisher trajectory_tracker::TrackerNode::pub_vel_
private

Definition at line 124 of file trajectory_tracker.cpp.

double trajectory_tracker::TrackerNode::rotate_ang_
private

Definition at line 101 of file trajectory_tracker.cpp.

double trajectory_tracker::TrackerNode::stop_tolerance_ang_
private

Definition at line 105 of file trajectory_tracker.cpp.

double trajectory_tracker::TrackerNode::stop_tolerance_dist_
private

Definition at line 104 of file trajectory_tracker.cpp.

ros::Subscriber trajectory_tracker::TrackerNode::sub_odom_
private

Definition at line 123 of file trajectory_tracker.cpp.

ros::Subscriber trajectory_tracker::TrackerNode::sub_path_
private

Definition at line 120 of file trajectory_tracker.cpp.

ros::Subscriber trajectory_tracker::TrackerNode::sub_path_velocity_
private

Definition at line 121 of file trajectory_tracker.cpp.

ros::Subscriber trajectory_tracker::TrackerNode::sub_vel_
private

Definition at line 122 of file trajectory_tracker.cpp.

tf2_ros::Buffer trajectory_tracker::TrackerNode::tfbuf_
private

Definition at line 129 of file trajectory_tracker.cpp.

tf2_ros::TransformListener trajectory_tracker::TrackerNode::tfl_
private

Definition at line 130 of file trajectory_tracker.cpp.

double trajectory_tracker::TrackerNode::time_optimal_control_future_gain_
private

Definition at line 116 of file trajectory_tracker.cpp.

std::string trajectory_tracker::TrackerNode::topic_cmd_vel_
private

Definition at line 86 of file trajectory_tracker.cpp.

std::string trajectory_tracker::TrackerNode::topic_path_
private

Definition at line 85 of file trajectory_tracker.cpp.

bool trajectory_tracker::TrackerNode::use_odom_
private

Definition at line 141 of file trajectory_tracker.cpp.

bool trajectory_tracker::TrackerNode::use_time_optimal_control_
private

Definition at line 115 of file trajectory_tracker.cpp.

trajectory_tracker::VelAccLimitter trajectory_tracker::TrackerNode::v_lim_
private

Definition at line 99 of file trajectory_tracker.cpp.

double trajectory_tracker::TrackerNode::vel_[2]
private

Definition at line 96 of file trajectory_tracker.cpp.

trajectory_tracker::VelAccLimitter trajectory_tracker::TrackerNode::w_lim_
private

Definition at line 100 of file trajectory_tracker.cpp.


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


trajectory_tracker
Author(s): Atsushi Watanabe
autogenerated on Wed May 12 2021 02:20:40