ur_example_dual_robot
This demo is about integrating two robots into one URDF and starting a driver for both robots.
Requirements & Build
You’ll have to have the ur_robot_driver
setup and installed as explained in its documentation.
To build and use this package, copy it to your catkin_workspace containing the driver, install its
dependencies using rosdep install --ignore-src --from-paths . -r -y
and build your workspace as
usual.
For this demo to work, you’ll need docker and docker-compose installed and your user needs
to be able to run docker containers. Those tools will be installed by the rosdep
command above,
but you will have to setup your user to execute docker containers accordingly. See the Docker
documentation for details
Startup
You’ll need two shells: One for starting two simulated robots using docker + ursim and one for the ROS components.
In the first shell execute
rosrun ur_example_dual_robot docker_alice_bob.sh
- Wait, until the robots are started up. You can connect to the robots using their web interface:
When the robots have booted, start the driver instances as follows
roslaunch ur_example_dual_robot dual_robot_startup.launch
This should startup the drivers, an RViz instance and an rqt_joint_trajectory_controller window.
To steer the robots, you’ll first have to start the external_control program on both using the web
interface (the programs should be loaded by default, simply start the robots and press the play
button). In the shell running the drivers, you should now see Robot connected to reverse interface.
Ready to receive control commands.
twice.
Using the rqt_joint_trajectory_controller window you can select one of the robots, click on the big red button and then use the sliders to move the robots around.