using multiple hardware interfaces (kuka tool)
Hello everybody,
I'm currently trying to connect two "robots". First I use a kuka robot : https://github.com/CentroEPiaggio/kuk... and this tool: https://github.com/RobotnikAutomation... + https://github.com/RobotnikAutomation...
I added to my single_lwr_robot.urdf.xacro:
<!-- using the models barrett-->
<xacro:bhand parent="lwr_7_link" name="bhand">
<origin xyz="0 0 0" rpy="0 0 0"/>
</xacro:bhand>
The simulation is now loading with the kuka+ barrett hand attached. The problem is now that I either can control the kuka, or the barrett hand. The error message while launching everything is:
Joint lwr_a1_joint of transmission lwr_a1_trans specifies multiple hardware interfaces. Currently the default robot hardware simulation interface only supports one. Using the first entry
if I not comment out this:
<gazebo>
<plugin name="ros_control_barrett" filename="libgazebo_ros_control.so">
<robotNamespace>/barrett</robotNamespace>
<controlPeriod>0.001</controlPeriod>
<robotSimType>gazebo_ros_control/DefaultRobotHWSim</robotSimType>
</plugin>
</gazebo>
in the bh_alone.urdf.xacro file.
I just googled a bit and found a lot of tips, but no tip worked so far. The kuka and barrett hand are already in an own namespace. Furthermore I found this here: http://wiki.ros.org/combined_robot_hw , but I didn't found an example for using it. Maybe this is the solution for this issue? - Or is there another idea?
Thanks and bye, Tobias
P.s. I'm using Kinetic
If this is just about simulation, then one approach would be to not use different instances of
DefaultRobotHWSim
and just have a single one control all joints in your combined robot.If you use combined_robot_hw one can use only one simulation instance an this should do the trick.