| 
    SMACC
    
   | 
 
#include <backward_local_planner.h>


Public Member Functions | |
| BackwardLocalPlanner () | |
| virtual | ~BackwardLocalPlanner () | 
| virtual bool | computeVelocityCommands (geometry_msgs::Twist &cmd_vel) override | 
| Given the current position, orientation, and velocity of the robot: compute velocity commands to send to the robot mobile base.  More... | |
| virtual bool | isGoalReached () override | 
| Check if the goal pose has been achieved by the local planner.  More... | |
| virtual bool | setPlan (const std::vector< geometry_msgs::PoseStamped > &plan) override | 
| Set the plan that the local planner is following.  More... | |
| void | initialize (std::string name, tf::TransformListener *tf, costmap_2d::Costmap2DROS *costmapRos_) | 
| Constructs the local planner.  More... | |
| void | initialize (std::string name, tf2_ros::Buffer *tf, costmap_2d::Costmap2DROS *costmapRos_) | 
| void | initialize () | 
Private Member Functions | |
| void | reconfigCB (::backward_local_planner::BackwardLocalPlannerConfig &config, uint32_t level) | 
| bool | findInitialCarrotGoal (tf::Stamped< tf::Pose > &pose) | 
| bool | updateCarrotGoal (const tf::Stamped< tf::Pose > &tfpose) | 
| bool | resamplePrecisePlan () | 
| void | straightBackwardsAndPureSpinCmd (const tf::Stamped< tf::Pose > &tfpose, double vetta, double gamma, double alpha_error, double betta_error, double rho_error, geometry_msgs::Twist &cmd_vel) | 
| void | defaultBackwardCmd (const tf::Stamped< tf::Pose > &tfpose, double vetta, double gamma, double alpha_error, double betta_error, geometry_msgs::Twist &cmd_vel) | 
| void | publishGoalMarker (double x, double y, double phi) | 
| void | computeCurrentEuclideanAndAngularErrorsToCarrotGoal (const tf::Stamped< tf::Pose > &tfpose, double &dist, double &angular_error) | 
| bool | checkCurrentPoseInGoalRange (const tf::Stamped< tf::Pose > &tfpose, double angle_error, bool &inLinearGoal) | 
| bool | resetDivergenceDetection () | 
| bool | divergenceDetectionUpdate (const tf::Stamped< tf::Pose > &tfpose) | 
| bool | checkCarrotHalfPlainConstraint (const tf::Stamped< tf::Pose > &tfpose) | 
| void | generateTrajectory (const Eigen::Vector3f &pos, const Eigen::Vector3f &vel, float maxdist, float maxangle, float maxtime, float dt, std::vector< Eigen::Vector3f > &outtraj) | 
| Eigen::Vector3f | computeNewPositions (const Eigen::Vector3f &pos, const Eigen::Vector3f &vel, double dt) | 
Definition at line 23 of file backward_local_planner.h.
| cl_move_base_z::backward_local_planner::BackwardLocalPlanner::BackwardLocalPlanner | ( | ) | 
Definition at line 20 of file backward_local_planner.cpp.
      
  | 
  virtual | 
      
  | 
  private | 
Definition at line 212 of file backward_local_planner.cpp.
References backwardsPlanPath_, and currentCarrotPoseIndex_.
Referenced by computeVelocityCommands().

      
  | 
  private | 
Definition at line 240 of file backward_local_planner.cpp.
References backwardsPlanPath_, xy_goal_tolerance_, and yaw_goal_tolerance_.
Referenced by computeVelocityCommands().

      
  | 
  private | 
Definition at line 99 of file backward_local_planner.cpp.
References backwardsPlanPath_, and currentCarrotPoseIndex_.
Referenced by divergenceDetectionUpdate(), findInitialCarrotGoal(), and updateCarrotGoal().

      
  | 
  private | 
Definition at line 862 of file backward_local_planner.cpp.
Referenced by generateTrajectory().

      
  | 
  overridevirtual | 
Given the current position, orientation, and velocity of the robot: compute velocity commands to send to the robot mobile base.
| cmd_vel | Will be filled with the velocity command to be passed to the robot base | 
Definition at line 331 of file backward_local_planner.cpp.
References alpha_offset_, backwardsPlanPath_, betta_offset_, checkCarrotHalfPlainConstraint(), checkCurrentPoseInGoalRange(), costmapRos_, currentCarrotPoseIndex_, defaultBackwardCmd(), enable_obstacle_checking_, generateTrajectory(), goalReached_, inGoalPureSpinningState_, k_alpha_, k_betta_, k_rho_, max_angular_z_speed_, max_linear_x_speed_, cl_move_base_z::backward_local_planner::optionalRobotPose(), publishGoalMarker(), straightBackwardsAndPureSpinCmd(), straightBackwardsAndPureSpinningMode_, updateCarrotGoal(), waiting_, waitingStamp_, waitingTimeout_, and xy_goal_tolerance_.

      
  | 
  private | 
