-
Notifications
You must be signed in to change notification settings - Fork 195
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
driver: ~300ms delay between accepting two goals (multi-group setup) #185
Comments
Wireshark capture by @asierfernandez (from ROS-Industrial google group posting). |
Comment by @ted-miller on the ROS-Industrial mailing list:
|
@asierfernandez: it would help if you could make your MoveIt configuration pkg available, and describe any modifications you made to any of the other packages. As @ted-miller writes, this could be a configuration issue. |
I didn't describe well enough our situation. We are not using MoveIt, we are sending directly action goals to controllers action servers: If we send a action goal to left server, the left arms moves, and if we send a goal to right server, the right arms moves. The problem comes when we send two goals to two servers at the same time. Does this description help? |
@asierfernandez wrote:
it does, but we're still going to need more information on how you configured things. As @ted-miller also wrote: the robot state and trajectory relay require certain configuration. It would be good if you could show us how you did that. |
@asierfernandez wrote:
I'm not sure, but it could be that if you want to execute a trajectory for both arms you should use the combined The "approximately 0.3 sec" remark makes me suspect the action server, which has a 250 ms periodic thread that implements a state machine responsible for streaming the trajectories to the controller. It could be that after sending your (very) short trajectory to the first arm, it sleeps for 250 ms and then accepts the goal for the other arm. But I would still think that using the combined server makes more sense for trajectories that involve both arms. |
Hi @gavanderhoorn, I'm working a bit on this with @asierfernandez. I don't remember there being a In case there isn't by default, is this something that can be configured by modifying |
I'll take a look tomorrow. Could well be that I'm misremembering and we only had the combined JTA in a private fork. |
Hi @gavanderhoorn, following your instructions, I realized that there is an joint trajectory action server with no namespace, just Using this server I can send commands to both arms simultaneously. Thanks for your help! |
Good to hear that you got it to work. We should probably track the ~300ms delay between accepting two goals on the namespaced JTAs, as it should not be needed. |
I've updated the title so we don't need a new ticket. |
I think it might be nice to namespace the JTA for all joints to avoid this sort of confusion, so I've submitted #189. |
Hi all,
We are experiencing some issues when trying to control simultaneusly two arms of Motoman sda10f robot.
We are able to send a joint_trayectory_action goal to one arm or the other independently, but when we send a goal to both joint trayectory action controllers simuntaneusly, sda10f_r1_controller always blocks. Actually, in our case, the only way to send two trayectories to both arms is applying a short delay of 0.3 seconds (experimentally tested) between two actions goals.
Bellow, a detailed description of our setup:
In order to properly launch it, first we had to make a change in sda10f configuration file:
Modify motoman_sda10f_support/config/sda10f_motion_interface.yaml
change group index to 0-3, instead of 1-4 to avoid program crash
This is our execution order:
Any idea of where the problem comes from?
cheers,
asier.
The text was updated successfully, but these errors were encountered: