Determining ActionServer Status

asked 2017-05-28 16:34:11 -0600

MarkyMark2012 gravatar image

updated 2017-06-03 06:51:31 -0600

Hi,

I'm currently decoupling the Kobuki AutoDocking s/w from the nodelette setup.

I've boken it out to just be a standard node - problem I'm having is that the client can't/won't connect - just getting the error:

process[dock_drive_client_py-1]: started with pid [8404] 
Action server is not connected yet. still waiting...
Action server is not connected yet. still waiting...
Action server is not connected yet. still waiting...

etc..

The server appears to be up and is at least running it's spin loop.

How can I check what name it's actually running as?

The Constructor loks like:

AutoDockingROS::AutoDockingROS(ros::NodeHandle& nh, std::string name)
 : name_(name), nh_(nh)
 , shutdown_requested_(false)
 ,as_(nh_, name, false)
{
   self = this;

  as_.registerGoalCallback(boost::bind(&AutoDockingROS::goalCb, this));
  as_.registerPreemptCallback(boost::bind(&AutoDockingROS::preemptCb, this));
  as_.start();

Where name is passed in as:

int main(int argc, char** argv){
ros::init(argc, argv, "auto_docking_ros");

std::string nodelet_name("AutoDockingAction");
ros::NodeHandle nh;

AutoDockingROS*  lAutoDockingROS = new AutoDockingROS(nh, nodelet_name);
if (lAutoDockingROS->init(nh) == true)
{
  ROS_INFO_STREAM("Initialisaion Completed Successfully...");
}
 ROS_INFO_STREAM( "Action Server Name: "+ name);
}

EDIT 1:

The graph appears to show nodes are connected as expected:

image description

I made a change to the python script to read:

client = actionlib.SimpleActionClient('dock_drive_action', AutoDockingAction)

client = actionlib.SimpleActionClient('Auto_Docking_Action_Server', AutoDockingAction)

Thanks

Mark

edit retag flag offensive close merge delete

Comments

Action servers use regular topics. What does rostopic list tell you? Or alternatively, use rqt_graph.

gvdhoorn gravatar image gvdhoorn  ( 2017-05-29 03:33:31 -0600 )edit

@gvdhoorn - I've updated the question with some more info. At the moment the Client reports the "Goal Sent" but the server isn't picking it up

BTW - my reasoning for doing this is because the Ri Pi built version crashes when running as a nodelet

Thanks Mark

MarkyMark2012 gravatar image MarkyMark2012  ( 2017-06-03 06:53:56 -0600 )edit