Definition at line 266 of file backward_local_planner.cpp.
Referenced by computeVelocityCommands().

      
  | 
  private | 
Definition at line 181 of file backward_local_planner.cpp.
References computeCurrentEuclideanAndAngularErrorsToCarrotGoal(), and divergenceDetectionLastCarrotLinearDistance_.
Referenced by setPlan().


      
  | 
  private | 
Definition at line 633 of file backward_local_planner.cpp.
References backwardsPlanPath_, carrot_angular_distance_, carrot_distance_, computeCurrentEuclideanAndAngularErrorsToCarrotGoal(), and currentCarrotPoseIndex_.
Referenced by setPlan().


      
  | 
  private | 
Definition at line 800 of file backward_local_planner.cpp.
References computeNewPositions().
Referenced by computeVelocityCommands().


| void cl_move_base_z::backward_local_planner::BackwardLocalPlanner::initialize | ( | ) | 
Definition at line 40 of file backward_local_planner.cpp.
References carrot_angular_distance_, carrot_distance_, currentCarrotPoseIndex_, enable_obstacle_checking_, f, goalMarkerPublisher_, k_alpha_, k_betta_, k_rho_, linear_mode_rho_error_threshold_, max_angular_z_speed_, max_linear_x_speed_, paramServer_, reconfigCB(), straightBackwardsAndPureSpinningMode_, waitingTimeout_, xy_goal_tolerance_, and yaw_goal_tolerance_.
Referenced by initialize().


| void cl_move_base_z::backward_local_planner::BackwardLocalPlanner::initialize | ( | std::string | name, | 
| tf2_ros::Buffer * | tf, | ||
| costmap_2d::Costmap2DROS * | costmapRos_ | ||
| ) | 
Definition at line 34 of file backward_local_planner.cpp.
References costmapRos_, and initialize().

| void cl_move_base_z::backward_local_planner::BackwardLocalPlanner::initialize | ( | std::string | name, | 
| tf::TransformListener * | tf, | ||
| costmap_2d::Costmap2DROS * | costmap_ros | ||
| ) | 
Constructs the local planner.
| name | The name to give this instance of the local planner | 
| tf | A pointer to a transform listener | 
| costmap_ros | The cost map to use for assigning costs to local plans | 
Definition at line 93 of file backward_local_planner.cpp.
References costmapRos_, and initialize().

      
  | 
  overridevirtual | 
Check if the goal pose has been achieved by the local planner.
Definition at line 627 of file backward_local_planner.cpp.
References goalReached_.
      
  | 
  private | 
Definition at line 876 of file backward_local_planner.cpp.
References costmapRos_, and goalMarkerPublisher_.
Referenced by computeVelocityCommands().

      
  | 
  private | 
Definition at line 590 of file backward_local_planner.cpp.
References carrot_angular_distance_, carrot_distance_, enable_obstacle_checking_, k_alpha_, k_betta_, k_rho_, straightBackwardsAndPureSpinningMode_, xy_goal_tolerance_, and yaw_goal_tolerance_.
Referenced by initialize().

      
  | 
  private | 
Definition at line 681 of file backward_local_planner.cpp.
References backwardsPlanPath_, carrot_angular_distance_, and carrot_distance_.
Referenced by setPlan().

      
  | 
  private | 
Definition at line 174 of file backward_local_planner.cpp.
References divergenceDetectionLastCarrotLinearDistance_.
Referenced by setPlan(), and updateCarrotGoal().

      
  | 
  overridevirtual | 
Set the plan that the local planner is following.
| plan | The plan to pass to the local planner | 
Definition at line 760 of file backward_local_planner.cpp.
References backwardsPlanPath_, costmapRos_, currentCarrotPoseIndex_, divergenceDetectionUpdate(), findInitialCarrotGoal(), goalReached_, inGoalPureSpinningState_, initialPureSpinningStage_, cl_move_base_z::backward_local_planner::optionalRobotPose(), resamplePrecisePlan(), and resetDivergenceDetection().

      
  | 
  private | 
pureSpinningCmd()
Definition at line 276 of file backward_local_planner.cpp.
References k_alpha_, k_betta_, k_rho_, linear_mode_rho_error_threshold_, and yaw_goal_tolerance_.
Referenced by computeVelocityCommands().

      
  | 
  private | 
Definition at line 131 of file backward_local_planner.cpp.
References backwardsPlanPath_, carrot_angular_distance_, carrot_distance_, computeCurrentEuclideanAndAngularErrorsToCarrotGoal(), currentCarrotPoseIndex_, resetDivergenceDetection(), and xy_goal_tolerance_.
Referenced by computeVelocityCommands().


      
  | 
  private | 
