18 #ifndef FTC_LOCAL_PLANNER_FTC_PLANNER_H_ 19 #define FTC_LOCAL_PLANNER_FTC_PLANNER_H_ 21 #include <nav_msgs/Odometry.h> 29 #include <dynamic_reconfigure/server.h> 31 #include <asr_ftc_local_planner/FTCPlannerConfig.h> 65 bool setPlan(
const std::vector<geometry_msgs::PoseStamped>& plan);
154 dynamic_reconfigure::Server<FTCPlannerConfig> *
dsrv_;
bool setPlan(const std::vector< geometry_msgs::PoseStamped > &plan)
Set the plan that the local planner is following.
int checkMaxAngle(int points, tf::Stamped< tf::Pose > current_pose)
Goes backward along global plan the max angle whith sim_time and max_rotation_vel allow...
tf::Stamped< tf::Pose > goal_pose_
void reconfigureCB(FTCPlannerConfig &config, uint32_t level)
Reconfigure config_.
JoinCostmap * joinCostmap_
int checkMaxDistance(tf::Stamped< tf::Pose > current_pose)
Goes along global plan the max distance whith sim_time and max_x_vel allow.
double cmd_vel_angular_z_
tf::Stamped< tf::Pose > old_goal_pose_
tf::TransformListener * tf_
std::vector< geometry_msgs::PoseStamped > transformed_global_plan_
std::vector< geometry_msgs::PoseStamped > global_plan_
bool rotateToOrientation(double angle, geometry_msgs::Twist &cmd_vel, double accuracy)
Rotation at place.
TFSIMD_FORCE_INLINE tfScalar angle(const Quaternion &q1, const Quaternion &q2)
bool isGoalReached()
Check if the goal pose has been achieved by the local planner.
dynamic_reconfigure::Server< FTCPlannerConfig > * dsrv_
bool checkCollision(int max_points)
Check if the considerd points are in local collision.
ros::Publisher local_plan_publisher_
double calculateGlobalPlanAngle(tf::Stamped< tf::Pose > current_pose, const std::vector< geometry_msgs::PoseStamped > &plan, int points)
Calculate the orientation of the global plan.
bool rotate_to_global_plan_
void publishPlan(int max_point)
Publish the global plan for visulatation.
bool computeVelocityCommands(geometry_msgs::Twist &cmd_vel)
Given the current position, orientation, and velocity of the robot, compute velocity commands to send...
void initialize(std::string name, tf::TransformListener *tf, costmap_2d::Costmap2DROS *costmap_ros)
Constructs the local planner.
ftc_local_planner::FTCPlannerConfig config_
ftc_local_planner::FTCPlannerConfig default_config_
int driveToward(tf::Stamped< tf::Pose > current_pose, geometry_msgs::Twist &cmd_vel)
Drive along the global plan and calculate the velocity.
double cmd_vel_angular_z_rotate_
costmap_2d::Costmap2DROS * costmap_ros_