46 const std::string &controller_name,
50 const TFPtr &tf_listener_ptr,
52 const MoveBaseFlexConfig &config)
53 : AbstractControllerExecution(controller_name, controller_ptr, vel_pub, goal_pub,
54 tf_listener_ptr, toAbstract(config)),
55 costmap_ptr_(costmap_ptr)
68 mbf_abstract_nav::MoveBaseFlexConfig abstract_config;
69 abstract_config.controller_frequency = config.controller_frequency;
70 abstract_config.controller_patience = config.controller_patience;
71 abstract_config.controller_max_retries = config.controller_max_retries;
72 abstract_config.oscillation_timeout = config.oscillation_timeout;
73 abstract_config.oscillation_distance = config.oscillation_distance;
74 return abstract_config;
78 const geometry_msgs::PoseStamped &robot_pose,
79 const geometry_msgs::TwistStamped &robot_velocity,
80 geometry_msgs::TwistStamped &vel_cmd,
86 boost::lock_guard<costmap_2d::Costmap2D::mutex_t> lock(*(
costmap_ptr_->getCostmap()->getMutex()));
87 return controller_->computeVelocityCommands(robot_pose, robot_velocity, vel_cmd, message);
89 return controller_->computeVelocityCommands(robot_pose, robot_velocity, vel_cmd, message);
97 ROS_WARN(
"Sensor data is out of date, we're not going to allow commanding of the base for safety");