Dual Arm Operation Failure #475
Replies: 4 comments 4 replies
-
When I used the latest version of "motoman_sda10f_moveit_config", I could operate left arm and right arm well.
When I check the controller.yalm , it already consider dual arms environment. |
Beta Was this translation helpful? Give feedback.
-
FYI, the Your issue seems to be similiar to #251. I haven't used an SDA10F before, but you may actually have to command all four motion groups (both arms and both torsos) together to get the behavior you are looking for. I seem to remember that the controller can only move one motion group at a time or all four motion groups together, not any arbitrary combination of groups. That might be documented in #251 or @ted-miller and @gavanderhoorn can fact-check me on that. If you go the route of moving all four groups, the torso joints could just remain fixed at their initial positions. I'm also not sure how you are creating the joint trajectory goal, but it also needs to include the names of all the joints that you are commanding. |
Beta Was this translation helpful? Give feedback.
-
@josephbhlee: for SDA robots, there are a few things you need to take into account. First: make sure to use #259, instead of main-line Also, as already mentioned, the SDAs require the two joints in the torso to always be sent to the exact same coordinates. With #259, you should be able to send goals to individual groups (ie: arms) by submitting them to the per-group joint_trajectory_action servers, or for all groups by sending them to the global But this is either-or: you cannot send individual goals to the left and the right arm at the same time, that's not supported. If you need multiple groups to move at the same time, you have to send a single goal, with information for all those groups, to the global Edit: I realise you're using C++, but just to make sure we're using the same approach, please take a look at kinetic-devel...gavanderhoorn:actionclient_example, which shows an example of an action client script. That's for a robot with a single motion group, but if you include values for all joints in your SDA, it should work, as it's using the global Do make sure to be using #259 though. |
Beta Was this translation helpful? Give feedback.
-
Thank you @gavanderhoorn, @ted-miller, and @marip8 for your help. I have been working with Joseph to try to fix this issue. Multi-group motion was still failing even after following your suggestions and we kept getting an "Invalid Robot ID" error. After some digging, we realized that the problem was that the controller did NOT actually have the fourth group (torso B2) connected as you can see in the picture. Once we realized this, we simply modified the yaml files to include only three groups and now multi-group motion works without a hitch. I don't know how this happened but my question now is, do you foresee this causing any other issues further down the road? I would just as soon keep it as is, since it makes things much simpler and I'm not sure why there are two groups for the single torso joint in the first place. Is this really something that is worth fixing? |
Beta Was this translation helpful? Give feedback.
-
Each Part(Left Arm, Right Arm and Toroso) is operated well, but I have failed to operate dual arms(left and right arm) at the same time.
I share my application source code as follows.
Error messages are
-. Invalid number of joint
-. Invalid trajectory. Not sent
I don't know where my problems are.
Could you help me to solve this problem?
Beta Was this translation helpful? Give feedback.
All reactions