Actionlib server not processing goal [closed]

asked 2014-09-05 10:15:52 -0600

mcross gravatar image

updated 2014-09-08 14:13:26 -0600

Ubuntu 12.04 / ROS Hydro

Here's my setup: 1 Kinova MICO robotic manipulator arm; 2 ActionLib servers (1 for angular control and 1 for position control).

Let's say I have goals for each Actionlib Server: Angle1, Angle2, Pose1, Pose2. Let's also say that each goal results in different arm configurations.

I can send goals in this sequence without problem: Angle1 -> Angle2 -> Angle1 -> Angle2 or Pose1 -> Pose2 -> Pose1 -> Pose2 or Angle1 -> Pose1 -> Angle2 -> Pose2

Those above scenarios work fine. Now, here's a scenario which doesn't work: Angle1 -> Pose1 -> Angle1

In the above scenario, the first goal (Angle1) is executed. The second goal (Pose1) is executed, noting that Pose1 and Angle1 are different arm configurations. Now, if I try to send the Angle1 goal again, nothing happens. Looking at the goal topic, when the second Angle1 goal is sent, the goal topic header sequence increments by 1, however the goal_id doesn't change, and the goal status remains 3 (goal achieved) despite it no longer being in that configuration. I have to reset my connection between the client and the server in order to execute Angle1 again, which is not really useful.

I'm currently using the JACO packages, which have the Action servers baked into jaco_arm_driver node. The node launches both action servers. The two action servers are for angular control and position control.

My question is, why does the action_server not process the new goal, and how do I get it to process the new goal? Any thoughts?

Thanks!

UPDATE I left out the part that I was sending the actionlib goals via ROSBridge. At the time I didn't think that ROSBridge was part of the issue. The ROSBridge connected action_client I use results in the above behaviour; however a different ROSBridge connected action_client does not result in this behaviour, but does experience a different behaviour that my client does not. At this time I'm going to focus my attention to ROSBridge instead of actionlib.

EDIT #1 Typo + added links to git repos EDIT #2 Added update to the issue.

edit retag flag offensive reopen merge delete

Closed for the following reason question is not relevant or outdated by mcross
close date 2014-09-08 14:14:08.864562

Comments

1

This might be a typo, but you're saying Angle1 -> Pose1 -> Angle1 -> Pose2 works, but Angle1 -> Pose1 -> Angle1 doesn't?

paulbovbel gravatar image paulbovbel  ( 2014-09-05 10:59:35 -0600 )edit
1

For this kind of thing, it would be best if you can link to some code (gists are good if you don't have an online repo). I imagine there could be issues in the way you have your two action servers interacting to control one output, maybe in the way you'd have preempts set up, etc.

paulbovbel gravatar image paulbovbel  ( 2014-09-05 11:00:30 -0600 )edit
1

can't see anything out of the ordinary in the actionservers, maybe try opening a ticket at the repo to get the maintainer's attention?

paulbovbel gravatar image paulbovbel  ( 2014-09-05 22:02:00 -0600 )edit
1

Does running the action servers with debugging output say something useful?

BennyRe gravatar image BennyRe  ( 2014-09-07 23:53:28 -0600 )edit