50 planner_loader_(
"nav_core2",
"nav_core2::LocalPlanner")
59 tf_ = createSharedPointerWithNoDelete<tf2_ros::Buffer>(
tf);
67 std::string planner_name;
68 adapter_nh.
param(
"planner_name", planner_name, std::string(
"dwb_local_planner::DWBLocalPlanner"));
69 ROS_INFO_NAMED(
"LocalPlannerAdapter",
"Loading plugin %s", planner_name.c_str());
74 odom_sub_ = std::make_shared<nav_2d_utils::OdomSubscriber>(nh);
88 nav_2d_msgs::Pose2DStamped pose2d;
95 nav_2d_msgs::Twist2D velocity =
odom_sub_->getTwist();
97 nav_2d_msgs::Twist2DStamped cmd_vel_2d;
100 cmd_vel_2d =
planner_->computeVelocityCommands(pose2d, velocity);
104 ROS_ERROR_NAMED(
"LocalPlannerAdapter",
"computeVelocityCommands exception: %s", e.what());
117 nav_2d_msgs::Pose2DStamped pose2d;
121 nav_2d_msgs::Twist2D velocity =
odom_sub_->getTwist();
122 bool ret =
planner_->isGoalReached(pose2d, velocity);
138 if (path.poses.size() > 0)
140 nav_2d_msgs::Pose2DStamped goal_pose;
141 goal_pose.header = path.header;
142 goal_pose.pose = path.poses.back();
157 ROS_ERROR_NAMED(
"LocalPlannerAdapter",
"setPlan Exception: %s", e.what());
164 if (
last_goal_.header.frame_id != new_goal.header.frame_id)
175 geometry_msgs::PoseStamped current_pose;