Public Member Functions | Private Member Functions | Private Attributes | List of all members
base_local_planner::LatchedStopRotateController Class Reference

#include <latched_stop_rotate_controller.h>

Public Member Functions

bool computeVelocityCommandsStopRotate (geometry_msgs::Twist &cmd_vel, Eigen::Vector3f acc_lim, double sim_period, LocalPlannerUtil *planner_util, OdometryHelperRos &odom_helper, tf::Stamped< tf::Pose > global_pose, boost::function< bool(Eigen::Vector3f pos, Eigen::Vector3f vel, Eigen::Vector3f vel_samples)> obstacle_check)
 
void initialize (const std::string &name="")
 
bool isGoalReached (LocalPlannerUtil *planner_util, OdometryHelperRos &odom_helper, tf::Stamped< tf::Pose > global_pose)
 
bool isPositionReached (LocalPlannerUtil *planner_util, tf::Stamped< tf::Pose > global_pose)
 
 LatchedStopRotateController ()
 
void resetLatching ()
 
bool rotateToGoal (const tf::Stamped< tf::Pose > &global_pose, const tf::Stamped< tf::Pose > &robot_vel, double goal_th, geometry_msgs::Twist &cmd_vel, Eigen::Vector3f acc_lim, double sim_period, base_local_planner::LocalPlannerLimits &limits, boost::function< bool(Eigen::Vector3f pos, Eigen::Vector3f vel, Eigen::Vector3f vel_samples)> obstacle_check)
 Once a goal position is reached... rotate to the goal orientation. More...
 
bool stopWithAccLimits (const tf::Stamped< tf::Pose > &global_pose, const tf::Stamped< tf::Pose > &robot_vel, geometry_msgs::Twist &cmd_vel, Eigen::Vector3f acc_lim, double sim_period, boost::function< bool(Eigen::Vector3f pos, Eigen::Vector3f vel, Eigen::Vector3f vel_samples)> obstacle_check)
 Stop the robot taking into account acceleration limits. More...
 
virtual ~LatchedStopRotateController ()
 

Private Member Functions

double sign (double x)
 

Private Attributes

bool latch_xy_goal_tolerance_
 
bool rotating_to_goal_
 
bool xy_tolerance_latch_
 

Detailed Description

Definition at line 22 of file latched_stop_rotate_controller.h.

Constructor & Destructor Documentation

base_local_planner::LatchedStopRotateController::LatchedStopRotateController ( )

Definition at line 22 of file latched_stop_rotate_controller.cpp.

base_local_planner::LatchedStopRotateController::~LatchedStopRotateController ( )
virtual

Definition at line 32 of file latched_stop_rotate_controller.cpp.

Member Function Documentation

bool base_local_planner::LatchedStopRotateController::computeVelocityCommandsStopRotate ( geometry_msgs::Twist &  cmd_vel,
Eigen::Vector3f  acc_lim,
double  sim_period,
LocalPlannerUtil planner_util,
OdometryHelperRos odom_helper,
tf::Stamped< tf::Pose global_pose,
boost::function< bool(Eigen::Vector3f pos, Eigen::Vector3f vel, Eigen::Vector3f vel_samples)>  obstacle_check 
)

Definition at line 200 of file latched_stop_rotate_controller.cpp.

void base_local_planner::LatchedStopRotateController::initialize ( const std::string &  name = "")

Definition at line 24 of file latched_stop_rotate_controller.cpp.

bool base_local_planner::LatchedStopRotateController::isGoalReached ( LocalPlannerUtil planner_util,
OdometryHelperRos odom_helper,
tf::Stamped< tf::Pose global_pose 
)

returns true if we have passed the goal position and have reached goal orientation. Meaning we might have overshot on the position beyond tolerance, yet still return true.

Definition at line 67 of file latched_stop_rotate_controller.cpp.

bool base_local_planner::LatchedStopRotateController::isPositionReached ( LocalPlannerUtil planner_util,
tf::Stamped< tf::Pose global_pose 
)

returns true if we have passed the goal position. Meaning we might have overshot on the position beyond tolerance, yet still return true. Also goal orientation might not yet be true

Definition at line 40 of file latched_stop_rotate_controller.cpp.

void base_local_planner::LatchedStopRotateController::resetLatching ( )
inline

Definition at line 36 of file latched_stop_rotate_controller.h.

bool base_local_planner::LatchedStopRotateController::rotateToGoal ( const tf::Stamped< tf::Pose > &  global_pose,
const tf::Stamped< tf::Pose > &  robot_vel,
double  goal_th,
geometry_msgs::Twist &  cmd_vel,
Eigen::Vector3f  acc_lim,
double  sim_period,
base_local_planner::LocalPlannerLimits limits,
boost::function< bool(Eigen::Vector3f pos, Eigen::Vector3f vel, Eigen::Vector3f vel_samples)>  obstacle_check 
)

Once a goal position is reached... rotate to the goal orientation.

Parameters
global_poseThe pose of the robot in the global frame
robot_velThe velocity of the robot
goal_thThe desired th value for the goal
cmd_velThe velocity commands to be filled
Returns
True if a valid trajectory was found, false otherwise

Definition at line 149 of file latched_stop_rotate_controller.cpp.

double base_local_planner::LatchedStopRotateController::sign ( double  x)
inlineprivate

Definition at line 86 of file latched_stop_rotate_controller.h.

bool base_local_planner::LatchedStopRotateController::stopWithAccLimits ( const tf::Stamped< tf::Pose > &  global_pose,
const tf::Stamped< tf::Pose > &  robot_vel,
geometry_msgs::Twist &  cmd_vel,
Eigen::Vector3f  acc_lim,
double  sim_period,
boost::function< bool(Eigen::Vector3f pos, Eigen::Vector3f vel, Eigen::Vector3f vel_samples)>  obstacle_check 
)

Stop the robot taking into account acceleration limits.

Parameters
global_poseThe pose of the robot in the global frame
robot_velThe velocity of the robot
cmd_velThe velocity commands to be filled
Returns
True if a valid trajectory was found, false otherwise

Definition at line 111 of file latched_stop_rotate_controller.cpp.

Member Data Documentation

bool base_local_planner::LatchedStopRotateController::latch_xy_goal_tolerance_
private

Definition at line 92 of file latched_stop_rotate_controller.h.

bool base_local_planner::LatchedStopRotateController::rotating_to_goal_
private

Definition at line 93 of file latched_stop_rotate_controller.h.

bool base_local_planner::LatchedStopRotateController::xy_tolerance_latch_
private

Definition at line 92 of file latched_stop_rotate_controller.h.


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


base_local_planner
Author(s): Eitan Marder-Eppstein, Eric Perko, contradict@gmail.com
autogenerated on Thu Jan 21 2021 04:05:49