0
$\begingroup$

Rosanswers logo

I'm trying to simulate a multi robot system with 2 UR3. So far I've managed to launch the simulation with both robotic arms and start a single instance of rviz with MoveIt for each robot. At this point i can plan the motion for each robot simultaneously, as they have a separate instance of MoveIt running within their proper namespace.

The problem I'm facing is that the robots can collide with each other (They are close enought in the simulation). As MoveIt is running independently for each robot the motion planning is not able to "see" the other robotic arm. So I'm wondering if there's a way to make each robot aware of the position of the other in Rviz in order to be able to plan motion without collision.

I'm working in ubuntu 20.04, with ROS1 noetic and 2 UR3.


Originally posted by IgnacioUD on ROS Answers with karma: 47 on 2021-03-18

Post score: 0

$\endgroup$

2 Answers 2

0
$\begingroup$

Rosanswers logo

MoveIt supports dual arm manipulation out of the box, so typically the 2 UR3s are combined into a single URDF (using xacro) and consider one unified robot.

Is there are reason you are running two instances of MoveIt for this? If you must have two instances, you could write a script that published the current state of the robot (via /tf or /planning_scene) from one instance of MoveIt to the other, by converting that state in collision objects. But that would likely be pretty slow.


Originally posted by Dave Coleman with karma: 1396 on 2021-03-19

This answer was ACCEPTED on the original site

Post score: 2


Original comments

Comment by IgnacioUD on 2021-03-20:
Thank you very much for your quick response. I'll be exploring the single URDF way. I was having multiple instances because there're a lot of examples builded that way. I did find one with a single URDF but it was incomplete and bad documented.

Comment by fvd on 2021-03-20:
It would be good to link to resources that you found while trying to solve your problem, so others can benefit later.

$\endgroup$
0
$\begingroup$

Rosanswers logo

As Dave mentioned, multiple robot arms in one robot system is a common use case for MoveIt. I published an example a few years ago that has two UR5s and one UR3 in one URDF: https://github.com/o2as/ur-o2as/

It is planned to list more examples like that here.


Originally posted by fvd with karma: 2180 on 2021-03-19

This answer was NOT ACCEPTED on the original site

Post score: 2


Original comments

Comment by IgnacioUD on 2021-03-20:
Huge thanks for sharing your example, I was struggling to find multirobot URDFs. Your example covers almost a big part of what I'm developping.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.