#include "ros/ros.h"
#include "tf/tf.h"
#include "leader_follower.h"
#include <nav_msgs/Odometry.h>
#include <nav_msgs/Path.h>
#include <move_base_msgs/MoveBaseAction.h>
#include <actionlib/client/simple_action_client.h>
#include <tf/transform_datatypes.h>
#include <tf/transform_broadcaster.h>
#include <tf/transform_listener.h>
#include <geometry_msgs/PoseWithCovarianceStamped.h>
#include <ar_pose/ARMarkers.h>
#include <ar_pose/ARMarker.h>
#include "std_msgs/String.h"
#include <string>
#include <vector>
#include <map>
#include <ostream>
#include "ros/serialization.h"
#include "ros/builtin_message_traits.h"
#include "ros/message_operations.h"
#include "ros/time.h"
#include "ros/macros.h"
#include "ros/assert.h"
#include "humanPose.h"
#include "std_msgs/Header.h"
#include "geometry_msgs/Pose2D.h"
Go to the source code of this file.
Defines | |
#define | DEG2RAD 0.01745 |
Functions | |
void | dyn_objects_callback (const trajectory_simulator::TrajectoryObservation::ConstPtr &dyn_objects) |
void | leader_goal_callback (const geometry_msgs::PoseStamped::ConstPtr &msg) |
int | main (int argc, char **argv) |
void | robot_goal_callback (const geometry_msgs::PoseStamped::ConstPtr &msg) |
void | robot_pose_callback (const geometry_msgs::PoseWithCovarianceStamped::ConstPtr &msg) |
void | target_pose_callback (const nav_msgs::Odometry::ConstPtr &msg) |
#define DEG2RAD 0.01745 |
Definition at line 31 of file leader_follower.cpp.
void dyn_objects_callback | ( | const trajectory_simulator::TrajectoryObservation::ConstPtr & | dyn_objects | ) |
received a dynamic object, store as candidate
check if received message refers to leader and if the robot should start following it, if so, track its path
store path according to time step
only executes on first message
simple following part
Definition at line 56 of file leader_follower.cpp.
void leader_goal_callback | ( | const geometry_msgs::PoseStamped::ConstPtr & | msg | ) |
Definition at line 169 of file leader_follower.cpp.
int main | ( | int | argc, | |
char ** | argv | |||
) |
compute distance from ROBOT to its goal
compute distance from LEADER to its goal (after leader has been found)
leader selection criteria, distance between goals
artificial leader selection
check if it is a new leader
can sending goals
set subgoal as first path position as goal
publish subgoal to RiskRRT
distance from robot to subgoal
check subgoal success and erase first list element of path
Definition at line 191 of file leader_follower.cpp.
void robot_goal_callback | ( | const geometry_msgs::PoseStamped::ConstPtr & | msg | ) |
Definition at line 177 of file leader_follower.cpp.
void robot_pose_callback | ( | const geometry_msgs::PoseWithCovarianceStamped::ConstPtr & | msg | ) |
Definition at line 184 of file leader_follower.cpp.
void target_pose_callback | ( | const nav_msgs::Odometry::ConstPtr & | msg | ) |
Definition at line 39 of file leader_follower.cpp.