Definition at line 113 of file backward_local_planner.h.
Referenced by computeVelocityCommands().
      
  | 
  private | 
Definition at line 96 of file backward_local_planner.h.
Referenced by checkCarrotHalfPlainConstraint(), checkCurrentPoseInGoalRange(), computeCurrentEuclideanAndAngularErrorsToCarrotGoal(), computeVelocityCommands(), findInitialCarrotGoal(), resamplePrecisePlan(), setPlan(), and updateCarrotGoal().
      
  | 
  private | 
Definition at line 114 of file backward_local_planner.h.
Referenced by computeVelocityCommands().
      
  | 
  private | 
Definition at line 120 of file backward_local_planner.h.
Referenced by findInitialCarrotGoal(), initialize(), reconfigCB(), resamplePrecisePlan(), and updateCarrotGoal().
      
  | 
  private | 
Definition at line 119 of file backward_local_planner.h.
Referenced by findInitialCarrotGoal(), initialize(), reconfigCB(), resamplePrecisePlan(), and updateCarrotGoal().
      
  | 
  private | 
Definition at line 97 of file backward_local_planner.h.
Referenced by computeVelocityCommands(), initialize(), publishGoalMarker(), and setPlan().
      
  | 
  private | 
Definition at line 127 of file backward_local_planner.h.
Referenced by checkCarrotHalfPlainConstraint(), computeCurrentEuclideanAndAngularErrorsToCarrotGoal(), computeVelocityCommands(), findInitialCarrotGoal(), initialize(), setPlan(), and updateCarrotGoal().
      
  | 
  private | 
Definition at line 121 of file backward_local_planner.h.
Referenced by divergenceDetectionUpdate(), and resetDivergenceDetection().
      
  | 
  private | 
Definition at line 110 of file backward_local_planner.h.
Referenced by computeVelocityCommands(), initialize(), and reconfigCB().
      
  | 
  private | 
Definition at line 94 of file backward_local_planner.h.
Referenced by initialize().
      
  | 
  private | 
Definition at line 99 of file backward_local_planner.h.
Referenced by initialize(), and publishGoalMarker().
      
  | 
  private | 
Definition at line 107 of file backward_local_planner.h.
Referenced by computeVelocityCommands(), isGoalReached(), and setPlan().
      
  | 
  private | 
Definition at line 111 of file backward_local_planner.h.
Referenced by computeVelocityCommands(), and setPlan().
      
  | 
  private | 
Definition at line 108 of file backward_local_planner.h.
Referenced by setPlan().
      
  | 
  private | 
Definition at line 102 of file backward_local_planner.h.
Referenced by computeVelocityCommands(), initialize(), reconfigCB(), and straightBackwardsAndPureSpinCmd().
      
  | 
  private | 
Definition at line 103 of file backward_local_planner.h.
Referenced by computeVelocityCommands(), initialize(), reconfigCB(), and straightBackwardsAndPureSpinCmd().
      
  | 
  private | 
Definition at line 101 of file backward_local_planner.h.
Referenced by computeVelocityCommands(), initialize(), reconfigCB(), and straightBackwardsAndPureSpinCmd().
      
  | 
  private | 
Definition at line 105 of file backward_local_planner.h.
Referenced by initialize(), and straightBackwardsAndPureSpinCmd().
      
  | 
  private | 
Definition at line 124 of file backward_local_planner.h.
Referenced by computeVelocityCommands(), and initialize().
      
  | 
  private | 
Definition at line 123 of file backward_local_planner.h.
Referenced by computeVelocityCommands(), and initialize().
      
  | 
  private | 
Definition at line 93 of file backward_local_planner.h.
Referenced by initialize().
      
  | 
  private | 
Definition at line 104 of file backward_local_planner.h.
      
  | 
  private | 
Definition at line 109 of file backward_local_planner.h.
Referenced by computeVelocityCommands(), initialize(), and reconfigCB().
      
  | 
  private | 
Definition at line 133 of file backward_local_planner.h.
Referenced by computeVelocityCommands().
      
  | 
  private | 
Definition at line 135 of file backward_local_planner.h.
Referenced by computeVelocityCommands().
      
  | 
  private | 
Definition at line 134 of file backward_local_planner.h.
Referenced by computeVelocityCommands(), and initialize().
      
  | 
  private | 
Definition at line 117 of file backward_local_planner.h.
Referenced by checkCurrentPoseInGoalRange(), computeVelocityCommands(), initialize(), reconfigCB(), and updateCarrotGoal().
      
  | 
  private | 
Definition at line 116 of file backward_local_planner.h.
Referenced by checkCurrentPoseInGoalRange(), initialize(), reconfigCB(), and straightBackwardsAndPureSpinCmd().