ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

In short: you'll want to create a top-level .launch file that starts all the required nodes.

The tutorial you linked (Create a MoveIt Package for an Industrial Robot) should show you how to perform all the steps, including creating the top-level moveit_planning_execution.launch.

It's probably easiest to base one for your 2600 on another that already exists, such as this one for an IRB 6640.

Important parts:

<rosparam command="load" file="$(find abb_irb6640_support)/config/joint_names_irb6640_185_280.yaml" />

make sure to load the joint_names, otherwise the driver can't map data to your ROS joints.

and:

<group if="$(arg sim)">
  <include file="$(find industrial_robot_simulator)/launch/robot_interface_simulator.launch" />
</group>

<group unless="$(arg sim)">
  <include file="$(find abb_irb6640_support)/launch/robot_interface_download_irb6640_185_280.launch" >
    <arg name="robot_ip" value="$(arg robot_ip)"/>
  </include>
</group>

load either the real driver of the industrial_robot_simulator. The simulator is of course optional, but is always a good idea to check whether you've correctly configured everything.

This top-level .launch file is only one part that you'd need to add (but again: the tutorial should show you how to do that). Other things that need to be added:

  • a list of controllers that MoveIt should use (typically called controllers.yaml in the config folder (here for the IRB 6640))
  • updating the ROBOTNAME_moveit_controller_manager.launch.xml to actually load the controllers.yaml file
  • adding the appropriate (exec_) dependencies on industrial_robot_simulator and the abb_irb2600_support package to your package manifest

In short: you'll want to create a top-level .launch file that starts all the required nodes.

The tutorial you linked (Create a MoveIt Package for an Industrial Robot) should show you how to perform all the steps, including creating the top-level moveit_planning_execution.launch.

It's probably easiest to base one for your 2600 on another that already exists, such as this one for an IRB 6640.

Important parts:parts (update references to the 6640 to your 2600 of course):

<rosparam command="load" file="$(find abb_irb6640_support)/config/joint_names_irb6640_185_280.yaml" />

make sure to load the joint_names, otherwise the driver can't map data to your ROS joints.

and:

<group if="$(arg sim)">
  <include file="$(find industrial_robot_simulator)/launch/robot_interface_simulator.launch" />
</group>

<group unless="$(arg sim)">
  <include file="$(find abb_irb6640_support)/launch/robot_interface_download_irb6640_185_280.launch" >
    <arg name="robot_ip" value="$(arg robot_ip)"/>
  </include>
</group>

load either the real driver of the industrial_robot_simulator. The simulator is of course optional, but is always a good idea to check whether you've correctly configured everything.

This top-level .launch file is only one part that you'd need to add (but again: the tutorial should show you how to do that). Other things that need to be added:

  • a list of controllers that MoveIt should use (typically called controllers.yaml in the config folder (here for the IRB 6640))
  • updating the ROBOTNAME_moveit_controller_manager.launch.xml to actually load the controllers.yaml file
  • adding the appropriate (exec_) dependencies on industrial_robot_simulator and the abb_irb2600_support package to your package manifest

In short: you'll want to create a top-level .launch file that starts all the required nodes.

The tutorial you linked (Create a MoveIt Package for an Industrial Robot) should show you how to perform all the steps, including creating the top-level moveit_planning_execution.launch.

It's probably easiest to base one for your 2600 on another that already exists, such as this one for an IRB 6640.

Important parts (update references to the 6640 to your 2600 of course):

<rosparam command="load" file="$(find abb_irb6640_support)/config/joint_names_irb6640_185_280.yaml" />

make sure to load the joint_names, otherwise the driver can't map data to your ROS joints.

and:

<group if="$(arg sim)">
  <include file="$(find industrial_robot_simulator)/launch/robot_interface_simulator.launch" />
</group>

<group unless="$(arg sim)">
  <include file="$(find abb_irb6640_support)/launch/robot_interface_download_irb6640_185_280.launch" >
    <arg name="robot_ip" value="$(arg robot_ip)"/>
  </include>
</group>

load either the real driver of the industrial_robot_simulator. The simulator is of course optional, but is always a good idea to check whether you've correctly configured everything.

This top-level .launch file is only one part that you'd need to add (but again: the tutorial should show you how to do that). Other things that need to be added:

  • a list of controllers that MoveIt should use (typically called controllers.yaml in the config folder (here for the IRB 6640))
  • updating the ROBOTNAME_moveit_controller_manager.launch.xml to actually load the controllers.yaml file
  • adding the appropriate (exec_) dependencies on industrial_robot_simulator and the abb_irb2600_support package to your package manifest

Recent versions of the MoveIt Setup Assistant add some of these files and content in somewhat different places. The layout used in ros-industrial/abb and ros-industrial/abb_experimental works well though, so I would recommend you follow that for your 2600 as well. This may mean removing some of the files the MSA adds, but things should still work. When in doubt, check the MoveIt configuration packages in either of the ABB repositories.